@seniorsistemas/angular-components 17.19.2 → 17.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/seniorsistemas-angular-components.umd.js +151 -58
- package/bundles/seniorsistemas-angular-components.umd.js.map +1 -1
- package/bundles/seniorsistemas-angular-components.umd.min.js +2 -2
- package/bundles/seniorsistemas-angular-components.umd.min.js.map +1 -1
- package/components/dynamic-form/components/fields/button-field/button-field.component.d.ts +5 -0
- package/components/dynamic-form/components/grid/row/row.component.d.ts +2 -5
- package/components/dynamic-form/components/structure/section/section.component.d.ts +1 -0
- package/components/dynamic-form/configurations/field-type.d.ts +2 -1
- package/components/dynamic-form/configurations/fields/button-field.d.ts +33 -0
- package/components/dynamic-form/configurations/fields/index.d.ts +1 -0
- package/components/dynamic-form/configurations/grid/grid.d.ts +2 -1
- package/components/dynamic-form/configurations/structure/section.d.ts +18 -2
- package/components/dynamic-form/configurations/structure/structure.d.ts +5 -3
- package/components/dynamic-form/dynamic-form.d.ts +6 -5
- package/components/dynamic-form/index.d.ts +5 -0
- package/components/table/table-paging/table-paging.component.d.ts +1 -1
- package/esm2015/components/dynamic-form/components/fields/button-field/button-field.component.js +21 -0
- package/esm2015/components/dynamic-form/components/grid/row/row.component.js +2 -2
- package/esm2015/components/dynamic-form/components/structure/section/section.component.js +24 -5
- package/esm2015/components/dynamic-form/configurations/field-type.js +2 -1
- package/esm2015/components/dynamic-form/configurations/fields/button-field.js +28 -0
- package/esm2015/components/dynamic-form/configurations/fields/index.js +2 -1
- package/esm2015/components/dynamic-form/configurations/form-field.js +4 -1
- package/esm2015/components/dynamic-form/configurations/grid/grid.js +1 -1
- package/esm2015/components/dynamic-form/configurations/structure/section.js +23 -1
- package/esm2015/components/dynamic-form/configurations/structure/structure.js +2 -1
- package/esm2015/components/dynamic-form/dynamic-form.directive.js +1 -1
- package/esm2015/components/dynamic-form/dynamic-form.js +4 -1
- package/esm2015/components/dynamic-form/dynamic-form.module.js +3 -1
- package/esm2015/components/dynamic-form/index.js +6 -1
- package/esm2015/components/table/table-paging/table-paging.component.js +4 -2
- package/esm2015/seniorsistemas-angular-components.js +41 -40
- package/esm5/components/dynamic-form/components/fields/button-field/button-field.component.js +24 -0
- package/esm5/components/dynamic-form/components/grid/row/row.component.js +2 -2
- package/esm5/components/dynamic-form/components/structure/section/section.component.js +11 -2
- package/esm5/components/dynamic-form/configurations/field-type.js +2 -1
- package/esm5/components/dynamic-form/configurations/fields/button-field.js +33 -0
- package/esm5/components/dynamic-form/configurations/fields/index.js +2 -1
- package/esm5/components/dynamic-form/configurations/form-field.js +4 -1
- package/esm5/components/dynamic-form/configurations/grid/grid.js +1 -1
- package/esm5/components/dynamic-form/configurations/structure/section.js +25 -2
- package/esm5/components/dynamic-form/configurations/structure/structure.js +2 -1
- package/esm5/components/dynamic-form/dynamic-form.directive.js +1 -1
- package/esm5/components/dynamic-form/dynamic-form.js +4 -1
- package/esm5/components/dynamic-form/dynamic-form.module.js +3 -1
- package/esm5/components/dynamic-form/index.js +6 -1
- package/esm5/components/table/table-paging/table-paging.component.js +4 -2
- package/esm5/seniorsistemas-angular-components.js +41 -40
- package/fesm2015/seniorsistemas-angular-components.js +109 -17
- package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
- package/fesm5/seniorsistemas-angular-components.js +104 -15
- package/fesm5/seniorsistemas-angular-components.js.map +1 -1
- package/package.json +1 -1
- package/seniorsistemas-angular-components.d.ts +40 -39
- package/seniorsistemas-angular-components.metadata.json +1 -1
|
@@ -20,6 +20,7 @@ import { TextAreaIAFieldComponent } from "./components/fields/text-area-ia/text-
|
|
|
20
20
|
import { TextAreaFieldComponent } from "./components/fields/text-area/text-area-field.component";
|
|
21
21
|
import { TextFieldComponent } from "./components/fields/text/text-field.component";
|
|
22
22
|
import { CheckboxFieldComponent } from "./components/fields";
|
|
23
|
+
import { ButtonFieldComponent } from "./components/fields/button-field/button-field.component";
|
|
23
24
|
import { EditorFieldComponent } from "./components/fields/editor/editor-field.component";
|
|
24
25
|
import { ProfilePictureFieldComponent } from "./components/fields/profile-picture/profile-picture-field.component";
|
|
25
26
|
import { FieldType } from "./configurations/field-type";
|
|
@@ -127,6 +128,8 @@ export class DynamicField extends DynamicForm {
|
|
|
127
128
|
return ProfilePictureFieldComponent;
|
|
128
129
|
case FieldType.Editor:
|
|
129
130
|
return EditorFieldComponent;
|
|
131
|
+
case FieldType.Button:
|
|
132
|
+
return ButtonFieldComponent;
|
|
130
133
|
case FieldType.Custom:
|
|
131
134
|
return this.field.CustomFieldComponentClass;
|
|
132
135
|
default:
|
|
@@ -190,4 +193,4 @@ export class DynamicGrid extends DynamicForm {
|
|
|
190
193
|
}
|
|
191
194
|
}
|
|
192
195
|
}
|
|
193
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvZHluYW1pYy1mb3JtL2R5bmFtaWMtZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUNyRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDdkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFcEYsU0FBUztBQUNULE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQzNHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLCtFQUErRSxDQUFDO0FBQ2pJLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FB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LFFBQVEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUU7WUFDdEIsS0FBSyxRQUFRLENBQUMsR0FBRztnQkFDYixPQUFPLFlBQVksQ0FBQztZQUN4QjtnQkFDSSxNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUM7U0FDbkY7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIENvbXBvbmVudFJlZiwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcblxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcblxuaW1wb3J0IHsgRmlsZVVwbG9hZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgUmFkaW9CdXR0b25Db21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9yYWRpby1idXR0b24vcmFkaW8tYnV0dG9uLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgUm93Q29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9ncmlkL3Jvdy9yb3cuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBGaWVsZHNldENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvc3RydWN0dXJlL2ZpZWxkc2V0L2ZpZWxkc2V0LmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgU2VjdGlvbkNvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvc3RydWN0dXJlL3NlY3Rpb24vc2VjdGlvbi5jb21wb25lbnRcIjtcblxuLy8gZmllbGRzXG5pbXBvcnQgeyBBdXRvY29tcGxldGVGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUtZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBCaWdudW1iZXJGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2JpZ251bWJlci9iaWdudW1iZXItZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBCb29sZWFuRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9ib29sZWFuL2Jvb2xlYW4tZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBCb29sZWFuU3dpdGNoRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9ib29sZWFuL2Jvb2xlYW4tc3dpdGNoLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQ2FsZW5kYXJGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2NhbGVuZGFyL2NhbGVuZGFyLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQ2hpcHNGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2NoaXBzL2NoaXBzLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQ291bnRyeVBob25lUGlja2VyRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9jb3VudHJ5LXBob25lLXBpY2tlci9jb3VudHJ5LXBob25lLXBpY2tlci1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IEN1cnJlbmN5RmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9jdXJyZW5jeS9jdXJyZW5jeS1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IExvb2t1cEZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvbG9va3VwL2xvb2t1cC1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFBhc3N3b3JkRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9wYXNzd29yZC9wYXNzd29yZC1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFNlbGVjdEZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvc2VsZWN0L3NlbGVjdC1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFNsaWRlckZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvc2xpZGVyL3NsaWRlci1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFRleHRBcmVhSUFGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL3RleHQtYXJlYS1pYS90ZXh0LWFyZWEtaWEtZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBUZXh0QXJlYUZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvdGV4dC1hcmVhL3RleHQtYXJlYS1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFRleHRGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL3RleHQvdGV4dC1maWVsZC5jb21wb25lbnRcIjtcblxuaW1wb3J0IHsgQ2hlY2tib3hGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzXCI7XG5pbXBvcnQgeyBFZGl0b3JGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2VkaXRvci9lZGl0b3ItZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBQcm9maWxlUGljdHVyZUZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvcHJvZmlsZS1waWN0dXJlL3Byb2ZpbGUtcGljdHVyZS1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IEZpZWxkVHlwZSB9IGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2ZpZWxkLXR5cGVcIjtcbmltcG9ydCB7IEZvcm1GaWVsZCB9IGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2Zvcm0tZmllbGRcIjtcbmltcG9ydCB7IEdyaWRUeXBlIH0gZnJvbSBcIi4vY29uZmlndXJhdGlvbnMvZ3JpZC10eXBlXCI7XG5pbXBvcnQgeyBHcmlkIH0gZnJvbSBcIi4vY29uZmlndXJhdGlvbnMvZ3JpZC9ncmlkXCI7XG5pbXBvcnQgeyBTdHJ1Y3R1cmVUeXBlIH0gZnJvbSBcIi4vY29uZmlndXJhdGlvbnMvc3RydWN0dXJlLXR5cGVcIjtcbmltcG9ydCB7IFN0cnVjdHVyZSB9IGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL3N0cnVjdHVyZS9zdHJ1Y3R1cmVcIjtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIER5bmFtaWNGb3JtIHtcbiAgICBncm91cDogRm9ybUdyb3VwO1xuICAgIGVycm9yTWVzc2FnZXM6IGFueTtcbiAgICBhYnN0cmFjdCBjcmVhdGVDb21wb25lbnQocmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgY29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmKTogYW55O1xuICAgIGFic3RyYWN0IHVwZGF0ZVZhcmlhYmxlcyhjb21wb25lbnQ6IENvbXBvbmVudFJlZjxhbnk+KTogdm9pZDtcbiAgICBhYnN0cmFjdCBnZXRDb21wb25lbnQoKTogYW55O1xuXG4gICAgY29uc3RydWN0b3IoeyBncm91cCwgZXJyb3JNZXNzYWdlcyB9OiB7IGdyb3VwOiBGb3JtR3JvdXA7IGVycm9yTWVzc2FnZXM6IGFueSB9KSB7XG4gICAgICAgIHRoaXMuZ3JvdXAgPSBncm91cDtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzID0gZXJyb3JNZXNzYWdlcztcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEeW5hbWljRmllbGQgZXh0ZW5kcyBEeW5hbWljRm9ybSB7XG4gICAgZmllbGQ6IEZvcm1GaWVsZDtcbiAgICBlcnJvck1lc3NhZ2VzOiBhbnk7XG5cbiAgICBjb25zdHJ1Y3Rvcih7IGdyb3VwLCBmaWVsZCwgZXJyb3JNZXNzYWdlcyB9OiB7IGdyb3VwOiBGb3JtR3JvdXA7IGZpZWxkOiBGb3JtRmllbGQ7IGVycm9yTWVzc2FnZXM6IGFueSB9KSB7XG4gICAgICAgIHN1cGVyKHtcbiAgICAgICAgICAgIGdyb3VwLFxuICAgICAgICAgICAgZXJyb3JNZXNzYWdlcyxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5maWVsZCA9IGZpZWxkO1xuICAgIH1cblxuICAgIHB1YmxpYyBjcmVhdGVDb21wb25lbnQocmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgY29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmKSB7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudEZhY3RvcnkgPSByZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeSh0aGlzLmdldENvbXBvbmVudCgpKTtcbiAgICAgICAgY29uc3QgY29tcG9uZW50ID0gY29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudChjb21wb25lbnRGYWN0b3J5KSBhcyBDb21wb25lbnRSZWY8YW55PjtcbiAgICAgICAgY29tcG9uZW50Lmluc3RhbmNlLmZpZWxkID0gdGhpcy5maWVsZDtcbiAgICAgICAgLy8gTXVzdCBiZSB0aGlzIHdheSBiZWNhdXNlIHNvbWUgdGVhbXMgdXNlIG5hbWUgbGlrZSBcImUwNzBlbXAuY29kZW1wXCJcbiAgICAgICAgY29tcG9uZW50Lmluc3RhbmNlLmZvcm1Db250cm9sID0gdGhpcy5ncm91cFtcImNvbnRyb2xzXCJdW3RoaXMuZmllbGQubmFtZV07XG5cbiAgICAgICAgdGhpcy5fc3dpdGNoRW1wdHlTdHJpbmdUb051bGwoY29tcG9uZW50KTtcblxuICAgICAgICBjb21wb25lbnQuaW5zdGFuY2UuZXJyb3JNZXNzYWdlcyA9IHRoaXMuZXJyb3JNZXNzYWdlcztcblxuICAgICAgICB0aGlzLnNldFZhcmlhYmxlc0J5VHlwZShjb21wb25lbnQpO1xuICAgICAgICByZXR1cm4gY29tcG9uZW50O1xuICAgIH1cblxuICAgIHByaXZhdGUgX3N3aXRjaEVtcHR5U3RyaW5nVG9OdWxsKGNvbXBvbmVudDogQ29tcG9uZW50UmVmPGFueT4pIHtcbiAgICAgICAgc3dpdGNoIChjb21wb25lbnQuaW5zdGFuY2UuZmllbGQudHlwZSkge1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuUGFzc3dvcmQ6XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5TdHJpbmc6XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5UZXh0OlxuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuVGV4dElBOlxuICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlQ2hhbmdlcyQ6IFN1YnNjcmlwdGlvbiA9IGNvbXBvbmVudC5pbnN0YW5jZS5mb3JtQ29udHJvbC52YWx1ZUNoYW5nZXNcbiAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgodmFsdWU6IHVua25vd24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gXCJcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS5mb3JtQ29udHJvbC5zZXRWYWx1ZShudWxsLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIGNvbXBvbmVudC5vbkRlc3Ryb3koKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZUNoYW5nZXMkLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0VmFyaWFibGVzQnlUeXBlKGNvbXBvbmVudDogQ29tcG9uZW50UmVmPGFueT4pIHtcbiAgICAgICAgaWYgKHRoaXMuZmllbGQudHlwZSA9PSBGaWVsZFR5cGUuVGltZSkge1xuICAgICAgICAgICAgY29tcG9uZW50Lmluc3RhbmNlLnRpbWVPbmx5ID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoW0ZpZWxkVHlwZS5Mb2NhbERhdGVUaW1lLCBGaWVsZFR5cGUuRGF0ZVRpbWUsIEZpZWxkVHlwZS5UaW1lXS5pbmNsdWRlcyh0aGlzLmZpZWxkLnR5cGUpKSB7XG4gICAgICAgICAgICBjb21wb25lbnQuaW5zdGFuY2Uuc2hvd1RpbWUgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZVZhcmlhYmxlcyhjb21wb25lbnQ6IENvbXBvbmVudFJlZjxhbnk+KSB7XG4gICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS5maWVsZCA9IHRoaXMuZmllbGQ7XG4gICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS5mb3JtQ29udHJvbCA9IHRoaXMuZ3JvdXBbXCJjb250cm9sc1wiXVt0aGlzLmZpZWxkLm5hbWVdO1xuICAgICAgICB0aGlzLnNldFZhcmlhYmxlc0J5VHlwZShjb21wb25lbnQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDb21wb25lbnQoKTogYW55IHtcbiAgICAgICAgc3dpdGNoICh0aGlzLmZpZWxkLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLkF1dG9jb21wbGV0ZTpcbiAgICAgICAgICAgICAgICByZXR1cm4gQXV0b2NvbXBsZXRlRmllbGRDb21wb25lbnQ7XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5CaW5hcnk6XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5TdHJpbmc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFRleHRGaWVsZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLkJvb2xlYW46XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZmllbGQucmVwcmVzZW50ZWRCeSA9PT0gXCJzd2l0Y2hcIiA/IEJvb2xlYW5Td2l0Y2hGaWVsZENvbXBvbmVudCA6IEJvb2xlYW5GaWVsZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLkNoZWNrYm94OlxuICAgICAgICAgICAgICAgIHJldHVybiBDaGVja2JveEZpZWxkQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuQ2hpcHM6XG4gICAgICAgICAgICAgICAgcmV0dXJuIENoaXBzRmllbGRDb21wb25lbnQ7XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5Db3VudHJ5UGhvbmVQaWNrZXI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIENvdW50cnlQaG9uZVBpY2tlckZpZWxkQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuRGF0ZTpcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLkRhdGVUaW1lOlxuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuTG9jYWxEYXRlVGltZTpcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLlRpbWU6XG4gICAgICAgICAgICAgICAgcmV0dXJuIENhbGVuZGFyRmllbGRDb21wb25lbnQ7XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5OdW1iZXI6XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5JbnRlZ2VyOlxuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuRG91YmxlOlxuICAgICAgICAgICAgICAgIHJldHVybiBCaWdudW1iZXJGaWVsZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLkVudW06XG4gICAgICAgICAgICAgICAgcmV0dXJuIFNlbGVjdEZpZWxkQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuTG9va3VwOlxuICAgICAgICAgICAgICAgIHJldHVybiBMb29rdXBGaWVsZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLk1vbmV5OlxuICAgICAgICAgICAgICAgIHJldHVybiBDdXJyZW5jeUZpZWxkQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuUmFkaW86XG4gICAgICAgICAgICAgICAgcmV0dXJuIFJhZGlvQnV0dG9uQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuVGV4dDpcbiAgICAgICAgICAgICAgICByZXR1cm4gVGV4dEFyZWFGaWVsZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLlRleHRJQTpcbiAgICAgICAgICAgICAgICByZXR1cm4gVGV4dEFyZWFJQUZpZWxkQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuUGFzc3dvcmQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFBhc3N3b3JkRmllbGRDb21wb25lbnQ7XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5CbG9iOlxuICAgICAgICAgICAgICAgIHJldHVybiBGaWxlVXBsb2FkQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuU2xpZGVyOlxuICAgICAgICAgICAgICAgIHJldHVybiBTbGlkZXJGaWVsZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLlByb2ZpbGVQaWN0dXJlOlxuICAgICAgICAgICAgICAgIHJldHVybiBQcm9maWxlUGljdHVyZUZpZWxkQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuRWRpdG9yOlxuICAgICAgICAgICAgICAgIHJldHVybiBFZGl0b3JGaWVsZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLkN1c3RvbTpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5maWVsZC5DdXN0b21GaWVsZENvbXBvbmVudENsYXNzO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRyeWluZyB0byB1c2UgYW4gdW5zdXBwb3J0ZWQgdHlwZSAoJHt0aGlzLmZpZWxkLnR5cGV9KS5gKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIER5bmFtaWNTdHJ1Y3R1cmUgZXh0ZW5kcyBEeW5hbWljRm9ybSB7XG4gICAgZ3JvdXA6IEZvcm1Hcm91cDtcbiAgICBjb25maWc6IFN0cnVjdHVyZTtcbiAgICBlcnJvck1lc3NhZ2VzOiBhbnk7XG5cbiAgICBjb25zdHJ1Y3Rvcih7IGdyb3VwLCBjb25maWcsIGVycm9yTWVzc2FnZXMgfTogeyBncm91cDogRm9ybUdyb3VwOyBjb25maWc6IFN0cnVjdHVyZTsgZXJyb3JNZXNzYWdlczogYW55IH0pIHtcbiAgICAgICAgc3VwZXIoe1xuICAgICAgICAgICAgZ3JvdXAsXG4gICAgICAgICAgICBlcnJvck1lc3NhZ2VzLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgfVxuXG4gICAgcHVibGljIGNyZWF0ZUNvbXBvbmVudChyZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHtcbiAgICAgICAgY29uc3QgY29tcG9uZW50RmFjdG9yeSA9IHJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KHRoaXMuZ2V0Q29tcG9uZW50KCkpO1xuICAgICAgICBjb25zdCBjb21wb25lbnQgPSBjb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudEZhY3RvcnkpIGFzIENvbXBvbmVudFJlZjxhbnk+O1xuICAgICAgICBjb21wb25lbnQuaW5zdGFuY2UuY29uZmlnID0gdGhpcy5jb25maWc7XG4gICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS5ncm91cCA9IHRoaXMuZ3JvdXA7XG4gICAgICAgIHJldHVybiBjb21wb25lbnQ7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZVZhcmlhYmxlcyhjb21wb25lbnQ6IENvbXBvbmVudFJlZjxhbnk+KSB7XG4gICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS5zdHJ1Y3R1cmUgPSB0aGlzLmNvbmZpZztcbiAgICAgICAgY29tcG9uZW50Lmluc3RhbmNlLmdyb3VwID0gdGhpcy5ncm91cDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q29tcG9uZW50KCk6IGFueSB7XG4gICAgICAgIHN3aXRjaCAodGhpcy5jb25maWcudHlwZSkge1xuICAgICAgICAgICAgY2FzZSBTdHJ1Y3R1cmVUeXBlLkZpZWxkc2V0OlxuICAgICAgICAgICAgICAgIHJldHVybiBGaWVsZHNldENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgU3RydWN0dXJlVHlwZS5TZWN0aW9uOlxuICAgICAgICAgICAgICAgIHJldHVybiBTZWN0aW9uQ29tcG9uZW50O1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRyeWluZyB0byB1c2UgYW4gdW5zdXBwb3J0ZWQgdHlwZSAoJHt0aGlzLmNvbmZpZy50eXBlfSkuYCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEeW5hbWljR3JpZCBleHRlbmRzIER5bmFtaWNGb3JtIHtcbiAgICBncm91cDogRm9ybUdyb3VwO1xuICAgIGNvbmZpZzogR3JpZDtcblxuICAgIGNvbnN0cnVjdG9yKHsgZ3JvdXAsIGNvbmZpZywgZXJyb3JNZXNzYWdlcyB9OiB7IGdyb3VwOiBGb3JtR3JvdXA7IGNvbmZpZzogR3JpZDsgZXJyb3JNZXNzYWdlczogYW55IH0pIHtcbiAgICAgICAgc3VwZXIoeyBncm91cCwgZXJyb3JNZXNzYWdlcyB9KTtcbiAgICAgICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgfVxuXG4gICAgcHVibGljIGNyZWF0ZUNvbXBvbmVudChyZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHtcbiAgICAgICAgY29uc3QgY29tcG9uZW50RmFjdG9yeSA9IHJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KHRoaXMuZ2V0Q29tcG9uZW50KCkpO1xuICAgICAgICBjb25zdCBjb21wb25lbnQgPSBjb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudEZhY3RvcnkpIGFzIENvbXBvbmVudFJlZjxhbnk+O1xuICAgICAgICBjb21wb25lbnQuaW5zdGFuY2UuY29uZmlnID0gdGhpcy5jb25maWc7XG4gICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS5ncm91cCA9IHRoaXMuZ3JvdXA7XG4gICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS5lcnJvck1lc3NhZ2VzID0gdGhpcy5lcnJvck1lc3NhZ2VzO1xuICAgICAgICByZXR1cm4gY29tcG9uZW50O1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVWYXJpYWJsZXMoY29tcG9uZW50OiBDb21wb25lbnRSZWY8YW55Pikge1xuICAgICAgICBjb21wb25lbnQuaW5zdGFuY2UuY29uZmlnID0gdGhpcy5jb25maWc7XG4gICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS5ncm91cCA9IHRoaXMuZ3JvdXA7XG4gICAgfVxuXG4gICAgcHVibGljIGdldENvbXBvbmVudCgpOiBhbnkge1xuICAgICAgICBzd2l0Y2ggKHRoaXMuY29uZmlnLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgR3JpZFR5cGUuUm93OlxuICAgICAgICAgICAgICAgIHJldHVybiBSb3dDb21wb25lbnQ7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVHJ5aW5nIHRvIHVzZSBhbiB1bnN1cHBvcnRlZCB0eXBlICgke3RoaXMuY29uZmlnLnR5cGV9KS5gKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
196
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvZHluYW1pYy1mb3JtL2R5bmFtaWMtZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUNyRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDdkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFcEYsU0FBUztBQUNULE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQzNHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLCtFQUErRSxDQUFDO0FBQ2pJLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FB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QUMsTUFBTSxDQUFDO1FBQ3hDLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDMUMsQ0FBQztJQUVNLFlBQVk7UUFDZixRQUFRLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFO1lBQ3RCLEtBQUssUUFBUSxDQUFDLEdBQUc7Z0JBQ2IsT0FBTyxZQUFZLENBQUM7WUFDeEI7Z0JBQ0ksTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO1NBQ25GO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBDb21wb25lbnRSZWYsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5cbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gXCJyeGpzXCI7XG5cbmltcG9ydCB7IEZpbGVVcGxvYWRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFJhZGlvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvcmFkaW8tYnV0dG9uL3JhZGlvLWJ1dHRvbi1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFJvd0NvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZ3JpZC9yb3cvcm93LmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgRmllbGRzZXRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL3N0cnVjdHVyZS9maWVsZHNldC9maWVsZHNldC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFNlY3Rpb25Db21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL3N0cnVjdHVyZS9zZWN0aW9uL3NlY3Rpb24uY29tcG9uZW50XCI7XG5cbi8vIGZpZWxkc1xuaW1wb3J0IHsgQXV0b2NvbXBsZXRlRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQmlnbnVtYmVyRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9iaWdudW1iZXIvYmlnbnVtYmVyLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQm9vbGVhbkZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvYm9vbGVhbi9ib29sZWFuLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQm9vbGVhblN3aXRjaEZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvYm9vbGVhbi9ib29sZWFuLXN3aXRjaC1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IENhbGVuZGFyRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9jYWxlbmRhci9jYWxlbmRhci1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IENoaXBzRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9jaGlwcy9jaGlwcy1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IENvdW50cnlQaG9uZVBpY2tlckZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvY291bnRyeS1waG9uZS1waWNrZXIvY291bnRyeS1waG9uZS1waWNrZXItZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBDdXJyZW5jeUZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvY3VycmVuY3kvY3VycmVuY3ktZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBMb29rdXBGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2xvb2t1cC9sb29rdXAtZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBQYXNzd29yZEZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvcGFzc3dvcmQvcGFzc3dvcmQtZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBTZWxlY3RGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL3NlbGVjdC9zZWxlY3QtZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBTbGlkZXJGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL3NsaWRlci9zbGlkZXItZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBUZXh0QXJlYUlBRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy90ZXh0LWFyZWEtaWEvdGV4dC1hcmVhLWlhLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgVGV4dEFyZWFGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL3RleHQtYXJlYS90ZXh0LWFyZWEtZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBUZXh0RmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy90ZXh0L3RleHQtZmllbGQuY29tcG9uZW50XCI7XG5cbmltcG9ydCB7IENoZWNrYm94RmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkc1wiO1xuaW1wb3J0IHsgQnV0dG9uRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9idXR0b24tZmllbGQvYnV0dG9uLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgRWRpdG9yRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9lZGl0b3IvZWRpdG9yLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgUHJvZmlsZVBpY3R1cmVGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL3Byb2ZpbGUtcGljdHVyZS9wcm9maWxlLXBpY3R1cmUtZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBGaWVsZFR5cGUgfSBmcm9tIFwiLi9jb25maWd1cmF0aW9ucy9maWVsZC10eXBlXCI7XG5pbXBvcnQgeyBGb3JtRmllbGQgfSBmcm9tIFwiLi9jb25maWd1cmF0aW9ucy9mb3JtLWZpZWxkXCI7XG5pbXBvcnQgeyBHcmlkVHlwZSB9IGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2dyaWQtdHlwZVwiO1xuaW1wb3J0IHsgUm93IH0gZnJvbSBcIi4vY29uZmlndXJhdGlvbnMvZ3JpZC9yb3dcIjtcbmltcG9ydCB7IFN0cnVjdHVyZVR5cGUgfSBmcm9tIFwiLi9jb25maWd1cmF0aW9ucy9zdHJ1Y3R1cmUtdHlwZVwiO1xuaW1wb3J0IHsgU3RydWN0dXJlIH0gZnJvbSBcIi4vY29uZmlndXJhdGlvbnMvc3RydWN0dXJlL3N0cnVjdHVyZVwiO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRHluYW1pY0Zvcm0ge1xuICAgIGdyb3VwOiBGb3JtR3JvdXA7XG4gICAgZXJyb3JNZXNzYWdlczogYW55O1xuICAgIGFic3RyYWN0IGNyZWF0ZUNvbXBvbmVudChyZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpOiBhbnk7XG4gICAgYWJzdHJhY3QgdXBkYXRlVmFyaWFibGVzKGNvbXBvbmVudDogQ29tcG9uZW50UmVmPGFueT4pOiB2b2lkO1xuICAgIGFic3RyYWN0IGdldENvbXBvbmVudCgpOiBhbnk7XG5cbiAgICBjb25zdHJ1Y3Rvcih7IGdyb3VwLCBlcnJvck1lc3NhZ2VzIH06IHsgZ3JvdXA6IEZvcm1Hcm91cDsgZXJyb3JNZXNzYWdlczogYW55IH0pIHtcbiAgICAgICAgdGhpcy5ncm91cCA9IGdyb3VwO1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZXMgPSBlcnJvck1lc3NhZ2VzO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIER5bmFtaWNGaWVsZCBleHRlbmRzIER5bmFtaWNGb3JtIHtcbiAgICBmaWVsZDogRm9ybUZpZWxkO1xuICAgIGVycm9yTWVzc2FnZXM6IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKHsgZ3JvdXAsIGZpZWxkLCBlcnJvck1lc3NhZ2VzIH06IHsgZ3JvdXA6IEZvcm1Hcm91cDsgZmllbGQ6IEZvcm1GaWVsZDsgZXJyb3JNZXNzYWdlczogYW55IH0pIHtcbiAgICAgICAgc3VwZXIoe1xuICAgICAgICAgICAgZ3JvdXAsXG4gICAgICAgICAgICBlcnJvck1lc3NhZ2VzLFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmZpZWxkID0gZmllbGQ7XG4gICAgfVxuXG4gICAgcHVibGljIGNyZWF0ZUNvbXBvbmVudChyZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHtcbiAgICAgICAgY29uc3QgY29tcG9uZW50RmFjdG9yeSA9IHJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KHRoaXMuZ2V0Q29tcG9uZW50KCkpO1xuICAgICAgICBjb25zdCBjb21wb25lbnQgPSBjb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudEZhY3RvcnkpIGFzIENvbXBvbmVudFJlZjxhbnk+O1xuICAgICAgICBjb21wb25lbnQuaW5zdGFuY2UuZmllbGQgPSB0aGlzLmZpZWxkO1xuICAgICAgICAvLyBNdXN0IGJlIHRoaXMgd2F5IGJlY2F1c2Ugc29tZSB0ZWFtcyB1c2UgbmFtZSBsaWtlIFwiZTA3MGVtcC5jb2RlbXBcIlxuICAgICAgICBjb21wb25lbnQuaW5zdGFuY2UuZm9ybUNvbnRyb2wgPSB0aGlzLmdyb3VwW1wiY29udHJvbHNcIl1bdGhpcy5maWVsZC5uYW1lXTtcblxuICAgICAgICB0aGlzLl9zd2l0Y2hFbXB0eVN0cmluZ1RvTnVsbChjb21wb25lbnQpO1xuXG4gICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS5lcnJvck1lc3NhZ2VzID0gdGhpcy5lcnJvck1lc3NhZ2VzO1xuXG4gICAgICAgIHRoaXMuc2V0VmFyaWFibGVzQnlUeXBlKGNvbXBvbmVudCk7XG4gICAgICAgIHJldHVybiBjb21wb25lbnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc3dpdGNoRW1wdHlTdHJpbmdUb051bGwoY29tcG9uZW50OiBDb21wb25lbnRSZWY8YW55Pikge1xuICAgICAgICBzd2l0Y2ggKGNvbXBvbmVudC5pbnN0YW5jZS5maWVsZC50eXBlKSB7XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5QYXNzd29yZDpcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLlN0cmluZzpcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLlRleHQ6XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5UZXh0SUE6XG4gICAgICAgICAgICAgICAgY29uc3QgdmFsdWVDaGFuZ2VzJDogU3Vic2NyaXB0aW9uID0gY29tcG9uZW50Lmluc3RhbmNlLmZvcm1Db250cm9sLnZhbHVlQ2hhbmdlc1xuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogdW5rbm93bikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlID09PSBcIlwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50Lmluc3RhbmNlLmZvcm1Db250cm9sLnNldFZhbHVlKG51bGwsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICBjb21wb25lbnQub25EZXN0cm95KCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWVDaGFuZ2VzJC51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHNldFZhcmlhYmxlc0J5VHlwZShjb21wb25lbnQ6IENvbXBvbmVudFJlZjxhbnk+KSB7XG4gICAgICAgIGlmICh0aGlzLmZpZWxkLnR5cGUgPT0gRmllbGRUeXBlLlRpbWUpIHtcbiAgICAgICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS50aW1lT25seSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKFtGaWVsZFR5cGUuTG9jYWxEYXRlVGltZSwgRmllbGRUeXBlLkRhdGVUaW1lLCBGaWVsZFR5cGUuVGltZV0uaW5jbHVkZXModGhpcy5maWVsZC50eXBlKSkge1xuICAgICAgICAgICAgY29tcG9uZW50Lmluc3RhbmNlLnNob3dUaW1lID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVWYXJpYWJsZXMoY29tcG9uZW50OiBDb21wb25lbnRSZWY8YW55Pikge1xuICAgICAgICBjb21wb25lbnQuaW5zdGFuY2UuZmllbGQgPSB0aGlzLmZpZWxkO1xuICAgICAgICBjb21wb25lbnQuaW5zdGFuY2UuZm9ybUNvbnRyb2wgPSB0aGlzLmdyb3VwW1wiY29udHJvbHNcIl1bdGhpcy5maWVsZC5uYW1lXTtcbiAgICAgICAgdGhpcy5zZXRWYXJpYWJsZXNCeVR5cGUoY29tcG9uZW50KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q29tcG9uZW50KCk6IGFueSB7XG4gICAgICAgIHN3aXRjaCAodGhpcy5maWVsZC50eXBlKSB7XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5BdXRvY29tcGxldGU6XG4gICAgICAgICAgICAgICAgcmV0dXJuIEF1dG9jb21wbGV0ZUZpZWxkQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuQmluYXJ5OlxuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuU3RyaW5nOlxuICAgICAgICAgICAgICAgIHJldHVybiBUZXh0RmllbGRDb21wb25lbnQ7XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5Cb29sZWFuOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmZpZWxkLnJlcHJlc2VudGVkQnkgPT09IFwic3dpdGNoXCIgPyBCb29sZWFuU3dpdGNoRmllbGRDb21wb25lbnQgOiBCb29sZWFuRmllbGRDb21wb25lbnQ7XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5DaGVja2JveDpcbiAgICAgICAgICAgICAgICByZXR1cm4gQ2hlY2tib3hGaWVsZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLkNoaXBzOlxuICAgICAgICAgICAgICAgIHJldHVybiBDaGlwc0ZpZWxkQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuQ291bnRyeVBob25lUGlja2VyOlxuICAgICAgICAgICAgICAgIHJldHVybiBDb3VudHJ5UGhvbmVQaWNrZXJGaWVsZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLkRhdGU6XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5EYXRlVGltZTpcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLkxvY2FsRGF0ZVRpbWU6XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5UaW1lOlxuICAgICAgICAgICAgICAgIHJldHVybiBDYWxlbmRhckZpZWxkQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuTnVtYmVyOlxuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuSW50ZWdlcjpcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLkRvdWJsZTpcbiAgICAgICAgICAgICAgICByZXR1cm4gQmlnbnVtYmVyRmllbGRDb21wb25lbnQ7XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5FbnVtOlxuICAgICAgICAgICAgICAgIHJldHVybiBTZWxlY3RGaWVsZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLkxvb2t1cDpcbiAgICAgICAgICAgICAgICByZXR1cm4gTG9va3VwRmllbGRDb21wb25lbnQ7XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5Nb25leTpcbiAgICAgICAgICAgICAgICByZXR1cm4gQ3VycmVuY3lGaWVsZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLlJhZGlvOlxuICAgICAgICAgICAgICAgIHJldHVybiBSYWRpb0J1dHRvbkNvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLlRleHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFRleHRBcmVhRmllbGRDb21wb25lbnQ7XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5UZXh0SUE6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFRleHRBcmVhSUFGaWVsZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLlBhc3N3b3JkOlxuICAgICAgICAgICAgICAgIHJldHVybiBQYXNzd29yZEZpZWxkQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuQmxvYjpcbiAgICAgICAgICAgICAgICByZXR1cm4gRmlsZVVwbG9hZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLlNsaWRlcjpcbiAgICAgICAgICAgICAgICByZXR1cm4gU2xpZGVyRmllbGRDb21wb25lbnQ7XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5Qcm9maWxlUGljdHVyZTpcbiAgICAgICAgICAgICAgICByZXR1cm4gUHJvZmlsZVBpY3R1cmVGaWVsZENvbXBvbmVudDtcbiAgICAgICAgICAgIGNhc2UgRmllbGRUeXBlLkVkaXRvcjpcbiAgICAgICAgICAgICAgICByZXR1cm4gRWRpdG9yRmllbGRDb21wb25lbnQ7XG4gICAgICAgICAgICBjYXNlIEZpZWxkVHlwZS5CdXR0b246XG4gICAgICAgICAgICAgICAgcmV0dXJuIEJ1dHRvbkZpZWxkQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuQ3VzdG9tOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmZpZWxkLkN1c3RvbUZpZWxkQ29tcG9uZW50Q2xhc3M7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVHJ5aW5nIHRvIHVzZSBhbiB1bnN1cHBvcnRlZCB0eXBlICgke3RoaXMuZmllbGQudHlwZX0pLmApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgRHluYW1pY1N0cnVjdHVyZSBleHRlbmRzIER5bmFtaWNGb3JtIHtcbiAgICBncm91cDogRm9ybUdyb3VwO1xuICAgIGNvbmZpZzogU3RydWN0dXJlO1xuICAgIGVycm9yTWVzc2FnZXM6IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKHsgZ3JvdXAsIGNvbmZpZywgZXJyb3JNZXNzYWdlcyB9OiB7IGdyb3VwOiBGb3JtR3JvdXA7IGNvbmZpZzogU3RydWN0dXJlOyBlcnJvck1lc3NhZ2VzOiBhbnkgfSkge1xuICAgICAgICBzdXBlcih7XG4gICAgICAgICAgICBncm91cCxcbiAgICAgICAgICAgIGVycm9yTWVzc2FnZXMsXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmNvbmZpZyA9IGNvbmZpZztcbiAgICB9XG5cbiAgICBwdWJsaWMgY3JlYXRlQ29tcG9uZW50KHJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIGNvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZikge1xuICAgICAgICBjb25zdCBjb21wb25lbnRGYWN0b3J5ID0gcmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkodGhpcy5nZXRDb21wb25lbnQoKSk7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IGNvbnRhaW5lci5jcmVhdGVDb21wb25lbnQoY29tcG9uZW50RmFjdG9yeSkgYXMgQ29tcG9uZW50UmVmPGFueT47XG4gICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS5jb25maWcgPSB0aGlzLmNvbmZpZztcbiAgICAgICAgY29tcG9uZW50Lmluc3RhbmNlLmdyb3VwID0gdGhpcy5ncm91cDtcbiAgICAgICAgcmV0dXJuIGNvbXBvbmVudDtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlVmFyaWFibGVzKGNvbXBvbmVudDogQ29tcG9uZW50UmVmPGFueT4pIHtcbiAgICAgICAgY29tcG9uZW50Lmluc3RhbmNlLnN0cnVjdHVyZSA9IHRoaXMuY29uZmlnO1xuICAgICAgICBjb21wb25lbnQuaW5zdGFuY2UuZ3JvdXAgPSB0aGlzLmdyb3VwO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDb21wb25lbnQoKTogYW55IHtcbiAgICAgICAgc3dpdGNoICh0aGlzLmNvbmZpZy50eXBlKSB7XG4gICAgICAgICAgICBjYXNlIFN0cnVjdHVyZVR5cGUuRmllbGRzZXQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIEZpZWxkc2V0Q29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBTdHJ1Y3R1cmVUeXBlLlNlY3Rpb246XG4gICAgICAgICAgICAgICAgcmV0dXJuIFNlY3Rpb25Db21wb25lbnQ7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVHJ5aW5nIHRvIHVzZSBhbiB1bnN1cHBvcnRlZCB0eXBlICgke3RoaXMuY29uZmlnLnR5cGV9KS5gKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIER5bmFtaWNHcmlkIGV4dGVuZHMgRHluYW1pY0Zvcm0ge1xuICAgIGdyb3VwOiBGb3JtR3JvdXA7XG4gICAgY29uZmlnOiBSb3c7XG5cbiAgICBjb25zdHJ1Y3Rvcih7IGdyb3VwLCBjb25maWcsIGVycm9yTWVzc2FnZXMgfTogeyBncm91cDogRm9ybUdyb3VwOyBjb25maWc6IFJvdzsgZXJyb3JNZXNzYWdlczogYW55IH0pIHtcbiAgICAgICAgc3VwZXIoeyBncm91cCwgZXJyb3JNZXNzYWdlcyB9KTtcbiAgICAgICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgfVxuXG4gICAgcHVibGljIGNyZWF0ZUNvbXBvbmVudChyZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHtcbiAgICAgICAgY29uc3QgY29tcG9uZW50RmFjdG9yeSA9IHJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KHRoaXMuZ2V0Q29tcG9uZW50KCkpO1xuICAgICAgICBjb25zdCBjb21wb25lbnQgPSBjb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudEZhY3RvcnkpXG4gICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS5jb25maWcgPSB0aGlzLmNvbmZpZztcbiAgICAgICAgY29tcG9uZW50Lmluc3RhbmNlLmdyb3VwID0gdGhpcy5ncm91cDtcbiAgICAgICAgY29tcG9uZW50Lmluc3RhbmNlLmVycm9yTWVzc2FnZXMgPSB0aGlzLmVycm9yTWVzc2FnZXM7XG4gICAgICAgIHJldHVybiBjb21wb25lbnQ7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZVZhcmlhYmxlcyhjb21wb25lbnQ6IENvbXBvbmVudFJlZjxhbnk+KSB7XG4gICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS5jb25maWcgPSB0aGlzLmNvbmZpZztcbiAgICAgICAgY29tcG9uZW50Lmluc3RhbmNlLmdyb3VwID0gdGhpcy5ncm91cDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q29tcG9uZW50KCkge1xuICAgICAgICBzd2l0Y2ggKHRoaXMuY29uZmlnLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgR3JpZFR5cGUuUm93OlxuICAgICAgICAgICAgICAgIHJldHVybiBSb3dDb21wb25lbnQ7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVHJ5aW5nIHRvIHVzZSBhbiB1bnN1cHBvcnRlZCB0eXBlICgke3RoaXMuY29uZmlnLnR5cGV9KS5gKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -76,6 +76,7 @@ import { NumberFieldModule } from "./components/fields/number/number-field.modul
|
|
|
76
76
|
import { PasswordFieldModule } from "./components/fields/password/password-field.module";
|
|
77
77
|
import { ProfilePictureModule } from "./components/fields/profile-picture/profile-picture-field.module";
|
|
78
78
|
import { TextFieldModule } from "./components/fields/text/text-field.module";
|
|
79
|
+
import { ButtonFieldComponent } from "./components/fields/button-field/button-field.component";
|
|
79
80
|
let DynamicFormModule = class DynamicFormModule {
|
|
80
81
|
};
|
|
81
82
|
DynamicFormModule = __decorate([
|
|
@@ -155,6 +156,7 @@ DynamicFormModule = __decorate([
|
|
|
155
156
|
SliderFieldComponent,
|
|
156
157
|
TextAreaFieldComponent,
|
|
157
158
|
TextAreaIAFieldComponent,
|
|
159
|
+
ButtonFieldComponent
|
|
158
160
|
],
|
|
159
161
|
exports: [DynamicFormComponent, LookupComponent],
|
|
160
162
|
entryComponents: [
|
|
@@ -182,4 +184,4 @@ DynamicFormModule = __decorate([
|
|
|
182
184
|
})
|
|
183
185
|
], DynamicFormModule);
|
|
184
186
|
export { DynamicFormModule };
|
|
185
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2R5bmFtaWMtZm9ybS9keW5hbWljLWZvcm0ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksSUFBSSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1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QUFDO1FBQ2hELGVBQWUsRUFBRTtZQUNiLDBCQUEwQjtZQUMxQixxQkFBcUI7WUFDckIsMkJBQTJCO1lBQzNCLHNCQUFzQjtZQUN0QixtQkFBbUI7WUFDbkIsZ0NBQWdDO1lBQ2hDLGlCQUFpQjtZQUNqQixtQkFBbUI7WUFDbkIsb0JBQW9CO1lBQ3BCLG9CQUFvQjtZQUNwQixZQUFZO1lBQ1osZ0JBQWdCO1lBQ2hCLG9CQUFvQjtZQUNwQixvQkFBb0I7WUFDcEIsc0JBQXNCO1lBQ3RCLHdCQUF3QjtTQUMzQjtRQUNELFNBQVMsRUFBRTtZQUNQLGNBQWM7WUFDZCxjQUFjO1NBQ2pCO0tBQ0osQ0FBQztHQUNXLGlCQUFpQixDQUFJO1NBQXJCLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5cbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5pbXBvcnQgeyBIb3RrZXlNb2R1bGUsIEhvdGtleXNTZXJ2aWNlIH0gZnJvbSBcImFuZ3VsYXIyLWhvdGtleXNcIjtcbmltcG9ydCB7IEF1dG9Db21wbGV0ZU1vZHVsZSB9IGZyb20gXCJwcmltZW5nL2F1dG9jb21wbGV0ZVwiO1xuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIGFzIFByaW1lQnV0dG9uTW9kdWxlIH0gZnJvbSBcInByaW1lbmcvYnV0dG9uXCI7XG5pbXBvcnQgeyBDYWxlbmRhck1vZHVsZSB9IGZyb20gXCJwcmltZW5nL2NhbGVuZGFyXCI7XG5pbXBvcnQgeyBDaGVja2JveE1vZHVsZSB9IGZyb20gXCJwcmltZW5nL2NoZWNrYm94XCI7XG5pbXBvcnQgeyBDaGlwc01vZHVsZSB9IGZyb20gXCJwcmltZW5nL2NoaXBzXCI7XG5pbXBvcnQgeyBEaWFsb2dNb2R1bGUgfSBmcm9tIFwicHJpbWVuZy9kaWFsb2dcIjtcbmltcG9ydCB7IERyb3Bkb3duTW9kdWxlIH0gZnJvbSBcInByaW1lbmcvZHJvcGRvd25cIjtcbmltcG9ydCB7IEZpZWxkc2V0TW9kdWxlIH0gZnJvbSBcInByaW1lbmcvZmllbGRzZXRcIjtcbmltcG9ydCB7IElucHV0TWFza01vZHVsZSB9IGZyb20gXCJwcmltZW5nL2lucHV0bWFza1wiO1xuaW1wb3J0IHsgSW5wdXRUZXh0TW9kdWxlIH0gZnJvbSBcInByaW1lbmcvaW5wdXR0ZXh0XCI7XG5pbXBvcnQgeyBJbnB1dFRleHRhcmVhTW9kdWxlIH0gZnJvbSBcInByaW1lbmcvaW5wdXR0ZXh0YXJlYVwiO1xuaW1wb3J0IHsgS2V5RmlsdGVyTW9kdWxlIH0gZnJvbSBcInByaW1lbmcva2V5ZmlsdGVyXCI7XG5pbXBvcnQgeyBNdWx0aVNlbGVjdE1vZHVsZSB9IGZyb20gXCJwcmltZW5nL211bHRpc2VsZWN0XCI7XG5pbXBvcnQgeyBQYW5lbE1vZHVsZSB9IGZyb20gXCJwcmltZW5nL3BhbmVsXCI7XG5pbXBvcnQgeyBSYWRpb0J1dHRvbk1vZHVsZSB9IGZyb20gXCJwcmltZW5nL3JhZGlvYnV0dG9uXCI7XG5pbXBvcnQgeyBTbGlkZXJNb2R1bGUgfSBmcm9tICdwcmltZW5nL3NsaWRlcic7XG5pbXBvcnQgeyBUYWJsZU1vZHVsZSBhcyBQcmltZU5HVGFibGVNb2R1bGUgfSBmcm9tIFwicHJpbWVuZy90YWJsZVwiO1xuXG5pbXBvcnQgeyBNb3VzZUV2ZW50c01vZHVsZSB9IGZyb20gXCIuLi9tb3VzZS1ldmVudHMvbW91c2UtZXZlbnRzLm1vZHVsZVwiO1xuaW1wb3J0IHsgSUFzc2lzdFNlcnZpY2UgfSBmcm9tIFwiLi9zZXJ2aWNlcy9JQXNzaXN0L2lhc3Npc3Quc2VydmljZVwiO1xuXG4vLyBNb2R1bGVzXG5pbXBvcnQgeyBCYWRnZU1vZHVsZSB9IGZyb20gXCIuLi9iYWRnZS9iYWRnZS5tb2R1bGVcIjtcbmltcG9ydCB7IEJpZ251bWJlcklucHV0TW9kdWxlIH0gZnJvbSBcIi4uL2JpZ251bWJlci1pbnB1dC9udW1iZXItaW5wdXQubW9kdWxlXCI7XG5pbXBvcnQgeyBCdXR0b25Nb2R1bGUgfSBmcm9tIFwiLi4vYnV0dG9uL2J1dHRvbi5tb2R1bGVcIjtcbmltcG9ydCB7IENhbGVuZGFyTWFza01vZHVsZSB9IGZyb20gXCIuLi9jYWxlbmRhci1tYXNrL2NhbGVuZGFyLW1hc2subW9kdWxlXCI7XG5pbXBvcnQgeyBDb250cm9sRXJyb3JzTW9kdWxlIH0gZnJvbSBcIi4uL2NvbnRyb2wtZXJyb3JzL2NvbnRyb2wtZXJyb3JzLm1vZHVsZVwiO1xuaW1wb3J0IHsgQ291bnRyeVBob25lUGlja2VyTW9kdWxlIH0gZnJvbSBcIi4uL2NvdW50cnktcGhvbmUtcGlja2VyL2NvdW50cnktcGhvbmUtcGlja2VyLm1vZHVsZVwiO1xuaW1wb3J0IHsgRW1wdHlTdGF0ZU1vZHVsZSB9IGZyb20gXCIuLi9lbXB0eS1zdGF0ZS9lbXB0eS1zdGF0ZS5tb2R1bGVcIjtcbmltcG9ydCB7IEZpbGVVcGxvYWRNb2R1bGUgfSBmcm9tIFwiLi4vZmlsZS11cGxvYWQvZmlsZS11cGxvYWQubW9kdWxlXCI7XG5pbXBvcnQgeyBJbmZvU2lnbk1vZHVsZSB9IGZyb20gXCIuLi9pbmZvLXNpZ24vaW5mby1zaWduLm1vZHVsZVwiO1xuaW1wb3J0IHsgTG9hZGluZ1N0YXRlTW9kdWxlIH0gZnJvbSBcIi4uL2xvYWRpbmctc3RhdGUvbG9hZGluZy1zdGF0ZS5tb2R1bGVcIjtcbmltcG9ydCB7IExvY2FsZU1vZHVsZSB9IGZyb20gXCIuLi9sb2NhbGUvbG9jYWxlLm1vZHVsZVwiO1xuaW1wb3J0IHsgTG9jYWxpemVkTnVtYmVySW5wdXRNb2R1bGUgfSBmcm9tIFwiLi4vbG9jYWxpemVkLW51bWJlci1pbnB1dC9sb2NhbGl6ZWQtbnVtYmVyLWlucHV0Lm1vZHVsZVwiO1xuaW1wb3J0IHsgTWFza0Zvcm1hdHRlck1vZHVsZSB9IGZyb20gXCIuLi9tYXNrL21hc2stZm9ybWF0dGVyLm1vZHVsZVwiO1xuaW1wb3J0IHsgTnVtYmVySW5wdXRNb2R1bGUgfSBmcm9tIFwiLi4vbnVtYmVyLWlucHV0L251bWJlci1pbnB1dC5tb2R1bGVcIjtcbmltcG9ydCB7IFBhc3N3b3JkU3RyZW5ndGhNb2R1bGUgfSBmcm9tIFwiLi4vcGFzc3dvcmQtc3RyZW5ndGgvcGFzc3dvcmQtc3RyZW5ndGgubW9kdWxlXCI7XG5pbXBvcnQgeyBTd2l0Y2hNb2R1bGUgfSBmcm9tIFwiLi4vc3dpdGNoL3N3aXRjaC5tb2R1bGVcIjtcbmltcG9ydCB7IFRhYmxlSGVhZGVyQ2hlY2tib3hNb2R1bGUgfSBmcm9tIFwiLi4vdGFibGUtaGVhZGVyL3RhYmxlLWhlYWRlci1jaGVja294Lm1vZHVsZVwiO1xuaW1wb3J0IHsgVGFibGVNb2R1bGUgfSBmcm9tIFwiLi4vdGFibGUvdGFibGUubW9kdWxlXCI7XG5pbXBvcnQgeyBUb29sdGlwTW9kdWxlIH0gZnJvbSBcIi4uL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGVcIjtcblxuLy8gQ29tcG9uZW50c1xuaW1wb3J0IHsgQXV0b2NvbXBsZXRlRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQm9vbGVhbkZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvYm9vbGVhbi9ib29sZWFuLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQm9vbGVhblN3aXRjaEZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvYm9vbGVhbi9ib29sZWFuLXN3aXRjaC1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IENhbGVuZGFyRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9jYWxlbmRhci9jYWxlbmRhci1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IENoaXBzRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9jaGlwcy9jaGlwcy1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IENvdW50cnlQaG9uZVBpY2tlckZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvY291bnRyeS1waG9uZS1waWNrZXIvY291bnRyeS1waG9uZS1waWNrZXItZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBGaWxlVXBsb2FkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBMb29rdXBGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2xvb2t1cC9sb29rdXAtZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBSYWRpb0J1dHRvbkNvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24tZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBTZWxlY3RGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL3NlbGVjdC9zZWxlY3QtZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBTbGlkZXJGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL3NsaWRlci9zbGlkZXItZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBUZXh0QXJlYUlBRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy90ZXh0LWFyZWEtaWEvdGV4dC1hcmVhLWlhLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgVGV4dEFyZWFGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL3RleHQtYXJlYS90ZXh0LWFyZWEtZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBGaWVsZHNldENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvc3RydWN0dXJlL2ZpZWxkc2V0L2ZpZWxkc2V0LmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgU2VjdGlvbkNvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvc3RydWN0dXJlL3NlY3Rpb24vc2VjdGlvbi5jb21wb25lbnRcIjtcblxuLy8gR3JpZFxuaW1wb3J0IHsgUm93Q29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9ncmlkL3Jvdy9yb3cuY29tcG9uZW50XCI7XG4vLyBMb29rdXBcbmltcG9ydCB7IExvb2t1cENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvbG9va3VwL2xvb2t1cC5jb21wb25lbnRcIjtcblxuLy8gRHluYW1pYy1mb3JtXG5pbXBvcnQgeyBEeW5hbWljRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2R5bmFtaWMtZmllbGQvZHluYW1pYy1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IER5bmFtaWNGb3JtQ29tcG9uZW50IH0gZnJvbSBcIi4vZHluYW1pYy1mb3JtLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgRHluYW1pY0Zvcm1EaXJlY3RpdmUgfSBmcm9tIFwiLi9keW5hbWljLWZvcm0uZGlyZWN0aXZlXCI7XG5cbmltcG9ydCB7IEZpZWxkTGFiZWxNb2R1bGUgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkLWxhYmVsL2ZpZWxkLWxhYmVsLm1vZHVsZVwiO1xuaW1wb3J0IHsgQmlnbnVtYmVyRmllbGRNb2R1bGUgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9iaWdudW1iZXIvYmlnbnVtYmVyLWZpZWxkLm1vZHVsZVwiO1xuaW1wb3J0IHsgQ2hlY2tib3hGaWVsZE1vZHVsZSB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2NoZWNrYm94L2NoZWNrYm94LWZpZWxkLm1vZHVsZVwiO1xuaW1wb3J0IHsgQ3VycmVuY3lGaWVsZE1vZHVsZSB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2N1cnJlbmN5L2N1cnJlbmN5LWZpZWxkLm1vZHVsZVwiO1xuaW1wb3J0IHsgRWRpdG9yRmllbGRNb2R1bGUgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9lZGl0b3IvZWRpdG9yLWZpZWxkLm1vZHVsZVwiO1xuaW1wb3J0IHsgTnVtYmVyRmllbGRNb2R1bGUgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9udW1iZXIvbnVtYmVyLWZpZWxkLm1vZHVsZVwiO1xuaW1wb3J0IHsgUGFzc3dvcmRGaWVsZE1vZHVsZSB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL3Bhc3N3b3JkL3Bhc3N3b3JkLWZpZWxkLm1vZHVsZVwiO1xuaW1wb3J0IHsgUHJvZmlsZVBpY3R1cmVNb2R1bGUgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9wcm9maWxlLXBpY3R1cmUvcHJvZmlsZS1waWN0dXJlLWZpZWxkLm1vZHVsZVwiO1xuaW1wb3J0IHsgVGV4dEZpZWxkTW9kdWxlIH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvdGV4dC90ZXh0LWZpZWxkLm1vZHVsZVwiO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQXV0b0NvbXBsZXRlTW9kdWxlLFxuICAgICAgICBCYWRnZU1vZHVsZSxcbiAgICAgICAgQmlnbnVtYmVySW5wdXRNb2R1bGUsXG4gICAgICAgIEJ1dHRvbk1vZHVsZSxcbiAgICAgICAgQ2FsZW5kYXJNYXNrTW9kdWxlLFxuICAgICAgICBDYWxlbmRhck1vZHVsZSxcbiAgICAgICAgQ2hlY2tib3hNb2R1bGUsXG4gICAgICAgIENoaXBzTW9kdWxlLFxuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIENvbnRyb2xFcnJvcnNNb2R1bGUsXG4gICAgICAgIENvdW50cnlQaG9uZVBpY2tlck1vZHVsZSxcbiAgICAgICAgRGlhbG9nTW9kdWxlLFxuICAgICAgICBEcm9wZG93bk1vZHVsZSxcbiAgICAgICAgRW1wdHlTdGF0ZU1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIEhvdGtleU1vZHVsZSxcbiAgICAgICAgSW5wdXRNYXNrTW9kdWxlLFxuICAgICAgICBJbnB1dFRleHRhcmVhTW9kdWxlLFxuICAgICAgICBJbnB1dFRleHRNb2R1bGUsXG4gICAgICAgIEtleUZpbHRlck1vZHVsZSxcbiAgICAgICAgTG9hZGluZ1N0YXRlTW9kdWxlLFxuICAgICAgICBMb2NhbGVNb2R1bGUsXG4gICAgICAgIExvY2FsaXplZE51bWJlcklucHV0TW9kdWxlLFxuICAgICAgICBQYW5lbE1vZHVsZSxcbiAgICAgICAgUHJpbWVCdXR0b25Nb2R1bGUsXG4gICAgICAgIFByaW1lTkdUYWJsZU1vZHVsZSxcbiAgICAgICAgTXVsdGlTZWxlY3RNb2R1bGUsXG4gICAgICAgIE51bWJlcklucHV0TW9kdWxlLFxuICAgICAgICBSYWRpb0J1dHRvbk1vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgVG9vbHRpcE1vZHVsZSxcblxuICAgICAgICBGaWVsZHNldE1vZHVsZSxcbiAgICAgICAgVGFibGVIZWFkZXJDaGVja2JveE1vZHVsZSxcbiAgICAgICAgRmlsZVVwbG9hZE1vZHVsZSxcbiAgICAgICAgVGFibGVNb2R1bGUsXG4gICAgICAgIEluZm9TaWduTW9kdWxlLFxuICAgICAgICBNYXNrRm9ybWF0dGVyTW9kdWxlLFxuICAgICAgICBIb3RrZXlNb2R1bGUuZm9yUm9vdCgpLFxuICAgICAgICBNb3VzZUV2ZW50c01vZHVsZSxcbiAgICAgICAgU3dpdGNoTW9kdWxlLFxuICAgICAgICBQYXNzd29yZFN0cmVuZ3RoTW9kdWxlLFxuICAgICAgICBTbGlkZXJNb2R1bGUsXG4gICAgICAgIFRyYW5zbGF0ZU1vZHVsZS5mb3JDaGlsZCgpLFxuXG4gICAgICAgIFBhc3N3b3JkRmllbGRNb2R1bGUsXG4gICAgICAgIFRleHRGaWVsZE1vZHVsZSxcbiAgICAgICAgTnVtYmVyRmllbGRNb2R1bGUsXG4gICAgICAgIEN1cnJlbmN5RmllbGRNb2R1bGUsXG4gICAgICAgIEJpZ251bWJlckZpZWxkTW9kdWxlLFxuICAgICAgICBDaGVja2JveEZpZWxkTW9kdWxlLFxuICAgICAgICBQcm9maWxlUGljdHVyZU1vZHVsZSxcbiAgICAgICAgRWRpdG9yRmllbGRNb2R1bGUsXG4gICAgICAgIEZpZWxkTGFiZWxNb2R1bGUsXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgQXV0b2NvbXBsZXRlRmllbGRDb21wb25lbnQsXG4gICAgICAgIEJvb2xlYW5GaWVsZENvbXBvbmVudCxcbiAgICAgICAgQm9vbGVhblN3aXRjaEZpZWxkQ29tcG9uZW50LFxuICAgICAgICBDYWxlbmRhckZpZWxkQ29tcG9uZW50LFxuICAgICAgICBDaGlwc0ZpZWxkQ29tcG9uZW50LFxuICAgICAgICBDb3VudHJ5UGhvbmVQaWNrZXJGaWVsZENvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY0ZpZWxkQ29tcG9uZW50LFxuICAgICAgICBEeW5hbWljRm9ybUNvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY0Zvcm1EaXJlY3RpdmUsXG4gICAgICAgIEZpZWxkc2V0Q29tcG9uZW50LFxuICAgICAgICBGaWxlVXBsb2FkQ29tcG9uZW50LFxuICAgICAgICBMb29rdXBDb21wb25lbnQsXG4gICAgICAgIExvb2t1cEZpZWxkQ29tcG9uZW50LFxuICAgICAgICBSYWRpb0J1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgUm93Q29tcG9uZW50LFxuICAgICAgICBTZWN0aW9uQ29tcG9uZW50LFxuICAgICAgICBTZWxlY3RGaWVsZENvbXBvbmVudCxcbiAgICAgICAgU2xpZGVyRmllbGRDb21wb25lbnQsXG4gICAgICAgIFRleHRBcmVhRmllbGRDb21wb25lbnQsXG4gICAgICAgIFRleHRBcmVhSUFGaWVsZENvbXBvbmVudCxcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtEeW5hbWljRm9ybUNvbXBvbmVudCwgTG9va3VwQ29tcG9uZW50XSxcbiAgICBlbnRyeUNvbXBvbmVudHM6IFtcbiAgICAgICAgQXV0b2NvbXBsZXRlRmllbGRDb21wb25lbnQsXG4gICAgICAgIEJvb2xlYW5GaWVsZENvbXBvbmVudCxcbiAgICAgICAgQm9vbGVhblN3aXRjaEZpZWxkQ29tcG9uZW50LFxuICAgICAgICBDYWxlbmRhckZpZWxkQ29tcG9uZW50LFxuICAgICAgICBDaGlwc0ZpZWxkQ29tcG9uZW50LFxuICAgICAgICBDb3VudHJ5UGhvbmVQaWNrZXJGaWVsZENvbXBvbmVudCxcbiAgICAgICAgRmllbGRzZXRDb21wb25lbnQsXG4gICAgICAgIEZpbGVVcGxvYWRDb21wb25lbnQsXG4gICAgICAgIExvb2t1cEZpZWxkQ29tcG9uZW50LFxuICAgICAgICBSYWRpb0J1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgUm93Q29tcG9uZW50LFxuICAgICAgICBTZWN0aW9uQ29tcG9uZW50LFxuICAgICAgICBTZWxlY3RGaWVsZENvbXBvbmVudCxcbiAgICAgICAgU2xpZGVyRmllbGRDb21wb25lbnQsXG4gICAgICAgIFRleHRBcmVhRmllbGRDb21wb25lbnQsXG4gICAgICAgIFRleHRBcmVhSUFGaWVsZENvbXBvbmVudCxcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBIb3RrZXlzU2VydmljZSxcbiAgICAgICAgSUFzc2lzdFNlcnZpY2UsXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljRm9ybU1vZHVsZSB7IH1cbiJdfQ==
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2R5bmFtaWMtZm9ybS9keW5hbWljLWZvcm0ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksSUFBSSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsV0FBVyxJQUFJLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUVwRSxVQUFVO0FBQ1YsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUMvRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDM0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN4RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTFELGFBQWE7QUFDYixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMzRyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUMvRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUN0RixPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSwrRUFBK0UsQ0FBQztBQUNqSSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUN6RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUNyRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUN6RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUN6RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUN6RyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUNqRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUN2RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUVwRixPQUFPO0FBQ1AsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ25FLFNBQVM7QUFDVCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFdkUsZUFBZTtBQUNmLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ25GLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ25GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQTBHL0YsSUFBYSxpQkFBaUIsR0FBOUIsTUFBYSxpQkFBaUI7Q0FBSSxDQUFBO0FBQXJCLGlCQUFpQjtJQXhHN0IsUUFBUSxDQUFDO1FBQ04sT0FBTyxFQUFFO1lBQ0wsa0JBQWtCO1lBQ2xCLFdBQVc7WUFDWCxvQkFBb0I7WUFDcEIsWUFBWTtZQUNaLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QsY0FBYztZQUNkLFdBQVc7WUFDWCxZQUFZO1lBQ1osbUJBQW1CO1lBQ25CLHdCQUF3QjtZQUN4QixZQUFZO1lBQ1osY0FBYztZQUNkLGdCQUFnQjtZQUNoQixXQUFXO1lBQ1gsWUFBWTtZQUNaLGVBQWU7WUFDZixtQkFBbUI7WUFDbkIsZUFBZTtZQUNmLGVBQWU7WUFDZixrQkFBa0I7WUFDbEIsWUFBWTtZQUNaLDBCQUEwQjtZQUMxQixXQUFXO1lBQ1gsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixpQkFBaUI7WUFDakIsaUJBQWlCO1lBQ2pCLGlCQUFpQjtZQUNqQixtQkFBbUI7WUFDbkIsYUFBYTtZQUViLGNBQWM7WUFDZCx5QkFBeUI7WUFDekIsZ0JBQWdCO1lBQ2hCLFdBQVc7WUFDWCxjQUFjO1lBQ2QsbUJBQW1CO1lBQ25CLFlBQVksQ0FBQyxPQUFPLEVBQUU7WUFDdEIsaUJBQWlCO1lBQ2pCLFlBQVk7WUFDWixzQkFBc0I7WUFDdEIsWUFBWTtZQUNaLGVBQWUsQ0FBQyxRQUFRLEVBQUU7WUFFMUIsbUJBQW1CO1lBQ25CLGVBQWU7WUFDZixpQkFBaUI7WUFDakIsbUJBQW1CO1lBQ25CLG9CQUFvQjtZQUNwQixtQkFBbUI7WUFDbkIsb0JBQW9CO1lBQ3BCLGlCQUFpQjtZQUNqQixnQkFBZ0I7U0FDbkI7UUFDRCxZQUFZLEVBQUU7WUFDViwwQkFBMEI7WUFDMUIscUJBQXFCO1lBQ3JCLDJCQUEyQjtZQUMzQixzQkFBc0I7WUFDdEIsbUJBQW1CO1lBQ25CLGdDQUFnQztZQUNoQyxxQkFBcUI7WUFDckIsb0JBQW9CO1lBQ3BCLG9CQUFvQjtZQUNwQixpQkFBaUI7WUFDakIsbUJBQW1CO1lBQ25CLGVBQWU7WUFDZixvQkFBb0I7WUFDcEIsb0JBQW9CO1lBQ3BCLFlBQVk7WUFDWixnQkFBZ0I7WUFDaEIsb0JBQW9CO1lBQ3BCLG9CQUFvQjtZQUNwQixzQkFBc0I7WUFDdEIsd0JBQXdCO1lBQ3hCLG9CQUFvQjtTQUN2QjtRQUNELE9BQU8sRUFBRSxDQUFDLG9CQUFvQixFQUFFLGVBQWUsQ0FBQztRQUNoRCxlQUFlLEVBQUU7WUFDYiwwQkFBMEI7WUFDMUIscUJBQXFCO1lBQ3JCLDJCQUEyQjtZQUMzQixzQkFBc0I7WUFDdEIsbUJBQW1CO1lBQ25CLGdDQUFnQztZQUNoQyxpQkFBaUI7WUFDakIsbUJBQW1CO1lBQ25CLG9CQUFvQjtZQUNwQixvQkFBb0I7WUFDcEIsWUFBWTtZQUNaLGdCQUFnQjtZQUNoQixvQkFBb0I7WUFDcEIsb0JBQW9CO1lBQ3BCLHNCQUFzQjtZQUN0Qix3QkFBd0I7U0FDM0I7UUFDRCxTQUFTLEVBQUU7WUFDUCxjQUFjO1lBQ2QsY0FBYztTQUNqQjtLQUNKLENBQUM7R0FDVyxpQkFBaUIsQ0FBSTtTQUFyQixpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuaW1wb3J0IHsgSG90a2V5TW9kdWxlLCBIb3RrZXlzU2VydmljZSB9IGZyb20gXCJhbmd1bGFyMi1ob3RrZXlzXCI7XG5pbXBvcnQgeyBBdXRvQ29tcGxldGVNb2R1bGUgfSBmcm9tIFwicHJpbWVuZy9hdXRvY29tcGxldGVcIjtcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSBhcyBQcmltZUJ1dHRvbk1vZHVsZSB9IGZyb20gXCJwcmltZW5nL2J1dHRvblwiO1xuaW1wb3J0IHsgQ2FsZW5kYXJNb2R1bGUgfSBmcm9tIFwicHJpbWVuZy9jYWxlbmRhclwiO1xuaW1wb3J0IHsgQ2hlY2tib3hNb2R1bGUgfSBmcm9tIFwicHJpbWVuZy9jaGVja2JveFwiO1xuaW1wb3J0IHsgQ2hpcHNNb2R1bGUgfSBmcm9tIFwicHJpbWVuZy9jaGlwc1wiO1xuaW1wb3J0IHsgRGlhbG9nTW9kdWxlIH0gZnJvbSBcInByaW1lbmcvZGlhbG9nXCI7XG5pbXBvcnQgeyBEcm9wZG93bk1vZHVsZSB9IGZyb20gXCJwcmltZW5nL2Ryb3Bkb3duXCI7XG5pbXBvcnQgeyBGaWVsZHNldE1vZHVsZSB9IGZyb20gXCJwcmltZW5nL2ZpZWxkc2V0XCI7XG5pbXBvcnQgeyBJbnB1dE1hc2tNb2R1bGUgfSBmcm9tIFwicHJpbWVuZy9pbnB1dG1hc2tcIjtcbmltcG9ydCB7IElucHV0VGV4dE1vZHVsZSB9IGZyb20gXCJwcmltZW5nL2lucHV0dGV4dFwiO1xuaW1wb3J0IHsgSW5wdXRUZXh0YXJlYU1vZHVsZSB9IGZyb20gXCJwcmltZW5nL2lucHV0dGV4dGFyZWFcIjtcbmltcG9ydCB7IEtleUZpbHRlck1vZHVsZSB9IGZyb20gXCJwcmltZW5nL2tleWZpbHRlclwiO1xuaW1wb3J0IHsgTXVsdGlTZWxlY3RNb2R1bGUgfSBmcm9tIFwicHJpbWVuZy9tdWx0aXNlbGVjdFwiO1xuaW1wb3J0IHsgUGFuZWxNb2R1bGUgfSBmcm9tIFwicHJpbWVuZy9wYW5lbFwiO1xuaW1wb3J0IHsgUmFkaW9CdXR0b25Nb2R1bGUgfSBmcm9tIFwicHJpbWVuZy9yYWRpb2J1dHRvblwiO1xuaW1wb3J0IHsgU2xpZGVyTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9zbGlkZXInO1xuaW1wb3J0IHsgVGFibGVNb2R1bGUgYXMgUHJpbWVOR1RhYmxlTW9kdWxlIH0gZnJvbSBcInByaW1lbmcvdGFibGVcIjtcblxuaW1wb3J0IHsgTW91c2VFdmVudHNNb2R1bGUgfSBmcm9tIFwiLi4vbW91c2UtZXZlbnRzL21vdXNlLWV2ZW50cy5tb2R1bGVcIjtcbmltcG9ydCB7IElBc3Npc3RTZXJ2aWNlIH0gZnJvbSBcIi4vc2VydmljZXMvSUFzc2lzdC9pYXNzaXN0LnNlcnZpY2VcIjtcblxuLy8gTW9kdWxlc1xuaW1wb3J0IHsgQmFkZ2VNb2R1bGUgfSBmcm9tIFwiLi4vYmFkZ2UvYmFkZ2UubW9kdWxlXCI7XG5pbXBvcnQgeyBCaWdudW1iZXJJbnB1dE1vZHVsZSB9IGZyb20gXCIuLi9iaWdudW1iZXItaW5wdXQvbnVtYmVyLWlucHV0Lm1vZHVsZVwiO1xuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSBcIi4uL2J1dHRvbi9idXR0b24ubW9kdWxlXCI7XG5pbXBvcnQgeyBDYWxlbmRhck1hc2tNb2R1bGUgfSBmcm9tIFwiLi4vY2FsZW5kYXItbWFzay9jYWxlbmRhci1tYXNrLm1vZHVsZVwiO1xuaW1wb3J0IHsgQ29udHJvbEVycm9yc01vZHVsZSB9IGZyb20gXCIuLi9jb250cm9sLWVycm9ycy9jb250cm9sLWVycm9ycy5tb2R1bGVcIjtcbmltcG9ydCB7IENvdW50cnlQaG9uZVBpY2tlck1vZHVsZSB9IGZyb20gXCIuLi9jb3VudHJ5LXBob25lLXBpY2tlci9jb3VudHJ5LXBob25lLXBpY2tlci5tb2R1bGVcIjtcbmltcG9ydCB7IEVtcHR5U3RhdGVNb2R1bGUgfSBmcm9tIFwiLi4vZW1wdHktc3RhdGUvZW1wdHktc3RhdGUubW9kdWxlXCI7XG5pbXBvcnQgeyBGaWxlVXBsb2FkTW9kdWxlIH0gZnJvbSBcIi4uL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLm1vZHVsZVwiO1xuaW1wb3J0IHsgSW5mb1NpZ25Nb2R1bGUgfSBmcm9tIFwiLi4vaW5mby1zaWduL2luZm8tc2lnbi5tb2R1bGVcIjtcbmltcG9ydCB7IExvYWRpbmdTdGF0ZU1vZHVsZSB9IGZyb20gXCIuLi9sb2FkaW5nLXN0YXRlL2xvYWRpbmctc3RhdGUubW9kdWxlXCI7XG5pbXBvcnQgeyBMb2NhbGVNb2R1bGUgfSBmcm9tIFwiLi4vbG9jYWxlL2xvY2FsZS5tb2R1bGVcIjtcbmltcG9ydCB7IExvY2FsaXplZE51bWJlcklucHV0TW9kdWxlIH0gZnJvbSBcIi4uL2xvY2FsaXplZC1udW1iZXItaW5wdXQvbG9jYWxpemVkLW51bWJlci1pbnB1dC5tb2R1bGVcIjtcbmltcG9ydCB7IE1hc2tGb3JtYXR0ZXJNb2R1bGUgfSBmcm9tIFwiLi4vbWFzay9tYXNrLWZvcm1hdHRlci5tb2R1bGVcIjtcbmltcG9ydCB7IE51bWJlcklucHV0TW9kdWxlIH0gZnJvbSBcIi4uL251bWJlci1pbnB1dC9udW1iZXItaW5wdXQubW9kdWxlXCI7XG5pbXBvcnQgeyBQYXNzd29yZFN0cmVuZ3RoTW9kdWxlIH0gZnJvbSBcIi4uL3Bhc3N3b3JkLXN0cmVuZ3RoL3Bhc3N3b3JkLXN0cmVuZ3RoLm1vZHVsZVwiO1xuaW1wb3J0IHsgU3dpdGNoTW9kdWxlIH0gZnJvbSBcIi4uL3N3aXRjaC9zd2l0Y2gubW9kdWxlXCI7XG5pbXBvcnQgeyBUYWJsZUhlYWRlckNoZWNrYm94TW9kdWxlIH0gZnJvbSBcIi4uL3RhYmxlLWhlYWRlci90YWJsZS1oZWFkZXItY2hlY2tveC5tb2R1bGVcIjtcbmltcG9ydCB7IFRhYmxlTW9kdWxlIH0gZnJvbSBcIi4uL3RhYmxlL3RhYmxlLm1vZHVsZVwiO1xuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gXCIuLi90b29sdGlwL3Rvb2x0aXAubW9kdWxlXCI7XG5cbi8vIENvbXBvbmVudHNcbmltcG9ydCB7IEF1dG9jb21wbGV0ZUZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IEJvb2xlYW5GaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2Jvb2xlYW4vYm9vbGVhbi1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IEJvb2xlYW5Td2l0Y2hGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2Jvb2xlYW4vYm9vbGVhbi1zd2l0Y2gtZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBDYWxlbmRhckZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvY2FsZW5kYXIvY2FsZW5kYXItZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBDaGlwc0ZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvY2hpcHMvY2hpcHMtZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBDb3VudHJ5UGhvbmVQaWNrZXJGaWVsZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2NvdW50cnktcGhvbmUtcGlja2VyL2NvdW50cnktcGhvbmUtcGlja2VyLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgRmlsZVVwbG9hZENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgTG9va3VwRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9sb29rdXAvbG9va3VwLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgUmFkaW9CdXR0b25Db21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9yYWRpby1idXR0b24vcmFkaW8tYnV0dG9uLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgU2VsZWN0RmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9zZWxlY3Qvc2VsZWN0LWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgU2xpZGVyRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9zbGlkZXIvc2xpZGVyLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgVGV4dEFyZWFJQUZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvdGV4dC1hcmVhLWlhL3RleHQtYXJlYS1pYS1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFRleHRBcmVhRmllbGRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy90ZXh0LWFyZWEvdGV4dC1hcmVhLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgRmllbGRzZXRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL3N0cnVjdHVyZS9maWVsZHNldC9maWVsZHNldC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFNlY3Rpb25Db21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL3N0cnVjdHVyZS9zZWN0aW9uL3NlY3Rpb24uY29tcG9uZW50XCI7XG5cbi8vIEdyaWRcbmltcG9ydCB7IFJvd0NvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZ3JpZC9yb3cvcm93LmNvbXBvbmVudFwiO1xuLy8gTG9va3VwXG5pbXBvcnQgeyBMb29rdXBDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2xvb2t1cC9sb29rdXAuY29tcG9uZW50XCI7XG5cbi8vIER5bmFtaWMtZm9ybVxuaW1wb3J0IHsgRHluYW1pY0ZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9keW5hbWljLWZpZWxkL2R5bmFtaWMtZmllbGQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBEeW5hbWljRm9ybUNvbXBvbmVudCB9IGZyb20gXCIuL2R5bmFtaWMtZm9ybS5jb21wb25lbnRcIjtcbmltcG9ydCB7IER5bmFtaWNGb3JtRGlyZWN0aXZlIH0gZnJvbSBcIi4vZHluYW1pYy1mb3JtLmRpcmVjdGl2ZVwiO1xuXG5pbXBvcnQgeyBGaWVsZExhYmVsTW9kdWxlIH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZC1sYWJlbC9maWVsZC1sYWJlbC5tb2R1bGVcIjtcbmltcG9ydCB7IEJpZ251bWJlckZpZWxkTW9kdWxlIH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvYmlnbnVtYmVyL2JpZ251bWJlci1maWVsZC5tb2R1bGVcIjtcbmltcG9ydCB7IENoZWNrYm94RmllbGRNb2R1bGUgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9jaGVja2JveC9jaGVja2JveC1maWVsZC5tb2R1bGVcIjtcbmltcG9ydCB7IEN1cnJlbmN5RmllbGRNb2R1bGUgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9jdXJyZW5jeS9jdXJyZW5jeS1maWVsZC5tb2R1bGVcIjtcbmltcG9ydCB7IEVkaXRvckZpZWxkTW9kdWxlIH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvZWRpdG9yL2VkaXRvci1maWVsZC5tb2R1bGVcIjtcbmltcG9ydCB7IE51bWJlckZpZWxkTW9kdWxlIH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvbnVtYmVyL251bWJlci1maWVsZC5tb2R1bGVcIjtcbmltcG9ydCB7IFBhc3N3b3JkRmllbGRNb2R1bGUgfSBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9wYXNzd29yZC9wYXNzd29yZC1maWVsZC5tb2R1bGVcIjtcbmltcG9ydCB7IFByb2ZpbGVQaWN0dXJlTW9kdWxlIH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvcHJvZmlsZS1waWN0dXJlL3Byb2ZpbGUtcGljdHVyZS1maWVsZC5tb2R1bGVcIjtcbmltcG9ydCB7IFRleHRGaWVsZE1vZHVsZSB9IGZyb20gXCIuL2NvbXBvbmVudHMvZmllbGRzL3RleHQvdGV4dC1maWVsZC5tb2R1bGVcIjtcbmltcG9ydCB7IEJ1dHRvbkZpZWxkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9maWVsZHMvYnV0dG9uLWZpZWxkL2J1dHRvbi1maWVsZC5jb21wb25lbnRcIjtcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEF1dG9Db21wbGV0ZU1vZHVsZSxcbiAgICAgICAgQmFkZ2VNb2R1bGUsXG4gICAgICAgIEJpZ251bWJlcklucHV0TW9kdWxlLFxuICAgICAgICBCdXR0b25Nb2R1bGUsXG4gICAgICAgIENhbGVuZGFyTWFza01vZHVsZSxcbiAgICAgICAgQ2FsZW5kYXJNb2R1bGUsXG4gICAgICAgIENoZWNrYm94TW9kdWxlLFxuICAgICAgICBDaGlwc01vZHVsZSxcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBDb250cm9sRXJyb3JzTW9kdWxlLFxuICAgICAgICBDb3VudHJ5UGhvbmVQaWNrZXJNb2R1bGUsXG4gICAgICAgIERpYWxvZ01vZHVsZSxcbiAgICAgICAgRHJvcGRvd25Nb2R1bGUsXG4gICAgICAgIEVtcHR5U3RhdGVNb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBIb3RrZXlNb2R1bGUsXG4gICAgICAgIElucHV0TWFza01vZHVsZSxcbiAgICAgICAgSW5wdXRUZXh0YXJlYU1vZHVsZSxcbiAgICAgICAgSW5wdXRUZXh0TW9kdWxlLFxuICAgICAgICBLZXlGaWx0ZXJNb2R1bGUsXG4gICAgICAgIExvYWRpbmdTdGF0ZU1vZHVsZSxcbiAgICAgICAgTG9jYWxlTW9kdWxlLFxuICAgICAgICBMb2NhbGl6ZWROdW1iZXJJbnB1dE1vZHVsZSxcbiAgICAgICAgUGFuZWxNb2R1bGUsXG4gICAgICAgIFByaW1lQnV0dG9uTW9kdWxlLFxuICAgICAgICBQcmltZU5HVGFibGVNb2R1bGUsXG4gICAgICAgIE11bHRpU2VsZWN0TW9kdWxlLFxuICAgICAgICBOdW1iZXJJbnB1dE1vZHVsZSxcbiAgICAgICAgUmFkaW9CdXR0b25Nb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIFRvb2x0aXBNb2R1bGUsXG5cbiAgICAgICAgRmllbGRzZXRNb2R1bGUsXG4gICAgICAgIFRhYmxlSGVhZGVyQ2hlY2tib3hNb2R1bGUsXG4gICAgICAgIEZpbGVVcGxvYWRNb2R1bGUsXG4gICAgICAgIFRhYmxlTW9kdWxlLFxuICAgICAgICBJbmZvU2lnbk1vZHVsZSxcbiAgICAgICAgTWFza0Zvcm1hdHRlck1vZHVsZSxcbiAgICAgICAgSG90a2V5TW9kdWxlLmZvclJvb3QoKSxcbiAgICAgICAgTW91c2VFdmVudHNNb2R1bGUsXG4gICAgICAgIFN3aXRjaE1vZHVsZSxcbiAgICAgICAgUGFzc3dvcmRTdHJlbmd0aE1vZHVsZSxcbiAgICAgICAgU2xpZGVyTW9kdWxlLFxuICAgICAgICBUcmFuc2xhdGVNb2R1bGUuZm9yQ2hpbGQoKSxcblxuICAgICAgICBQYXNzd29yZEZpZWxkTW9kdWxlLFxuICAgICAgICBUZXh0RmllbGRNb2R1bGUsXG4gICAgICAgIE51bWJlckZpZWxkTW9kdWxlLFxuICAgICAgICBDdXJyZW5jeUZpZWxkTW9kdWxlLFxuICAgICAgICBCaWdudW1iZXJGaWVsZE1vZHVsZSxcbiAgICAgICAgQ2hlY2tib3hGaWVsZE1vZHVsZSxcbiAgICAgICAgUHJvZmlsZVBpY3R1cmVNb2R1bGUsXG4gICAgICAgIEVkaXRvckZpZWxkTW9kdWxlLFxuICAgICAgICBGaWVsZExhYmVsTW9kdWxlLFxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIEF1dG9jb21wbGV0ZUZpZWxkQ29tcG9uZW50LFxuICAgICAgICBCb29sZWFuRmllbGRDb21wb25lbnQsXG4gICAgICAgIEJvb2xlYW5Td2l0Y2hGaWVsZENvbXBvbmVudCxcbiAgICAgICAgQ2FsZW5kYXJGaWVsZENvbXBvbmVudCxcbiAgICAgICAgQ2hpcHNGaWVsZENvbXBvbmVudCxcbiAgICAgICAgQ291bnRyeVBob25lUGlja2VyRmllbGRDb21wb25lbnQsXG4gICAgICAgIER5bmFtaWNGaWVsZENvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY0Zvcm1Db21wb25lbnQsXG4gICAgICAgIER5bmFtaWNGb3JtRGlyZWN0aXZlLFxuICAgICAgICBGaWVsZHNldENvbXBvbmVudCxcbiAgICAgICAgRmlsZVVwbG9hZENvbXBvbmVudCxcbiAgICAgICAgTG9va3VwQ29tcG9uZW50LFxuICAgICAgICBMb29rdXBGaWVsZENvbXBvbmVudCxcbiAgICAgICAgUmFkaW9CdXR0b25Db21wb25lbnQsXG4gICAgICAgIFJvd0NvbXBvbmVudCxcbiAgICAgICAgU2VjdGlvbkNvbXBvbmVudCxcbiAgICAgICAgU2VsZWN0RmllbGRDb21wb25lbnQsXG4gICAgICAgIFNsaWRlckZpZWxkQ29tcG9uZW50LFxuICAgICAgICBUZXh0QXJlYUZpZWxkQ29tcG9uZW50LFxuICAgICAgICBUZXh0QXJlYUlBRmllbGRDb21wb25lbnQsXG4gICAgICAgIEJ1dHRvbkZpZWxkQ29tcG9uZW50XG4gICAgXSxcbiAgICBleHBvcnRzOiBbRHluYW1pY0Zvcm1Db21wb25lbnQsIExvb2t1cENvbXBvbmVudF0sXG4gICAgZW50cnlDb21wb25lbnRzOiBbXG4gICAgICAgIEF1dG9jb21wbGV0ZUZpZWxkQ29tcG9uZW50LFxuICAgICAgICBCb29sZWFuRmllbGRDb21wb25lbnQsXG4gICAgICAgIEJvb2xlYW5Td2l0Y2hGaWVsZENvbXBvbmVudCxcbiAgICAgICAgQ2FsZW5kYXJGaWVsZENvbXBvbmVudCxcbiAgICAgICAgQ2hpcHNGaWVsZENvbXBvbmVudCxcbiAgICAgICAgQ291bnRyeVBob25lUGlja2VyRmllbGRDb21wb25lbnQsXG4gICAgICAgIEZpZWxkc2V0Q29tcG9uZW50LFxuICAgICAgICBGaWxlVXBsb2FkQ29tcG9uZW50LFxuICAgICAgICBMb29rdXBGaWVsZENvbXBvbmVudCxcbiAgICAgICAgUmFkaW9CdXR0b25Db21wb25lbnQsXG4gICAgICAgIFJvd0NvbXBvbmVudCxcbiAgICAgICAgU2VjdGlvbkNvbXBvbmVudCxcbiAgICAgICAgU2VsZWN0RmllbGRDb21wb25lbnQsXG4gICAgICAgIFNsaWRlckZpZWxkQ29tcG9uZW50LFxuICAgICAgICBUZXh0QXJlYUZpZWxkQ29tcG9uZW50LFxuICAgICAgICBUZXh0QXJlYUlBRmllbGRDb21wb25lbnQsXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgSG90a2V5c1NlcnZpY2UsXG4gICAgICAgIElBc3Npc3RTZXJ2aWNlLFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgRHluYW1pY0Zvcm1Nb2R1bGUgeyB9XG4iXX0=
|
|
@@ -21,6 +21,11 @@ export * from "./configurations/form-field";
|
|
|
21
21
|
export * from "./configurations/structure/fieldset";
|
|
22
22
|
export * from "./configurations/structure/section";
|
|
23
23
|
export * from "./configurations/structure/structure";
|
|
24
|
+
export * from "./configurations/fields/button-field";
|
|
25
|
+
export * from './configurations/grid/grid';
|
|
26
|
+
export * from './configurations/grid/row';
|
|
27
|
+
export * from './configurations/grid-type';
|
|
28
|
+
export * from './configurations/structure-type';
|
|
24
29
|
export * from "./dynamic-form.component";
|
|
25
30
|
export * from "./dynamic-form.module";
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9keW5hbWljLWZvcm0vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLHNDQUFzQyxDQUFDO0FBR3JELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsNEJBQTRCLENBQUE7QUFDMUMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9jb21wb25lbnRzL2ZpZWxkcy9iYXNlLWZpZWxkLWNvbXBvbmVudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29tcG9uZW50cy9sb29rdXAvbG9va3VwLmNvbXBvbmVudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29tcG9uZW50cy9sb29rdXAvbW9kZWxzL2luZGV4XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb25maWd1cmF0aW9ucy9hZGRvbi1jb25maWdcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2R5bmFtaWMtY29uZmlnXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb25maWd1cmF0aW9ucy9keW5hbWljLXR5cGVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2ZpZWxkLXR5cGVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9hdXRvY29tcGxldGUtZmllbGRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9iaWdudW1iZXItZmllbGRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9ib29sZWFuLWZpZWxkXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb25maWd1cmF0aW9ucy9maWVsZHMvY2FsZW5kYXItZmllbGRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9jaGlwcy1maWVsZFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29uZmlndXJhdGlvbnMvZmllbGRzL2N1cnJlbmN5LWZpZWxkXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb25maWd1cmF0aW9ucy9maWVsZHMvZmllbGRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9sb29rdXAtZmllbGRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9udW1iZXItZmllbGRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9wYXNzd29yZC1maWVsZFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29uZmlndXJhdGlvbnMvZmllbGRzL3JhZGlvLWJ1dHRvbi1maWVsZFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29uZmlndXJhdGlvbnMvZmllbGRzL3NlbGVjdC1maWVsZFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29uZmlndXJhdGlvbnMvZmllbGRzL3RleHQtYXJlYS1maWVsZFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29uZmlndXJhdGlvbnMvZmllbGRzL3RleHQtZmllbGRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2Zvcm0tZmllbGRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL3N0cnVjdHVyZS9maWVsZHNldFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29uZmlndXJhdGlvbnMvc3RydWN0dXJlL3NlY3Rpb25cIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL3N0cnVjdHVyZS9zdHJ1Y3R1cmVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9idXR0b24tZmllbGRcIjtcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlndXJhdGlvbnMvZ3JpZC9ncmlkJztcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlndXJhdGlvbnMvZ3JpZC9yb3cnO1xuZXhwb3J0ICogZnJvbSAnLi9jb25maWd1cmF0aW9ucy9ncmlkLXR5cGUnXG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZ3VyYXRpb25zL3N0cnVjdHVyZS10eXBlJztcbmV4cG9ydCAqIGZyb20gXCIuL2R5bmFtaWMtZm9ybS5jb21wb25lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2R5bmFtaWMtZm9ybS5tb2R1bGVcIjtcbiJdfQ==
|
|
@@ -2,7 +2,7 @@ import { __awaiter, __decorate, __param } from "tslib";
|
|
|
2
2
|
import { Component, Inject, Input, Output } from "@angular/core";
|
|
3
3
|
import { TranslateService } from "@ngx-translate/core";
|
|
4
4
|
import { HostProjectConfigsInjectionToken } from "../../../angular-components.module";
|
|
5
|
-
import { ExportUtils } from "../../utils";
|
|
5
|
+
import { ExportUtils, isNullOrUndefined } from "../../utils";
|
|
6
6
|
import BigNumber from "bignumber.js";
|
|
7
7
|
let TablePagingComponent = class TablePagingComponent {
|
|
8
8
|
constructor(translate, hostProjectConfigs) {
|
|
@@ -156,6 +156,8 @@ let TablePagingComponent = class TablePagingComponent {
|
|
|
156
156
|
const columnsWithNumberFormatOptions = columns.filter((column) => column.numberFormatOptions);
|
|
157
157
|
for (const { attributes, numberFormatOptions } of columnsWithNumberFormatOptions) {
|
|
158
158
|
for (const attribute of attributes) {
|
|
159
|
+
if (isNullOrUndefined(row[attribute]))
|
|
160
|
+
continue;
|
|
159
161
|
if ((_a = row[attribute].options) === null || _a === void 0 ? void 0 : _a.numberFormatOptions) {
|
|
160
162
|
continue;
|
|
161
163
|
}
|
|
@@ -303,4 +305,4 @@ TablePagingComponent = __decorate([
|
|
|
303
305
|
__param(1, Inject(HostProjectConfigsInjectionToken))
|
|
304
306
|
], TablePagingComponent);
|
|
305
307
|
export { TablePagingComponent };
|
|
306
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtcGFnaW5nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL3RhYmxlL3RhYmxlLXBhZ2luZy90YWJsZS1wYWdpbmcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUt2RCxPQUFPLEVBQXNCLGdDQUFnQyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUxQyxPQUFPLFNBQVMsTUFBTSxjQUFjLENBQUM7QUFjckMsSUFBYSxvQkFBb0IsR0FBakMsTUFBYSxvQkFBb0I7SUErQjdCLFlBQ3FCLFNBQTJCLEVBQ2Usa0JBQXNDO1FBRGhGLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQ2UsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQXRCOUYsZUFBVSxHQUFHLElBQUksQ0FBQztRQUdsQixnQ0FBMkIsR0FBRyxJQUFJLENBQUM7SUFvQnRDLENBQUM7SUFFTCxXQUFXLENBQUMsT0FBc0I7O1FBQzlCLFVBQUksT0FBTyxDQUFDLFlBQVksMENBQUUsWUFBWSxFQUFFO1lBQ3BDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxlQUFlLEVBQUU7Z0JBQ3hGLEtBQUssRUFBRSxPQUFPLENBQUMsWUFBWSxDQUFDLFlBQVk7YUFDM0MsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3RCLE9BQU8sR0FBRyxJQUFJLENBQUMsa0JBQWtC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SUFEQyxLQUFLLEVBQUU7bURBQ2E7QUFHckI7SUFEQyxLQUFLLEVBQUU7d0RBQ2lCO0FBR3pCO0lBREMsS0FBSyxFQUFFO3lFQUNrQztBQUcxQztJQURDLEtBQUssRUFBRTsyREFDOEI7QUFHdEM7SUFEQyxLQUFLLEVBQUU7NERBQ3FDO0FBRzdDO0lBREMsS0FBSyxFQUFFO29FQUNvQztBQUc1QztJQURDLEtBQUssRUFBRTtpRUFDaUM7QUFHekM7SUFEQyxNQUFNLEVBQUU7OERBQ3VCO0FBN0J2QixvQkFBb0I7SUFMaEMsU0FBUyxDQUFDO1FBQ1AsOGJBQTRDO1FBRTVDLFFBQVEsRUFBRSxnQkFBZ0I7O0tBQzdCLENBQUM7SUFrQ08sV0FBQSxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtHQWpDcEMsb0JBQW9CLENBaVhoQztTQWpYWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tIFwicHJpbWVuZy9hcGlcIjtcbmltcG9ydCB7IFRhYmxlIH0gZnJvbSBcInByaW1lbmcvdGFibGVcIjtcbmltcG9ydCB7IENvbHVtbiB9IGZyb20gXCIuLi90YWJsZS1jb2x1bW4vbW9kZWxzL2NvbHVtbi5pbnRlcmZhY2VcIjtcblxuaW1wb3J0IHsgSG9zdFByb2plY3RDb25maWdzLCBIb3N0UHJvamVjdENvbmZpZ3NJbmplY3Rpb25Ub2tlbiB9IGZyb20gXCIuLi8uLi8uLi9hbmd1bGFyLWNvbXBvbmVudHMubW9kdWxlXCI7XG5pbXBvcnQgeyBFeHBvcnRVdGlscyB9IGZyb20gXCIuLi8uLi91dGlsc1wiO1xuaW1wb3J0IHsgQ3VzdG9tQWN0aW9uIH0gZnJvbSBcIi4vbW9kZWxzXCI7XG5pbXBvcnQgQmlnTnVtYmVyIGZyb20gXCJiaWdudW1iZXIuanNcIjtcblxudHlwZSBSb3dWYWx1ZUZvcm1hdE9wdGlvbiA9IHtcbiAgICB2YWx1ZT86IG51bWJlcjtcbiAgICBvcHRpb25zPzoge1xuICAgICAgICBudW1iZXJGb3JtYXRPcHRpb25zPzogSW50bC5OdW1iZXJGb3JtYXRPcHRpb25zO1xuICAgIH07XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHRlbXBsYXRlVXJsOiBcIi4vdGFibGUtcGFnaW5nLmNvbXBvbmVudC5odG1sXCIsXG4gICAgc3R5bGVVcmxzOiBbXCIuL3RhYmxlLXBhZ2luZy5jb21wb25lbnQuc2Nzc1wiXSxcbiAgICBzZWxlY3RvcjogXCJzLXRhYmxlLXBhZ2luZ1wiLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZVBhZ2luZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdG90YWxSZWNvcmRzITogbnVtYmVyO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZXhwb3J0RmlsZU5hbWU/OiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB0YWJsZSE6IFRhYmxlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZXhwb3J0YWJsZSA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBlbmFibGVFeHBvcnRTZWxlY3RlZFJlY29yZHMgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY3VzdG9tQWN0aW9ucz86IEN1c3RvbUFjdGlvbltdO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbG9hZEFsbFJlY29yZHM/OiAoKSA9PiBQcm9taXNlPGFueVtdPjtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGxvYWRDdXJyZW50UGFnZVJlY29yZHM/OiAoKSA9PiBhbnlbXTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGxvYWRTZWxlY3RlZFJlY29yZHM/OiAoKSA9PiBhbnlbXTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyB0b3RhbFJlY29yZHNUZXh0OiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoSG9zdFByb2plY3RDb25maWdzSW5qZWN0aW9uVG9rZW4pIHByaXZhdGUgcmVhZG9ubHkgaG9zdFByb2plY3RDb25maWdzOiBIb3N0UHJvamVjdENvbmZpZ3NcbiAgICApIHsgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoY2hhbmdlcy50b3RhbFJlY29yZHM/LmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy50b3RhbFJlY29yZHNUZXh0ID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLmdldFRyYW5zbGF0ZVByZWZpeCgpfXRvdGFsX3JlY29yZHNgLCB7XG4gICAgICAgICAgICAgICAgdmFsdWU6IGNoYW5nZXMudG90YWxSZWNvcmRzLmN1cnJlbnRWYWx1ZSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRUcmFuc2xhdGVQcmVmaXgoKSB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLmhvc3RQcm9qZWN0Q29uZmlncy5kb21haW59LiR7dGhpcy5ob3N0UHJvamVjdENvbmZpZ3Muc2VydmljZX0uYDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0VG9vbHRpcFRleHQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMuZ2V0VHJhbnNsYXRlUHJlZml4KCl9ZXhwb3J0X3RvX2NzdmApO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRBY3Rpb25zKCk6IE1lbnVJdGVtW10ge1xuICAgICAgICBjb25zdCBhY3Rpb25zOiBNZW51SXRlbVtdID0gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlkOiBcImV4cG9ydEN1cnJlbnRQYWdlXCIsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5nZXRUcmFuc2xhdGVQcmVmaXgoKX1leHBvcnRfY3VycmVudF9wYWdlYCksXG4gICAgICAgICAgICAgICAgY29tbWFuZDogKCkgPT4gdGhpcy5leHBvcnRDdXJyZW50UGFnZSgpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXTtcblxuICAgICAgICBpZiAodGhpcy5lbmFibGVFeHBvcnRTZWxlY3RlZFJlY29yZHMpIHtcbiAgICAgICAgICAgIGFjdGlvbnMucHVzaCh7XG4gICAgICAgICAgICAgICAgaWQ6IFwiZXhwb3J0U2VsZWN0ZWRcIixcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLmdldFRyYW5zbGF0ZVByZWZpeCgpfWV4cG9ydF9zZWxlY3RlZF9yZWNvcmRzYCksXG4gICAgICAgICAgICAgICAgY29tbWFuZDogKCkgPT4gdGhpcy5leHBvcnRTZWxlY3RlZFJlY29yZHMoKSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubG9hZEFsbFJlY29yZHMpIHtcbiAgICAgICAgICAgIGFjdGlvbnMucHVzaCh7XG4gICAgICAgICAgICAgICAgaWQ6IFwiZXhwb3J0QWxsXCIsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5nZXRUcmFuc2xhdGVQcmVmaXgoKX1leHBvcnRfYWxsX3JlY29yZHNgKSxcbiAgICAgICAgICAgICAgICBjb21tYW5kOiAoKSA9PiB0aGlzLmV4cG9ydEFsbFJlY29yZHMoKSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuY3VzdG9tQWN0aW9ucz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCBjdXN0b21NZW51cyA9IHRoaXMuY3VzdG9tQWN0aW9ucy5tYXAoKHAsIGluZGV4KSA9PiAoe1xuICAgICAgICAgICAgICAgIGlkOiBcImN1c3RvbUFjdGlvbl9cIiArIGluZGV4LFxuICAgICAgICAgICAgICAgIGxhYmVsOiBwLmxhYmVsLFxuICAgICAgICAgICAgICAgIGNvbW1hbmQ6IHAuY29tbWFuZCxcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIGFjdGlvbnMucHVzaCguLi5jdXN0b21NZW51cyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYWN0aW9ucztcbiAgICB9XG5cbiAgICBwcml2YXRlIHZhbGlkYXRlQ29tcG9uZW50KCkge1xuICAgICAgICBpZiAoIXRoaXMudGFibGUpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIlRhYmxlIGNvbXBvbmVudCBub3QgZGVmaW5lZFwiKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDb2x1bW5zVG9FeHBvcnQoKSB7XG4gICAgICAgIHJldHVybiBbLi4udGhpcy50YWJsZS5jb2x1bW5zXS5tYXAoKGNvbHVtbikgPT4ge1xuICAgICAgICAgICAgY29uc3QgZXhwb3J0Q29sdW1uID0ge1xuICAgICAgICAgICAgICAgIC4uLmNvbHVtbixcbiAgICAgICAgICAgICAgICBoZWFkZXI6IGNvbHVtbi5oZWFkZXIsXG4gICAgICAgICAgICAgICAgZXhwb3J0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBmaWVsZDogY29sdW1uLmZpZWxkLFxuICAgICAgICAgICAgICAgIHNlcGFyYXRvcjogY29sdW1uLnNlcGFyYXRvciA/PyBcIiAtIFwiLFxuICAgICAgICAgICAgICAgIGVudW1QcmVmaXg6IGNvbHVtbi5lbnVtUHJlZml4LFxuICAgICAgICAgICAgICAgIGN1c3RvbUV4cG9ydDogY29sdW1uLmN1c3RvbUV4cG9ydCxcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGlmIChjb2x1bW4uZXhwb3J0YWJsZSA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICBleHBvcnRDb2x1bW4uZXhwb3J0YWJsZSA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoY29sdW1uLmF0dHJpYnV0ZXMgJiYgY29sdW1uLmF0dHJpYnV0ZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgaWYgKGNvbHVtbi5hdHRyaWJ1dGVzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgICAgICBleHBvcnRDb2x1bW4uZmllbGQgPSBjb2x1bW4uYXR0cmlidXRlc1swXTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBleHBvcnRDb2x1bW4uZmllbGQgPSBjb2x1bW4uYXR0cmlidXRlcztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBleHBvcnRDb2x1bW47XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Q3VycmVudFBhZ2VSb3dzVG9FeHBvcnQoY29sdW1uczogYW55W10pIHtcbiAgICAgICAgbGV0IHRhYmxlRGF0YSA9IHRoaXMudGFibGUudmFsdWU7XG4gICAgICAgIGlmICh0aGlzLmxvYWRDdXJyZW50UGFnZVJlY29yZHMpIHtcbiAgICAgICAgICAgIHRhYmxlRGF0YSA9IHRoaXMubG9hZEN1cnJlbnRQYWdlUmVjb3JkcygpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGFibGVEYXRhID0gdGhpcy5tYXBDdXN0b21FeHBvcnQoY29sdW1ucywgdGFibGVEYXRhKTtcblxuICAgICAgICB0YWJsZURhdGEgPSB0aGlzLm1hcE51bWJlckZvcm1hdE9wdGlvbnNFeHBvcnQoY29sdW1ucywgdGFibGVEYXRhKTtcblxuICAgICAgICByZXR1cm4gdGhpcy5tYXBDb2x1bW5zVHJhbnNsYXRpb25zKGNvbHVtbnMsIHRhYmxlRGF0YSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRTZWxlY3RlZFJvd3NUb0V4cG9ydChjb2x1bW5zOiBhbnlbXSkge1xuICAgICAgICBsZXQgdGFibGVEYXRhID0gdGhpcy50YWJsZS5zZWxlY3Rpb247XG4gICAgICAgIGlmICh0aGlzLmxvYWRTZWxlY3RlZFJlY29yZHMpIHtcbiAgICAgICAgICAgIHRhYmxlRGF0YSA9IHRoaXMubG9hZFNlbGVjdGVkUmVjb3JkcygpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGFibGVEYXRhID0gdGhpcy5tYXBDdXN0b21FeHBvcnQoY29sdW1ucywgdGFibGVEYXRhKTtcblxuICAgICAgICB0YWJsZURhdGEgPSB0aGlzLm1hcE51bWJlckZvcm1hdE9wdGlvbnNFeHBvcnQoY29sdW1ucywgdGFibGVEYXRhKTtcblxuICAgICAgICByZXR1cm4gdGhpcy5tYXBDb2x1bW5zVHJhbnNsYXRpb25zKGNvbHVtbnMsIHRhYmxlRGF0YSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRQcm9wZXJ0eVZhbHVlKG9iajogYW55LCBwYXRoOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHBhdGguc3BsaXQoXCIuXCIpLnJlZHVjZSgocmVzdWx0OiBhbnksIHByb3A6IGFueSkgPT4gKHJlc3VsdFtwcm9wXSA9PT0gdW5kZWZpbmVkID8gdW5kZWZpbmVkIDogcmVzdWx0W3Byb3BdKSwgb2JqKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFByb3BlcnR5VmFsdWUob2JqOiBhbnksIHBhdGg6IHN0cmluZywgdmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLnJlY3Vyc2lvblNldFZhbHVlKG9iaiwgcGF0aC5zcGxpdChcIi5cIiksIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlY3Vyc2lvblNldFZhbHVlKG9iajogYW55LCBrZXlzTGlzdDogc3RyaW5nW10sIHZhbHVlOiBhbnkpOiBhbnkge1xuICAgICAgICBjb25zdCBrZXkgPSBrZXlzTGlzdFswXTtcbiAgICAgICAgaWYgKGtleXNMaXN0Lmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgb2JqW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICAgIHJldHVybiBvYmo7XG4gICAgICAgIH1cbiAgICAgICAgb2JqW2tleV0gPSB0aGlzLnJlY3Vyc2lvblNldFZhbHVlKG9iaj8uW2tleV0gfHwge30sIGtleXNMaXN0LnNsaWNlKDEpLCB2YWx1ZSk7XG4gICAgICAgIHJldHVybiBvYmo7XG4gICAgfVxuXG4gICAgcHVibGljIG1hcENvbHVtbnNUcmFuc2xhdGlvbnMoY29sdW1uczogYW55W10sIHJvd3M6IGFueVtdKSB7XG4gICAgICAgIGNvbnN0IGVudW1Db2x1bW5zID0gY29sdW1ucy5maWx0ZXIoKHApID0+IHAuZW51bVByZWZpeCk7XG4gICAgICAgIGlmICghZW51bUNvbHVtbnMubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4gcm93cztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbLi4ucm93c10ubWFwKChyb3cpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG5ld1JvdyA9IHsgLi4ucm93IH07XG4gICAgICAgICAgICBlbnVtQ29sdW1ucy5mb3JFYWNoKChjb2x1bW4pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaWVsZHMgPSAhQXJyYXkuaXNBcnJheShjb2x1bW4uZmllbGQpID8gW2NvbHVtbi5maWVsZF0gOiBjb2x1bW4uZmllbGQ7XG4gICAgICAgICAgICAgICAgZmllbGRzLmZvckVhY2goKGZpZWxkTmFtZTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbHVtbkRhdGEgPSB0aGlzLmdldFByb3BlcnR5VmFsdWUocm93LCBmaWVsZE5hbWUpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoY29sdW1uRGF0YSA9PT0gbnVsbCB8fCBjb2x1bW5EYXRhID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG5ld1ZhbHVlID0gdGhpcy50cmFuc2xhdGVWYWx1ZShjb2x1bW4sIGNvbHVtbkRhdGEpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFByb3BlcnR5VmFsdWUobmV3Um93LCBmaWVsZE5hbWUsIG5ld1ZhbHVlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICByZXR1cm4gbmV3Um93O1xuICAgICAgICB9KTtcbiAgICB9XG5cblxuICAgIC8qKlxuICAgICAqIFRoZSBwdXJwb3NlIG9mIHRoaXMgbWV0aG9kIGlzIHRvIG1hcCB2YWx1ZXNcbiAgICAgKiBmcm9tIHRoZSBUYWJsZUNvbHVtbnNDb21wb25lbnQsIHdoaWNoIHVzZXMgdGhlIG51bWJlckZvcm1hdE9wdGlvbnNcbiAgICAgKiBmaWVsZCwgYWxvbmcgd2l0aCByb3dzIHRoYXQgaGF2ZSBhIGN1c3RvbSBudW1iZXJGb3JtYXRPcHRpb25zLFxuICAgICAqIHRvIGVuc3VyZSB0aGUgY29ycmVjdCB2YWx1ZXMgYXJlIGV4cG9ydGVkIGJ5IHRoZSBUYWJsZVBhZ2luZ0NvbXBvbmVudC5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIFJldHVybnMgdGhlIGNvcnJlY3RseSBtYXBwZWQgdGFibGVEYXRhLlxuICAgICAqL1xuICAgIHB1YmxpYyBtYXBOdW1iZXJGb3JtYXRPcHRpb25zRXhwb3J0KFxuICAgICAgICBjb2x1bW5zOiBQYXJ0aWFsPENvbHVtbj5bXSxcbiAgICAgICAgdGFibGVEYXRhOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOlxuICAgICAgICAgICAgfCBSb3dWYWx1ZUZvcm1hdE9wdGlvblxuICAgICAgICAgICAgfCBudW1iZXJcbiAgICAgICAgICAgIHwgc3RyaW5nO1xuICAgICAgICB9W11cbiAgICApIHtcbiAgICAgICAgY29uc3QgaGFzTnVtYmVyRm9ybWF0T3B0aW9uc0NvbHVtbnMgPSBjb2x1bW5zLnNvbWUoKGNvbHVtbikgPT4gY29sdW1uLm51bWJlckZvcm1hdE9wdGlvbnMpO1xuICAgICAgICBjb25zdCBoYXNOdW1iZXJGb3JtYXRPcHRpb25zUm93cyA9IHRhYmxlRGF0YS5zb21lKChyb3dEYXRhKSA9PiBPYmplY3Qua2V5cyhyb3dEYXRhKS5zb21lKChrZXkpID0+IChyb3dEYXRhW2tleV0gYXMgUm93VmFsdWVGb3JtYXRPcHRpb24pPy5vcHRpb25zPy5udW1iZXJGb3JtYXRPcHRpb25zKSk7XG5cbiAgICAgICAgaWYgKCFoYXNOdW1iZXJGb3JtYXRPcHRpb25zQ29sdW1ucyAmJiAhaGFzTnVtYmVyRm9ybWF0T3B0aW9uc1Jvd3MpIHJldHVybiB0YWJsZURhdGE7XG5cbiAgICAgICAgbGV0IG1hcHBlZFRhYmxlRGF0YSA9IFsuLi50YWJsZURhdGFdO1xuXG4gICAgICAgIGlmIChoYXNOdW1iZXJGb3JtYXRPcHRpb25zQ29sdW1ucykge1xuICAgICAgICAgICAgbWFwcGVkVGFibGVEYXRhID0gbWFwcGVkVGFibGVEYXRhLm1hcCgocm93RGF0YSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJvdyA9IHsgLi4ucm93RGF0YSB9O1xuXG4gICAgICAgICAgICAgICAgY29uc3QgY29sdW1uc1dpdGhOdW1iZXJGb3JtYXRPcHRpb25zID0gY29sdW1ucy5maWx0ZXIoKGNvbHVtbikgPT4gY29sdW1uLm51bWJlckZvcm1hdE9wdGlvbnMpO1xuXG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCB7IGF0dHJpYnV0ZXMsIG51bWJlckZvcm1hdE9wdGlvbnMgfSBvZiBjb2x1bW5zV2l0aE51bWJlckZvcm1hdE9wdGlvbnMpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBhdHRyaWJ1dGUgb2YgYXR0cmlidXRlcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKChyb3dbYXR0cmlidXRlXSBhcyBSb3dWYWx1ZUZvcm1hdE9wdGlvbikub3B0aW9ucz8ubnVtYmVyRm9ybWF0T3B0aW9ucykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHJvd1thdHRyaWJ1dGVdIGFzIHN0cmluZyB8IG51bWJlcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbWFwcGVkVmFsdWUgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bWJlckZvcm1hdE9wdGlvbnMuc3R5bGUgPT09IFwicGVyY2VudFwiID8gbmV3IEJpZ051bWJlcih2YWx1ZSkudGltZXMoMTAwKSA6IG5ldyBCaWdOdW1iZXIodmFsdWUpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBudW1iZXJGb3JtYXQgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQoXCJlbi1VU1wiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ubnVtYmVyRm9ybWF0T3B0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogXCJkZWNpbWFsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlR3JvdXBpbmc6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdW5kaW5nTW9kZTogXCJ0cnVuY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGFzIGFueSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHJvd1thdHRyaWJ1dGVdID0gbnVtYmVyRm9ybWF0LmZvcm1hdChtYXBwZWRWYWx1ZS50b051bWJlcigpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiByb3c7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChoYXNOdW1iZXJGb3JtYXRPcHRpb25zUm93cykge1xuICAgICAgICAgICAgbWFwcGVkVGFibGVEYXRhID0gdGFibGVEYXRhLm1hcCgocm93RGF0YSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJvdyA9IHsgLi4ucm93RGF0YSB9O1xuXG4gICAgICAgICAgICAgICAgY29uc3Qga2V5c1dpdGhOdW1iZXJGb3JtYXRPcHRpb25zID0gT2JqZWN0LmtleXMocm93KVxuICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKChrZXkpID0+IChyb3dba2V5XSBhcyBSb3dWYWx1ZUZvcm1hdE9wdGlvbik/Lm9wdGlvbnM/Lm51bWJlckZvcm1hdE9wdGlvbnMpO1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IG9mIGtleXNXaXRoTnVtYmVyRm9ybWF0T3B0aW9ucykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IChyb3dEYXRhW2tleV0gYXMgUm93VmFsdWVGb3JtYXRPcHRpb24pLnZhbHVlO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG51bWJlckZvcm1hdE9wdGlvbnMgPSAocm93RGF0YVtrZXldIGFzIFJvd1ZhbHVlRm9ybWF0T3B0aW9uKS5vcHRpb25zLm51bWJlckZvcm1hdE9wdGlvbnM7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbWFwcGVkVmFsdWUgPSBudW1iZXJGb3JtYXRPcHRpb25zLnN0eWxlID09PSBcInBlcmNlbnRcIiA/IG5ldyBCaWdOdW1iZXIodmFsdWUpLnRpbWVzKDEwMCkgOiBuZXcgQmlnTnVtYmVyKHZhbHVlKTtcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCBudW1iZXJGb3JtYXQgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQoXCJlbi1VU1wiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5udW1iZXJGb3JtYXRPcHRpb25zLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6IFwiZGVjaW1hbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgdXNlR3JvdXBpbmc6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgcm91bmRpbmdNb2RlOiBcInRydW5jXCJcbiAgICAgICAgICAgICAgICAgICAgfSBhcyBhbnkpO1xuXG4gICAgICAgICAgICAgICAgICAgIChyb3dba2V5XSBhcyBzdHJpbmcgfCBudW1iZXIpID0gbnVtYmVyRm9ybWF0LmZvcm1hdChtYXBwZWRWYWx1ZS50b051bWJlcigpKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gcm93O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbWFwcGVkVGFibGVEYXRhO1xuICAgIH1cblxuICAgIHB1YmxpYyBtYXBDdXN0b21FeHBvcnQoY29sdW1uczogYW55W10sIHJvd3M6IGFueVtdKSB7XG4gICAgICAgIGNvbnN0IGN1c3RvbUNvbHVtbnMgPSBjb2x1bW5zLmZpbHRlcigocCkgPT4gcC5jdXN0b21FeHBvcnQpO1xuICAgICAgICBpZiAoIWN1c3RvbUNvbHVtbnMubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4gcm93cztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbLi4ucm93c10ubWFwKChyb3cpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG5ld1JvdyA9IHsgLi4ucm93IH07XG4gICAgICAgICAgICBjdXN0b21Db2x1bW5zLmZvckVhY2goKGNvbHVtbikgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZpZWxkcyA9ICFBcnJheS5pc0FycmF5KGNvbHVtbi5maWVsZCkgPyBbY29sdW1uLmZpZWxkXSA6IGNvbHVtbi5maWVsZDtcbiAgICAgICAgICAgICAgICBmaWVsZHMuZm9yRWFjaCgoZmllbGROYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY29sdW1uRGF0YSA9IHRoaXMuZ2V0UHJvcGVydHlWYWx1ZShyb3csIGZpZWxkTmFtZSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjb2x1bW5EYXRhID09PSBudWxsIHx8IGNvbHVtbkRhdGEgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG5ld1ZhbHVlID0gY29sdW1uLmN1c3RvbUV4cG9ydChjb2x1bW5EYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRQcm9wZXJ0eVZhbHVlKG5ld1JvdywgZmllbGROYW1lLCBuZXdWYWx1ZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgcmV0dXJuIG5ld1JvdztcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGVWYWx1ZShjb2x1bW46IGFueSwgY29sdW1uRGF0YTogYW55KSB7XG4gICAgICAgIC8vIERlZmF1bHQgdXNhZ2U6IEVOVU1fVkFMVUUgLT4gZG9tYWluLnNlcnZpY2UuZW51bV92YWx1ZVxuICAgICAgICBjb25zdCBlbnVtVmFsdWUgPSBjb2x1bW5EYXRhLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKTtcbiAgICAgICAgbGV0IHRyYW5zbGF0aW9uS2V5ID0gY29sdW1uLmVudW1QcmVmaXggKyBlbnVtVmFsdWU7XG4gICAgICAgIGxldCB0cmFuc2xhdGVkVmFsdWUgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KHRyYW5zbGF0aW9uS2V5KTtcblxuICAgICAgICAvLyBDdXN0b20gdXNhZ2UgMTogVjkgLT4gZG9tYWluLnNlcnZpY2Uudl85XG4gICAgICAgIGlmICh0cmFuc2xhdGlvbktleSA9PT0gdHJhbnNsYXRlZFZhbHVlICYmIGVudW1WYWx1ZS5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICB0cmFuc2xhdGlvbktleSA9IGAke2NvbHVtbi5lbnVtUHJlZml4fSR7ZW51bVZhbHVlLnN1YnN0cmluZygwLCAxKX1fJHtlbnVtVmFsdWUuc3Vic3RyKDEpfWA7XG4gICAgICAgICAgICB0cmFuc2xhdGVkVmFsdWUgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KHRyYW5zbGF0aW9uS2V5KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEN1c3RvbSB1c2FnZSAyOiBFbnVtVmFsdWUgLT4gZG9tYWluLnNlcnZpY2UuZW51bV92YWx1ZVxuICAgICAgICBpZiAodHJhbnNsYXRpb25LZXkgPT09IHRyYW5zbGF0ZWRWYWx1ZSkge1xuICAgICAgICAgICAgY29uc3QgZW51bUtleSA9IHRoaXMuY29udmVydFRvU25ha2VDYXNlKGNvbHVtbkRhdGEudG9TdHJpbmcoKSk7XG4gICAgICAgICAgICB0cmFuc2xhdGlvbktleSA9IGAke2NvbHVtbi5lbnVtUHJlZml4fSR7ZW51bUtleX1gO1xuICAgICAgICAgICAgdHJhbnNsYXRlZFZhbHVlID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudCh0cmFuc2xhdGlvbktleSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdHJhbnNsYXRlZFZhbHVlO1xuICAgIH1cblxuICAgIHByaXZhdGUgY29udmVydFRvU25ha2VDYXNlKHN0cjogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiBzdHIucmVwbGFjZSgvKFtBLVpdKS9nLCAobWF0Y2gsIGdyb3VwKSA9PiBgXyR7Z3JvdXAudG9Mb3dlckNhc2UoKX1gKS5yZXBsYWNlKC9eXy8sIFwiXCIpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RXhwb3J0RmlsZU5hbWUoKSB7XG4gICAgICAgIGNvbnN0IGxhbmcgPSB0aGlzLnRyYW5zbGF0ZS5jdXJyZW50TGFuZyA/PyBcInB0LUJSXCI7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xuXG4gICAgICAgIGNvbnN0IGZpbGVOYW1lID0gdGhpcy5leHBvcnRGaWxlTmFtZSA/PyBcImRvd25sb2FkXCI7XG4gICAgICAgIGNvbnN0IGZvcm1hdHRlZERhdGUgPSBkYXRlLnRvTG9jYWxlRGF0ZVN0cmluZyhsYW5nKS5yZXBsYWNlKFwiX1wiLCBcIi1cIik7XG4gICAgICAgIGNvbnN0IGZvcm1hdHRlZFRpbWUgPSBkYXRlLnRvTG9jYWxlVGltZVN0cmluZyhsYW5nKS5yZXBsYWNlKFwiIFwiLCBcIi1cIik7XG5cbiAgICAgICAgcmV0dXJuIGAke2ZpbGVOYW1lfV8ke2Zvcm1hdHRlZERhdGV9XyR7Zm9ybWF0dGVkVGltZX1gO1xuICAgIH1cblxuICAgIHB1YmxpYyBleHBvcnRDdXJyZW50UGFnZSgpIHtcbiAgICAgICAgdGhpcy52YWxpZGF0ZUNvbXBvbmVudCgpO1xuICAgICAgICBjb25zdCBjb2x1bW5zID0gdGhpcy5nZXRDb2x1bW5zVG9FeHBvcnQoKTtcbiAgICAgICAgY29uc3QgZGF0YVRvRXhwb3J0ID0gdGhpcy5nZXRDdXJyZW50UGFnZVJvd3NUb0V4cG9ydChjb2x1bW5zKTtcbiAgICAgICAgRXhwb3J0VXRpbHMuZXhwb3J0Q1NWKGNvbHVtbnMsIGRhdGFUb0V4cG9ydCwgdW5kZWZpbmVkLCB0aGlzLmdldEV4cG9ydEZpbGVOYW1lKCkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBleHBvcnRTZWxlY3RlZFJlY29yZHMoKSB7XG4gICAgICAgIHRoaXMudmFsaWRhdGVDb21wb25lbnQoKTtcbiAgICAgICAgY29uc3QgY29sdW1ucyA9IHRoaXMuZ2V0Q29sdW1uc1RvRXhwb3J0KCk7XG4gICAgICAgIGNvbnN0IGRhdGFUb0V4cG9ydCA9IHRoaXMuZ2V0U2VsZWN0ZWRSb3dzVG9FeHBvcnQoY29sdW1ucyk7XG4gICAgICAgIEV4cG9ydFV0aWxzLmV4cG9ydENTVihjb2x1bW5zLCBkYXRhVG9FeHBvcnQsIHVuZGVmaW5lZCwgdGhpcy5nZXRFeHBvcnRGaWxlTmFtZSgpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZXhwb3J0QWxsUmVjb3JkcygpIHtcbiAgICAgICAgdGhpcy52YWxpZGF0ZUNvbXBvbmVudCgpO1xuXG4gICAgICAgIGxldCBzZXJ2ZXJEYXRhID0gYXdhaXQgdGhpcy5sb2FkQWxsUmVjb3JkcygpO1xuXG4gICAgICAgIGNvbnN0IGNvbHVtbnMgPSB0aGlzLmdldENvbHVtbnNUb0V4cG9ydCgpO1xuXG4gICAgICAgIHNlcnZlckRhdGEgPSB0aGlzLm1hcEN1c3RvbUV4cG9ydChjb2x1bW5zLCBzZXJ2ZXJEYXRhKTtcblxuICAgICAgICBzZXJ2ZXJEYXRhID0gdGhpcy5tYXBOdW1iZXJGb3JtYXRPcHRpb25zRXhwb3J0KGNvbHVtbnMsIHNlcnZlckRhdGEpO1xuXG4gICAgICAgIGNvbnN0IGRhdGFUb0V4cG9ydCA9IHRoaXMubWFwQ29sdW1uc1RyYW5zbGF0aW9ucyhjb2x1bW5zLCBzZXJ2ZXJEYXRhKTtcblxuICAgICAgICBFeHBvcnRVdGlscy5leHBvcnRDU1YoY29sdW1ucywgZGF0YVRvRXhwb3J0LCB1bmRlZmluZWQsIHRoaXMuZ2V0RXhwb3J0RmlsZU5hbWUoKSk7XG4gICAgfVxufVxuIl19
|
|
308
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtcGFnaW5nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL3RhYmxlL3RhYmxlLXBhZ2luZy90YWJsZS1wYWdpbmcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUt2RCxPQUFPLEVBQXNCLGdDQUFnQyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU3RCxPQUFPLFNBQVMsTUFBTSxjQUFjLENBQUM7QUFjckMsSUFBYSxvQkFBb0IsR0FBakMsTUFBYSxvQkFBb0I7SUErQjdCLFlBQ3FCLFNBQTJCLEVBQ2Usa0JBQXNDO1FBRGhGLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQ2UsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQXRCOUYsZUFBVSxHQUFHLElBQUksQ0FBQztRQUdsQixnQ0FBMkIsR0FBRyxJQUFJLENBQUM7SUFvQnRDLENBQUM7SUFFTCxXQUFXLENBQUMsT0FBc0I7O1FBQzlCLFVBQUksT0FBTyxDQUFDLFlBQVksMENBQUUsWUFBWSxFQUFFO1lBQ3BDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxlQUFlLEVBQUU7Z0JBQ3hGLEtBQUssRUFBRSxPQUFPLENBQUMsWUFBWSxDQUFDLFlBQVk7YUFDM0MsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3RCLE9BQU8sR0FBRyxJQUFJ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LGdDQUFnQzs7QUEvQjVDO0lBREMsS0FBSyxFQUFFOzBEQUNxQjtBQUc3QjtJQURDLEtBQUssRUFBRTs0REFDdUI7QUFHL0I7SUFEQyxLQUFLLEVBQUU7bURBQ2E7QUFHckI7SUFEQyxLQUFLLEVBQUU7d0RBQ2lCO0FBR3pCO0lBREMsS0FBSyxFQUFFO3lFQUNrQztBQUcxQztJQURDLEtBQUssRUFBRTsyREFDOEI7QUFHdEM7SUFEQyxLQUFLLEVBQUU7NERBQ3FDO0FBRzdDO0lBREMsS0FBSyxFQUFFO29FQUNvQztBQUc1QztJQURDLEtBQUssRUFBRTtpRUFDaUM7QUFHekM7SUFEQyxNQUFNLEVBQUU7OERBQ3VCO0FBN0J2QixvQkFBb0I7SUFMaEMsU0FBUyxDQUFDO1FBQ1AsOGJBQTRDO1FBRTVDLFFBQVEsRUFBRSxnQkFBZ0I7O0tBQzdCLENBQUM7SUFrQ08sV0FBQSxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtHQWpDcEMsb0JBQW9CLENBcVhoQztTQXJYWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tIFwicHJpbWVuZy9hcGlcIjtcbmltcG9ydCB7IFRhYmxlIH0gZnJvbSBcInByaW1lbmcvdGFibGVcIjtcbmltcG9ydCB7IENvbHVtbiB9IGZyb20gXCIuLi90YWJsZS1jb2x1bW4vbW9kZWxzL2NvbHVtbi5pbnRlcmZhY2VcIjtcblxuaW1wb3J0IHsgSG9zdFByb2plY3RDb25maWdzLCBIb3N0UHJvamVjdENvbmZpZ3NJbmplY3Rpb25Ub2tlbiB9IGZyb20gXCIuLi8uLi8uLi9hbmd1bGFyLWNvbXBvbmVudHMubW9kdWxlXCI7XG5pbXBvcnQgeyBFeHBvcnRVdGlscywgaXNOdWxsT3JVbmRlZmluZWQgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcbmltcG9ydCB7IEN1c3RvbUFjdGlvbiB9IGZyb20gXCIuL21vZGVsc1wiO1xuaW1wb3J0IEJpZ051bWJlciBmcm9tIFwiYmlnbnVtYmVyLmpzXCI7XG5cbnR5cGUgUm93VmFsdWVGb3JtYXRPcHRpb24gPSB7XG4gICAgdmFsdWU/OiBudW1iZXI7XG4gICAgb3B0aW9ucz86IHtcbiAgICAgICAgbnVtYmVyRm9ybWF0T3B0aW9ucz86IEludGwuTnVtYmVyRm9ybWF0T3B0aW9ucztcbiAgICB9O1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogXCIuL3RhYmxlLXBhZ2luZy5jb21wb25lbnQuaHRtbFwiLFxuICAgIHN0eWxlVXJsczogW1wiLi90YWJsZS1wYWdpbmcuY29tcG9uZW50LnNjc3NcIl0sXG4gICAgc2VsZWN0b3I6IFwicy10YWJsZS1wYWdpbmdcIixcbn0pXG5leHBvcnQgY2xhc3MgVGFibGVQYWdpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHRvdGFsUmVjb3JkcyE6IG51bWJlcjtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGV4cG9ydEZpbGVOYW1lPzogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdGFibGUhOiBUYWJsZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGV4cG9ydGFibGUgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZW5hYmxlRXhwb3J0U2VsZWN0ZWRSZWNvcmRzID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGN1c3RvbUFjdGlvbnM/OiBDdXN0b21BY3Rpb25bXTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGxvYWRBbGxSZWNvcmRzPzogKCkgPT4gUHJvbWlzZTxhbnlbXT47XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBsb2FkQ3VycmVudFBhZ2VSZWNvcmRzPzogKCkgPT4gYW55W107XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBsb2FkU2VsZWN0ZWRSZWNvcmRzPzogKCkgPT4gYW55W107XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgdG90YWxSZWNvcmRzVGV4dDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KEhvc3RQcm9qZWN0Q29uZmlnc0luamVjdGlvblRva2VuKSBwcml2YXRlIHJlYWRvbmx5IGhvc3RQcm9qZWN0Q29uZmlnczogSG9zdFByb2plY3RDb25maWdzXG4gICAgKSB7IH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNoYW5nZXMudG90YWxSZWNvcmRzPy5jdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMudG90YWxSZWNvcmRzVGV4dCA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5nZXRUcmFuc2xhdGVQcmVmaXgoKX10b3RhbF9yZWNvcmRzYCwge1xuICAgICAgICAgICAgICAgIHZhbHVlOiBjaGFuZ2VzLnRvdGFsUmVjb3Jkcy5jdXJyZW50VmFsdWUsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VHJhbnNsYXRlUHJlZml4KCkge1xuICAgICAgICByZXR1cm4gYCR7dGhpcy5ob3N0UHJvamVjdENvbmZpZ3MuZG9tYWlufS4ke3RoaXMuaG9zdFByb2plY3RDb25maWdzLnNlcnZpY2V9LmA7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFRvb2x0aXBUZXh0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLmdldFRyYW5zbGF0ZVByZWZpeCgpfWV4cG9ydF90b19jc3ZgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0QWN0aW9ucygpOiBNZW51SXRlbVtdIHtcbiAgICAgICAgY29uc3QgYWN0aW9uczogTWVudUl0ZW1bXSA9IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogXCJleHBvcnRDdXJyZW50UGFnZVwiLFxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMuZ2V0VHJhbnNsYXRlUHJlZml4KCl9ZXhwb3J0X2N1cnJlbnRfcGFnZWApLFxuICAgICAgICAgICAgICAgIGNvbW1hbmQ6ICgpID0+IHRoaXMuZXhwb3J0Q3VycmVudFBhZ2UoKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF07XG5cbiAgICAgICAgaWYgKHRoaXMuZW5hYmxlRXhwb3J0U2VsZWN0ZWRSZWNvcmRzKSB7XG4gICAgICAgICAgICBhY3Rpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgIGlkOiBcImV4cG9ydFNlbGVjdGVkXCIsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5nZXRUcmFuc2xhdGVQcmVmaXgoKX1leHBvcnRfc2VsZWN0ZWRfcmVjb3Jkc2ApLFxuICAgICAgICAgICAgICAgIGNvbW1hbmQ6ICgpID0+IHRoaXMuZXhwb3J0U2VsZWN0ZWRSZWNvcmRzKCksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmxvYWRBbGxSZWNvcmRzKSB7XG4gICAgICAgICAgICBhY3Rpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgIGlkOiBcImV4cG9ydEFsbFwiLFxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMuZ2V0VHJhbnNsYXRlUHJlZml4KCl9ZXhwb3J0X2FsbF9yZWNvcmRzYCksXG4gICAgICAgICAgICAgICAgY29tbWFuZDogKCkgPT4gdGhpcy5leHBvcnRBbGxSZWNvcmRzKCksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmN1c3RvbUFjdGlvbnM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3QgY3VzdG9tTWVudXMgPSB0aGlzLmN1c3RvbUFjdGlvbnMubWFwKChwLCBpbmRleCkgPT4gKHtcbiAgICAgICAgICAgICAgICBpZDogXCJjdXN0b21BY3Rpb25fXCIgKyBpbmRleCxcbiAgICAgICAgICAgICAgICBsYWJlbDogcC5sYWJlbCxcbiAgICAgICAgICAgICAgICBjb21tYW5kOiBwLmNvbW1hbmQsXG4gICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICBhY3Rpb25zLnB1c2goLi4uY3VzdG9tTWVudXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGFjdGlvbnM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB2YWxpZGF0ZUNvbXBvbmVudCgpIHtcbiAgICAgICAgaWYgKCF0aGlzLnRhYmxlKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJUYWJsZSBjb21wb25lbnQgbm90IGRlZmluZWRcIik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q29sdW1uc1RvRXhwb3J0KCkge1xuICAgICAgICByZXR1cm4gWy4uLnRoaXMudGFibGUuY29sdW1uc10ubWFwKChjb2x1bW4pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGV4cG9ydENvbHVtbiA9IHtcbiAgICAgICAgICAgICAgICAuLi5jb2x1bW4sXG4gICAgICAgICAgICAgICAgaGVhZGVyOiBjb2x1bW4uaGVhZGVyLFxuICAgICAgICAgICAgICAgIGV4cG9ydGFibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgZmllbGQ6IGNvbHVtbi5maWVsZCxcbiAgICAgICAgICAgICAgICBzZXBhcmF0b3I6IGNvbHVtbi5zZXBhcmF0b3IgPz8gXCIgLSBcIixcbiAgICAgICAgICAgICAgICBlbnVtUHJlZml4OiBjb2x1bW4uZW51bVByZWZpeCxcbiAgICAgICAgICAgICAgICBjdXN0b21FeHBvcnQ6IGNvbHVtbi5jdXN0b21FeHBvcnQsXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBpZiAoY29sdW1uLmV4cG9ydGFibGUgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgZXhwb3J0Q29sdW1uLmV4cG9ydGFibGUgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKGNvbHVtbi5hdHRyaWJ1dGVzICYmIGNvbHVtbi5hdHRyaWJ1dGVzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGlmIChjb2x1bW4uYXR0cmlidXRlcy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgICAgICAgICAgZXhwb3J0Q29sdW1uLmZpZWxkID0gY29sdW1uLmF0dHJpYnV0ZXNbMF07XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgZXhwb3J0Q29sdW1uLmZpZWxkID0gY29sdW1uLmF0dHJpYnV0ZXM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gZXhwb3J0Q29sdW1uO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEN1cnJlbnRQYWdlUm93c1RvRXhwb3J0KGNvbHVtbnM6IGFueVtdKSB7XG4gICAgICAgIGxldCB0YWJsZURhdGEgPSB0aGlzLnRhYmxlLnZhbHVlO1xuICAgICAgICBpZiAodGhpcy5sb2FkQ3VycmVudFBhZ2VSZWNvcmRzKSB7XG4gICAgICAgICAgICB0YWJsZURhdGEgPSB0aGlzLmxvYWRDdXJyZW50UGFnZVJlY29yZHMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRhYmxlRGF0YSA9IHRoaXMubWFwQ3VzdG9tRXhwb3J0KGNvbHVtbnMsIHRhYmxlRGF0YSk7XG5cbiAgICAgICAgdGFibGVEYXRhID0gdGhpcy5tYXBOdW1iZXJGb3JtYXRPcHRpb25zRXhwb3J0KGNvbHVtbnMsIHRhYmxlRGF0YSk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMubWFwQ29sdW1uc1RyYW5zbGF0aW9ucyhjb2x1bW5zLCB0YWJsZURhdGEpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0U2VsZWN0ZWRSb3dzVG9FeHBvcnQoY29sdW1uczogYW55W10pIHtcbiAgICAgICAgbGV0IHRhYmxlRGF0YSA9IHRoaXMudGFibGUuc2VsZWN0aW9uO1xuICAgICAgICBpZiAodGhpcy5sb2FkU2VsZWN0ZWRSZWNvcmRzKSB7XG4gICAgICAgICAgICB0YWJsZURhdGEgPSB0aGlzLmxvYWRTZWxlY3RlZFJlY29yZHMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRhYmxlRGF0YSA9IHRoaXMubWFwQ3VzdG9tRXhwb3J0KGNvbHVtbnMsIHRhYmxlRGF0YSk7XG5cbiAgICAgICAgdGFibGVEYXRhID0gdGhpcy5tYXBOdW1iZXJGb3JtYXRPcHRpb25zRXhwb3J0KGNvbHVtbnMsIHRhYmxlRGF0YSk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMubWFwQ29sdW1uc1RyYW5zbGF0aW9ucyhjb2x1bW5zLCB0YWJsZURhdGEpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UHJvcGVydHlWYWx1ZShvYmo6IGFueSwgcGF0aDogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiBwYXRoLnNwbGl0KFwiLlwiKS5yZWR1Y2UoKHJlc3VsdDogYW55LCBwcm9wOiBhbnkpID0+IChyZXN1bHRbcHJvcF0gPT09IHVuZGVmaW5lZCA/IHVuZGVmaW5lZCA6IHJlc3VsdFtwcm9wXSksIG9iaik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRQcm9wZXJ0eVZhbHVlKG9iajogYW55LCBwYXRoOiBzdHJpbmcsIHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5yZWN1cnNpb25TZXRWYWx1ZShvYmosIHBhdGguc3BsaXQoXCIuXCIpLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZWN1cnNpb25TZXRWYWx1ZShvYmo6IGFueSwga2V5c0xpc3Q6IHN0cmluZ1tdLCB2YWx1ZTogYW55KTogYW55IHtcbiAgICAgICAgY29uc3Qga2V5ID0ga2V5c0xpc3RbMF07XG4gICAgICAgIGlmIChrZXlzTGlzdC5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIG9ialtrZXldID0gdmFsdWU7XG4gICAgICAgICAgICByZXR1cm4gb2JqO1xuICAgICAgICB9XG4gICAgICAgIG9ialtrZXldID0gdGhpcy5yZWN1cnNpb25TZXRWYWx1ZShvYmo/LltrZXldIHx8IHt9LCBrZXlzTGlzdC5zbGljZSgxKSwgdmFsdWUpO1xuICAgICAgICByZXR1cm4gb2JqO1xuICAgIH1cblxuICAgIHB1YmxpYyBtYXBDb2x1bW5zVHJhbnNsYXRpb25zKGNvbHVtbnM6IGFueVtdLCByb3dzOiBhbnlbXSkge1xuICAgICAgICBjb25zdCBlbnVtQ29sdW1ucyA9IGNvbHVtbnMuZmlsdGVyKChwKSA9PiBwLmVudW1QcmVmaXgpO1xuICAgICAgICBpZiAoIWVudW1Db2x1bW5zLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHJvd3M7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gWy4uLnJvd3NdLm1hcCgocm93KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBuZXdSb3cgPSB7IC4uLnJvdyB9O1xuICAgICAgICAgICAgZW51bUNvbHVtbnMuZm9yRWFjaCgoY29sdW1uKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmllbGRzID0gIUFycmF5LmlzQXJyYXkoY29sdW1uLmZpZWxkKSA/IFtjb2x1bW4uZmllbGRdIDogY29sdW1uLmZpZWxkO1xuICAgICAgICAgICAgICAgIGZpZWxkcy5mb3JFYWNoKChmaWVsZE5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjb2x1bW5EYXRhID0gdGhpcy5nZXRQcm9wZXJ0eVZhbHVlKHJvdywgZmllbGROYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbHVtbkRhdGEgPT09IG51bGwgfHwgY29sdW1uRGF0YSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdWYWx1ZSA9IHRoaXMudHJhbnNsYXRlVmFsdWUoY29sdW1uLCBjb2x1bW5EYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRQcm9wZXJ0eVZhbHVlKG5ld1JvdywgZmllbGROYW1lLCBuZXdWYWx1ZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgcmV0dXJuIG5ld1JvdztcbiAgICAgICAgfSk7XG4gICAgfVxuXG5cbiAgICAvKipcbiAgICAgKiBUaGUgcHVycG9zZSBvZiB0aGlzIG1ldGhvZCBpcyB0byBtYXAgdmFsdWVzXG4gICAgICogZnJvbSB0aGUgVGFibGVDb2x1bW5zQ29tcG9uZW50LCB3aGljaCB1c2VzIHRoZSBudW1iZXJGb3JtYXRPcHRpb25zXG4gICAgICogZmllbGQsIGFsb25nIHdpdGggcm93cyB0aGF0IGhhdmUgYSBjdXN0b20gbnVtYmVyRm9ybWF0T3B0aW9ucyxcbiAgICAgKiB0byBlbnN1cmUgdGhlIGNvcnJlY3QgdmFsdWVzIGFyZSBleHBvcnRlZCBieSB0aGUgVGFibGVQYWdpbmdDb21wb25lbnQuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBSZXR1cm5zIHRoZSBjb3JyZWN0bHkgbWFwcGVkIHRhYmxlRGF0YS5cbiAgICAgKi9cbiAgICBwdWJsaWMgbWFwTnVtYmVyRm9ybWF0T3B0aW9uc0V4cG9ydChcbiAgICAgICAgY29sdW1uczogUGFydGlhbDxDb2x1bW4+W10sXG4gICAgICAgIHRhYmxlRGF0YToge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTpcbiAgICAgICAgICAgIHwgUm93VmFsdWVGb3JtYXRPcHRpb25cbiAgICAgICAgICAgIHwgbnVtYmVyXG4gICAgICAgICAgICB8IHN0cmluZ1xuICAgICAgICAgICAgfCBudWxsXG4gICAgICAgICAgICB8IHVuZGVmaW5lZDtcbiAgICAgICAgfVtdXG4gICAgKSB7XG4gICAgICAgIGNvbnN0IGhhc051bWJlckZvcm1hdE9wdGlvbnNDb2x1bW5zID0gY29sdW1ucy5zb21lKChjb2x1bW4pID0+IGNvbHVtbi5udW1iZXJGb3JtYXRPcHRpb25zKTtcbiAgICAgICAgY29uc3QgaGFzTnVtYmVyRm9ybWF0T3B0aW9uc1Jvd3MgPSB0YWJsZURhdGEuc29tZSgocm93RGF0YSkgPT4gT2JqZWN0LmtleXMocm93RGF0YSkuc29tZSgoa2V5KSA9PiAocm93RGF0YVtrZXldIGFzIFJvd1ZhbHVlRm9ybWF0T3B0aW9uKT8ub3B0aW9ucz8ubnVtYmVyRm9ybWF0T3B0aW9ucykpO1xuXG4gICAgICAgIGlmICghaGFzTnVtYmVyRm9ybWF0T3B0aW9uc0NvbHVtbnMgJiYgIWhhc051bWJlckZvcm1hdE9wdGlvbnNSb3dzKSByZXR1cm4gdGFibGVEYXRhO1xuXG4gICAgICAgIGxldCBtYXBwZWRUYWJsZURhdGEgPSBbLi4udGFibGVEYXRhXTtcblxuICAgICAgICBpZiAoaGFzTnVtYmVyRm9ybWF0T3B0aW9uc0NvbHVtbnMpIHtcbiAgICAgICAgICAgIG1hcHBlZFRhYmxlRGF0YSA9IG1hcHBlZFRhYmxlRGF0YS5tYXAoKHJvd0RhdGEpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCByb3cgPSB7IC4uLnJvd0RhdGEgfTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IGNvbHVtbnNXaXRoTnVtYmVyRm9ybWF0T3B0aW9ucyA9IGNvbHVtbnMuZmlsdGVyKChjb2x1bW4pID0+IGNvbHVtbi5udW1iZXJGb3JtYXRPcHRpb25zKTtcblxuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgeyBhdHRyaWJ1dGVzLCBudW1iZXJGb3JtYXRPcHRpb25zIH0gb2YgY29sdW1uc1dpdGhOdW1iZXJGb3JtYXRPcHRpb25zKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgYXR0cmlidXRlIG9mIGF0dHJpYnV0ZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc051bGxPclVuZGVmaW5lZChyb3dbYXR0cmlidXRlXSkpIGNvbnRpbnVlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoKHJvd1thdHRyaWJ1dGVdIGFzIFJvd1ZhbHVlRm9ybWF0T3B0aW9uKS5vcHRpb25zPy5udW1iZXJGb3JtYXRPcHRpb25zKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gcm93W2F0dHJpYnV0ZV0gYXMgc3RyaW5nIHwgbnVtYmVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXBwZWRWYWx1ZSA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVtYmVyRm9ybWF0T3B0aW9ucy5zdHlsZSA9PT0gXCJwZXJjZW50XCIgPyBuZXcgQmlnTnVtYmVyKHZhbHVlKS50aW1lcygxMDApIDogbmV3IEJpZ051bWJlcih2YWx1ZSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG51bWJlckZvcm1hdCA9IG5ldyBJbnRsLk51bWJlckZvcm1hdChcImVuLVVTXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5udW1iZXJGb3JtYXRPcHRpb25zLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiBcImRlY2ltYWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VHcm91cGluZzogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcm91bmRpbmdNb2RlOiBcInRydW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gYXMgYW55KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgcm93W2F0dHJpYnV0ZV0gPSBudW1iZXJGb3JtYXQuZm9ybWF0KG1hcHBlZFZhbHVlLnRvTnVtYmVyKCkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHJvdztcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGhhc051bWJlckZvcm1hdE9wdGlvbnNSb3dzKSB7XG4gICAgICAgICAgICBtYXBwZWRUYWJsZURhdGEgPSB0YWJsZURhdGEubWFwKChyb3dEYXRhKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgcm93ID0geyAuLi5yb3dEYXRhIH07XG5cbiAgICAgICAgICAgICAgICBjb25zdCBrZXlzV2l0aE51bWJlckZvcm1hdE9wdGlvbnMgPSBPYmplY3Qua2V5cyhyb3cpXG4gICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoKGtleSkgPT4gKHJvd1trZXldIGFzIFJvd1ZhbHVlRm9ybWF0T3B0aW9uKT8ub3B0aW9ucz8ubnVtYmVyRm9ybWF0T3B0aW9ucyk7XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBrZXkgb2Yga2V5c1dpdGhOdW1iZXJGb3JtYXRPcHRpb25zKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gKHJvd0RhdGFba2V5XSBhcyBSb3dWYWx1ZUZvcm1hdE9wdGlvbikudmFsdWU7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbnVtYmVyRm9ybWF0T3B0aW9ucyA9IChyb3dEYXRhW2tleV0gYXMgUm93VmFsdWVGb3JtYXRPcHRpb24pLm9wdGlvbnMubnVtYmVyRm9ybWF0T3B0aW9ucztcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXBwZWRWYWx1ZSA9IG51bWJlckZvcm1hdE9wdGlvbnMuc3R5bGUgPT09IFwicGVyY2VudFwiID8gbmV3IEJpZ051bWJlcih2YWx1ZSkudGltZXMoMTAwKSA6IG5ldyBCaWdOdW1iZXIodmFsdWUpO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG51bWJlckZvcm1hdCA9IG5ldyBJbnRsLk51bWJlckZvcm1hdChcImVuLVVTXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLm51bWJlckZvcm1hdE9wdGlvbnMsXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogXCJkZWNpbWFsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB1c2VHcm91cGluZzogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICByb3VuZGluZ01vZGU6IFwidHJ1bmNcIlxuICAgICAgICAgICAgICAgICAgICB9IGFzIGFueSk7XG5cbiAgICAgICAgICAgICAgICAgICAgKHJvd1trZXldIGFzIHN0cmluZyB8IG51bWJlcikgPSBudW1iZXJGb3JtYXQuZm9ybWF0KG1hcHBlZFZhbHVlLnRvTnVtYmVyKCkpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiByb3c7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBtYXBwZWRUYWJsZURhdGE7XG4gICAgfVxuXG4gICAgcHVibGljIG1hcEN1c3RvbUV4cG9ydChjb2x1bW5zOiBhbnlbXSwgcm93czogYW55W10pIHtcbiAgICAgICAgY29uc3QgY3VzdG9tQ29sdW1ucyA9IGNvbHVtbnMuZmlsdGVyKChwKSA9PiBwLmN1c3RvbUV4cG9ydCk7XG4gICAgICAgIGlmICghY3VzdG9tQ29sdW1ucy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybiByb3dzO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFsuLi5yb3dzXS5tYXAoKHJvdykgPT4ge1xuICAgICAgICAgICAgY29uc3QgbmV3Um93ID0geyAuLi5yb3cgfTtcbiAgICAgICAgICAgIGN1c3RvbUNvbHVtbnMuZm9yRWFjaCgoY29sdW1uKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmllbGRzID0gIUFycmF5LmlzQXJyYXkoY29sdW1uLmZpZWxkKSA/IFtjb2x1bW4uZmllbGRdIDogY29sdW1uLmZpZWxkO1xuICAgICAgICAgICAgICAgIGZpZWxkcy5mb3JFYWNoKChmaWVsZE5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjb2x1bW5EYXRhID0gdGhpcy5nZXRQcm9wZXJ0eVZhbHVlKHJvdywgZmllbGROYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbHVtbkRhdGEgPT09IG51bGwgfHwgY29sdW1uRGF0YSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV3VmFsdWUgPSBjb2x1bW4uY3VzdG9tRXhwb3J0KGNvbHVtbkRhdGEpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFByb3BlcnR5VmFsdWUobmV3Um93LCBmaWVsZE5hbWUsIG5ld1ZhbHVlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICByZXR1cm4gbmV3Um93O1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHRyYW5zbGF0ZVZhbHVlKGNvbHVtbjogYW55LCBjb2x1bW5EYXRhOiBhbnkpIHtcbiAgICAgICAgLy8gRGVmYXVsdCB1c2FnZTogRU5VTV9WQUxVRSAtPiBkb21haW4uc2VydmljZS5lbnVtX3ZhbHVlXG4gICAgICAgIGNvbnN0IGVudW1WYWx1ZSA9IGNvbHVtbkRhdGEudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICBsZXQgdHJhbnNsYXRpb25LZXkgPSBjb2x1bW4uZW51bVByZWZpeCArIGVudW1WYWx1ZTtcbiAgICAgICAgbGV0IHRyYW5zbGF0ZWRWYWx1ZSA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQodHJhbnNsYXRpb25LZXkpO1xuXG4gICAgICAgIC8vIEN1c3RvbSB1c2FnZSAxOiBWOSAtPiBkb21haW4uc2VydmljZS52XzlcbiAgICAgICAgaWYgKHRyYW5zbGF0aW9uS2V5ID09PSB0cmFuc2xhdGVkVmFsdWUgJiYgZW51bVZhbHVlLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIHRyYW5zbGF0aW9uS2V5ID0gYCR7Y29sdW1uLmVudW1QcmVmaXh9JHtlbnVtVmFsdWUuc3Vic3RyaW5nKDAsIDEpfV8ke2VudW1WYWx1ZS5zdWJzdHIoMSl9YDtcbiAgICAgICAgICAgIHRyYW5zbGF0ZWRWYWx1ZSA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQodHJhbnNsYXRpb25LZXkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ3VzdG9tIHVzYWdlIDI6IEVudW1WYWx1ZSAtPiBkb21haW4uc2VydmljZS5lbnVtX3ZhbHVlXG4gICAgICAgIGlmICh0cmFuc2xhdGlvbktleSA9PT0gdHJhbnNsYXRlZFZhbHVlKSB7XG4gICAgICAgICAgICBjb25zdCBlbnVtS2V5ID0gdGhpcy5jb252ZXJ0VG9TbmFrZUNhc2UoY29sdW1uRGF0YS50b1N0cmluZygpKTtcbiAgICAgICAgICAgIHRyYW5zbGF0aW9uS2V5ID0gYCR7Y29sdW1uLmVudW1QcmVmaXh9JHtlbnVtS2V5fWA7XG4gICAgICAgICAgICB0cmFuc2xhdGVkVmFsdWUgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KHRyYW5zbGF0aW9uS2V5KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cmFuc2xhdGVkVmFsdWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb252ZXJ0VG9TbmFrZUNhc2Uoc3RyOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHN0ci5yZXBsYWNlKC8oW0EtWl0pL2csIChtYXRjaCwgZ3JvdXApID0+IGBfJHtncm91cC50b0xvd2VyQ2FzZSgpfWApLnJlcGxhY2UoL15fLywgXCJcIik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRFeHBvcnRGaWxlTmFtZSgpIHtcbiAgICAgICAgY29uc3QgbGFuZyA9IHRoaXMudHJhbnNsYXRlLmN1cnJlbnRMYW5nID8/IFwicHQtQlJcIjtcbiAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKCk7XG5cbiAgICAgICAgY29uc3QgZmlsZU5hbWUgPSB0aGlzLmV4cG9ydEZpbGVOYW1lID8/IFwiZG93bmxvYWRcIjtcbiAgICAgICAgY29uc3QgZm9ybWF0dGVkRGF0ZSA9IGRhdGUudG9Mb2NhbGVEYXRlU3RyaW5nKGxhbmcpLnJlcGxhY2UoXCJfXCIsIFwiLVwiKTtcbiAgICAgICAgY29uc3QgZm9ybWF0dGVkVGltZSA9IGRhdGUudG9Mb2NhbGVUaW1lU3RyaW5nKGxhbmcpLnJlcGxhY2UoXCIgXCIsIFwiLVwiKTtcblxuICAgICAgICByZXR1cm4gYCR7ZmlsZU5hbWV9XyR7Zm9ybWF0dGVkRGF0ZX1fJHtmb3JtYXR0ZWRUaW1lfWA7XG4gICAgfVxuXG4gICAgcHVibGljIGV4cG9ydEN1cnJlbnRQYWdlKCkge1xuICAgICAgICB0aGlzLnZhbGlkYXRlQ29tcG9uZW50KCk7XG4gICAgICAgIGNvbnN0IGNvbHVtbnMgPSB0aGlzLmdldENvbHVtbnNUb0V4cG9ydCgpO1xuICAgICAgICBjb25zdCBkYXRhVG9FeHBvcnQgPSB0aGlzLmdldEN1cnJlbnRQYWdlUm93c1RvRXhwb3J0KGNvbHVtbnMpO1xuICAgICAgICBFeHBvcnRVdGlscy5leHBvcnRDU1YoY29sdW1ucywgZGF0YVRvRXhwb3J0LCB1bmRlZmluZWQsIHRoaXMuZ2V0RXhwb3J0RmlsZU5hbWUoKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGV4cG9ydFNlbGVjdGVkUmVjb3JkcygpIHtcbiAgICAgICAgdGhpcy52YWxpZGF0ZUNvbXBvbmVudCgpO1xuICAgICAgICBjb25zdCBjb2x1bW5zID0gdGhpcy5nZXRDb2x1bW5zVG9FeHBvcnQoKTtcbiAgICAgICAgY29uc3QgZGF0YVRvRXhwb3J0ID0gdGhpcy5nZXRTZWxlY3RlZFJvd3NUb0V4cG9ydChjb2x1bW5zKTtcbiAgICAgICAgRXhwb3J0VXRpbHMuZXhwb3J0Q1NWKGNvbHVtbnMsIGRhdGFUb0V4cG9ydCwgdW5kZWZpbmVkLCB0aGlzLmdldEV4cG9ydEZpbGVOYW1lKCkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBleHBvcnRBbGxSZWNvcmRzKCkge1xuICAgICAgICB0aGlzLnZhbGlkYXRlQ29tcG9uZW50KCk7XG5cbiAgICAgICAgbGV0IHNlcnZlckRhdGEgPSBhd2FpdCB0aGlzLmxvYWRBbGxSZWNvcmRzKCk7XG5cbiAgICAgICAgY29uc3QgY29sdW1ucyA9IHRoaXMuZ2V0Q29sdW1uc1RvRXhwb3J0KCk7XG5cbiAgICAgICAgc2VydmVyRGF0YSA9IHRoaXMubWFwQ3VzdG9tRXhwb3J0KGNvbHVtbnMsIHNlcnZlckRhdGEpO1xuXG4gICAgICAgIHNlcnZlckRhdGEgPSB0aGlzLm1hcE51bWJlckZvcm1hdE9wdGlvbnNFeHBvcnQoY29sdW1ucywgc2VydmVyRGF0YSk7XG5cbiAgICAgICAgY29uc3QgZGF0YVRvRXhwb3J0ID0gdGhpcy5tYXBDb2x1bW5zVHJhbnNsYXRpb25zKGNvbHVtbnMsIHNlcnZlckRhdGEpO1xuXG4gICAgICAgIEV4cG9ydFV0aWxzLmV4cG9ydENTVihjb2x1bW5zLCBkYXRhVG9FeHBvcnQsIHVuZGVmaW5lZCwgdGhpcy5nZXRFeHBvcnRGaWxlTmFtZSgpKTtcbiAgICB9XG59XG4iXX0=
|