raise-common-lib-new 0.0.20 → 0.0.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/language/fr.d.ts +3377 -0
- package/assets/language/ja.d.ts +3351 -0
- package/assets/language/ko.d.ts +3351 -0
- package/assets/language/zh-CN.d.ts +3064 -0
- package/assets/language/zh-TW.d.ts +3354 -0
- package/esm2022/assets/language/fr.mjs +3378 -0
- package/esm2022/assets/language/ja.mjs +3352 -0
- package/esm2022/assets/language/ko.mjs +3352 -0
- package/esm2022/assets/language/zh-CN.mjs +3065 -0
- package/esm2022/assets/language/zh-TW.mjs +3355 -0
- package/esm2022/lib/commentary/constants.mjs +2 -0
- package/esm2022/lib/commentary/index.component.mjs +146 -0
- package/esm2022/lib/common-grid/grid-action/grid-action-item/grid-action-item.component.mjs +44 -0
- package/esm2022/lib/common-grid/grid-action/grid-action.component.mjs +18 -0
- package/esm2022/lib/common-grid/index.component.mjs +52 -30
- package/esm2022/lib/dialog/common-delete-dialog/index.component.mjs +2 -2
- package/esm2022/lib/dialog/common-dialog/index.component.mjs +4 -4
- package/esm2022/lib/form/checkbox-group/index.component.mjs +2 -2
- package/esm2022/lib/form/drawer-form/constants.mjs +10 -0
- package/esm2022/lib/form/drawer-form/drawer-form.component.mjs +336 -0
- package/esm2022/lib/form/encrypted-input/index.component.mjs +35 -0
- package/esm2022/lib/form/radio-group/index.component.mjs +2 -2
- package/esm2022/lib/form/switch-input/index.component.mjs +2 -2
- package/esm2022/lib/form/tag-input/index.component.mjs +31 -11
- package/esm2022/lib/form/toolbar-item/index.component.mjs +56 -0
- package/esm2022/lib/layout/drawer/index.component.mjs +165 -0
- package/esm2022/lib/layout/grid-box/index.component.mjs +37 -12
- package/esm2022/lib/layout/main-container/index.component.mjs +47 -9
- package/esm2022/lib/layout/multi-tab/index.component.mjs +135 -30
- package/esm2022/lib/layout/nav-card-group/constants.mjs +2 -0
- package/esm2022/lib/layout/nav-card-group/index.component.mjs +37 -0
- package/esm2022/lib/layout/page-list/index.component.mjs +38 -8
- package/esm2022/lib/layout/page-tab/index.component.mjs +25 -6
- package/esm2022/lib/layout/rs-aside/index.component.mjs +54 -9
- package/esm2022/lib/layout/rs-footer/index.component.mjs +2 -2
- package/esm2022/lib/layout/rs-header/index.component.mjs +38 -29
- package/esm2022/lib/layout/toolbar/constants.mjs +2 -0
- package/esm2022/lib/layout/toolbar/index.component.mjs +79 -0
- package/esm2022/lib/raise-common-lib.module.mjs +76 -7
- package/esm2022/lib/service/common-function.service.mjs +87 -1
- package/esm2022/lib/service/dialog.service.mjs +5 -5
- package/esm2022/lib/service/drawer.service.mjs +111 -0
- package/esm2022/lib/service/keep-alive.service.mjs +51 -12
- package/esm2022/lib/service/translation.service.mjs +98 -0
- package/esm2022/lib/utils/decorator.mjs +14 -0
- package/esm2022/public-api.mjs +35 -20
- package/fesm2022/raise-common-lib-new.mjs +18749 -676
- package/fesm2022/raise-common-lib-new.mjs.map +1 -1
- package/lib/commentary/constants.d.ts +15 -0
- package/lib/commentary/index.component.d.ts +38 -0
- package/lib/common-grid/grid-action/grid-action-item/grid-action-item.component.d.ts +10 -0
- package/lib/common-grid/grid-action/grid-action.component.d.ts +14 -0
- package/lib/common-grid/index.component.d.ts +8 -5
- package/lib/form/drawer-form/constants.d.ts +34 -0
- package/lib/form/drawer-form/drawer-form.component.d.ts +67 -0
- package/lib/form/encrypted-input/index.component.d.ts +14 -0
- package/lib/form/tag-input/index.component.d.ts +9 -3
- package/lib/form/toolbar-item/index.component.d.ts +17 -0
- package/lib/layout/drawer/index.component.d.ts +45 -0
- package/lib/layout/grid-box/index.component.d.ts +9 -5
- package/lib/layout/main-container/index.component.d.ts +10 -1
- package/lib/layout/multi-tab/index.component.d.ts +19 -6
- package/lib/layout/nav-card-group/constants.d.ts +14 -0
- package/lib/layout/nav-card-group/index.component.d.ts +16 -0
- package/lib/layout/page-list/index.component.d.ts +9 -3
- package/lib/layout/page-tab/index.component.d.ts +6 -2
- package/lib/layout/rs-aside/index.component.d.ts +8 -3
- package/lib/layout/rs-header/index.component.d.ts +12 -12
- package/lib/layout/toolbar/constants.d.ts +8 -0
- package/lib/layout/toolbar/index.component.d.ts +22 -0
- package/lib/raise-common-lib.module.d.ts +48 -37
- package/lib/service/common-function.service.d.ts +9 -0
- package/lib/service/drawer.service.d.ts +46 -0
- package/lib/service/keep-alive.service.d.ts +4 -0
- package/lib/service/translation.service.d.ts +12 -0
- package/lib/utils/decorator.d.ts +1 -0
- package/package.json +1 -1
- package/public-api.d.ts +34 -19
- package/src/assets/img/comment-cancel.svg +4 -0
- package/src/assets/img/comment-check.svg +5 -0
- package/src/assets/img/down-arrow.svg +3 -0
- package/src/assets/img/drawer-back.svg +4 -0
- package/src/assets/img/eye-close.svg +4 -0
- package/src/assets/img/eye-open.svg +4 -0
- package/src/assets/img/grid-action-copy.svg +6 -0
- package/src/assets/img/grid-action-delete.svg +14 -0
- package/src/assets/img/grid-action-detail.svg +7 -0
- package/src/assets/img/grid-action-download.svg +7 -0
- package/src/assets/img/grid-action-edit.svg +4 -0
- package/src/assets/img/grid-action-export.svg +12 -0
- package/src/assets/img/grid-action-move.svg +8 -0
- package/src/assets/img/grid-action-note.svg +10 -0
- package/src/assets/img/grid-action-send.svg +5 -0
- package/src/assets/img/grid-action-settle.svg +13 -0
- package/src/assets/img/grid-menu-arrow-right.svg +3 -0
- package/src/assets/img/grid-pager-arrow-left.svg +3 -0
- package/src/assets/img/grid-pager-arrows-left.svg +4 -0
- package/src/assets/img/more.svg +5 -0
- package/src/assets/img/table-column-menu.svg +5 -0
- package/src/assets/img/table-sort-arrow.svg +6 -0
- package/src/assets/img/toolbar-action-add.svg +4 -0
- package/src/assets/img/toolbar-action-delete.svg +14 -0
- package/src/assets/img/toolbar-action-download.svg +5 -0
- package/src/assets/img/toolbar-action-duplicate.svg +6 -0
- package/src/assets/img/toolbar-action-export.svg +5 -0
- package/src/assets/img/toolbar-action-import.svg +5 -0
- package/src/assets/img/toolbar-action-refresh.svg +14 -0
- package/src/assets/img/toolbar-action-upload.svg +5 -0
- package/src/assets/img/tooltip-icon.svg +4 -0
- package/src/assets/language/fr.ts +3603 -0
- package/src/assets/language/ja.ts +3501 -0
- package/src/assets/language/ko.ts +3478 -0
- package/src/assets/language/zh-CN.ts +3115 -0
- package/src/assets/language/zh-TW.ts +3411 -0
- package/src/assets/style/reset/button.scss +41 -8
- package/src/assets/style/reset/checkbox.scss +33 -0
- package/src/assets/style/reset/dropdown.scss +42 -10
- package/src/assets/style/reset/grid.scss +733 -132
- package/src/assets/style/reset/input.scss +45 -12
- package/src/assets/style/reset/mat-dialog.scss +6 -2
- package/src/assets/style/reset/radio.scss +37 -0
- package/src/assets/style/reset/switch.scss +32 -0
- package/src/assets/style/style.scss +6 -0
- package/src/assets/style/syncfusion.min.css +1 -1
- package/src/assets/style/variables.scss +4 -4
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output, ViewChild, } from
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild, } from "@angular/core";
|
|
2
|
+
import { times } from "lodash";
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
import * as i1 from "@angular/common";
|
|
4
5
|
import * as i2 from "@syncfusion/ej2-angular-grids";
|
|
@@ -11,12 +12,12 @@ export class CommonGridComponent {
|
|
|
11
12
|
hiddenLoaded = false;
|
|
12
13
|
authorized = true; // Dataset是否授权,未授权则显示权限错误提示
|
|
13
14
|
// only use for local data pagination
|
|
14
|
-
selectedDiffKey =
|
|
15
|
-
gridHeight =
|
|
15
|
+
selectedDiffKey = "";
|
|
16
|
+
gridHeight = "";
|
|
16
17
|
// 这玩意必填,不然filter columnChooser都会报错
|
|
17
|
-
gridId =
|
|
18
|
-
resizeSettings = { mode:
|
|
19
|
-
filterSettings = { type:
|
|
18
|
+
gridId = "grid";
|
|
19
|
+
resizeSettings = { mode: "Auto" };
|
|
20
|
+
filterSettings = { type: "Menu" };
|
|
20
21
|
template;
|
|
21
22
|
fields = [];
|
|
22
23
|
dataSource = [];
|
|
@@ -24,9 +25,11 @@ export class CommonGridComponent {
|
|
|
24
25
|
columnTemplate;
|
|
25
26
|
pageSettings;
|
|
26
27
|
allowPaging = true;
|
|
27
|
-
clipMode =
|
|
28
|
+
clipMode = "EllipsisWithTooltip";
|
|
28
29
|
checkBoxWidth = 32; // col 数量过少的时候,check宽度会拉伸,这时候设置null
|
|
29
30
|
childGrid;
|
|
31
|
+
frozenColumns; // col 数量过少的时候,check宽度会拉伸,这时候设置null
|
|
32
|
+
columnChooserSettings;
|
|
30
33
|
/**
|
|
31
34
|
* Sample: [
|
|
32
35
|
{
|
|
@@ -47,7 +50,7 @@ export class CommonGridComponent {
|
|
|
47
50
|
contextMenuItems = [];
|
|
48
51
|
// @Input() selectionSettings = { checkboxOnly: true, type: "Multiple" };
|
|
49
52
|
selectionSettings = {
|
|
50
|
-
type:
|
|
53
|
+
type: "Multiple",
|
|
51
54
|
// persistSelection: true,
|
|
52
55
|
checkboxOnly: true,
|
|
53
56
|
};
|
|
@@ -70,15 +73,17 @@ export class CommonGridComponent {
|
|
|
70
73
|
selectId = [];
|
|
71
74
|
startPaging = false;
|
|
72
75
|
indexList = [];
|
|
73
|
-
className =
|
|
76
|
+
className = "grid-loading";
|
|
74
77
|
translation;
|
|
75
78
|
constructor(ref) {
|
|
76
79
|
this.ref = ref;
|
|
77
|
-
this.translation = JSON.parse(localStorage.getItem(
|
|
80
|
+
this.translation = JSON.parse(localStorage.getItem("translation"));
|
|
78
81
|
}
|
|
79
82
|
ngOnInit() {
|
|
80
83
|
if (this.hiddenLoaded)
|
|
81
|
-
this.className =
|
|
84
|
+
this.className = "";
|
|
85
|
+
this.gridId =
|
|
86
|
+
this.gridId + Date.now() + "_" + Math.random().toString(36).slice(2, 5);
|
|
82
87
|
this.ref && this.ref.markForCheck();
|
|
83
88
|
}
|
|
84
89
|
trackByFn(index, item) {
|
|
@@ -92,7 +97,7 @@ export class CommonGridComponent {
|
|
|
92
97
|
this.pageSettings =
|
|
93
98
|
changes.dataSource.currentValue.length > 9
|
|
94
99
|
? {
|
|
95
|
-
pageSizes: [
|
|
100
|
+
pageSizes: ["All", "25", "50", "100"],
|
|
96
101
|
pageSize: 50,
|
|
97
102
|
}
|
|
98
103
|
: null;
|
|
@@ -108,11 +113,11 @@ export class CommonGridComponent {
|
|
|
108
113
|
}
|
|
109
114
|
_dataBound(args) {
|
|
110
115
|
// 整个组件加载完成时的回调函数
|
|
111
|
-
var pagerContainer = document.querySelector(
|
|
116
|
+
var pagerContainer = document.querySelector(".e-pagercontainer");
|
|
112
117
|
if (pagerContainer) {
|
|
113
|
-
var linkElements = pagerContainer.querySelectorAll(
|
|
118
|
+
var linkElements = pagerContainer.querySelectorAll(".e-link");
|
|
114
119
|
linkElements.forEach(function (element) {
|
|
115
|
-
element.removeAttribute(
|
|
120
|
+
element.removeAttribute("href"); // SMP2-10310 删除分页器的href属性
|
|
116
121
|
});
|
|
117
122
|
}
|
|
118
123
|
if (this.selectedDiffKey) {
|
|
@@ -199,12 +204,16 @@ export class CommonGridComponent {
|
|
|
199
204
|
}
|
|
200
205
|
_actionBegin(args) {
|
|
201
206
|
if (this.selectedDiffKey &&
|
|
202
|
-
(args.requestType ===
|
|
203
|
-
args.requestType ===
|
|
204
|
-
args.requestType ===
|
|
205
|
-
args.requestType ===
|
|
207
|
+
(args.requestType === "paging" ||
|
|
208
|
+
args.requestType === "searching" ||
|
|
209
|
+
args.requestType === "filtering" ||
|
|
210
|
+
args.requestType === "sorting")) {
|
|
206
211
|
this.startPaging = true;
|
|
207
212
|
}
|
|
213
|
+
if (args.requestType == "filterchoicerequest" ||
|
|
214
|
+
args.requestType === "filtersearchbegin") {
|
|
215
|
+
args.filterChoiceCount = 15000;
|
|
216
|
+
}
|
|
208
217
|
this.actionBegin.emit(args);
|
|
209
218
|
}
|
|
210
219
|
search(keywords) {
|
|
@@ -256,10 +265,10 @@ export class CommonGridComponent {
|
|
|
256
265
|
}
|
|
257
266
|
_actionHandler($event) {
|
|
258
267
|
if (this.selectedDiffKey &&
|
|
259
|
-
($event.requestType ===
|
|
260
|
-
$event.requestType ===
|
|
261
|
-
$event.requestType ===
|
|
262
|
-
$event.requestType ===
|
|
268
|
+
($event.requestType === "paging" ||
|
|
269
|
+
$event.requestType === "searching" ||
|
|
270
|
+
$event.requestType === "filtering" ||
|
|
271
|
+
$event.requestType === "sorting")) {
|
|
263
272
|
this.indexList = [];
|
|
264
273
|
setTimeout(() => {
|
|
265
274
|
this.chooseRecords();
|
|
@@ -307,7 +316,7 @@ export class CommonGridComponent {
|
|
|
307
316
|
}
|
|
308
317
|
_rowDataBound($event) {
|
|
309
318
|
if (this.disableSystemRow && $event.data && $event.data.IsSystem) {
|
|
310
|
-
$event.row.classList.add(
|
|
319
|
+
$event.row.classList.add("e-disabled");
|
|
311
320
|
}
|
|
312
321
|
this.rowDataBound.emit($event);
|
|
313
322
|
}
|
|
@@ -342,25 +351,34 @@ export class CommonGridComponent {
|
|
|
342
351
|
this.grid.closeEdit();
|
|
343
352
|
this.deleteItem(index);
|
|
344
353
|
}
|
|
354
|
+
initList = (num = 25, key = "Id") => {
|
|
355
|
+
const list = [];
|
|
356
|
+
times(num, (i) => {
|
|
357
|
+
list.push({
|
|
358
|
+
[key]: i,
|
|
359
|
+
});
|
|
360
|
+
});
|
|
361
|
+
return list;
|
|
362
|
+
};
|
|
345
363
|
showLoading() {
|
|
346
|
-
this.className =
|
|
364
|
+
this.className = "grid-loading";
|
|
347
365
|
this.ref && this.ref.markForCheck();
|
|
348
366
|
this.ref && this.ref.detectChanges();
|
|
349
367
|
}
|
|
350
368
|
hideLoading() {
|
|
351
|
-
this.className =
|
|
369
|
+
this.className = "";
|
|
352
370
|
this.ref && this.ref.markForCheck();
|
|
353
371
|
this.ref && this.ref.detectChanges();
|
|
354
372
|
}
|
|
355
373
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CommonGridComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
356
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CommonGridComponent, selector: "rs-common-grid", inputs: { showCheckBox: "showCheckBox", loaded: "loaded", hiddenLoaded: "hiddenLoaded", authorized: "authorized", selectedDiffKey: "selectedDiffKey", gridHeight: "gridHeight", gridId: "gridId", resizeSettings: "resizeSettings", filterSettings: "filterSettings", template: "template", fields: "fields", dataSource: "dataSource", editSettings: "editSettings", columnTemplate: "columnTemplate", pageSettings: "pageSettings", allowPaging: "allowPaging", clipMode: "clipMode", checkBoxWidth: "checkBoxWidth", childGrid: "childGrid", contextMenuItems: "contextMenuItems", selectionSettings: "selectionSettings", alwaysShowCheckbox: "alwaysShowCheckbox", defaultRecord: "defaultRecord", disableSystemRow: "disableSystemRow" }, outputs: { recordDoubleClick: "recordDoubleClick", actionComplete: "actionComplete", rowSelected: "rowSelected", rowDeselected: "rowDeselected", onContextMenu: "onContextMenu", actionHandler: "actionHandler", queryCellInfo: "queryCellInfo", recordClick: "recordClick", actionBegin: "actionBegin", rowDataBound: "rowDataBound", dataBound: "dataBound", exportQueryCellInfo: "exportQueryCellInfo", rowSelecting: "rowSelecting" }, viewQueries: [{ propertyName: "grid", first: true, predicate: ["grid"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ejs-grid\r\n\t#grid\r\n\t[id]=\"gridId\"\r\n\t[ngClass]=\"{\r\n\t\t'hide-Check-box': !alwaysShowCheckbox,\r\n\t\t'grid-loading': className === 'grid-loading'\r\n\t}\"\r\n\t[dataSource]=\"dataSource\"\r\n\t[allowPaging]=\"allowPaging && pageSettings\"\r\n\t[allowResizing]=\"true\"\r\n\t[pageSettings]=\"pageSettings\"\r\n\t[showColumnMenu]=\"true\"\r\n\t[allowSorting]=\"true\"\r\n\t[allowFiltering]=\"true\"\r\n\t[allowExcelExport]=\"true\"\r\n\t[filterSettings]=\"filterSettings\"\r\n\t[resizeSettings]=\"resizeSettings\"\r\n\t[allowSelection]=\"true\"\r\n\t[editSettings]=\"editSettings\"\r\n\t[childGrid]=\"childGrid\"\r\n\t[contextMenuItems]=\"\r\n\t\tdataSource && dataSource.length ? contextMenuItems : null\r\n\t\"\r\n\t[selectionSettings]=\"selectionSettings\"\r\n\t(recordClick)=\"_recordClick($event)\"\r\n\t(recordDoubleClick)=\"_recordDoubleClick($event)\"\r\n\t(actionBegin)=\"_actionBegin($event)\"\r\n\t(actionComplete)=\"_actionHandler($event)\"\r\n\t(rowSelected)=\"_rowSelected($event)\"\r\n\t(rowDeselected)=\"_rowDeselected($event)\"\r\n\tstyle=\"border: none\"\r\n\t(contextMenuClick)=\"_onContextMenu($event)\"\r\n\t(contextMenuOpen)=\"contextMenuOpen($event)\"\r\n\t(queryCellInfo)=\"customiseCell($event)\"\r\n\t(dataBound)=\"_dataBound($event)\"\r\n\t(rowDataBound)=\"_rowDataBound($event)\"\r\n\t(rowSelecting)=\"_rowSelecting($event)\"\r\n\t(excelQueryCellInfo)=\"_exportQueryCellInfo($event)\"\r\n\t(load)=\"_load()\"\r\n>\r\n\t<e-columns>\r\n\t\t<e-column\r\n\t\t\t*ngIf=\"showCheckBox\"\r\n\t\t\ttype=\"checkbox\"\r\n\t\t\t[width]=\"checkBoxWidth\"\r\n\t\t\t[showColumnMenu]=\"false\"\r\n\t\t></e-column>\r\n\t\t<e-column\r\n\t\t\t*ngFor=\"let item of fields; trackBy: trackByFn\"\r\n\t\t\t[field]=\"item.columnName\"\r\n\t\t\t[filter]=\"item.filter ? item.filter : { type: 'CheckBox' }\"\r\n\t\t\t[customAttributes]=\"\r\n\t\t\t\titem.colName === 'entityUserList' ||\r\n\t\t\t\titem.colName === 'kycProgress'\r\n\t\t\t\t\t? { class: 'hideColumnFilterClass' }\r\n\t\t\t\t\t: {}\r\n\t\t\t\"\r\n\t\t\t[headerText]=\"item.columnDisplayName\"\r\n\t\t\t[textAlign]=\"item.textAlign\"\r\n\t\t\t[showColumnMenu]=\"item.showColumnMenu === undefined ? true : false\"\r\n\t\t\t[allowFiltering]=\"item.allowFiltering === undefined ? true : false\"\r\n\t\t\t[allowSorting]=\"item.allowSorting === undefined ? true : false\"\r\n\t\t\t[editType]=\"item.editType\"\r\n\t\t\t[validationRules]=\"item.validationRules\"\r\n\t\t\t[type]=\"item.dataType\"\r\n\t\t\t[width]=\"item.width\"\r\n\t\t\t[minWidth]=\"item.minWidth\"\r\n\t\t\t[format]=\"item.format\"\r\n\t\t\t[visible]=\"item.visible\"\r\n\t\t\t[template]=\"item.showTemplate ? columnTemplate : undefined\"\r\n\t\t\t[clipMode]=\"\r\n\t\t\t\titem.clipMode\r\n\t\t\t\t\t? item.clipMode\r\n\t\t\t\t\t: clipMode || 'EllipsisWithTooltip'\r\n\t\t\t\"\r\n\t\t\t[sortComparer]=\"item.dateComparer\"\r\n\t\t>\r\n\t\t</e-column>\r\n\t</e-columns>\r\n</ejs-grid>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.GridComponent, selector: "ejs-grid", inputs: ["adaptiveUIMode", "aggregates", "allowExcelExport", "allowFiltering", "allowGrouping", "allowKeyboard", "allowMultiSorting", "allowPaging", "allowPdfExport", "allowReordering", "allowResizing", "allowRowDragAndDrop", "allowSelection", "allowSorting", "allowTextWrap", "autoFit", "childGrid", "clipMode", "columnChooserSettings", "columnMenuItems", "columnQueryMode", "columns", "contextMenuItems", "cssClass", "currencyCode", "currentAction", "currentViewData", "dataSource", "detailTemplate", "editSettings", "ej2StatePersistenceVersion", "emptyRecordTemplate", "enableAdaptiveUI", "enableAltRow", "enableAutoFill", "enableColumnVirtualization", "enableHeaderFocus", "enableHover", "enableHtmlSanitizer", "enableImmutableMode", "enableInfiniteScrolling", "enablePersistence", "enableRtl", "enableStickyHeader", "enableVirtualMaskRow", "enableVirtualization", "exportGrids", "filterSettings", "frozenColumns", "frozenRows", "gridLines", "groupSettings", "height", "hierarchyPrintMode", "infiniteScrollSettings", "loadingIndicator", "locale", "pageSettings", "pagerTemplate", "parentDetails", "printMode", "query", "queryString", "resizeSettings", "rowDropSettings", "rowHeight", "rowRenderingMode", "rowTemplate", "searchSettings", "selectedRowIndex", "selectionSettings", "showColumnChooser", "showColumnMenu", "showHider", "sortSettings", "textWrapSettings", "toolbar", "toolbarTemplate", "width"], outputs: ["actionBegin", "actionComplete", "actionFailure", "batchAdd", "batchCancel", "batchDelete", "beforeAutoFill", "beforeBatchAdd", "beforeBatchDelete", "beforeBatchSave", "beforeCopy", "beforeDataBound", "beforeExcelExport", "beforeOpenAdaptiveDialog", "beforeOpenColumnChooser", "beforePaste", "beforePdfExport", "beforePrint", "beginEdit", "cellDeselected", "cellDeselecting", "cellEdit", "cellSave", "cellSaved", "cellSelected", "cellSelecting", "checkBoxChange", "columnDataStateChange", "columnDeselected", "columnDeselecting", "columnDrag", "columnDragStart", "columnDrop", "columnMenuClick", "columnMenuOpen", "columnSelected", "columnSelecting", "commandClick", "contextMenuClick", "contextMenuOpen", "created", "dataBound", "dataSourceChanged", "dataStateChange", "destroyed", "detailDataBound", "excelAggregateQueryCellInfo", "excelExportComplete", "excelHeaderQueryCellInfo", "excelQueryCellInfo", "exportDetailDataBound", "exportDetailTemplate", "exportGroupCaption", "headerCellInfo", "keyPressed", "lazyLoadGroupCollapse", "lazyLoadGroupExpand", "load", "pdfAggregateQueryCellInfo", "pdfExportComplete", "pdfHeaderQueryCellInfo", "pdfQueryCellInfo", "printComplete", "queryCellInfo", "recordClick", "recordDoubleClick", "resizeStart", "resizeStop", "resizing", "rowDataBound", "rowDeselected", "rowDeselecting", "rowDrag", "rowDragStart", "rowDragStartHelper", "rowDrop", "rowSelected", "rowSelecting", "toolbarClick", "dataSourceChange"] }, { kind: "directive", type: i2.ColumnDirective, selector: "ejs-grid>e-columns>e-column", inputs: ["allowEditing", "allowFiltering", "allowGrouping", "allowReordering", "allowResizing", "allowSearching", "allowSorting", "autoFit", "clipMode", "columns", "commands", "customAttributes", "dataSource", "defaultValue", "disableHtmlEncode", "displayAsCheckBox", "edit", "editTemplate", "editType", "enableGroupByFormat", "field", "filter", "filterBarTemplate", "filterTemplate", "foreignKeyField", "foreignKeyValue", "format", "formatter", "freeze", "headerTemplate", "headerText", "headerTextAlign", "headerValueAccessor", "hideAtMedia", "index", "isFrozen", "isIdentity", "isPrimaryKey", "lockColumn", "maxWidth", "minWidth", "showColumnMenu", "showInColumnChooser", "sortComparer", "template", "textAlign", "type", "uid", "validationRules", "valueAccessor", "visible", "width"] }, { kind: "directive", type: i2.ColumnsDirective, selector: "ejs-grid>e-columns" }, { kind: "directive", type: i2.AggregateColumnDirective, selector: "ejs-grid>e-aggregates>e-aggregate>e-columns>e-column", inputs: ["columnName", "customAggregate", "field", "footerTemplate", "format", "groupCaptionTemplate", "groupFooterTemplate", "type"] }, { kind: "directive", type: i2.AggregateColumnsDirective, selector: "ejs-grid>e-aggregates>e-aggregate>e-columns" }, { kind: "directive", type: i3.ColumnDirective, selector: "e-columns>e-column", inputs: ["border", "width"] }, { kind: "directive", type: i3.ColumnsDirective, selector: "ejs-chart>e-columns" }] });
|
|
374
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CommonGridComponent, selector: "rs-common-grid", inputs: { showCheckBox: "showCheckBox", loaded: "loaded", hiddenLoaded: "hiddenLoaded", authorized: "authorized", selectedDiffKey: "selectedDiffKey", gridHeight: "gridHeight", gridId: "gridId", resizeSettings: "resizeSettings", filterSettings: "filterSettings", template: "template", fields: "fields", dataSource: "dataSource", editSettings: "editSettings", columnTemplate: "columnTemplate", pageSettings: "pageSettings", allowPaging: "allowPaging", clipMode: "clipMode", checkBoxWidth: "checkBoxWidth", childGrid: "childGrid", frozenColumns: "frozenColumns", columnChooserSettings: "columnChooserSettings", contextMenuItems: "contextMenuItems", selectionSettings: "selectionSettings", alwaysShowCheckbox: "alwaysShowCheckbox", defaultRecord: "defaultRecord", disableSystemRow: "disableSystemRow" }, outputs: { recordDoubleClick: "recordDoubleClick", actionComplete: "actionComplete", rowSelected: "rowSelected", rowDeselected: "rowDeselected", onContextMenu: "onContextMenu", actionHandler: "actionHandler", queryCellInfo: "queryCellInfo", recordClick: "recordClick", actionBegin: "actionBegin", rowDataBound: "rowDataBound", dataBound: "dataBound", exportQueryCellInfo: "exportQueryCellInfo", rowSelecting: "rowSelecting" }, viewQueries: [{ propertyName: "grid", first: true, predicate: ["grid"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ejs-grid\r\n\t#grid\r\n\t[id]=\"gridId\"\r\n\t[ngClass]=\"{\r\n\t\t'hide-Check-box': !alwaysShowCheckbox,\r\n\t\t'grid-loading': className === 'grid-loading'\r\n\t}\"\r\n\t[dataSource]=\"dataSource\"\r\n\t[allowPaging]=\"allowPaging && pageSettings\"\r\n\t[allowResizing]=\"true\"\r\n\t[pageSettings]=\"pageSettings\"\r\n\t[showColumnMenu]=\"true\"\r\n\t[allowSorting]=\"true\"\r\n\t[allowFiltering]=\"true\"\r\n\t[allowExcelExport]=\"true\"\r\n\t[filterSettings]=\"filterSettings\"\r\n\t[resizeSettings]=\"resizeSettings\"\r\n\t[allowSelection]=\"true\"\r\n\t[editSettings]=\"editSettings\"\r\n\t[childGrid]=\"childGrid\"\r\n\t[contextMenuItems]=\"\r\n\t\tdataSource && dataSource.length ? contextMenuItems : null\r\n\t\"\r\n\t[selectionSettings]=\"selectionSettings\"\r\n\t(recordClick)=\"_recordClick($event)\"\r\n\t(recordDoubleClick)=\"_recordDoubleClick($event)\"\r\n\t(actionBegin)=\"_actionBegin($event)\"\r\n\t(actionComplete)=\"_actionHandler($event)\"\r\n\t(rowSelected)=\"_rowSelected($event)\"\r\n\t(rowDeselected)=\"_rowDeselected($event)\"\r\n\tstyle=\"border: none\"\r\n\t(contextMenuClick)=\"_onContextMenu($event)\"\r\n\t(contextMenuOpen)=\"contextMenuOpen($event)\"\r\n\t(queryCellInfo)=\"customiseCell($event)\"\r\n\t(dataBound)=\"_dataBound($event)\"\r\n\t(rowDataBound)=\"_rowDataBound($event)\"\r\n\t(rowSelecting)=\"_rowSelecting($event)\"\r\n\t(excelQueryCellInfo)=\"_exportQueryCellInfo($event)\"\r\n\t(load)=\"_load()\"\r\n\t[frozenColumns]=\"frozenColumns\"\r\n\t[columnChooserSettings]=\"columnChooserSettings\"\r\n\r\n>\r\n\t<e-columns>\r\n\t\t<e-column\r\n\t\t\t*ngIf=\"showCheckBox\"\r\n\t\t\ttype=\"checkbox\"\r\n\t\t\t[width]=\"checkBoxWidth\"\r\n\t\t\t[showColumnMenu]=\"false\"\r\n\t\t\t[allowResizing]=\"false\"\r\n\t\t></e-column>\r\n\t\t<e-column\r\n\t\t\t*ngFor=\"let item of fields; trackBy: trackByFn; let last = last\"\r\n\t\t\t[field]=\"item.columnName\"\r\n\t\t\t[filter]=\"item.filter ? item.filter : { type: 'CheckBox' }\"\r\n\t\t\t[customAttributes]=\"\r\n\t\t\t\titem.colName === 'entityUserList' ||\r\n\t\t\t\titem.colName === 'kycProgress'\r\n\t\t\t\t\t? { class: 'hideColumnFilterClass' }\r\n\t\t\t\t\t: {}\r\n\t\t\t\"\r\n\t\t\t[headerText]=\"item.columnDisplayName\"\r\n\t\t\t[textAlign]=\"item.textAlign\"\r\n\t\t\t[showColumnMenu]=\"item.showColumnMenu === undefined ? true : false\"\r\n\t\t\t[allowFiltering]=\"item.allowFiltering === undefined ? true : false\"\r\n\t\t\t[allowSorting]=\"item.allowSorting === undefined ? true : false\"\r\n\t\t\t[editType]=\"item.editType\"\r\n\t\t\t[validationRules]=\"item.validationRules\"\r\n\t\t\t[type]=\"item.dataType || 'string'\"\r\n\t\t\t[width]=\"item.width\"\r\n\t\t\t[minWidth]=\"item.minWidth\"\r\n\t\t\t[format]=\"item.format\"\r\n\t\t\t[visible]=\"item.visible\"\r\n\t\t\t[template]=\"item.showTemplate ? columnTemplate : undefined\"\r\n\t\t\t[clipMode]=\"\r\n\t\t\t\titem.clipMode\r\n\t\t\t\t\t? item.clipMode\r\n\t\t\t\t\t: clipMode || 'EllipsisWithTooltip'\r\n\t\t\t\"\r\n\t\t\t[sortComparer]=\"item.dateComparer\"\r\n\t\t\t[allowResizing]=\"!last\"\r\n\t\t>\r\n\t\t</e-column>\r\n\t</e-columns>\r\n</ejs-grid>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.GridComponent, selector: "ejs-grid", inputs: ["adaptiveUIMode", "aggregates", "allowExcelExport", "allowFiltering", "allowGrouping", "allowKeyboard", "allowMultiSorting", "allowPaging", "allowPdfExport", "allowReordering", "allowResizing", "allowRowDragAndDrop", "allowSelection", "allowSorting", "allowTextWrap", "autoFit", "childGrid", "clipMode", "columnChooserSettings", "columnMenuItems", "columnQueryMode", "columns", "contextMenuItems", "cssClass", "currencyCode", "currentAction", "currentViewData", "dataSource", "detailTemplate", "editSettings", "ej2StatePersistenceVersion", "emptyRecordTemplate", "enableAdaptiveUI", "enableAltRow", "enableAutoFill", "enableColumnVirtualization", "enableHeaderFocus", "enableHover", "enableHtmlSanitizer", "enableImmutableMode", "enableInfiniteScrolling", "enablePersistence", "enableRtl", "enableStickyHeader", "enableVirtualMaskRow", "enableVirtualization", "exportGrids", "filterSettings", "frozenColumns", "frozenRows", "gridLines", "groupSettings", "height", "hierarchyPrintMode", "infiniteScrollSettings", "loadingIndicator", "locale", "pageSettings", "pagerTemplate", "parentDetails", "printMode", "query", "queryString", "resizeSettings", "rowDropSettings", "rowHeight", "rowRenderingMode", "rowTemplate", "searchSettings", "selectedRowIndex", "selectionSettings", "showColumnChooser", "showColumnMenu", "showHider", "sortSettings", "textWrapSettings", "toolbar", "toolbarTemplate", "width"], outputs: ["actionBegin", "actionComplete", "actionFailure", "batchAdd", "batchCancel", "batchDelete", "beforeAutoFill", "beforeBatchAdd", "beforeBatchDelete", "beforeBatchSave", "beforeCopy", "beforeDataBound", "beforeExcelExport", "beforeOpenAdaptiveDialog", "beforeOpenColumnChooser", "beforePaste", "beforePdfExport", "beforePrint", "beginEdit", "cellDeselected", "cellDeselecting", "cellEdit", "cellSave", "cellSaved", "cellSelected", "cellSelecting", "checkBoxChange", "columnDataStateChange", "columnDeselected", "columnDeselecting", "columnDrag", "columnDragStart", "columnDrop", "columnMenuClick", "columnMenuOpen", "columnSelected", "columnSelecting", "commandClick", "contextMenuClick", "contextMenuOpen", "created", "dataBound", "dataSourceChanged", "dataStateChange", "destroyed", "detailDataBound", "excelAggregateQueryCellInfo", "excelExportComplete", "excelHeaderQueryCellInfo", "excelQueryCellInfo", "exportDetailDataBound", "exportDetailTemplate", "exportGroupCaption", "headerCellInfo", "keyPressed", "lazyLoadGroupCollapse", "lazyLoadGroupExpand", "load", "pdfAggregateQueryCellInfo", "pdfExportComplete", "pdfHeaderQueryCellInfo", "pdfQueryCellInfo", "printComplete", "queryCellInfo", "recordClick", "recordDoubleClick", "resizeStart", "resizeStop", "resizing", "rowDataBound", "rowDeselected", "rowDeselecting", "rowDrag", "rowDragStart", "rowDragStartHelper", "rowDrop", "rowSelected", "rowSelecting", "toolbarClick", "dataSourceChange"] }, { kind: "directive", type: i2.ColumnDirective, selector: "ejs-grid>e-columns>e-column", inputs: ["allowEditing", "allowFiltering", "allowGrouping", "allowReordering", "allowResizing", "allowSearching", "allowSorting", "autoFit", "clipMode", "columns", "commands", "customAttributes", "dataSource", "defaultValue", "disableHtmlEncode", "displayAsCheckBox", "edit", "editTemplate", "editType", "enableGroupByFormat", "field", "filter", "filterBarTemplate", "filterTemplate", "foreignKeyField", "foreignKeyValue", "format", "formatter", "freeze", "headerTemplate", "headerText", "headerTextAlign", "headerValueAccessor", "hideAtMedia", "index", "isFrozen", "isIdentity", "isPrimaryKey", "lockColumn", "maxWidth", "minWidth", "showColumnMenu", "showInColumnChooser", "sortComparer", "template", "textAlign", "type", "uid", "validationRules", "valueAccessor", "visible", "width"] }, { kind: "directive", type: i2.ColumnsDirective, selector: "ejs-grid>e-columns" }, { kind: "directive", type: i2.AggregateColumnDirective, selector: "ejs-grid>e-aggregates>e-aggregate>e-columns>e-column", inputs: ["columnName", "customAggregate", "field", "footerTemplate", "format", "groupCaptionTemplate", "groupFooterTemplate", "type"] }, { kind: "directive", type: i2.AggregateColumnsDirective, selector: "ejs-grid>e-aggregates>e-aggregate>e-columns" }, { kind: "directive", type: i3.ColumnDirective, selector: "e-columns>e-column", inputs: ["border", "width"] }, { kind: "directive", type: i3.ColumnsDirective, selector: "ejs-chart>e-columns" }] });
|
|
357
375
|
}
|
|
358
376
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CommonGridComponent, decorators: [{
|
|
359
377
|
type: Component,
|
|
360
|
-
args: [{ selector:
|
|
378
|
+
args: [{ selector: "rs-common-grid", template: "<ejs-grid\r\n\t#grid\r\n\t[id]=\"gridId\"\r\n\t[ngClass]=\"{\r\n\t\t'hide-Check-box': !alwaysShowCheckbox,\r\n\t\t'grid-loading': className === 'grid-loading'\r\n\t}\"\r\n\t[dataSource]=\"dataSource\"\r\n\t[allowPaging]=\"allowPaging && pageSettings\"\r\n\t[allowResizing]=\"true\"\r\n\t[pageSettings]=\"pageSettings\"\r\n\t[showColumnMenu]=\"true\"\r\n\t[allowSorting]=\"true\"\r\n\t[allowFiltering]=\"true\"\r\n\t[allowExcelExport]=\"true\"\r\n\t[filterSettings]=\"filterSettings\"\r\n\t[resizeSettings]=\"resizeSettings\"\r\n\t[allowSelection]=\"true\"\r\n\t[editSettings]=\"editSettings\"\r\n\t[childGrid]=\"childGrid\"\r\n\t[contextMenuItems]=\"\r\n\t\tdataSource && dataSource.length ? contextMenuItems : null\r\n\t\"\r\n\t[selectionSettings]=\"selectionSettings\"\r\n\t(recordClick)=\"_recordClick($event)\"\r\n\t(recordDoubleClick)=\"_recordDoubleClick($event)\"\r\n\t(actionBegin)=\"_actionBegin($event)\"\r\n\t(actionComplete)=\"_actionHandler($event)\"\r\n\t(rowSelected)=\"_rowSelected($event)\"\r\n\t(rowDeselected)=\"_rowDeselected($event)\"\r\n\tstyle=\"border: none\"\r\n\t(contextMenuClick)=\"_onContextMenu($event)\"\r\n\t(contextMenuOpen)=\"contextMenuOpen($event)\"\r\n\t(queryCellInfo)=\"customiseCell($event)\"\r\n\t(dataBound)=\"_dataBound($event)\"\r\n\t(rowDataBound)=\"_rowDataBound($event)\"\r\n\t(rowSelecting)=\"_rowSelecting($event)\"\r\n\t(excelQueryCellInfo)=\"_exportQueryCellInfo($event)\"\r\n\t(load)=\"_load()\"\r\n\t[frozenColumns]=\"frozenColumns\"\r\n\t[columnChooserSettings]=\"columnChooserSettings\"\r\n\r\n>\r\n\t<e-columns>\r\n\t\t<e-column\r\n\t\t\t*ngIf=\"showCheckBox\"\r\n\t\t\ttype=\"checkbox\"\r\n\t\t\t[width]=\"checkBoxWidth\"\r\n\t\t\t[showColumnMenu]=\"false\"\r\n\t\t\t[allowResizing]=\"false\"\r\n\t\t></e-column>\r\n\t\t<e-column\r\n\t\t\t*ngFor=\"let item of fields; trackBy: trackByFn; let last = last\"\r\n\t\t\t[field]=\"item.columnName\"\r\n\t\t\t[filter]=\"item.filter ? item.filter : { type: 'CheckBox' }\"\r\n\t\t\t[customAttributes]=\"\r\n\t\t\t\titem.colName === 'entityUserList' ||\r\n\t\t\t\titem.colName === 'kycProgress'\r\n\t\t\t\t\t? { class: 'hideColumnFilterClass' }\r\n\t\t\t\t\t: {}\r\n\t\t\t\"\r\n\t\t\t[headerText]=\"item.columnDisplayName\"\r\n\t\t\t[textAlign]=\"item.textAlign\"\r\n\t\t\t[showColumnMenu]=\"item.showColumnMenu === undefined ? true : false\"\r\n\t\t\t[allowFiltering]=\"item.allowFiltering === undefined ? true : false\"\r\n\t\t\t[allowSorting]=\"item.allowSorting === undefined ? true : false\"\r\n\t\t\t[editType]=\"item.editType\"\r\n\t\t\t[validationRules]=\"item.validationRules\"\r\n\t\t\t[type]=\"item.dataType || 'string'\"\r\n\t\t\t[width]=\"item.width\"\r\n\t\t\t[minWidth]=\"item.minWidth\"\r\n\t\t\t[format]=\"item.format\"\r\n\t\t\t[visible]=\"item.visible\"\r\n\t\t\t[template]=\"item.showTemplate ? columnTemplate : undefined\"\r\n\t\t\t[clipMode]=\"\r\n\t\t\t\titem.clipMode\r\n\t\t\t\t\t? item.clipMode\r\n\t\t\t\t\t: clipMode || 'EllipsisWithTooltip'\r\n\t\t\t\"\r\n\t\t\t[sortComparer]=\"item.dateComparer\"\r\n\t\t\t[allowResizing]=\"!last\"\r\n\t\t>\r\n\t\t</e-column>\r\n\t</e-columns>\r\n</ejs-grid>\r\n" }]
|
|
361
379
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { grid: [{
|
|
362
380
|
type: ViewChild,
|
|
363
|
-
args: [
|
|
381
|
+
args: ["grid", { static: false }]
|
|
364
382
|
}], showCheckBox: [{
|
|
365
383
|
type: Input
|
|
366
384
|
}], loaded: [{
|
|
@@ -399,6 +417,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
399
417
|
type: Input
|
|
400
418
|
}], childGrid: [{
|
|
401
419
|
type: Input
|
|
420
|
+
}], frozenColumns: [{
|
|
421
|
+
type: Input
|
|
422
|
+
}], columnChooserSettings: [{
|
|
423
|
+
type: Input
|
|
402
424
|
}], contextMenuItems: [{
|
|
403
425
|
type: Input
|
|
404
426
|
}], selectionSettings: [{
|
|
@@ -436,4 +458,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
436
458
|
}], rowSelecting: [{
|
|
437
459
|
type: Output
|
|
438
460
|
}] } });
|
|
439
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcmFpc2UtY29tbW9uLWxpYi9zcmMvbGliL2NvbW1vbi1ncmlkL2luZGV4LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JhaXNlLWNvbW1vbi1saWIvc3JjL2xpYi9jb21tb24tZ3JpZC9pbmRleC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUdOLFNBQVMsR0FHVixNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFXdkIsTUFBTSxPQUFPLG1CQUFtQjtJQTBFVjtJQXhFYixJQUFJLENBQWdCO0lBQ2xCLFlBQVksR0FBRyxJQUFJLENBQUM7SUFDcEIsTUFBTSxHQUFHLElBQUksQ0FBQztJQUNkLFlBQVksR0FBRyxLQUFLLENBQUM7SUFDckIsVUFBVSxHQUFHLElBQUksQ0FBQyxDQUFDLDJCQUEyQjtJQUN2RCxxQ0FBcUM7SUFDNUIsZUFBZSxHQUFHLEVBQUUsQ0FBQztJQUNyQixVQUFVLEdBQUcsRUFBRSxDQUFDO0lBQ3pCLG1DQUFtQztJQUMxQixNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ2hCLGNBQWMsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUNsQyxjQUFjLEdBQUcsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFDbEMsUUFBUSxDQUFNO0lBQ2QsTUFBTSxHQUFtQixFQUFFLENBQUM7SUFDNUIsVUFBVSxHQUFHLEVBQUUsQ0FBQztJQUNoQixZQUFZLENBQUM7SUFDYixjQUFjLENBQW1CO0lBQ2pDLFlBQVksQ0FBQztJQUNiLFdBQVcsR0FBRyxJQUFJLENBQUM7SUFDbkIsUUFBUSxHQUFHLHFCQUFxQixDQUFDO0lBQ2pDLGFBQWEsR0FBRyxFQUFFLENBQUMsQ0FBQyxt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QUFsQixLQUFLO2dCQUVHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQW1CRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUtHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFFSSxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIE9uQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgR3JpZENvbXBvbmVudCB9IGZyb20gJ0BzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLWdyaWRzJztcclxuXHJcbmltcG9ydCB7IEJlZm9yZU9wZW5DbG9zZUV2ZW50QXJncyB9IGZyb20gJ0BzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLWlucHV0cyc7XHJcbmltcG9ydCB7IElBY3Rpb25NZW51SXRlbSwgSUNvbHVtbkZpZWxkIH0gZnJvbSAnLi4vY29uc3RhbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdycy1jb21tb24tZ3JpZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2luZGV4LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbmRleC5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29tbW9uR3JpZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICBAVmlld0NoaWxkKCdncmlkJywgeyBzdGF0aWM6IGZhbHNlIH0pXHJcbiAgcHVibGljIGdyaWQ6IEdyaWRDb21wb25lbnQ7XHJcbiAgQElucHV0KCkgc2hvd0NoZWNrQm94ID0gdHJ1ZTtcclxuICBASW5wdXQoKSBsb2FkZWQgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGhpZGRlbkxvYWRlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGF1dGhvcml6ZWQgPSB0cnVlOyAvLyBEYXRhc2V05piv5ZCm5o6I5p2D77yM5pyq5o6I5p2D5YiZ5pi+56S65p2D6ZmQ6ZSZ6K+v5o+Q56S6XHJcbiAgLy8gb25seSB1c2UgZm9yIGxvY2FsIGRhdGEgcGFnaW5hdGlvblxyXG4gIEBJbnB1dCgpIHNlbGVjdGVkRGlmZktleSA9ICcnO1xyXG4gIEBJbnB1dCgpIGdyaWRIZWlnaHQgPSAnJztcclxuICAvLyDov5nnjqnmhI/lv4XloavvvIzkuI3nhLZmaWx0ZXIgY29sdW1uQ2hvb3NlcumDveS8muaKpemUmVxyXG4gIEBJbnB1dCgpIGdyaWRJZCA9ICdncmlkJztcclxuICBASW5wdXQoKSByZXNpemVTZXR0aW5ncyA9IHsgbW9kZTogJ0F1dG8nIH07XHJcbiAgQElucHV0KCkgZmlsdGVyU2V0dGluZ3MgPSB7IHR5cGU6ICdNZW51JyB9O1xyXG4gIEBJbnB1dCgpIHRlbXBsYXRlOiBhbnk7XHJcbiAgQElucHV0KCkgZmllbGRzOiBJQ29sdW1uRmllbGRbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGRhdGFTb3VyY2UgPSBbXTtcclxuICBASW5wdXQoKSBlZGl0U2V0dGluZ3M7XHJcbiAgQElucHV0KCkgY29sdW1uVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQElucHV0KCkgcGFnZVNldHRpbmdzO1xyXG4gIEBJbnB1dCgpIGFsbG93UGFnaW5nID0gdHJ1ZTtcclxuICBASW5wdXQoKSBjbGlwTW9kZSA9ICdFbGxpcHNpc1dpdGhUb29sdGlwJztcclxuICBASW5wdXQoKSBjaGVja0JveFdpZHRoID0gMzI7IC8vIGNvbCDmlbDph4/ov4flsJHnmoTml7blgJnvvIxjaGVja+WuveW6puS8muaLieS8uO+8jOi/meaXtuWAmeiuvue9rm51bGxcclxuICBASW5wdXQoKSBjaGlsZEdyaWQ7XHJcblxyXG4gIC8qKlxyXG5cdCAqIFNhbXBsZTogW1xyXG5cdFx0XHR7XHJcblx0XHRcdFx0dGV4dDogXCJQcmV2aWV3XCIsXHJcblx0XHRcdFx0dGFyZ2V0OiBcIi5lLWNvbnRlbnRcIixcclxuXHRcdFx0XHRpZDogXCJwcmV2aWV3LWljb25cIixcclxuXHRcdFx0XHRpY29uQ3NzOiBcInByZXZpZXdcIixcclxuXHRcdFx0fSxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHRleHQ6IFwiRG93bmxvYWRcIixcclxuXHRcdFx0XHR0YXJnZXQ6IFwiLmUtY29udGVudFwiLFxyXG5cdFx0XHRcdGlkOiBcImRvd25sb2FkLWljb25cIixcclxuXHRcdFx0XHRpY29uQ3NzOiBcImRvd25sb2FkXCIsXHJcblx0XHRcdH1cclxuXHRcdF1cclxuXHRcdOeUqOS6juWumuS5iXJvd+S4rSDngrnlh7vkuovku7ZcclxuXHQgKi9cclxuICBASW5wdXQoKSBjb250ZXh0TWVudUl0ZW1zOiBJQWN0aW9uTWVudUl0ZW1bXSA9IFtdO1xyXG4gIC8vIEBJbnB1dCgpIHNlbGVjdGlvblNldHRpbmdzID0geyBjaGVja2JveE9ubHk6IHRydWUsIHR5cGU6IFwiTXVsdGlwbGVcIiB9O1xyXG4gIEBJbnB1dCgpIHNlbGVjdGlvblNldHRpbmdzID0ge1xyXG4gICAgdHlwZTogJ011bHRpcGxlJyxcclxuICAgIC8vIHBlcnNpc3RTZWxlY3Rpb246IHRydWUsXHJcbiAgICBjaGVja2JveE9ubHk6IHRydWUsXHJcbiAgfTtcclxuICBASW5wdXQoKSBhbHdheXNTaG93Q2hlY2tib3g6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBkZWZhdWx0UmVjb3JkOiBhbnk7XHJcbiAgQElucHV0KCkgZGlzYWJsZVN5c3RlbVJvdzogYm9vbGVhbiA9IGZhbHNlOyAvLyDnpoHnlKhJc1N5dGVtID0gdHJ1ZeeahOaVtOihjFxyXG5cclxuICBAT3V0cHV0KCkgcmVjb3JkRG91YmxlQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGFjdGlvbkNvbXBsZXRlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSByb3dTZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgcm93RGVzZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgb25Db250ZXh0TWVudSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgYWN0aW9uSGFuZGxlciA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgcXVlcnlDZWxsSW5mbyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgcmVjb3JkQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGFjdGlvbkJlZ2luID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSByb3dEYXRhQm91bmQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGRhdGFCb3VuZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgZXhwb3J0UXVlcnlDZWxsSW5mbyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgcm93U2VsZWN0aW5nID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBzZWxlY3RJZCA9IFtdO1xyXG4gIHN0YXJ0UGFnaW5nID0gZmFsc2U7XHJcbiAgaW5kZXhMaXN0ID0gW107XHJcbiAgY2xhc3NOYW1lID0gJ2dyaWQtbG9hZGluZyc7XHJcblxyXG4gIHB1YmxpYyB0cmFuc2xhdGlvbjtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgICB0aGlzLnRyYW5zbGF0aW9uID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndHJhbnNsYXRpb24nKSk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmhpZGRlbkxvYWRlZCkgdGhpcy5jbGFzc05hbWUgPSAnJztcclxuICAgIHRoaXMucmVmICYmIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxuXHJcbiAgdHJhY2tCeUZuKGluZGV4LCBpdGVtKSB7XHJcbiAgICByZXR1cm4gaW5kZXg7IC8vIG9yIGEgdW5pcXVlIGlkZW50aWZpZXIgaW4geW91ciBvYmplY3RcclxuICB9XHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgaWYgKGNoYW5nZXMuZGF0YVNvdXJjZSAmJiBjaGFuZ2VzLmRhdGFTb3VyY2UuY3VycmVudFZhbHVlKSB7XHJcbiAgICAgIGlmIChcclxuICAgICAgICB0aGlzLmFsbG93UGFnaW5nICYmXHJcbiAgICAgICAgY2hhbmdlcy5kYXRhU291cmNlLmN1cnJlbnRWYWx1ZS5sZW5ndGggJiZcclxuICAgICAgICAhdGhpcy5wYWdlU2V0dGluZ3NcclxuICAgICAgKSB7XHJcbiAgICAgICAgdGhpcy5wYWdlU2V0dGluZ3MgPVxyXG4gICAgICAgICAgY2hhbmdlcy5kYXRhU291cmNlLmN1cnJlbnRWYWx1ZS5sZW5ndGggPiA5XHJcbiAgICAgICAgICAgID8ge1xyXG4gICAgICAgICAgICAgICAgcGFnZVNpemVzOiBbJ0FsbCcsICcyNScsICc1MCcsICcxMDAnXSxcclxuICAgICAgICAgICAgICAgIHBhZ2VTaXplOiA1MCxcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIDogbnVsbDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgX2xvYWQoKSB7XHJcbiAgICBpZiAoIXRoaXMuYXV0aG9yaXplZCkge1xyXG4gICAgICAodGhpcy5ncmlkLmxvY2FsZU9iaiBhcyBhbnkpLmxvY2FsZVN0cmluZ3MuRW1wdHlSZWNvcmQgPVxyXG4gICAgICAgIHRoaXMudHJhbnNsYXRpb24uWU9VX0RPX05PVF9IQVZFX1RIRV9EQVRBU0VUX1BFUk1JU1NJT04gfHxcclxuICAgICAgICBcIllvdSBkb24ndCBoYXZlIHRoZSBkYXRhc2V0IHBlcm1pc3Npb24gdG8gdmlldyB0aGUgcmVjb3JkLlwiO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgX2RhdGFCb3VuZChhcmdzOiBhbnkpIHtcclxuICAgIC8vIOaVtOS4que7hOS7tuWKoOi9veWujOaIkOaXtueahOWbnuiwg+WHveaVsFxyXG4gICAgdmFyIHBhZ2VyQ29udGFpbmVyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmUtcGFnZXJjb250YWluZXInKTtcclxuICAgIGlmIChwYWdlckNvbnRhaW5lcikge1xyXG4gICAgICB2YXIgbGlua0VsZW1lbnRzID0gcGFnZXJDb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgnLmUtbGluaycpO1xyXG4gICAgICBsaW5rRWxlbWVudHMuZm9yRWFjaChmdW5jdGlvbiAoZWxlbWVudCkge1xyXG4gICAgICAgIGVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdocmVmJyk7IC8vIFNNUDItMTAzMTAg5Yig6Zmk5YiG6aG15Zmo55qEaHJlZuWxnuaAp1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnNlbGVjdGVkRGlmZktleSkge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLmNob29zZVJlY29yZHMoKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmRhdGFCb3VuZC5lbWl0KGFyZ3MpO1xyXG4gIH1cclxuXHJcbiAgX2V4cG9ydFF1ZXJ5Q2VsbEluZm8oYXJncykge1xyXG4gICAgdGhpcy5leHBvcnRRdWVyeUNlbGxJbmZvLmVtaXQoYXJncyk7XHJcbiAgfVxyXG5cclxuICBfcmVjb3JkRG91YmxlQ2xpY2soJGV2ZW50KSB7XHJcbiAgICB0aGlzLnJlY29yZERvdWJsZUNsaWNrLmVtaXQoJGV2ZW50KTtcclxuICB9XHJcbiAgLyoqXHJcblx0ICogW3NlbGVjdGlvblNldHRpbmdzXT1cInsgY2hlY2tib3hPbmx5OiB0cnVlIH1cIlxyXG5cdCAgIFtzaG93Q2hlY2tCb3hdPVwidHJ1ZVwiXHJcblx0ICAg5o6n5Lu25L2/55So5pe277yM5b+F6aG76YWN572u5LiK6Z2i5Lik5Liq5bGe5oCn77yM5ZCm5YiZ77yM5YWo6YCJ5Lya5aSx5pWIXHJcblx0ICovXHJcbiAgX3Jvd1NlbGVjdGVkKCRldmVudCkge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWREaWZmS2V5KSB7XHJcbiAgICAgIGlmICgkZXZlbnQuaXNIZWFkZXJDaGVja2JveENsaWNrZWQgJiYgQXJyYXkuaXNBcnJheSgkZXZlbnQuZGF0YSkpIHtcclxuICAgICAgICBpZiAoJGV2ZW50LmRhdGEgJiYgJGV2ZW50LmRhdGEubGVuZ3RoKSB7XHJcbiAgICAgICAgICAkZXZlbnQuZGF0YS5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIGl0ZW0uaXNTZWxlY3RlZCA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0SWQucHVzaChpdGVtKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgdGhpcy5kYXRhU291cmNlLmZvckVhY2goKGRhdGEpID0+IHtcclxuICAgICAgICAgICAgJGV2ZW50LmRhdGEuZm9yRWFjaCgoX2RhdGEpID0+IHtcclxuICAgICAgICAgICAgICBpZiAoX2RhdGFbdGhpcy5zZWxlY3RlZERpZmZLZXldID09PSBkYXRhW3RoaXMuc2VsZWN0ZWREaWZmS2V5XSkge1xyXG4gICAgICAgICAgICAgICAgZGF0YS5pc1NlbGVjdGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgICRldmVudC5kYXRhLmlzU2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuc2VsZWN0SWQucHVzaCgkZXZlbnQuZGF0YSk7XHJcbiAgICAgICAgdGhpcy5kYXRhU291cmNlLmZvckVhY2goKGRhdGEpID0+IHtcclxuICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgZGF0YVt0aGlzLnNlbGVjdGVkRGlmZktleV0gPT09ICRldmVudC5kYXRhW3RoaXMuc2VsZWN0ZWREaWZmS2V5XVxyXG4gICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIGRhdGEuaXNTZWxlY3RlZCA9IHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5yZWYgJiYgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnJvd1NlbGVjdGVkLmVtaXQoJGV2ZW50KTtcclxuICB9XHJcblxyXG4gIF9yb3dEZXNlbGVjdGVkKCRldmVudCkge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWREaWZmS2V5KSB7XHJcbiAgICAgIGlmICh0aGlzLnN0YXJ0UGFnaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICgkZXZlbnQuaXNIZWFkZXJDaGVja2JveENsaWNrZWQgJiYgQXJyYXkuaXNBcnJheSgkZXZlbnQuZGF0YSkpIHtcclxuICAgICAgICAkZXZlbnQuZGF0YS5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICBpdGVtLmlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLnNlbGVjdElkID0gW107XHJcbiAgICAgICAgdGhpcy5kYXRhU291cmNlLmZvckVhY2goKGRhdGEpID0+IHtcclxuICAgICAgICAgICRldmVudC5kYXRhLmZvckVhY2goKF9kYXRhKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChfZGF0YVt0aGlzLnNlbGVjdGVkRGlmZktleV0gPT09IGRhdGFbdGhpcy5zZWxlY3RlZERpZmZLZXldKSB7XHJcbiAgICAgICAgICAgICAgZGF0YS5pc1NlbGVjdGVkID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgICRldmVudC5kYXRhLmlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnNlbGVjdElkID0gdGhpcy5zZWxlY3RJZC5maWx0ZXIoXHJcbiAgICAgICAgICAoaXRlbSkgPT5cclxuICAgICAgICAgICAgaXRlbVt0aGlzLnNlbGVjdGVkRGlmZktleV0gIT09ICRldmVudC5kYXRhW3RoaXMuc2VsZWN0ZWREaWZmS2V5XVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5kYXRhU291cmNlLmZvckVhY2goKGRhdGEpID0+IHtcclxuICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgZGF0YVt0aGlzLnNlbGVjdGVkRGlmZktleV0gPT09ICRldmVudC5kYXRhW3RoaXMuc2VsZWN0ZWREaWZmS2V5XVxyXG4gICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIGRhdGEuaXNTZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMucmVmICYmIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5yb3dEZXNlbGVjdGVkLmVtaXQoJGV2ZW50KTtcclxuICB9XHJcblxyXG4gIF9vbkNvbnRleHRNZW51KGFyZ3MpIHtcclxuICAgIHRoaXMub25Db250ZXh0TWVudS5lbWl0KGFyZ3MpO1xyXG4gIH1cclxuXHJcbiAgX2FjdGlvbkJlZ2luKGFyZ3MpIHtcclxuICAgIGlmIChcclxuICAgICAgdGhpcy5zZWxlY3RlZERpZmZLZXkgJiZcclxuICAgICAgKGFyZ3MucmVxdWVzdFR5cGUgPT09ICdwYWdpbmcnIHx8XHJcbiAgICAgICAgYXJncy5yZXF1ZXN0VHlwZSA9PT0gJ3NlYXJjaGluZycgfHxcclxuICAgICAgICBhcmdzLnJlcXVlc3RUeXBlID09PSAnZmlsdGVyaW5nJyB8fFxyXG4gICAgICAgIGFyZ3MucmVxdWVzdFR5cGUgPT09ICdzb3J0aW5nJylcclxuICAgICkge1xyXG4gICAgICB0aGlzLnN0YXJ0UGFnaW5nID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHRoaXMuYWN0aW9uQmVnaW4uZW1pdChhcmdzKTtcclxuICB9XHJcblxyXG4gIHNlYXJjaChrZXl3b3Jkcykge1xyXG4gICAgdGhpcy5ncmlkLnNlYXJjaChrZXl3b3Jkcyk7XHJcbiAgfVxyXG4gIHNlbGVjdFJvd3MoaW5kZXhMaXN0OiBudW1iZXJbXSkge1xyXG4gICAgdGhpcy5ncmlkLnNlbGVjdFJvd3MoaW5kZXhMaXN0KTtcclxuICB9XHJcbiAgc2VsZWN0Um93KGluZGV4KSB7XHJcbiAgICB0aGlzLmdyaWQuc2VsZWN0Um93KGluZGV4KTtcclxuICB9XHJcbiAgZ2V0Q3VycmVudFZpZXdSZWNvcmRzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZ3JpZC5nZXRDdXJyZW50Vmlld1JlY29yZHMoKTtcclxuICB9XHJcblxyXG4gIGN1c3RvbWlzZUNlbGwoJGV2ZW50KSB7XHJcbiAgICB0aGlzLnF1ZXJ5Q2VsbEluZm8uZW1pdCgkZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgY29udGV4dE1lbnVPcGVuKGFyZ3M/OiBCZWZvcmVPcGVuQ2xvc2VFdmVudEFyZ3MpOiB2b2lkIHtcclxuICAgIGNvbnN0IGRhdGEgPSAoYXJncyBhcyBCZWZvcmVPcGVuQ2xvc2VFdmVudEFyZ3MgfCBhbnkpLnJvd0luZm8ucm93RGF0YTtcclxuICAgIGlmICghZGF0YSkge1xyXG4gICAgICBhcmdzLmNhbmNlbCA9IHRydWU7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGxldCBlbmFibGVJdGVtcyA9IFtdO1xyXG4gICAgbGV0IGhpZGVJdGVtcyA9IFtdO1xyXG4gICAgdGhpcy5ncmlkLmNvbnRleHRNZW51TW9kdWxlLmNvbnRleHRNZW51LnJlZnJlc2goKTsgLy8g5q+P5qyh54K55Ye75oyJ6ZKu5by556qX5YmN6ZyA5YaN5qyh5Yid5aeL5YyW54q25oCBIOWQpuWImeS4jeabtOaWsO+8m1xyXG4gICAgdGhpcy5jb250ZXh0TWVudUl0ZW1zLmZvckVhY2goKGl0ZW06IElBY3Rpb25NZW51SXRlbSkgPT4ge1xyXG4gICAgICAvLyDnlKjkuo7lpITnkIbpg6jliIbmjInpkq5kaXNhYmxlZOeahOaDheWGtVxyXG4gICAgICBpZiAoXHJcbiAgICAgICAgaXRlbS5kaXNhYmxlZCB8fFxyXG4gICAgICAgIChkYXRhLmRpc2FibGVJdGVtICYmIGRhdGEuZGlzYWJsZUl0ZW0uaW5jbHVkZXMoaXRlbS5pY29uQ3NzKSlcclxuICAgICAgKSB7XHJcbiAgICAgICAgZW5hYmxlSXRlbXMucHVzaChpdGVtLnRleHQpO1xyXG4gICAgICAgIC8vIHRoaXMuZ3JpZC5jb250ZXh0TWVudU1vZHVsZS5jb250ZXh0TWVudS5lbmFibGVJdGVtcyhcclxuICAgICAgICAvLyBcdFtpdGVtLnRleHRdLFxyXG4gICAgICAgIC8vIFx0ZmFsc2VcclxuICAgICAgICAvLyApO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIOeUqOS6juWkhOeQhumDqOWIhuaMiemSrumcgOimgWhpZGXnmoTmg4XlhrVcclxuICAgICAgaWYgKFxyXG4gICAgICAgIGl0ZW0uaXNIaWRlIHx8XHJcbiAgICAgICAgKGRhdGEuaGlkZUl0ZW0gJiYgZGF0YS5oaWRlSXRlbS5pbmNsdWRlcyhpdGVtLmljb25Dc3MpKVxyXG4gICAgICApIHtcclxuICAgICAgICBoaWRlSXRlbXMucHVzaChpdGVtLnRleHQpO1xyXG4gICAgICAgIC8vIHRoaXMuZ3JpZC5jb250ZXh0TWVudU1vZHVsZS5jb250ZXh0TWVudS5oaWRlSXRlbXMoXHJcbiAgICAgICAgLy8gXHRbaXRlbS50ZXh0XSxcclxuICAgICAgICAvLyBcdGZhbHNlXHJcbiAgICAgICAgLy8gKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmdyaWQuY29udGV4dE1lbnVNb2R1bGUuY29udGV4dE1lbnUuZW5hYmxlSXRlbXMoZW5hYmxlSXRlbXMsIGZhbHNlKTtcclxuICAgIHRoaXMuZ3JpZC5jb250ZXh0TWVudU1vZHVsZS5jb250ZXh0TWVudS5oaWRlSXRlbXMoaGlkZUl0ZW1zLCBmYWxzZSk7XHJcbiAgfVxyXG5cclxuICBfYWN0aW9uSGFuZGxlcigkZXZlbnQpIHtcclxuICAgIGlmIChcclxuICAgICAgdGhpcy5zZWxlY3RlZERpZmZLZXkgJiZcclxuICAgICAgKCRldmVudC5yZXF1ZXN0VHlwZSA9PT0gJ3BhZ2luZycgfHxcclxuICAgICAgICAkZXZlbnQucmVxdWVzdFR5cGUgPT09ICdzZWFyY2hpbmcnIHx8XHJcbiAgICAgICAgJGV2ZW50LnJlcXVlc3RUeXBlID09PSAnZmlsdGVyaW5nJyB8fFxyXG4gICAgICAgICRldmVudC5yZXF1ZXN0VHlwZSA9PT0gJ3NvcnRpbmcnKVxyXG4gICAgKSB7XHJcbiAgICAgIHRoaXMuaW5kZXhMaXN0ID0gW107XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY2hvb3NlUmVjb3JkcygpO1xyXG4gICAgICAgIHRoaXMuc3RhcnRQYWdpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnJlZiAmJiB0aGlzLnJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgdGhpcy5yZWYgJiYgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgdGhpcy5hY3Rpb25IYW5kbGVyLmVtaXQoJGV2ZW50KTtcclxuICAgIHRoaXMuYWN0aW9uQ29tcGxldGUuZW1pdCgkZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjaG9vc2VSZWNvcmRzKCkge1xyXG4gICAgdGhpcy5pbmRleExpc3QgPSBbXTtcclxuICAgIHRoaXMuZGF0YVNvdXJjZS5mb3JFYWNoKChkYXRhKSA9PiB7XHJcbiAgICAgIHRoaXMuZ3JpZC5nZXRDdXJyZW50Vmlld1JlY29yZHMoKS5mb3JFYWNoKChyb3c6IGFueSwgaSkgPT4ge1xyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIHJvdyAmJlxyXG4gICAgICAgICAgZGF0YVt0aGlzLnNlbGVjdGVkRGlmZktleV0gPT09IHJvd1t0aGlzLnNlbGVjdGVkRGlmZktleV0gJiZcclxuICAgICAgICAgIGRhdGEuaXNTZWxlY3RlZFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgdGhpcy5pbmRleExpc3QucHVzaChpKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5ncmlkLnNlbGVjdFJvd3ModGhpcy5pbmRleExpc3QpO1xyXG4gIH1cclxuXHJcbiAgX3JlY29yZENsaWNrKCRldmVudCkge1xyXG4gICAgdGhpcy5yZWNvcmRDbGljay5lbWl0KCRldmVudCk7XHJcbiAgfVxyXG4gIHJlZnJlc2goKSB7XHJcbiAgICB0aGlzLmdyaWQucmVmcmVzaCgpO1xyXG4gIH1cclxuICBfcm93U2VsZWN0aW5nKGUpIHtcclxuICAgIHRoaXMucm93U2VsZWN0aW5nLmVtaXQoZSk7XHJcbiAgfVxyXG4gIHJlZnJlc2hDb2x1bW5zKCkge1xyXG4gICAgdGhpcy5ncmlkLnJlZnJlc2hDb2x1bW5zKCk7XHJcbiAgfVxyXG4gIHJlZnJlc2hIZWFkZXIoKSB7XHJcbiAgICB0aGlzLmdyaWQucmVmcmVzaEhlYWRlcigpO1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0KGV4Y2VsRXhwb3J0UHJvcGVydGllcz8pIHtcclxuICAgIHRoaXMuZ3JpZC5leGNlbEV4cG9ydChleGNlbEV4cG9ydFByb3BlcnRpZXMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2VsZWN0ZWRSZWNvcmRzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZ3JpZC5nZXRTZWxlY3RlZFJlY29yZHMoKTtcclxuICB9XHJcblxyXG4gIF9yb3dEYXRhQm91bmQoJGV2ZW50KSB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlU3lzdGVtUm93ICYmICRldmVudC5kYXRhICYmICRldmVudC5kYXRhLklzU3lzdGVtKSB7XHJcbiAgICAgICRldmVudC5yb3cuY2xhc3NMaXN0LmFkZCgnZS1kaXNhYmxlZCcpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5yb3dEYXRhQm91bmQuZW1pdCgkZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgY2xlYXJTZWxlY3Rpb24oKSB7XHJcbiAgICB0aGlzLmdyaWQuY2xlYXJTZWxlY3Rpb24oKTtcclxuICB9XHJcblxyXG4gIGV4Y2VsRXhwb3J0KCkge1xyXG4gICAgdGhpcy5ncmlkLmV4Y2VsRXhwb3J0KCk7XHJcbiAgfVxyXG5cclxuICBhZGRJdGVtKCkge1xyXG4gICAgdGhpcy5ncmlkLmFkZFJlY29yZCh7IC4uLnRoaXMuZGVmYXVsdFJlY29yZCwgaXNOZXc6IHRydWUgfSwgMCk7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5ncmlkLnNlbGVjdFJvdygwKTtcclxuICAgICAgdGhpcy5ncmlkLnN0YXJ0RWRpdCgpO1xyXG4gICAgfSwgMzApO1xyXG4gIH1cclxuXHJcbiAgc2F2ZUl0ZW0oKSB7XHJcbiAgICB0aGlzLmdyaWQuZW5kRWRpdCgpO1xyXG4gIH1cclxuXHJcbiAgZWRpdEl0ZW0oaW5kZXgpIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmdyaWQuc2VsZWN0Um93KE51bWJlcihpbmRleCkpO1xyXG4gICAgICB0aGlzLmdyaWQuc3RhcnRFZGl0KCk7XHJcbiAgICB9LCAzMCk7XHJcbiAgfVxyXG5cclxuICBkZWxldGVJdGVtKGluZGV4KSB7XHJcbiAgICB0aGlzLmdyaWQuc2VsZWN0Um93KE51bWJlcihpbmRleCkpO1xyXG4gICAgdmFyIHNlbGVjdGVkUmVjb3JkID0gdGhpcy5ncmlkLmdldFNlbGVjdGVkUmVjb3JkcygpWzBdIGFzIGFueTtcclxuICAgIHRoaXMuZ3JpZC5kZWxldGVSZWNvcmQoc2VsZWN0ZWRSZWNvcmQgYXMgc3RyaW5nKTtcclxuICB9XHJcblxyXG4gIGNhbmNlbEl0ZW0oaW5kZXgpIHtcclxuICAgIHRoaXMuZ3JpZC5jbG9zZUVkaXQoKTtcclxuICAgIHRoaXMuZGVsZXRlSXRlbShpbmRleCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2hvd0xvYWRpbmcoKSB7XHJcbiAgICB0aGlzLmNsYXNzTmFtZSA9ICdncmlkLWxvYWRpbmcnO1xyXG4gICAgdGhpcy5yZWYgJiYgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICB0aGlzLnJlZiAmJiB0aGlzLnJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGlkZUxvYWRpbmcoKSB7XHJcbiAgICB0aGlzLmNsYXNzTmFtZSA9ICcnO1xyXG4gICAgdGhpcy5yZWYgJiYgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICB0aGlzLnJlZiAmJiB0aGlzLnJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxlanMtZ3JpZFxyXG5cdCNncmlkXHJcblx0W2lkXT1cImdyaWRJZFwiXHJcblx0W25nQ2xhc3NdPVwie1xyXG5cdFx0J2hpZGUtQ2hlY2stYm94JzogIWFsd2F5c1Nob3dDaGVja2JveCxcclxuXHRcdCdncmlkLWxvYWRpbmcnOiBjbGFzc05hbWUgPT09ICdncmlkLWxvYWRpbmcnXHJcblx0fVwiXHJcblx0W2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiXHJcblx0W2FsbG93UGFnaW5nXT1cImFsbG93UGFnaW5nICYmIHBhZ2VTZXR0aW5nc1wiXHJcblx0W2FsbG93UmVzaXppbmddPVwidHJ1ZVwiXHJcblx0W3BhZ2VTZXR0aW5nc109XCJwYWdlU2V0dGluZ3NcIlxyXG5cdFtzaG93Q29sdW1uTWVudV09XCJ0cnVlXCJcclxuXHRbYWxsb3dTb3J0aW5nXT1cInRydWVcIlxyXG5cdFthbGxvd0ZpbHRlcmluZ109XCJ0cnVlXCJcclxuXHRbYWxsb3dFeGNlbEV4cG9ydF09XCJ0cnVlXCJcclxuXHRbZmlsdGVyU2V0dGluZ3NdPVwiZmlsdGVyU2V0dGluZ3NcIlxyXG5cdFtyZXNpemVTZXR0aW5nc109XCJyZXNpemVTZXR0aW5nc1wiXHJcblx0W2FsbG93U2VsZWN0aW9uXT1cInRydWVcIlxyXG5cdFtlZGl0U2V0dGluZ3NdPVwiZWRpdFNldHRpbmdzXCJcclxuXHRbY2hpbGRHcmlkXT1cImNoaWxkR3JpZFwiXHJcblx0W2NvbnRleHRNZW51SXRlbXNdPVwiXHJcblx0XHRkYXRhU291cmNlICYmIGRhdGFTb3VyY2UubGVuZ3RoID8gY29udGV4dE1lbnVJdGVtcyA6IG51bGxcclxuXHRcIlxyXG5cdFtzZWxlY3Rpb25TZXR0aW5nc109XCJzZWxlY3Rpb25TZXR0aW5nc1wiXHJcblx0KHJlY29yZENsaWNrKT1cIl9yZWNvcmRDbGljaygkZXZlbnQpXCJcclxuXHQocmVjb3JkRG91YmxlQ2xpY2spPVwiX3JlY29yZERvdWJsZUNsaWNrKCRldmVudClcIlxyXG5cdChhY3Rpb25CZWdpbik9XCJfYWN0aW9uQmVnaW4oJGV2ZW50KVwiXHJcblx0KGFjdGlvbkNvbXBsZXRlKT1cIl9hY3Rpb25IYW5kbGVyKCRldmVudClcIlxyXG5cdChyb3dTZWxlY3RlZCk9XCJfcm93U2VsZWN0ZWQoJGV2ZW50KVwiXHJcblx0KHJvd0Rlc2VsZWN0ZWQpPVwiX3Jvd0Rlc2VsZWN0ZWQoJGV2ZW50KVwiXHJcblx0c3R5bGU9XCJib3JkZXI6IG5vbmVcIlxyXG5cdChjb250ZXh0TWVudUNsaWNrKT1cIl9vbkNvbnRleHRNZW51KCRldmVudClcIlxyXG5cdChjb250ZXh0TWVudU9wZW4pPVwiY29udGV4dE1lbnVPcGVuKCRldmVudClcIlxyXG5cdChxdWVyeUNlbGxJbmZvKT1cImN1c3RvbWlzZUNlbGwoJGV2ZW50KVwiXHJcblx0KGRhdGFCb3VuZCk9XCJfZGF0YUJvdW5kKCRldmVudClcIlxyXG5cdChyb3dEYXRhQm91bmQpPVwiX3Jvd0RhdGFCb3VuZCgkZXZlbnQpXCJcclxuXHQocm93U2VsZWN0aW5nKT1cIl9yb3dTZWxlY3RpbmcoJGV2ZW50KVwiXHJcblx0KGV4Y2VsUXVlcnlDZWxsSW5mbyk9XCJfZXhwb3J0UXVlcnlDZWxsSW5mbygkZXZlbnQpXCJcclxuXHQobG9hZCk9XCJfbG9hZCgpXCJcclxuPlxyXG5cdDxlLWNvbHVtbnM+XHJcblx0XHQ8ZS1jb2x1bW5cclxuXHRcdFx0Km5nSWY9XCJzaG93Q2hlY2tCb3hcIlxyXG5cdFx0XHR0eXBlPVwiY2hlY2tib3hcIlxyXG5cdFx0XHRbd2lkdGhdPVwiY2hlY2tCb3hXaWR0aFwiXHJcblx0XHRcdFtzaG93Q29sdW1uTWVudV09XCJmYWxzZVwiXHJcblx0XHQ+PC9lLWNvbHVtbj5cclxuXHRcdDxlLWNvbHVtblxyXG5cdFx0XHQqbmdGb3I9XCJsZXQgaXRlbSBvZiBmaWVsZHM7IHRyYWNrQnk6IHRyYWNrQnlGblwiXHJcblx0XHRcdFtmaWVsZF09XCJpdGVtLmNvbHVtbk5hbWVcIlxyXG5cdFx0XHRbZmlsdGVyXT1cIml0ZW0uZmlsdGVyID8gaXRlbS5maWx0ZXIgOiB7IHR5cGU6ICdDaGVja0JveCcgfVwiXHJcblx0XHRcdFtjdXN0b21BdHRyaWJ1dGVzXT1cIlxyXG5cdFx0XHRcdGl0ZW0uY29sTmFtZSA9PT0gJ2VudGl0eVVzZXJMaXN0JyB8fFxyXG5cdFx0XHRcdGl0ZW0uY29sTmFtZSA9PT0gJ2t5Y1Byb2dyZXNzJ1xyXG5cdFx0XHRcdFx0PyB7IGNsYXNzOiAnaGlkZUNvbHVtbkZpbHRlckNsYXNzJyB9XHJcblx0XHRcdFx0XHQ6IHt9XHJcblx0XHRcdFwiXHJcblx0XHRcdFtoZWFkZXJUZXh0XT1cIml0ZW0uY29sdW1uRGlzcGxheU5hbWVcIlxyXG5cdFx0XHRbdGV4dEFsaWduXT1cIml0ZW0udGV4dEFsaWduXCJcclxuXHRcdFx0W3Nob3dDb2x1bW5NZW51XT1cIml0ZW0uc2hvd0NvbHVtbk1lbnUgPT09IHVuZGVmaW5lZCA/IHRydWUgOiBmYWxzZVwiXHJcblx0XHRcdFthbGxvd0ZpbHRlcmluZ109XCJpdGVtLmFsbG93RmlsdGVyaW5nID09PSB1bmRlZmluZWQgPyB0cnVlIDogZmFsc2VcIlxyXG5cdFx0XHRbYWxsb3dTb3J0aW5nXT1cIml0ZW0uYWxsb3dTb3J0aW5nID09PSB1bmRlZmluZWQgPyB0cnVlIDogZmFsc2VcIlxyXG5cdFx0XHRbZWRpdFR5cGVdPVwiaXRlbS5lZGl0VHlwZVwiXHJcblx0XHRcdFt2YWxpZGF0aW9uUnVsZXNdPVwiaXRlbS52YWxpZGF0aW9uUnVsZXNcIlxyXG5cdFx0XHRbdHlwZV09XCJpdGVtLmRhdGFUeXBlXCJcclxuXHRcdFx0W3dpZHRoXT1cIml0ZW0ud2lkdGhcIlxyXG5cdFx0XHRbbWluV2lkdGhdPVwiaXRlbS5taW5XaWR0aFwiXHJcblx0XHRcdFtmb3JtYXRdPVwiaXRlbS5mb3JtYXRcIlxyXG5cdFx0XHRbdmlzaWJsZV09XCJpdGVtLnZpc2libGVcIlxyXG5cdFx0XHRbdGVtcGxhdGVdPVwiaXRlbS5zaG93VGVtcGxhdGUgPyBjb2x1bW5UZW1wbGF0ZSA6IHVuZGVmaW5lZFwiXHJcblx0XHRcdFtjbGlwTW9kZV09XCJcclxuXHRcdFx0XHRpdGVtLmNsaXBNb2RlXHJcblx0XHRcdFx0XHQ/IGl0ZW0uY2xpcE1vZGVcclxuXHRcdFx0XHRcdDogY2xpcE1vZGUgfHwgJ0VsbGlwc2lzV2l0aFRvb2x0aXAnXHJcblx0XHRcdFwiXHJcblx0XHRcdFtzb3J0Q29tcGFyZXJdPVwiaXRlbS5kYXRlQ29tcGFyZXJcIlxyXG5cdFx0PlxyXG5cdFx0PC9lLWNvbHVtbj5cclxuXHQ8L2UtY29sdW1ucz5cclxuPC9lanMtZ3JpZD5cclxuIl19
|
|
461
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcmFpc2UtY29tbW9uLWxpYi9zcmMvbGliL2NvbW1vbi1ncmlkL2luZGV4LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JhaXNlLWNvbW1vbi1saWIvc3JjL2xpYi9jb21tb24tZ3JpZC9pbmRleC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUdOLFNBQVMsR0FHVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sUUFBUSxDQUFDOzs7OztBQVMvQixNQUFNLE9BQU8sbUJBQW1CO0lBNEVWO0lBMUViLElBQUksQ0FBZ0I7SUFDbEIsWUFBWSxHQUFHLElBQUksQ0FBQztJQUNwQixNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ2QsWUFBWSxHQUFHLEtBQUssQ0FBQztJQUNyQixVQUFVLEdBQUcsSUFBSSxDQUFDLENBQUMsMkJBQTJCO0lBQ3ZELHFDQUFxQztJQUM1QixlQUFlLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFDekIsbUNBQW1DO0lBQzFCLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDaEIsY0FBYyxHQUFHLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ2xDLGNBQWMsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUNsQyxRQUFRLENBQU07SUFDZCxNQUFNLEdBQW1CLEVBQUUsQ0FBQztJQUM1QixVQUFVLEdBQUcsRUFBRSxDQUFDO0lBQ2hCLFlBQVksQ0FBQztJQUNiLGNBQWMsQ0FBbUI7SUFDakMsWUFBWSxDQUFDO0lBQ2IsV0FBVyxHQUFHLElBQUksQ0FBQztJQUNuQixRQUFRLEdBQUcscUJB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Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0cscUJBQXFCO3NCQUE3QixLQUFLO2dCQW1CRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUtHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFFSSxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIE9uQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBHcmlkQ29tcG9uZW50IH0gZnJvbSBcIkBzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLWdyaWRzXCI7XHJcbmltcG9ydCB7IHRpbWVzIH0gZnJvbSBcImxvZGFzaFwiO1xyXG5pbXBvcnQgeyBCZWZvcmVPcGVuQ2xvc2VFdmVudEFyZ3MgfSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItaW5wdXRzXCI7XHJcbmltcG9ydCB7IElBY3Rpb25NZW51SXRlbSwgSUNvbHVtbkZpZWxkIH0gZnJvbSBcIi4uL2NvbnN0YW50XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJycy1jb21tb24tZ3JpZFwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vaW5kZXguY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vaW5kZXguY29tcG9uZW50LnNjc3NcIl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb21tb25HcmlkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG4gIEBWaWV3Q2hpbGQoXCJncmlkXCIsIHsgc3RhdGljOiBmYWxzZSB9KVxyXG4gIHB1YmxpYyBncmlkOiBHcmlkQ29tcG9uZW50O1xyXG4gIEBJbnB1dCgpIHNob3dDaGVja0JveCA9IHRydWU7XHJcbiAgQElucHV0KCkgbG9hZGVkID0gdHJ1ZTtcclxuICBASW5wdXQoKSBoaWRkZW5Mb2FkZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBhdXRob3JpemVkID0gdHJ1ZTsgLy8gRGF0YXNldOaYr+WQpuaOiOadg++8jOacquaOiOadg+WImeaYvuekuuadg+mZkOmUmeivr+aPkOekulxyXG4gIC8vIG9ubHkgdXNlIGZvciBsb2NhbCBkYXRhIHBhZ2luYXRpb25cclxuICBASW5wdXQoKSBzZWxlY3RlZERpZmZLZXkgPSBcIlwiO1xyXG4gIEBJbnB1dCgpIGdyaWRIZWlnaHQgPSBcIlwiO1xyXG4gIC8vIOi/meeOqeaEj+W/heWhq++8jOS4jeeEtmZpbHRlciBjb2x1bW5DaG9vc2Vy6YO95Lya5oql6ZSZXHJcbiAgQElucHV0KCkgZ3JpZElkID0gXCJncmlkXCI7XHJcbiAgQElucHV0KCkgcmVzaXplU2V0dGluZ3MgPSB7IG1vZGU6IFwiQXV0b1wiIH07XHJcbiAgQElucHV0KCkgZmlsdGVyU2V0dGluZ3MgPSB7IHR5cGU6IFwiTWVudVwiIH07XHJcbiAgQElucHV0KCkgdGVtcGxhdGU6IGFueTtcclxuICBASW5wdXQoKSBmaWVsZHM6IElDb2x1bW5GaWVsZFtdID0gW107XHJcbiAgQElucHV0KCkgZGF0YVNvdXJjZSA9IFtdO1xyXG4gIEBJbnB1dCgpIGVkaXRTZXR0aW5ncztcclxuICBASW5wdXQoKSBjb2x1bW5UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBASW5wdXQoKSBwYWdlU2V0dGluZ3M7XHJcbiAgQElucHV0KCkgYWxsb3dQYWdpbmcgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGNsaXBNb2RlID0gXCJFbGxpcHNpc1dpdGhUb29sdGlwXCI7XHJcbiAgQElucHV0KCkgY2hlY2tCb3hXaWR0aCA9IDMyOyAvLyBjb2wg5pWw6YeP6L+H5bCR55qE5pe25YCZ77yMY2hlY2vlrr3luqbkvJrmi4nkvLjvvIzov5nml7blgJnorr7nva5udWxsXHJcbiAgQElucHV0KCkgY2hpbGRHcmlkO1xyXG4gIEBJbnB1dCgpIGZyb3plbkNvbHVtbnM7IC8vIGNvbCDmlbDph4/ov4flsJHnmoTml7blgJnvvIxjaGVja+WuveW6puS8muaLieS8uO+8jOi/meaXtuWAmeiuvue9rm51bGxcclxuICBASW5wdXQoKSBjb2x1bW5DaG9vc2VyU2V0dGluZ3M7XHJcblxyXG4gIC8qKlxyXG5cdCAqIFNhbXBsZTogW1xyXG5cdFx0XHR7XHJcblx0XHRcdFx0dGV4dDogXCJQcmV2aWV3XCIsXHJcblx0XHRcdFx0dGFyZ2V0OiBcIi5lLWNvbnRlbnRcIixcclxuXHRcdFx0XHRpZDogXCJwcmV2aWV3LWljb25cIixcclxuXHRcdFx0XHRpY29uQ3NzOiBcInByZXZpZXdcIixcclxuXHRcdFx0fSxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHRleHQ6IFwiRG93bmxvYWRcIixcclxuXHRcdFx0XHR0YXJnZXQ6IFwiLmUtY29udGVudFwiLFxyXG5cdFx0XHRcdGlkOiBcImRvd25sb2FkLWljb25cIixcclxuXHRcdFx0XHRpY29uQ3NzOiBcImRvd25sb2FkXCIsXHJcblx0XHRcdH1cclxuXHRcdF1cclxuXHRcdOeUqOS6juWumuS5iXJvd+S4rSDngrnlh7vkuovku7ZcclxuXHQgKi9cclxuICBASW5wdXQoKSBjb250ZXh0TWVudUl0ZW1zOiBJQWN0aW9uTWVudUl0ZW1bXSA9IFtdO1xyXG4gIC8vIEBJbnB1dCgpIHNlbGVjdGlvblNldHRpbmdzID0geyBjaGVja2JveE9ubHk6IHRydWUsIHR5cGU6IFwiTXVsdGlwbGVcIiB9O1xyXG4gIEBJbnB1dCgpIHNlbGVjdGlvblNldHRpbmdzID0ge1xyXG4gICAgdHlwZTogXCJNdWx0aXBsZVwiLFxyXG4gICAgLy8gcGVyc2lzdFNlbGVjdGlvbjogdHJ1ZSxcclxuICAgIGNoZWNrYm94T25seTogdHJ1ZSxcclxuICB9O1xyXG4gIEBJbnB1dCgpIGFsd2F5c1Nob3dDaGVja2JveDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGRlZmF1bHRSZWNvcmQ6IGFueTtcclxuICBASW5wdXQoKSBkaXNhYmxlU3lzdGVtUm93OiBib29sZWFuID0gZmFsc2U7IC8vIOemgeeUqElzU3l0ZW0gPSB0cnVl55qE5pW06KGMXHJcblxyXG4gIEBPdXRwdXQoKSByZWNvcmREb3VibGVDbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgYWN0aW9uQ29tcGxldGUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHJvd1NlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSByb3dEZXNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBvbkNvbnRleHRNZW51ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBhY3Rpb25IYW5kbGVyID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBxdWVyeUNlbGxJbmZvID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSByZWNvcmRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgYWN0aW9uQmVnaW4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHJvd0RhdGFCb3VuZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgZGF0YUJvdW5kID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBleHBvcnRRdWVyeUNlbGxJbmZvID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSByb3dTZWxlY3RpbmcgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIHNlbGVjdElkID0gW107XHJcbiAgc3RhcnRQYWdpbmcgPSBmYWxzZTtcclxuICBpbmRleExpc3QgPSBbXTtcclxuICBjbGFzc05hbWUgPSBcImdyaWQtbG9hZGluZ1wiO1xyXG5cclxuICBwdWJsaWMgdHJhbnNsYXRpb247XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgdGhpcy50cmFuc2xhdGlvbiA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJ0cmFuc2xhdGlvblwiKSk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmhpZGRlbkxvYWRlZCkgdGhpcy5jbGFzc05hbWUgPSBcIlwiO1xyXG4gICAgdGhpcy5ncmlkSWQgPVxyXG4gICAgICB0aGlzLmdyaWRJZCArIERhdGUubm93KCkgKyBcIl9cIiArIE1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsIDUpO1xyXG4gICAgdGhpcy5yZWYgJiYgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgfVxyXG5cclxuICB0cmFja0J5Rm4oaW5kZXgsIGl0ZW0pIHtcclxuICAgIHJldHVybiBpbmRleDsgLy8gb3IgYSB1bmlxdWUgaWRlbnRpZmllciBpbiB5b3VyIG9iamVjdFxyXG4gIH1cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBpZiAoY2hhbmdlcy5kYXRhU291cmNlICYmIGNoYW5nZXMuZGF0YVNvdXJjZS5jdXJyZW50VmFsdWUpIHtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIHRoaXMuYWxsb3dQYWdpbmcgJiZcclxuICAgICAgICBjaGFuZ2VzLmRhdGFTb3VyY2UuY3VycmVudFZhbHVlLmxlbmd0aCAmJlxyXG4gICAgICAgICF0aGlzLnBhZ2VTZXR0aW5nc1xyXG4gICAgICApIHtcclxuICAgICAgICB0aGlzLnBhZ2VTZXR0aW5ncyA9XHJcbiAgICAgICAgICBjaGFuZ2VzLmRhdGFTb3VyY2UuY3VycmVudFZhbHVlLmxlbmd0aCA+IDlcclxuICAgICAgICAgICAgPyB7XHJcbiAgICAgICAgICAgICAgICBwYWdlU2l6ZXM6IFtcIkFsbFwiLCBcIjI1XCIsIFwiNTBcIiwgXCIxMDBcIl0sXHJcbiAgICAgICAgICAgICAgICBwYWdlU2l6ZTogNTAsXHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA6IG51bGw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIF9sb2FkKCkge1xyXG4gICAgaWYgKCF0aGlzLmF1dGhvcml6ZWQpIHtcclxuICAgICAgKHRoaXMuZ3JpZC5sb2NhbGVPYmogYXMgYW55KS5sb2NhbGVTdHJpbmdzLkVtcHR5UmVjb3JkID1cclxuICAgICAgICB0aGlzLnRyYW5zbGF0aW9uLllPVV9ET19OT1RfSEFWRV9USEVfREFUQVNFVF9QRVJNSVNTSU9OIHx8XHJcbiAgICAgICAgXCJZb3UgZG9uJ3QgaGF2ZSB0aGUgZGF0YXNldCBwZXJtaXNzaW9uIHRvIHZpZXcgdGhlIHJlY29yZC5cIjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIF9kYXRhQm91bmQoYXJnczogYW55KSB7XHJcbiAgICAvLyDmlbTkuKrnu4Tku7bliqDovb3lrozmiJDml7bnmoTlm57osIPlh73mlbBcclxuICAgIHZhciBwYWdlckNvbnRhaW5lciA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXCIuZS1wYWdlcmNvbnRhaW5lclwiKTtcclxuICAgIGlmIChwYWdlckNvbnRhaW5lcikge1xyXG4gICAgICB2YXIgbGlua0VsZW1lbnRzID0gcGFnZXJDb250YWluZXIucXVlcnlTZWxlY3RvckFsbChcIi5lLWxpbmtcIik7XHJcbiAgICAgIGxpbmtFbGVtZW50cy5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50KSB7XHJcbiAgICAgICAgZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoXCJocmVmXCIpOyAvLyBTTVAyLTEwMzEwIOWIoOmZpOWIhumhteWZqOeahGhyZWblsZ7mgKdcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZERpZmZLZXkpIHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jaG9vc2VSZWNvcmRzKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgdGhpcy5kYXRhQm91bmQuZW1pdChhcmdzKTtcclxuICB9XHJcblxyXG4gIF9leHBvcnRRdWVyeUNlbGxJbmZvKGFyZ3MpIHtcclxuICAgIHRoaXMuZXhwb3J0UXVlcnlDZWxsSW5mby5lbWl0KGFyZ3MpO1xyXG4gIH1cclxuXHJcbiAgX3JlY29yZERvdWJsZUNsaWNrKCRldmVudCkge1xyXG4gICAgdGhpcy5yZWNvcmREb3VibGVDbGljay5lbWl0KCRldmVudCk7XHJcbiAgfVxyXG4gIC8qKlxyXG5cdCAqIFtzZWxlY3Rpb25TZXR0aW5nc109XCJ7IGNoZWNrYm94T25seTogdHJ1ZSB9XCJcclxuXHQgICBbc2hvd0NoZWNrQm94XT1cInRydWVcIlxyXG5cdCAgIOaOp+S7tuS9v+eUqOaXtu+8jOW/hemhu+mFjee9ruS4iumdouS4pOS4quWxnuaAp++8jOWQpuWIme+8jOWFqOmAieS8muWkseaViFxyXG5cdCAqL1xyXG4gIF9yb3dTZWxlY3RlZCgkZXZlbnQpIHtcclxuICAgIGlmICh0aGlzLnNlbGVjdGVkRGlmZktleSkge1xyXG4gICAgICBpZiAoJGV2ZW50LmlzSGVhZGVyQ2hlY2tib3hDbGlja2VkICYmIEFycmF5LmlzQXJyYXkoJGV2ZW50LmRhdGEpKSB7XHJcbiAgICAgICAgaWYgKCRldmVudC5kYXRhICYmICRldmVudC5kYXRhLmxlbmd0aCkge1xyXG4gICAgICAgICAgJGV2ZW50LmRhdGEuZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICBpdGVtLmlzU2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdElkLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIHRoaXMuZGF0YVNvdXJjZS5mb3JFYWNoKChkYXRhKSA9PiB7XHJcbiAgICAgICAgICAgICRldmVudC5kYXRhLmZvckVhY2goKF9kYXRhKSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKF9kYXRhW3RoaXMuc2VsZWN0ZWREaWZmS2V5XSA9PT0gZGF0YVt0aGlzLnNlbGVjdGVkRGlmZktleV0pIHtcclxuICAgICAgICAgICAgICAgIGRhdGEuaXNTZWxlY3RlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAkZXZlbnQuZGF0YS5pc1NlbGVjdGVkID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNlbGVjdElkLnB1c2goJGV2ZW50LmRhdGEpO1xyXG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZS5mb3JFYWNoKChkYXRhKSA9PiB7XHJcbiAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIGRhdGFbdGhpcy5zZWxlY3RlZERpZmZLZXldID09PSAkZXZlbnQuZGF0YVt0aGlzLnNlbGVjdGVkRGlmZktleV1cclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICBkYXRhLmlzU2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMucmVmICYmIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5yb3dTZWxlY3RlZC5lbWl0KCRldmVudCk7XHJcbiAgfVxyXG5cclxuICBfcm93RGVzZWxlY3RlZCgkZXZlbnQpIHtcclxuICAgIGlmICh0aGlzLnNlbGVjdGVkRGlmZktleSkge1xyXG4gICAgICBpZiAodGhpcy5zdGFydFBhZ2luZykge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBpZiAoJGV2ZW50LmlzSGVhZGVyQ2hlY2tib3hDbGlja2VkICYmIEFycmF5LmlzQXJyYXkoJGV2ZW50LmRhdGEpKSB7XHJcbiAgICAgICAgJGV2ZW50LmRhdGEuZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgaXRlbS5pc1NlbGVjdGVkID0gZmFsc2U7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RJZCA9IFtdO1xyXG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZS5mb3JFYWNoKChkYXRhKSA9PiB7XHJcbiAgICAgICAgICAkZXZlbnQuZGF0YS5mb3JFYWNoKChfZGF0YSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoX2RhdGFbdGhpcy5zZWxlY3RlZERpZmZLZXldID09PSBkYXRhW3RoaXMuc2VsZWN0ZWREaWZmS2V5XSkge1xyXG4gICAgICAgICAgICAgIGRhdGEuaXNTZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAkZXZlbnQuZGF0YS5pc1NlbGVjdGVkID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RJZCA9IHRoaXMuc2VsZWN0SWQuZmlsdGVyKFxyXG4gICAgICAgICAgKGl0ZW0pID0+XHJcbiAgICAgICAgICAgIGl0ZW1bdGhpcy5zZWxlY3RlZERpZmZLZXldICE9PSAkZXZlbnQuZGF0YVt0aGlzLnNlbGVjdGVkRGlmZktleV1cclxuICAgICAgICApO1xyXG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZS5mb3JFYWNoKChkYXRhKSA9PiB7XHJcbiAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIGRhdGFbdGhpcy5zZWxlY3RlZERpZmZLZXldID09PSAkZXZlbnQuZGF0YVt0aGlzLnNlbGVjdGVkRGlmZktleV1cclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICBkYXRhLmlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnJlZiAmJiB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH1cclxuICAgIHRoaXMucm93RGVzZWxlY3RlZC5lbWl0KCRldmVudCk7XHJcbiAgfVxyXG5cclxuICBfb25Db250ZXh0TWVudShhcmdzKSB7XHJcbiAgICB0aGlzLm9uQ29udGV4dE1lbnUuZW1pdChhcmdzKTtcclxuICB9XHJcblxyXG4gIF9hY3Rpb25CZWdpbihhcmdzKSB7XHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMuc2VsZWN0ZWREaWZmS2V5ICYmXHJcbiAgICAgIChhcmdzLnJlcXVlc3RUeXBlID09PSBcInBhZ2luZ1wiIHx8XHJcbiAgICAgICAgYXJncy5yZXF1ZXN0VHlwZSA9PT0gXCJzZWFyY2hpbmdcIiB8fFxyXG4gICAgICAgIGFyZ3MucmVxdWVzdFR5cGUgPT09IFwiZmlsdGVyaW5nXCIgfHxcclxuICAgICAgICBhcmdzLnJlcXVlc3RUeXBlID09PSBcInNvcnRpbmdcIilcclxuICAgICkge1xyXG4gICAgICB0aGlzLnN0YXJ0UGFnaW5nID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIGlmIChcclxuICAgICAgYXJncy5yZXF1ZXN0VHlwZSA9PSBcImZpbHRlcmNob2ljZXJlcXVlc3RcIiB8fFxyXG4gICAgICBhcmdzLnJlcXVlc3RUeXBlID09PSBcImZpbHRlcnNlYXJjaGJlZ2luXCJcclxuICAgICkge1xyXG4gICAgICBhcmdzLmZpbHRlckNob2ljZUNvdW50ID0gMTUwMDA7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHRoaXMuYWN0aW9uQmVnaW4uZW1pdChhcmdzKTtcclxuICB9XHJcblxyXG4gIHNlYXJjaChrZXl3b3Jkcykge1xyXG4gICAgdGhpcy5ncmlkLnNlYXJjaChrZXl3b3Jkcyk7XHJcbiAgfVxyXG4gIHNlbGVjdFJvd3MoaW5kZXhMaXN0OiBudW1iZXJbXSkge1xyXG4gICAgdGhpcy5ncmlkLnNlbGVjdFJvd3MoaW5kZXhMaXN0KTtcclxuICB9XHJcbiAgc2VsZWN0Um93KGluZGV4KSB7XHJcbiAgICB0aGlzLmdyaWQuc2VsZWN0Um93KGluZGV4KTtcclxuICB9XHJcbiAgZ2V0Q3VycmVudFZpZXdSZWNvcmRzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZ3JpZC5nZXRDdXJyZW50Vmlld1JlY29yZHMoKTtcclxuICB9XHJcblxyXG4gIGN1c3RvbWlzZUNlbGwoJGV2ZW50KSB7XHJcbiAgICB0aGlzLnF1ZXJ5Q2VsbEluZm8uZW1pdCgkZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgY29udGV4dE1lbnVPcGVuKGFyZ3M/OiBCZWZvcmVPcGVuQ2xvc2VFdmVudEFyZ3MpOiB2b2lkIHtcclxuICAgIGNvbnN0IGRhdGEgPSAoYXJncyBhcyBCZWZvcmVPcGVuQ2xvc2VFdmVudEFyZ3MgfCBhbnkpLnJvd0luZm8ucm93RGF0YTtcclxuICAgIGlmICghZGF0YSkge1xyXG4gICAgICBhcmdzLmNhbmNlbCA9IHRydWU7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGxldCBlbmFibGVJdGVtcyA9IFtdO1xyXG4gICAgbGV0IGhpZGVJdGVtcyA9IFtdO1xyXG4gICAgdGhpcy5ncmlkLmNvbnRleHRNZW51TW9kdWxlLmNvbnRleHRNZW51LnJlZnJlc2goKTsgLy8g5q+P5qyh54K55Ye75oyJ6ZKu5by556qX5YmN6ZyA5YaN5qyh5Yid5aeL5YyW54q25oCBIOWQpuWImeS4jeabtOaWsO+8m1xyXG4gICAgdGhpcy5jb250ZXh0TWVudUl0ZW1zLmZvckVhY2goKGl0ZW06IElBY3Rpb25NZW51SXRlbSkgPT4ge1xyXG4gICAgICAvLyDnlKjkuo7lpITnkIbpg6jliIbmjInpkq5kaXNhYmxlZOeahOaDheWGtVxyXG4gICAgICBpZiAoXHJcbiAgICAgICAgaXRlbS5kaXNhYmxlZCB8fFxyXG4gICAgICAgIChkYXRhLmRpc2FibGVJdGVtICYmIGRhdGEuZGlzYWJsZUl0ZW0uaW5jbHVkZXMoaXRlbS5pY29uQ3NzKSlcclxuICAgICAgKSB7XHJcbiAgICAgICAgZW5hYmxlSXRlbXMucHVzaChpdGVtLnRleHQpO1xyXG4gICAgICAgIC8vIHRoaXMuZ3JpZC5jb250ZXh0TWVudU1vZHVsZS5jb250ZXh0TWVudS5lbmFibGVJdGVtcyhcclxuICAgICAgICAvLyBcdFtpdGVtLnRleHRdLFxyXG4gICAgICAgIC8vIFx0ZmFsc2VcclxuICAgICAgICAvLyApO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIOeUqOS6juWkhOeQhumDqOWIhuaMiemSrumcgOimgWhpZGXnmoTmg4XlhrVcclxuICAgICAgaWYgKFxyXG4gICAgICAgIGl0ZW0uaXNIaWRlIHx8XHJcbiAgICAgICAgKGRhdGEuaGlkZUl0ZW0gJiYgZGF0YS5oaWRlSXRlbS5pbmNsdWRlcyhpdGVtLmljb25Dc3MpKVxyXG4gICAgICApIHtcclxuICAgICAgICBoaWRlSXRlbXMucHVzaChpdGVtLnRleHQpO1xyXG4gICAgICAgIC8vIHRoaXMuZ3JpZC5jb250ZXh0TWVudU1vZHVsZS5jb250ZXh0TWVudS5oaWRlSXRlbXMoXHJcbiAgICAgICAgLy8gXHRbaXRlbS50ZXh0XSxcclxuICAgICAgICAvLyBcdGZhbHNlXHJcbiAgICAgICAgLy8gKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmdyaWQuY29udGV4dE1lbnVNb2R1bGUuY29udGV4dE1lbnUuZW5hYmxlSXRlbXMoZW5hYmxlSXRlbXMsIGZhbHNlKTtcclxuICAgIHRoaXMuZ3JpZC5jb250ZXh0TWVudU1vZHVsZS5jb250ZXh0TWVudS5oaWRlSXRlbXMoaGlkZUl0ZW1zLCBmYWxzZSk7XHJcbiAgfVxyXG5cclxuICBfYWN0aW9uSGFuZGxlcigkZXZlbnQpIHtcclxuICAgIGlmIChcclxuICAgICAgdGhpcy5zZWxlY3RlZERpZmZLZXkgJiZcclxuICAgICAgKCRldmVudC5yZXF1ZXN0VHlwZSA9PT0gXCJwYWdpbmdcIiB8fFxyXG4gICAgICAgICRldmVudC5yZXF1ZXN0VHlwZSA9PT0gXCJzZWFyY2hpbmdcIiB8fFxyXG4gICAgICAgICRldmVudC5yZXF1ZXN0VHlwZSA9PT0gXCJmaWx0ZXJpbmdcIiB8fFxyXG4gICAgICAgICRldmVudC5yZXF1ZXN0VHlwZSA9PT0gXCJzb3J0aW5nXCIpXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5pbmRleExpc3QgPSBbXTtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jaG9vc2VSZWNvcmRzKCk7XHJcbiAgICAgICAgdGhpcy5zdGFydFBhZ2luZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMucmVmICYmIHRoaXMucmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB0aGlzLnJlZiAmJiB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmFjdGlvbkhhbmRsZXIuZW1pdCgkZXZlbnQpO1xyXG4gICAgdGhpcy5hY3Rpb25Db21wbGV0ZS5lbWl0KCRldmVudCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNob29zZVJlY29yZHMoKSB7XHJcbiAgICB0aGlzLmluZGV4TGlzdCA9IFtdO1xyXG4gICAgdGhpcy5kYXRhU291cmNlLmZvckVhY2goKGRhdGEpID0+IHtcclxuICAgICAgdGhpcy5ncmlkLmdldEN1cnJlbnRWaWV3UmVjb3JkcygpLmZvckVhY2goKHJvdzogYW55LCBpKSA9PiB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgcm93ICYmXHJcbiAgICAgICAgICBkYXRhW3RoaXMuc2VsZWN0ZWREaWZmS2V5XSA9PT0gcm93W3RoaXMuc2VsZWN0ZWREaWZmS2V5XSAmJlxyXG4gICAgICAgICAgZGF0YS5pc1NlbGVjdGVkXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICB0aGlzLmluZGV4TGlzdC5wdXNoKGkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmdyaWQuc2VsZWN0Um93cyh0aGlzLmluZGV4TGlzdCk7XHJcbiAgfVxyXG5cclxuICBfcmVjb3JkQ2xpY2soJGV2ZW50KSB7XHJcbiAgICB0aGlzLnJlY29yZENsaWNrLmVtaXQoJGV2ZW50KTtcclxuICB9XHJcbiAgcmVmcmVzaCgpIHtcclxuICAgIHRoaXMuZ3JpZC5yZWZyZXNoKCk7XHJcbiAgfVxyXG4gIF9yb3dTZWxlY3RpbmcoZSkge1xyXG4gICAgdGhpcy5yb3dTZWxlY3RpbmcuZW1pdChlKTtcclxuICB9XHJcbiAgcmVmcmVzaENvbHVtbnMoKSB7XHJcbiAgICB0aGlzLmdyaWQucmVmcmVzaENvbHVtbnMoKTtcclxuICB9XHJcbiAgcmVmcmVzaEhlYWRlcigpIHtcclxuICAgIHRoaXMuZ3JpZC5yZWZyZXNoSGVhZGVyKCk7XHJcbiAgfVxyXG5cclxuICBleHBvcnQoZXhjZWxFeHBvcnRQcm9wZXJ0aWVzPykge1xyXG4gICAgdGhpcy5ncmlkLmV4Y2VsRXhwb3J0KGV4Y2VsRXhwb3J0UHJvcGVydGllcyk7XHJcbiAgfVxyXG5cclxuICBnZXRTZWxlY3RlZFJlY29yZHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5ncmlkLmdldFNlbGVjdGVkUmVjb3JkcygpO1xyXG4gIH1cclxuXHJcbiAgX3Jvd0RhdGFCb3VuZCgkZXZlbnQpIHtcclxuICAgIGlmICh0aGlzLmRpc2FibGVTeXN0ZW1Sb3cgJiYgJGV2ZW50LmRhdGEgJiYgJGV2ZW50LmRhdGEuSXNTeXN0ZW0pIHtcclxuICAgICAgJGV2ZW50LnJvdy5jbGFzc0xpc3QuYWRkKFwiZS1kaXNhYmxlZFwiKTtcclxuICAgIH1cclxuICAgIHRoaXMucm93RGF0YUJvdW5kLmVtaXQoJGV2ZW50KTtcclxuICB9XHJcblxyXG4gIGNsZWFyU2VsZWN0aW9uKCkge1xyXG4gICAgdGhpcy5ncmlkLmNsZWFyU2VsZWN0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBleGNlbEV4cG9ydCgpIHtcclxuICAgIHRoaXMuZ3JpZC5leGNlbEV4cG9ydCgpO1xyXG4gIH1cclxuXHJcbiAgYWRkSXRlbSgpIHtcclxuICAgIHRoaXMuZ3JpZC5hZGRSZWNvcmQoeyAuLi50aGlzLmRlZmF1bHRSZWNvcmQsIGlzTmV3OiB0cnVlIH0sIDApO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuZ3JpZC5zZWxlY3RSb3coMCk7XHJcbiAgICAgIHRoaXMuZ3JpZC5zdGFydEVkaXQoKTtcclxuICAgIH0sIDMwKTtcclxuICB9XHJcblxyXG4gIHNhdmVJdGVtKCkge1xyXG4gICAgdGhpcy5ncmlkLmVuZEVkaXQoKTtcclxuICB9XHJcblxyXG4gIGVkaXRJdGVtKGluZGV4KSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5ncmlkLnNlbGVjdFJvdyhOdW1iZXIoaW5kZXgpKTtcclxuICAgICAgdGhpcy5ncmlkLnN0YXJ0RWRpdCgpO1xyXG4gICAgfSwgMzApO1xyXG4gIH1cclxuXHJcbiAgZGVsZXRlSXRlbShpbmRleCkge1xyXG4gICAgdGhpcy5ncmlkLnNlbGVjdFJvdyhOdW1iZXIoaW5kZXgpKTtcclxuICAgIHZhciBzZWxlY3RlZFJlY29yZCA9IHRoaXMuZ3JpZC5nZXRTZWxlY3RlZFJlY29yZHMoKVswXSBhcyBhbnk7XHJcbiAgICB0aGlzLmdyaWQuZGVsZXRlUmVjb3JkKHNlbGVjdGVkUmVjb3JkIGFzIHN0cmluZyk7XHJcbiAgfVxyXG5cclxuICBjYW5jZWxJdGVtKGluZGV4KSB7XHJcbiAgICB0aGlzLmdyaWQuY2xvc2VFZGl0KCk7XHJcbiAgICB0aGlzLmRlbGV0ZUl0ZW0oaW5kZXgpO1xyXG4gIH1cclxuICBwdWJsaWMgaW5pdExpc3QgPSAobnVtID0gMjUsIGtleSA9IFwiSWRcIikgPT4ge1xyXG4gICAgY29uc3QgbGlzdCA9IFtdO1xyXG4gICAgdGltZXMobnVtLCAoaSkgPT4ge1xyXG4gICAgICBsaXN0LnB1c2goe1xyXG4gICAgICAgIFtrZXldOiBpLFxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGxpc3Q7XHJcbiAgfTtcclxuICBwdWJsaWMgc2hvd0xvYWRpbmcoKSB7XHJcbiAgICB0aGlzLmNsYXNzTmFtZSA9IFwiZ3JpZC1sb2FkaW5nXCI7XHJcbiAgICB0aGlzLnJlZiAmJiB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIHRoaXMucmVmICYmIHRoaXMucmVmLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoaWRlTG9hZGluZygpIHtcclxuICAgIHRoaXMuY2xhc3NOYW1lID0gXCJcIjtcclxuICAgIHRoaXMucmVmICYmIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgdGhpcy5yZWYgJiYgdGhpcy5yZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxufVxyXG4iLCI8ZWpzLWdyaWRcclxuXHQjZ3JpZFxyXG5cdFtpZF09XCJncmlkSWRcIlxyXG5cdFtuZ0NsYXNzXT1cIntcclxuXHRcdCdoaWRlLUNoZWNrLWJveCc6ICFhbHdheXNTaG93Q2hlY2tib3gsXHJcblx0XHQnZ3JpZC1sb2FkaW5nJzogY2xhc3NOYW1lID09PSAnZ3JpZC1sb2FkaW5nJ1xyXG5cdH1cIlxyXG5cdFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIlxyXG5cdFthbGxvd1BhZ2luZ109XCJhbGxvd1BhZ2luZyAmJiBwYWdlU2V0dGluZ3NcIlxyXG5cdFthbGxvd1Jlc2l6aW5nXT1cInRydWVcIlxyXG5cdFtwYWdlU2V0dGluZ3NdPVwicGFnZVNldHRpbmdzXCJcclxuXHRbc2hvd0NvbHVtbk1lbnVdPVwidHJ1ZVwiXHJcblx0W2FsbG93U29ydGluZ109XCJ0cnVlXCJcclxuXHRbYWxsb3dGaWx0ZXJpbmddPVwidHJ1ZVwiXHJcblx0W2FsbG93RXhjZWxFeHBvcnRdPVwidHJ1ZVwiXHJcblx0W2ZpbHRlclNldHRpbmdzXT1cImZpbHRlclNldHRpbmdzXCJcclxuXHRbcmVzaXplU2V0dGluZ3NdPVwicmVzaXplU2V0dGluZ3NcIlxyXG5cdFthbGxvd1NlbGVjdGlvbl09XCJ0cnVlXCJcclxuXHRbZWRpdFNldHRpbmdzXT1cImVkaXRTZXR0aW5nc1wiXHJcblx0W2NoaWxkR3JpZF09XCJjaGlsZEdyaWRcIlxyXG5cdFtjb250ZXh0TWVudUl0ZW1zXT1cIlxyXG5cdFx0ZGF0YVNvdXJjZSAmJiBkYXRhU291cmNlLmxlbmd0aCA/IGNvbnRleHRNZW51SXRlbXMgOiBudWxsXHJcblx0XCJcclxuXHRbc2VsZWN0aW9uU2V0dGluZ3NdPVwic2VsZWN0aW9uU2V0dGluZ3NcIlxyXG5cdChyZWNvcmRDbGljayk9XCJfcmVjb3JkQ2xpY2soJGV2ZW50KVwiXHJcblx0KHJlY29yZERvdWJsZUNsaWNrKT1cIl9yZWNvcmREb3VibGVDbGljaygkZXZlbnQpXCJcclxuXHQoYWN0aW9uQmVnaW4pPVwiX2FjdGlvbkJlZ2luKCRldmVudClcIlxyXG5cdChhY3Rpb25Db21wbGV0ZSk9XCJfYWN0aW9uSGFuZGxlcigkZXZlbnQpXCJcclxuXHQocm93U2VsZWN0ZWQpPVwiX3Jvd1NlbGVjdGVkKCRldmVudClcIlxyXG5cdChyb3dEZXNlbGVjdGVkKT1cIl9yb3dEZXNlbGVjdGVkKCRldmVudClcIlxyXG5cdHN0eWxlPVwiYm9yZGVyOiBub25lXCJcclxuXHQoY29udGV4dE1lbnVDbGljayk9XCJfb25Db250ZXh0TWVudSgkZXZlbnQpXCJcclxuXHQoY29udGV4dE1lbnVPcGVuKT1cImNvbnRleHRNZW51T3BlbigkZXZlbnQpXCJcclxuXHQocXVlcnlDZWxsSW5mbyk9XCJjdXN0b21pc2VDZWxsKCRldmVudClcIlxyXG5cdChkYXRhQm91bmQpPVwiX2RhdGFCb3VuZCgkZXZlbnQpXCJcclxuXHQocm93RGF0YUJvdW5kKT1cIl9yb3dEYXRhQm91bmQoJGV2ZW50KVwiXHJcblx0KHJvd1NlbGVjdGluZyk9XCJfcm93U2VsZWN0aW5nKCRldmVudClcIlxyXG5cdChleGNlbFF1ZXJ5Q2VsbEluZm8pPVwiX2V4cG9ydFF1ZXJ5Q2VsbEluZm8oJGV2ZW50KVwiXHJcblx0KGxvYWQpPVwiX2xvYWQoKVwiXHJcblx0W2Zyb3plbkNvbHVtbnNdPVwiZnJvemVuQ29sdW1uc1wiXHJcblx0W2NvbHVtbkNob29zZXJTZXR0aW5nc109XCJjb2x1bW5DaG9vc2VyU2V0dGluZ3NcIlxyXG5cclxuPlxyXG5cdDxlLWNvbHVtbnM+XHJcblx0XHQ8ZS1jb2x1bW5cclxuXHRcdFx0Km5nSWY9XCJzaG93Q2hlY2tCb3hcIlxyXG5cdFx0XHR0eXBlPVwiY2hlY2tib3hcIlxyXG5cdFx0XHRbd2lkdGhdPVwiY2hlY2tCb3hXaWR0aFwiXHJcblx0XHRcdFtzaG93Q29sdW1uTWVudV09XCJmYWxzZVwiXHJcblx0XHRcdFthbGxvd1Jlc2l6aW5nXT1cImZhbHNlXCJcclxuXHRcdD48L2UtY29sdW1uPlxyXG5cdFx0PGUtY29sdW1uXHJcblx0XHRcdCpuZ0Zvcj1cImxldCBpdGVtIG9mIGZpZWxkczsgdHJhY2tCeTogdHJhY2tCeUZuOyBsZXQgbGFzdCA9IGxhc3RcIlxyXG5cdFx0XHRbZmllbGRdPVwiaXRlbS5jb2x1bW5OYW1lXCJcclxuXHRcdFx0W2ZpbHRlcl09XCJpdGVtLmZpbHRlciA/IGl0ZW0uZmlsdGVyIDogeyB0eXBlOiAnQ2hlY2tCb3gnIH1cIlxyXG5cdFx0XHRbY3VzdG9tQXR0cmlidXRlc109XCJcclxuXHRcdFx0XHRpdGVtLmNvbE5hbWUgPT09ICdlbnRpdHlVc2VyTGlzdCcgfHxcclxuXHRcdFx0XHRpdGVtLmNvbE5hbWUgPT09ICdreWNQcm9ncmVzcydcclxuXHRcdFx0XHRcdD8geyBjbGFzczogJ2hpZGVDb2x1bW5GaWx0ZXJDbGFzcycgfVxyXG5cdFx0XHRcdFx0OiB7fVxyXG5cdFx0XHRcIlxyXG5cdFx0XHRbaGVhZGVyVGV4dF09XCJpdGVtLmNvbHVtbkRpc3BsYXlOYW1lXCJcclxuXHRcdFx0W3RleHRBbGlnbl09XCJpdGVtLnRleHRBbGlnblwiXHJcblx0XHRcdFtzaG93Q29sdW1uTWVudV09XCJpdGVtLnNob3dDb2x1bW5NZW51ID09PSB1bmRlZmluZWQgPyB0cnVlIDogZmFsc2VcIlxyXG5cdFx0XHRbYWxsb3dGaWx0ZXJpbmddPVwiaXRlbS5hbGxvd0ZpbHRlcmluZyA9PT0gdW5kZWZpbmVkID8gdHJ1ZSA6IGZhbHNlXCJcclxuXHRcdFx0W2FsbG93U29ydGluZ109XCJpdGVtLmFsbG93U29ydGluZyA9PT0gdW5kZWZpbmVkID8gdHJ1ZSA6IGZhbHNlXCJcclxuXHRcdFx0W2VkaXRUeXBlXT1cIml0ZW0uZWRpdFR5cGVcIlxyXG5cdFx0XHRbdmFsaWRhdGlvblJ1bGVzXT1cIml0ZW0udmFsaWRhdGlvblJ1bGVzXCJcclxuXHRcdFx0W3R5cGVdPVwiaXRlbS5kYXRhVHlwZSB8fCAnc3RyaW5nJ1wiXHJcblx0XHRcdFt3aWR0aF09XCJpdGVtLndpZHRoXCJcclxuXHRcdFx0W21pbldpZHRoXT1cIml0ZW0ubWluV2lkdGhcIlxyXG5cdFx0XHRbZm9ybWF0XT1cIml0ZW0uZm9ybWF0XCJcclxuXHRcdFx0W3Zpc2libGVdPVwiaXRlbS52aXNpYmxlXCJcclxuXHRcdFx0W3RlbXBsYXRlXT1cIml0ZW0uc2hvd1RlbXBsYXRlID8gY29sdW1uVGVtcGxhdGUgOiB1bmRlZmluZWRcIlxyXG5cdFx0XHRbY2xpcE1vZGVdPVwiXHJcblx0XHRcdFx0aXRlbS5jbGlwTW9kZVxyXG5cdFx0XHRcdFx0PyBpdGVtLmNsaXBNb2RlXHJcblx0XHRcdFx0XHQ6IGNsaXBNb2RlIHx8ICdFbGxpcHNpc1dpdGhUb29sdGlwJ1xyXG5cdFx0XHRcIlxyXG5cdFx0XHRbc29ydENvbXBhcmVyXT1cIml0ZW0uZGF0ZUNvbXBhcmVyXCJcclxuXHRcdFx0W2FsbG93UmVzaXppbmddPVwiIWxhc3RcIlxyXG5cdFx0PlxyXG5cdFx0PC9lLWNvbHVtbj5cclxuXHQ8L2UtY29sdW1ucz5cclxuPC9lanMtZ3JpZD5cclxuIl19
|
|
@@ -17,7 +17,7 @@ export class CommonDeleteComponent {
|
|
|
17
17
|
this.dialogRef = dialogRef;
|
|
18
18
|
}
|
|
19
19
|
ngOnInit() {
|
|
20
|
-
this.translation = JSON.parse(localStorage.getItem("translation"));
|
|
20
|
+
this.translation = JSON.parse(localStorage.getItem("translation")) || {};
|
|
21
21
|
this.title =
|
|
22
22
|
this.data.title || this.translation["DELETE_RECORD"] || ".DELETE_RECORD";
|
|
23
23
|
this.saveBtnLabel =
|
|
@@ -43,4 +43,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
43
43
|
type: Inject,
|
|
44
44
|
args: [MAT_DIALOG_DATA]
|
|
45
45
|
}] }, { type: i1.MatDialogRef }]; } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcmFpc2UtY29tbW9uLWxpYi9zcmMvbGliL2RpYWxvZy9jb21tb24tZGVsZXRlLWRpYWxvZy9pbmRleC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9yYWlzZS1jb21tb24tbGliL3NyYy9saWIvZGlhbG9nL2NvbW1vbi1kZWxldGUtZGlhbG9nL2luZGV4LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sMEJBQTBCLENBQUM7Ozs7QUFrQnpFLE1BQU0sT0FBTyxxQkFBcUI7SUFVdkI7SUFDQTtJQVZULFdBQVcsQ0FBQztJQUNaLEtBQUssR0FBRyxFQUFFLENBQUM7SUFDWCxZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQ2xCLGNBQWMsR0FBRyxFQUFFLENBQUM7SUFDcEIsV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUNqQixJQUFJLEdBQUcsT0FBTyxDQUFDO0lBRWYsWUFFUyxJQUFrQixFQUNsQixTQUE4QztRQUQ5QyxTQUFJLEdBQUosSUFBSSxDQUFjO1FBQ2xCLGNBQVMsR0FBVCxTQUFTLENBQXFDO0lBQ3BELENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekUsSUFBSSxDQUFDLEtBQUs7WUFDUixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxJQUFJLGdCQUFnQixDQUFDO1FBQzNFLElBQUksQ0FBQyxZQUFZO1lBQ2YsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLElBQUksU0FBUyxDQUFDO1FBQ2pFLElBQUksQ0FBQyxjQUFjO1lBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQztRQUNuRSxJQUFJLENBQUMsV0FBVztZQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVztnQkFDckIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQ0FBaUM7Z0JBQ2xELHdGQUF3RixDQUFDO1FBQzNGLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxNQUFNLENBQUMsQ0FBQztRQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFCLENBQUM7d0dBL0JVLHFCQUFxQixrQkFTdEIsZUFBZTs0RkFUZCxxQkFBcUIsK0RDbkJsQyxvcUJBb0JBOzs0RkREYSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UseUJBQXlCOzswQkFhaEMsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IE1BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nUmVmIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2RpYWxvZ1wiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEaWFsb2dDb25maWcge1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xyXG4gIHNhdmVCdG5MYWJlbD86IHN0cmluZztcclxuICBjYW5jZWxCdG5MYWJlbD86IHN0cmluZztcclxuICBzaG93RXJyb3JJY29uPzogYm9vbGVhbjtcclxuICBoaWRlQ2xvc2VJY29uPzogYm9vbGVhbjtcclxuICBzaXplPzogc3RyaW5nO1xyXG4gIGhpZGVTYXZlQnRuPzogYm9vbGVhbjtcclxuICBoaWRlQ2xvc2VCdG4/OiBib29sZWFuO1xyXG59XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImt0LWNvbW1vbi1kZWxldGUtZGlhbG9nXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9pbmRleC5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi9pbmRleC5jb21wb25lbnQuc2Nzc1wiXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvbW1vbkRlbGV0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgdHJhbnNsYXRpb247XHJcbiAgdGl0bGUgPSBcIlwiO1xyXG4gIHNhdmVCdG5MYWJlbCA9IFwiXCI7XHJcbiAgY2FuY2VsQnRuTGFiZWwgPSBcIlwiO1xyXG4gIGRlc2NyaXB0aW9uID0gXCJcIjtcclxuICBzaXplID0gXCJzbWFsbFwiO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKVxyXG4gICAgcHVibGljIGRhdGE6IERpYWxvZ0NvbmZpZyxcclxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxDb21tb25EZWxldGVDb21wb25lbnQ+XHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNsYXRpb24gPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwidHJhbnNsYXRpb25cIikpIHx8IHt9O1xyXG4gICAgdGhpcy50aXRsZSA9XHJcbiAgICAgIHRoaXMuZGF0YS50aXRsZSB8fCB0aGlzLnRyYW5zbGF0aW9uW1wiREVMRVRFX1JFQ09SRFwiXSB8fCBcIi5ERUxFVEVfUkVDT1JEXCI7XHJcbiAgICB0aGlzLnNhdmVCdG5MYWJlbCA9XHJcbiAgICAgIHRoaXMuZGF0YS5zYXZlQnRuTGFiZWwgfHwgdGhpcy50cmFuc2xhdGlvbi5ERUxFVEUgfHwgXCIuREVMRVRFXCI7XHJcbiAgICB0aGlzLmNhbmNlbEJ0bkxhYmVsID1cclxuICAgICAgdGhpcy5kYXRhLmNhbmNlbEJ0bkxhYmVsIHx8IHRoaXMudHJhbnNsYXRpb24uQ0FOQ0VMIHx8IFwiLkNBTkNFTFwiO1xyXG4gICAgdGhpcy5kZXNjcmlwdGlvbiA9XHJcbiAgICAgIHRoaXMuZGF0YS5kZXNjcmlwdGlvbiB8fFxyXG4gICAgICB0aGlzLnRyYW5zbGF0aW9uLklGX1lPVV9ERUxFVEVfVEhJU19SRUNPUkRfV0FSTklORyB8fFxyXG4gICAgICBcIi5JZiB5b3UgZGVsZXRlIHRoaXMgcmVjb3JkLCB5b3Ugd29uJ3QgYmUgYWJsZSB0byByZWNvdmVyIGl0LiBEbyB5b3Ugd2FudCB0byBkZWxldGUgaXQ/XCI7XHJcbiAgICB0aGlzLnNpemUgPSB0aGlzLmRhdGEuc2l6ZSB8fCBcInNtYWxsXCI7XHJcbiAgfVxyXG5cclxuICBvblNhdmUoZSkge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxrdC1jb21tb24tZGlhbG9nXHJcblx0W3NpemVdPVwic2l6ZVwiXHJcblx0W3RpdGxlXT1cInRpdGxlXCJcclxuXHRbaGlkZUhlYWRlcl09XCJmYWxzZVwiXHJcblx0W2hpZGVDbG9zZUJ0bl09XCJkYXRhLmhpZGVDbG9zZUJ0biA9PT0gdW5kZWZpbmVkID8gZmFsc2UgOiBkYXRhLmhpZGVDbG9zZUJ0blwiXHJcblx0W2hpZGVTYXZlQnRuXT1cImRhdGEuaGlkZVNhdmVCdG4gPT09IHVuZGVmaW5lZCA/IGZhbHNlIDogZGF0YS5oaWRlU2F2ZUJ0blwiXHJcblx0W3NhdmVCdG5MYWJlbF09XCJzYXZlQnRuTGFiZWxcIlxyXG5cdFtjYW5jZWxCdG5MYWJlbF09XCJjYW5jZWxCdG5MYWJlbFwiXHJcblx0W3Nob3dFcnJvckljb25dPVwiXHJcblx0XHRkYXRhLnNob3dFcnJvckljb24gPT09IHVuZGVmaW5lZCA/IGZhbHNlIDogZGF0YS5zaG93RXJyb3JJY29uXHJcblx0XCJcclxuXHRbaGlkZUNsb3NlSWNvbl09XCJcclxuXHRcdGRhdGEuaGlkZUNsb3NlSWNvbiA9PT0gdW5kZWZpbmVkID8gZmFsc2UgOiBkYXRhLmhpZGVDbG9zZUljb25cclxuXHRcIlxyXG5cdChzYXZlRW1pdCk9XCJvblNhdmUoJGV2ZW50KVwiXHJcbj5cclxuXHQ8ZGl2IGNsYXNzPVwibWFwcGluZy1kaWFsb2dcIj5cclxuXHRcdHt7IGRlc2NyaXB0aW9uIH19XHJcblx0PC9kaXY+XHJcbjwva3QtY29tbW9uLWRpYWxvZz5cclxuIl19
|
|
@@ -42,14 +42,14 @@ export class CommonDialogComponent {
|
|
|
42
42
|
});
|
|
43
43
|
}
|
|
44
44
|
getInfo() {
|
|
45
|
-
this.translation = JSON.parse(localStorage.getItem("translation"));
|
|
45
|
+
this.translation = JSON.parse(localStorage.getItem("translation")) || {};
|
|
46
46
|
this.saveBtnLabel =
|
|
47
47
|
this.saveBtnLabel || this.translation.SAVE || ".SAVE";
|
|
48
48
|
this.cancelBtnLabel =
|
|
49
49
|
this.cancelBtnLabel || this.translation.CANCEL || ".CANCEL";
|
|
50
50
|
}
|
|
51
51
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CommonDialogComponent, deps: [{ token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
52
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CommonDialogComponent, selector: "kt-common-dialog", inputs: { hideHeader: "hideHeader", hideCloseIcon: "hideCloseIcon", hideCloseBtn: "hideCloseBtn", hideSaveBtn: "hideSaveBtn", saveBtnLabel: "saveBtnLabel", cancelBtnLabel: "cancelBtnLabel", showErrorIcon: "showErrorIcon", size: "size", title: "title", loading: "loading" }, outputs: { saveEmit: "saveEmit", closeEmit: "closeEmit" }, queries: [{ propertyName: "footerContent", first: true, predicate: ["footerSlot"], descendants: true
|
|
52
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CommonDialogComponent, selector: "kt-common-dialog", inputs: { hideHeader: "hideHeader", hideCloseIcon: "hideCloseIcon", hideCloseBtn: "hideCloseBtn", hideSaveBtn: "hideSaveBtn", saveBtnLabel: "saveBtnLabel", cancelBtnLabel: "cancelBtnLabel", showErrorIcon: "showErrorIcon", size: "size", title: "title", loading: "loading" }, outputs: { saveEmit: "saveEmit", closeEmit: "closeEmit" }, queries: [{ propertyName: "footerContent", first: true, predicate: ["footerSlot"], descendants: true }], ngImport: i0, template: "<div class=\"dialog\" [ngClass]=\"size\">\r\n\t<!-- \u5934\u90E8 -->\r\n\t<div *ngIf=\"!hideHeader\" mat-dialog-title class=\"dialog__header\">\r\n\t\t<div class=\"header__title\">\r\n\t\t\t<img\r\n\t\t\t\tsrc=\"../../../assets/img/notification-status-warning.svg\"\r\n\t\t\t\talt=\"\"\r\n\t\t\t\t*ngIf=\"showErrorIcon\"\r\n\t\t\t/>\r\n\t\t\t{{ title }}\r\n\t\t</div>\r\n\t\t<div\r\n\t\t\t*ngIf=\"!hideCloseIcon\"\r\n\t\t\tclass=\"header__close-btn\"\r\n\t\t\t(click)=\"onClose()\"\r\n\t\t>\r\n\t\t\t<img\r\n\t\t\t\tclass=\"header__close-icon\"\r\n\t\t\t\tsrc=\"../../../assets/img/close.svg\"\r\n\t\t\t/>\r\n\t\t</div>\r\n\t</div>\r\n\t<!-- \u5185\u5BB9 -->\r\n\t<div class=\"dialog__content\" mat-dialog-content>\r\n\t\t<ng-content></ng-content>\r\n\t</div>\r\n\t<!-- \u5E95\u90E8\u6309\u94AE -->\r\n\t<div mat-dialog-actions class=\"dialog__footer\">\r\n\t\t<ng-content select=\"[footerSlot]\"></ng-content>\r\n\t\t<!-- \u9ED8\u8BA4\u5C55\u793A\u4FDD\u5B58/\u5173\u95ED\u6309\u94AE -->\r\n\t\t<ng-container *ngIf=\"!customFooter\">\r\n\t\t\t<ng-template [ngTemplateOutlet]=\"defaultTemplate\"></ng-template>\r\n\t\t</ng-container>\r\n\t\t<ng-template #defaultTemplate>\r\n\t\t\t<button *ngIf=\"!hideCloseBtn\" class=\"e-btn\" [ngClass]=\"size\" mat-dialog-close>\r\n\t\t\t\t{{ cancelBtnLabel }}\r\n\t\t\t</button>\r\n\t\t\t<button *ngIf=\"!hideSaveBtn\" class=\"e-btn e-primary\" [ngClass]=\"size\" (click)=\"onSave()\">\r\n\t\t\t\t{{ saveBtnLabel }}\r\n\t\t\t</button>\r\n\t\t</ng-template>\r\n\t</div>\r\n\t<!-- loading -->\r\n\t<div class=\"dialog__loading\" [hidden]=\"!loading\">\r\n\t\t<img src=\"../../../assets/img/raise_loading.gif\" alt=\"\" />\r\n\t</div>\r\n</div>\r\n", styles: [":host::ng-deep .dialog{position:relative;max-height:90vh;font-weight:400;overflow:hidden}:host::ng-deep .dialog.medium{width:500px;padding:20px}:host::ng-deep .dialog.small{width:350px;padding:20px 16px}:host::ng-deep .dialog.small .dialog__header{color:#002c4f;margin-bottom:16px}:host::ng-deep .dialog.small .dialog__header .header__title{font-size:13px;line-height:16px}:host::ng-deep .dialog.small .dialog__content{font-size:12px;line-height:16px}:host::ng-deep .dialog.small .dialog__footer{min-height:42px;padding:16px 0 0;font-size:12px;line-height:14px}:host::ng-deep .dialog.small .dialog__footer button{padding:6px 12px;min-width:60px}:host::ng-deep .dialog.large{width:800px;padding:20px}:host::ng-deep .dialog .dialog__header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:0}:host::ng-deep .dialog .dialog__header:before{display:none}:host::ng-deep .dialog .dialog__header .header__title{color:#002c4f;font-family:Arial;font-size:15px;font-weight:700;line-height:18px;flex:1;overflow:hidden;display:flex;align-items:center;gap:8px}:host::ng-deep .dialog .dialog__header .header__close-icon{display:block;width:100%;height:100%}:host::ng-deep .dialog .dialog__header .header__close-btn{cursor:pointer;flex:0 0 20px;padding:4px;width:20px;height:20px;display:flex;justify-content:center;align-items:center}:host::ng-deep .dialog .dialog__content{width:100%;min-height:38px;position:relative;overflow-y:auto;overflow-x:hidden;margin:0;padding:0;font-size:13px;line-height:19px}:host::ng-deep .dialog .dialog__footer{position:relative;display:flex;align-items:center;justify-content:flex-end;padding:20px 0 0;font-size:13px;line-height:16px;margin-bottom:0}:host::ng-deep .dialog .dialog__footer button{border-radius:4px;padding:6px 16px;border:none;min-width:70px}:host::ng-deep .dialog .dialog__footer button+button{margin-left:12px}:host::ng-deep .dialog .dialog__footer .save-btn{background:#1364b3;border:1px solid #1364b3;font-weight:700;color:#fff}:host::ng-deep .dialog .dialog__footer .cancel-btn{border:1px solid #adb5bd;background:#fff}:host::ng-deep .dialog .dialog__loading{height:100%;background:transparent;position:fixed;inset:0;z-index:9999}:host::ng-deep .dialog .dialog__loading img{position:absolute;left:50%;top:50%;width:40px;height:40px;transform:translate(-50%,-50%)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }] });
|
|
53
53
|
}
|
|
54
54
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CommonDialogComponent, decorators: [{
|
|
55
55
|
type: Component,
|
|
@@ -80,6 +80,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
80
80
|
type: Output
|
|
81
81
|
}], footerContent: [{
|
|
82
82
|
type: ContentChild,
|
|
83
|
-
args: ["footerSlot", { static:
|
|
83
|
+
args: ["footerSlot", { static: false }]
|
|
84
84
|
}] } });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcmFpc2UtY29tbW9uLWxpYi9zcmMvbGliL2RpYWxvZy9jb21tb24tZGlhbG9nL2luZGV4LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JhaXNlLWNvbW1vbi1saWIvc3JjL2xpYi9kaWFsb2cvY29tbW9uLWRpYWxvZy9pbmRleC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ04sU0FBUyxFQUVULEtBQUssRUFDTCxZQUFZLEVBQ1osTUFBTSxFQUNOLFlBQVksR0FDWixNQUFNLGVBQWUsQ0FBQzs7OztBQVN2QixNQUFNLE9BQU8scUJBQXFCO0lBa0JkO0lBakJaLFdBQVcsQ0FBQztJQUVuQixXQUFXO0lBQ0YsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUNuQixhQUFhLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLFlBQVksR0FBRyxLQUFLLENBQUM7SUFDckIsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUNwQixZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQ2xCLGNBQWMsR0FBRyxFQUFFLENBQUM7SUFDcEIsYUFBYSxHQUFHLEtBQUssQ0FBQztJQUUvQixTQUFTO0lBQ0EsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUNWLEtBQUssR0FBRyxRQUFRLENBQUM7SUFDakIsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUNmLFFBQVEsR0FBMkIsSUFBSSxZQUFZLEVBQVksQ0FBQztJQUNoRSxTQUFTLEdBQTJCLElBQUksWUFBWSxFQUFZLENBQUM7SUFDM0UsWUFBbUIsU0FBOEM7UUFBOUMsY0FBUyxHQUFULFNBQVMsQ0FBcUM7SUFBRyxDQUFDO0lBRXJFLG1CQUFtQjtJQUM0QixhQUFhLENBQU07SUFDbEUsWUFBWSxHQUFZLEtBQUssQ0FBQztJQUM5QixrQkFBa0I7UUFDakIsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUMxQyxDQUFDO0lBRUQsUUFBUTtRQUNQLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQsT0FBTyxDQUFDLEdBQUk7UUFDWCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsTUFBTTtRQUNMLG1DQUFtQztRQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDO0lBRU8sT0FBTztRQUNkLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3pFLElBQUksQ0FBQyxZQUFZO1lBQ2hCLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxjQUFjO1lBQ2xCLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLElBQUksU0FBUyxDQUFDO0lBQzlELENBQUM7d0dBakRXLHFCQUFxQjs0RkFBckIscUJBQXFCLDhlQ2hCbEMscXBEQStDQTs7NEZEL0JhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDQyxrQkFBa0I7bUdBUW5CLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBR0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUl3QyxhQUFhO3NCQUEzRCxZQUFZO3VCQUFDLFlBQVksRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG5cdENvbXBvbmVudCxcclxuXHRPbkluaXQsXHJcblx0SW5wdXQsXHJcblx0Q29udGVudENoaWxkLFxyXG5cdE91dHB1dCxcclxuXHRFdmVudEVtaXR0ZXIsXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2dcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiBcImt0LWNvbW1vbi1kaWFsb2dcIixcclxuXHRzdHlsZVVybHM6IFtcIi4vaW5kZXguY29tcG9uZW50LnNjc3NcIl0sXHJcblx0dGVtcGxhdGVVcmw6IFwiLi9pbmRleC5jb21wb25lbnQuaHRtbFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29tbW9uRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHRwdWJsaWMgdHJhbnNsYXRpb247XHJcblxyXG5cdC8vIOmakOiXj+WFg+e0oOebuOWFs+WxnuaAp1xyXG5cdEBJbnB1dCgpIGhpZGVIZWFkZXIgPSBmYWxzZTtcclxuXHRASW5wdXQoKSBoaWRlQ2xvc2VJY29uID0gZmFsc2U7XHJcblx0QElucHV0KCkgaGlkZUNsb3NlQnRuID0gZmFsc2U7XHJcblx0QElucHV0KCkgaGlkZVNhdmVCdG4gPSBmYWxzZTtcclxuXHRASW5wdXQoKSBzYXZlQnRuTGFiZWwgPSBcIlwiO1xyXG5cdEBJbnB1dCgpIGNhbmNlbEJ0bkxhYmVsID0gXCJcIjtcclxuXHRASW5wdXQoKSBzaG93RXJyb3JJY29uID0gZmFsc2U7XHJcblxyXG5cdC8vIOaYvuekuuebuOWFs+WxnuaAp1xyXG5cdEBJbnB1dCgpIHNpemUgPSBcIlwiO1xyXG5cdEBJbnB1dCgpIHRpdGxlID0gXCJEaWFsb2dcIjtcclxuXHRASW5wdXQoKSBsb2FkaW5nID0gZmFsc2U7XHJcblx0QE91dHB1dCgpIHNhdmVFbWl0OiBFdmVudEVtaXR0ZXI8RnVuY3Rpb24+ID0gbmV3IEV2ZW50RW1pdHRlcjxGdW5jdGlvbj4oKTtcclxuXHRAT3V0cHV0KCkgY2xvc2VFbWl0OiBFdmVudEVtaXR0ZXI8RnVuY3Rpb24+ID0gbmV3IEV2ZW50RW1pdHRlcjxGdW5jdGlvbj4oKTtcclxuXHRjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q29tbW9uRGlhbG9nQ29tcG9uZW50Pikge31cclxuXHJcblx0Ly8g5o6n5Yi25bqV6YOo5o+S5qe95pyJ5YaF5a655pe26ZqQ6JeP6buY6K6k5oyJ6ZKuXHJcblx0QENvbnRlbnRDaGlsZChcImZvb3RlclNsb3RcIiwgeyBzdGF0aWM6IGZhbHNlIH0pIGZvb3RlckNvbnRlbnQ6IGFueTtcclxuXHRjdXN0b21Gb290ZXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHRuZ0FmdGVyQ29udGVudEluaXQoKSB7XHJcblx0XHR0aGlzLmN1c3RvbUZvb3RlciA9ICEhdGhpcy5mb290ZXJDb250ZW50O1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKSB7XHJcblx0XHR0aGlzLmdldEluZm8oKTtcclxuXHR9XHJcblxyXG5cdG9uQ2xvc2UocmVzPykge1xyXG5cdFx0dGhpcy5kaWFsb2dSZWYuY2xvc2UocmVzKTtcclxuXHRcdHRoaXMuY2xvc2VFbWl0LmVtaXQocmVzKTtcclxuXHR9XHJcblxyXG5cdG9uU2F2ZSgpIHtcclxuXHRcdC8vIOi/memHjOaKiuWFs+mXreS6i+S7tmVtaXTkuIrljrvvvIzkvYbmmK/lv4Xpobvkvb/nlKjnrq3lpLTlh73mlbDkv53lrZh0aGlz5a+56LGhXHJcblx0XHR0aGlzLnNhdmVFbWl0LmVtaXQoKHJlcykgPT4ge1xyXG5cdFx0XHR0aGlzLm9uQ2xvc2UocmVzKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBnZXRJbmZvKCkge1xyXG5cdFx0dGhpcy50cmFuc2xhdGlvbiA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJ0cmFuc2xhdGlvblwiKSkgfHwge307XHJcblx0XHR0aGlzLnNhdmVCdG5MYWJlbCA9XHJcblx0XHRcdHRoaXMuc2F2ZUJ0bkxhYmVsIHx8IHRoaXMudHJhbnNsYXRpb24uU0FWRSB8fCBcIi5TQVZFXCI7XHJcblx0XHR0aGlzLmNhbmNlbEJ0bkxhYmVsID1cclxuXHRcdFx0dGhpcy5jYW5jZWxCdG5MYWJlbCB8fCB0aGlzLnRyYW5zbGF0aW9uLkNBTkNFTCB8fCBcIi5DQU5DRUxcIjtcclxuXHR9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImRpYWxvZ1wiIFtuZ0NsYXNzXT1cInNpemVcIj5cclxuXHQ8IS0tIOWktOmDqCAtLT5cclxuXHQ8ZGl2ICpuZ0lmPVwiIWhpZGVIZWFkZXJcIiBtYXQtZGlhbG9nLXRpdGxlIGNsYXNzPVwiZGlhbG9nX19oZWFkZXJcIj5cclxuXHRcdDxkaXYgY2xhc3M9XCJoZWFkZXJfX3RpdGxlXCI+XHJcblx0XHRcdDxpbWdcclxuXHRcdFx0XHRzcmM9XCIuLi8uLi8uLi9hc3NldHMvaW1nL25vdGlmaWNhdGlvbi1zdGF0dXMtd2FybmluZy5zdmdcIlxyXG5cdFx0XHRcdGFsdD1cIlwiXHJcblx0XHRcdFx0Km5nSWY9XCJzaG93RXJyb3JJY29uXCJcclxuXHRcdFx0Lz5cclxuXHRcdFx0e3sgdGl0bGUgfX1cclxuXHRcdDwvZGl2PlxyXG5cdFx0PGRpdlxyXG5cdFx0XHQqbmdJZj1cIiFoaWRlQ2xvc2VJY29uXCJcclxuXHRcdFx0Y2xhc3M9XCJoZWFkZXJfX2Nsb3NlLWJ0blwiXHJcblx0XHRcdChjbGljayk9XCJvbkNsb3NlKClcIlxyXG5cdFx0PlxyXG5cdFx0XHQ8aW1nXHJcblx0XHRcdFx0Y2xhc3M9XCJoZWFkZXJfX2Nsb3NlLWljb25cIlxyXG5cdFx0XHRcdHNyYz1cIi4uLy4uLy4uL2Fzc2V0cy9pbWcvY2xvc2Uuc3ZnXCJcclxuXHRcdFx0Lz5cclxuXHRcdDwvZGl2PlxyXG5cdDwvZGl2PlxyXG5cdDwhLS0g5YaF5a65IC0tPlxyXG5cdDxkaXYgY2xhc3M9XCJkaWFsb2dfX2NvbnRlbnRcIiBtYXQtZGlhbG9nLWNvbnRlbnQ+XHJcblx0XHQ8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcblx0PC9kaXY+XHJcblx0PCEtLSDlupXpg6jmjInpkq4gLS0+XHJcblx0PGRpdiBtYXQtZGlhbG9nLWFjdGlvbnMgY2xhc3M9XCJkaWFsb2dfX2Zvb3RlclwiPlxyXG5cdFx0PG5nLWNvbnRlbnQgc2VsZWN0PVwiW2Zvb3RlclNsb3RdXCI+PC9uZy1jb250ZW50PlxyXG5cdFx0PCEtLSDpu5jorqTlsZXnpLrkv53lrZgv5YWz6Zet5oyJ6ZKuIC0tPlxyXG5cdFx0PG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjdXN0b21Gb290ZXJcIj5cclxuXHRcdFx0PG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImRlZmF1bHRUZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XHJcblx0XHQ8L25nLWNvbnRhaW5lcj5cclxuXHRcdDxuZy10ZW1wbGF0ZSAjZGVmYXVsdFRlbXBsYXRlPlxyXG5cdFx0XHQ8YnV0dG9uICpuZ0lmPVwiIWhpZGVDbG9zZUJ0blwiIGNsYXNzPVwiZS1idG5cIiBbbmdDbGFzc109XCJzaXplXCIgbWF0LWRpYWxvZy1jbG9zZT5cclxuXHRcdFx0XHR7eyBjYW5jZWxCdG5MYWJlbCB9fVxyXG5cdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0PGJ1dHRvbiAqbmdJZj1cIiFoaWRlU2F2ZUJ0blwiIGNsYXNzPVwiZS1idG4gZS1wcmltYXJ5XCIgW25nQ2xhc3NdPVwic2l6ZVwiIChjbGljayk9XCJvblNhdmUoKVwiPlxyXG5cdFx0XHRcdHt7IHNhdmVCdG5MYWJlbCB9fVxyXG5cdFx0XHQ8L2J1dHRvbj5cclxuXHRcdDwvbmctdGVtcGxhdGU+XHJcblx0PC9kaXY+XHJcblx0PCEtLSBsb2FkaW5nIC0tPlxyXG5cdDxkaXYgY2xhc3M9XCJkaWFsb2dfX2xvYWRpbmdcIiBbaGlkZGVuXT1cIiFsb2FkaW5nXCI+XHJcblx0XHQ8aW1nIHNyYz1cIi4uLy4uLy4uL2Fzc2V0cy9pbWcvcmFpc2VfbG9hZGluZy5naWZcIiBhbHQ9XCJcIiAvPlxyXG5cdDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -32,11 +32,11 @@ export class CheckboxGroupComponent {
|
|
|
32
32
|
this.ref.markForCheck();
|
|
33
33
|
}
|
|
34
34
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CheckboxGroupComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
35
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CheckboxGroupComponent, selector: "rs-checkbox-group", inputs: { name: "name", value: "value", dataSource: "dataSource", orientation: "orientation", fields: "fields", disabled: "disabled", error: "error" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"checkbox-group\" [ngClass]=\"[orientation, error ? 'error' : '']\">\r\n <div class=\"checkbox-item\" *ngFor=\"let option of dataSource\">\r\n <ejs-checkbox\r\n [name]=\"name\"\r\n [label]=\"option[fields.text]\"\r\n [value]=\"option[fields.value]\"\r\n [disabled]=\"option[fields.disabled] || disabled\"\r\n [checked]=\"value.includes(option[fields.value])\"\r\n (change)=\"onChange($event, option)\"\r\n ></ejs-checkbox>\r\n </div>\r\n</div>\r\n", styles: [".checkbox-group{display:flex;padding-left:4px}.checkbox-group.horizontal{flex-direction:row;gap:35px}.checkbox-group.vertical{flex-direction:column;gap:14px}.checkbox-group
|
|
35
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CheckboxGroupComponent, selector: "rs-checkbox-group", inputs: { name: "name", value: "value", dataSource: "dataSource", orientation: "orientation", fields: "fields", disabled: "disabled", error: "error" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"checkbox-group\" [ngClass]=\"[orientation, error ? 'error' : '']\">\r\n <div class=\"checkbox-item\" *ngFor=\"let option of dataSource\">\r\n <ejs-checkbox\r\n [name]=\"name\"\r\n [label]=\"option[fields.text]\"\r\n [value]=\"option[fields.value]\"\r\n [disabled]=\"option[fields.disabled] || disabled\"\r\n [checked]=\"value.includes(option[fields.value])\"\r\n (change)=\"onChange($event, option)\"\r\n ></ejs-checkbox>\r\n </div>\r\n</div>\r\n", styles: [".checkbox-group{display:flex;padding-left:4px}.checkbox-group.horizontal{flex-direction:row;gap:35px}.checkbox-group.vertical{flex-direction:column;gap:14px}.checkbox-group.error .e-checkbox-wrapper .e-frame{border-color:var(--rs-input-error-border-color)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.CheckBoxComponent, selector: "ejs-checkbox", inputs: ["checked", "cssClass", "disabled", "enableHtmlSanitizer", "enablePersistence", "enableRtl", "htmlAttributes", "indeterminate", "label", "labelPosition", "locale", "name", "value"], outputs: ["focus", "blur", "change", "created", "checkedChange", "indeterminateChange"] }] });
|
|
36
36
|
}
|
|
37
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CheckboxGroupComponent, decorators: [{
|
|
38
38
|
type: Component,
|
|
39
|
-
args: [{ selector: "rs-checkbox-group", template: "<div class=\"checkbox-group\" [ngClass]=\"[orientation, error ? 'error' : '']\">\r\n <div class=\"checkbox-item\" *ngFor=\"let option of dataSource\">\r\n <ejs-checkbox\r\n [name]=\"name\"\r\n [label]=\"option[fields.text]\"\r\n [value]=\"option[fields.value]\"\r\n [disabled]=\"option[fields.disabled] || disabled\"\r\n [checked]=\"value.includes(option[fields.value])\"\r\n (change)=\"onChange($event, option)\"\r\n ></ejs-checkbox>\r\n </div>\r\n</div>\r\n", styles: [".checkbox-group{display:flex;padding-left:4px}.checkbox-group.horizontal{flex-direction:row;gap:35px}.checkbox-group.vertical{flex-direction:column;gap:14px}.checkbox-group
|
|
39
|
+
args: [{ selector: "rs-checkbox-group", template: "<div class=\"checkbox-group\" [ngClass]=\"[orientation, error ? 'error' : '']\">\r\n <div class=\"checkbox-item\" *ngFor=\"let option of dataSource\">\r\n <ejs-checkbox\r\n [name]=\"name\"\r\n [label]=\"option[fields.text]\"\r\n [value]=\"option[fields.value]\"\r\n [disabled]=\"option[fields.disabled] || disabled\"\r\n [checked]=\"value.includes(option[fields.value])\"\r\n (change)=\"onChange($event, option)\"\r\n ></ejs-checkbox>\r\n </div>\r\n</div>\r\n", styles: [".checkbox-group{display:flex;padding-left:4px}.checkbox-group.horizontal{flex-direction:row;gap:35px}.checkbox-group.vertical{flex-direction:column;gap:14px}.checkbox-group.error .e-checkbox-wrapper .e-frame{border-color:var(--rs-input-error-border-color)}\n"] }]
|
|
40
40
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { name: [{
|
|
41
41
|
type: Input
|
|
42
42
|
}], value: [{
|