ngx-rs-ant 1.8.7 → 1.8.9
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/box-container/PluginManager.mjs +2 -1
- package/esm2020/data-grid/data-grid.service.mjs +4 -3
- package/esm2020/form/form.component.mjs +10 -8
- package/esm2020/types/component/form-item-component-base.mjs +1 -1
- package/esm2020/util/UniqueId.mjs +10 -0
- package/esm2020/util/utils.mjs +16 -6
- package/fesm2015/ngx-rs-ant.mjs +104 -85
- package/fesm2015/ngx-rs-ant.mjs.map +1 -1
- package/fesm2020/ngx-rs-ant.mjs +38 -15
- package/fesm2020/ngx-rs-ant.mjs.map +1 -1
- package/form/form.component.d.ts +2 -1
- package/package.json +1 -1
- package/types/component/form-item-component-base.d.ts +4 -0
- package/util/UniqueId.d.ts +6 -0
- package/util/utils.d.ts +3 -2
|
@@ -44,6 +44,7 @@ export class PluginManager {
|
|
|
44
44
|
return;
|
|
45
45
|
}
|
|
46
46
|
instance.editMode = boxItem.boxContainer.editMode;
|
|
47
|
+
instance.validationGroupName = boxItem.boxContainer.context?.__form.uniqueId;
|
|
47
48
|
instance.tenant = boxItem.boxContainer.context?.__form.tenant;
|
|
48
49
|
instance.className = boxItem.boxContainer.context?.__form.className;
|
|
49
50
|
instance.oid = boxItem.boxContainer.context?.__form.oid;
|
|
@@ -227,4 +228,4 @@ export class PluginManager {
|
|
|
227
228
|
PluginManager.hoverItems = [];
|
|
228
229
|
PluginManager.activeItem = new Subject();
|
|
229
230
|
PluginManager.activeItems = {};
|
|
230
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGx1Z2luTWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ycy1hbnQvc3JjL2JveC1jb250YWluZXIvUGx1Z2luTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDM0UsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUU3QixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQztBQUN0RixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUNoRyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDM0UsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0seURBQXlELENBQUM7QUFDNUYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDekUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDekUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDbEYsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDbEYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDM0UsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUUzQyxNQUFNLE9BQU8sYUFBYTtJQUt4QixNQUFNLENBQUMsZUFBZSxDQUFDLE9BQXlCLEVBQUUsS0FBYSxFQUFFLEtBQVUsRUFBRSxNQUFXO1FBQ3RGLElBQUksTUFBTSxHQUFRLGFBQWEsQ0FBQyxHQUFHLENBQUMs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SSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztvQkFDdEUsQ0FBQyxDQUFDLENBQUM7aUJBQ0o7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUNILFFBQVEsQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQztTQUM5RTthQUFNO1lBQ0wsc0JBQXNCLENBQUMsZUFBZSxDQUFDLG9CQUFvQixDQUFDLENBQUM7U0FDOUQ7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLGNBQWMsQ0FBQyxxQkFBdUMsRUFBRSxJQUFTO1FBQ3RFLHFCQUFxQixDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDVCxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUMzRCxPQUFPO1NBQ1I7UUFDRCxNQUFNLFlBQVksR0FBRyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDM0UsTUFBTSxRQUFRLEdBQVEsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUM1QyxRQUFRLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDOUIsQ0FBQzs7QUFwTk0sd0JBQVUsR0FBVSxFQUFFLENBQUM7QUFDdkIsd0JBQVUsR0FBRyxJQUFJLE9BQU8sRUFBNkIsQ0FBQztBQUN0RCx5QkFBVyxHQUEwQixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudFJlZiwgVmlld0NvbnRhaW5lclJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7UGx1Z2luRmFjdG9yeX0gZnJvbSAnY29hc3QtcGx1Z2luLXJlZ2lzdGVyJztcclxuaW1wb3J0IHtQbHVnaW5BY3RpdmVDb21wb25lbnR9IGZyb20gJy4vcGx1Z2luLWFjdGl2ZS9wbHVnaW4tYWN0aXZlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7UGx1Z2luSG92ZXJDb21wb25lbnR9IGZyb20gJy4vcGx1Z2luLWhvdmVyL3BsdWdpbi1ob3Zlci5jb21wb25lbnQnO1xyXG5pbXBvcnQge1N1YmplY3R9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge0JveEl0ZW1Db21wb25lbnR9IGZyb20gJy4vYm94LWl0ZW0vYm94LWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHtQbHVnaW5Ob3RGb3VuZENvbXBvbmVudH0gZnJvbSBcIi4vcGx1Z2luLW5vdC1mb3VuZC9wbHVnaW4tbm90LWZvdW5kLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0NvbmZpZ0JsYW5rQ29tcG9uZW50fSBmcm9tIFwiLi9ib3gtaXRlbS9pdGVtLWNvbmZpZy9jb25maWctYmxhbmsvY29uZmlnLWJsYW5rLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1N0eWxlQ29tcG9uZW50fSBmcm9tIFwiLi9ib3gtaXRlbS9pdGVtLXN0eWxlL3N0eWxlL3N0eWxlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1N0eWxlQmxhbmtDb21wb25lbnR9IGZyb20gXCIuL2JveC1pdGVtL2l0ZW0tc3R5bGUvc3R5bGUtYmxhbmsvc3R5bGUtYmxhbmsuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7Rm9ybUl0ZW1Db25maWdCYXNlfSBmcm9tIFwiLi4vdHlwZXMvY29uZmlnL2Zvcm0taXRlbS1jb25maWctYmFzZVwiO1xyXG5pbXBvcnQge1BhZ2VJdGVtQ29uZmlnQmFzZX0gZnJvbSBcIi4uL3R5cGVzL2NvbmZpZy9wYWdlLWl0ZW0tY29uZmlnLWJhc2VcIjtcclxuaW1wb3J0IHtQYWdlSXRlbUNvbXBvbmVudEJhc2V9IGZyb20gXCIuLi90eXBlcy9jb21wb25lbnQvcGFnZS1pdGVtLWNvbXBvbmVudC1iYXNlXCI7XHJcbmltcG9ydCB7Rm9ybUl0ZW1Db21wb25lbnRCYXNlfSBmcm9tIFwiLi4vdHlwZXMvY29tcG9uZW50L2Zvcm0taXRlbS1jb21wb25lbnQtYmFzZVwiO1xyXG5pbXBvcnQge01vZGFsQ29tcG9uZW50QmFzZX0gZnJvbSBcIi4uL3R5cGVzL2NvbXBvbmVudC9tb2RhbC1jb21wb25lbnQtYmFzZVwiO1xyXG5pbXBvcnQge25vdGlmeV9lcnJvcn0gZnJvbSBcIi4uL3V0aWwvdXRpbHNcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBQbHVnaW5NYW5hZ2VyIHtcclxuICBzdGF0aWMgaG92ZXJJdGVtczogYW55W10gPSBbXTtcclxuICBzdGF0aWMgYWN0aXZlSXRlbSA9IG5ldyBTdWJqZWN0PHsgaWQ6IHN5bWJvbCwgaXRlbTogYW55IH0+KCk7XHJcbiAgc3RhdGljIGFjdGl2ZUl0ZW1zOiB7IFtpZDogc3ltYm9sXTogYW55IH0gPSB7fTtcclxuXHJcbiAgc3RhdGljIGNyZWF0ZUNvbXBvbmVudChib3hJdGVtOiBCb3hJdGVtQ29tcG9uZW50LCBpbmRleDogbnVtYmVyLCBzdHlsZTogYW55LCBjb25maWc6IGFueSk6IGFueSB7XHJcbiAgICBsZXQgcGx1Z2luOiBhbnkgPSBQbHVnaW5GYWN0b3J5LmdldChjb25maWcubmFtZSk7XHJcbiAgICBpZiAoIXBsdWdpbikge1xyXG4gICAgICBjb25zb2xlLmVycm9yKCd1bmRlZmluZWQgcGx1Z2luOiAnICsgY29uZmlnLm5hbWUpO1xyXG4gICAgICBwbHVnaW4gPSB7XHJcbiAgICAgICAgY29tcG9uZW50OiBQbHVnaW5Ob3RGb3VuZENvbXBvbmVudCxcclxuICAgICAgICBuYW1lOiBjb25maWcubmFtZSxcclxuICAgICAgICBjYXB0aW9uOiBjb25maWcubmFtZVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBjb25zdCB2aWV3Q29udGFpbmVyUmVmOiBhbnkgPSBib3hJdGVtLml0ZW1Ib3N0cy5nZXQoaW5kZXgpPy52aWV3Q29udGFpbmVyUmVmO1xyXG4gICAgdmlld0NvbnRhaW5lclJlZi5jbGVhcigpO1xyXG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gdmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQocGx1Z2luLmNvbXBvbmVudCk7XHJcbiAgICBjb25zdCBpbnN0YW5jZTogYW55ID0gY29tcG9uZW50UmVmLmluc3RhbmNlO1xyXG4gICAgT2JqZWN0LmFzc2lnbihpbnN0YW5jZSwgY29uZmlnLnBsdWdpbkNvbmZpZyk7XHJcbiAgICBpZiAoUGx1Z2luRmFjdG9yeS5oYXNUeXBlKHBsdWdpbiwgJ3BhZ2UnKSkge1xyXG4gICAgICBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIFBhZ2VJdGVtQ29tcG9uZW50QmFzZSkpIHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKCdwYWdlIGl0ZW0gY29tcG9uZW50IG5lZWQgZXh0ZW5kaW5nIFBhZ2VJdGVtQ29tcG9uZW50QmFzZSwgbmFtZTogJyArIGNvbmZpZy5uYW1lKTtcclxuICAgICAgICBub3RpZnlfZXJyb3IoJ+WKoOi9vemhtemdoue7hOS7tuWksei0pe+8micgKyBjb25maWcubmFtZSk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGluc3RhbmNlLmVkaXRNb2RlID0gYm94SXRlbS5ib3hDb250YWluZXIuZWRpdE1vZGU7XHJcbiAgICAgIGluc3RhbmNlLnRhYklkID0gYm94SXRlbS5ib3hDb250YWluZXIuY29udGV4dD8uX190YWJJZDtcclxuICAgIH1cclxuICAgIGlmIChQbHVnaW5GYWN0b3J5Lmhhc1R5cGUocGx1Z2luLCAnZm9ybScpKSB7XHJcbiAgICAgIGlmICghKGluc3RhbmNlIGluc3RhbmNlb2YgRm9ybUl0ZW1Db21wb25lbnRCYXNlKSkge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ2Zvcm0gaXRlbSBjb21wb25lbnQgbmVlZCBleHRlbmRpbmcgRm9ybUl0ZW1Db21wb25lbnRCYXNlLCBuYW1lOiAnICsgY29uZmlnLm5hbWUpO1xyXG4gICAgICAgIG5vdGlmeV9lcnJvcign5Yqg6L296KGo5Y2V57uE5Lu25aSx6LSl77yaJyArIGNvbmZpZy5uYW1lKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgaW5zdGFuY2UuZWRpdE1vZGUgPSBib3hJdGVtLmJveENvbnRhaW5lci5lZGl0TW9kZTtcclxuICAgICAgaW5zdGFuY2UudGVuYW50ID0gYm94SXRlbS5ib3hDb250YWluZXIuY29udGV4dD8uX19mb3JtLnRlbmFudDtcclxuICAgICAgaW5zdGFuY2UuY2xhc3NOYW1lID0gYm94SXRlbS5ib3hDb250YWluZXIuY29udGV4dD8uX19mb3JtLmNsYXNzTmFtZTtcclxuICAgICAgaW5zdGFuY2Uub2lkID0gYm94SXRlbS5ib3hDb250YWluZXIuY29udGV4dD8uX19mb3JtLm9pZDtcclxuICAgICAgaW5zdGFuY2UubW9kZWwgPSBib3hJdGVtLmJveENvbnRhaW5lci5jb250ZXh0Py5fX21vZGVsO1xyXG4gICAgICBpbnN0YW5jZS5vcGVuZXIgPSBib3hJdGVtLmJveENvbnRhaW5lci5jb250ZXh0Py5fX29wZW5lcjtcclxuICAgICAgaWYgKGJveEl0ZW0uYm94Q29udGFpbmVyLnJlYWRvbmx5KSB7XHJcbiAgICAgICAgaW5zdGFuY2UucmVhZG9ubHkgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAoUGx1Z2luRmFjdG9yeS5oYXNUeXBlKHBsdWdpbiwgJ21vZGFsJykpIHtcclxuICAgICAgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBNb2RhbENvbXBvbmVudEJhc2UpKSB7XHJcbiAgICAgICAgY29uc29sZS5lcnJvcignbW9kYWwgY29tcG9uZW50IG5lZWQgZXh0ZW5kaW5nIE1vZGFsQ29tcG9uZW50QmFzZSwgbmFtZTogJyArIGNvbmZpZy5uYW1lKTtcclxuICAgICAgICBub3RpZnlfZXJyb3IoJ+WKoOi9veaooeeql+e7hOS7tuWksei0pe+8micgKyBjb25maWcubmFtZSk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGluc3RhbmNlLm9wZW5lciA9IGJveEl0ZW0uYm94Q29udGFpbmVyLmNvbnRleHQ/Ll9fb3BlbmVyO1xyXG4gICAgfVxyXG4gICAgaW5zdGFuY2UucGFyYW1zID0gYm94SXRlbS5ib3hDb250YWluZXIucGFyYW1zO1xyXG4gICAgaW5zdGFuY2UudGFiVmlld0NvbnRhaW5lclJlZiA9IGJveEl0ZW0uYm94Q29udGFpbmVyLnRhYlZpZXdDb250YWluZXJSZWY7XHJcbiAgICBpZiAoYm94SXRlbS5ib3hDb250YWluZXIuZWRpdE1vZGUpIHtcclxuICAgICAgaW5zdGFuY2Uub25SZW1vdmUgPSAoKSA9PiB7XHJcbiAgICAgICAgYm94SXRlbS5jb25maWcubGlzdC5zcGxpY2UoaW5kZXgsIDEsIHt0eXBlOiAnYmxhbmsnLCBzdHlsZTogYm94SXRlbS5jb25maWcubGlzdFtpbmRleF0uc3R5bGV9KTtcclxuICAgICAgICBib3hJdGVtLmxvYWQoKTtcclxuICAgICAgfTtcclxuICAgICAgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuc3R5bGUubWFyZ2luID0gJzhweCc7XHJcbiAgICAgIGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LnN0eWxlLnBvaW50ZXJFdmVudHMgPSAnYWxsJztcclxuICAgICAgZm9yIChsZXQgY2hpbGQgb2YgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW4pIHtcclxuICAgICAgICBjaGlsZC5zdHlsZS5wb2ludGVyRXZlbnRzID0gJ25vbmUnO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuY3JlYXRlSG92ZXJDb21wb25lbnQodmlld0NvbnRhaW5lclJlZiwgY29tcG9uZW50UmVmLCBwbHVnaW4uY2FwdGlvbik7XHJcbiAgICAgIHRoaXMuY3JlYXRlQWN0aXZlQ29tcG9uZW50KGJveEl0ZW0sIGluZGV4LCBjb21wb25lbnRSZWYsIHN0eWxlLCB7XHJcbiAgICAgICAgY2FwdGlvbjogcGx1Z2luLmNhcHRpb24sXHJcbiAgICAgICAgY29uZmlnXHJcbiAgICAgIH0sIHRydWUpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGNvbXBvbmVudFJlZjtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBjcmVhdGVIb3ZlckNvbXBvbmVudCh2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+LCBjYXB0aW9uOiBzdHJpbmcpOiBhbnkge1xyXG4gICAgY29uc3QgaG92ZXJDb21wb25lbnRSZWYgPSB2aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChQbHVnaW5Ib3ZlckNvbXBvbmVudCk7XHJcbiAgICBob3ZlckNvbXBvbmVudFJlZi5pbnN0YW5jZS5uYW1lID0gY2FwdGlvbjtcclxuICAgIGhvdmVyQ29tcG9uZW50UmVmLmluc3RhbmNlLnRhcmdldEVsZW1lbnQgPSBjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudDtcclxuICAgIGNvbnN0IGhvdmVyRWxlbWVudCA9IGhvdmVyQ29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudC5hcHBlbmRDaGlsZChob3ZlckVsZW1lbnQpO1xyXG4gICAgdGhpcy5ob3Zlckl0ZW1zLnB1c2goY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VlbnRlcicsICgkZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICBmb3IgKGxldCBob3Zlckl0ZW0gb2YgdGhpcy5ob3Zlckl0ZW1zKSB7XHJcbiAgICAgICAgaG92ZXJJdGVtLmNsYXNzTGlzdC5yZW1vdmUoJ3BsdWdpbi1ob3ZlcicpO1xyXG4gICAgICB9XHJcbiAgICAgICRldmVudC50YXJnZXQuY2xhc3NMaXN0LmFkZCgncGx1Z2luLWhvdmVyJyk7XHJcbiAgICB9KTtcclxuICAgIGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCAoJGV2ZW50OiBhbnkpID0+IHtcclxuICAgICAgJGV2ZW50LnRhcmdldC5jbGFzc0xpc3QucmVtb3ZlKCdwbHVnaW4taG92ZXInKTtcclxuICAgICAgJGV2ZW50LnRhcmdldC5wYXJlbnRFbGVtZW50LnBhcmVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgncGx1Z2luLWhvdmVyJyk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBob3ZlckNvbXBvbmVudFJlZjtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBjcmVhdGVBY3RpdmVDb21wb25lbnQoYm94SXRlbTogQm94SXRlbUNvbXBvbmVudCwgaW5kZXg6IG51bWJlciwgY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55PixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiBhbnksIGNvbmZpZzogYW55LCBzaG93Q2xvc2U6IGJvb2xlYW4pOiBhbnkge1xyXG4gICAgY29uc3QgaWQgPSBib3hJdGVtLmJveENvbnRhaW5lci5pZDtcclxuICAgIGNvbnN0IHZpZXdDb250YWluZXJSZWY6IGFueSA9IGJveEl0ZW0uaXRlbUhvc3RzLmdldChpbmRleCk/LnZpZXdDb250YWluZXJSZWY7XHJcbiAgICBjb25zdCBhY3RpdmVDb21wb25lbnRSZWYgPSB2aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChQbHVnaW5BY3RpdmVDb21wb25lbnQpO1xyXG4gICAgYWN0aXZlQ29tcG9uZW50UmVmLmluc3RhbmNlLm5hbWUgPSBjb25maWcuY2FwdGlvbjtcclxuICAgIGFjdGl2ZUNvbXBvbmVudFJlZi5pbnN0YW5jZS5zaG93Q2xvc2UgPSBzaG93Q2xvc2U7XHJcbiAgICBhY3RpdmVDb21wb25lbnRSZWYuaW5zdGFuY2UudGFyZ2V0RWxlbWVudCA9IGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50O1xyXG4gICAgY29uc3QgYWN0aXZlRWxlbWVudCA9IGFjdGl2ZUNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50O1xyXG4gICAgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuYXBwZW5kQ2hpbGQoYWN0aXZlRWxlbWVudCk7XHJcbiAgICBpZiAodGhpcy5hY3RpdmVJdGVtc1tpZF0pIHtcclxuICAgICAgdGhpcy5hY3RpdmVJdGVtc1tpZF0ucHVzaChjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmFjdGl2ZUl0ZW1zW2lkXSA9IFtjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudF07XHJcbiAgICB9XHJcbiAgICBjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgkZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgIGZvciAobGV0IGFjdGl2ZUl0ZW0gb2YgdGhpcy5hY3RpdmVJdGVtc1tpZF0pIHtcclxuICAgICAgICBhY3RpdmVJdGVtLmNsYXNzTGlzdC5yZW1vdmUoJ3BsdWdpbi1hY3RpdmUnKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5hY3RpdmVJdGVtc1tpZF0uaW5kZXhPZigkZXZlbnQudGFyZ2V0KSA8IDApIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5hY3RpdmVJdGVtLm5leHQoe1xyXG4gICAgICAgIGlkLFxyXG4gICAgICAgIGl0ZW06IHtib3hJdGVtLCBpbmRleCwgc3R5bGUsIGNvbmZpZzogY29uZmlnLmNvbmZpZywgY29tcG9uZW50UmVmfVxyXG4gICAgICB9KTtcclxuICAgICAgJGV2ZW50LnRhcmdldC5jbGFzc0xpc3QuYWRkKCdwbHVnaW4tYWN0aXZlJyk7XHJcbiAgICB9KTtcclxuICAgIGFjdGl2ZUNvbXBvbmVudFJlZi5pbnN0YW5jZS5zcGxpdEl0ZW0gPSAoZGlyZWN0aW9uOiAncm93JyB8ICdjb2x1bW4nKSA9PiB7XHJcbiAgICAgIGlmIChib3hJdGVtLmNvbmZpZy5kaXJlY3Rpb24gPT09IGRpcmVjdGlvbikge1xyXG4gICAgICAgIGJveEl0ZW0uY29uZmlnLmxpc3Quc3BsaWNlKGluZGV4ICsgMSwgMCwge3R5cGU6ICdibGFuaycsIHN0eWxlOiB7fX0pO1xyXG4gICAgICAgIGJveEl0ZW0ubG9hZCgpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmIChib3hJdGVtLmNvbmZpZy5saXN0Lmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICAgICAgYm94SXRlbS5jb25maWcuZGlyZWN0aW9uID0gZGlyZWN0aW9uO1xyXG4gICAgICAgICAgYm94SXRlbS5jb25maWcubGlzdC5wdXNoKHt0eXBlOiAnYmxhbmsnLCBzdHlsZToge319KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgaWYgKGJveEl0ZW0uY29uZmlnLmxpc3RbaW5kZXhdLnR5cGUgPT09ICdpdGVtJyAmJiBib3hJdGVtLmNvbmZpZy5saXN0W2luZGV4XS5jb25maWcuZGlyZWN0aW9uID09PSBkaXJlY3Rpb24pIHtcclxuICAgICAgICAgICAgYm94SXRlbS5jb25maWcubGlzdFtpbmRleF0uY29uZmlnLmxpc3QucHVzaCh7dHlwZTogJ2JsYW5rJywgc3R5bGU6IHt9fSk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBib3hJdGVtLmNvbmZpZy5saXN0LnNwbGljZShpbmRleCwgMSwge1xyXG4gICAgICAgICAgICAgIHR5cGU6ICdpdGVtJyxcclxuICAgICAgICAgICAgICBzdHlsZTogYm94SXRlbS5jb25maWcubGlzdFtpbmRleF0uc3R5bGUsXHJcbiAgICAgICAgICAgICAgY29uZmlnOiB7XHJcbiAgICAgICAgICAgICAgICBkaXJlY3Rpb24sXHJcbiAgICAgICAgICAgICAgICBsaXN0OiBbYm94SXRlbS5jb25maWcubGlzdFtpbmRleF0sIHt0eXBlOiAnYmxhbmsnLCBzdHlsZToge319XVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJveEl0ZW0ubG9hZCgpO1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgYWN0aXZlQ29tcG9uZW50UmVmLmluc3RhbmNlLml0ZW1SZW1vdmUuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5hY3RpdmVJdGVtLm5leHQoe1xyXG4gICAgICAgIGlkLFxyXG4gICAgICAgIGl0ZW06ICcnXHJcbiAgICAgIH0pO1xyXG4gICAgICB2aWV3Q29udGFpbmVyUmVmLmNsZWFyKCk7XHJcbiAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5vblJlbW92ZSgpO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gYWN0aXZlQ29tcG9uZW50UmVmO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHJlc2V0SXRlbUNvbmZpZyhpdGVtQ29uZmlnQ29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBpdGVtOiBhbnksIGNvbnRleHQ/OiBhbnkpIHtcclxuICAgIGl0ZW1Db25maWdDb250YWluZXJSZWYuY2xlYXIoKTtcclxuICAgIGlmICghaXRlbSkge1xyXG4gICAgICBpdGVtQ29uZmlnQ29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChDb25maWdCbGFua0NvbXBvbmVudCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IHBsdWdpbiA9IFBsdWdpbkZhY3RvcnkuZ2V0KGl0ZW0uY29uZmlnPy5uYW1lKTtcclxuICAgIGNvbnN0IHBsdWdpbkNvbmZpZyA9IFBsdWdpbkZhY3RvcnkuZ2V0Q29uZmlnKGl0ZW0uY29uZmlnPy5uYW1lKTtcclxuICAgIGlmIChwbHVnaW5Db25maWcpIHtcclxuICAgICAgY29uc3QgY29tcG9uZW50UmVmID0gaXRlbUNvbmZpZ0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQocGx1Z2luQ29uZmlnLmNvbXBvbmVudCk7XHJcbiAgICAgIGNvbnN0IGluc3RhbmNlOiBhbnkgPSBjb21wb25lbnRSZWYuaW5zdGFuY2U7XHJcbiAgICAgIGlmIChQbHVnaW5GYWN0b3J5Lmhhc1R5cGUocGx1Z2luLCAncGFnZScpKSB7XHJcbiAgICAgICAgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBQYWdlSXRlbUNvbmZpZ0Jhc2UpKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdwYWdlIGl0ZW0gY29tcG9uZW50IGNvbmZpZyBuZWVkIGV4dGVuZGluZyBQYWdlSXRlbUNvbmZpZ0Jhc2UsIG5hbWU6ICcgKyBwbHVnaW4ubmFtZSk7XHJcbiAgICAgICAgICBub3RpZnlfZXJyb3IoJ+WKoOi9vemhtemdoue7hOS7tumFjee9ruWksei0pe+8micgKyBwbHVnaW4ubmFtZSk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChQbHVnaW5GYWN0b3J5Lmhhc1R5cGUocGx1Z2luLCAnZm9ybScpKSB7XHJcbiAgICAgICAgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBGb3JtSXRlbUNvbmZpZ0Jhc2UpKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdmb3JtIGl0ZW0gY29tcG9uZW50IGNvbmZpZyBuZWVkIGV4dGVuZGluZyBGb3JtSXRlbUNvbmZpZ0Jhc2UsIG5hbWU6ICcgKyBwbHVnaW4ubmFtZSk7XHJcbiAgICAgICAgICBub3RpZnlfZXJyb3IoJ+WKoOi9veihqOWNlee7hOS7tumFjee9ruWksei0pe+8micgKyBwbHVnaW4ubmFtZSk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGluc3RhbmNlLnRlbmFudCA9IGNvbnRleHQ/LnRlbmFudDtcclxuICAgICAgICBpbnN0YW5jZS5jbGFzc05hbWUgPSBjb250ZXh0Py5jbGFzc05hbWU7XHJcbiAgICAgICAgaW5zdGFuY2UuZmllbGRUcmVlID0gY29udGV4dD8uZmllbGRUcmVlO1xyXG4gICAgICB9XHJcbiAgICAgIGluc3RhbmNlLmNvbmZpZyA9IGl0ZW0uY29uZmlnLnBsdWdpbkNvbmZpZztcclxuICAgICAgaW5zdGFuY2UuY29uZmlnQ2hhbmdlLnN1YnNjcmliZSgocmVsb2FkPzogYm9vbGVhbikgPT4ge1xyXG4gICAgICAgIGlmIChyZWxvYWQpIHtcclxuICAgICAgICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IFBsdWdpbk1hbmFnZXIuY3JlYXRlQ29tcG9uZW50KGl0ZW0uYm94SXRlbSwgaXRlbS5pbmRleCwgaXRlbS5zdHlsZSwgaXRlbS5jb25maWcpO1xyXG4gICAgICAgICAgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oaXRlbS5jb21wb25lbnRSZWYuaW5zdGFuY2UsIGl0ZW0uY29uZmlnLnBsdWdpbkNvbmZpZyk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICBpbnN0YW5jZS50YWJWaWV3Q29udGFpbmVyUmVmID0gaXRlbS5ib3hJdGVtLmJveENvbnRhaW5lci50YWJWaWV3Q29udGFpbmVyUmVmO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaXRlbUNvbmZpZ0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQoQ29uZmlnQmxhbmtDb21wb25lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIHJlc2V0SXRlbVN0eWxlKGl0ZW1TdHlsZUNvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZiwgaXRlbTogYW55KSB7XHJcbiAgICBpdGVtU3R5bGVDb250YWluZXJSZWYuY2xlYXIoKTtcclxuICAgIGlmICghaXRlbSkge1xyXG4gICAgICBpdGVtU3R5bGVDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KFN0eWxlQmxhbmtDb21wb25lbnQpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSBpdGVtU3R5bGVDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KFN0eWxlQ29tcG9uZW50KTtcclxuICAgIGNvbnN0IGluc3RhbmNlOiBhbnkgPSBjb21wb25lbnRSZWYuaW5zdGFuY2U7XHJcbiAgICBpbnN0YW5jZS5zdHlsZSA9IGl0ZW0uc3R5bGU7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
231
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGx1Z2luTWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ycy1hbnQvc3JjL2JveC1jb250YWluZXIvUGx1Z2luTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDM0UsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUU3QixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQztBQUN0RixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUNoRyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDM0UsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0seURBQXlELENBQUM7QUFDNUYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDekUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDekUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDbEYsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDbEYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDM0UsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUUzQyxNQUFNLE9BQU8sYUFBYTtJQUt4QixNQUFNLENBQUMsZUFBZSxDQUFDLE9BQXlCLEVBQUUsS0FBYSxFQUFFLEtBQVUsRUFBRSxNQUFXO1FBQ3RGLElBQUksTUFBTSxHQUFRLGFBQWEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLG9CQUFvQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsRCxNQUFNLEdBQUc7Z0JBQ1AsU0FBUyxFQUFFLHVCQUF1QjtnQkFDbEMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO2dCQUNqQixPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUk7YUFDckIsQ0FBQTtTQUNGO1FBQ0QsTUFBTSxnQkFBZ0IsR0FBUSxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQztRQUM3RSxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN6QixNQUFNLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sUUFBUSxHQUFRLFlBQVksQ0FBQyxRQUFRLENBQUM7UUFDNUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdDLElBQUksYUFBYSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUU7WUFDekMsSUFBSSxDQUFDLENBQUMsUUFBUSxZQUFZLHFCQUFxQixDQUFDLEVBQUU7Z0JBQ2hELE9BQU8sQ0FBQyxLQUFLLENBQUMsa0VBQWtFLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNoRyxZQUFZLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDeEMsT0FBTzthQUNSO1lBQ0QsUUFBUSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztZQUNsRCxRQUFRLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQztTQUN4RDtRQUNELElBQUksYUFBYSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUU7WUFDekMsSUFBSSxDQUFDLENBQUMsUUFBUSxZQUFZLHFCQUFxQixDQUFDLEVBQUU7Z0JBQ2hELE9BQU8sQ0FBQyxLQUFLLENBQUMsa0VBQWtFLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNoRyxZQUFZLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDeEMsT0FBTzthQUNSO1lBQ0QsUUFBUSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztZQUNsRCxRQUFRLENBQUMsbUJBQW1CLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQztZQUM3RSxRQUFRLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUM7WUFDOUQsUUFBUSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDO1lBQ3BFLFFBQVEsQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQztZQUN4RCxRQUFRLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQztZQUN2RCxRQUFRLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQztZQUN6RCxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFO2dCQUNqQyxRQUFRLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQzthQUMxQjtTQUNGO1FBQ0QsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBRTtZQUMxQyxJQUFJLENBQUMsQ0FBQyxRQUFRLFlBQVksa0JBQWtCLENBQUMsRUFBRTtnQkFDN0MsT0FBTyxDQUFDLEtBQUssQ0FBQywyREFBMkQsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3pGLFlBQVksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUN4QyxPQUFPO2FBQ1I7WUFDRCxRQUFRLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQztTQUMxRDtRQUNELFFBQVEsQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFDOUMsUUFBUSxDQUFDLG1CQUFtQixHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsbUJBQW1CLENBQUM7UUFDeEUsSUFBSSxPQUFPLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRTtZQUNqQyxRQUFRLENBQUMsUUFBUSxHQUFHLEdBQUcsRUFBRTtnQkFDdkIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUMsQ0FBQyxDQUFDO2dCQUMvRixPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDakIsQ0FBQyxDQUFDO1lBQ0YsWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7WUFDekQsWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7WUFDaEUsS0FBSyxJQUFJLEtBQUssSUFBSSxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUU7Z0JBQzlELEtBQUssQ0FBQyxLQUFLLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQzthQUNwQztZQUNELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUU7Z0JBQzlELE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTztnQkFDdkIsTUFBTTthQUNQLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxNQUFNLENBQUMsb0JBQW9CLENBQUMsZ0JBQWtDLEVBQUUsWUFBK0IsRUFBRSxPQUFlO1FBQzlHLE1BQU0saUJBQWlCLEdBQUcsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDakYsaUJBQWlCLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUM7UUFDMUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLGFBQWEsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQztRQUMvRSxNQUFNLFlBQVksR0FBRyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO1FBQzlELFlBQVksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzFELFlBQVksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxDQUFDLE1BQVcsRUFBRSxFQUFFO1lBQ2pGLEtBQUssSUFBSSxTQUFTLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDckMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7YUFDNUM7WUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDOUMsQ0FBQyxDQUFDLENBQUM7UUFDSCxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxNQUFXLEVBQUUsRUFBRTtZQUNqRixNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDL0MsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDMUUsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLGlCQUFpQixDQUFDO0lBQzNCLENBQUM7SUFFRCxNQUFNLENBQUMscUJBQXFCLENBQUMsT0FBeUIsRUFBRSxLQUFhLEVBQUUsWUFBK0IsRUFDekUsS0FBVSxFQUFFLE1BQVcsRUFBRSxTQUFrQjtRQUN0RSxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLGdCQUFnQixHQUFRLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLGdCQUFnQixDQUFDO1FBQzdFLE1BQU0sa0JBQWtCLEdBQUcsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDbkYsa0JBQWtCLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQ2xELGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQ2xELGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7UUFDaEYsTUFBTSxhQUFhLEdBQUcsa0JBQWtCLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQztRQUNoRSxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDL0QsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDaEU7YUFBTTtZQUNMLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQzlEO1FBQ0QsWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLENBQUMsTUFBVyxFQUFFLEVBQUU7WUFDNUUsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3pCLEtBQUssSUFBSSxVQUFVLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFDM0MsVUFBVSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7YUFDOUM7WUFDRCxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ25ELE9BQU87YUFDUjtZQUNELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO2dCQUNuQixFQUFFO2dCQUNGLElBQUksRUFBRSxFQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLFlBQVksRUFBQzthQUNuRSxDQUFDLENBQUM7WUFDSCxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDL0MsQ0FBQyxDQUFDLENBQUM7UUFDSCxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsU0FBUyxHQUFHLENBQUMsU0FBMkIsRUFBRSxFQUFFO1lBQ3RFLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEtBQUssU0FBUyxFQUFFO2dCQUMxQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUMsQ0FBQyxDQUFDO2dCQUNyRSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDaEI7aUJBQU07Z0JBQ0wsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO29CQUNwQyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7b0JBQ3JDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBQyxDQUFDLENBQUM7aUJBQ3REO3FCQUFNO29CQUNMLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBRTt3QkFDM0csT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUMsQ0FBQyxDQUFDO3FCQUN6RTt5QkFBTTt3QkFDTCxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRTs0QkFDbkMsSUFBSSxFQUFFLE1BQU07NEJBQ1osS0FBSyxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUs7NEJBQ3ZDLE1BQU0sRUFBRTtnQ0FDTixTQUFTO2dDQUNULElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFDLENBQUM7NkJBQy9EO3lCQUNGLENBQUMsQ0FBQztxQkFDSjtpQkFDRjtnQkFDRCxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDaEI7UUFDSCxDQUFDLENBQUM7UUFDRixrQkFBa0IsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDcEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7Z0JBQ25CLEVBQUU7Z0JBQ0YsSUFBSSxFQUFFLEVBQUU7YUFDVCxDQUFDLENBQUM7WUFDSCxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUN6QixZQUFZLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ25DLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxrQkFBa0IsQ0FBQztJQUM1QixDQUFDO0lBRUQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxzQkFBd0MsRUFBRSxJQUFTLEVBQUUsT0FBYTtRQUN2RixzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMvQixJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1Qsc0JBQXNCLENBQUMsZUFBZSxDQUFDLG9CQUFvQixDQUFDLENBQUM7WUFDN0QsT0FBTztTQUNSO1FBQ0QsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3BELE1BQU0sWUFBWSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNoRSxJQUFJLFlBQVksRUFBRTtZQUNoQixNQUFNLFlBQVksR0FBRyxzQkFBc0IsQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3BGLE1BQU0sUUFBUSxHQUFRLFlBQVksQ0FBQyxRQUFRLENBQUM7WUFDNUMsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsRUFBRTtnQkFDekMsSUFBSSxDQUFDLENBQUMsUUFBUSxZQUFZLGtCQUFrQixDQUFDLEVBQUU7b0JBQzdDLE9BQU8sQ0FBQyxLQUFLLENBQUMsc0VBQXNFLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNwRyxZQUFZLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDMUMsT0FBTztpQkFDUjthQUNGO1lBQ0QsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsRUFBRTtnQkFDekMsSUFBSSxDQUFDLENBQUMsUUFBUSxZQUFZLGtCQUFrQixDQUFDLEVBQUU7b0JBQzdDLE9BQU8sQ0FBQyxLQUFLLENBQUMsc0VBQXNFLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNwRyxZQUFZLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDMUMsT0FBTztpQkFDUjtnQkFDRCxRQUFRLENBQUMsTUFBTSxHQUFHLE9BQU8sRUFBRSxNQUFNLENBQUM7Z0JBQ2xDLFFBQVEsQ0FBQyxTQUFTLEdBQUcsT0FBTyxFQUFFLFNBQVMsQ0FBQztnQkFDeEMsUUFBUSxDQUFDLFNBQVMsR0FBRyxPQUFPLEVBQUUsU0FBUyxDQUFDO2FBQ3pDO1lBQ0QsUUFBUSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQztZQUMzQyxRQUFRLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQWdCLEVBQUUsRUFBRTtnQkFDbkQsSUFBSSxNQUFNLEVBQUU7b0JBQ1YsTUFBTSxZQUFZLEdBQUcsYUFBYSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ3RHLFlBQVksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO2lCQUM3QztxQkFBTTtvQkFDTCxVQUFVLENBQUMsR0FBRyxFQUFFO3dCQUNkLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztvQkFDdEUsQ0FBQyxDQUFDLENBQUM7aUJBQ0o7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUNILFFBQVEsQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQztTQUM5RTthQUFNO1lBQ0wsc0JBQXNCLENBQUMsZUFBZSxDQUFDLG9CQUFvQixDQUFDLENBQUM7U0FDOUQ7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLGNBQWMsQ0FBQyxxQkFBdUMsRUFBRSxJQUFTO1FBQ3RFLHFCQUFxQixDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDVCxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUMzRCxPQUFPO1NBQ1I7UUFDRCxNQUFNLFlBQVksR0FBRyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDM0UsTUFBTSxRQUFRLEdBQVEsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUM1QyxRQUFRLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDOUIsQ0FBQzs7QUFyTk0sd0JBQVUsR0FBVSxFQUFFLENBQUM7QUFDdkIsd0JBQVUsR0FBRyxJQUFJLE9BQU8sRUFBNkIsQ0FBQztBQUN0RCx5QkFBVyxHQUEwQixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudFJlZiwgVmlld0NvbnRhaW5lclJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7UGx1Z2luRmFjdG9yeX0gZnJvbSAnY29hc3QtcGx1Z2luLXJlZ2lzdGVyJztcclxuaW1wb3J0IHtQbHVnaW5BY3RpdmVDb21wb25lbnR9IGZyb20gJy4vcGx1Z2luLWFjdGl2ZS9wbHVnaW4tYWN0aXZlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7UGx1Z2luSG92ZXJDb21wb25lbnR9IGZyb20gJy4vcGx1Z2luLWhvdmVyL3BsdWdpbi1ob3Zlci5jb21wb25lbnQnO1xyXG5pbXBvcnQge1N1YmplY3R9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge0JveEl0ZW1Db21wb25lbnR9IGZyb20gJy4vYm94LWl0ZW0vYm94LWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHtQbHVnaW5Ob3RGb3VuZENvbXBvbmVudH0gZnJvbSBcIi4vcGx1Z2luLW5vdC1mb3VuZC9wbHVnaW4tbm90LWZvdW5kLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0NvbmZpZ0JsYW5rQ29tcG9uZW50fSBmcm9tIFwiLi9ib3gtaXRlbS9pdGVtLWNvbmZpZy9jb25maWctYmxhbmsvY29uZmlnLWJsYW5rLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1N0eWxlQ29tcG9uZW50fSBmcm9tIFwiLi9ib3gtaXRlbS9pdGVtLXN0eWxlL3N0eWxlL3N0eWxlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1N0eWxlQmxhbmtDb21wb25lbnR9IGZyb20gXCIuL2JveC1pdGVtL2l0ZW0tc3R5bGUvc3R5bGUtYmxhbmsvc3R5bGUtYmxhbmsuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7Rm9ybUl0ZW1Db25maWdCYXNlfSBmcm9tIFwiLi4vdHlwZXMvY29uZmlnL2Zvcm0taXRlbS1jb25maWctYmFzZVwiO1xyXG5pbXBvcnQge1BhZ2VJdGVtQ29uZmlnQmFzZX0gZnJvbSBcIi4uL3R5cGVzL2NvbmZpZy9wYWdlLWl0ZW0tY29uZmlnLWJhc2VcIjtcclxuaW1wb3J0IHtQYWdlSXRlbUNvbXBvbmVudEJhc2V9IGZyb20gXCIuLi90eXBlcy9jb21wb25lbnQvcGFnZS1pdGVtLWNvbXBvbmVudC1iYXNlXCI7XHJcbmltcG9ydCB7Rm9ybUl0ZW1Db21wb25lbnRCYXNlfSBmcm9tIFwiLi4vdHlwZXMvY29tcG9uZW50L2Zvcm0taXRlbS1jb21wb25lbnQtYmFzZVwiO1xyXG5pbXBvcnQge01vZGFsQ29tcG9uZW50QmFzZX0gZnJvbSBcIi4uL3R5cGVzL2NvbXBvbmVudC9tb2RhbC1jb21wb25lbnQtYmFzZVwiO1xyXG5pbXBvcnQge25vdGlmeV9lcnJvcn0gZnJvbSBcIi4uL3V0aWwvdXRpbHNcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBQbHVnaW5NYW5hZ2VyIHtcclxuICBzdGF0aWMgaG92ZXJJdGVtczogYW55W10gPSBbXTtcclxuICBzdGF0aWMgYWN0aXZlSXRlbSA9IG5ldyBTdWJqZWN0PHsgaWQ6IHN5bWJvbCwgaXRlbTogYW55IH0+KCk7XHJcbiAgc3RhdGljIGFjdGl2ZUl0ZW1zOiB7IFtpZDogc3ltYm9sXTogYW55IH0gPSB7fTtcclxuXHJcbiAgc3RhdGljIGNyZWF0ZUNvbXBvbmVudChib3hJdGVtOiBCb3hJdGVtQ29tcG9uZW50LCBpbmRleDogbnVtYmVyLCBzdHlsZTogYW55LCBjb25maWc6IGFueSk6IGFueSB7XHJcbiAgICBsZXQgcGx1Z2luOiBhbnkgPSBQbHVnaW5GYWN0b3J5LmdldChjb25maWcubmFtZSk7XHJcbiAgICBpZiAoIXBsdWdpbikge1xyXG4gICAgICBjb25zb2xlLmVycm9yKCd1bmRlZmluZWQgcGx1Z2luOiAnICsgY29uZmlnLm5hbWUpO1xyXG4gICAgICBwbHVnaW4gPSB7XHJcbiAgICAgICAgY29tcG9uZW50OiBQbHVnaW5Ob3RGb3VuZENvbXBvbmVudCxcclxuICAgICAgICBuYW1lOiBjb25maWcubmFtZSxcclxuICAgICAgICBjYXB0aW9uOiBjb25maWcubmFtZVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBjb25zdCB2aWV3Q29udGFpbmVyUmVmOiBhbnkgPSBib3hJdGVtLml0ZW1Ib3N0cy5nZXQoaW5kZXgpPy52aWV3Q29udGFpbmVyUmVmO1xyXG4gICAgdmlld0NvbnRhaW5lclJlZi5jbGVhcigpO1xyXG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gdmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQocGx1Z2luLmNvbXBvbmVudCk7XHJcbiAgICBjb25zdCBpbnN0YW5jZTogYW55ID0gY29tcG9uZW50UmVmLmluc3RhbmNlO1xyXG4gICAgT2JqZWN0LmFzc2lnbihpbnN0YW5jZSwgY29uZmlnLnBsdWdpbkNvbmZpZyk7XHJcbiAgICBpZiAoUGx1Z2luRmFjdG9yeS5oYXNUeXBlKHBsdWdpbiwgJ3BhZ2UnKSkge1xyXG4gICAgICBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIFBhZ2VJdGVtQ29tcG9uZW50QmFzZSkpIHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKCdwYWdlIGl0ZW0gY29tcG9uZW50IG5lZWQgZXh0ZW5kaW5nIFBhZ2VJdGVtQ29tcG9uZW50QmFzZSwgbmFtZTogJyArIGNvbmZpZy5uYW1lKTtcclxuICAgICAgICBub3RpZnlfZXJyb3IoJ+WKoOi9vemhtemdoue7hOS7tuWksei0pe+8micgKyBjb25maWcubmFtZSk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGluc3RhbmNlLmVkaXRNb2RlID0gYm94SXRlbS5ib3hDb250YWluZXIuZWRpdE1vZGU7XHJcbiAgICAgIGluc3RhbmNlLnRhYklkID0gYm94SXRlbS5ib3hDb250YWluZXIuY29udGV4dD8uX190YWJJZDtcclxuICAgIH1cclxuICAgIGlmIChQbHVnaW5GYWN0b3J5Lmhhc1R5cGUocGx1Z2luLCAnZm9ybScpKSB7XHJcbiAgICAgIGlmICghKGluc3RhbmNlIGluc3RhbmNlb2YgRm9ybUl0ZW1Db21wb25lbnRCYXNlKSkge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ2Zvcm0gaXRlbSBjb21wb25lbnQgbmVlZCBleHRlbmRpbmcgRm9ybUl0ZW1Db21wb25lbnRCYXNlLCBuYW1lOiAnICsgY29uZmlnLm5hbWUpO1xyXG4gICAgICAgIG5vdGlmeV9lcnJvcign5Yqg6L296KGo5Y2V57uE5Lu25aSx6LSl77yaJyArIGNvbmZpZy5uYW1lKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgaW5zdGFuY2UuZWRpdE1vZGUgPSBib3hJdGVtLmJveENvbnRhaW5lci5lZGl0TW9kZTtcclxuICAgICAgaW5zdGFuY2UudmFsaWRhdGlvbkdyb3VwTmFtZSA9IGJveEl0ZW0uYm94Q29udGFpbmVyLmNvbnRleHQ/Ll9fZm9ybS51bmlxdWVJZDtcclxuICAgICAgaW5zdGFuY2UudGVuYW50ID0gYm94SXRlbS5ib3hDb250YWluZXIuY29udGV4dD8uX19mb3JtLnRlbmFudDtcclxuICAgICAgaW5zdGFuY2UuY2xhc3NOYW1lID0gYm94SXRlbS5ib3hDb250YWluZXIuY29udGV4dD8uX19mb3JtLmNsYXNzTmFtZTtcclxuICAgICAgaW5zdGFuY2Uub2lkID0gYm94SXRlbS5ib3hDb250YWluZXIuY29udGV4dD8uX19mb3JtLm9pZDtcclxuICAgICAgaW5zdGFuY2UubW9kZWwgPSBib3hJdGVtLmJveENvbnRhaW5lci5jb250ZXh0Py5fX21vZGVsO1xyXG4gICAgICBpbnN0YW5jZS5vcGVuZXIgPSBib3hJdGVtLmJveENvbnRhaW5lci5jb250ZXh0Py5fX29wZW5lcjtcclxuICAgICAgaWYgKGJveEl0ZW0uYm94Q29udGFpbmVyLnJlYWRvbmx5KSB7XHJcbiAgICAgICAgaW5zdGFuY2UucmVhZG9ubHkgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAoUGx1Z2luRmFjdG9yeS5oYXNUeXBlKHBsdWdpbiwgJ21vZGFsJykpIHtcclxuICAgICAgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBNb2RhbENvbXBvbmVudEJhc2UpKSB7XHJcbiAgICAgICAgY29uc29sZS5lcnJvcignbW9kYWwgY29tcG9uZW50IG5lZWQgZXh0ZW5kaW5nIE1vZGFsQ29tcG9uZW50QmFzZSwgbmFtZTogJyArIGNvbmZpZy5uYW1lKTtcclxuICAgICAgICBub3RpZnlfZXJyb3IoJ+WKoOi9veaooeeql+e7hOS7tuWksei0pe+8micgKyBjb25maWcubmFtZSk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGluc3RhbmNlLm9wZW5lciA9IGJveEl0ZW0uYm94Q29udGFpbmVyLmNvbnRleHQ/Ll9fb3BlbmVyO1xyXG4gICAgfVxyXG4gICAgaW5zdGFuY2UucGFyYW1zID0gYm94SXRlbS5ib3hDb250YWluZXIucGFyYW1zO1xyXG4gICAgaW5zdGFuY2UudGFiVmlld0NvbnRhaW5lclJlZiA9IGJveEl0ZW0uYm94Q29udGFpbmVyLnRhYlZpZXdDb250YWluZXJSZWY7XHJcbiAgICBpZiAoYm94SXRlbS5ib3hDb250YWluZXIuZWRpdE1vZGUpIHtcclxuICAgICAgaW5zdGFuY2Uub25SZW1vdmUgPSAoKSA9PiB7XHJcbiAgICAgICAgYm94SXRlbS5jb25maWcubGlzdC5zcGxpY2UoaW5kZXgsIDEsIHt0eXBlOiAnYmxhbmsnLCBzdHlsZTogYm94SXRlbS5jb25maWcubGlzdFtpbmRleF0uc3R5bGV9KTtcclxuICAgICAgICBib3hJdGVtLmxvYWQoKTtcclxuICAgICAgfTtcclxuICAgICAgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuc3R5bGUubWFyZ2luID0gJzhweCc7XHJcbiAgICAgIGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LnN0eWxlLnBvaW50ZXJFdmVudHMgPSAnYWxsJztcclxuICAgICAgZm9yIChsZXQgY2hpbGQgb2YgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW4pIHtcclxuICAgICAgICBjaGlsZC5zdHlsZS5wb2ludGVyRXZlbnRzID0gJ25vbmUnO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuY3JlYXRlSG92ZXJDb21wb25lbnQodmlld0NvbnRhaW5lclJlZiwgY29tcG9uZW50UmVmLCBwbHVnaW4uY2FwdGlvbik7XHJcbiAgICAgIHRoaXMuY3JlYXRlQWN0aXZlQ29tcG9uZW50KGJveEl0ZW0sIGluZGV4LCBjb21wb25lbnRSZWYsIHN0eWxlLCB7XHJcbiAgICAgICAgY2FwdGlvbjogcGx1Z2luLmNhcHRpb24sXHJcbiAgICAgICAgY29uZmlnXHJcbiAgICAgIH0sIHRydWUpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGNvbXBvbmVudFJlZjtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBjcmVhdGVIb3ZlckNvbXBvbmVudCh2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+LCBjYXB0aW9uOiBzdHJpbmcpOiBhbnkge1xyXG4gICAgY29uc3QgaG92ZXJDb21wb25lbnRSZWYgPSB2aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChQbHVnaW5Ib3ZlckNvbXBvbmVudCk7XHJcbiAgICBob3ZlckNvbXBvbmVudFJlZi5pbnN0YW5jZS5uYW1lID0gY2FwdGlvbjtcclxuICAgIGhvdmVyQ29tcG9uZW50UmVmLmluc3RhbmNlLnRhcmdldEVsZW1lbnQgPSBjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudDtcclxuICAgIGNvbnN0IGhvdmVyRWxlbWVudCA9IGhvdmVyQ29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudC5hcHBlbmRDaGlsZChob3ZlckVsZW1lbnQpO1xyXG4gICAgdGhpcy5ob3Zlckl0ZW1zLnB1c2goY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VlbnRlcicsICgkZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICBmb3IgKGxldCBob3Zlckl0ZW0gb2YgdGhpcy5ob3Zlckl0ZW1zKSB7XHJcbiAgICAgICAgaG92ZXJJdGVtLmNsYXNzTGlzdC5yZW1vdmUoJ3BsdWdpbi1ob3ZlcicpO1xyXG4gICAgICB9XHJcbiAgICAgICRldmVudC50YXJnZXQuY2xhc3NMaXN0LmFkZCgncGx1Z2luLWhvdmVyJyk7XHJcbiAgICB9KTtcclxuICAgIGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCAoJGV2ZW50OiBhbnkpID0+IHtcclxuICAgICAgJGV2ZW50LnRhcmdldC5jbGFzc0xpc3QucmVtb3ZlKCdwbHVnaW4taG92ZXInKTtcclxuICAgICAgJGV2ZW50LnRhcmdldC5wYXJlbnRFbGVtZW50LnBhcmVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgncGx1Z2luLWhvdmVyJyk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBob3ZlckNvbXBvbmVudFJlZjtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBjcmVhdGVBY3RpdmVDb21wb25lbnQoYm94SXRlbTogQm94SXRlbUNvbXBvbmVudCwgaW5kZXg6IG51bWJlciwgY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55PixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiBhbnksIGNvbmZpZzogYW55LCBzaG93Q2xvc2U6IGJvb2xlYW4pOiBhbnkge1xyXG4gICAgY29uc3QgaWQgPSBib3hJdGVtLmJveENvbnRhaW5lci5pZDtcclxuICAgIGNvbnN0IHZpZXdDb250YWluZXJSZWY6IGFueSA9IGJveEl0ZW0uaXRlbUhvc3RzLmdldChpbmRleCk/LnZpZXdDb250YWluZXJSZWY7XHJcbiAgICBjb25zdCBhY3RpdmVDb21wb25lbnRSZWYgPSB2aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChQbHVnaW5BY3RpdmVDb21wb25lbnQpO1xyXG4gICAgYWN0aXZlQ29tcG9uZW50UmVmLmluc3RhbmNlLm5hbWUgPSBjb25maWcuY2FwdGlvbjtcclxuICAgIGFjdGl2ZUNvbXBvbmVudFJlZi5pbnN0YW5jZS5zaG93Q2xvc2UgPSBzaG93Q2xvc2U7XHJcbiAgICBhY3RpdmVDb21wb25lbnRSZWYuaW5zdGFuY2UudGFyZ2V0RWxlbWVudCA9IGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50O1xyXG4gICAgY29uc3QgYWN0aXZlRWxlbWVudCA9IGFjdGl2ZUNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50O1xyXG4gICAgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuYXBwZW5kQ2hpbGQoYWN0aXZlRWxlbWVudCk7XHJcbiAgICBpZiAodGhpcy5hY3RpdmVJdGVtc1tpZF0pIHtcclxuICAgICAgdGhpcy5hY3RpdmVJdGVtc1tpZF0ucHVzaChjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmFjdGl2ZUl0ZW1zW2lkXSA9IFtjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudF07XHJcbiAgICB9XHJcbiAgICBjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgkZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgIGZvciAobGV0IGFjdGl2ZUl0ZW0gb2YgdGhpcy5hY3RpdmVJdGVtc1tpZF0pIHtcclxuICAgICAgICBhY3RpdmVJdGVtLmNsYXNzTGlzdC5yZW1vdmUoJ3BsdWdpbi1hY3RpdmUnKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5hY3RpdmVJdGVtc1tpZF0uaW5kZXhPZigkZXZlbnQudGFyZ2V0KSA8IDApIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5hY3RpdmVJdGVtLm5leHQoe1xyXG4gICAgICAgIGlkLFxyXG4gICAgICAgIGl0ZW06IHtib3hJdGVtLCBpbmRleCwgc3R5bGUsIGNvbmZpZzogY29uZmlnLmNvbmZpZywgY29tcG9uZW50UmVmfVxyXG4gICAgICB9KTtcclxuICAgICAgJGV2ZW50LnRhcmdldC5jbGFzc0xpc3QuYWRkKCdwbHVnaW4tYWN0aXZlJyk7XHJcbiAgICB9KTtcclxuICAgIGFjdGl2ZUNvbXBvbmVudFJlZi5pbnN0YW5jZS5zcGxpdEl0ZW0gPSAoZGlyZWN0aW9uOiAncm93JyB8ICdjb2x1bW4nKSA9PiB7XHJcbiAgICAgIGlmIChib3hJdGVtLmNvbmZpZy5kaXJlY3Rpb24gPT09IGRpcmVjdGlvbikge1xyXG4gICAgICAgIGJveEl0ZW0uY29uZmlnLmxpc3Quc3BsaWNlKGluZGV4ICsgMSwgMCwge3R5cGU6ICdibGFuaycsIHN0eWxlOiB7fX0pO1xyXG4gICAgICAgIGJveEl0ZW0ubG9hZCgpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmIChib3hJdGVtLmNvbmZpZy5saXN0Lmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICAgICAgYm94SXRlbS5jb25maWcuZGlyZWN0aW9uID0gZGlyZWN0aW9uO1xyXG4gICAgICAgICAgYm94SXRlbS5jb25maWcubGlzdC5wdXNoKHt0eXBlOiAnYmxhbmsnLCBzdHlsZToge319KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgaWYgKGJveEl0ZW0uY29uZmlnLmxpc3RbaW5kZXhdLnR5cGUgPT09ICdpdGVtJyAmJiBib3hJdGVtLmNvbmZpZy5saXN0W2luZGV4XS5jb25maWcuZGlyZWN0aW9uID09PSBkaXJlY3Rpb24pIHtcclxuICAgICAgICAgICAgYm94SXRlbS5jb25maWcubGlzdFtpbmRleF0uY29uZmlnLmxpc3QucHVzaCh7dHlwZTogJ2JsYW5rJywgc3R5bGU6IHt9fSk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBib3hJdGVtLmNvbmZpZy5saXN0LnNwbGljZShpbmRleCwgMSwge1xyXG4gICAgICAgICAgICAgIHR5cGU6ICdpdGVtJyxcclxuICAgICAgICAgICAgICBzdHlsZTogYm94SXRlbS5jb25maWcubGlzdFtpbmRleF0uc3R5bGUsXHJcbiAgICAgICAgICAgICAgY29uZmlnOiB7XHJcbiAgICAgICAgICAgICAgICBkaXJlY3Rpb24sXHJcbiAgICAgICAgICAgICAgICBsaXN0OiBbYm94SXRlbS5jb25maWcubGlzdFtpbmRleF0sIHt0eXBlOiAnYmxhbmsnLCBzdHlsZToge319XVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJveEl0ZW0ubG9hZCgpO1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgYWN0aXZlQ29tcG9uZW50UmVmLmluc3RhbmNlLml0ZW1SZW1vdmUuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5hY3RpdmVJdGVtLm5leHQoe1xyXG4gICAgICAgIGlkLFxyXG4gICAgICAgIGl0ZW06ICcnXHJcbiAgICAgIH0pO1xyXG4gICAgICB2aWV3Q29udGFpbmVyUmVmLmNsZWFyKCk7XHJcbiAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5vblJlbW92ZSgpO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gYWN0aXZlQ29tcG9uZW50UmVmO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHJlc2V0SXRlbUNvbmZpZyhpdGVtQ29uZmlnQ29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBpdGVtOiBhbnksIGNvbnRleHQ/OiBhbnkpIHtcclxuICAgIGl0ZW1Db25maWdDb250YWluZXJSZWYuY2xlYXIoKTtcclxuICAgIGlmICghaXRlbSkge1xyXG4gICAgICBpdGVtQ29uZmlnQ29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChDb25maWdCbGFua0NvbXBvbmVudCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IHBsdWdpbiA9IFBsdWdpbkZhY3RvcnkuZ2V0KGl0ZW0uY29uZmlnPy5uYW1lKTtcclxuICAgIGNvbnN0IHBsdWdpbkNvbmZpZyA9IFBsdWdpbkZhY3RvcnkuZ2V0Q29uZmlnKGl0ZW0uY29uZmlnPy5uYW1lKTtcclxuICAgIGlmIChwbHVnaW5Db25maWcpIHtcclxuICAgICAgY29uc3QgY29tcG9uZW50UmVmID0gaXRlbUNvbmZpZ0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQocGx1Z2luQ29uZmlnLmNvbXBvbmVudCk7XHJcbiAgICAgIGNvbnN0IGluc3RhbmNlOiBhbnkgPSBjb21wb25lbnRSZWYuaW5zdGFuY2U7XHJcbiAgICAgIGlmIChQbHVnaW5GYWN0b3J5Lmhhc1R5cGUocGx1Z2luLCAncGFnZScpKSB7XHJcbiAgICAgICAgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBQYWdlSXRlbUNvbmZpZ0Jhc2UpKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdwYWdlIGl0ZW0gY29tcG9uZW50IGNvbmZpZyBuZWVkIGV4dGVuZGluZyBQYWdlSXRlbUNvbmZpZ0Jhc2UsIG5hbWU6ICcgKyBwbHVnaW4ubmFtZSk7XHJcbiAgICAgICAgICBub3RpZnlfZXJyb3IoJ+WKoOi9vemhtemdoue7hOS7tumFjee9ruWksei0pe+8micgKyBwbHVnaW4ubmFtZSk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChQbHVnaW5GYWN0b3J5Lmhhc1R5cGUocGx1Z2luLCAnZm9ybScpKSB7XHJcbiAgICAgICAgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBGb3JtSXRlbUNvbmZpZ0Jhc2UpKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdmb3JtIGl0ZW0gY29tcG9uZW50IGNvbmZpZyBuZWVkIGV4dGVuZGluZyBGb3JtSXRlbUNvbmZpZ0Jhc2UsIG5hbWU6ICcgKyBwbHVnaW4ubmFtZSk7XHJcbiAgICAgICAgICBub3RpZnlfZXJyb3IoJ+WKoOi9veihqOWNlee7hOS7tumFjee9ruWksei0pe+8micgKyBwbHVnaW4ubmFtZSk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGluc3RhbmNlLnRlbmFudCA9IGNvbnRleHQ/LnRlbmFudDtcclxuICAgICAgICBpbnN0YW5jZS5jbGFzc05hbWUgPSBjb250ZXh0Py5jbGFzc05hbWU7XHJcbiAgICAgICAgaW5zdGFuY2UuZmllbGRUcmVlID0gY29udGV4dD8uZmllbGRUcmVlO1xyXG4gICAgICB9XHJcbiAgICAgIGluc3RhbmNlLmNvbmZpZyA9IGl0ZW0uY29uZmlnLnBsdWdpbkNvbmZpZztcclxuICAgICAgaW5zdGFuY2UuY29uZmlnQ2hhbmdlLnN1YnNjcmliZSgocmVsb2FkPzogYm9vbGVhbikgPT4ge1xyXG4gICAgICAgIGlmIChyZWxvYWQpIHtcclxuICAgICAgICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IFBsdWdpbk1hbmFnZXIuY3JlYXRlQ29tcG9uZW50KGl0ZW0uYm94SXRlbSwgaXRlbS5pbmRleCwgaXRlbS5zdHlsZSwgaXRlbS5jb25maWcpO1xyXG4gICAgICAgICAgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oaXRlbS5jb21wb25lbnRSZWYuaW5zdGFuY2UsIGl0ZW0uY29uZmlnLnBsdWdpbkNvbmZpZyk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICBpbnN0YW5jZS50YWJWaWV3Q29udGFpbmVyUmVmID0gaXRlbS5ib3hJdGVtLmJveENvbnRhaW5lci50YWJWaWV3Q29udGFpbmVyUmVmO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaXRlbUNvbmZpZ0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQoQ29uZmlnQmxhbmtDb21wb25lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIHJlc2V0SXRlbVN0eWxlKGl0ZW1TdHlsZUNvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZiwgaXRlbTogYW55KSB7XHJcbiAgICBpdGVtU3R5bGVDb250YWluZXJSZWYuY2xlYXIoKTtcclxuICAgIGlmICghaXRlbSkge1xyXG4gICAgICBpdGVtU3R5bGVDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KFN0eWxlQmxhbmtDb21wb25lbnQpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSBpdGVtU3R5bGVDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KFN0eWxlQ29tcG9uZW50KTtcclxuICAgIGNvbnN0IGluc3RhbmNlOiBhbnkgPSBjb21wb25lbnRSZWYuaW5zdGFuY2U7XHJcbiAgICBpbnN0YW5jZS5zdHlsZSA9IGl0ZW0uc3R5bGU7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -54,9 +54,10 @@ export class DataGridService {
|
|
|
54
54
|
}));
|
|
55
55
|
}
|
|
56
56
|
getConstraintEntries(tenant, name) {
|
|
57
|
-
return this.http.get('api/metadata/constraint
|
|
57
|
+
return this.http.get('api/metadata/constraint', {
|
|
58
58
|
params: {
|
|
59
|
-
tenant
|
|
59
|
+
tenant,
|
|
60
|
+
name
|
|
60
61
|
}
|
|
61
62
|
}).pipe(map(response => {
|
|
62
63
|
const entries = [];
|
|
@@ -155,4 +156,4 @@ DataGridService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", vers
|
|
|
155
156
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DataGridService, decorators: [{
|
|
156
157
|
type: Injectable
|
|
157
158
|
}], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
|
|
158
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9kYXRhLWdyaWQvZGF0YS1ncmlkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdkQsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLE1BQU0sQ0FBQzs7O0FBR3pCLE1BQU0sT0FBTyxlQUFlO0lBRzFCLFlBQW9CLElBQWdCO1FBQWhCLFNBQUksR0FBSixJQUFJLENBQVk7UUFGcEMsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUcvQyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsTUFBVyxFQUFFLFNBQWMsRUFBRSxJQUFVO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQU0sb0JBQW9CLEdBQUcsU0FBUyxFQUFFO1lBQzFELE1BQU0sRUFBRTtnQkFDTixNQUFNO2dCQUNOLElBQUksRUFBRSxJQUFJLElBQUksRUFBRTthQUNqQjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBVyxFQUFFLFNBQWMsRUFBRSxHQUFRLEVBQUUsUUFBYztRQUMxRCxJQUFJLEdBQUcsR0FBRyxXQUFXLEdBQUcsU0FBUyxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDOUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBTSxHQUFHLEVBQUU7WUFDN0IsTUFBTSxFQUFFO2dCQUNOLE1BQU07Z0JBQ04sUUFBUSxFQUFFLFFBQVEsSUFBSSxFQUFFO2FBQ3pCO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUFXLEVBQUUsU0FBYyxFQUFFLEdBQVEsRUFBRSxLQUFVLEVBQUUsSUFBVTtRQUMxRSxJQUFJLEdBQUcsR0FBRyxXQUFX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QUFDLEVBQUU7WUFDYixRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7Z0JBQ3pCLEtBQUssRUFBRSxFQUFFO2dCQUNULElBQUksRUFBRSxNQUFNO2FBQ2IsQ0FBQyxDQUFDO1lBQ0gsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO2dCQUN0QixLQUFLLEVBQUUsSUFBSTtnQkFDWCxJQUFJLEVBQUUsRUFBRTtnQkFDUixPQUFPLEVBQUUsS0FBSzthQUNmLENBQUMsQ0FBQztZQUNILE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxNQUFXLEVBQUUsU0FBYyxFQUFFLElBQVMsRUFBRSxLQUFVO1FBQ3BFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQU0saUJBQWlCLEVBQUU7WUFDM0MsTUFBTSxFQUFFO2dCQUNOLFFBQVEsRUFBRSwyREFBMkQ7Z0JBQ3JFLE1BQU07Z0JBQ04sU0FBUztnQkFDVCxJQUFJLEVBQUUsSUFBSSxJQUFJLEVBQUU7Z0JBQ2hCLEtBQUs7YUFDTjtTQUNGLENBQUMsQ0FBQyxJQUFJLENBQ0wsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ2IsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs7NkdBektVLGVBQWU7aUhBQWYsZUFBZTs0RkFBZixlQUFlO2tCQUQzQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFdmVudEVtaXR0ZXIsIEluamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0h0dHBDbGllbnR9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQge21hcH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIERhdGFHcmlkU2VydmljZSB7XHJcbiAgY2VsbFRlbXBsYXRlTG9hZGVkJCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7XHJcbiAgfVxyXG5cclxuICBnZXRNZXRhZGF0YUJ5Vmlldyh0ZW5hbnQ6IGFueSwgY2xhc3NOYW1lOiBhbnksIHZpZXc/OiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oJ2FwaS9tZXRhZGF0YS92aWV3LycgKyBjbGFzc05hbWUsIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgdGVuYW50LFxyXG4gICAgICAgIHZpZXc6IHZpZXcgfHwgJydcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRPbmUodGVuYW50OiBhbnksIGNsYXNzTmFtZTogYW55LCBvaWQ6IGFueSwgdGVtcGxhdGU/OiBhbnkpIHtcclxuICAgIGxldCBhcGkgPSAnYXBpL2RhdGEvJyArIGNsYXNzTmFtZSArICcvJyArIG9pZDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oYXBpLCB7XHJcbiAgICAgIHBhcmFtczoge1xyXG4gICAgICAgIHRlbmFudCxcclxuICAgICAgICB0ZW1wbGF0ZTogdGVtcGxhdGUgfHwgJydcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRPbmVCeUZpbHRlcih0ZW5hbnQ6IGFueSwgY2xhc3NOYW1lOiBhbnksIGtleTogYW55LCB2YWx1ZTogYW55LCB2aWV3PzogYW55KSB7XHJcbiAgICBsZXQgYXBpID0gJ2FwaS9kYXRhLycgKyBjbGFzc05hbWU7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KGFwaSwge1xyXG4gICAgICBwYXJhbXM6IHtcclxuICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgdmlldzogdmlldyB8fCAnJyxcclxuICAgICAgICBmaWx0ZXI6ICdbXCInICsga2V5ICsgJ1wiLFwiPVwiLFwiJyArIHZhbHVlICsgJ1wiXScsXHJcbiAgICAgICAgbGltaXQ6IDFcclxuICAgICAgfVxyXG4gICAgfSkucGlwZShcclxuICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICBpZiAocmVzcG9uc2UuZGF0YS5jb3VudCA9PT0gMSkge1xyXG4gICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGEubGlzdFswXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHt9O1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldE1hbnkodGVuYW50OiBhbnksIGNsYXNzTmFtZTogYW55LCBwYXJhbXM6IGFueSkge1xyXG4gICAgY29uc3QgYXBpID0gJ2FwaS9kYXRhLycgKyBjbGFzc05hbWU7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KGFwaSArIHBhcmFtcywge1xyXG4gICAgICBwYXJhbXM6IHtcclxuICAgICAgICB0ZW5hbnRcclxuICAgICAgfVxyXG4gICAgfSkucGlwZShcclxuICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgZGF0YTogcmVzcG9uc2UuZGF0YS5saXN0LFxyXG4gICAgICAgICAgdG90YWxDb3VudDogcmVzcG9uc2UuZGF0YS5jb3VudFxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRDb25zdHJhaW50RW50cmllcyh0ZW5hbnQ6IGFueSwgbmFtZTogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KCdhcGkvbWV0YWRhdGEvY29uc3RyYWludC8nICsgbmFtZSwge1xyXG4gICAgICBwYXJhbXM6IHtcclxuICAgICAgICB0ZW5hbnRcclxuICAgICAgfVxyXG4gICAgfSkucGlwZShcclxuICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICBjb25zdCBlbnRyaWVzID0gW107XHJcbiAgICAgICAgZm9yIChsZXQgZW50cnkgb2YgcmVzcG9uc2UuZGF0YSkge1xyXG4gICAgICAgICAgZW50cmllcy5wdXNoKHtcclxuICAgICAgICAgICAgc3RvcmU6IGVudHJ5LnN0b3JlLFxyXG4gICAgICAgICAgICBkaXNwbGF5OiBlbnRyeS5lbmFibGVkID8gZW50cnkuZGlzcGxheSA6IGVudHJ5LmRpc3BsYXkgKyAn77yI5bey56aB55So77yJJ1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBlbnRyaWVzO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldFVzZXJDb2x1bW5EYXRhU291cmNlKHRlbmFudDogYW55LCBjbGFzc05hbWU6IGFueSwgdmlldzogYW55LCBmaWVsZDogYW55KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KCdhcGkvZGF0YS9jdXN0b20nLCB7XHJcbiAgICAgIHBhcmFtczoge1xyXG4gICAgICAgIGV4ZWN1dG9yOiAnY29tLmNzLnN5c3RlbS5kYXRhLmdyaWQuaGVhZGVyLmZpbHRlci5HZXRVc2VyQ29sdW1uRGF0YVNvdXJjZScsXHJcbiAgICAgICAgdGVuYW50LFxyXG4gICAgICAgIGNsYXNzTmFtZSxcclxuICAgICAgICB2aWV3OiB2aWV3IHx8ICcnLFxyXG4gICAgICAgIGZpZWxkXHJcbiAgICAgIH1cclxuICAgIH0pLnBpcGUoXHJcbiAgICAgIG1hcChyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgcmVzcG9uc2UuZGF0YS5saXN0LnVuc2hpZnQoe1xyXG4gICAgICAgICAgdmFsdWU6ICcnLFxyXG4gICAgICAgICAgdGV4dDogJyjnqbrnmb0pJ1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJlc3BvbnNlLmRhdGEubGlzdC5wdXNoKHtcclxuICAgICAgICAgIHZhbHVlOiAnX18nLFxyXG4gICAgICAgICAgdGV4dDogJycsXHJcbiAgICAgICAgICB2aXNpYmxlOiBmYWxzZVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhLmxpc3Q7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0VW5pdENvbHVtbkRhdGFTb3VyY2UodGVuYW50OiBhbnksIGNsYXNzTmFtZTogYW55LCB2aWV3OiBhbnksIGZpZWxkOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oJ2FwaS9kYXRhL2N1c3RvbScsIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgZXhlY3V0b3I6ICdjb20uY3Muc3lzdGVtLmRhdGEuZ3JpZC5oZWFkZXIuZmlsdGVyLkdldFVuaXRDb2x1bW5EYXRhU291cmNlJyxcclxuICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgY2xhc3NOYW1lLFxyXG4gICAgICAgIHZpZXc6IHZpZXcgfHwgJycsXHJcbiAgICAgICAgZmllbGRcclxuICAgICAgfVxyXG4gICAgfSkucGlwZShcclxuICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICByZXNwb25zZS5kYXRhLmxpc3QudW5zaGlmdCh7XHJcbiAgICAgICAgICB2YWx1ZTogJycsXHJcbiAgICAgICAgICB0ZXh0OiAnKOepuueZvSknXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmVzcG9uc2UuZGF0YS5saXN0LnB1c2goe1xyXG4gICAgICAgICAgdmFsdWU6ICdfXycsXHJcbiAgICAgICAgICB0ZXh0OiAnJyxcclxuICAgICAgICAgIHZpc2libGU6IGZhbHNlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGEubGlzdDtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRDb25zdHJhaW50Q29sdW1uRGF0YVNvdXJjZSh0ZW5hbnQ6IGFueSwgY2xhc3NOYW1lOiBhbnksIHZpZXc6IGFueSwgZmllbGQ6IGFueSwgY29uc3RyYWludE5hbWU6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PignYXBpL2RhdGEvY3VzdG9tJywge1xyXG4gICAgICBwYXJhbXM6IHtcclxuICAgICAgICBleGVjdXRvcjogJ2NvbS5jcy5zeXN0ZW0uZGF0YS5ncmlkLmhlYWRlci5maWx0ZXIuR2V0Q29uc3RyYWludENvbHVtbkRhdGFTb3VyY2UnLFxyXG4gICAgICAgIHRlbmFudCxcclxuICAgICAgICBjbGFzc05hbWUsXHJcbiAgICAgICAgdmlldzogdmlldyB8fCAnJyxcclxuICAgICAgICBmaWVsZCxcclxuICAgICAgICBjb25zdHJhaW50TmFtZVxyXG4gICAgICB9XHJcbiAgICB9KS5waXBlKFxyXG4gICAgICBtYXAocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgIHJlc3BvbnNlLmRhdGEubGlzdC51bnNoaWZ0KHtcclxuICAgICAgICAgIHZhbHVlOiAnJyxcclxuICAgICAgICAgIHRleHQ6ICco56m655m9KSdcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXNwb25zZS5kYXRhLmxpc3QucHVzaCh7XHJcbiAgICAgICAgICB2YWx1ZTogJ19fJyxcclxuICAgICAgICAgIHRleHQ6ICcnLFxyXG4gICAgICAgICAgdmlzaWJsZTogZmFsc2VcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YS5saXN0O1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldENvbHVtbkRhdGFTb3VyY2UodGVuYW50OiBhbnksIGNsYXNzTmFtZTogYW55LCB2aWV3OiBhbnksIGZpZWxkOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oJ2FwaS9kYXRhL2N1c3RvbScsIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgZXhlY3V0b3I6ICdjb20uY3Muc3lzdGVtLmRhdGEuZ3JpZC5oZWFkZXIuZmlsdGVyLkdldENvbHVtbkRhdGFTb3VyY2UnLFxyXG4gICAgICAgIHRlbmFudCxcclxuICAgICAgICBjbGFzc05hbWUsXHJcbiAgICAgICAgdmlldzogdmlldyB8fCAnJyxcclxuICAgICAgICBmaWVsZFxyXG4gICAgICB9XHJcbiAgICB9KS5waXBlKFxyXG4gICAgICBtYXAocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhLmxpc3Q7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9kYXRhLWdyaWQvZGF0YS1ncmlkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdkQsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLE1BQU0sQ0FBQzs7O0FBR3pCLE1BQU0sT0FBTyxlQUFlO0lBRzFCLFlBQW9CLElBQWdCO1FBQWhCLFNBQUksR0FBSixJQUFJLENBQVk7UUFGcEMsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUcvQyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsTUFBVyxFQUFFLFNBQWMsRUFBRSxJQUFVO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQU0sb0JBQW9CLEdBQUcsU0FBUyxFQUFFO1lBQzFELE1BQU0sRUFBRTtnQkFDTixNQUFNO2dCQUNOLElBQUksRUFBRSxJQUFJLElBQUksRUFBRTthQUNqQjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBVyxFQUFFLFNBQWMsRUFBRSxHQUFRLEVBQUUsUUFBYztRQUMxRCxJQUFJLEdBQUcsR0FBRyxXQUFXLEdBQUcsU0FBUyxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDOUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBTSxHQUFHLEVBQUU7WUFDN0IsTUFBTSxFQUFFO2dCQUNOLE1BQU07Z0JBQ04sUUFBUSxFQUFFLFFBQVEsSUFBSSxFQUFFO2FBQ3pCO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUFXLEVBQUUsU0FBYyxFQUFFLEdBQVEsRUFBRSxLQUFVLEVBQUUsSUFBVTtRQUMxRSxJQUFJLEdBQUcsR0FBRyxXQUFX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Q0FBQyxFQUFFO1lBQ2IsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO2dCQUN6QixLQUFLLEVBQUUsRUFBRTtnQkFDVCxJQUFJLEVBQUUsTUFBTTthQUNiLENBQUMsQ0FBQztZQUNILFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztnQkFDdEIsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsSUFBSSxFQUFFLEVBQUU7Z0JBQ1IsT0FBTyxFQUFFLEtBQUs7YUFDZixDQUFDLENBQUM7WUFDSCxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsbUJBQW1CLENBQUMsTUFBVyxFQUFFLFNBQWMsRUFBRSxJQUFTLEVBQUUsS0FBVTtRQUNwRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFNLGlCQUFpQixFQUFFO1lBQzNDLE1BQU0sRUFBRTtnQkFDTixRQUFRLEVBQUUsMkRBQTJEO2dCQUNyRSxNQUFNO2dCQUNOLFNBQVM7Z0JBQ1QsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFO2dCQUNoQixLQUFLO2FBQ047U0FDRixDQUFDLENBQUMsSUFBSSxDQUNMLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNiLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OzZHQTFLVSxlQUFlO2lIQUFmLGVBQWU7NEZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RXZlbnRFbWl0dGVyLCBJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtIdHRwQ2xpZW50fSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHttYXB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBEYXRhR3JpZFNlcnZpY2Uge1xyXG4gIGNlbGxUZW1wbGF0ZUxvYWRlZCQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkge1xyXG4gIH1cclxuXHJcbiAgZ2V0TWV0YWRhdGFCeVZpZXcodGVuYW50OiBhbnksIGNsYXNzTmFtZTogYW55LCB2aWV3PzogYW55KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KCdhcGkvbWV0YWRhdGEvdmlldy8nICsgY2xhc3NOYW1lLCB7XHJcbiAgICAgIHBhcmFtczoge1xyXG4gICAgICAgIHRlbmFudCxcclxuICAgICAgICB2aWV3OiB2aWV3IHx8ICcnXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0T25lKHRlbmFudDogYW55LCBjbGFzc05hbWU6IGFueSwgb2lkOiBhbnksIHRlbXBsYXRlPzogYW55KSB7XHJcbiAgICBsZXQgYXBpID0gJ2FwaS9kYXRhLycgKyBjbGFzc05hbWUgKyAnLycgKyBvaWQ7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KGFwaSwge1xyXG4gICAgICBwYXJhbXM6IHtcclxuICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgdGVtcGxhdGU6IHRlbXBsYXRlIHx8ICcnXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0T25lQnlGaWx0ZXIodGVuYW50OiBhbnksIGNsYXNzTmFtZTogYW55LCBrZXk6IGFueSwgdmFsdWU6IGFueSwgdmlldz86IGFueSkge1xyXG4gICAgbGV0IGFwaSA9ICdhcGkvZGF0YS8nICsgY2xhc3NOYW1lO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihhcGksIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgdGVuYW50LFxyXG4gICAgICAgIHZpZXc6IHZpZXcgfHwgJycsXHJcbiAgICAgICAgZmlsdGVyOiAnW1wiJyArIGtleSArICdcIixcIj1cIixcIicgKyB2YWx1ZSArICdcIl0nLFxyXG4gICAgICAgIGxpbWl0OiAxXHJcbiAgICAgIH1cclxuICAgIH0pLnBpcGUoXHJcbiAgICAgIG1hcChyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BvbnNlLmRhdGEuY291bnQgPT09IDEpIHtcclxuICAgICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhLmxpc3RbMF07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB7fTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRNYW55KHRlbmFudDogYW55LCBjbGFzc05hbWU6IGFueSwgcGFyYW1zOiBhbnkpIHtcclxuICAgIGNvbnN0IGFwaSA9ICdhcGkvZGF0YS8nICsgY2xhc3NOYW1lO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PihhcGkgKyBwYXJhbXMsIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgdGVuYW50XHJcbiAgICAgIH1cclxuICAgIH0pLnBpcGUoXHJcbiAgICAgIG1hcChyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGRhdGE6IHJlc3BvbnNlLmRhdGEubGlzdCxcclxuICAgICAgICAgIHRvdGFsQ291bnQ6IHJlc3BvbnNlLmRhdGEuY291bnRcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29uc3RyYWludEVudHJpZXModGVuYW50OiBhbnksIG5hbWU6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PignYXBpL21ldGFkYXRhL2NvbnN0cmFpbnQnLCB7XHJcbiAgICAgIHBhcmFtczoge1xyXG4gICAgICAgIHRlbmFudCxcclxuICAgICAgICBuYW1lXHJcbiAgICAgIH1cclxuICAgIH0pLnBpcGUoXHJcbiAgICAgIG1hcChyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgY29uc3QgZW50cmllcyA9IFtdO1xyXG4gICAgICAgIGZvciAobGV0IGVudHJ5IG9mIHJlc3BvbnNlLmRhdGEpIHtcclxuICAgICAgICAgIGVudHJpZXMucHVzaCh7XHJcbiAgICAgICAgICAgIHN0b3JlOiBlbnRyeS5zdG9yZSxcclxuICAgICAgICAgICAgZGlzcGxheTogZW50cnkuZW5hYmxlZCA/IGVudHJ5LmRpc3BsYXkgOiBlbnRyeS5kaXNwbGF5ICsgJ++8iOW3suemgeeUqO+8iSdcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZW50cmllcztcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRVc2VyQ29sdW1uRGF0YVNvdXJjZSh0ZW5hbnQ6IGFueSwgY2xhc3NOYW1lOiBhbnksIHZpZXc6IGFueSwgZmllbGQ6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8YW55PignYXBpL2RhdGEvY3VzdG9tJywge1xyXG4gICAgICBwYXJhbXM6IHtcclxuICAgICAgICBleGVjdXRvcjogJ2NvbS5jcy5zeXN0ZW0uZGF0YS5ncmlkLmhlYWRlci5maWx0ZXIuR2V0VXNlckNvbHVtbkRhdGFTb3VyY2UnLFxyXG4gICAgICAgIHRlbmFudCxcclxuICAgICAgICBjbGFzc05hbWUsXHJcbiAgICAgICAgdmlldzogdmlldyB8fCAnJyxcclxuICAgICAgICBmaWVsZFxyXG4gICAgICB9XHJcbiAgICB9KS5waXBlKFxyXG4gICAgICBtYXAocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgIHJlc3BvbnNlLmRhdGEubGlzdC51bnNoaWZ0KHtcclxuICAgICAgICAgIHZhbHVlOiAnJyxcclxuICAgICAgICAgIHRleHQ6ICco56m655m9KSdcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXNwb25zZS5kYXRhLmxpc3QucHVzaCh7XHJcbiAgICAgICAgICB2YWx1ZTogJ19fJyxcclxuICAgICAgICAgIHRleHQ6ICcnLFxyXG4gICAgICAgICAgdmlzaWJsZTogZmFsc2VcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YS5saXN0O1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldFVuaXRDb2x1bW5EYXRhU291cmNlKHRlbmFudDogYW55LCBjbGFzc05hbWU6IGFueSwgdmlldzogYW55LCBmaWVsZDogYW55KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KCdhcGkvZGF0YS9jdXN0b20nLCB7XHJcbiAgICAgIHBhcmFtczoge1xyXG4gICAgICAgIGV4ZWN1dG9yOiAnY29tLmNzLnN5c3RlbS5kYXRhLmdyaWQuaGVhZGVyLmZpbHRlci5HZXRVbml0Q29sdW1uRGF0YVNvdXJjZScsXHJcbiAgICAgICAgdGVuYW50LFxyXG4gICAgICAgIGNsYXNzTmFtZSxcclxuICAgICAgICB2aWV3OiB2aWV3IHx8ICcnLFxyXG4gICAgICAgIGZpZWxkXHJcbiAgICAgIH1cclxuICAgIH0pLnBpcGUoXHJcbiAgICAgIG1hcChyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgcmVzcG9uc2UuZGF0YS5saXN0LnVuc2hpZnQoe1xyXG4gICAgICAgICAgdmFsdWU6ICcnLFxyXG4gICAgICAgICAgdGV4dDogJyjnqbrnmb0pJ1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJlc3BvbnNlLmRhdGEubGlzdC5wdXNoKHtcclxuICAgICAgICAgIHZhbHVlOiAnX18nLFxyXG4gICAgICAgICAgdGV4dDogJycsXHJcbiAgICAgICAgICB2aXNpYmxlOiBmYWxzZVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhLmxpc3Q7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29uc3RyYWludENvbHVtbkRhdGFTb3VyY2UodGVuYW50OiBhbnksIGNsYXNzTmFtZTogYW55LCB2aWV3OiBhbnksIGZpZWxkOiBhbnksIGNvbnN0cmFpbnROYW1lOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oJ2FwaS9kYXRhL2N1c3RvbScsIHtcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgZXhlY3V0b3I6ICdjb20uY3Muc3lzdGVtLmRhdGEuZ3JpZC5oZWFkZXIuZmlsdGVyLkdldENvbnN0cmFpbnRDb2x1bW5EYXRhU291cmNlJyxcclxuICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgY2xhc3NOYW1lLFxyXG4gICAgICAgIHZpZXc6IHZpZXcgfHwgJycsXHJcbiAgICAgICAgZmllbGQsXHJcbiAgICAgICAgY29uc3RyYWludE5hbWVcclxuICAgICAgfVxyXG4gICAgfSkucGlwZShcclxuICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICByZXNwb25zZS5kYXRhLmxpc3QudW5zaGlmdCh7XHJcbiAgICAgICAgICB2YWx1ZTogJycsXHJcbiAgICAgICAgICB0ZXh0OiAnKOepuueZvSknXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmVzcG9uc2UuZGF0YS5saXN0LnB1c2goe1xyXG4gICAgICAgICAgdmFsdWU6ICdfXycsXHJcbiAgICAgICAgICB0ZXh0OiAnJyxcclxuICAgICAgICAgIHZpc2libGU6IGZhbHNlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGEubGlzdDtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2x1bW5EYXRhU291cmNlKHRlbmFudDogYW55LCBjbGFzc05hbWU6IGFueSwgdmlldzogYW55LCBmaWVsZDogYW55KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KCdhcGkvZGF0YS9jdXN0b20nLCB7XHJcbiAgICAgIHBhcmFtczoge1xyXG4gICAgICAgIGV4ZWN1dG9yOiAnY29tLmNzLnN5c3RlbS5kYXRhLmdyaWQuaGVhZGVyLmZpbHRlci5HZXRDb2x1bW5EYXRhU291cmNlJyxcclxuICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgY2xhc3NOYW1lLFxyXG4gICAgICAgIHZpZXc6IHZpZXcgfHwgJycsXHJcbiAgICAgICAgZmllbGRcclxuICAgICAgfVxyXG4gICAgfSkucGlwZShcclxuICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YS5saXN0O1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
2
|
import { FormService } from "./form.service";
|
|
3
3
|
import { DxValidationGroupComponent } from "devextreme-angular";
|
|
4
|
-
import {
|
|
4
|
+
import { validate_group_by_name } from "../util/utils";
|
|
5
5
|
import { ChangeFilter } from "../util/change-filter";
|
|
6
6
|
import { lastValueFrom, map } from "rxjs";
|
|
7
|
+
import { UniqueId } from "../util/UniqueId";
|
|
7
8
|
import * as i0 from "@angular/core";
|
|
8
9
|
import * as i1 from "./form.service";
|
|
9
10
|
import * as i2 from "@angular/common";
|
|
@@ -12,10 +13,10 @@ import * as i4 from "devextreme-angular/ui/nested";
|
|
|
12
13
|
import * as i5 from "devextreme-angular/ui/button";
|
|
13
14
|
import * as i6 from "devextreme-angular/ui/load-panel";
|
|
14
15
|
import * as i7 from "devextreme-angular/ui/text-box";
|
|
15
|
-
import * as i8 from "devextreme-angular/ui/
|
|
16
|
-
|
|
17
|
-
export class FormComponent {
|
|
16
|
+
import * as i8 from "devextreme-angular/ui/validator";
|
|
17
|
+
export class FormComponent extends UniqueId {
|
|
18
18
|
constructor(viewContainerRef, service, elementRef) {
|
|
19
|
+
super('rs-form');
|
|
19
20
|
this.viewContainerRef = viewContainerRef;
|
|
20
21
|
this.service = service;
|
|
21
22
|
this.elementRef = elementRef;
|
|
@@ -44,6 +45,7 @@ export class FormComponent {
|
|
|
44
45
|
this.loading = true;
|
|
45
46
|
this.context = {
|
|
46
47
|
__form: {
|
|
48
|
+
uniqueId: this.getUniqueId(),
|
|
47
49
|
tenant: this.tenant,
|
|
48
50
|
className: this.className,
|
|
49
51
|
oid: this.oid,
|
|
@@ -125,17 +127,17 @@ export class FormComponent {
|
|
|
125
127
|
}
|
|
126
128
|
}
|
|
127
129
|
validate() {
|
|
128
|
-
return
|
|
130
|
+
return validate_group_by_name(this.getUniqueId(), this.elementRef.nativeElement);
|
|
129
131
|
}
|
|
130
132
|
submit() {
|
|
131
133
|
this.formSubmitter.instance.element().click();
|
|
132
134
|
}
|
|
133
135
|
}
|
|
134
136
|
FormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormComponent, deps: [{ token: i0.ViewContainerRef }, { token: i1.FormService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
135
|
-
FormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormComponent, selector: "rs-form", inputs: { tenant: "tenant", className: "className", oid: "oid", copyOid: "copyOid", template: "template", extraAttrMap: "extraAttrMap", params: "params", tabViewContainerRef: "tabViewContainerRef", onlyFrontEnd: "onlyFrontEnd", model: "model", readonly: "readonly" }, outputs: { onDataLoaded: "onDataLoaded", submitCallback: "submitCallback" }, providers: [FormService], viewQueries: [{ propertyName: "validator", first: true, predicate: DxValidationGroupComponent, descendants: true }, { propertyName: "formSubmitter", first: true, predicate: ["formSubmitter"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\r\n [visible]=\"loading\">\r\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\r\n</dx-load-panel>\r\n<
|
|
137
|
+
FormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormComponent, selector: "rs-form", inputs: { tenant: "tenant", className: "className", oid: "oid", copyOid: "copyOid", template: "template", extraAttrMap: "extraAttrMap", params: "params", tabViewContainerRef: "tabViewContainerRef", onlyFrontEnd: "onlyFrontEnd", model: "model", readonly: "readonly" }, outputs: { onDataLoaded: "onDataLoaded", submitCallback: "submitCallback" }, providers: [FormService], viewQueries: [{ propertyName: "validator", first: true, predicate: DxValidationGroupComponent, descendants: true }, { propertyName: "formSubmitter", first: true, predicate: ["formSubmitter"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\r\n [visible]=\"loading\">\r\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\r\n</dx-load-panel>\r\n<ng-container *ngIf=\"!loading\">\r\n <rs-box-container [config]=\"config\"\r\n [params]=\"params\"\r\n [context]=\"context\"\r\n [tabViewContainerRef]=\"tabViewContainerRef\"\r\n [readonly]=\"readonly\"></rs-box-container>\r\n <dx-text-box height=\"0\" style=\"border: none;\">\r\n <dx-validator [validationGroup]=\"getUniqueId()\">\r\n <dxi-validation-rule *ngIf=\"extraValidator\" type=\"async\"\r\n [validationCallback]=\"extraValidate\"></dxi-validation-rule>\r\n </dx-validator>\r\n </dx-text-box>\r\n <div *ngIf=\"extraValidateMessage\" class=\"dx-field\">\r\n <div class=\"dx-field-value\">\r\n <div class=\"dx-toast-error dx-toast-content\">\r\n <div class=\"dx-toast-message\">{{ extraValidateMessage }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <dx-button #formSubmitter [visible]=\"false\" (onClick)=\"submitForm()\"></dx-button>\r\n</ng-container>\r\n", styles: [":host{padding:12px 24px 20px}:host dx-validation-group{display:flex;flex-flow:column nowrap}:host dx-validation-group .dx-field{top:16px}:host dx-validation-group .dx-field .dx-field-value .dx-toast-content{padding:4px 8px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.BoxContainerComponent, selector: "rs-box-container", inputs: ["id", "editMode", "config", "params", "context", "readonly", "tabViewContainerRef"] }, { kind: "component", type: i4.DxoPositionComponent, selector: "dxo-position", inputs: ["at", "boundary", "boundaryOffset", "collision", "my", "of", "offset"] }, { kind: "component", type: i5.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i4.DxiValidationRuleComponent, selector: "dxi-validation-rule", inputs: ["message", "trim", "type", "ignoreEmptyValue", "max", "min", "reevaluate", "validationCallback", "comparisonTarget", "comparisonType", "pattern"] }, { kind: "component", type: i6.DxLoadPanelComponent, selector: "dx-load-panel", inputs: ["animation", "closeOnOutsideClick", "container", "copyRootClassesToWrapper", "deferRendering", "delay", "elementAttr", "focusStateEnabled", "height", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "indicatorSrc", "maxHeight", "maxWidth", "message", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showIndicator", "showPane", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "animationChange", "closeOnOutsideClickChange", "containerChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "delayChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "indicatorSrcChange", "maxHeightChange", "maxWidthChange", "messageChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showIndicatorChange", "showPaneChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "component", type: i7.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i8.DxValidatorComponent, selector: "dx-validator", inputs: ["adapter", "elementAttr", "height", "name", "validationGroup", "validationRules", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onValidated", "adapterChange", "elementAttrChange", "heightChange", "nameChange", "validationGroupChange", "validationRulesChange", "widthChange"] }] });
|
|
136
138
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormComponent, decorators: [{
|
|
137
139
|
type: Component,
|
|
138
|
-
args: [{ selector: 'rs-form', providers: [FormService], template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\r\n [visible]=\"loading\">\r\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\r\n</dx-load-panel>\r\n<
|
|
140
|
+
args: [{ selector: 'rs-form', providers: [FormService], template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\r\n [visible]=\"loading\">\r\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\r\n</dx-load-panel>\r\n<ng-container *ngIf=\"!loading\">\r\n <rs-box-container [config]=\"config\"\r\n [params]=\"params\"\r\n [context]=\"context\"\r\n [tabViewContainerRef]=\"tabViewContainerRef\"\r\n [readonly]=\"readonly\"></rs-box-container>\r\n <dx-text-box height=\"0\" style=\"border: none;\">\r\n <dx-validator [validationGroup]=\"getUniqueId()\">\r\n <dxi-validation-rule *ngIf=\"extraValidator\" type=\"async\"\r\n [validationCallback]=\"extraValidate\"></dxi-validation-rule>\r\n </dx-validator>\r\n </dx-text-box>\r\n <div *ngIf=\"extraValidateMessage\" class=\"dx-field\">\r\n <div class=\"dx-field-value\">\r\n <div class=\"dx-toast-error dx-toast-content\">\r\n <div class=\"dx-toast-message\">{{ extraValidateMessage }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <dx-button #formSubmitter [visible]=\"false\" (onClick)=\"submitForm()\"></dx-button>\r\n</ng-container>\r\n", styles: [":host{padding:12px 24px 20px}:host dx-validation-group{display:flex;flex-flow:column nowrap}:host dx-validation-group .dx-field{top:16px}:host dx-validation-group .dx-field .dx-field-value .dx-toast-content{padding:4px 8px}\n"] }]
|
|
139
141
|
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i1.FormService }, { type: i0.ElementRef }]; }, propDecorators: { tenant: [{
|
|
140
142
|
type: Input
|
|
141
143
|
}], className: [{
|
|
@@ -169,4 +171,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
169
171
|
}], submitCallback: [{
|
|
170
172
|
type: Output
|
|
171
173
|
}] } });
|
|
172
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9mb3JtL2Zvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJzLWFudC9zcmMvZm9ybS9mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFJTCxNQUFNLEVBRU4sU0FBUyxFQUVWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQW9CLDBCQUEwQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDakYsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7O0FBUXhDLE1BQU0sT0FBTyxhQUFhO0lBb0N4QixZQUFzQixnQkFBa0MsRUFBVSxPQUFvQixFQUFVLFVBQXNCO1FBQWhHLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFhO1FBQVUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQWxDdEgsV0FBTSxHQUFTLEdBQUcsQ0FBQztRQWdCbkIsaUJBQVksR0FBWSxLQUFLLENBQUMsQ0FBQyxzQkFBc0I7UUFJckQsYUFBUSxHQUFZLEtBQUssQ0FBQztRQU0xQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUErQixDQUFDO1FBRS9ELG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUN6QyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ1IsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxD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LDBCQUEwQixzS0NsRHZDLHlzQ0F5QkE7NEZEQWEsYUFBYTtrQkFOekIsU0FBUzsrQkFDRSxTQUFTLGFBR1IsQ0FBQyxXQUFXLENBQUM7MEpBSXhCLE1BQU07c0JBREwsS0FBSztnQkFHTixTQUFTO3NCQURSLEtBQUs7Z0JBR04sR0FBRztzQkFERixLQUFLO2dCQUdOLE9BQU87c0JBRE4sS0FBSztnQkFHTixRQUFRO3NCQURQLEtBQUs7Z0JBR04sWUFBWTtzQkFEWCxLQUFLO2dCQUdOLE1BQU07c0JBREwsS0FBSztnQkFHTixtQkFBbUI7c0JBRGxCLEtBQUs7Z0JBR04sWUFBWTtzQkFEWCxLQUFLO2dCQUdOLEtBQUs7c0JBREosS0FBSztnQkFHTixRQUFRO3NCQURQLEtBQUs7Z0JBSWlDLFNBQVM7c0JBQS9DLFNBQVM7dUJBQUMsMEJBQTBCO2dCQUNULGFBQWE7c0JBQXhDLFNBQVM7dUJBQUMsZUFBZTtnQkFFMUIsWUFBWTtzQkFEWCxNQUFNO2dCQUdQLGNBQWM7c0JBRGIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3Q29udGFpbmVyUmVmXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Rm9ybVNlcnZpY2V9IGZyb20gXCIuL2Zvcm0uc2VydmljZVwiO1xyXG5pbXBvcnQge0R4QnV0dG9uQ29tcG9uZW50LCBEeFZhbGlkYXRpb25Hcm91cENvbXBvbmVudH0gZnJvbSBcImRldmV4dHJlbWUtYW5ndWxhclwiO1xyXG5pbXBvcnQge3ZhbGlkYXRlX2dyb3VwfSBmcm9tIFwiLi4vdXRpbC91dGlsc1wiO1xyXG5pbXBvcnQge0NoYW5nZUZpbHRlcn0gZnJvbSBcIi4uL3V0aWwvY2hhbmdlLWZpbHRlclwiO1xyXG5pbXBvcnQge2xhc3RWYWx1ZUZyb20sIG1hcH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAncnMtZm9ybScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2Zvcm0uY29tcG9uZW50LnNjc3MnXSxcclxuICBwcm92aWRlcnM6IFtGb3JtU2VydmljZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcclxuICBASW5wdXQoKVxyXG4gIHRlbmFudD86IGFueSA9ICdUJztcclxuICBASW5wdXQoKVxyXG4gIGNsYXNzTmFtZSE6IGFueTtcclxuICBASW5wdXQoKVxyXG4gIG9pZD86IGFueTtcclxuICBASW5wdXQoKVxyXG4gIGNvcHlPaWQ/OiBhbnk7XHJcbiAgQElucHV0KClcclxuICB0ZW1wbGF0ZT86IGFueTtcclxuICBASW5wdXQoKVxyXG4gIGV4dHJhQXR0ck1hcD86IGFueTtcclxuICBASW5wdXQoKVxyXG4gIHBhcmFtcz86IGFueTtcclxuICBASW5wdXQoKVxyXG4gIHRhYlZpZXdDb250YWluZXJSZWYhOiBWaWV3Q29udGFpbmVyUmVmO1xyXG4gIEBJbnB1dCgpXHJcbiAgb25seUZyb250RW5kOiBib29sZWFuID0gZmFsc2U7IC8vIOS7heWJjeerr++8jOS4jemAmui/h29pZOiOt+WPluWunuS+i21vZGVsXHJcbiAgQElucHV0KClcclxuICBtb2RlbD86IGFueTtcclxuICBASW5wdXQoKVxyXG4gIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XHJcbiAgY29uZmlnOiBhbnk7XHJcbiAgZXh0cmFWYWxpZGF0b3I/OiBzdHJpbmc7XHJcbiAgQFZpZXdDaGlsZChEeFZhbGlkYXRpb25Hcm91cENvbXBvbmVudCkgdmFsaWRhdG9yITogRHhWYWxpZGF0aW9uR3JvdXBDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnZm9ybVN1Ym1pdHRlcicpIGZvcm1TdWJtaXR0ZXIhOiBEeEJ1dHRvbkNvbXBvbmVudDtcclxuICBAT3V0cHV0KClcclxuICBvbkRhdGFMb2FkZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHsgY29uZmlnOiBhbnksIG1vZGVsOiBhbnkgfT4oKTtcclxuICBAT3V0cHV0KClcclxuICBzdWJtaXRDYWxsYmFjayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIGxvYWRpbmcgPSBmYWxzZTtcclxuICBwcml2YXRlIGNoYW5nZUZpbHRlciA9IG5ldyBDaGFuZ2VGaWx0ZXIoKTtcclxuICBwcm90ZWN0ZWQgY29udGV4dDogYW55O1xyXG4gIHByb3RlY3RlZCBleHRyYVZhbGlkYXRlTWVzc2FnZTogYW55O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZiwgcHJpdmF0ZSBzZXJ2aWNlOiBGb3JtU2VydmljZSwgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XHJcbiAgICB0aGlzLmV4dHJhVmFsaWRhdGUgPSB0aGlzLmV4dHJhVmFsaWRhdGUuYmluZCh0aGlzKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5sb2FkKCk7XHJcbiAgICB0aGlzLmNoYW5nZUZpbHRlci5hbnlOb3RGaXJzdChbJ3RlbmFudCcsICdjbGFzc05hbWUnLCAnb2lkJywgJ2NvcHlPaWQnLCAndGVtcGxhdGUnXSwgKCkgPT4ge1xyXG4gICAgICB0aGlzLmxvYWQoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgdGhpcy5jaGFuZ2VGaWx0ZXIuZG9GaWx0ZXIoY2hhbmdlcyk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuY2hhbmdlRmlsdGVyLmRpc3Bvc2UoKTtcclxuICB9XHJcblxyXG4gIGxvYWQoKSB7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5jb250ZXh0ID0ge1xyXG4gICAgICBfX2Zvcm06IHtcclxuICAgICAgICB0ZW5hbnQ6IHRoaXMudGVuYW50LFxyXG4gICAgICAgIGNsYXNzTmFtZTogdGhpcy5jbGFzc05hbWUsXHJcbiAgICAgICAgb2lkOiB0aGlzLm9pZCxcclxuICAgICAgICBjb3B5T2lkOiB0aGlzLmNvcHlPaWQsXHJcbiAgICAgICAgdGVtcGxhdGU6IHRoaXMudGVtcGxhdGVcclxuICAgICAgfSxcclxuICAgICAgX19tb2RlbDogdGhpcy5tb2RlbCB8fCB7fSxcclxuICAgICAgX19vcGVuZXI6IHRoaXNcclxuICAgIH07XHJcbiAgICB0aGlzLnNlcnZpY2UuZ2V0Rm9ybVRlbXBsYXRlQ29uZmlnKHRoaXMudGVuYW50LCB0aGlzLmNsYXNzTmFtZSwgdGhpcy50ZW1wbGF0ZSkuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcclxuICAgICAgdGhpcy5jb25maWcgPSByZXNwb25zZS5kYXRhLnRlbXBsYXRlO1xyXG4gICAgICB0aGlzLmV4dHJhVmFsaWRhdG9yID0gdGhpcy5jb25maWcuZXh0cmFWYWxpZGF0b3I7XHJcbiAgICAgIGlmICh0aGlzLm9ubHlGcm9udEVuZCkge1xyXG4gICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuY29weU9pZCB8fCB0aGlzLm9pZCkge1xyXG4gICAgICAgIHRoaXMuc2VydmljZS5nZXRPbmUodGhpcy50ZW5hbnQsIHRoaXMuY2xhc3NOYW1lLCB0aGlzLmNvcHlPaWQgfHwgdGhpcy5vaWQsIHRoaXMudGVtcGxhdGUsIHRoaXMuY29weU9pZClcclxuICAgICAgICAgIC5zdWJzY3JpYmUocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLm1vZGVsID0gcmVzcG9uc2UuZGF0YTtcclxuICAgICAgICAgICAgdGhpcy5jb250ZXh0Ll9fbW9kZWwgPSB0aGlzLm1vZGVsO1xyXG4gICAgICAgICAgICB0aGlzLm9uRGF0YUxvYWRlZC5lbWl0KHtcclxuICAgICAgICAgICAgICBjb25maWc6IHRoaXMuY29uZmlnLFxyXG4gICAgICAgICAgICAgIG1vZGVsOiB0aGlzLm1vZGVsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuc2VydmljZS5nZXRJbml0TW9kZWxCeVRlbXBsYXRlKHRoaXMudGVuYW50LCB0aGlzLmNsYXNzTmFtZSwgdGhpcy50ZW1wbGF0ZSkuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgIHRoaXMubW9kZWwgPSByZXNwb25zZS5kYXRhO1xyXG4gICAgICAgICAgdGhpcy5jb250ZXh0Ll9fbW9kZWwgPSB0aGlzLm1vZGVsO1xyXG4gICAgICAgICAgdGhpcy5vbkRhdGFMb2FkZWQuZW1pdCh7XHJcbiAgICAgICAgICAgIGNvbmZpZzogdGhpcy5jb25maWcsXHJcbiAgICAgICAgICAgIG1vZGVsOiB0aGlzLm1vZGVsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBleHRyYVZhbGlkYXRlKCkge1xyXG4gICAgcmV0dXJuIGxhc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLmV4dHJhVmFsaWRhdGUodGhpcy5tb2RlbCwgT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5wYXJhbXMsIHtcclxuICAgICAgdGVuYW50OiB0aGlzLnRlbmFudCxcclxuICAgICAgY2xhc3NOYW1lOiB0aGlzLmNsYXNzTmFtZSxcclxuICAgICAgb2lkOiB0aGlzLm9pZCxcclxuICAgICAgdGVtcGxhdGU6IHRoaXMudGVtcGxhdGVcclxuICAgIH0pLCA8c3RyaW5nPnRoaXMuZXh0cmFWYWxpZGF0b3IpLnBpcGUoXHJcbiAgICAgIG1hcChyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgaWYgKCFyZXNwb25zZS5pc1ZhbGlkKSB7XHJcbiAgICAgICAgICB0aGlzLmV4dHJhVmFsaWRhdGVNZXNzYWdlID0gcmVzcG9uc2UubWVzc2FnZTtcclxuICAgICAgICAgIHJldHVybiByZXNwb25zZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICApKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBzdWJtaXRGb3JtKCkge1xyXG4gICAgdGhpcy52YWxpZGF0ZSgpLnRoZW4oaXNWYWxpZCA9PiB7XHJcbiAgICAgIGlmIChpc1ZhbGlkKSB7XHJcbiAgICAgICAgY29uc3QgbWVyZ2VNb2RlbDogYW55ID0gey4uLnRoaXMubW9kZWx9O1xyXG4gICAgICAgIGlmICh0aGlzLmV4dHJhQXR0ck1hcCkge1xyXG4gICAgICAgICAgZm9yIChjb25zdCBlbnRyeSBvZiB0aGlzLmV4dHJhQXR0ck1hcCkge1xyXG4gICAgICAgICAgICBtZXJnZU1vZGVsW2VudHJ5Lm5hbWVdID0gZW50cnkudmFsdWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuc2VydmljZS5jcmVhdGVPclVwZGF0ZSh0aGlzLnRlbmFudCwgdGhpcy5jbGFzc05hbWUsIHtcclxuICAgICAgICAgIG9pZDogdGhpcy5vaWQsXHJcbiAgICAgICAgICAuLi5tZXJnZU1vZGVsXHJcbiAgICAgICAgfSkuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgIHRoaXMuc3VibWl0Q2FsbGJhY2suZW1pdChyZXNwb25zZSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zdWJtaXRDYWxsYmFjay5lbWl0KHtzdWNjZXNzOiBmYWxzZX0pO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgc2Nyb2xsVG9BbmNob3JQb2ludChhbmNob3JQb2ludElkOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHBvaW50cyA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ19fYW5jaG9yX3BvaW50XycgKyBhbmNob3JQb2ludElkKTtcclxuICAgIGlmIChwb2ludHMubGVuZ3RoID4gMCkge1xyXG4gICAgICBwb2ludHNbMF0uc2Nyb2xsSW50b1ZpZXcoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHZhbGlkYXRlKCkge1xyXG4gICAgcmV0dXJuIHZhbGlkYXRlX2dyb3VwKHRoaXMudmFsaWRhdG9yKTtcclxuICB9XHJcblxyXG4gIHN1Ym1pdCgpIHtcclxuICAgIHRoaXMuZm9ybVN1Ym1pdHRlci5pbnN0YW5jZS5lbGVtZW50KCkuY2xpY2soKTtcclxuICB9XHJcbn1cclxuIiwiPGR4LWxvYWQtcGFuZWwgW2NvbnRhaW5lcl09XCJ2aWV3Q29udGFpbmVyUmVmLmVsZW1lbnQubmF0aXZlRWxlbWVudFwiIFtzaG93UGFuZV09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgIFt2aXNpYmxlXT1cImxvYWRpbmdcIj5cclxuICA8ZHhvLXBvc2l0aW9uIFtvZl09XCJ2aWV3Q29udGFpbmVyUmVmLmVsZW1lbnQubmF0aXZlRWxlbWVudFwiPjwvZHhvLXBvc2l0aW9uPlxyXG48L2R4LWxvYWQtcGFuZWw+XHJcbjxkeC12YWxpZGF0aW9uLWdyb3VwICpuZ0lmPVwiIWxvYWRpbmdcIj5cclxuICA8cnMtYm94LWNvbnRhaW5lciBbY29uZmlnXT1cImNvbmZpZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BhcmFtc109XCJwYXJhbXNcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjb250ZXh0XT1cImNvbnRleHRcIlxyXG4gICAgICAgICAgICAgICAgICAgIFt0YWJWaWV3Q29udGFpbmVyUmVmXT1cInRhYlZpZXdDb250YWluZXJSZWZcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiPjwvcnMtYm94LWNvbnRhaW5lcj5cclxuICA8ZHgtdGV4dC1ib3ggaGVpZ2h0PVwiMFwiIHN0eWxlPVwiYm9yZGVyOiBub25lO1wiPlxyXG4gICAgPGR4LXZhbGlkYXRvcj5cclxuICAgICAgPGR4aS12YWxpZGF0aW9uLXJ1bGUgKm5nSWY9XCJleHRyYVZhbGlkYXRvclwiIHR5cGU9XCJhc3luY1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWxpZGF0aW9uQ2FsbGJhY2tdPVwiZXh0cmFWYWxpZGF0ZVwiPjwvZHhpLXZhbGlkYXRpb24tcnVsZT5cclxuICAgIDwvZHgtdmFsaWRhdG9yPlxyXG4gIDwvZHgtdGV4dC1ib3g+XHJcbiAgPGRpdiAqbmdJZj1cImV4dHJhVmFsaWRhdGVNZXNzYWdlXCIgY2xhc3M9XCJkeC1maWVsZFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImR4LWZpZWxkLXZhbHVlXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkeC10b2FzdC1lcnJvciBkeC10b2FzdC1jb250ZW50XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImR4LXRvYXN0LW1lc3NhZ2VcIj57eyBleHRyYVZhbGlkYXRlTWVzc2FnZSB9fTwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkeC1idXR0b24gI2Zvcm1TdWJtaXR0ZXIgW3Zpc2libGVdPVwiZmFsc2VcIiAob25DbGljayk9XCJzdWJtaXRGb3JtKClcIj48L2R4LWJ1dHRvbj5cclxuPC9keC12YWxpZGF0aW9uLWdyb3VwPlxyXG4iXX0=
|
|
174
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9mb3JtL2Zvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJzLWFudC9zcmMvZm9ybS9mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFJTCxNQUFNLEVBRU4sU0FBUyxFQUVWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQW9CLDBCQUEwQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDakYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsYUFBYSxFQUFFLEdBQUcsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7Ozs7Ozs7Ozs7QUFRMUMsTUFBTSxPQUFPLGFBQWMsU0FBUSxRQUFRO0lBb0N6QyxZQUFzQixnQkFBa0MsRUFBVSxPQUFvQixFQUFVLFVBQXNCO1FBQ3BILEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztRQURHLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFhO1FBQVUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQWxDdEgsV0FBTSxHQUFTLEdBQUcsQ0FBQztRQWdCbkIsaUJBQVksR0FBWSxLQUFLLENBQUMsQ0FBQyxzQkFBc0I7UUFJckQsYUFBUSxHQUFZLEtBQUssQ0FBQztRQU0xQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUErQixDQUFDO1FBRS9ELG1CQUFj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Q0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDaEQsQ0FBQzs7MkdBdEpVLGFBQWE7K0ZBQWIsYUFBYSwyWEFGYixDQUFDLFdBQVcsQ0FBQyxxRUEyQmIsMEJBQTBCLDZMQ25EdkMsK3RDQXlCQTs0RkRDYSxhQUFhO2tCQU56QixTQUFTOytCQUNFLFNBQVMsYUFHUixDQUFDLFdBQVcsQ0FBQzswSkFJeEIsTUFBTTtzQkFETCxLQUFLO2dCQUdOLFNBQVM7c0JBRFIsS0FBSztnQkFHTixHQUFHO3NCQURGLEtBQUs7Z0JBR04sT0FBTztzQkFETixLQUFLO2dCQUdOLFFBQVE7c0JBRFAsS0FBSztnQkFHTixZQUFZO3NCQURYLEtBQUs7Z0JBR04sTUFBTTtzQkFETCxLQUFLO2dCQUdOLG1CQUFtQjtzQkFEbEIsS0FBSztnQkFHTixZQUFZO3NCQURYLEtBQUs7Z0JBR04sS0FBSztzQkFESixLQUFLO2dCQUdOLFFBQVE7c0JBRFAsS0FBSztnQkFJaUMsU0FBUztzQkFBL0MsU0FBUzt1QkFBQywwQkFBMEI7Z0JBQ1QsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlO2dCQUUxQixZQUFZO3NCQURYLE1BQU07Z0JBR1AsY0FBYztzQkFEYixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdDb250YWluZXJSZWZcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtGb3JtU2VydmljZX0gZnJvbSBcIi4vZm9ybS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7RHhCdXR0b25Db21wb25lbnQsIER4VmFsaWRhdGlvbkdyb3VwQ29tcG9uZW50fSBmcm9tIFwiZGV2ZXh0cmVtZS1hbmd1bGFyXCI7XHJcbmltcG9ydCB7dmFsaWRhdGVfZ3JvdXBfYnlfbmFtZX0gZnJvbSBcIi4uL3V0aWwvdXRpbHNcIjtcclxuaW1wb3J0IHtDaGFuZ2VGaWx0ZXJ9IGZyb20gXCIuLi91dGlsL2NoYW5nZS1maWx0ZXJcIjtcclxuaW1wb3J0IHtsYXN0VmFsdWVGcm9tLCBtYXB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7VW5pcXVlSWR9IGZyb20gXCIuLi91dGlsL1VuaXF1ZUlkXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3JzLWZvcm0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JtLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9mb3JtLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbRm9ybVNlcnZpY2VdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb3JtQ29tcG9uZW50IGV4dGVuZHMgVW5pcXVlSWQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcclxuICBASW5wdXQoKVxyXG4gIHRlbmFudD86IGFueSA9ICdUJztcclxuICBASW5wdXQoKVxyXG4gIGNsYXNzTmFtZSE6IGFueTtcclxuICBASW5wdXQoKVxyXG4gIG9pZD86IGFueTtcclxuICBASW5wdXQoKVxyXG4gIGNvcHlPaWQ/OiBhbnk7XHJcbiAgQElucHV0KClcclxuICB0ZW1wbGF0ZT86IGFueTtcclxuICBASW5wdXQoKVxyXG4gIGV4dHJhQXR0ck1hcD86IGFueTtcclxuICBASW5wdXQoKVxyXG4gIHBhcmFtcz86IGFueTtcclxuICBASW5wdXQoKVxyXG4gIHRhYlZpZXdDb250YWluZXJSZWYhOiBWaWV3Q29udGFpbmVyUmVmO1xyXG4gIEBJbnB1dCgpXHJcbiAgb25seUZyb250RW5kOiBib29sZWFuID0gZmFsc2U7IC8vIOS7heWJjeerr++8jOS4jemAmui/h29pZOiOt+WPluWunuS+i21vZGVsXHJcbiAgQElucHV0KClcclxuICBtb2RlbD86IGFueTtcclxuICBASW5wdXQoKVxyXG4gIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XHJcbiAgY29uZmlnOiBhbnk7XHJcbiAgZXh0cmFWYWxpZGF0b3I/OiBzdHJpbmc7XHJcbiAgQFZpZXdDaGlsZChEeFZhbGlkYXRpb25Hcm91cENvbXBvbmVudCkgdmFsaWRhdG9yITogRHhWYWxpZGF0aW9uR3JvdXBDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnZm9ybVN1Ym1pdHRlcicpIGZvcm1TdWJtaXR0ZXIhOiBEeEJ1dHRvbkNvbXBvbmVudDtcclxuICBAT3V0cHV0KClcclxuICBvbkRhdGFMb2FkZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHsgY29uZmlnOiBhbnksIG1vZGVsOiBhbnkgfT4oKTtcclxuICBAT3V0cHV0KClcclxuICBzdWJtaXRDYWxsYmFjayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIGxvYWRpbmcgPSBmYWxzZTtcclxuICBwcml2YXRlIGNoYW5nZUZpbHRlciA9IG5ldyBDaGFuZ2VGaWx0ZXIoKTtcclxuICBwcm90ZWN0ZWQgY29udGV4dDogYW55O1xyXG4gIHByb3RlY3RlZCBleHRyYVZhbGlkYXRlTWVzc2FnZTogYW55O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZiwgcHJpdmF0ZSBzZXJ2aWNlOiBGb3JtU2VydmljZSwgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XHJcbiAgICBzdXBlcigncnMtZm9ybScpO1xyXG4gICAgdGhpcy5leHRyYVZhbGlkYXRlID0gdGhpcy5leHRyYVZhbGlkYXRlLmJpbmQodGhpcyk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMubG9hZCgpO1xyXG4gICAgdGhpcy5jaGFuZ2VGaWx0ZXIuYW55Tm90Rmlyc3QoWyd0ZW5hbnQnLCAnY2xhc3NOYW1lJywgJ29pZCcsICdjb3B5T2lkJywgJ3RlbXBsYXRlJ10sICgpID0+IHtcclxuICAgICAgdGhpcy5sb2FkKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIHRoaXMuY2hhbmdlRmlsdGVyLmRvRmlsdGVyKGNoYW5nZXMpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmNoYW5nZUZpbHRlci5kaXNwb3NlKCk7XHJcbiAgfVxyXG5cclxuICBsb2FkKCkge1xyXG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuY29udGV4dCA9IHtcclxuICAgICAgX19mb3JtOiB7XHJcbiAgICAgICAgdW5pcXVlSWQ6IHRoaXMuZ2V0VW5pcXVlSWQoKSxcclxuICAgICAgICB0ZW5hbnQ6IHRoaXMudGVuYW50LFxyXG4gICAgICAgIGNsYXNzTmFtZTogdGhpcy5jbGFzc05hbWUsXHJcbiAgICAgICAgb2lkOiB0aGlzLm9pZCxcclxuICAgICAgICBjb3B5T2lkOiB0aGlzLmNvcHlPaWQsXHJcbiAgICAgICAgdGVtcGxhdGU6IHRoaXMudGVtcGxhdGVcclxuICAgICAgfSxcclxuICAgICAgX19tb2RlbDogdGhpcy5tb2RlbCB8fCB7fSxcclxuICAgICAgX19vcGVuZXI6IHRoaXNcclxuICAgIH07XHJcbiAgICB0aGlzLnNlcnZpY2UuZ2V0Rm9ybVRlbXBsYXRlQ29uZmlnKHRoaXMudGVuYW50LCB0aGlzLmNsYXNzTmFtZSwgdGhpcy50ZW1wbGF0ZSkuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcclxuICAgICAgdGhpcy5jb25maWcgPSByZXNwb25zZS5kYXRhLnRlbXBsYXRlO1xyXG4gICAgICB0aGlzLmV4dHJhVmFsaWRhdG9yID0gdGhpcy5jb25maWcuZXh0cmFWYWxpZGF0b3I7XHJcbiAgICAgIGlmICh0aGlzLm9ubHlGcm9udEVuZCkge1xyXG4gICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuY29weU9pZCB8fCB0aGlzLm9pZCkge1xyXG4gICAgICAgIHRoaXMuc2VydmljZS5nZXRPbmUodGhpcy50ZW5hbnQsIHRoaXMuY2xhc3NOYW1lLCB0aGlzLmNvcHlPaWQgfHwgdGhpcy5vaWQsIHRoaXMudGVtcGxhdGUsIHRoaXMuY29weU9pZClcclxuICAgICAgICAgIC5zdWJzY3JpYmUocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLm1vZGVsID0gcmVzcG9uc2UuZGF0YTtcclxuICAgICAgICAgICAgdGhpcy5jb250ZXh0Ll9fbW9kZWwgPSB0aGlzLm1vZGVsO1xyXG4gICAgICAgICAgICB0aGlzLm9uRGF0YUxvYWRlZC5lbWl0KHtcclxuICAgICAgICAgICAgICBjb25maWc6IHRoaXMuY29uZmlnLFxyXG4gICAgICAgICAgICAgIG1vZGVsOiB0aGlzLm1vZGVsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuc2VydmljZS5nZXRJbml0TW9kZWxCeVRlbXBsYXRlKHRoaXMudGVuYW50LCB0aGlzLmNsYXNzTmFtZSwgdGhpcy50ZW1wbGF0ZSkuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgIHRoaXMubW9kZWwgPSByZXNwb25zZS5kYXRhO1xyXG4gICAgICAgICAgdGhpcy5jb250ZXh0Ll9fbW9kZWwgPSB0aGlzLm1vZGVsO1xyXG4gICAgICAgICAgdGhpcy5vbkRhdGFMb2FkZWQuZW1pdCh7XHJcbiAgICAgICAgICAgIGNvbmZpZzogdGhpcy5jb25maWcsXHJcbiAgICAgICAgICAgIG1vZGVsOiB0aGlzLm1vZGVsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBleHRyYVZhbGlkYXRlKCkge1xyXG4gICAgcmV0dXJuIGxhc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLmV4dHJhVmFsaWRhdGUodGhpcy5tb2RlbCwgT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5wYXJhbXMsIHtcclxuICAgICAgdGVuYW50OiB0aGlzLnRlbmFudCxcclxuICAgICAgY2xhc3NOYW1lOiB0aGlzLmNsYXNzTmFtZSxcclxuICAgICAgb2lkOiB0aGlzLm9pZCxcclxuICAgICAgdGVtcGxhdGU6IHRoaXMudGVtcGxhdGVcclxuICAgIH0pLCA8c3RyaW5nPnRoaXMuZXh0cmFWYWxpZGF0b3IpLnBpcGUoXHJcbiAgICAgIG1hcChyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgaWYgKCFyZXNwb25zZS5pc1ZhbGlkKSB7XHJcbiAgICAgICAgICB0aGlzLmV4dHJhVmFsaWRhdGVNZXNzYWdlID0gcmVzcG9uc2UubWVzc2FnZTtcclxuICAgICAgICAgIHJldHVybiByZXNwb25zZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICApKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBzdWJtaXRGb3JtKCkge1xyXG4gICAgdGhpcy52YWxpZGF0ZSgpLnRoZW4oaXNWYWxpZCA9PiB7XHJcbiAgICAgIGlmIChpc1ZhbGlkKSB7XHJcbiAgICAgICAgY29uc3QgbWVyZ2VNb2RlbDogYW55ID0gey4uLnRoaXMubW9kZWx9O1xyXG4gICAgICAgIGlmICh0aGlzLmV4dHJhQXR0ck1hcCkge1xyXG4gICAgICAgICAgZm9yIChjb25zdCBlbnRyeSBvZiB0aGlzLmV4dHJhQXR0ck1hcCkge1xyXG4gICAgICAgICAgICBtZXJnZU1vZGVsW2VudHJ5Lm5hbWVdID0gZW50cnkudmFsdWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuc2VydmljZS5jcmVhdGVPclVwZGF0ZSh0aGlzLnRlbmFudCwgdGhpcy5jbGFzc05hbWUsIHtcclxuICAgICAgICAgIG9pZDogdGhpcy5vaWQsXHJcbiAgICAgICAgICAuLi5tZXJnZU1vZGVsXHJcbiAgICAgICAgfSkuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgIHRoaXMuc3VibWl0Q2FsbGJhY2suZW1pdChyZXNwb25zZSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zdWJtaXRDYWxsYmFjay5lbWl0KHtzdWNjZXNzOiBmYWxzZX0pO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgc2Nyb2xsVG9BbmNob3JQb2ludChhbmNob3JQb2ludElkOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHBvaW50cyA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ19fYW5jaG9yX3BvaW50XycgKyBhbmNob3JQb2ludElkKTtcclxuICAgIGlmIChwb2ludHMubGVuZ3RoID4gMCkge1xyXG4gICAgICBwb2ludHNbMF0uc2Nyb2xsSW50b1ZpZXcoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHZhbGlkYXRlKCkge1xyXG4gICAgcmV0dXJuIHZhbGlkYXRlX2dyb3VwX2J5X25hbWUodGhpcy5nZXRVbmlxdWVJZCgpLCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XHJcbiAgfVxyXG5cclxuICBzdWJtaXQoKSB7XHJcbiAgICB0aGlzLmZvcm1TdWJtaXR0ZXIuaW5zdGFuY2UuZWxlbWVudCgpLmNsaWNrKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkeC1sb2FkLXBhbmVsIFtjb250YWluZXJdPVwidmlld0NvbnRhaW5lclJlZi5lbGVtZW50Lm5hdGl2ZUVsZW1lbnRcIiBbc2hvd1BhbmVdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICBbdmlzaWJsZV09XCJsb2FkaW5nXCI+XHJcbiAgPGR4by1wb3NpdGlvbiBbb2ZdPVwidmlld0NvbnRhaW5lclJlZi5lbGVtZW50Lm5hdGl2ZUVsZW1lbnRcIj48L2R4by1wb3NpdGlvbj5cclxuPC9keC1sb2FkLXBhbmVsPlxyXG48bmctY29udGFpbmVyICpuZ0lmPVwiIWxvYWRpbmdcIj5cclxuICA8cnMtYm94LWNvbnRhaW5lciBbY29uZmlnXT1cImNvbmZpZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BhcmFtc109XCJwYXJhbXNcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjb250ZXh0XT1cImNvbnRleHRcIlxyXG4gICAgICAgICAgICAgICAgICAgIFt0YWJWaWV3Q29udGFpbmVyUmVmXT1cInRhYlZpZXdDb250YWluZXJSZWZcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiPjwvcnMtYm94LWNvbnRhaW5lcj5cclxuICA8ZHgtdGV4dC1ib3ggaGVpZ2h0PVwiMFwiIHN0eWxlPVwiYm9yZGVyOiBub25lO1wiPlxyXG4gICAgPGR4LXZhbGlkYXRvciBbdmFsaWRhdGlvbkdyb3VwXT1cImdldFVuaXF1ZUlkKClcIj5cclxuICAgICAgPGR4aS12YWxpZGF0aW9uLXJ1bGUgKm5nSWY9XCJleHRyYVZhbGlkYXRvclwiIHR5cGU9XCJhc3luY1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWxpZGF0aW9uQ2FsbGJhY2tdPVwiZXh0cmFWYWxpZGF0ZVwiPjwvZHhpLXZhbGlkYXRpb24tcnVsZT5cclxuICAgIDwvZHgtdmFsaWRhdG9yPlxyXG4gIDwvZHgtdGV4dC1ib3g+XHJcbiAgPGRpdiAqbmdJZj1cImV4dHJhVmFsaWRhdGVNZXNzYWdlXCIgY2xhc3M9XCJkeC1maWVsZFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImR4LWZpZWxkLXZhbHVlXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkeC10b2FzdC1lcnJvciBkeC10b2FzdC1jb250ZW50XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImR4LXRvYXN0LW1lc3NhZ2VcIj57eyBleHRyYVZhbGlkYXRlTWVzc2FnZSB9fTwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkeC1idXR0b24gI2Zvcm1TdWJtaXR0ZXIgW3Zpc2libGVdPVwiZmFsc2VcIiAob25DbGljayk9XCJzdWJtaXRGb3JtKClcIj48L2R4LWJ1dHRvbj5cclxuPC9uZy1jb250YWluZXI+XHJcbiJdfQ==
|
|
@@ -12,4 +12,4 @@ export class FormItemComponentBase extends ComponentBase {
|
|
|
12
12
|
this.readonly = false;
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1pdGVtLWNvbXBvbmVudC1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJzLWFudC9zcmMvdHlwZXMvY29tcG9uZW50L2Zvcm0taXRlbS1jb21wb25lbnQtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFL0MsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGFBQWE7SUFBeEQ7O1FBQ0U7O1dBRUc7UUFDSCxhQUFRLEdBQVksS0FBSyxDQUFDO1FBeUIxQjs7V0FFRztRQUNILGFBQVEsR0FBWSxLQUFLLENBQUM7SUFDNUIsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnRCYXNlfSBmcm9tIFwiLi9jb21wb25lbnQtYmFzZVwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIEZvcm1JdGVtQ29tcG9uZW50QmFzZSBleHRlbmRzIENvbXBvbmVudEJhc2Uge1xyXG4gIC8qKlxyXG4gICAqIOe8lui+keaooeW8j++8jOWcqOiuvuiuoeWZqOS4reS4unRydWXvvIznlKjkuo7ljLrliIbnu4Tku7borr7orqHlkozlupTnlKjnirbmgIFcclxuICAgKi9cclxuICBlZGl0TW9kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIC8qKlxyXG4gICAqIOihqOWNleWUr+S4gOagh+ivhu+8jOihqOWNlee7hOS7tmR4LXZhbGlkYXRvcueahHZhbGlkYXRpb25Hcm91cOWQjeensO+8jOeUqOS6jue7n+S4gOagoemqjOihqOWNlVxyXG4gICAqL1xyXG4gIHZhbGlkYXRpb25Hcm91cE5hbWUhOiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICog5b2T5YmN6KGo5Y2V5a+55bqU5pWw5o2u57G756ef5oi3XHJcbiAgICovXHJcbiAgdGVuYW50OiBhbnk7XHJcbiAgLyoqXHJcbiAgICog5b2T5YmN6KGo5Y2V5a+55bqU5pWw5o2u57G75ZCNXHJcbiAgICovXHJcbiAgY2xhc3NOYW1lOiBhbnk7XHJcbiAgLyoqXHJcbiAgICog5b2T5YmN6KGo5Y2V5a+55bqU5pWw5o2u5a6e5L6Lb2lkXHJcbiAgICovXHJcbiAgb2lkPzogYW55O1xyXG4gIC8qKlxyXG4gICAqIOihqOWNleW9k+WJjW1vZGVsXHJcbiAgICovXHJcbiAgbW9kZWw6IGFueTtcclxuICAvKipcclxuICAgKiDmiZPlvIDooajljZXnmoTnu4Tku7bvvIzkuIDoiKznlKjkuo7liLfmlrDkuIrlsYLooajmoLxcclxuICAgKi9cclxuICBvcGVuZXI6IGFueTtcclxuICAvKipcclxuICAgKiDooajljZXlj6ror7vnirbmgIHvvIznlKjkuo7ljLrliIbnu4Tku7blj6ror7vnirbmgIFcclxuICAgKi9cclxuICByZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export class UniqueId {
|
|
2
|
+
constructor(prefix) {
|
|
3
|
+
this.uniqueId = prefix + '_' + UniqueId.__ID_COUNTER++;
|
|
4
|
+
}
|
|
5
|
+
getUniqueId() {
|
|
6
|
+
return this.uniqueId;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
UniqueId.__ID_COUNTER = 1;
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVW5pcXVlSWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy91dGlsL1VuaXF1ZUlkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxRQUFRO0lBR25CLFlBQVksTUFBYztRQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sR0FBRyxHQUFHLEdBQUcsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pELENBQUM7SUFJRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7O0FBVmMscUJBQVksR0FBRyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgVW5pcXVlSWQge1xyXG4gIHByaXZhdGUgc3RhdGljIF9fSURfQ09VTlRFUiA9IDE7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByZWZpeDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnVuaXF1ZUlkID0gcHJlZml4ICsgJ18nICsgVW5pcXVlSWQuX19JRF9DT1VOVEVSKys7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IHVuaXF1ZUlkOiBzdHJpbmc7XHJcblxyXG4gIGdldFVuaXF1ZUlkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudW5pcXVlSWQ7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
package/esm2020/util/utils.mjs
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import notify from "devextreme/ui/notify";
|
|
2
2
|
import { formatDate } from "@angular/common";
|
|
3
3
|
import { firstValueFrom, of } from "rxjs";
|
|
4
|
+
import validationEngine from "devextreme/ui/validation_engine";
|
|
4
5
|
export function notify_error(message) {
|
|
5
6
|
_notify(message, 12000, 'warning');
|
|
6
7
|
}
|
|
@@ -108,7 +109,7 @@ export function download_file(blob, filename, callback) {
|
|
|
108
109
|
a.remove();
|
|
109
110
|
});
|
|
110
111
|
}
|
|
111
|
-
export
|
|
112
|
+
export function validate(validator) {
|
|
112
113
|
return new Promise(resolve => {
|
|
113
114
|
if (!validator) {
|
|
114
115
|
resolve(true);
|
|
@@ -132,11 +133,20 @@ export async function validate(validator) {
|
|
|
132
133
|
}
|
|
133
134
|
});
|
|
134
135
|
}
|
|
135
|
-
export
|
|
136
|
+
export function validate_group(validationGroupComponent) {
|
|
137
|
+
if (!validationGroupComponent) {
|
|
138
|
+
return firstValueFrom(of(true));
|
|
139
|
+
}
|
|
140
|
+
return validateGroup(validationGroupComponent.instance, validationGroupComponent.element.nativeElement);
|
|
141
|
+
}
|
|
142
|
+
export function validate_group_by_name(name, brokenElementParent) {
|
|
143
|
+
const validationGroup = validationEngine.getGroupConfig(name);
|
|
136
144
|
if (!validationGroup) {
|
|
137
145
|
return firstValueFrom(of(true));
|
|
138
146
|
}
|
|
139
|
-
|
|
147
|
+
return validateGroup(validationGroup, brokenElementParent);
|
|
148
|
+
}
|
|
149
|
+
function validateGroup(validationGroup, brokenElementParent) {
|
|
140
150
|
let sourceNode;
|
|
141
151
|
const targetClassName = 'dx-field';
|
|
142
152
|
const findTargetNode = (node) => {
|
|
@@ -147,14 +157,14 @@ export async function validate_group(validationGroup) {
|
|
|
147
157
|
}
|
|
148
158
|
else {
|
|
149
159
|
node = node.parentElement;
|
|
150
|
-
if (node ===
|
|
160
|
+
if (node === brokenElementParent) {
|
|
151
161
|
return sourceNode;
|
|
152
162
|
}
|
|
153
163
|
}
|
|
154
164
|
}
|
|
155
165
|
};
|
|
156
166
|
return new Promise(resolve => {
|
|
157
|
-
const validateResult = validationGroup.
|
|
167
|
+
const validateResult = validationGroup.validate();
|
|
158
168
|
if (!validateResult.isValid) {
|
|
159
169
|
const brokenElement = (validateResult.brokenRules?.[0]).validator.element();
|
|
160
170
|
findTargetNode(brokenElement).scrollIntoView();
|
|
@@ -177,4 +187,4 @@ export async function validate_group(validationGroup) {
|
|
|
177
187
|
}
|
|
178
188
|
});
|
|
179
189
|
}
|
|
180
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy91dGlsL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sTUFBTSxNQUFNLHNCQUFzQixDQUFDO0FBRTFDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUMsY0FBYyxFQUFFLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUV4QyxNQUFNLFVBQVUsWUFBWSxDQUFDLE9BQWU7SUFDMUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDckMsQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQUMsT0FBZTtJQUM1QyxPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztBQUNwQyxDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxPQUFlO0lBQzVDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ3BDLENBQUM7QUFFRCxTQUFTLE9BQU8sQ0FBQyxPQUFlLEVBQUUsSUFBWSxFQUFFLElBQXNDO0lBQ3BGLE1BQU0sQ0FBQztRQUNMLFdBQVcsRUFBRSxJQUFJO1FBQ2pCLE9BQU87UUFDUCxJQUFJLEVBQUUsSUFBSTtRQUNWLFlBQVksRUFBRSxLQUFLO1FBQ25CLFFBQVEsRUFBRSxHQUFHO1FBQ2IsUUFBUSxFQUFFLEdBQUc7UUFDYixXQUFXLEVBQUUsRUFBQyxLQUFLLEVBQUUsc0JBQXNCLEVBQUM7S0FDN0MsRUFBRTtRQUNELFNBQVMsRUFBRSxTQUFTO1FBQ3BCLFFBQVEsRUFBRSxjQUFjO0tBQ3pCLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsV0FBVyxDQUFDLElBQVUsRUFBRSxNQUFjO0lBQ3BELE9BQU8sVUFBVSxDQUFDLElBQUksRUFB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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCBub3RpZnkgZnJvbSBcImRldmV4dHJlbWUvdWkvbm90aWZ5XCI7XHJcbmltcG9ydCB7RHhWYWxpZGF0aW9uR3JvdXBDb21wb25lbnQsIER4VmFsaWRhdG9yQ29tcG9uZW50fSBmcm9tIFwiZGV2ZXh0cmVtZS1hbmd1bGFyXCI7XHJcbmltcG9ydCB7Zm9ybWF0RGF0ZX0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQge2ZpcnN0VmFsdWVGcm9tLCBvZn0gZnJvbSBcInJ4anNcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBub3RpZnlfZXJyb3IobWVzc2FnZTogc3RyaW5nKSB7XHJcbiAgX25vdGlmeShtZXNzYWdlLCAxMjAwMCwgJ3dhcm5pbmcnKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG5vdGlmeV93YXJuaW5nKG1lc3NhZ2U6IHN0cmluZykge1xyXG4gIF9ub3RpZnkobWVzc2FnZSwgODAwMCwgJ3dhcm5pbmcnKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG5vdGlmeV9zdWNjZXNzKG1lc3NhZ2U6IHN0cmluZykge1xyXG4gIF9ub3RpZnkobWVzc2FnZSwgNDAwMCwgJ3N1Y2Nlc3MnKTtcclxufVxyXG5cclxuZnVuY3Rpb24gX25vdGlmeShtZXNzYWdlOiBzdHJpbmcsIHRpbWU6IG51bWJlciwgdHlwZTogJ2RhbmdlcicgfCAnd2FybmluZycgfCAnc3VjY2VzcycpIHtcclxuICBub3RpZnkoe1xyXG4gICAgZGlzcGxheVRpbWU6IHRpbWUsXHJcbiAgICBtZXNzYWdlLFxyXG4gICAgdHlwZTogdHlwZSxcclxuICAgIGNsb3NlT25Td2lwZTogZmFsc2UsXHJcbiAgICBtaW5XaWR0aDogMjAwLFxyXG4gICAgbWF4V2lkdGg6IDUwMCxcclxuICAgIHdyYXBwZXJBdHRyOiB7Y2xhc3M6ICdnbG9iYWwtdG9hc3QtbWVzc2FnZSd9XHJcbiAgfSwge1xyXG4gICAgZGlyZWN0aW9uOiAndXAtcHVzaCcsXHJcbiAgICBwb3NpdGlvbjogJ2JvdHRvbSByaWdodCdcclxuICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdF9kYXRlKGRhdGU6IERhdGUsIGxvY2FsZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICByZXR1cm4gZm9ybWF0RGF0ZShkYXRlLCAneXl5eS9NTS9kZCcsIGxvY2FsZSwgJ0dNVCs4Jyk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRfZGF0ZXRpbWUoZGF0ZTogRGF0ZSwgbG9jYWxlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gIHJldHVybiBmb3JtYXREYXRlKGRhdGUsICd5eXl5L01NL2RkIEhIOm1tOnNzJywgbG9jYWxlLCAnR01UKzgnKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvY2FsZVNvcnRNZXRob2QodmFsdWUxOiBzdHJpbmcsIHZhbHVlMjogc3RyaW5nKSB7XHJcbiAgcmV0dXJuIHZhbHVlMS5sb2NhbGVDb21wYXJlKHZhbHVlMik7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBmaWxlX3R5cGVfaWNvbihuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gIGNvbnN0IHR5cGUgPSBuYW1lLnN1YnN0cmluZyhuYW1lLmxhc3RJbmRleE9mKCcuJykgKyAxKS50b0xvY2FsZUxvd2VyQ2FzZSgpO1xyXG4gIHN3aXRjaCAodHlwZSkge1xyXG4gICAgY2FzZSAnZG9jJzpcclxuICAgIGNhc2UgJ2RvY3gnOlxyXG4gICAgICByZXR1cm4gJ3dvcmQnO1xyXG4gICAgY2FzZSAneGxzJzpcclxuICAgIGNhc2UgJ3hsc3gnOlxyXG4gICAgY2FzZSAnY3N2JzpcclxuICAgICAgcmV0dXJuICdleGNlbCc7XHJcbiAgICBjYXNlICdwcHQnOlxyXG4gICAgY2FzZSAncHB0eCc6XHJcbiAgICAgIHJldHVybiAncHB0JztcclxuICAgIGNhc2UgJ3BkZic6XHJcbiAgICAgIHJldHVybiAncGRmJztcclxuICAgIGNhc2UgJ3R4dCc6XHJcbiAgICBjYXNlICd4bWwnOlxyXG4gICAgY2FzZSAnanNvbic6XHJcbiAgICBjYXNlICdqcyc6XHJcbiAgICAgIHJldHVybiAndGV4dCc7XHJcbiAgICBjYXNlICdwbmcnOlxyXG4gICAgY2FzZSAnanBnJzpcclxuICAgIGNhc2UgJ2pwZWcnOlxyXG4gICAgY2FzZSAnZ2lmJzpcclxuICAgIGNhc2UgJ2JtcCc6XHJcbiAgICAgIHJldHVybiAnaW1hZ2UnO1xyXG4gICAgY2FzZSAnemlwJzpcclxuICAgIGNhc2UgJ3Jhcic6XHJcbiAgICBjYXNlICc3eic6XHJcbiAgICBjYXNlICdqYXInOlxyXG4gICAgICByZXR1cm4gJ3ppcCc7XHJcbiAgICBkZWZhdWx0OlxyXG4gICAgICByZXR1cm4gJ3Vua25vd24nO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHN1cHBvcnRfcHJldmlld19leHQoKTogc3RyaW5nW10ge1xyXG4gIHJldHVybiBbJ3BkZicsICdwbmcnLCAnanBnJywgJ2pwZWcnLCAnZ2lmJywgJ2JtcCcsICdkb2MnLCAnZG9jeCcsICd0eHQnLCAneG1sJywgJ2pzb24nLCAnanMnLCAneGxzJywgJ3hsc3gnLCAnY3N2JywgJ3BwdCcsICdwcHR4J107XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRfZmlsZV9zaXplKHNpemU6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgY29uc3QgbGFiZWxzID0gWydiJywgJ0tiJywgJ01iJywgJ0diJ107XHJcbiAgY29uc3QgY291bnQgPSBsYWJlbHMubGVuZ3RoIC0gMTtcclxuICBsZXQgaSA9IDA7XHJcbiAgd2hpbGUgKGkgPCBjb3VudCAmJiBzaXplID49IDEwMjQpIHtcclxuICAgIHNpemUgLz0gMTAyNDtcclxuICAgIGkrKztcclxuICB9XHJcbiAgcmV0dXJuIE1hdGgucm91bmQoc2l6ZSAqIDEwMCkgLyAxMDAgKyBcIiBcIiArIGxhYmVsc1tpXTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGZpbGVuYW1lX2Zyb21fZGlzcG9zaXRpb24oZGlzcG9zaXRpb246IHN0cmluZykge1xyXG4gIGNvbnN0IGZpbGVuYW1lUGFpciA9IGRpc3Bvc2l0aW9uLnNwbGl0KCc7JykuZmlsdGVyKHN0ciA9PiAvXmZpbGVuYW1lPS8udGVzdChzdHIudHJpbSgpKSkucG9wKCk7XHJcbiAgaWYgKGZpbGVuYW1lUGFpcikge1xyXG4gICAgbGV0IHN0ciA9IGZpbGVuYW1lUGFpci50cmltKCk7XHJcbiAgICBzdHIgPSBzdHIuc3BsaXQoJz0nKVsxXTtcclxuICAgIHN0ciA9IHN0ci5yZXBsYWNlKC9bJ1wiXS9nLCAnJyk7XHJcbiAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KHN0cik7XHJcbiAgfSBlbHNlIHtcclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGRvd25sb2FkX2ZpbGUoYmxvYjogQmxvYiwgZmlsZW5hbWU6IHN0cmluZywgY2FsbGJhY2s/OiBGdW5jdGlvbikge1xyXG4gIGNvbnN0IHVybCA9IHdpbmRvdy53ZWJraXRVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xyXG4gIGNvbnN0IGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XHJcbiAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtcclxuICBhLnNldEF0dHJpYnV0ZSgnc3R5bGUnLCAnZGlzcGxheTpub25lJyk7XHJcbiAgYS5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCB1cmwpO1xyXG4gIGEuc2V0QXR0cmlidXRlKCdkb3dubG9hZCcsIGRlY29kZVVSSUNvbXBvbmVudChmaWxlbmFtZSkpO1xyXG4gIGEuY2xpY2soKTtcclxuICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgIGlmIChjYWxsYmFjaykge1xyXG4gICAgICBjYWxsYmFjaygpO1xyXG4gICAgfVxyXG4gICAgYS5yZW1vdmUoKTtcclxuICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHZhbGlkYXRlKHZhbGlkYXRvcjogRHhWYWxpZGF0b3JDb21wb25lbnQpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICByZXR1cm4gbmV3IFByb21pc2U8Ym9vbGVhbj4ocmVzb2x2ZSA9PiB7XHJcbiAgICBpZiAoIXZhbGlkYXRvcikge1xyXG4gICAgICByZXNvbHZlKHRydWUpO1xyXG4gICAgfVxyXG4gICAgY29uc3QgdmFsaWRhdGVSZXN1bHQgPSB2YWxpZGF0b3IuaW5zdGFuY2UudmFsaWRhdGUoKTtcclxuICAgIGlmICghdmFsaWRhdGVSZXN1bHQuaXNWYWxpZCkge1xyXG4gICAgICByZXNvbHZlKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGlmICh2YWxpZGF0ZVJlc3VsdC5zdGF0dXMgPT09ICdwZW5kaW5nJykge1xyXG4gICAgICB2YWxpZGF0ZVJlc3VsdC5jb21wbGV0ZT8udGhlbigocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LmlzVmFsaWQpIHtcclxuICAgICAgICAgIHJlc29sdmUodHJ1ZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlc29sdmUoZmFsc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXNvbHZlKHRydWUpO1xyXG4gICAgfVxyXG4gIH0pO1xyXG59XHJcblxyXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdmFsaWRhdGVfZ3JvdXAodmFsaWRhdGlvbkdyb3VwOiBEeFZhbGlkYXRpb25Hcm91cENvbXBvbmVudCk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gIGlmICghdmFsaWRhdGlvbkdyb3VwKSB7XHJcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20ob2YodHJ1ZSkpO1xyXG4gIH1cclxuICBjb25zdCB0b3AgPSAodmFsaWRhdGlvbkdyb3VwIGFzIGFueSkuZWxlbWVudC5uYXRpdmVFbGVtZW50O1xyXG4gIGxldCBzb3VyY2VOb2RlO1xyXG4gIGNvbnN0IHRhcmdldENsYXNzTmFtZSA9ICdkeC1maWVsZCc7XHJcbiAgY29uc3QgZmluZFRhcmdldE5vZGUgPSAobm9kZTogYW55KSA9PiB7XHJcbiAgICBzb3VyY2VOb2RlID0gbm9kZTtcclxuICAgIHdoaWxlICh0cnVlKSB7XHJcbiAgICAgIGlmIChub2RlLmNsYXNzTGlzdC5jb250YWlucyh0YXJnZXRDbGFzc05hbWUpKSB7XHJcbiAgICAgICAgcmV0dXJuIG5vZGU7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbm9kZSA9IG5vZGUucGFyZW50RWxlbWVudDtcclxuICAgICAgICBpZiAobm9kZSA9PT0gdG9wKSB7XHJcbiAgICAgICAgICByZXR1cm4gc291cmNlTm9kZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9O1xyXG4gIHJldHVybiBuZXcgUHJvbWlzZTxib29sZWFuPihyZXNvbHZlID0+IHtcclxuICAgIGNvbnN0IHZhbGlkYXRlUmVzdWx0ID0gdmFsaWRhdGlvbkdyb3VwLmluc3RhbmNlLnZhbGlkYXRlKCk7XHJcbiAgICBpZiAoIXZhbGlkYXRlUmVzdWx0LmlzVmFsaWQpIHtcclxuICAgICAgY29uc3QgYnJva2VuRWxlbWVudCA9ICh2YWxpZGF0ZVJlc3VsdC5icm9rZW5SdWxlcz8uWzBdIGFzIGFueSkudmFsaWRhdG9yLmVsZW1lbnQoKTtcclxuICAgICAgZmluZFRhcmdldE5vZGUoYnJva2VuRWxlbWVudCkuc2Nyb2xsSW50b1ZpZXcoKTtcclxuICAgICAgcmVzb2x2ZShmYWxzZSk7XHJcbiAgICB9XHJcbiAgICBpZiAodmFsaWRhdGVSZXN1bHQuc3RhdHVzID09PSAncGVuZGluZycpIHtcclxuICAgICAgdmFsaWRhdGVSZXN1bHQuY29tcGxldGU/LnRoZW4oKHJlc3VsdDogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdC5pc1ZhbGlkKSB7XHJcbiAgICAgICAgICByZXNvbHZlKHRydWUpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBjb25zdCBicm9rZW5FbGVtZW50ID0gKHJlc3VsdC5icm9rZW5SdWxlcz8uWzBdIGFzIGFueSkudmFsaWRhdG9yLmVsZW1lbnQoKTtcclxuICAgICAgICAgIGZpbmRUYXJnZXROb2RlKGJyb2tlbkVsZW1lbnQpLnNjcm9sbEludG9WaWV3KCk7XHJcbiAgICAgICAgICByZXNvbHZlKGZhbHNlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmVzb2x2ZSh0cnVlKTtcclxuICAgIH1cclxuICB9KTtcclxufVxyXG4iXX0=
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy91dGlsL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sTUFBTSxNQUFNLHNCQUFzQixDQUFDO0FBRTFDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUMsY0FBYyxFQUFFLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLGdCQUFnQixNQUFNLGlDQUFpQyxDQUFDO0FBRS9ELE1BQU0sVUFBVSxZQUFZLENBQUMsT0FBZTtJQUMxQyxPQUFPLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztBQUNyQyxDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxPQUFlO0lBQzVDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ3BDLENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYyxDQUFDLE9BQWU7SUFDNUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDcEMsQ0FBQztBQUVELFNBQVMsT0FBTyxDQUFDLE9BQWUsRUFBRSxJQUFZLEVBQUUsSUFBc0M7SUFDcEYsTUFBTSxDQUFDO1FBQ0wsV0FBVyxFQUFFLElBQUk7UUFDakIsT0FBTztRQUNQLElBQUksRUFBRSxJQUFJO1FBQ1YsWUFBWSxFQUFFLEtBQUs7UUFDbkIsUUFBUSxFQUFFLEdBQUc7UUFDYixRQUFRLEVBQUUsR0FBRztRQUNiLFdBQVcsRUFBRSxFQUFDLEtBQUssRUFBRSxzQkFBc0IsRUFBQztLQUM3QyxFQUFFO1FBQ0QsU0FBUyxFQUFFLFNBQVM7UUFDcEIsUUFBUSxFQUFFLGNBQWM7S0FDekIsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBVSxFQUFF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QU8sRUFBRTtvQkFDbEIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUNmO3FCQUFNO29CQUNMLE1BQU0sYUFBYSxHQUFHLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBUyxDQUFBLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO29CQUMzRSxjQUFjLENBQUMsYUFBYSxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUM7b0JBQy9DLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDaEI7WUFDSCxDQUFDLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDZjtJQUNILENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBub3RpZnkgZnJvbSBcImRldmV4dHJlbWUvdWkvbm90aWZ5XCI7XHJcbmltcG9ydCB7RHhWYWxpZGF0b3JDb21wb25lbnR9IGZyb20gXCJkZXZleHRyZW1lLWFuZ3VsYXJcIjtcclxuaW1wb3J0IHtmb3JtYXREYXRlfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7Zmlyc3RWYWx1ZUZyb20sIG9mfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgdmFsaWRhdGlvbkVuZ2luZSBmcm9tIFwiZGV2ZXh0cmVtZS91aS92YWxpZGF0aW9uX2VuZ2luZVwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG5vdGlmeV9lcnJvcihtZXNzYWdlOiBzdHJpbmcpIHtcclxuICBfbm90aWZ5KG1lc3NhZ2UsIDEyMDAwLCAnd2FybmluZycpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbm90aWZ5X3dhcm5pbmcobWVzc2FnZTogc3RyaW5nKSB7XHJcbiAgX25vdGlmeShtZXNzYWdlLCA4MDAwLCAnd2FybmluZycpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbm90aWZ5X3N1Y2Nlc3MobWVzc2FnZTogc3RyaW5nKSB7XHJcbiAgX25vdGlmeShtZXNzYWdlLCA0MDAwLCAnc3VjY2VzcycpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBfbm90aWZ5KG1lc3NhZ2U6IHN0cmluZywgdGltZTogbnVtYmVyLCB0eXBlOiAnZGFuZ2VyJyB8ICd3YXJuaW5nJyB8ICdzdWNjZXNzJykge1xyXG4gIG5vdGlmeSh7XHJcbiAgICBkaXNwbGF5VGltZTogdGltZSxcclxuICAgIG1lc3NhZ2UsXHJcbiAgICB0eXBlOiB0eXBlLFxyXG4gICAgY2xvc2VPblN3aXBlOiBmYWxzZSxcclxuICAgIG1pbldpZHRoOiAyMDAsXHJcbiAgICBtYXhXaWR0aDogNTAwLFxyXG4gICAgd3JhcHBlckF0dHI6IHtjbGFzczogJ2dsb2JhbC10b2FzdC1tZXNzYWdlJ31cclxuICB9LCB7XHJcbiAgICBkaXJlY3Rpb246ICd1cC1wdXNoJyxcclxuICAgIHBvc2l0aW9uOiAnYm90dG9tIHJpZ2h0J1xyXG4gIH0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0X2RhdGUoZGF0ZTogRGF0ZSwgbG9jYWxlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gIHJldHVybiBmb3JtYXREYXRlKGRhdGUsICd5eXl5L01NL2RkJywgbG9jYWxlLCAnR01UKzgnKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdF9kYXRldGltZShkYXRlOiBEYXRlLCBsb2NhbGU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIGZvcm1hdERhdGUoZGF0ZSwgJ3l5eXkvTU0vZGQgSEg6bW06c3MnLCBsb2NhbGUsICdHTVQrOCcpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9jYWxlU29ydE1ldGhvZCh2YWx1ZTE6IHN0cmluZywgdmFsdWUyOiBzdHJpbmcpIHtcclxuICByZXR1cm4gdmFsdWUxLmxvY2FsZUNvbXBhcmUodmFsdWUyKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGZpbGVfdHlwZV9pY29uKG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgY29uc3QgdHlwZSA9IG5hbWUuc3Vic3RyaW5nKG5hbWUubGFzdEluZGV4T2YoJy4nKSArIDEpLnRvTG9jYWxlTG93ZXJDYXNlKCk7XHJcbiAgc3dpdGNoICh0eXBlKSB7XHJcbiAgICBjYXNlICdkb2MnOlxyXG4gICAgY2FzZSAnZG9jeCc6XHJcbiAgICAgIHJldHVybiAnd29yZCc7XHJcbiAgICBjYXNlICd4bHMnOlxyXG4gICAgY2FzZSAneGxzeCc6XHJcbiAgICBjYXNlICdjc3YnOlxyXG4gICAgICByZXR1cm4gJ2V4Y2VsJztcclxuICAgIGNhc2UgJ3BwdCc6XHJcbiAgICBjYXNlICdwcHR4JzpcclxuICAgICAgcmV0dXJuICdwcHQnO1xyXG4gICAgY2FzZSAncGRmJzpcclxuICAgICAgcmV0dXJuICdwZGYnO1xyXG4gICAgY2FzZSAndHh0JzpcclxuICAgIGNhc2UgJ3htbCc6XHJcbiAgICBjYXNlICdqc29uJzpcclxuICAgIGNhc2UgJ2pzJzpcclxuICAgICAgcmV0dXJuICd0ZXh0JztcclxuICAgIGNhc2UgJ3BuZyc6XHJcbiAgICBjYXNlICdqcGcnOlxyXG4gICAgY2FzZSAnanBlZyc6XHJcbiAgICBjYXNlICdnaWYnOlxyXG4gICAgY2FzZSAnYm1wJzpcclxuICAgICAgcmV0dXJuICdpbWFnZSc7XHJcbiAgICBjYXNlICd6aXAnOlxyXG4gICAgY2FzZSAncmFyJzpcclxuICAgIGNhc2UgJzd6JzpcclxuICAgIGNhc2UgJ2phcic6XHJcbiAgICAgIHJldHVybiAnemlwJztcclxuICAgIGRlZmF1bHQ6XHJcbiAgICAgIHJldHVybiAndW5rbm93bic7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc3VwcG9ydF9wcmV2aWV3X2V4dCgpOiBzdHJpbmdbXSB7XHJcbiAgcmV0dXJuIFsncGRmJywgJ3BuZycsICdqcGcnLCAnanBlZycsICdnaWYnLCAnYm1wJywgJ2RvYycsICdkb2N4JywgJ3R4dCcsICd4bWwnLCAnanNvbicsICdqcycsICd4bHMnLCAneGxzeCcsICdjc3YnLCAncHB0JywgJ3BwdHgnXTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdF9maWxlX3NpemUoc2l6ZTogbnVtYmVyKTogc3RyaW5nIHtcclxuICBjb25zdCBsYWJlbHMgPSBbJ2InLCAnS2InLCAnTWInLCAnR2InXTtcclxuICBjb25zdCBjb3VudCA9IGxhYmVscy5sZW5ndGggLSAxO1xyXG4gIGxldCBpID0gMDtcclxuICB3aGlsZSAoaSA8IGNvdW50ICYmIHNpemUgPj0gMTAyNCkge1xyXG4gICAgc2l6ZSAvPSAxMDI0O1xyXG4gICAgaSsrO1xyXG4gIH1cclxuICByZXR1cm4gTWF0aC5yb3VuZChzaXplICogMTAwKSAvIDEwMCArIFwiIFwiICsgbGFiZWxzW2ldO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZmlsZW5hbWVfZnJvbV9kaXNwb3NpdGlvbihkaXNwb3NpdGlvbjogc3RyaW5nKSB7XHJcbiAgY29uc3QgZmlsZW5hbWVQYWlyID0gZGlzcG9zaXRpb24uc3BsaXQoJzsnKS5maWx0ZXIoc3RyID0+IC9eZmlsZW5hbWU9Ly50ZXN0KHN0ci50cmltKCkpKS5wb3AoKTtcclxuICBpZiAoZmlsZW5hbWVQYWlyKSB7XHJcbiAgICBsZXQgc3RyID0gZmlsZW5hbWVQYWlyLnRyaW0oKTtcclxuICAgIHN0ciA9IHN0ci5zcGxpdCgnPScpWzFdO1xyXG4gICAgc3RyID0gc3RyLnJlcGxhY2UoL1snXCJdL2csICcnKTtcclxuICAgIHJldHVybiBkZWNvZGVVUklDb21wb25lbnQoc3RyKTtcclxuICB9IGVsc2Uge1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZG93bmxvYWRfZmlsZShibG9iOiBCbG9iLCBmaWxlbmFtZTogc3RyaW5nLCBjYWxsYmFjaz86IEZ1bmN0aW9uKSB7XHJcbiAgY29uc3QgdXJsID0gd2luZG93LndlYmtpdFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XHJcbiAgY29uc3QgYSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcclxuICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGEpO1xyXG4gIGEuc2V0QXR0cmlidXRlKCdzdHlsZScsICdkaXNwbGF5Om5vbmUnKTtcclxuICBhLnNldEF0dHJpYnV0ZSgnaHJlZicsIHVybCk7XHJcbiAgYS5zZXRBdHRyaWJ1dGUoJ2Rvd25sb2FkJywgZGVjb2RlVVJJQ29tcG9uZW50KGZpbGVuYW1lKSk7XHJcbiAgYS5jbGljaygpO1xyXG4gIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgaWYgKGNhbGxiYWNrKSB7XHJcbiAgICAgIGNhbGxiYWNrKCk7XHJcbiAgICB9XHJcbiAgICBhLnJlbW92ZSgpO1xyXG4gIH0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGUodmFsaWRhdG9yOiBEeFZhbGlkYXRvckNvbXBvbmVudCk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gIHJldHVybiBuZXcgUHJvbWlzZTxib29sZWFuPihyZXNvbHZlID0+IHtcclxuICAgIGlmICghdmFsaWRhdG9yKSB7XHJcbiAgICAgIHJlc29sdmUodHJ1ZSk7XHJcbiAgICB9XHJcbiAgICBjb25zdCB2YWxpZGF0ZVJlc3VsdCA9IHZhbGlkYXRvci5pbnN0YW5jZS52YWxpZGF0ZSgpO1xyXG4gICAgaWYgKCF2YWxpZGF0ZVJlc3VsdC5pc1ZhbGlkKSB7XHJcbiAgICAgIHJlc29sdmUoZmFsc2UpO1xyXG4gICAgfVxyXG4gICAgaWYgKHZhbGlkYXRlUmVzdWx0LnN0YXR1cyA9PT0gJ3BlbmRpbmcnKSB7XHJcbiAgICAgIHZhbGlkYXRlUmVzdWx0LmNvbXBsZXRlPy50aGVuKChyZXN1bHQ6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQuaXNWYWxpZCkge1xyXG4gICAgICAgICAgcmVzb2x2ZSh0cnVlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVzb2x2ZShmYWxzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJlc29sdmUodHJ1ZSk7XHJcbiAgICB9XHJcbiAgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZV9ncm91cCh2YWxpZGF0aW9uR3JvdXBDb21wb25lbnQ6IGFueSk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gIGlmICghdmFsaWRhdGlvbkdyb3VwQ29tcG9uZW50KSB7XHJcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20ob2YodHJ1ZSkpO1xyXG4gIH1cclxuICByZXR1cm4gdmFsaWRhdGVHcm91cCh2YWxpZGF0aW9uR3JvdXBDb21wb25lbnQuaW5zdGFuY2UsIHZhbGlkYXRpb25Hcm91cENvbXBvbmVudC5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZV9ncm91cF9ieV9uYW1lKG5hbWU6IHN0cmluZywgYnJva2VuRWxlbWVudFBhcmVudDogRWxlbWVudCk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gIGNvbnN0IHZhbGlkYXRpb25Hcm91cCA9IHZhbGlkYXRpb25FbmdpbmUuZ2V0R3JvdXBDb25maWcobmFtZSk7XHJcbiAgaWYgKCF2YWxpZGF0aW9uR3JvdXApIHtcclxuICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbShvZih0cnVlKSk7XHJcbiAgfVxyXG4gIHJldHVybiB2YWxpZGF0ZUdyb3VwKHZhbGlkYXRpb25Hcm91cCwgYnJva2VuRWxlbWVudFBhcmVudCk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHZhbGlkYXRlR3JvdXAodmFsaWRhdGlvbkdyb3VwOiBhbnksIGJyb2tlbkVsZW1lbnRQYXJlbnQ6IEVsZW1lbnQpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICBsZXQgc291cmNlTm9kZTtcclxuICBjb25zdCB0YXJnZXRDbGFzc05hbWUgPSAnZHgtZmllbGQnO1xyXG4gIGNvbnN0IGZpbmRUYXJnZXROb2RlID0gKG5vZGU6IGFueSkgPT4ge1xyXG4gICAgc291cmNlTm9kZSA9IG5vZGU7XHJcbiAgICB3aGlsZSAodHJ1ZSkge1xyXG4gICAgICBpZiAobm9kZS5jbGFzc0xpc3QuY29udGFpbnModGFyZ2V0Q2xhc3NOYW1lKSkge1xyXG4gICAgICAgIHJldHVybiBub2RlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIG5vZGUgPSBub2RlLnBhcmVudEVsZW1lbnQ7XHJcbiAgICAgICAgaWYgKG5vZGUgPT09IGJyb2tlbkVsZW1lbnRQYXJlbnQpIHtcclxuICAgICAgICAgIHJldHVybiBzb3VyY2VOb2RlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH07XHJcbiAgcmV0dXJuIG5ldyBQcm9taXNlPGJvb2xlYW4+KHJlc29sdmUgPT4ge1xyXG4gICAgY29uc3QgdmFsaWRhdGVSZXN1bHQgPSB2YWxpZGF0aW9uR3JvdXAudmFsaWRhdGUoKTtcclxuICAgIGlmICghdmFsaWRhdGVSZXN1bHQuaXNWYWxpZCkge1xyXG4gICAgICBjb25zdCBicm9rZW5FbGVtZW50ID0gKHZhbGlkYXRlUmVzdWx0LmJyb2tlblJ1bGVzPy5bMF0gYXMgYW55KS52YWxpZGF0b3IuZWxlbWVudCgpO1xyXG4gICAgICBmaW5kVGFyZ2V0Tm9kZShicm9rZW5FbGVtZW50KS5zY3JvbGxJbnRvVmlldygpO1xyXG4gICAgICByZXNvbHZlKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGlmICh2YWxpZGF0ZVJlc3VsdC5zdGF0dXMgPT09ICdwZW5kaW5nJykge1xyXG4gICAgICB2YWxpZGF0ZVJlc3VsdC5jb21wbGV0ZT8udGhlbigocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LmlzVmFsaWQpIHtcclxuICAgICAgICAgIHJlc29sdmUodHJ1ZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbnN0IGJyb2tlbkVsZW1lbnQgPSAocmVzdWx0LmJyb2tlblJ1bGVzPy5bMF0gYXMgYW55KS52YWxpZGF0b3IuZWxlbWVudCgpO1xyXG4gICAgICAgICAgZmluZFRhcmdldE5vZGUoYnJva2VuRWxlbWVudCkuc2Nyb2xsSW50b1ZpZXcoKTtcclxuICAgICAgICAgIHJlc29sdmUoZmFsc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXNvbHZlKHRydWUpO1xyXG4gICAgfVxyXG4gIH0pO1xyXG59XHJcbiJdfQ==
|