mmhglobal-dynamicform 2.0.0-beta.7 → 2.0.0-beta.8
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/esm2020/lib/uipage/uipage.component.mjs +30 -38
- package/esm2020/lib/zgrid/zgrid.component.mjs +3 -3
- package/esm2020/lib/ztreelist/ztreelist.component.mjs +8 -7
- package/fesm2015/mmhglobal-dynamicform.mjs +38 -45
- package/fesm2015/mmhglobal-dynamicform.mjs.map +1 -1
- package/fesm2020/mmhglobal-dynamicform.mjs +38 -45
- package/fesm2020/mmhglobal-dynamicform.mjs.map +1 -1
- package/lib/uipage/uipage.component.d.ts +1 -0
- package/package.json +1 -1
|
@@ -25,45 +25,12 @@ export class UipageComponent {
|
|
|
25
25
|
}
|
|
26
26
|
pageOnInit(ctrlName, pageName, isListForm, projectName) {
|
|
27
27
|
this.group._projectName = projectName;
|
|
28
|
-
|
|
29
|
-
return this.mainService.getResourceServerData().pipe(
|
|
30
|
-
|
|
31
|
-
//return this.activatedRoute.paramMap;
|
|
32
|
-
// only FieldForm will have Id and Action.
|
|
33
|
-
if (!isListForm) {
|
|
34
|
-
return Promise.resolve().then(function () {
|
|
35
|
-
return me.mainService.getNavigationCurrentParam();
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
return Promise.resolve();
|
|
40
|
-
}
|
|
41
|
-
}), tap((routeParam) => {
|
|
28
|
+
this.group.isListForm = isListForm;
|
|
29
|
+
return this.mainService.getResourceServerData().pipe(tap(() => {
|
|
30
|
+
const routeParam = isListForm ? null : this.mainService.getNavigationCurrentParam();
|
|
42
31
|
this.mainService.initializeGroup(this.group, ctrlName, pageName, this);
|
|
43
32
|
if (routeParam) {
|
|
44
|
-
|
|
45
|
-
const routeParams = routeParam.split('/');
|
|
46
|
-
const formId = routeParams[routeParams.length - 2];
|
|
47
|
-
const actName = routeParams[routeParams.length - 1];
|
|
48
|
-
this.group.isNew = actName === "new" ? true : false;
|
|
49
|
-
this.group.isEdit = actName === "edit" ? true : false;
|
|
50
|
-
if (actName === "edit") {
|
|
51
|
-
this.group.referenceId = formId;
|
|
52
|
-
}
|
|
53
|
-
else if (actName === "new") {
|
|
54
|
-
this.group.parentReferenceId = formId;
|
|
55
|
-
if (this.group.parentReferenceId) {
|
|
56
|
-
if (this.group.parentReferenceField) {
|
|
57
|
-
this.group.zModel[this.group.parentReferenceField] = this.group.parentReferenceId.toString();
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
console.log("group.parentReferenceId is undefined.");
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
if (actName) {
|
|
65
|
-
this.group.actName = actName;
|
|
66
|
-
}
|
|
33
|
+
this.setupRouteParams(routeParam);
|
|
67
34
|
}
|
|
68
35
|
else {
|
|
69
36
|
console.warn("Error in uipage init.");
|
|
@@ -109,6 +76,31 @@ export class UipageComponent {
|
|
|
109
76
|
// this.group.isLoading = false;
|
|
110
77
|
// });
|
|
111
78
|
}
|
|
79
|
+
setupRouteParams(routeParam) {
|
|
80
|
+
//let actName = routePath.get("act");
|
|
81
|
+
const routeParams = routeParam.split('/');
|
|
82
|
+
const formId = routeParams[routeParams.length - 2];
|
|
83
|
+
const actName = routeParams[routeParams.length - 1];
|
|
84
|
+
this.group.isNew = actName === "new" ? true : false;
|
|
85
|
+
this.group.isEdit = actName === "edit" ? true : false;
|
|
86
|
+
if (actName === "edit") {
|
|
87
|
+
this.group.referenceId = formId;
|
|
88
|
+
}
|
|
89
|
+
else if (actName === "new") {
|
|
90
|
+
this.group.parentReferenceId = formId;
|
|
91
|
+
if (this.group.parentReferenceId) {
|
|
92
|
+
if (this.group.parentReferenceField) {
|
|
93
|
+
this.group.zModel[this.group.parentReferenceField] = this.group.parentReferenceId.toString();
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
console.log("group.parentReferenceId is undefined.");
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
if (actName) {
|
|
101
|
+
this.group.actName = actName;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
112
104
|
pageDestroy() {
|
|
113
105
|
console.log(this.group.pageName + " ngOnDestroy.");
|
|
114
106
|
if (this.subscription) {
|
|
@@ -124,4 +116,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
124
116
|
template: ``,
|
|
125
117
|
}]
|
|
126
118
|
}], ctorParameters: function () { return [{ type: i1.MainService }, { type: i2.ActivatedRoute }]; } });
|
|
127
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWlwYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21taGdsb2JhbC1keW5hbWljZm9ybS9zcmMvbGliL3VpcGFnZS91aXBhZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzFDLDZCQUE2QjtBQUU3Qiw4QkFBOEI7QUFDOUIsT0FBTyxFQUFnQixFQUFFLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUloRCxPQUFPLEVBQUUsTUFBTSxFQUErQyxNQUFNLGlCQUFpQixDQUFDOzs7O0FBQ3RGLCtFQUErRTtBQU0vRSxNQUFNLE9BQU8sZUFBZTtJQUsxQjtJQUNFLHFDQUFxQztJQUM5QixXQUF3QixFQUN4QixjQUE4QjtRQUQ5QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFQdkMsaUNBQWlDO1FBQ2pDLFVBQUssR0FBVyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQVEvQixXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqQyx5REFBeUQ7SUFDM0QsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELFVBQVUsQ0FBQyxRQUFnQixFQUFFLFFBQWdCLEVBQUUsVUFBbUIsRUFBRSxXQUFvQjtRQUN0RixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxXQUFXLENBQUM7UUFDdEMsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDO1FBRWhCLE9BQU8s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Q0FBQyxDQUFDO2FBQ2Y7UUFDSCxDQUFDLENBQUMsRUFDRixTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNuQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLEVBQUU7Z0JBQ25DLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQzlDLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQ2hDLENBQUM7YUFDSDtZQUNELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUQsQ0FBQyxDQUFDLEVBQ0YsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNiLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDNUQsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNGLHFCQUFxQjtRQUNyQiw4REFBOEQ7UUFDOUQsa0NBQWtDO1FBQ2xDLE1BQU07SUFDUixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLENBQUM7UUFDbkQsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDakM7SUFDSCxDQUFDOzs2R0F0SVUsZUFBZTtpR0FBZixlQUFlLG9EQUZoQixFQUFFOzRGQUVELGVBQWU7a0JBSDNCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLEVBQUU7aUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKiBBbmd1bGFyICoqKioqKioqKiovXHJcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5cclxuLyoqKioqKioqKiogSW9uaWMgKioqKioqKioqKi9cclxuXHJcbi8qKioqKioqKioqIFBsdWdpbiAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24sIG9mLCBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgc3dpdGNoTWFwLCB0YXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuXHJcbi8qKioqKioqKioqIENvbXBvbmVudCAmIFNlcnZpY2UgKioqKioqKioqKi9cclxuaW1wb3J0IHsgTWFpblNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvbWFpbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFpHcm91cCwgSURlYWN0aXZhdGVDb21wb25lbnQsIFN0b3JhZ2VTZXNzaW9uU2VydmljZSB9IGZyb20gXCJtbWhnbG9iYWwtemNvcmVcIjtcclxuLy8gaW1wb3J0IHsgSURlYWN0aXZhdGVDb21wb25lbnQgfSBmcm9tIFwic3JjL2FwcC9zZXJ2aWNlcy9jYW5kZWFjdGl2YXRlLmd1YXJkXCI7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGU6IGBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVWlwYWdlQ29tcG9uZW50IGltcGxlbWVudHMgSURlYWN0aXZhdGVDb21wb25lbnQge1xyXG4gIC8vIGN0cmxOYW1lID0gXCJlMWNybV9icGFjdGl2aXR5XCI7XHJcbiAgZ3JvdXA6IFpHcm91cCA9IG5ldyBaR3JvdXAodHJ1ZSk7XHJcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgLy8gcHVibGljIGZpZWxkU2VydmljZTogRmllbGRTZXJ2aWNlLFxyXG4gICAgcHVibGljIG1haW5TZXJ2aWNlOiBNYWluU2VydmljZSxcclxuICAgIHB1YmxpYyBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGVcclxuICApIHtcclxuICAgIG1haW5TZXJ2aWNlLnNldEdyb3VwKHRoaXMuZ3JvdXApO1xyXG4gICAgLy8gY29uc29sZS5sb2coXCJBdCBcIiArIHRoaXMuY3RybE5hbWUgKyBcIiAoY29uc3RydWN0b3IpXCIpO1xyXG4gIH1cclxuXHJcbiAgY2FuRXhpdCgpOiBib29sZWFuIHwgT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICByZXR1cm4gdGhpcy5tYWluU2VydmljZS5jYW5FeGl0KHRoaXMuZ3JvdXAuZm9ybSk7XHJcbiAgfVxyXG5cclxuICBwYWdlT25Jbml0KGN0cmxOYW1lOiBzdHJpbmcsIHBhZ2VOYW1lOiBzdHJpbmcsIGlzTGlzdEZvcm06IGJvb2xlYW4sIHByb2plY3ROYW1lPzogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmdyb3VwLl9wcm9qZWN0TmFtZSA9IHByb2plY3ROYW1lO1xyXG4gICAgY29uc3QgbWUgPSB0aGlzO1xyXG5cclxuICAgIHJldHVybiB0aGlzLm1haW5TZXJ2aWNlLmdldFJlc291cmNlU2VydmVyRGF0YSgpLnBpcGUoXHJcbiAgICAgIHN3aXRjaE1hcCgocnNEYXRhKSA9PiB7XHJcbiAgICAgICAgdGhpcy5ncm91cC5pc0xpc3RGb3JtID0gaXNMaXN0Rm9ybTtcclxuICAgICAgICAvL3JldHVybiB0aGlzLmFjdGl2YXRlZFJvdXRlLnBhcmFtTWFwO1xyXG4gICAgICAgIC8vIG9ubHkgRmllbGRGb3JtIHdpbGwgaGF2ZSBJZCBhbmQgQWN0aW9uLlxyXG4gICAgICAgIGlmICghaXNMaXN0Rm9ybSkge1xyXG4gICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oZnVuY3Rpb24gKCkge1xyXG4gICAgICAgICAgICByZXR1cm4gbWUubWFpblNlcnZpY2UuZ2V0TmF2aWdhdGlvbkN1cnJlbnRQYXJhbSgpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSksXHJcbiAgICAgIHRhcCgocm91dGVQYXJhbSkgPT4ge1xyXG4gICAgICAgIHRoaXMubWFpblNlcnZpY2UuaW5pdGlhbGl6ZUdyb3VwKHRoaXMuZ3JvdXAsIGN0cmxOYW1lLCBwYWdlTmFtZSwgdGhpcyk7XHJcblxyXG4gICAgICAgIGlmIChyb3V0ZVBhcmFtKSB7XHJcbiAgICAgICAgICAvL2xldCBhY3ROYW1lID0gcm91dGVQYXRoLmdldChcImFjdFwiKTtcclxuICAgICAgICAgIGNvbnN0IHJvdXRlUGFyYW1zID0gcm91dGVQYXJhbS5zcGxpdCgnLycpO1xyXG4gICAgICAgICAgY29uc3QgZm9ybUlkID0gcm91dGVQYXJhbXNbcm91dGVQYXJhbXMubGVuZ3RoIC0gMl07XHJcbiAgICAgICAgICBjb25zdCBhY3ROYW1lID0gcm91dGVQYXJhbXNbcm91dGVQYXJhbXMubGVuZ3RoIC0gMV07XHJcblxyXG4gICAgICAgICAgdGhpcy5ncm91cC5pc05ldyA9IGFjdE5hbWUgPT09IFwibmV3XCIgPyB0cnVlIDogZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLmdyb3VwLmlzRWRpdCA9IGFjdE5hbWUgPT09IFwiZWRpdFwiID8gdHJ1ZSA6IGZhbHNlO1xyXG5cclxuICAgICAgICAgIGlmIChhY3ROYW1lID09PSBcImVkaXRcIikge1xyXG4gICAgICAgICAgICB0aGlzLmdyb3VwLnJlZmVyZW5jZUlkID0gZm9ybUlkOyAgXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIGlmIChhY3ROYW1lID09PSBcIm5ld1wiKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JvdXAucGFyZW50UmVmZXJlbmNlSWQgPSBmb3JtSWQ7ICBcclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLmdyb3VwLnBhcmVudFJlZmVyZW5jZUlkKSB7XHJcbiAgICAgICAgICAgICAgaWYgKHRoaXMuZ3JvdXAucGFyZW50UmVmZXJlbmNlRmllbGQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ3JvdXAuek1vZGVsW3RoaXMuZ3JvdXAucGFyZW50UmVmZXJlbmNlRmllbGRdID0gdGhpcy5ncm91cC5wYXJlbnRSZWZlcmVuY2VJZC50b1N0cmluZygpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcImdyb3VwLnBhcmVudFJlZmVyZW5jZUlkIGlzIHVuZGVmaW5lZC5cIik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBpZiAoYWN0TmFtZSkge1xyXG4gICAgICAgICAgICB0aGlzLmdyb3VwLmFjdE5hbWUgPSBhY3ROYW1lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgIGNvbnNvbGUud2FybihcIkVycm9yIGluIHVpcGFnZSBpbml0LlwiKVxyXG4gICAgICAgIH1cclxuICAgICAgfSksXHJcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZm9ybVR5cGUgPSBpc0xpc3RGb3JtID8gXCJMaXN0RmllbGRcIiA6IFwiRm9ybUZpZWxkXCI7XHJcbiAgICAgICAgY29uc3QgZm9ybUZpZWxkTmFtZSA9IHRoaXMuZ3JvdXAuZmllbGROYW1lID8gdGhpcy5ncm91cC5maWVsZE5hbWUgOiBjdHJsTmFtZTtcclxuXHJcbiAgICAgICAgdGhpcy5ncm91cC5maWVsZE5hbWUgPSBmb3JtRmllbGROYW1lO1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5tYWluU2VydmljZS5nZXRHcm91cEZpZWxkcyhcclxuICAgICAgICAgIGZvcm1GaWVsZE5hbWUsXHJcbiAgICAgICAgICBmb3JtVHlwZSxcclxuICAgICAgICAgIHRoaXMuZ3JvdXAsXHJcbiAgICAgICAgICBcImZpZWxkc1wiXHJcbiAgICAgICAgKTtcclxuICAgICAgfSksXHJcbiAgICAgIHN3aXRjaE1hcCgoZmllbGRzKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubWFpblNlcnZpY2UuYmVmb3JlUGFnZUluaXRpYWxpc2UodGhpcy5ncm91cCk7XHJcbiAgICAgIH0pLFxyXG4gICAgICBzd2l0Y2hNYXAoKGZpZWxkcykgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLmdyb3VwLmFjdE5hbWUgPT09IFwibmV3XCIpIHtcclxuICAgICAgICAgIHRoaXMubWFpblNlcnZpY2UuZ2V0Q2xvbmVOZXdDYWNoZVpNb2RlbCh0aGlzLmdyb3VwKTtcclxuICAgICAgICAgIHJldHVybiB0aGlzLm1haW5TZXJ2aWNlLmFmdGVyTmV3TW9kZWwodGhpcy5ncm91cCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJldHVybiBvZihmaWVsZHMpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSksXHJcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ0N0ck5hbWU6ICcgKyBjdHJsTmFtZSArICcgZmllbGQgRWxlbWVudDogJywgZmllbGRzKTtcclxuICAgICAgICBpZiAodGhpcy5ncm91cC5yZWZlcmVuY2VJZCAmJiB0aGlzLmdyb3VwLnJlZmVyZW5jZUlkICE9PSBcIjBcIikge1xyXG4gICAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmdyb3VwLmdldE1vZGVsID09PSBcImZ1bmN0aW9uXCIpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ3JvdXAuZ2V0TW9kZWwodGhpcy5ncm91cCwgdGhpcy5ncm91cC5yZWZlcmVuY2VJZCk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5tYWluU2VydmljZS5nZXRNb2RlbCQoXHJcbiAgICAgICAgICAgICAgdGhpcy5ncm91cCxcclxuICAgICAgICAgICAgICB0aGlzLmdyb3VwLnJlZmVyZW5jZUlkXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJldHVybiBvZih7fSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KSxcclxuICAgICAgc3dpdGNoTWFwKCh6bW9kZWwpID0+IHtcclxuICAgICAgICBpZiAodGhpcy5ncm91cC5wYXJlbnRSZWZlcmVuY2VGaWVsZCkge1xyXG4gICAgICAgICAgdGhpcy5ncm91cC5wYXJlbnRSZWZlcmVuY2VJZCA9IHRoaXMuZ3JvdXAuek1vZGVsW1xyXG4gICAgICAgICAgICB0aGlzLmdyb3VwLnBhcmVudFJlZmVyZW5jZUZpZWxkXHJcbiAgICAgICAgICBdO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGhpcy5tYWluU2VydmljZS5hZnRlclBhZ2VJbml0aWFsaXNlKHRoaXMuZ3JvdXApO1xyXG4gICAgICB9KSxcclxuICAgICAgc3dpdGNoTWFwKCgpID0+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5tYWluU2VydmljZS50cmFuc2xhdGlvblBhZ2VFbGVtZW50KHRoaXMuZ3JvdXApXHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgLy8gLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAvLyAgIGNvbnNvbGUubG9nKFwiQXQgYWN0aXZpdHktb25lLnBhZ2UgbmdPbkluaXQoKSBjb21wbGV0ZWRcIik7XHJcbiAgICAvLyAgIHRoaXMuZ3JvdXAuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAvLyB9KTtcclxuICB9XHJcblxyXG4gIHBhZ2VEZXN0cm95KCk6IHZvaWQge1xyXG4gICAgY29uc29sZS5sb2codGhpcy5ncm91cC5wYWdlTmFtZSArIFwiIG5nT25EZXN0cm95LlwiKTtcclxuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWlwYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21taGdsb2JhbC1keW5hbWljZm9ybS9zcmMvbGliL3VpcGFnZS91aXBhZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzFDLDZCQUE2QjtBQUU3Qiw4QkFBOEI7QUFDOUIsT0FBTyxFQUFnQixFQUFFLEVBQW9CLE1BQU0sTUFBTSxDQUFDO0FBQzFELE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJaEQsT0FBTyxFQUFFLE1BQU0sRUFBK0MsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQUN0RiwrRUFBK0U7QUFLL0UsTUFBTSxPQUFPLGVBQWU7SUFLMUI7SUFDRSxxQ0FBcUM7SUFDOUIsV0FBd0IsRUFDeEIsY0FBOEI7UUFEOUIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBUHZDLGlDQUFpQztRQUNqQyxVQUFLLEdBQVcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFRL0IsV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMseURBQXlEO0lBQzNELENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxVQUFVLENBQUMsUUFBZ0IsRUFBRSxRQUFnQixFQUFFLFVBQW1CLEVBQUUsV0FBb0I7UUFDdEYsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEdBQUcsV0FBVyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLFVBQVUs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aUIsRUFBRTtnQkFDaEMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixFQUFFO29CQUNuQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztpQkFDOUY7YUFDRjtpQkFDSTtnQkFDSCxPQUFPLENBQUMsR0FBRyxDQUFDLHVDQUF1QyxDQUFDLENBQUM7YUFDdEQ7U0FDRjtRQUVELElBQUksT0FBTyxFQUFFO1lBQ1gsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQyxDQUFDO1FBQ25ELElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQzs7NkdBOUhVLGVBQWU7aUdBQWYsZUFBZSxvREFGaEIsRUFBRTs0RkFFRCxlQUFlO2tCQUgzQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO2lCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKiogQW5ndWxhciAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuXHJcbi8qKioqKioqKioqIElvbmljICoqKioqKioqKiovXHJcblxyXG4vKioqKioqKioqKiBQbHVnaW4gKioqKioqKioqKi9cclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCBvZiwgT2JzZXJ2YWJsZSwgZnJvbSB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcblxyXG4vKioqKioqKioqKiBDb21wb25lbnQgJiBTZXJ2aWNlICoqKioqKioqKiovXHJcbmltcG9ydCB7IE1haW5TZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL21haW4uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBaR3JvdXAsIElEZWFjdGl2YXRlQ29tcG9uZW50LCBTdG9yYWdlU2Vzc2lvblNlcnZpY2UgfSBmcm9tIFwibW1oZ2xvYmFsLXpjb3JlXCI7XHJcbi8vIGltcG9ydCB7IElEZWFjdGl2YXRlQ29tcG9uZW50IH0gZnJvbSBcInNyYy9hcHAvc2VydmljZXMvY2FuZGVhY3RpdmF0ZS5ndWFyZFwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGU6IGBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVWlwYWdlQ29tcG9uZW50IGltcGxlbWVudHMgSURlYWN0aXZhdGVDb21wb25lbnQge1xyXG4gIC8vIGN0cmxOYW1lID0gXCJlMWNybV9icGFjdGl2aXR5XCI7XHJcbiAgZ3JvdXA6IFpHcm91cCA9IG5ldyBaR3JvdXAodHJ1ZSk7XHJcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgLy8gcHVibGljIGZpZWxkU2VydmljZTogRmllbGRTZXJ2aWNlLFxyXG4gICAgcHVibGljIG1haW5TZXJ2aWNlOiBNYWluU2VydmljZSxcclxuICAgIHB1YmxpYyBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGVcclxuICApIHtcclxuICAgIG1haW5TZXJ2aWNlLnNldEdyb3VwKHRoaXMuZ3JvdXApO1xyXG4gICAgLy8gY29uc29sZS5sb2coXCJBdCBcIiArIHRoaXMuY3RybE5hbWUgKyBcIiAoY29uc3RydWN0b3IpXCIpO1xyXG4gIH1cclxuXHJcbiAgY2FuRXhpdCgpOiBib29sZWFuIHwgT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICByZXR1cm4gdGhpcy5tYWluU2VydmljZS5jYW5FeGl0KHRoaXMuZ3JvdXAuZm9ybSk7XHJcbiAgfVxyXG5cclxuICBwYWdlT25Jbml0KGN0cmxOYW1lOiBzdHJpbmcsIHBhZ2VOYW1lOiBzdHJpbmcsIGlzTGlzdEZvcm06IGJvb2xlYW4sIHByb2plY3ROYW1lPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHRoaXMuZ3JvdXAuX3Byb2plY3ROYW1lID0gcHJvamVjdE5hbWU7XHJcbiAgICB0aGlzLmdyb3VwLmlzTGlzdEZvcm0gPSBpc0xpc3RGb3JtO1xyXG5cclxuICAgIHJldHVybiB0aGlzLm1haW5TZXJ2aWNlLmdldFJlc291cmNlU2VydmVyRGF0YSgpLnBpcGUoXHJcbiAgICAgIHRhcCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3Qgcm91dGVQYXJhbSA9IGlzTGlzdEZvcm0gPyBudWxsIDogdGhpcy5tYWluU2VydmljZS5nZXROYXZpZ2F0aW9uQ3VycmVudFBhcmFtKCk7XHJcbiAgICAgICAgdGhpcy5tYWluU2VydmljZS5pbml0aWFsaXplR3JvdXAodGhpcy5ncm91cCwgY3RybE5hbWUsIHBhZ2VOYW1lLCB0aGlzKTtcclxuXHJcbiAgICAgICAgaWYgKHJvdXRlUGFyYW0pIHtcclxuICAgICAgICAgIHRoaXMuc2V0dXBSb3V0ZVBhcmFtcyhyb3V0ZVBhcmFtKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICBjb25zb2xlLndhcm4oXCJFcnJvciBpbiB1aXBhZ2UgaW5pdC5cIilcclxuICAgICAgICB9XHJcbiAgICAgIH0pLFxyXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGZvcm1UeXBlID0gaXNMaXN0Rm9ybSA/IFwiTGlzdEZpZWxkXCIgOiBcIkZvcm1GaWVsZFwiO1xyXG4gICAgICAgIGNvbnN0IGZvcm1GaWVsZE5hbWUgPSB0aGlzLmdyb3VwLmZpZWxkTmFtZSA/IHRoaXMuZ3JvdXAuZmllbGROYW1lIDogY3RybE5hbWU7XHJcblxyXG4gICAgICAgIHRoaXMuZ3JvdXAuZmllbGROYW1lID0gZm9ybUZpZWxkTmFtZTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMubWFpblNlcnZpY2UuZ2V0R3JvdXBGaWVsZHMoXHJcbiAgICAgICAgICBmb3JtRmllbGROYW1lLFxyXG4gICAgICAgICAgZm9ybVR5cGUsXHJcbiAgICAgICAgICB0aGlzLmdyb3VwLFxyXG4gICAgICAgICAgXCJmaWVsZHNcIlxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pLFxyXG4gICAgICBzd2l0Y2hNYXAoKGZpZWxkcykgPT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLm1haW5TZXJ2aWNlLmJlZm9yZVBhZ2VJbml0aWFsaXNlKHRoaXMuZ3JvdXApO1xyXG4gICAgICB9KSxcclxuICAgICAgc3dpdGNoTWFwKChmaWVsZHMpID0+IHtcclxuICAgICAgICBpZiAodGhpcy5ncm91cC5hY3ROYW1lID09PSBcIm5ld1wiKSB7XHJcbiAgICAgICAgICB0aGlzLm1haW5TZXJ2aWNlLmdldENsb25lTmV3Q2FjaGVaTW9kZWwodGhpcy5ncm91cCk7XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy5tYWluU2VydmljZS5hZnRlck5ld01vZGVsKHRoaXMuZ3JvdXApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXR1cm4gb2YoZmllbGRzKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pLFxyXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4ge1xyXG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdDdHJOYW1lOiAnICsgY3RybE5hbWUgKyAnIGZpZWxkIEVsZW1lbnQ6ICcsIGZpZWxkcyk7XHJcbiAgICAgICAgaWYgKHRoaXMuZ3JvdXAucmVmZXJlbmNlSWQgJiYgdGhpcy5ncm91cC5yZWZlcmVuY2VJZCAhPT0gXCIwXCIpIHtcclxuICAgICAgICAgIGlmICh0eXBlb2YgdGhpcy5ncm91cC5nZXRNb2RlbCA9PT0gXCJmdW5jdGlvblwiKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmdyb3VwLmdldE1vZGVsKHRoaXMuZ3JvdXAsIHRoaXMuZ3JvdXAucmVmZXJlbmNlSWQpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMubWFpblNlcnZpY2UuZ2V0TW9kZWwkKFxyXG4gICAgICAgICAgICAgIHRoaXMuZ3JvdXAsXHJcbiAgICAgICAgICAgICAgdGhpcy5ncm91cC5yZWZlcmVuY2VJZFxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXR1cm4gb2Yoe30pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSksXHJcbiAgICAgIHN3aXRjaE1hcCgoem1vZGVsKSA9PiB7XHJcbiAgICAgICAgaWYgKHRoaXMuZ3JvdXAucGFyZW50UmVmZXJlbmNlRmllbGQpIHtcclxuICAgICAgICAgIHRoaXMuZ3JvdXAucGFyZW50UmVmZXJlbmNlSWQgPSB0aGlzLmdyb3VwLnpNb2RlbFtcclxuICAgICAgICAgICAgdGhpcy5ncm91cC5wYXJlbnRSZWZlcmVuY2VGaWVsZFxyXG4gICAgICAgICAgXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubWFpblNlcnZpY2UuYWZ0ZXJQYWdlSW5pdGlhbGlzZSh0aGlzLmdyb3VwKTtcclxuICAgICAgfSksXHJcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubWFpblNlcnZpY2UudHJhbnNsYXRpb25QYWdlRWxlbWVudCh0aGlzLmdyb3VwKVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICAgIC8vIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgLy8gICBjb25zb2xlLmxvZyhcIkF0IGFjdGl2aXR5LW9uZS5wYWdlIG5nT25Jbml0KCkgY29tcGxldGVkXCIpO1xyXG4gICAgLy8gICB0aGlzLmdyb3VwLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgLy8gfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldHVwUm91dGVQYXJhbXMocm91dGVQYXJhbTogc3RyaW5nKSB7XHJcbiAgICAvL2xldCBhY3ROYW1lID0gcm91dGVQYXRoLmdldChcImFjdFwiKTtcclxuICAgIGNvbnN0IHJvdXRlUGFyYW1zID0gcm91dGVQYXJhbS5zcGxpdCgnLycpO1xyXG4gICAgY29uc3QgZm9ybUlkID0gcm91dGVQYXJhbXNbcm91dGVQYXJhbXMubGVuZ3RoIC0gMl07XHJcbiAgICBjb25zdCBhY3ROYW1lID0gcm91dGVQYXJhbXNbcm91dGVQYXJhbXMubGVuZ3RoIC0gMV07XHJcblxyXG4gICAgdGhpcy5ncm91cC5pc05ldyA9IGFjdE5hbWUgPT09IFwibmV3XCIgPyB0cnVlIDogZmFsc2U7XHJcbiAgICB0aGlzLmdyb3VwLmlzRWRpdCA9IGFjdE5hbWUgPT09IFwiZWRpdFwiID8gdHJ1ZSA6IGZhbHNlO1xyXG5cclxuICAgIGlmIChhY3ROYW1lID09PSBcImVkaXRcIikge1xyXG4gICAgICB0aGlzLmdyb3VwLnJlZmVyZW5jZUlkID0gZm9ybUlkO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAoYWN0TmFtZSA9PT0gXCJuZXdcIikge1xyXG4gICAgICB0aGlzLmdyb3VwLnBhcmVudFJlZmVyZW5jZUlkID0gZm9ybUlkO1xyXG5cclxuICAgICAgaWYgKHRoaXMuZ3JvdXAucGFyZW50UmVmZXJlbmNlSWQpIHtcclxuICAgICAgICBpZiAodGhpcy5ncm91cC5wYXJlbnRSZWZlcmVuY2VGaWVsZCkge1xyXG4gICAgICAgICAgdGhpcy5ncm91cC56TW9kZWxbdGhpcy5ncm91cC5wYXJlbnRSZWZlcmVuY2VGaWVsZF0gPSB0aGlzLmdyb3VwLnBhcmVudFJlZmVyZW5jZUlkLnRvU3RyaW5nKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiZ3JvdXAucGFyZW50UmVmZXJlbmNlSWQgaXMgdW5kZWZpbmVkLlwiKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChhY3ROYW1lKSB7XHJcbiAgICAgIHRoaXMuZ3JvdXAuYWN0TmFtZSA9IGFjdE5hbWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwYWdlRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGNvbnNvbGUubG9nKHRoaXMuZ3JvdXAucGFnZU5hbWUgKyBcIiBuZ09uRGVzdHJveS5cIik7XHJcbiAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|