@eo-sdk/client 11.0.0-rc.3 → 11.0.0-rc.6
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/app/eo-client/dashboard/dashboard.component.d.ts +2 -23
- package/app/eo-client/dashboard/dashboard.component.d.ts.map +1 -1
- package/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.d.ts +15 -16
- package/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.d.ts.map +1 -1
- package/app/eo-client/dashboard/widgets/picture-widget/picture-widget-setup/picture-widget-setup.component.d.ts +18 -0
- package/app/eo-client/dashboard/widgets/picture-widget/picture-widget-setup/picture-widget-setup.component.d.ts.map +1 -0
- package/app/eo-client/dashboard/widgets/picture-widget/picture-widget.component.d.ts +10 -0
- package/app/eo-client/dashboard/widgets/picture-widget/picture-widget.component.d.ts.map +1 -0
- package/app/eo-client/dashboard/widgets/todowidget/todo-setup/todo-setup.component.d.ts +24 -0
- package/app/eo-client/dashboard/widgets/todowidget/todo-setup/todo-setup.component.d.ts.map +1 -0
- package/app/eo-client/dashboard/widgets/todowidget/todo-widget.component.d.ts +34 -0
- package/app/eo-client/dashboard/widgets/todowidget/todo-widget.component.d.ts.map +1 -0
- package/app/eo-client/eo-client.module.d.ts +29 -24
- package/app/eo-client/eo-client.module.d.ts.map +1 -1
- package/app/eo-client/inbox-state/inbox-state/inbox-state.component.d.ts.map +1 -1
- package/app/eo-framework/actions/actions/signature-action/sequence-list/sequence-list.component.d.ts +5 -1
- package/app/eo-framework/actions/actions/signature-action/sequence-list/sequence-list.component.d.ts.map +1 -1
- package/app/eo-framework/app-shell/app-bar/app-search/app-search.component.d.ts.map +1 -1
- package/app/eo-framework/grid/extensions/custom-sort/custom-sort.component.d.ts.map +1 -1
- package/app/eo-framework/inbox-details/inbox-details.component.d.ts.map +1 -1
- package/app/eo-framework/media/media.component.d.ts +26 -3
- package/app/eo-framework/media/media.component.d.ts.map +1 -1
- package/app/eo-framework/object-details/object-details.component.d.ts.map +1 -1
- package/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.d.ts +2 -0
- package/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.d.ts.map +1 -1
- package/app/eo-framework/object-form/object-form-helper.service.d.ts.map +1 -1
- package/app/eo-framework/result-list/result-list.component.d.ts +3 -2
- package/app/eo-framework/result-list/result-list.component.d.ts.map +1 -1
- package/app/eo-framework-core/api/grid.service.d.ts.map +1 -1
- package/assets/_default/i18n/de.json +12 -4
- package/assets/_default/i18n/en.json +11 -3
- package/assets/_default/svg/ic_noImage.svg +1 -0
- package/assets/_default/svg/ic_photo_library.svg +1 -0
- package/assets/_default/svg/ic_task.svg +1 -0
- package/esm2022/app/eo-client/about-state/about-state.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/dashboard.component.mjs +16 -67
- package/esm2022/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.mjs +6 -6
- package/esm2022/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.mjs +32 -33
- package/esm2022/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-setup/count-objects-setup.component.mjs +4 -4
- package/esm2022/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.mjs +4 -4
- package/esm2022/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-widget.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/picture-widget/picture-widget-setup/picture-widget-setup.component.mjs +54 -0
- package/esm2022/app/eo-client/dashboard/widgets/picture-widget/picture-widget.component.mjs +23 -0
- package/esm2022/app/eo-client/dashboard/widgets/todowidget/todo-setup/todo-setup.component.mjs +74 -0
- package/esm2022/app/eo-client/dashboard/widgets/todowidget/todo-widget.component.mjs +103 -0
- package/esm2022/app/eo-client/eo-client.module.mjs +22 -6
- package/esm2022/app/eo-client/inbox-state/inbox-state/inbox-state.component.mjs +18 -1
- package/esm2022/app/eo-client/prepare-state/prepare-state/prepare-state.component.mjs +2 -2
- package/esm2022/app/eo-framework/actions/actions/signature-action/sequence-list/sequence-list.component.mjs +23 -3
- package/esm2022/app/eo-framework/app-shell/app-bar/app-search/app-search.component.mjs +10 -3
- package/esm2022/app/eo-framework/app-shell/app-bar/context-search/context-search.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/codesystem/codesystem.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.mjs +4 -4
- package/esm2022/app/eo-framework/form-elements/id-reference/id-reference.component.mjs +2 -2
- package/esm2022/app/eo-framework/form-elements/organization/organization.component.mjs +2 -2
- package/esm2022/app/eo-framework/form-elements/reference/reference.component.mjs +2 -2
- package/esm2022/app/eo-framework/form-elements/string/string.component.mjs +2 -2
- package/esm2022/app/eo-framework/grid/extensions/custom-sort/custom-sort.component.mjs +6 -1
- package/esm2022/app/eo-framework/grid/grid.component.mjs +4 -4
- package/esm2022/app/eo-framework/inbox-details/inbox-details.component.mjs +3 -1
- package/esm2022/app/eo-framework/media/media.component.mjs +88 -21
- package/esm2022/app/eo-framework/object-details/object-details.component.mjs +6 -3
- package/esm2022/app/eo-framework/object-form/object-form/form-element/form-element.component.mjs +3 -3
- package/esm2022/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.mjs +18 -27
- package/esm2022/app/eo-framework/object-form/object-form/form-element-table/row-edit/row-edit.component.mjs +2 -2
- package/esm2022/app/eo-framework/object-form/object-form/object-form-script/object-form-scripting-scope.mjs +5 -1
- package/esm2022/app/eo-framework/object-form/object-form-helper.service.mjs +6 -1
- package/esm2022/app/eo-framework/result-list/result-list.component.mjs +17 -3
- package/esm2022/app/eo-framework/ui/indexdata-summary/indexdata-summary-entry/indexdata-summary-entry.component.mjs +2 -2
- package/esm2022/app/eo-framework-core/api/grid.service.mjs +9 -4
- package/esm2022/app/eo-framework-core/error-handler/error-handler.service.mjs +2 -2
- package/fesm2022/eo-sdk-client.mjs +501 -190
- package/fesm2022/eo-sdk-client.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -40,7 +40,7 @@ let HitlistSetupComponent = class HitlistSetupComponent {
|
|
|
40
40
|
sortRevert: [],
|
|
41
41
|
});
|
|
42
42
|
this.storedQueriesPicker = {
|
|
43
|
-
title: this.translate.instant('eo.
|
|
43
|
+
title: this.translate.instant('eo.workspace.widget.label.storedquery'),
|
|
44
44
|
codesystem: null,
|
|
45
45
|
};
|
|
46
46
|
this.propertyPicker = {
|
|
@@ -177,7 +177,7 @@ let HitlistSetupComponent = class HitlistSetupComponent {
|
|
|
177
177
|
}
|
|
178
178
|
}
|
|
179
179
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: HitlistSetupComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.StoredQueriesService }, { token: i2.TranslateService }, { token: i2.UserService }, { token: i2.SystemService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
180
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: HitlistSetupComponent, selector: "eo-hitlist-setup", inputs: { widgetConfig: "widgetConfig" }, outputs: { widgetConfigChange: "widgetConfigChange", widgetConfigStateChange: "widgetConfigStateChange" }, viewQueries: [{ propertyName: "firstLabelPropertyCodesystem", first: true, predicate: ["firstLabelPropertyCodesystem"], descendants: true }, { propertyName: "secondLabelPropertyCodesystem", first: true, predicate: ["secondLabelPropertyCodesystem"], descendants: true }, { propertyName: "thirdLabelPropertyCodesystem", first: true, predicate: ["thirdLabelPropertyCodesystem"], descendants: true }], ngImport: i0, template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n\n @if (storedQueriesPicker?.codesystem?.entries) {\n <eo-form-input [skipToggle]=\"true\"\n [label]=\"'eo.
|
|
180
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: HitlistSetupComponent, selector: "eo-hitlist-setup", inputs: { widgetConfig: "widgetConfig" }, outputs: { widgetConfigChange: "widgetConfigChange", widgetConfigStateChange: "widgetConfigStateChange" }, viewQueries: [{ propertyName: "firstLabelPropertyCodesystem", first: true, predicate: ["firstLabelPropertyCodesystem"], descendants: true }, { propertyName: "secondLabelPropertyCodesystem", first: true, predicate: ["secondLabelPropertyCodesystem"], descendants: true }, { propertyName: "thirdLabelPropertyCodesystem", first: true, predicate: ["thirdLabelPropertyCodesystem"], descendants: true }], ngImport: i0, template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n\n @if (storedQueriesPicker?.codesystem?.entries) {\n <eo-form-input [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.label.storedquery' | translate\" [required]=\"true\"\n [description]=\"'eo.workspace.widget.stored.queries.description'\"\n [invalid]=\"setupForm.dirty && setupForm.get('storedQuery').invalid\">\n <eo-codesystem formControlName=\"storedQuery\" [pickerTitle]=\"storedQueriesPicker.title\"\n [codesystem]=\"storedQueriesPicker.codesystem\"\n [emptyMessage]=\"'eo.workspace.widget.stored.queries.list.notAvailable'\"></eo-codesystem>\n </eo-form-input>\n @if (setupForm.dirty && setupForm.get('storedQuery').hasError('required')) {\n <div class=\"err-msg\" translate>\n eo.form.property.required\n </div>\n }\n }\n\n @if (widgetConfig?.storedQuery) {\n <div class=\"listOptions\">\n <eo-form-input [skipToggle]=\"true\" [required]=\"true\"\n [invalid]=\"setupForm.get('size').invalid\"\n [label]=\"'eo.workspace.widget.form.label.size' | translate\">\n <eo-number [scale]=\"0\" formControlName=\"size\"></eo-number>\n </eo-form-input>\n @if (setupForm.dirty && setupForm.get('size').invalid) {\n <div class=\"err-msg\" translate>\n @if (setupForm.get('size').hasError('required')) {\n eo.form.property.required\n } @else if (setupForm.get('size').hasError('max') || setupForm.get('size').hasError('min')) {\n eo.form.property.string.error.classification.partialValue\n }\n </div>\n }\n\n @if (propertyPicker?.codesystem?.entries) {\n <div class=\"propertyPicker\">\n <eo-form-input [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.form.label.firstLabel'|translate\">\n <eo-codesystem #firstLabelPropertyCodesystem formControlName=\"firstLabel\"\n [pickerTitle]=\"propertyPicker.title\"\n [codesystem]=\"propertyPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [required]=\"true\"\n [label]=\"'eo.workspace.widget.form.label.secondLabel'|translate\"\n [invalid]=\"setupForm.get('secondLabel').invalid\">\n <eo-codesystem #secondLabelPropertyCodesystem formControlName=\"secondLabel\"\n [pickerTitle]=\"propertyPicker.title\"\n [codesystem]=\"propertyPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n @if (setupForm.dirty && setupForm.get('secondLabel').hasError('required')) {\n <div class=\"err-msg\" translate>\n eo.form.property.required\n </div>\n }\n\n <eo-form-input [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.form.label.thirdLabel'|translate\">\n <eo-codesystem #thirdLabelPropertyCodesystem formControlName=\"thirdLabel\"\n [pickerTitle]=\"propertyPicker.title\"\n [codesystem]=\"propertyPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n </div>\n <eo-form-input [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.form.label.sortField'|translate\">\n <eo-codesystem formControlName=\"sortField\" [pickerTitle]=\"propertyPicker.title\"\n [codesystem]=\"propertyPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n }\n\n <eo-form-input class=\"label checkbox\" [label]=\"'eo.workspace.widget.form.label.sortRevert'|translate\"\n [skipToggle]=\"true\">\n <eo-checkbox formControlName=\"sortRevert\" [tristate]=\"false\"></eo-checkbox>\n </eo-form-input>\n </div>\n }\n </form>\n</div>\n\n@if (setupForm.valid) {\n <div class=\"preview\">\n <eo-hitlist-widget [widgetConfig]=\"widgetConfig\" [editMode]=\"true\"></eo-hitlist-widget>\n </div>\n} @else {\n <div class=\"empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_saved_search.svg', text: 'eo.workspace.widget.stored.queries.list.empty'}\"></eo-error-message>\n </div>\n}\n", styles: [":host{display:grid;grid-template-rows:1fr;grid-template-columns:minmax(200px,400px) 1fr;grid-template-areas:\"setup preview\";height:100%}:host .setup{grid-area:setup;padding:var(--app-pane-padding);border-right:1px solid var(--panel-divider-color)}:host .setup eo-form-input{display:block;margin-bottom:var(--app-pane-padding)}:host .setup .propertyPicker{padding-bottom:30px;padding-top:30px}:host .setup .err-msg{background-color:var(--color-error);color:var(--color-white);margin:calc(var(--app-pane-padding) / 4) 0;padding:calc(var(--app-pane-padding) / 4);border:0;border-radius:2px}:host .preview{grid-area:preview;overflow-y:auto;background-color:var(--main-background);padding:var(--app-pane-padding)}:host .preview eo-hitlist-widget{border:1px solid var(--panel-divider-color)}\n"], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i4.ErrorMessageComponent, selector: "eo-error-message", inputs: ["emptyState"] }, { kind: "component", type: i5.FormInputComponent, selector: "eo-form-input", inputs: ["label", "tag", "description", "skipToggle", "isNull", "invalid", "disabled", "required"], outputs: ["onToggleLabel"] }, { kind: "component", type: i6.CodesystemComponent, selector: "eo-codesystem", inputs: ["situation", "pickerTitle", "placeholder", "codesystem", "multiselect", "readonly", "inputStyleClass", "emptyMessage", "filterFunction", "disablingFilterFunction"] }, { kind: "component", type: i7.NumberComponent, selector: "eo-number", inputs: ["scale", "precision", "grouping", "pattern", "readonly"] }, { kind: "component", type: i8.CheckboxComponent, selector: "eo-checkbox", inputs: ["required", "tristate", "readonly"] }, { kind: "component", type: i9.HitlistWidgetComponent, selector: "eo-hitlist-widget", inputs: ["editMode", "widgetConfig"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
181
181
|
};
|
|
182
182
|
HitlistSetupComponent = __decorate([
|
|
183
183
|
UntilDestroy()
|
|
@@ -185,7 +185,7 @@ HitlistSetupComponent = __decorate([
|
|
|
185
185
|
export { HitlistSetupComponent };
|
|
186
186
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: HitlistSetupComponent, decorators: [{
|
|
187
187
|
type: Component,
|
|
188
|
-
args: [{ selector: 'eo-hitlist-setup', template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n\n @if (storedQueriesPicker?.codesystem?.entries) {\n <eo-form-input [skipToggle]=\"true\"\n [label]=\"'eo.
|
|
188
|
+
args: [{ selector: 'eo-hitlist-setup', template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n\n @if (storedQueriesPicker?.codesystem?.entries) {\n <eo-form-input [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.label.storedquery' | translate\" [required]=\"true\"\n [description]=\"'eo.workspace.widget.stored.queries.description'\"\n [invalid]=\"setupForm.dirty && setupForm.get('storedQuery').invalid\">\n <eo-codesystem formControlName=\"storedQuery\" [pickerTitle]=\"storedQueriesPicker.title\"\n [codesystem]=\"storedQueriesPicker.codesystem\"\n [emptyMessage]=\"'eo.workspace.widget.stored.queries.list.notAvailable'\"></eo-codesystem>\n </eo-form-input>\n @if (setupForm.dirty && setupForm.get('storedQuery').hasError('required')) {\n <div class=\"err-msg\" translate>\n eo.form.property.required\n </div>\n }\n }\n\n @if (widgetConfig?.storedQuery) {\n <div class=\"listOptions\">\n <eo-form-input [skipToggle]=\"true\" [required]=\"true\"\n [invalid]=\"setupForm.get('size').invalid\"\n [label]=\"'eo.workspace.widget.form.label.size' | translate\">\n <eo-number [scale]=\"0\" formControlName=\"size\"></eo-number>\n </eo-form-input>\n @if (setupForm.dirty && setupForm.get('size').invalid) {\n <div class=\"err-msg\" translate>\n @if (setupForm.get('size').hasError('required')) {\n eo.form.property.required\n } @else if (setupForm.get('size').hasError('max') || setupForm.get('size').hasError('min')) {\n eo.form.property.string.error.classification.partialValue\n }\n </div>\n }\n\n @if (propertyPicker?.codesystem?.entries) {\n <div class=\"propertyPicker\">\n <eo-form-input [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.form.label.firstLabel'|translate\">\n <eo-codesystem #firstLabelPropertyCodesystem formControlName=\"firstLabel\"\n [pickerTitle]=\"propertyPicker.title\"\n [codesystem]=\"propertyPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [required]=\"true\"\n [label]=\"'eo.workspace.widget.form.label.secondLabel'|translate\"\n [invalid]=\"setupForm.get('secondLabel').invalid\">\n <eo-codesystem #secondLabelPropertyCodesystem formControlName=\"secondLabel\"\n [pickerTitle]=\"propertyPicker.title\"\n [codesystem]=\"propertyPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n @if (setupForm.dirty && setupForm.get('secondLabel').hasError('required')) {\n <div class=\"err-msg\" translate>\n eo.form.property.required\n </div>\n }\n\n <eo-form-input [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.form.label.thirdLabel'|translate\">\n <eo-codesystem #thirdLabelPropertyCodesystem formControlName=\"thirdLabel\"\n [pickerTitle]=\"propertyPicker.title\"\n [codesystem]=\"propertyPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n </div>\n <eo-form-input [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.form.label.sortField'|translate\">\n <eo-codesystem formControlName=\"sortField\" [pickerTitle]=\"propertyPicker.title\"\n [codesystem]=\"propertyPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n }\n\n <eo-form-input class=\"label checkbox\" [label]=\"'eo.workspace.widget.form.label.sortRevert'|translate\"\n [skipToggle]=\"true\">\n <eo-checkbox formControlName=\"sortRevert\" [tristate]=\"false\"></eo-checkbox>\n </eo-form-input>\n </div>\n }\n </form>\n</div>\n\n@if (setupForm.valid) {\n <div class=\"preview\">\n <eo-hitlist-widget [widgetConfig]=\"widgetConfig\" [editMode]=\"true\"></eo-hitlist-widget>\n </div>\n} @else {\n <div class=\"empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_saved_search.svg', text: 'eo.workspace.widget.stored.queries.list.empty'}\"></eo-error-message>\n </div>\n}\n", styles: [":host{display:grid;grid-template-rows:1fr;grid-template-columns:minmax(200px,400px) 1fr;grid-template-areas:\"setup preview\";height:100%}:host .setup{grid-area:setup;padding:var(--app-pane-padding);border-right:1px solid var(--panel-divider-color)}:host .setup eo-form-input{display:block;margin-bottom:var(--app-pane-padding)}:host .setup .propertyPicker{padding-bottom:30px;padding-top:30px}:host .setup .err-msg{background-color:var(--color-error);color:var(--color-white);margin:calc(var(--app-pane-padding) / 4) 0;padding:calc(var(--app-pane-padding) / 4);border:0;border-radius:2px}:host .preview{grid-area:preview;overflow-y:auto;background-color:var(--main-background);padding:var(--app-pane-padding)}:host .preview eo-hitlist-widget{border:1px solid var(--panel-divider-color)}\n"] }]
|
|
189
189
|
}], ctorParameters: () => [{ type: i1.UntypedFormBuilder }, { type: i2.StoredQueriesService }, { type: i2.TranslateService }, { type: i2.UserService }, { type: i2.SystemService }], propDecorators: { widgetConfigChange: [{
|
|
190
190
|
type: Output
|
|
191
191
|
}], widgetConfigStateChange: [{
|
|
@@ -202,4 +202,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
202
202
|
}], widgetConfig: [{
|
|
203
203
|
type: Input
|
|
204
204
|
}] } });
|
|
205
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0bGlzdC1zZXR1cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWNsaWVudC9kYXNoYm9hcmQvd2lkZ2V0cy9oaXRsaXN0LXdpZGdldC9oaXRsaXN0LXNldHVwL2hpdGxpc3Qtc2V0dXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvaGl0bGlzdC13aWRnZXQvaGl0bGlzdC1zZXR1cC9oaXRsaXN0LXNldHVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV4RixPQUFPLEVBQXVDLFVBQVUsRUFBb0IsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRyxPQUFPLEVBQUMsWUFBWSxFQUFFLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRW5FLE9BQU8sRUFBa0YsS0FBSyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3BILE9BQU8sRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBQyxVQUFVLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7O0FBU3hDLElBQU0scUJBQXFCLEdBQTNCLE1BQU0scUJBQXFCO0lBZ0NoQyxJQUFhLFlBQVksQ0FBQyxFQUFZO1FBQ3BDLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUVELFlBQ1UsRUFBc0IsRUFDdEIsb0JBQTBDLEVBQzFDLFNBQTJCLEVBQzNCLFdB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QUFDO29CQUNOLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDM0QsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQztnQkFDeEIsV0FBVyxFQUFFLEVBQUU7Z0JBQ2YsSUFBSSxFQUFFLEdBQUc7Z0JBQ1QsVUFBVSxFQUFFLFNBQVM7Z0JBQ3JCLFdBQVcsRUFBRSxPQUFPO2dCQUNwQixVQUFVLEVBQUUsYUFBYTtnQkFDekIsU0FBUyxFQUFFLFVBQVU7YUFDdEIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7OEdBdExVLHFCQUFxQjtrR0FBckIscUJBQXFCLDJsQkNoQmxDLGk4SUEwRkE7O0FEMUVhLHFCQUFxQjtJQU5qQyxZQUFZLEVBQUU7R0FNRixxQkFBcUIsQ0F1TGpDOzsyRkF2TFkscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGtCQUFrQjsrTUFNbEIsa0JBQWtCO3NCQUEzQixNQUFNO2dCQUNHLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkF5Qm9DLDRCQUE0QjtzQkFBdEUsU0FBUzt1QkFBQyw4QkFBOEI7Z0JBQ0csNkJBQTZCO3NCQUF4RSxTQUFTO3VCQUFDLCtCQUErQjtnQkFDQyw0QkFBNEI7c0JBQXRFLFNBQVM7dUJBQUMsOEJBQThCO2dCQUU1QixZQUFZO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtJV2lkZ2V0Q29tcG9uZW50fSBmcm9tICdAeXV1dmlzL3dpZGdldC1ncmlkJztcbmltcG9ydCB7VW50eXBlZEZvcm1Hcm91cCwgVW50eXBlZEZvcm1CdWlsZGVyLCBWYWxpZGF0b3JzLCBGb3JtQ29udHJvbFN0YXR1c30gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHtJSGl0bGlzdH0gZnJvbSAnLi4vSUhpdGxpc3QnO1xuaW1wb3J0IHtTdG9yZWRRdWVyaWVzU2VydmljZSwgU3RvcmVkUXVlcnksIFN5c3RlbVNlcnZpY2UsIFRyYW5zbGF0ZVNlcnZpY2UsIFVzZXJTZXJ2aWNlLCBVdGlsc30gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7RU1QVFksIHNraXB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtjYXRjaEVycm9yLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7Q29kZXN5c3RlbUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZW8tZnJhbWV3b3JrJztcblxuQFVudGlsRGVzdHJveSgpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlby1oaXRsaXN0LXNldHVwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hpdGxpc3Qtc2V0dXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oaXRsaXN0LXNldHVwLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSGl0bGlzdFNldHVwQ29tcG9uZW50IGltcGxlbWVudHMgSVdpZGdldENvbXBvbmVudCwgT25Jbml0IHtcbiAgcHJpdmF0ZSBfd2lkZ2V0Q29uZmlnOiBJSGl0bGlzdDtcbiAgQE91dHB1dCgpIHdpZGdldENvbmZpZ0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SUhpdGxpc3Q+KCk7XG4gIEBPdXRwdXQoKSB3aWRnZXRDb25maWdTdGF0ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybUNvbnRyb2xTdGF0dXM+KCk7XG4gIHN0b3JlZFF1ZXJpZXM6IFN0b3JlZFF1ZXJ5W107XG5cbiAgc2V0dXBGb3JtOiBVbnR5cGVkRm9ybUdyb3VwID0gdGhpcy5mYi5ncm91cCh7XG4gICAgc3RvcmVkUXVlcnk6IFtudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICBzaXplOiBbNSwgW1ZhbGlkYXRvcnMubWF4KDEwMCksIFZhbGlkYXRvcnMubWluKDMpLCBWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgc29ydEZpZWxkOiBbXSxcbiAgICBmaXJzdExhYmVsOiBbXSxcbiAgICBzZWNvbmRMYWJlbDogW251bGwsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgIHRoaXJkTGFiZWw6IFtdLFxuICAgIHNvcnRSZXZlcnQ6IFtdLFxuICB9KTtcblxuICBzdG9yZWRRdWVyaWVzUGlja2VyID0ge1xuICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5zZWFyY2gudGl0bGUuc3RvcmVkcXVlcmllcycpLFxuICAgIGNvZGVzeXN0ZW06IG51bGwsXG4gIH07XG5cbiAgcHJvcGVydHlQaWNrZXIgPSB7XG4gICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5zb3J0RmllbGQnKSxcbiAgICBjb2Rlc3lzdGVtOiBudWxsLFxuICB9O1xuICBzZWxlY3RlZFNhdmVkU2VhcmNoTmFtZSA9ICcnO1xuICBzdG9yZWRRdWVyeTogU3RvcmVkUXVlcnk7XG5cbiAgQFZpZXdDaGlsZCgnZmlyc3RMYWJlbFByb3BlcnR5Q29kZXN5c3RlbScpIGZpcnN0TGFiZWxQcm9wZXJ0eUNvZGVzeXN0ZW06IENvZGVzeXN0ZW1Db21wb25lbnQ7XG4gIEBWaWV3Q2hpbGQoJ3NlY29uZExhYmVsUHJvcGVydHlDb2Rlc3lzdGVtJykgc2Vjb25kTGFiZWxQcm9wZXJ0eUNvZGVzeXN0ZW06IENvZGVzeXN0ZW1Db21wb25lbnQ7XG4gIEBWaWV3Q2hpbGQoJ3RoaXJkTGFiZWxQcm9wZXJ0eUNvZGVzeXN0ZW0nKSB0aGlyZExhYmVsUHJvcGVydHlDb2Rlc3lzdGVtOiBDb2Rlc3lzdGVtQ29tcG9uZW50O1xuXG4gIEBJbnB1dCgpIHNldCB3aWRnZXRDb25maWcod2M6IElIaXRsaXN0KSB7XG4gICAgdGhpcy5fd2lkZ2V0Q29uZmlnID0gd2M7XG4gIH1cblxuICBnZXQgd2lkZ2V0Q29uZmlnKCkge1xuICAgIHJldHVybiB0aGlzLl93aWRnZXRDb25maWc7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZiOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSBzdG9yZWRRdWVyaWVzU2VydmljZTogU3RvcmVkUXVlcmllc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzeXN0ZW06IFN5c3RlbVNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5zZXR1cEZvcm0udmFsdWVDaGFuZ2VzLnBpcGUoc2tpcCgxKSwgdW50aWxEZXN0cm95ZWQodGhpcykpLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgdGhpcy5zZXRXaWRnZXRDb25maWcoKTtcbiAgICB9KTtcbiAgICB0aGlzLnNldHVwRm9ybS5zdGF0dXNDaGFuZ2VzLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpLnN1YnNjcmliZSgodikgPT4ge1xuICAgICAgdGhpcy53aWRnZXRDb25maWdTdGF0ZUNoYW5nZS5lbWl0KHYpO1xuICAgIH0pO1xuICAgIHRoaXMuZ2V0U3RvcmVkUXVlcnlzKCk7XG4gIH1cblxuICBwcml2YXRlIHNldFdpZGdldENvbmZpZygpIHtcbiAgICBpZiAodGhpcy5zZXR1cEZvcm0udmFsaWQgJiYgdGhpcy5zdG9yZWRRdWVyaWVzKSB7XG4gICAgICB0aGlzLnN0b3JlZFF1ZXJ5ID0gdGhpcy5zdG9yZWRRdWVyaWVzLmZpbmQoKHNxKSA9PiBzcS5uYW1lID09PSB0aGlzLnNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWUpO1xuICAgICAgdGhpcy53aWRnZXRDb25maWcgPSB7XG4gICAgICAgIHN0b3JlZFF1ZXJ5OiB0aGlzLnN0b3JlZFF1ZXJ5Py5pZCxcbiAgICAgICAgZm9ybVZhbHVlOiB0aGlzLnNldHVwRm9ybS52YWx1ZSxcbiAgICAgICAgZmlyc3RMYWJlbHByb3BlcnR5VHlwZTogdGhpcy5fd2lkZ2V0Q29uZmlnPy5maXJzdExhYmVscHJvcGVydHlUeXBlID8gdGhpcy5fd2lkZ2V0Q29uZmlnLmZpcnN0TGFiZWxwcm9wZXJ0eVR5cGUgOiAnREFURVRJTUUnLFxuICAgICAgICBzZWNvbmRMYWJlbHByb3BlcnR5VHlwZTogdGhpcy5fd2lkZ2V0Q29uZmlnPy5zZWNvbmRMYWJlbHByb3BlcnR5VHlwZSA/IHRoaXMuX3dpZGdldENvbmZpZy5zZWNvbmRMYWJlbHByb3BlcnR5VHlwZSA6ICdTVFJJTkcnLFxuICAgICAgICB0aGlyZExhYmVscHJvcGVydHlUeXBlOiB0aGlzLl93aWRnZXRDb25maWc/LnRoaXJkTGFiZWxwcm9wZXJ0eVR5cGUgPyB0aGlzLl93aWRnZXRDb25maWcudGhpcmRMYWJlbHByb3BlcnR5VHlwZSA6ICdTVFJJTkcnXG4gICAgICB9O1xuICAgICAgaWYgKHRoaXMuc2V0dXBGb3JtLmdldCgnc3RvcmVkUXVlcnknKS52YWx1ZSAhPT0gdGhpcy5zZWxlY3RlZFNhdmVkU2VhcmNoTmFtZSkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkU2F2ZWRTZWFyY2hOYW1lID0gdGhpcy5zZXR1cEZvcm0uZ2V0KCdzdG9yZWRRdWVyeScpLnZhbHVlO1xuICAgICAgICBpZiAodGhpcy53aWRnZXRDb25maWc/LnN0b3JlZFF1ZXJ5KSB7XG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnByb3BlcnR5UGlja2VyLmNvZGVzeXN0ZW0gPSBudWxsO1xuICAgICAgICAgICAgaWYgKHRoaXMuc3RvcmVkUXVlcnkudHlwZXMubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgICAgIHRoaXMuZ2V0RmllbGREZWZpbml0aW9uKCdzeXNkb2N1bWVudCcpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgdGhpcy5nZXRGaWVsZERlZmluaXRpb24odGhpcy5zdG9yZWRRdWVyeS50eXBlc1swXS5xbmFtZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5maXJzdExhYmVsUHJvcGVydHlDb2Rlc3lzdGVtKSB7XG4gICAgICAgICAgICAgIHRoaXMud2lkZ2V0Q29uZmlnLmZpcnN0TGFiZWxwcm9wZXJ0eVR5cGUgPSB0aGlzLmZpcnN0TGFiZWxQcm9wZXJ0eUNvZGVzeXN0ZW0/LnNlbGVjdGVkTm9kZXM/LmRhdGE/LnR5cGU7XG4gICAgICAgICAgICAgIHRoaXMud2lkZ2V0Q29uZmlnLnNlY29uZExhYmVscHJvcGVydHlUeXBlID0gdGhpcy5zZWNvbmRMYWJlbFByb3BlcnR5Q29kZXN5c3RlbT8uc2VsZWN0ZWROb2Rlcz8uZGF0YT8udHlwZTtcbiAgICAgICAgICAgICAgdGhpcy53aWRnZXRDb25maWcudGhpcmRMYWJlbHByb3BlcnR5VHlwZSA9IHRoaXMudGhpcmRMYWJlbFByb3BlcnR5Q29kZXN5c3RlbT8uc2VsZWN0ZWROb2Rlcz8uZGF0YT8udHlwZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LCAxMDApO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAodGhpcy5maXJzdExhYmVsUHJvcGVydHlDb2Rlc3lzdGVtKSB7XG4gICAgICAgICAgdGhpcy53aWRnZXRDb25maWcuZmlyc3RMYWJlbHByb3BlcnR5VHlwZSA9IHRoaXMuZmlyc3RMYWJlbFByb3BlcnR5Q29kZXN5c3RlbT8uc2VsZWN0ZWROb2Rlcz8uZGF0YT8udHlwZTtcbiAgICAgICAgICB0aGlzLndpZGdldENvbmZpZy5zZWNvbmRMYWJlbHByb3BlcnR5VHlwZSA9IHRoaXMuc2Vjb25kTGFiZWxQcm9wZXJ0eUNvZGVzeXN0ZW0/LnNlbGVjdGVkTm9kZXM/LmRhdGE/LnR5cGU7XG4gICAgICAgICAgdGhpcy53aWRnZXRDb25maWcudGhpcmRMYWJlbHByb3BlcnR5VHlwZSA9IHRoaXMudGhpcmRMYWJlbFByb3BlcnR5Q29kZXN5c3RlbT8uc2VsZWN0ZWROb2Rlcz8uZGF0YT8udHlwZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy53aWRnZXRDb25maWdDaGFuZ2UuZW1pdCh0aGlzLl93aWRnZXRDb25maWcpO1xuICAgIH1cbiAgfVxuXG4gIGdldFN0b3JlZFF1ZXJ5cygpIHtcbiAgICB0aGlzLnN0b3JlZFF1ZXJpZXNTZXJ2aWNlXG4gICAgICAuZmV0Y2hTdG9yZWRRdWVyaWVzKCkucGlwZShcbiAgICAgICAgdW50aWxEZXN0cm95ZWQodGhpcyksXG4gICAgICApLnN1YnNjcmliZShzdG9yZWRRdWVyaWVzID0+IHtcbiAgICAgICAgdGhpcy5zdG9yZWRRdWVyaWVzID0gc3RvcmVkUXVlcmllcztcbiAgICAgICAgdGhpcy5zdG9yZWRRdWVyaWVzUGlja2VyLmNvZGVzeXN0ZW0gPSB7XG4gICAgICAgICAgZW50cmllczogdGhpcy5zdG9yZWRRdWVyaWVzLm1hcChzdG9yZWRRdWVyeSA9PiAoe1xuICAgICAgICAgICAgaWQ6IHN0b3JlZFF1ZXJ5LmlkLFxuICAgICAgICAgICAgbGFiZWw6IHN0b3JlZFF1ZXJ5Lm5hbWUsXG4gICAgICAgICAgICBkZWZhdWx0cmVwcmVzZW50YXRpb246IHN0b3JlZFF1ZXJ5Lm5hbWUsXG4gICAgICAgICAgICBkYXRhOiBzdG9yZWRRdWVyeS5uYW1lXG4gICAgICAgICAgfSkpLnNvcnQoVXRpbHMuc29ydFZhbHVlcygnbGFiZWwnKSksXG4gICAgICAgIH07XG4gICAgICB9KTtcbiAgfVxuXG4gIGdldFN0b3JlZFF1ZXJ5KGlkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZWRRdWVyaWVzU2VydmljZS5nZXRTdG9yZWRRdWVyeShpZCkucGlwZShcbiAgICAgIHVudGlsRGVzdHJveWVkKHRoaXMpLFxuICAgICAgdGFwKHN0b3JlZFF1ZXJ5ID0+IHtcbiAgICAgICAgdGhpcy5zdG9yZWRRdWVyeSA9IHN0b3JlZFF1ZXJ5O1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0RmllbGREZWZpbml0aW9uKHR5cGUpIHtcbiAgICByZXR1cm4gdGhpcy51c2VyU2VydmljZS5nZXRGaWVsZERlZmluaXRpb24odHlwZSkucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSkuc3Vic2NyaWJlKGRlZmluaXRpb24gPT4ge1xuICAgICAgdGhpcy5wcm9wZXJ0eVBpY2tlci5jb2Rlc3lzdGVtID0ge1xuICAgICAgICBlbnRyaWVzOiBkZWZpbml0aW9uLmVsZW1lbnRzLm1hcChmaWVsZCA9PiB7XG4gICAgICAgICAgbGV0IGZpZWxkTGFiZWwgPSBmaWVsZC5iYXNlcGFyYW0gPyB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5nbG9iYWwuYmFzZXBhcmFtLicgKyBmaWVsZC5uYW1lKSA6IGZpZWxkLmxhYmVsO1xuICAgICAgICAgIGxldCBsYWJlbCA9IGRlZmluaXRpb24uZWxlbWVudHMuZmlsdGVyKGl0ZW0gPT4gaXRlbS5sYWJlbCA9PT0gZmllbGQubGFiZWwpLmxlbmd0aCA+IDFcbiAgICAgICAgICAgID8gZmllbGRMYWJlbCArICcgKCcgKyB0aGlzLnN5c3RlbS5nZXRPYmplY3RUeXBlKGZpZWxkLnFuYW1lLnNwbGl0KCcuJylbMF0pLmxhYmVsICsgJyknXG4gICAgICAgICAgICA6IGZpZWxkTGFiZWw7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkOiBmaWVsZC5xbmFtZSxcbiAgICAgICAgICAgIGRlZmF1bHRyZXByZXNlbnRhdGlvbjogbGFiZWwsXG4gICAgICAgICAgICBkYXRhOiBmaWVsZC5oaXRuYW1lLFxuICAgICAgICAgICAgdHlwZTogZmllbGQudHlwZVxuICAgICAgICAgIH07XG4gICAgICAgIH0pLnNvcnQoVXRpbHMuc29ydFZhbHVlcygnZGVmYXVsdHJlcHJlc2VudGF0aW9uJykpLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0aGlzLl93aWRnZXRDb25maWc/LnN0b3JlZFF1ZXJ5KSB7XG4gICAgICB0aGlzLmdldFN0b3JlZFF1ZXJ5KHRoaXMuX3dpZGdldENvbmZpZz8uc3RvcmVkUXVlcnkpLnBpcGUoXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgIGlmIChlcnJvci5zdGF0dXMgPT09IDQwNCkge1xuICAgICAgICAgICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICAgIHN0b3JlZFF1ZXJ5OiAnJyxcbiAgICAgICAgICAgICAgc2l6ZTogJzUnLFxuICAgICAgICAgICAgICBmaXJzdExhYmVsOiAnY3JlYXRlZCcsXG4gICAgICAgICAgICAgIHNlY29uZExhYmVsOiAndGl0bGUnLFxuICAgICAgICAgICAgICB0aGlyZExhYmVsOiAnZGVzY3JpcHRpb24nLFxuICAgICAgICAgICAgICBzb3J0RmllbGQ6ICdtb2RpZmllZCdcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgfVxuICAgICAgICApKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuc2V0dXBGb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICAgICAgc3RvcmVkUXVlcnk6IHRoaXMuc3RvcmVkUXVlcnkgPyB0aGlzLnN0b3JlZFF1ZXJ5Lm5hbWUgOiAnJyxcbiAgICAgICAgICAgIHNpemU6IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZy5mb3JtVmFsdWUuc2l6ZSA6ICc1JyxcbiAgICAgICAgICAgIGZpcnN0TGFiZWw6IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZy5mb3JtVmFsdWUuZmlyc3RMYWJlbCA6ICdjcmVhdGVkJyxcbiAgICAgICAgICAgIHNlY29uZExhYmVsOiB0aGlzLl93aWRnZXRDb25maWcgPyB0aGlzLl93aWRnZXRDb25maWcuZm9ybVZhbHVlLnNlY29uZExhYmVsIDogJ3RpdGxlJyxcbiAgICAgICAgICAgIHRoaXJkTGFiZWw6IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZy5mb3JtVmFsdWUudGhpcmRMYWJlbCA6ICdkZXNjcmlwdGlvbicsXG4gICAgICAgICAgICBzb3J0RmllbGQ6IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZy5mb3JtVmFsdWUuc29ydEZpZWxkIDogJ21vZGlmaWVkJyxcbiAgICAgICAgICAgIHNvcnRSZXZlcnQ6IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZy5mb3JtVmFsdWUuc29ydFJldmVydCA6ICcnLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGlmICh0aGlzLnN0b3JlZFF1ZXJ5LnR5cGVzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgICAgICAgdGhpcy5nZXRGaWVsZERlZmluaXRpb24oJ3N5c2RvY3VtZW50Jyk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0RmllbGREZWZpbml0aW9uKHRoaXMuc3RvcmVkUXVlcnkudHlwZXNbMF0ucW5hbWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2V0dXBGb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICBzdG9yZWRRdWVyeTogJycsXG4gICAgICAgIHNpemU6ICc1JyxcbiAgICAgICAgZmlyc3RMYWJlbDogJ2NyZWF0ZWQnLFxuICAgICAgICBzZWNvbmRMYWJlbDogJ3RpdGxlJyxcbiAgICAgICAgdGhpcmRMYWJlbDogJ2Rlc2NyaXB0aW9uJyxcbiAgICAgICAgc29ydEZpZWxkOiAnbW9kaWZpZWQnXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJzZXR1cFwiPlxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cInNldHVwRm9ybVwiPlxuXG4gICAgQGlmIChzdG9yZWRRdWVyaWVzUGlja2VyPy5jb2Rlc3lzdGVtPy5lbnRyaWVzKSB7XG4gICAgICA8ZW8tZm9ybS1pbnB1dCBbc2tpcFRvZ2dsZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInZW8uc2VhcmNoLnRpdGxlLnN0b3JlZHF1ZXJpZXMnIHwgdHJhbnNsYXRlXCIgW3JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgW2Rlc2NyaXB0aW9uXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LnN0b3JlZC5xdWVyaWVzLmRlc2NyaXB0aW9uJ1wiXG4gICAgICAgICAgICAgICAgICAgICBbaW52YWxpZF09XCJzZXR1cEZvcm0uZGlydHkgJiYgc2V0dXBGb3JtLmdldCgnc3RvcmVkUXVlcnknKS5pbnZhbGlkXCI+XG4gICAgICAgIDxlby1jb2Rlc3lzdGVtIGZvcm1Db250cm9sTmFtZT1cInN0b3JlZFF1ZXJ5XCIgW3BpY2tlclRpdGxlXT1cInN0b3JlZFF1ZXJpZXNQaWNrZXIudGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICBbY29kZXN5c3RlbV09XCJzdG9yZWRRdWVyaWVzUGlja2VyLmNvZGVzeXN0ZW1cIlxuICAgICAgICAgICAgICAgICAgICAgICBbZW1wdHlNZXNzYWdlXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LnN0b3JlZC5xdWVyaWVzLmxpc3Qubm90QXZhaWxhYmxlJ1wiPjwvZW8tY29kZXN5c3RlbT5cbiAgICAgIDwvZW8tZm9ybS1pbnB1dD5cbiAgICAgIEBpZiAoc2V0dXBGb3JtLmRpcnR5ICYmIHNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykuaGFzRXJyb3IoJ3JlcXVpcmVkJykpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImVyci1tc2dcIiB0cmFuc2xhdGU+XG4gICAgICAgICAgZW8uZm9ybS5wcm9wZXJ0eS5yZXF1aXJlZFxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKHdpZGdldENvbmZpZz8uc3RvcmVkUXVlcnkpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJsaXN0T3B0aW9uc1wiPlxuICAgICAgICA8ZW8tZm9ybS1pbnB1dCBbc2tpcFRvZ2dsZV09XCJ0cnVlXCIgW3JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICBbaW52YWxpZF09XCJzZXR1cEZvcm0uZ2V0KCdzaXplJykuaW52YWxpZFwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInZW8ud29ya3NwYWNlLndpZGdldC5mb3JtLmxhYmVsLnNpemUnIHwgdHJhbnNsYXRlXCI+XG4gICAgICAgICAgPGVvLW51bWJlciBbc2NhbGVdPVwiMFwiIGZvcm1Db250cm9sTmFtZT1cInNpemVcIj48L2VvLW51bWJlcj5cbiAgICAgICAgPC9lby1mb3JtLWlucHV0PlxuICAgICAgICBAaWYgKHNldHVwRm9ybS5kaXJ0eSAmJiBzZXR1cEZvcm0uZ2V0KCdzaXplJykuaW52YWxpZCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJlcnItbXNnXCIgdHJhbnNsYXRlPlxuICAgICAgICAgICAgQGlmIChzZXR1cEZvcm0uZ2V0KCdzaXplJykuaGFzRXJyb3IoJ3JlcXVpcmVkJykpIHtcbiAgICAgICAgICAgICAgZW8uZm9ybS5wcm9wZXJ0eS5yZXF1aXJlZFxuICAgICAgICAgICAgfSBAZWxzZSBpZiAoc2V0dXBGb3JtLmdldCgnc2l6ZScpLmhhc0Vycm9yKCdtYXgnKSB8fCBzZXR1cEZvcm0uZ2V0KCdzaXplJykuaGFzRXJyb3IoJ21pbicpKSB7XG4gICAgICAgICAgICAgIGVvLmZvcm0ucHJvcGVydHkuc3RyaW5nLmVycm9yLmNsYXNzaWZpY2F0aW9uLnBhcnRpYWxWYWx1ZVxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChwcm9wZXJ0eVBpY2tlcj8uY29kZXN5c3RlbT8uZW50cmllcykge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJwcm9wZXJ0eVBpY2tlclwiPlxuICAgICAgICAgICAgPGVvLWZvcm0taW5wdXQgW3NraXBUb2dnbGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5sYWJlbC5maXJzdExhYmVsJ3x0cmFuc2xhdGVcIj5cbiAgICAgICAgICAgICAgPGVvLWNvZGVzeXN0ZW0gI2ZpcnN0TGFiZWxQcm9wZXJ0eUNvZGVzeXN0ZW0gZm9ybUNvbnRyb2xOYW1lPVwiZmlyc3RMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwaWNrZXJUaXRsZV09XCJwcm9wZXJ0eVBpY2tlci50aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2Rlc3lzdGVtXT1cInByb3BlcnR5UGlja2VyLmNvZGVzeXN0ZW1cIj48L2VvLWNvZGVzeXN0ZW0+XG4gICAgICAgICAgICA8L2VvLWZvcm0taW5wdXQ+XG4gICAgICAgICAgICA8ZW8tZm9ybS1pbnB1dCBbc2tpcFRvZ2dsZV09XCJ0cnVlXCIgW3JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0ubGFiZWwuc2Vjb25kTGFiZWwnfHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbaW52YWxpZF09XCJzZXR1cEZvcm0uZ2V0KCdzZWNvbmRMYWJlbCcpLmludmFsaWRcIj5cbiAgICAgICAgICAgICAgPGVvLWNvZGVzeXN0ZW0gI3NlY29uZExhYmVsUHJvcGVydHlDb2Rlc3lzdGVtIGZvcm1Db250cm9sTmFtZT1cInNlY29uZExhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BpY2tlclRpdGxlXT1cInByb3BlcnR5UGlja2VyLnRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvZGVzeXN0ZW1dPVwicHJvcGVydHlQaWNrZXIuY29kZXN5c3RlbVwiPjwvZW8tY29kZXN5c3RlbT5cbiAgICAgICAgICAgIDwvZW8tZm9ybS1pbnB1dD5cbiAgICAgICAgICAgIEBpZiAoc2V0dXBGb3JtLmRpcnR5ICYmIHNldHVwRm9ybS5nZXQoJ3NlY29uZExhYmVsJykuaGFzRXJyb3IoJ3JlcXVpcmVkJykpIHtcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVyci1tc2dcIiB0cmFuc2xhdGU+XG4gICAgICAgICAgICAgICAgZW8uZm9ybS5wcm9wZXJ0eS5yZXF1aXJlZFxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPGVvLWZvcm0taW5wdXQgW3NraXBUb2dnbGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5sYWJlbC50aGlyZExhYmVsJ3x0cmFuc2xhdGVcIj5cbiAgICAgICAgICAgICAgPGVvLWNvZGVzeXN0ZW0gI3RoaXJkTGFiZWxQcm9wZXJ0eUNvZGVzeXN0ZW0gZm9ybUNvbnRyb2xOYW1lPVwidGhpcmRMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwaWNrZXJUaXRsZV09XCJwcm9wZXJ0eVBpY2tlci50aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2Rlc3lzdGVtXT1cInByb3BlcnR5UGlja2VyLmNvZGVzeXN0ZW1cIj48L2VvLWNvZGVzeXN0ZW0+XG4gICAgICAgICAgICA8L2VvLWZvcm0taW5wdXQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGVvLWZvcm0taW5wdXQgW3NraXBUb2dnbGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0ubGFiZWwuc29ydEZpZWxkJ3x0cmFuc2xhdGVcIj5cbiAgICAgICAgICAgIDxlby1jb2Rlc3lzdGVtIGZvcm1Db250cm9sTmFtZT1cInNvcnRGaWVsZFwiIFtwaWNrZXJUaXRsZV09XCJwcm9wZXJ0eVBpY2tlci50aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbY29kZXN5c3RlbV09XCJwcm9wZXJ0eVBpY2tlci5jb2Rlc3lzdGVtXCI+PC9lby1jb2Rlc3lzdGVtPlxuICAgICAgICAgIDwvZW8tZm9ybS1pbnB1dD5cbiAgICAgICAgfVxuXG4gICAgICAgIDxlby1mb3JtLWlucHV0IGNsYXNzPVwibGFiZWwgY2hlY2tib3hcIiBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5sYWJlbC5zb3J0UmV2ZXJ0J3x0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICBbc2tpcFRvZ2dsZV09XCJ0cnVlXCI+XG4gICAgICAgICAgPGVvLWNoZWNrYm94IGZvcm1Db250cm9sTmFtZT1cInNvcnRSZXZlcnRcIiBbdHJpc3RhdGVdPVwiZmFsc2VcIj48L2VvLWNoZWNrYm94PlxuICAgICAgICA8L2VvLWZvcm0taW5wdXQ+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZm9ybT5cbjwvZGl2PlxuXG5AaWYgKHNldHVwRm9ybS52YWxpZCkge1xuICA8ZGl2IGNsYXNzPVwicHJldmlld1wiPlxuICAgIDxlby1oaXRsaXN0LXdpZGdldCBbd2lkZ2V0Q29uZmlnXT1cIndpZGdldENvbmZpZ1wiIFtlZGl0TW9kZV09XCJ0cnVlXCI+PC9lby1oaXRsaXN0LXdpZGdldD5cbiAgPC9kaXY+XG59IEBlbHNlIHtcbiAgPGRpdiBjbGFzcz1cImVtcHR5XCI+XG4gICAgPGVvLWVycm9yLW1lc3NhZ2VcbiAgICAgIFtlbXB0eVN0YXRlXT1cIntpY29uOiAnaWNfc2F2ZWRfc2VhcmNoLnN2ZycsIHRleHQ6ICdlby53b3Jrc3BhY2Uud2lkZ2V0LnN0b3JlZC5xdWVyaWVzLmxpc3QuZW1wdHknfVwiPjwvZW8tZXJyb3ItbWVzc2FnZT5cbiAgPC9kaXY+XG59XG4iXX0=
|
|
205
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0bGlzdC1zZXR1cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWNsaWVudC9kYXNoYm9hcmQvd2lkZ2V0cy9oaXRsaXN0LXdpZGdldC9oaXRsaXN0LXNldHVwL2hpdGxpc3Qtc2V0dXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvaGl0bGlzdC13aWRnZXQvaGl0bGlzdC1zZXR1cC9oaXRsaXN0LXNldHVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV4RixPQUFPLEVBQXVDLFVBQVUsRUFBb0IsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRyxPQUFPLEVBQUMsWUFBWSxFQUFFLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRW5FLE9BQU8sRUFBa0YsS0FBSyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3BILE9BQU8sRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBQyxVQUFVLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7O0FBU3hDLElBQU0scUJBQXFCLEdBQTNCLE1BQU0scUJBQXFCO0lBZ0NoQyxJQUFhLFlBQVksQ0FBQyxFQUFZO1FBQ3BDLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUVELFlBQ1UsRUFBc0IsRUFDdEIsb0JBQTBDLEVBQzFDLFNBQTJCLEVBQzNCLFdBQXdCLEVBQ3hCLE1BQXFCO1FBSnJCLE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQ3RCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQTNDckIsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVksQ0FBQztRQUNsRCw0QkFBdUIsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztRQUcxRSxjQUFTLEdBQXFCLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQzFDLFdBQVcsRUFBRSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3hDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDeEUsU0FBUyxFQUFFLEVBQUU7WUFDYixVQUFVLEVBQUUsRUFBRTtZQUNkLFdBQVcsRUFBRSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3hDLFVBQVUsRUFBRSxFQUFFO1lBQ2QsVUFBVSxFQUFFLEVBQUU7U0FDZixDQUFDLENBQUM7UUFFSCx3QkFBbUIsR0FBRztZQUNwQixLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsdUNBQXVDLENBQUM7WUFDdEUsVUFBVSxFQUFFLElBQUk7U0FDakIsQ0FBQztRQUVGLG1CQUFjLEdBQUc7WUFDZixLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsb0NBQW9DLENBQUM7WUFDbkUsVUFBVSxFQUFFLElBQUk7U0FDakIsQ0FBQztRQUNGLDRCQUF1QixHQUFHLEVBQUUsQ0FBQztRQXNCM0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUM5RSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDdEUsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU8sZUFBZTtRQUNyQixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMvQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3hHLElBQUksQ0FBQyxZQUFZLEdBQUc7Z0JBQ2xCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUU7Z0JBQ2pDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUs7Z0JBQy9CLHNCQUFzQixFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLFVBQVU7Z0JBQzNILHVCQUF1QixFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsdUJBQXVCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDLFFBQVE7Z0JBQzVILHNCQUFzQixFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLFFBQVE7YUFDMUgsQ0FBQztZQUNGLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO2dCQUM3RSxJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsS0FBSyxDQUFDO2dCQUN2RSxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLENBQUM7b0JBQ25DLFVBQVUsQ0FBQyxHQUFHLEVBQUU7d0JBQ2QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO3dCQUN0QyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQzs0QkFDeEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDO3dCQUN6QyxDQUFDOzZCQUFNLENBQUM7NEJBQ04sSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO3dCQUMzRCxDQUFDO3dCQUNELElBQUksSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7NEJBQ3RDLElBQUksQ0FBQyxZQUFZLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLDRCQUE0QixFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDOzRCQUN4RyxJQUFJLENBQUMsWUFBWSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyw2QkFBNkIsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQzs0QkFDMUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7d0JBQzFHLENBQUM7b0JBQ0gsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUNWLENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztvQkFDdEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7b0JBQ3hHLElBQUksQ0FBQyxZQUFZLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLDZCQUE2QixFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDO29CQUMxRyxJQUFJLENBQUMsWUFBWSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQztnQkFDMUcsQ0FBQztZQUNILENBQUM7WUFDRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNuRCxDQUFDO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsb0JBQW9CO2FBQ3RCLGtCQUFrQixFQUFFLENBQUMsSUFBSSxDQUN4QixjQUFjLENBQUMsSUFBSSxDQUFDLENBQ3JCLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQzFCLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1lBQ25DLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLEdBQUc7Z0JBQ3BDLE9BQU8sRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQzlDLEVBQUUsRUFBRSxXQUFXLENBQUMsRUFBRTtvQkFDbEIsS0FBSyxFQUFFLFdBQVcsQ0FBQyxJQUFJO29CQUN2QixxQkFBcUIsRUFBRSxXQUFXLENBQUMsSUFBSTtvQkFDdkMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxJQUFJO2lCQUN2QixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUNwQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsY0FBYyxDQUFDLEVBQVU7UUFDdkIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDdEQsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUNwQixHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxJQUFJO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2pHLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxHQUFHO2dCQUMvQixPQUFPLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7b0JBQ3ZDLElBQUksVUFBVSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHNCQUFzQixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztvQkFDN0csSUFBSSxLQUFLLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQzt3QkFDbkYsQ0FBQyxDQUFDLFVBQVUsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsR0FBRzt3QkFDdEYsQ0FBQyxDQUFDLFVBQVUsQ0FBQztvQkFDZixPQUFPO3dCQUNMLEVBQUUsRUFBRSxLQUFLLENBQUMsS0FBSzt3QkFDZixxQkFBcUIsRUFBRSxLQUFLO3dCQUM1QixJQUFJLEVBQUUsS0FBSyxDQUFDLE9BQU87d0JBQ25CLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtxQkFDakIsQ0FBQztnQkFDSixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO2FBQ25ELENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDO1lBQ3BDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQ3ZELFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDakIsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDO29CQUN6QixJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQzt3QkFDeEIsV0FBVyxFQUFFLEVBQUU7d0JBQ2YsSUFBSSxFQUFFLEdBQUc7d0JBQ1QsVUFBVSxFQUFFLFNBQVM7d0JBQ3JCLFdBQVcsRUFBRSxPQUFPO3dCQUNwQixVQUFVLEVBQUUsYUFBYTt3QkFDekIsU0FBUyxFQUFFLFVBQVU7cUJBQ3RCLENBQUMsQ0FBQztvQkFDSCxPQUFPLEtBQUssQ0FBQztnQkFDZixDQUFDO2dCQUNELE1BQU0sS0FBSyxDQUFDO1lBQ2QsQ0FBQyxDQUNBLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQztvQkFDeEIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUMxRCxJQUFJLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHO29CQUNsRSxVQUFVLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTO29CQUNwRixXQUFXLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxPQUFPO29CQUNwRixVQUFVLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxhQUFhO29CQUN4RixTQUFTLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxVQUFVO29CQUNuRixVQUFVLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFO2lCQUM5RSxDQUFDLENBQUM7Z0JBQ0gsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7b0JBQ3hDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztnQkFDekMsQ0FBQztxQkFBTSxDQUFDO29CQUNOLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDM0QsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQztnQkFDeEIsV0FBVyxFQUFFLEVBQUU7Z0JBQ2YsSUFBSSxFQUFFLEdBQUc7Z0JBQ1QsVUFBVSxFQUFFLFNBQVM7Z0JBQ3JCLFdBQVcsRUFBRSxPQUFPO2dCQUNwQixVQUFVLEVBQUUsYUFBYTtnQkFDekIsU0FBUyxFQUFFLFVBQVU7YUFDdEIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7OEdBdExVLHFCQUFxQjtrR0FBckIscUJBQXFCLDJsQkNoQmxDLHk4SUEwRkE7O0FEMUVhLHFCQUFxQjtJQU5qQyxZQUFZLEVBQUU7R0FNRixxQkFBcUIsQ0F1TGpDOzsyRkF2TFkscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGtCQUFrQjsrTUFNbEIsa0JBQWtCO3NCQUEzQixNQUFNO2dCQUNHLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkF5Qm9DLDRCQUE0QjtzQkFBdEUsU0FBUzt1QkFBQyw4QkFBOEI7Z0JBQ0csNkJBQTZCO3NCQUF4RSxTQUFTO3VCQUFDLCtCQUErQjtnQkFDQyw0QkFBNEI7c0JBQXRFLFNBQVM7dUJBQUMsOEJBQThCO2dCQUU1QixZQUFZO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtJV2lkZ2V0Q29tcG9uZW50fSBmcm9tICdAeXV1dmlzL3dpZGdldC1ncmlkJztcbmltcG9ydCB7VW50eXBlZEZvcm1Hcm91cCwgVW50eXBlZEZvcm1CdWlsZGVyLCBWYWxpZGF0b3JzLCBGb3JtQ29udHJvbFN0YXR1c30gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHtJSGl0bGlzdH0gZnJvbSAnLi4vSUhpdGxpc3QnO1xuaW1wb3J0IHtTdG9yZWRRdWVyaWVzU2VydmljZSwgU3RvcmVkUXVlcnksIFN5c3RlbVNlcnZpY2UsIFRyYW5zbGF0ZVNlcnZpY2UsIFVzZXJTZXJ2aWNlLCBVdGlsc30gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7RU1QVFksIHNraXB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtjYXRjaEVycm9yLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7Q29kZXN5c3RlbUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZW8tZnJhbWV3b3JrJztcblxuQFVudGlsRGVzdHJveSgpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlby1oaXRsaXN0LXNldHVwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hpdGxpc3Qtc2V0dXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oaXRsaXN0LXNldHVwLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSGl0bGlzdFNldHVwQ29tcG9uZW50IGltcGxlbWVudHMgSVdpZGdldENvbXBvbmVudCwgT25Jbml0IHtcbiAgcHJpdmF0ZSBfd2lkZ2V0Q29uZmlnOiBJSGl0bGlzdDtcbiAgQE91dHB1dCgpIHdpZGdldENvbmZpZ0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SUhpdGxpc3Q+KCk7XG4gIEBPdXRwdXQoKSB3aWRnZXRDb25maWdTdGF0ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybUNvbnRyb2xTdGF0dXM+KCk7XG4gIHN0b3JlZFF1ZXJpZXM6IFN0b3JlZFF1ZXJ5W107XG5cbiAgc2V0dXBGb3JtOiBVbnR5cGVkRm9ybUdyb3VwID0gdGhpcy5mYi5ncm91cCh7XG4gICAgc3RvcmVkUXVlcnk6IFtudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICBzaXplOiBbNSwgW1ZhbGlkYXRvcnMubWF4KDEwMCksIFZhbGlkYXRvcnMubWluKDMpLCBWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgc29ydEZpZWxkOiBbXSxcbiAgICBmaXJzdExhYmVsOiBbXSxcbiAgICBzZWNvbmRMYWJlbDogW251bGwsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgIHRoaXJkTGFiZWw6IFtdLFxuICAgIHNvcnRSZXZlcnQ6IFtdLFxuICB9KTtcblxuICBzdG9yZWRRdWVyaWVzUGlja2VyID0ge1xuICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmxhYmVsLnN0b3JlZHF1ZXJ5JyksXG4gICAgY29kZXN5c3RlbTogbnVsbCxcbiAgfTtcblxuICBwcm9wZXJ0eVBpY2tlciA9IHtcbiAgICB0aXRsZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5mb3JtLnNvcnRGaWVsZCcpLFxuICAgIGNvZGVzeXN0ZW06IG51bGwsXG4gIH07XG4gIHNlbGVjdGVkU2F2ZWRTZWFyY2hOYW1lID0gJyc7XG4gIHN0b3JlZFF1ZXJ5OiBTdG9yZWRRdWVyeTtcblxuICBAVmlld0NoaWxkKCdmaXJzdExhYmVsUHJvcGVydHlDb2Rlc3lzdGVtJykgZmlyc3RMYWJlbFByb3BlcnR5Q29kZXN5c3RlbTogQ29kZXN5c3RlbUNvbXBvbmVudDtcbiAgQFZpZXdDaGlsZCgnc2Vjb25kTGFiZWxQcm9wZXJ0eUNvZGVzeXN0ZW0nKSBzZWNvbmRMYWJlbFByb3BlcnR5Q29kZXN5c3RlbTogQ29kZXN5c3RlbUNvbXBvbmVudDtcbiAgQFZpZXdDaGlsZCgndGhpcmRMYWJlbFByb3BlcnR5Q29kZXN5c3RlbScpIHRoaXJkTGFiZWxQcm9wZXJ0eUNvZGVzeXN0ZW06IENvZGVzeXN0ZW1Db21wb25lbnQ7XG5cbiAgQElucHV0KCkgc2V0IHdpZGdldENvbmZpZyh3YzogSUhpdGxpc3QpIHtcbiAgICB0aGlzLl93aWRnZXRDb25maWcgPSB3YztcbiAgfVxuXG4gIGdldCB3aWRnZXRDb25maWcoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3dpZGdldENvbmZpZztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIHN0b3JlZFF1ZXJpZXNTZXJ2aWNlOiBTdG9yZWRRdWVyaWVzU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICBwcml2YXRlIHN5c3RlbTogU3lzdGVtU2VydmljZVxuICApIHtcbiAgICB0aGlzLnNldHVwRm9ybS52YWx1ZUNoYW5nZXMucGlwZShza2lwKDEpLCB1bnRpbERlc3Ryb3llZCh0aGlzKSkuc3Vic2NyaWJlKChfKSA9PiB7XG4gICAgICB0aGlzLnNldFdpZGdldENvbmZpZygpO1xuICAgIH0pO1xuICAgIHRoaXMuc2V0dXBGb3JtLnN0YXR1c0NoYW5nZXMucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSkuc3Vic2NyaWJlKCh2KSA9PiB7XG4gICAgICB0aGlzLndpZGdldENvbmZpZ1N0YXRlQ2hhbmdlLmVtaXQodik7XG4gICAgfSk7XG4gICAgdGhpcy5nZXRTdG9yZWRRdWVyeXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0V2lkZ2V0Q29uZmlnKCkge1xuICAgIGlmICh0aGlzLnNldHVwRm9ybS52YWxpZCAmJiB0aGlzLnN0b3JlZFF1ZXJpZXMpIHtcbiAgICAgIHRoaXMuc3RvcmVkUXVlcnkgPSB0aGlzLnN0b3JlZFF1ZXJpZXMuZmluZCgoc3EpID0+IHNxLm5hbWUgPT09IHRoaXMuc2V0dXBGb3JtLmdldCgnc3RvcmVkUXVlcnknKS52YWx1ZSk7XG4gICAgICB0aGlzLndpZGdldENvbmZpZyA9IHtcbiAgICAgICAgc3RvcmVkUXVlcnk6IHRoaXMuc3RvcmVkUXVlcnk/LmlkLFxuICAgICAgICBmb3JtVmFsdWU6IHRoaXMuc2V0dXBGb3JtLnZhbHVlLFxuICAgICAgICBmaXJzdExhYmVscHJvcGVydHlUeXBlOiB0aGlzLl93aWRnZXRDb25maWc/LmZpcnN0TGFiZWxwcm9wZXJ0eVR5cGUgPyB0aGlzLl93aWRnZXRDb25maWcuZmlyc3RMYWJlbHByb3BlcnR5VHlwZSA6ICdEQVRFVElNRScsXG4gICAgICAgIHNlY29uZExhYmVscHJvcGVydHlUeXBlOiB0aGlzLl93aWRnZXRDb25maWc/LnNlY29uZExhYmVscHJvcGVydHlUeXBlID8gdGhpcy5fd2lkZ2V0Q29uZmlnLnNlY29uZExhYmVscHJvcGVydHlUeXBlIDogJ1NUUklORycsXG4gICAgICAgIHRoaXJkTGFiZWxwcm9wZXJ0eVR5cGU6IHRoaXMuX3dpZGdldENvbmZpZz8udGhpcmRMYWJlbHByb3BlcnR5VHlwZSA/IHRoaXMuX3dpZGdldENvbmZpZy50aGlyZExhYmVscHJvcGVydHlUeXBlIDogJ1NUUklORydcbiAgICAgIH07XG4gICAgICBpZiAodGhpcy5zZXR1cEZvcm0uZ2V0KCdzdG9yZWRRdWVyeScpLnZhbHVlICE9PSB0aGlzLnNlbGVjdGVkU2F2ZWRTZWFyY2hOYW1lKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRTYXZlZFNlYXJjaE5hbWUgPSB0aGlzLnNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWU7XG4gICAgICAgIGlmICh0aGlzLndpZGdldENvbmZpZz8uc3RvcmVkUXVlcnkpIHtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucHJvcGVydHlQaWNrZXIuY29kZXN5c3RlbSA9IG51bGw7XG4gICAgICAgICAgICBpZiAodGhpcy5zdG9yZWRRdWVyeS50eXBlcy5sZW5ndGggIT09IDEpIHtcbiAgICAgICAgICAgICAgdGhpcy5nZXRGaWVsZERlZmluaXRpb24oJ3N5c2RvY3VtZW50Jyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB0aGlzLmdldEZpZWxkRGVmaW5pdGlvbih0aGlzLnN0b3JlZFF1ZXJ5LnR5cGVzWzBdLnFuYW1lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLmZpcnN0TGFiZWxQcm9wZXJ0eUNvZGVzeXN0ZW0pIHtcbiAgICAgICAgICAgICAgdGhpcy53aWRnZXRDb25maWcuZmlyc3RMYWJlbHByb3BlcnR5VHlwZSA9IHRoaXMuZmlyc3RMYWJlbFByb3BlcnR5Q29kZXN5c3RlbT8uc2VsZWN0ZWROb2Rlcz8uZGF0YT8udHlwZTtcbiAgICAgICAgICAgICAgdGhpcy53aWRnZXRDb25maWcuc2Vjb25kTGFiZWxwcm9wZXJ0eVR5cGUgPSB0aGlzLnNlY29uZExhYmVsUHJvcGVydHlDb2Rlc3lzdGVtPy5zZWxlY3RlZE5vZGVzPy5kYXRhPy50eXBlO1xuICAgICAgICAgICAgICB0aGlzLndpZGdldENvbmZpZy50aGlyZExhYmVscHJvcGVydHlUeXBlID0gdGhpcy50aGlyZExhYmVsUHJvcGVydHlDb2Rlc3lzdGVtPy5zZWxlY3RlZE5vZGVzPy5kYXRhPy50eXBlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sIDEwMCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICh0aGlzLmZpcnN0TGFiZWxQcm9wZXJ0eUNvZGVzeXN0ZW0pIHtcbiAgICAgICAgICB0aGlzLndpZGdldENvbmZpZy5maXJzdExhYmVscHJvcGVydHlUeXBlID0gdGhpcy5maXJzdExhYmVsUHJvcGVydHlDb2Rlc3lzdGVtPy5zZWxlY3RlZE5vZGVzPy5kYXRhPy50eXBlO1xuICAgICAgICAgIHRoaXMud2lkZ2V0Q29uZmlnLnNlY29uZExhYmVscHJvcGVydHlUeXBlID0gdGhpcy5zZWNvbmRMYWJlbFByb3BlcnR5Q29kZXN5c3RlbT8uc2VsZWN0ZWROb2Rlcz8uZGF0YT8udHlwZTtcbiAgICAgICAgICB0aGlzLndpZGdldENvbmZpZy50aGlyZExhYmVscHJvcGVydHlUeXBlID0gdGhpcy50aGlyZExhYmVsUHJvcGVydHlDb2Rlc3lzdGVtPy5zZWxlY3RlZE5vZGVzPy5kYXRhPy50eXBlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aGlzLndpZGdldENvbmZpZ0NoYW5nZS5lbWl0KHRoaXMuX3dpZGdldENvbmZpZyk7XG4gICAgfVxuICB9XG5cbiAgZ2V0U3RvcmVkUXVlcnlzKCkge1xuICAgIHRoaXMuc3RvcmVkUXVlcmllc1NlcnZpY2VcbiAgICAgIC5mZXRjaFN0b3JlZFF1ZXJpZXMoKS5waXBlKFxuICAgICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKSxcbiAgICAgICkuc3Vic2NyaWJlKHN0b3JlZFF1ZXJpZXMgPT4ge1xuICAgICAgICB0aGlzLnN0b3JlZFF1ZXJpZXMgPSBzdG9yZWRRdWVyaWVzO1xuICAgICAgICB0aGlzLnN0b3JlZFF1ZXJpZXNQaWNrZXIuY29kZXN5c3RlbSA9IHtcbiAgICAgICAgICBlbnRyaWVzOiB0aGlzLnN0b3JlZFF1ZXJpZXMubWFwKHN0b3JlZFF1ZXJ5ID0+ICh7XG4gICAgICAgICAgICBpZDogc3RvcmVkUXVlcnkuaWQsXG4gICAgICAgICAgICBsYWJlbDogc3RvcmVkUXVlcnkubmFtZSxcbiAgICAgICAgICAgIGRlZmF1bHRyZXByZXNlbnRhdGlvbjogc3RvcmVkUXVlcnkubmFtZSxcbiAgICAgICAgICAgIGRhdGE6IHN0b3JlZFF1ZXJ5Lm5hbWVcbiAgICAgICAgICB9KSkuc29ydChVdGlscy5zb3J0VmFsdWVzKCdsYWJlbCcpKSxcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICB9XG5cbiAgZ2V0U3RvcmVkUXVlcnkoaWQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnN0b3JlZFF1ZXJpZXNTZXJ2aWNlLmdldFN0b3JlZFF1ZXJ5KGlkKS5waXBlKFxuICAgICAgdW50aWxEZXN0cm95ZWQodGhpcyksXG4gICAgICB0YXAoc3RvcmVkUXVlcnkgPT4ge1xuICAgICAgICB0aGlzLnN0b3JlZFF1ZXJ5ID0gc3RvcmVkUXVlcnk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBnZXRGaWVsZERlZmluaXRpb24odHlwZSkge1xuICAgIHJldHVybiB0aGlzLnVzZXJTZXJ2aWNlLmdldEZpZWxkRGVmaW5pdGlvbih0eXBlKS5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKS5zdWJzY3JpYmUoZGVmaW5pdGlvbiA9PiB7XG4gICAgICB0aGlzLnByb3BlcnR5UGlja2VyLmNvZGVzeXN0ZW0gPSB7XG4gICAgICAgIGVudHJpZXM6IGRlZmluaXRpb24uZWxlbWVudHMubWFwKGZpZWxkID0+IHtcbiAgICAgICAgICBsZXQgZmllbGRMYWJlbCA9IGZpZWxkLmJhc2VwYXJhbSA/IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmdsb2JhbC5iYXNlcGFyYW0uJyArIGZpZWxkLm5hbWUpIDogZmllbGQubGFiZWw7XG4gICAgICAgICAgbGV0IGxhYmVsID0gZGVmaW5pdGlvbi5lbGVtZW50cy5maWx0ZXIoaXRlbSA9PiBpdGVtLmxhYmVsID09PSBmaWVsZC5sYWJlbCkubGVuZ3RoID4gMVxuICAgICAgICAgICAgPyBmaWVsZExhYmVsICsgJyAoJyArIHRoaXMuc3lzdGVtLmdldE9iamVjdFR5cGUoZmllbGQucW5hbWUuc3BsaXQoJy4nKVswXSkubGFiZWwgKyAnKSdcbiAgICAgICAgICAgIDogZmllbGRMYWJlbDtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaWQ6IGZpZWxkLnFuYW1lLFxuICAgICAgICAgICAgZGVmYXVsdHJlcHJlc2VudGF0aW9uOiBsYWJlbCxcbiAgICAgICAgICAgIGRhdGE6IGZpZWxkLmhpdG5hbWUsXG4gICAgICAgICAgICB0eXBlOiBmaWVsZC50eXBlXG4gICAgICAgICAgfTtcbiAgICAgICAgfSkuc29ydChVdGlscy5zb3J0VmFsdWVzKCdkZWZhdWx0cmVwcmVzZW50YXRpb24nKSksXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMuX3dpZGdldENvbmZpZz8uc3RvcmVkUXVlcnkpIHtcbiAgICAgIHRoaXMuZ2V0U3RvcmVkUXVlcnkodGhpcy5fd2lkZ2V0Q29uZmlnPy5zdG9yZWRRdWVyeSkucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PiB7XG4gICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDA0KSB7XG4gICAgICAgICAgICB0aGlzLnNldHVwRm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAgICAgc3RvcmVkUXVlcnk6ICcnLFxuICAgICAgICAgICAgICBzaXplOiAnNScsXG4gICAgICAgICAgICAgIGZpcnN0TGFiZWw6ICdjcmVhdGVkJyxcbiAgICAgICAgICAgICAgc2Vjb25kTGFiZWw6ICd0aXRsZScsXG4gICAgICAgICAgICAgIHRoaXJkTGFiZWw6ICdkZXNjcmlwdGlvbicsXG4gICAgICAgICAgICAgIHNvcnRGaWVsZDogJ21vZGlmaWVkJ1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9XG4gICAgICAgICkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICBzdG9yZWRRdWVyeTogdGhpcy5zdG9yZWRRdWVyeSA/IHRoaXMuc3RvcmVkUXVlcnkubmFtZSA6ICcnLFxuICAgICAgICAgICAgc2l6ZTogdGhpcy5fd2lkZ2V0Q29uZmlnID8gdGhpcy5fd2lkZ2V0Q29uZmlnLmZvcm1WYWx1ZS5zaXplIDogJzUnLFxuICAgICAgICAgICAgZmlyc3RMYWJlbDogdGhpcy5fd2lkZ2V0Q29uZmlnID8gdGhpcy5fd2lkZ2V0Q29uZmlnLmZvcm1WYWx1ZS5maXJzdExhYmVsIDogJ2NyZWF0ZWQnLFxuICAgICAgICAgICAgc2Vjb25kTGFiZWw6IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZy5mb3JtVmFsdWUuc2Vjb25kTGFiZWwgOiAndGl0bGUnLFxuICAgICAgICAgICAgdGhpcmRMYWJlbDogdGhpcy5fd2lkZ2V0Q29uZmlnID8gdGhpcy5fd2lkZ2V0Q29uZmlnLmZvcm1WYWx1ZS50aGlyZExhYmVsIDogJ2Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICAgIHNvcnRGaWVsZDogdGhpcy5fd2lkZ2V0Q29uZmlnID8gdGhpcy5fd2lkZ2V0Q29uZmlnLmZvcm1WYWx1ZS5zb3J0RmllbGQgOiAnbW9kaWZpZWQnLFxuICAgICAgICAgICAgc29ydFJldmVydDogdGhpcy5fd2lkZ2V0Q29uZmlnID8gdGhpcy5fd2lkZ2V0Q29uZmlnLmZvcm1WYWx1ZS5zb3J0UmV2ZXJ0IDogJycsXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgaWYgKHRoaXMuc3RvcmVkUXVlcnkudHlwZXMubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgICB0aGlzLmdldEZpZWxkRGVmaW5pdGlvbignc3lzZG9jdW1lbnQnKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5nZXRGaWVsZERlZmluaXRpb24odGhpcy5zdG9yZWRRdWVyeS50eXBlc1swXS5xbmFtZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgIHN0b3JlZFF1ZXJ5OiAnJyxcbiAgICAgICAgc2l6ZTogJzUnLFxuICAgICAgICBmaXJzdExhYmVsOiAnY3JlYXRlZCcsXG4gICAgICAgIHNlY29uZExhYmVsOiAndGl0bGUnLFxuICAgICAgICB0aGlyZExhYmVsOiAnZGVzY3JpcHRpb24nLFxuICAgICAgICBzb3J0RmllbGQ6ICdtb2RpZmllZCdcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInNldHVwXCI+XG4gIDxmb3JtIFtmb3JtR3JvdXBdPVwic2V0dXBGb3JtXCI+XG5cbiAgICBAaWYgKHN0b3JlZFF1ZXJpZXNQaWNrZXI/LmNvZGVzeXN0ZW0/LmVudHJpZXMpIHtcbiAgICAgIDxlby1mb3JtLWlucHV0IFtza2lwVG9nZ2xlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LmxhYmVsLnN0b3JlZHF1ZXJ5JyB8IHRyYW5zbGF0ZVwiIFtyZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgIFtkZXNjcmlwdGlvbl09XCInZW8ud29ya3NwYWNlLndpZGdldC5zdG9yZWQucXVlcmllcy5kZXNjcmlwdGlvbidcIlxuICAgICAgICAgICAgICAgICAgICAgW2ludmFsaWRdPVwic2V0dXBGb3JtLmRpcnR5ICYmIHNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykuaW52YWxpZFwiPlxuICAgICAgICA8ZW8tY29kZXN5c3RlbSBmb3JtQ29udHJvbE5hbWU9XCJzdG9yZWRRdWVyeVwiIFtwaWNrZXJUaXRsZV09XCJzdG9yZWRRdWVyaWVzUGlja2VyLnRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2NvZGVzeXN0ZW1dPVwic3RvcmVkUXVlcmllc1BpY2tlci5jb2Rlc3lzdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2VtcHR5TWVzc2FnZV09XCInZW8ud29ya3NwYWNlLndpZGdldC5zdG9yZWQucXVlcmllcy5saXN0Lm5vdEF2YWlsYWJsZSdcIj48L2VvLWNvZGVzeXN0ZW0+XG4gICAgICA8L2VvLWZvcm0taW5wdXQ+XG4gICAgICBAaWYgKHNldHVwRm9ybS5kaXJ0eSAmJiBzZXR1cEZvcm0uZ2V0KCdzdG9yZWRRdWVyeScpLmhhc0Vycm9yKCdyZXF1aXJlZCcpKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJlcnItbXNnXCIgdHJhbnNsYXRlPlxuICAgICAgICAgIGVvLmZvcm0ucHJvcGVydHkucmVxdWlyZWRcbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICh3aWRnZXRDb25maWc/LnN0b3JlZFF1ZXJ5KSB7XG4gICAgICA8ZGl2IGNsYXNzPVwibGlzdE9wdGlvbnNcIj5cbiAgICAgICAgPGVvLWZvcm0taW5wdXQgW3NraXBUb2dnbGVdPVwidHJ1ZVwiIFtyZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2ludmFsaWRdPVwic2V0dXBGb3JtLmdldCgnc2l6ZScpLmludmFsaWRcIlxuICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5sYWJlbC5zaXplJyB8IHRyYW5zbGF0ZVwiPlxuICAgICAgICAgIDxlby1udW1iZXIgW3NjYWxlXT1cIjBcIiBmb3JtQ29udHJvbE5hbWU9XCJzaXplXCI+PC9lby1udW1iZXI+XG4gICAgICAgIDwvZW8tZm9ybS1pbnB1dD5cbiAgICAgICAgQGlmIChzZXR1cEZvcm0uZGlydHkgJiYgc2V0dXBGb3JtLmdldCgnc2l6ZScpLmludmFsaWQpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXJyLW1zZ1wiIHRyYW5zbGF0ZT5cbiAgICAgICAgICAgIEBpZiAoc2V0dXBGb3JtLmdldCgnc2l6ZScpLmhhc0Vycm9yKCdyZXF1aXJlZCcpKSB7XG4gICAgICAgICAgICAgIGVvLmZvcm0ucHJvcGVydHkucmVxdWlyZWRcbiAgICAgICAgICAgIH0gQGVsc2UgaWYgKHNldHVwRm9ybS5nZXQoJ3NpemUnKS5oYXNFcnJvcignbWF4JykgfHwgc2V0dXBGb3JtLmdldCgnc2l6ZScpLmhhc0Vycm9yKCdtaW4nKSkge1xuICAgICAgICAgICAgICBlby5mb3JtLnByb3BlcnR5LnN0cmluZy5lcnJvci5jbGFzc2lmaWNhdGlvbi5wYXJ0aWFsVmFsdWVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAocHJvcGVydHlQaWNrZXI/LmNvZGVzeXN0ZW0/LmVudHJpZXMpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvcGVydHlQaWNrZXJcIj5cbiAgICAgICAgICAgIDxlby1mb3JtLWlucHV0IFtza2lwVG9nZ2xlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0ubGFiZWwuZmlyc3RMYWJlbCd8dHJhbnNsYXRlXCI+XG4gICAgICAgICAgICAgIDxlby1jb2Rlc3lzdGVtICNmaXJzdExhYmVsUHJvcGVydHlDb2Rlc3lzdGVtIGZvcm1Db250cm9sTmFtZT1cImZpcnN0TGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGlja2VyVGl0bGVdPVwicHJvcGVydHlQaWNrZXIudGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29kZXN5c3RlbV09XCJwcm9wZXJ0eVBpY2tlci5jb2Rlc3lzdGVtXCI+PC9lby1jb2Rlc3lzdGVtPlxuICAgICAgICAgICAgPC9lby1mb3JtLWlucHV0PlxuICAgICAgICAgICAgPGVvLWZvcm0taW5wdXQgW3NraXBUb2dnbGVdPVwidHJ1ZVwiIFtyZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInZW8ud29ya3NwYWNlLndpZGdldC5mb3JtLmxhYmVsLnNlY29uZExhYmVsJ3x0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ludmFsaWRdPVwic2V0dXBGb3JtLmdldCgnc2Vjb25kTGFiZWwnKS5pbnZhbGlkXCI+XG4gICAgICAgICAgICAgIDxlby1jb2Rlc3lzdGVtICNzZWNvbmRMYWJlbFByb3BlcnR5Q29kZXN5c3RlbSBmb3JtQ29udHJvbE5hbWU9XCJzZWNvbmRMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwaWNrZXJUaXRsZV09XCJwcm9wZXJ0eVBpY2tlci50aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2Rlc3lzdGVtXT1cInByb3BlcnR5UGlja2VyLmNvZGVzeXN0ZW1cIj48L2VvLWNvZGVzeXN0ZW0+XG4gICAgICAgICAgICA8L2VvLWZvcm0taW5wdXQ+XG4gICAgICAgICAgICBAaWYgKHNldHVwRm9ybS5kaXJ0eSAmJiBzZXR1cEZvcm0uZ2V0KCdzZWNvbmRMYWJlbCcpLmhhc0Vycm9yKCdyZXF1aXJlZCcpKSB7XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJlcnItbXNnXCIgdHJhbnNsYXRlPlxuICAgICAgICAgICAgICAgIGVvLmZvcm0ucHJvcGVydHkucmVxdWlyZWRcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIDxlby1mb3JtLWlucHV0IFtza2lwVG9nZ2xlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0ubGFiZWwudGhpcmRMYWJlbCd8dHJhbnNsYXRlXCI+XG4gICAgICAgICAgICAgIDxlby1jb2Rlc3lzdGVtICN0aGlyZExhYmVsUHJvcGVydHlDb2Rlc3lzdGVtIGZvcm1Db250cm9sTmFtZT1cInRoaXJkTGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGlja2VyVGl0bGVdPVwicHJvcGVydHlQaWNrZXIudGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29kZXN5c3RlbV09XCJwcm9wZXJ0eVBpY2tlci5jb2Rlc3lzdGVtXCI+PC9lby1jb2Rlc3lzdGVtPlxuICAgICAgICAgICAgPC9lby1mb3JtLWlucHV0PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxlby1mb3JtLWlucHV0IFtza2lwVG9nZ2xlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInZW8ud29ya3NwYWNlLndpZGdldC5mb3JtLmxhYmVsLnNvcnRGaWVsZCd8dHJhbnNsYXRlXCI+XG4gICAgICAgICAgICA8ZW8tY29kZXN5c3RlbSBmb3JtQ29udHJvbE5hbWU9XCJzb3J0RmllbGRcIiBbcGlja2VyVGl0bGVdPVwicHJvcGVydHlQaWNrZXIudGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvZGVzeXN0ZW1dPVwicHJvcGVydHlQaWNrZXIuY29kZXN5c3RlbVwiPjwvZW8tY29kZXN5c3RlbT5cbiAgICAgICAgICA8L2VvLWZvcm0taW5wdXQ+XG4gICAgICAgIH1cblxuICAgICAgICA8ZW8tZm9ybS1pbnB1dCBjbGFzcz1cImxhYmVsIGNoZWNrYm94XCIgW2xhYmVsXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0ubGFiZWwuc29ydFJldmVydCd8dHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW3NraXBUb2dnbGVdPVwidHJ1ZVwiPlxuICAgICAgICAgIDxlby1jaGVja2JveCBmb3JtQ29udHJvbE5hbWU9XCJzb3J0UmV2ZXJ0XCIgW3RyaXN0YXRlXT1cImZhbHNlXCI+PC9lby1jaGVja2JveD5cbiAgICAgICAgPC9lby1mb3JtLWlucHV0PlxuICAgICAgPC9kaXY+XG4gICAgfVxuICA8L2Zvcm0+XG48L2Rpdj5cblxuQGlmIChzZXR1cEZvcm0udmFsaWQpIHtcbiAgPGRpdiBjbGFzcz1cInByZXZpZXdcIj5cbiAgICA8ZW8taGl0bGlzdC13aWRnZXQgW3dpZGdldENvbmZpZ109XCJ3aWRnZXRDb25maWdcIiBbZWRpdE1vZGVdPVwidHJ1ZVwiPjwvZW8taGl0bGlzdC13aWRnZXQ+XG4gIDwvZGl2PlxufSBAZWxzZSB7XG4gIDxkaXYgY2xhc3M9XCJlbXB0eVwiPlxuICAgIDxlby1lcnJvci1tZXNzYWdlXG4gICAgICBbZW1wdHlTdGF0ZV09XCJ7aWNvbjogJ2ljX3NhdmVkX3NlYXJjaC5zdmcnLCB0ZXh0OiAnZW8ud29ya3NwYWNlLndpZGdldC5zdG9yZWQucXVlcmllcy5saXN0LmVtcHR5J31cIj48L2VvLWVycm9yLW1lc3NhZ2U+XG4gIDwvZGl2PlxufVxuIl19
|
package/esm2022/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-widget.component.mjs
CHANGED
|
@@ -27,7 +27,7 @@ let InfoInboxWidgetComponent = class InfoInboxWidgetComponent {
|
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: InfoInboxWidgetComponent, deps: [{ token: i1.CapabilitiesService }, { token: i1.InboxService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
30
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: InfoInboxWidgetComponent, selector: "eo-info-inbox-widget", inputs: { widgetConfig: "widgetConfig" }, ngImport: i0, template: "<a class=\"info\" [ngClass]=\"{visible: capabilities.inbox && inboxState && inboxState.totalmessages > 0}\" [routerLink]=\"['/inbox']\">\n <div>\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n <div class=\"count\">{{inboxState
|
|
30
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: InfoInboxWidgetComponent, selector: "eo-info-inbox-widget", inputs: { widgetConfig: "widgetConfig" }, ngImport: i0, template: "<a class=\"info\" [ngClass]=\"{visible: capabilities.inbox && inboxState && inboxState.totalmessages > 0}\" [routerLink]=\"['/inbox']\">\n <div>\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n <div class=\"count\">{{inboxState?.totalmessages}}</div>\n </div>\n <div class=\"msg\">{{widgetConfig?.title}}</div>\n</a>\n", styles: [":host-context(.editMode) .info:not(.visible){opacity:1}:host .info{color:var(--color-primary-2);padding:0 var(--app-pane-padding);margin-bottom:calc(var(--app-pane-padding) * 2);text-decoration:none;cursor:pointer}:host .info:not(.visible){opacity:0;pointer-events:none}:host .info:focus,:host .info:hover{color:var(--color-accent)}:host .info:focus eo-icon,:host .info:hover eo-icon{background-color:var(--color-accent)}:host .info>div{display:flex;align-items:center}:host .info eo-icon{flex:0 0 auto;border-radius:2px;background-color:var(--color-primary-2);color:rgba(var(--color-white-rgb),.7);padding:2px}:host .info .count{font-size:40px;line-height:1em;padding:0 var(--app-pane-padding);text-align:right}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "directive", type: i5.RouterLinkDirective, selector: "a[routerLink]" }] }); }
|
|
31
31
|
};
|
|
32
32
|
InfoInboxWidgetComponent = __decorate([
|
|
33
33
|
UntilDestroy()
|
|
@@ -35,8 +35,8 @@ InfoInboxWidgetComponent = __decorate([
|
|
|
35
35
|
export { InfoInboxWidgetComponent };
|
|
36
36
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: InfoInboxWidgetComponent, decorators: [{
|
|
37
37
|
type: Component,
|
|
38
|
-
args: [{ selector: 'eo-info-inbox-widget', template: "<a class=\"info\" [ngClass]=\"{visible: capabilities.inbox && inboxState && inboxState.totalmessages > 0}\" [routerLink]=\"['/inbox']\">\n <div>\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n <div class=\"count\">{{inboxState
|
|
38
|
+
args: [{ selector: 'eo-info-inbox-widget', template: "<a class=\"info\" [ngClass]=\"{visible: capabilities.inbox && inboxState && inboxState.totalmessages > 0}\" [routerLink]=\"['/inbox']\">\n <div>\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n <div class=\"count\">{{inboxState?.totalmessages}}</div>\n </div>\n <div class=\"msg\">{{widgetConfig?.title}}</div>\n</a>\n", styles: [":host-context(.editMode) .info:not(.visible){opacity:1}:host .info{color:var(--color-primary-2);padding:0 var(--app-pane-padding);margin-bottom:calc(var(--app-pane-padding) * 2);text-decoration:none;cursor:pointer}:host .info:not(.visible){opacity:0;pointer-events:none}:host .info:focus,:host .info:hover{color:var(--color-accent)}:host .info:focus eo-icon,:host .info:hover eo-icon{background-color:var(--color-accent)}:host .info>div{display:flex;align-items:center}:host .info eo-icon{flex:0 0 auto;border-radius:2px;background-color:var(--color-primary-2);color:rgba(var(--color-white-rgb),.7);padding:2px}:host .info .count{font-size:40px;line-height:1em;padding:0 var(--app-pane-padding);text-align:right}\n"] }]
|
|
39
39
|
}], ctorParameters: () => [{ type: i1.CapabilitiesService }, { type: i1.InboxService }], propDecorators: { widgetConfig: [{
|
|
40
40
|
type: Input
|
|
41
41
|
}] } });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mby1pbmJveC13aWRnZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvaW5mby1pbmJveC13aWRnZXQvaW5mby1pbmJveC13aWRnZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvaW5mby1pbmJveC13aWRnZXQvaW5mby1pbmJveC13aWRnZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBR3ZELE9BQU8sRUFBQyxZQUFZLEVBQUUsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7QUFTNUQsSUFBTSx3QkFBd0IsR0FBOUIsTUFBTSx3QkFBd0I7SUFLbkMsSUFBYSxZQUFZLENBQUMsQ0FBOEI7UUFDdEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUU7SUFDMUIsQ0FBQztJQUNELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQsWUFDVSxpQkFBc0MsRUFDdEMsWUFBMEI7UUFEMUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFxQjtRQUN0QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztJQUVwQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzdELElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVc7aUJBQzFCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQzFCLFNBQVMsQ0FBQyxDQUFDLFVBQXNCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDLENBQUM7UUFDekUsQ0FBQztJQUNILENBQUM7OEdBekJVLHdCQUF3QjtrR0FBeEIsd0JBQXdCLHNHQ1pyQywrV0FPQTs7QURLYSx3QkFBd0I7SUFOcEMsWUFBWSxFQUFFO0dBTUYsd0JBQXdCLENBMEJwQzs7MkZBMUJZLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDRSxzQkFBc0I7bUhBU25CLFlBQVk7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0lXaWRnZXRDb21wb25lbnR9IGZyb20gJ0B5dXV2aXMvd2lkZ2V0LWdyaWQnO1xuaW1wb3J0IHtJbmJveFN0YXRlLCBDYXBhYmlsaXRpZXMsIENhcGFiaWxpdGllc1NlcnZpY2UsIEluYm94U2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7VW50aWxEZXN0cm95LCB1bnRpbERlc3Ryb3llZH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcbmltcG9ydCB7SW5mb0luYm94Q29uZmlnfSBmcm9tICcuL2luZm8taW5ib3gubW9kZWwnO1xuXG5AVW50aWxEZXN0cm95KClcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLWluZm8taW5ib3gtd2lkZ2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2luZm8taW5ib3gtd2lkZ2V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW5mby1pbmJveC13aWRnZXQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBJbmZvSW5ib3hXaWRnZXRDb21wb25lbnQgaW1wbGVtZW50cyBJV2lkZ2V0Q29tcG9uZW50LCBPbkluaXQge1xuXG4gIGNhcGFiaWxpdGllczogQ2FwYWJpbGl0aWVzO1xuICBpbmJveFN0YXRlOiBJbmJveFN0YXRlO1xuICBwcml2YXRlIF93aWRnZXRDb25maWc6IEluZm9JbmJveENvbmZpZztcbiAgQElucHV0KCkgc2V0IHdpZGdldENvbmZpZyhjOiBJbmZvSW5ib3hDb25maWcgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl93aWRnZXRDb25maWcgPSBjIDtcbiAgfVxuICBnZXQgd2lkZ2V0Q29uZmlnKCkge1xuICAgIHJldHVybiB0aGlzLl93aWRnZXRDb25maWc7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNhcGFiaWxpdHlTZXJ2aWNlOiBDYXBhYmlsaXRpZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgaW5ib3hTZXJ2aWNlOiBJbmJveFNlcnZpY2UsXG4gICkge1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jYXBhYmlsaXRpZXMgPSB0aGlzLmNhcGFiaWxpdHlTZXJ2aWNlLmdldENhcGFiaWxpdGllcygpO1xuICAgIGlmICh0aGlzLmNhcGFiaWxpdGllcy5pbmJveCkge1xuICAgICAgdGhpcy5pbmJveFNlcnZpY2UuaW5ib3hTdGF0ZSRcbiAgICAgICAgLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAgIC5zdWJzY3JpYmUoKGluYm94U3RhdGU6IEluYm94U3RhdGUpID0+IHRoaXMuaW5ib3hTdGF0ZSA9IGluYm94U3RhdGUpO1xuICAgIH1cbiAgfVxufVxuIiwiPGEgY2xhc3M9XCJpbmZvXCIgW25nQ2xhc3NdPVwie3Zpc2libGU6IGNhcGFiaWxpdGllcy5pbmJveCAmJiBpbmJveFN0YXRlICYmIGluYm94U3RhdGUudG90YWxtZXNzYWdlcyA+IDB9XCIgW3JvdXRlckxpbmtdPVwiWycvaW5ib3gnXVwiPlxuICAgIDxkaXY+XG4gICAgICAgIDxlby1pY29uIFtpY29uU3JjXT1cIidhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX2luYm94LnN2ZydcIj48L2VvLWljb24+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb3VudFwiPnt7aW5ib3hTdGF0ZT8udG90YWxtZXNzYWdlc319PC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cIm1zZ1wiPnt7d2lkZ2V0Q29uZmlnPy50aXRsZX19PC9kaXY+XG48L2E+XG4iXX0=
|
|
@@ -165,7 +165,7 @@ let LastEditedAndCreatedComponent = class LastEditedAndCreatedComponent {
|
|
|
165
165
|
});
|
|
166
166
|
}
|
|
167
167
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: LastEditedAndCreatedComponent, deps: [{ token: i1.UserService }, { token: i1.SearchService }, { token: i1.SystemService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
168
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: LastEditedAndCreatedComponent, selector: "eo-last-edited-and-created", inputs: { widgetConfig: "widgetConfig" }, viewQueries: [{ propertyName: "availableTabs", predicate: YvcTabDirective, descendants: true }], ngImport: i0, template: "@if (tabs) {\n
|
|
168
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: LastEditedAndCreatedComponent, selector: "eo-last-edited-and-created", inputs: { widgetConfig: "widgetConfig" }, viewQueries: [{ propertyName: "availableTabs", predicate: YvcTabDirective, descendants: true }], ngImport: i0, template: "@if (tabs) {\n<yvc-tabs [tabs]=\"tabs\" layoutSettingsID=\"eo.lastEdited.widget.tabs\">\n\n <ng-template [yvcTab]=\"{id: 'LastEdited', label: 'eo.dashboard.modified.title' | translate}\">\n @if (modifiedByMe?.lately.length) {\n <div class=\"container\">\n <main class=\"body\">\n @for (item of modifiedByMe.lately; track $index) {\n <div class=\"item\" [routerLink]=\"['/object/', item.id]\">\n <eo-icon [objectType]=\"item.type\"></eo-icon>\n <div>\n <div class=\"modified\">{{ item.modified | localeDate }}</div>\n <div class=\"title\">{{ item.title }}</div>\n <div class=\"description\">{{ item.description }}</div>\n </div>\n </div>\n }\n </main>\n </div>\n }\n </ng-template>\n\n <ng-template [yvcTab]=\"{id: 'LastCreated', label: 'eo.dashboard.created.title' | translate}\">\n @if (createdByMe?.lately.length) {\n <div class=\"container\">\n <main class=\"body\">\n @for (item of createdByMe.lately; track $index) {\n <div class=\"item\" [routerLink]=\"['/object/', item.id]\">\n <eo-icon [objectType]=\"item.type\"></eo-icon>\n <div>\n <div class=\"modified\">{{ item.created | localeDate }}</div>\n <div class=\"title\">{{ item.title }}</div>\n <div class=\"description\">{{ item.description }}</div>\n </div>\n </div>\n }\n </main>\n </div>\n }\n </ng-template>\n</yvc-tabs>\n}", styles: [":host{display:contents}@media screen and (max-width: 800px){:host{height:40%;padding:0 var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding)}}:host yvc-tabs{--text-color-body: #fff;color:var(--text-color-body);background-color:var(--text-color-body);height:100%}:host yvc-tabs ::ng-deep>header{height:50px;background-color:var(--color-primary-2)}:host .container{display:flex;flex-flow:column}:host .container .header{flex:0 0 auto;border-radius:2px;color:var(--color-white);background-color:var(--color-primary-2);padding:calc(var(--app-pane-padding) / 2) var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding)}:host .container .header h2{margin:0;padding:0;font-size:var(--font-subhead);font-weight:var(--font-weight-normal)}:host .container .header .total{font-size:var(--font-caption);opacity:.7}:host .container .body{flex:1 1 auto;overflow-y:auto}:host .container .body .item{border-radius:2px;display:flex;flex-flow:row nowrap;color:var(--text-color-caption);padding:calc(var(--app-pane-padding) / 2);margin:calc(var(--app-pane-padding) / 4) 0;align-items:center;background-color:rgba(var(--color-white-rgb),.9);text-decoration:none;cursor:pointer}:host .container .body .item:focus,:host .container .body .item:hover{background-color:var(--list-item-hover-background)}:host .container .body .item eo-icon{flex:0 0 auto;padding:0 calc(var(--app-pane-padding) / 2)}:host .container .body .item>div{flex:1 1 auto;width:90%;overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 calc(var(--app-pane-padding) / 2)}:host .container .body .item .modified,:host .container .body .item .description,:host .container .body .item .title{width:100%;max-width:250px;overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap}:host .container .body .item .modified,:host .container .body .item .description{font-size:var(--font-hint)}:host .container .body .item .title{font-weight:var(--font-weight-bold)}\n"], dependencies: [{ kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i3.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "component", type: i4.Tabs, selector: "yvc-tabs", inputs: ["tabs", "layoutSettingsID", "panelOrder", "panelOrderIncludeUnmentioned", "cacheViews", "tabSplitEnabled", "tabRemoveEnabled"], outputs: ["tabSplit", "tabRemove", "tabChange"] }, { kind: "directive", type: i4.YvcTabDirective, selector: "[yvcTab]", inputs: ["yvcTab"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.LocaleDatePipe, name: "localeDate" }] }); }
|
|
169
169
|
};
|
|
170
170
|
LastEditedAndCreatedComponent = __decorate([
|
|
171
171
|
UntilDestroy()
|
|
@@ -173,11 +173,11 @@ LastEditedAndCreatedComponent = __decorate([
|
|
|
173
173
|
export { LastEditedAndCreatedComponent };
|
|
174
174
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: LastEditedAndCreatedComponent, decorators: [{
|
|
175
175
|
type: Component,
|
|
176
|
-
args: [{ selector: 'eo-last-edited-and-created', template: "@if (tabs) {\n
|
|
176
|
+
args: [{ selector: 'eo-last-edited-and-created', template: "@if (tabs) {\n<yvc-tabs [tabs]=\"tabs\" layoutSettingsID=\"eo.lastEdited.widget.tabs\">\n\n <ng-template [yvcTab]=\"{id: 'LastEdited', label: 'eo.dashboard.modified.title' | translate}\">\n @if (modifiedByMe?.lately.length) {\n <div class=\"container\">\n <main class=\"body\">\n @for (item of modifiedByMe.lately; track $index) {\n <div class=\"item\" [routerLink]=\"['/object/', item.id]\">\n <eo-icon [objectType]=\"item.type\"></eo-icon>\n <div>\n <div class=\"modified\">{{ item.modified | localeDate }}</div>\n <div class=\"title\">{{ item.title }}</div>\n <div class=\"description\">{{ item.description }}</div>\n </div>\n </div>\n }\n </main>\n </div>\n }\n </ng-template>\n\n <ng-template [yvcTab]=\"{id: 'LastCreated', label: 'eo.dashboard.created.title' | translate}\">\n @if (createdByMe?.lately.length) {\n <div class=\"container\">\n <main class=\"body\">\n @for (item of createdByMe.lately; track $index) {\n <div class=\"item\" [routerLink]=\"['/object/', item.id]\">\n <eo-icon [objectType]=\"item.type\"></eo-icon>\n <div>\n <div class=\"modified\">{{ item.created | localeDate }}</div>\n <div class=\"title\">{{ item.title }}</div>\n <div class=\"description\">{{ item.description }}</div>\n </div>\n </div>\n }\n </main>\n </div>\n }\n </ng-template>\n</yvc-tabs>\n}", styles: [":host{display:contents}@media screen and (max-width: 800px){:host{height:40%;padding:0 var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding)}}:host yvc-tabs{--text-color-body: #fff;color:var(--text-color-body);background-color:var(--text-color-body);height:100%}:host yvc-tabs ::ng-deep>header{height:50px;background-color:var(--color-primary-2)}:host .container{display:flex;flex-flow:column}:host .container .header{flex:0 0 auto;border-radius:2px;color:var(--color-white);background-color:var(--color-primary-2);padding:calc(var(--app-pane-padding) / 2) var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding)}:host .container .header h2{margin:0;padding:0;font-size:var(--font-subhead);font-weight:var(--font-weight-normal)}:host .container .header .total{font-size:var(--font-caption);opacity:.7}:host .container .body{flex:1 1 auto;overflow-y:auto}:host .container .body .item{border-radius:2px;display:flex;flex-flow:row nowrap;color:var(--text-color-caption);padding:calc(var(--app-pane-padding) / 2);margin:calc(var(--app-pane-padding) / 4) 0;align-items:center;background-color:rgba(var(--color-white-rgb),.9);text-decoration:none;cursor:pointer}:host .container .body .item:focus,:host .container .body .item:hover{background-color:var(--list-item-hover-background)}:host .container .body .item eo-icon{flex:0 0 auto;padding:0 calc(var(--app-pane-padding) / 2)}:host .container .body .item>div{flex:1 1 auto;width:90%;overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 calc(var(--app-pane-padding) / 2)}:host .container .body .item .modified,:host .container .body .item .description,:host .container .body .item .title{width:100%;max-width:250px;overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap}:host .container .body .item .modified,:host .container .body .item .description{font-size:var(--font-hint)}:host .container .body .item .title{font-weight:var(--font-weight-bold)}\n"] }]
|
|
177
177
|
}], ctorParameters: () => [{ type: i1.UserService }, { type: i1.SearchService }, { type: i1.SystemService }], propDecorators: { availableTabs: [{
|
|
178
178
|
type: ViewChildren,
|
|
179
179
|
args: [YvcTabDirective]
|
|
180
180
|
}], widgetConfig: [{
|
|
181
181
|
type: Input
|
|
182
182
|
}] } });
|
|
183
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFzdC1lZGl0ZWQtYW5kLWNyZWF0ZWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvbGFzdC1lZGl0ZWQtd2lkZ2V0L2xhc3QtZWRpdGVkLWFuZC1jcmVhdGVkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L2Rhc2hib2FyZC93aWRnZXRzL2xhc3QtZWRpdGVkLXdpZGdldC9sYXN0LWVkaXRlZC1hbmQtY3JlYXRlZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQWEsWUFBWSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBTXhFLE9BQU8sRUFBQyxZQUFZLEVBQUUsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFbkUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7O0FBUWxCLElBQU0sNkJBQTZCLEdBQW5DLE1BQU0sNkJBQTZCO0lBaUJ4QyxJQUFhLFlBQVksQ0FBQyxDQUF1QjtRQUUvQyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztRQUV2QixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQsWUFBbUIsV0FBd0IsRUFDakMsYUFBNEIsRUFDNUIsYUFBNEI7UUFGbkIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDakMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFD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Q04sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDeEMsQ0FBQztRQUVELElBQUksQ0FBQyxhQUFhO2FBQ2YsWUFBWSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUM7YUFDbEQsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDeEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNqRCxNQUFNLEVBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7Z0JBQzdELE9BQU87b0JBQ0wsRUFBRTtvQkFDRixJQUFJLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO29CQUM1QyxLQUFLO29CQUNMLFdBQVc7b0JBQ1gsT0FBTztpQkFDUixDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OEdBMUtVLDZCQUE2QjtrR0FBN0IsNkJBQTZCLDhJQWUxQixlQUFlLGdEQ2hDL0IsMC9DQXlDQTs7QUR4QmEsNkJBQTZCO0lBTnpDLFlBQVksRUFBRTtHQU1GLDZCQUE2QixDQTJLekM7OzJGQTNLWSw2QkFBNkI7a0JBTHpDLFNBQVM7K0JBQ0UsNEJBQTRCO3dJQW1CUCxhQUFhO3NCQUEzQyxZQUFZO3VCQUFDLGVBQWU7Z0JBRWhCLFlBQVk7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkcmVufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7SVdpZGdldENvbXBvbmVudH0gZnJvbSAnQHl1dXZpcy93aWRnZXQtZ3JpZCc7XG5pbXBvcnQge1xuICBVc2VyU2VydmljZSxcbiAgRW9Vc2VyLCBTZWFyY2hTZXJ2aWNlLCBTeXN0ZW1TZXJ2aWNlXG59IGZyb20gJ0Blby1zZGsvY29yZSc7XG5pbXBvcnQge1VudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWR9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5pbXBvcnQge0xhc3RFZGl0ZWRBbmRDcmVhdGVkfSBmcm9tICcuL2xhc3QtZWRpdGVkLWFuZC1jcmVhdGVkJztcbmltcG9ydCB7WXZjVGFiRGlyZWN0aXZlfSBmcm9tICdAeXV1dmlzL2NvbXBvbmVudHMvdGFicyc7XG5pbXBvcnQge3RhcH0gZnJvbSAncnhqcyc7XG5cbkBVbnRpbERlc3Ryb3koKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tbGFzdC1lZGl0ZWQtYW5kLWNyZWF0ZWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGFzdC1lZGl0ZWQtYW5kLWNyZWF0ZWQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sYXN0LWVkaXRlZC1hbmQtY3JlYXRlZC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIExhc3RFZGl0ZWRBbmRDcmVhdGVkQ29tcG9uZW50IGltcGxlbWVudHMgSVdpZGdldENvbXBvbmVudCB7XG5cbiAgdXNlcjogRW9Vc2VyO1xuICBtb2RpZmllZEJ5TWUgPSB7XG4gICAgc2l6ZTogMTAsXG4gICAgdG90YWw6IDAsXG4gICAgbGF0ZWx5OiBbXVxuICB9O1xuICBjcmVhdGVkQnlNZSA9IHtcbiAgICBzaXplOiAxMCxcbiAgICB0b3RhbDogMCxcbiAgICBsYXRlbHk6IFtdXG4gIH07XG5cbiAgcHJpdmF0ZSBfd2lkZ2V0Q29uZmlnOiBMYXN0RWRpdGVkQW5kQ3JlYXRlZDtcbiAgQFZpZXdDaGlsZHJlbihZdmNUYWJEaXJlY3RpdmUpIGF2YWlsYWJsZVRhYnM6IFF1ZXJ5TGlzdDxZdmNUYWJEaXJlY3RpdmU+O1xuICB0YWJzOiBZdmNUYWJEaXJlY3RpdmVbXSA9IFtdO1xuICBASW5wdXQoKSBzZXQgd2lkZ2V0Q29uZmlnKGM6IExhc3RFZGl0ZWRBbmRDcmVhdGVkKSB7XG5cbiAgICB0aGlzLl93aWRnZXRDb25maWcgPSBjO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmxvYWRUYWJzKCk7XG4gICAgfSk7XG4gIH1cblxuICBnZXQgd2lkZ2V0Q29uZmlnKCkge1xuICAgIHJldHVybiB0aGlzLl93aWRnZXRDb25maWc7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcbiAgICBwcml2YXRlIHN5c3RlbVNlcnZpY2U6IFN5c3RlbVNlcnZpY2VcbiAgKSB7XG5cbiAgfVxuICBsb2FkVGFicygpIHtcbiAgICBpZiAodGhpcy5fd2lkZ2V0Q29uZmlnPy5sYXN0RWRpdGVkICYmIHRoaXMuX3dpZGdldENvbmZpZz8ubGFzdENyZWF0ZWQpIHtcbiAgICAgIHRoaXMudXNlclNlcnZpY2UudXNlciRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdW50aWxEZXN0cm95ZWQodGhpcyksXG4gICAgICAgICAgdGFwKHVzZXIgPT4gdGhpcy51c2VyID0gdXNlcilcbiAgICAgICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLl93aWRnZXRDb25maWc/Lmxhc3RFZGl0ZWQpIHtcbiAgICAgICAgICAgIHRoaXMudGFicyA9IFt0aGlzLmF2YWlsYWJsZVRhYnM/LmZpcnN0XTtcbiAgICAgICAgICAgIHRoaXMuZ2V0TGFzdEVkaXRlZCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAodGhpcy5fd2lkZ2V0Q29uZmlnPy5sYXN0Q3JlYXRlZCkge1xuICAgICAgICAgICAgdGhpcy50YWJzID0gW3RoaXMuYXZhaWxhYmxlVGFicy5sYXN0XTtcbiAgICAgICAgICAgIHRoaXMuZ2V0TGFzdENyZWF0ZWQoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHRoaXMuX3dpZGdldENvbmZpZz8ubGFzdEVkaXRlZCAmJiB0aGlzLl93aWRnZXRDb25maWc/Lmxhc3RDcmVhdGVkKSB7XG4gICAgICAgICAgICB0aGlzLnRhYnMgPSB0aGlzLmF2YWlsYWJsZVRhYnMudG9BcnJheSgpO1xuICAgICAgICAgICAgdGhpcy5nZXRMYXN0RWRpdGVkKCk7XG4gICAgICAgICAgICB0aGlzLmdldExhc3RDcmVhdGVkKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gQmVjYXVzZSBvZiB1cGRhdGUgZm9yIGV4aXN0aW5nIHdpZGdldFxuICAgICAgdGhpcy50YWJzID0gdGhpcy5hdmFpbGFibGVUYWJzLnRvQXJyYXkoKTtcbiAgICAgIHRoaXMudXNlclNlcnZpY2UudXNlciRcbiAgICAgICAgLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAgIC5zdWJzY3JpYmUodXNlciA9PiB7XG4gICAgICAgICAgdGhpcy51c2VyID0gdXNlcjtcbiAgICAgICAgICB0aGlzLmdldExhc3RFZGl0ZWQoKTtcbiAgICAgICAgICB0aGlzLmdldExhc3RDcmVhdGVkKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICB0aGlzLnVzZXJTZXJ2aWNlLnVzZXIkXG4gICAgICAgIC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpLCB0YXAodXNlciA9PiB0aGlzLnVzZXIgPSB1c2VyKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgaWYgKHRoaXMuX3dpZGdldENvbmZpZz8ubGFzdEVkaXRlZCAmJiB0aGlzLl93aWRnZXRDb25maWc/Lmxhc3RDcmVhdGVkKSB7XG4gICAgICAgICAgICB0aGlzLnRhYnMgPSB0aGlzLmF2YWlsYWJsZVRhYnMudG9BcnJheSgpO1xuICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5fd2lkZ2V0Q29uZmlnPy5sYXN0RWRpdGVkKSB7XG4gICAgICAgICAgICB0aGlzLnRhYnMgPSBbdGhpcy5hdmFpbGFibGVUYWJzPy5maXJzdF07XG4gICAgICAgICAgfSBlbHNlIGlmICh0aGlzLl93aWRnZXRDb25maWc/Lmxhc3RDcmVhdGVkKSB7XG4gICAgICAgICAgICB0aGlzLnRhYnMgPSBbdGhpcy5hdmFpbGFibGVUYWJzLmxhc3RdO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0aGlzLl93aWRnZXRDb25maWc/Lmxhc3RFZGl0ZWQpIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0TGFzdEVkaXRlZCgpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0aGlzLl93aWRnZXRDb25maWc/Lmxhc3RDcmVhdGVkKSB7XG4gICAgICAgICAgICB0aGlzLmdldExhc3RDcmVhdGVkKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBnZXRMYXN0RWRpdGVkKCkge1xuICAgIGNvbnN0IHEgPSB7XG4gICAgICBmaWx0ZXJzOiB7XG4gICAgICAgIG1vZGlmaWVyOiB7XG4gICAgICAgICAgbzogJ2VxJyxcbiAgICAgICAgICB2MTogdGhpcy51c2VyPy5uYW1lXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBmaWVsZHM6IFsndGl0bGUnLCAnZGVzY3JpcHRpb24nLCAnbW9kaWZpZWQnLCAndHlwZSddLFxuICAgICAgb3B0aW9uczoge1xuICAgICAgICBzb3J0OiB7XG4gICAgICAgICAgbW9kaWZpZWQ6IHtcbiAgICAgICAgICAgIG9yZGVyOiAnJ1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAodGhpcy5fd2lkZ2V0Q29uZmlnPy5zb3J0UmV2ZXJ0KSB7XG4gICAgICBxLm9wdGlvbnMuc29ydC5tb2RpZmllZC5vcmRlciA9ICdhc2MnO1xuICAgIH0gZWxzZSB7XG4gICAgICBxLm9wdGlvbnMuc29ydC5tb2RpZmllZC5vcmRlciA9ICdkZXNjJztcbiAgICB9XG5cbiAgICB0aGlzLnNlYXJjaFNlcnZpY2VcbiAgICAgIC5leGVjdXRlUXVlcnkocSwgZmFsc2UsIHRoaXMuX3dpZGdldENvbmZpZz8ubnVtYmVyKVxuICAgICAgLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICB0aGlzLm1vZGlmaWVkQnlNZS50b3RhbCA9IHJlcy5oaXRzLnRvdGFsO1xuICAgICAgICB0aGlzLm1vZGlmaWVkQnlNZS5sYXRlbHkgPSByZXMuaGl0cy5oaXRzLm1hcChpdGVtID0+IHtcbiAgICAgICAgICBjb25zdCB7aWQsIHRpdGxlLCBkZXNjcmlwdGlvbiwgdHlwZSwgbW9kaWZpZWR9ID0gaXRlbS5fc291cmNlO1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpZCxcbiAgICAgICAgICAgIHR5cGU6IHRoaXMuc3lzdGVtU2VydmljZS5nZXRPYmplY3RUeXBlKHR5cGUpLFxuICAgICAgICAgICAgdGl0bGUsXG4gICAgICAgICAgICBkZXNjcmlwdGlvbixcbiAgICAgICAgICAgIG1vZGlmaWVkLFxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cblxuICBnZXRMYXN0Q3JlYXRlZCgpIHtcbiAgICBjb25zdCBxID0ge1xuICAgICAgZmlsdGVyczoge1xuICAgICAgICBjcmVhdG9yOiB7XG4gICAgICAgICAgbzogJ2VxJyxcbiAgICAgICAgICB2MTogdGhpcy51c2VyPy5uYW1lXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBmaWVsZHM6IFsndGl0bGUnLCAnZGVzY3JpcHRpb24nLCAnY3JlYXRlZCcsICd0eXBlJ10sXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIHNvcnQ6IHtcbiAgICAgICAgICBjcmVhdGVkOiB7XG4gICAgICAgICAgICBvcmRlcjogJydcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuXG4gICAgaWYgKHRoaXMuX3dpZGdldENvbmZpZz8uc29ydFJldmVydCkge1xuICAgICAgcS5vcHRpb25zLnNvcnQuY3JlYXRlZC5vcmRlciA9ICdhc2MnO1xuICAgIH0gZWxzZSB7XG4gICAgICBxLm9wdGlvbnMuc29ydC5jcmVhdGVkLm9yZGVyID0gJ2Rlc2MnO1xuICAgIH1cblxuICAgIHRoaXMuc2VhcmNoU2VydmljZVxuICAgICAgLmV4ZWN1dGVRdWVyeShxLCBmYWxzZSwgdGhpcy5fd2lkZ2V0Q29uZmlnPy5udW1iZXIpXG4gICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgIHRoaXMuY3JlYXRlZEJ5TWUudG90YWwgPSByZXMuaGl0cy50b3RhbDtcbiAgICAgICAgdGhpcy5jcmVhdGVkQnlNZS5sYXRlbHkgPSByZXMuaGl0cy5oaXRzLm1hcChpdGVtID0+IHtcbiAgICAgICAgICBjb25zdCB7aWQsIHRpdGxlLCBkZXNjcmlwdGlvbiwgdHlwZSwgY3JlYXRlZH0gPSBpdGVtLl9zb3VyY2U7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgdHlwZTogdGhpcy5zeXN0ZW1TZXJ2aWNlLmdldE9iamVjdFR5cGUodHlwZSksXG4gICAgICAgICAgICB0aXRsZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgY3JlYXRlZFxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cbn1cbiIsIkBpZiAodGFicykge1xuICA8eXZjLXRhYnMgW3RhYnNdPVwidGFic1wiIGxheW91dFNldHRpbmdzSUQ9XCJlby5sYXN0RWRpdGVkLndpZGdldC50YWJzXCI+PC95dmMtdGFicz5cbn1cblxuPG5nLXRlbXBsYXRlIFt5dmNUYWJdPVwie2lkOiAnTGFzdEVkaXRlZCcsIGxhYmVsOiAnZW8uZGFzaGJvYXJkLm1vZGlmaWVkLnRpdGxlJyB8IHRyYW5zbGF0ZX1cIj5cbiAgQGlmIChtb2RpZmllZEJ5TWU/LmxhdGVseS5sZW5ndGgpIHtcbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XG4gICAgICA8bWFpbiBjbGFzcz1cImJvZHlcIj5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBtb2RpZmllZEJ5TWUubGF0ZWx5OyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbVwiIFtyb3V0ZXJMaW5rXT1cIlsnL29iamVjdC8nLCBpdGVtLmlkXVwiPlxuICAgICAgICAgICAgPGVvLWljb24gW29iamVjdFR5cGVdPVwiaXRlbS50eXBlXCI+PC9lby1pY29uPlxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGlmaWVkXCI+e3sgaXRlbS5tb2RpZmllZCB8IGxvY2FsZURhdGUgfX08L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+e3sgaXRlbS50aXRsZSB9fTwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVzY3JpcHRpb25cIj57eyBpdGVtLmRlc2NyaXB0aW9uIH19PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgPC9tYWluPlxuICAgIDwvZGl2PlxuICB9XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgW3l2Y1RhYl09XCJ7aWQ6ICdMYXN0Q3JlYXRlZCcsIGxhYmVsOiAnZW8uZGFzaGJvYXJkLmNyZWF0ZWQudGl0bGUnIHwgdHJhbnNsYXRlfVwiPlxuICBAaWYgKGNyZWF0ZWRCeU1lPy5sYXRlbHkubGVuZ3RoKSB7XG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxuICAgICAgPG1haW4gY2xhc3M9XCJib2R5XCI+XG4gICAgICAgIEBmb3IgKGl0ZW0gb2YgY3JlYXRlZEJ5TWUubGF0ZWx5OyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbVwiIFtyb3V0ZXJMaW5rXT1cIlsnL29iamVjdC8nLCBpdGVtLmlkXVwiPlxuICAgICAgICAgICAgPGVvLWljb24gW29iamVjdFR5cGVdPVwiaXRlbS50eXBlXCI+PC9lby1pY29uPlxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGlmaWVkXCI+e3sgaXRlbS5jcmVhdGVkIHwgbG9jYWxlRGF0ZSB9fTwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGl0bGVcIj57eyBpdGVtLnRpdGxlIH19PC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvblwiPnt7IGl0ZW0uZGVzY3JpcHRpb24gfX08L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L21haW4+XG4gICAgPC9kaXY+XG4gIH1cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
183
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFzdC1lZGl0ZWQtYW5kLWNyZWF0ZWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvbGFzdC1lZGl0ZWQtd2lkZ2V0L2xhc3QtZWRpdGVkLWFuZC1jcmVhdGVkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L2Rhc2hib2FyZC93aWRnZXRzL2xhc3QtZWRpdGVkLXdpZGdldC9sYXN0LWVkaXRlZC1hbmQtY3JlYXRlZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQWEsWUFBWSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBTXhFLE9BQU8sRUFBQyxZQUFZLEVBQUUsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFbkUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7O0FBUWxCLElBQU0sNkJBQTZCLEdBQW5DLE1BQU0sNkJBQTZCO0lBaUJ4QyxJQUFhLFlBQVksQ0FBQyxDQUF1QjtRQUUvQyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztRQUV2QixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQsWUFBbUIsV0FBd0IsRUFDakMsYUFBNEIsRUFDNUIsYUFBNEI7UUFGbkIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDakMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFD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Q04sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDeEMsQ0FBQztRQUVELElBQUksQ0FBQyxhQUFhO2FBQ2YsWUFBWSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUM7YUFDbEQsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDeEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNqRCxNQUFNLEVBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7Z0JBQzdELE9BQU87b0JBQ0wsRUFBRTtvQkFDRixJQUFJLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO29CQUM1QyxLQUFLO29CQUNMLFdBQVc7b0JBQ1gsT0FBTztpQkFDUixDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OEdBMUtVLDZCQUE2QjtrR0FBN0IsNkJBQTZCLDhJQWUxQixlQUFlLGdEQ2hDL0Isd2dEQXlDQzs7QUR4QlksNkJBQTZCO0lBTnpDLFlBQVksRUFBRTtHQU1GLDZCQUE2QixDQTJLekM7OzJGQTNLWSw2QkFBNkI7a0JBTHpDLFNBQVM7K0JBQ0UsNEJBQTRCO3dJQW1CUCxhQUFhO3NCQUEzQyxZQUFZO3VCQUFDLGVBQWU7Z0JBRWhCLFlBQVk7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkcmVufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7SVdpZGdldENvbXBvbmVudH0gZnJvbSAnQHl1dXZpcy93aWRnZXQtZ3JpZCc7XG5pbXBvcnQge1xuICBVc2VyU2VydmljZSxcbiAgRW9Vc2VyLCBTZWFyY2hTZXJ2aWNlLCBTeXN0ZW1TZXJ2aWNlXG59IGZyb20gJ0Blby1zZGsvY29yZSc7XG5pbXBvcnQge1VudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWR9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5pbXBvcnQge0xhc3RFZGl0ZWRBbmRDcmVhdGVkfSBmcm9tICcuL2xhc3QtZWRpdGVkLWFuZC1jcmVhdGVkJztcbmltcG9ydCB7WXZjVGFiRGlyZWN0aXZlfSBmcm9tICdAeXV1dmlzL2NvbXBvbmVudHMvdGFicyc7XG5pbXBvcnQge3RhcH0gZnJvbSAncnhqcyc7XG5cbkBVbnRpbERlc3Ryb3koKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tbGFzdC1lZGl0ZWQtYW5kLWNyZWF0ZWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGFzdC1lZGl0ZWQtYW5kLWNyZWF0ZWQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sYXN0LWVkaXRlZC1hbmQtY3JlYXRlZC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIExhc3RFZGl0ZWRBbmRDcmVhdGVkQ29tcG9uZW50IGltcGxlbWVudHMgSVdpZGdldENvbXBvbmVudCB7XG5cbiAgdXNlcjogRW9Vc2VyO1xuICBtb2RpZmllZEJ5TWUgPSB7XG4gICAgc2l6ZTogMTAsXG4gICAgdG90YWw6IDAsXG4gICAgbGF0ZWx5OiBbXVxuICB9O1xuICBjcmVhdGVkQnlNZSA9IHtcbiAgICBzaXplOiAxMCxcbiAgICB0b3RhbDogMCxcbiAgICBsYXRlbHk6IFtdXG4gIH07XG5cbiAgcHJpdmF0ZSBfd2lkZ2V0Q29uZmlnOiBMYXN0RWRpdGVkQW5kQ3JlYXRlZDtcbiAgQFZpZXdDaGlsZHJlbihZdmNUYWJEaXJlY3RpdmUpIGF2YWlsYWJsZVRhYnM6IFF1ZXJ5TGlzdDxZdmNUYWJEaXJlY3RpdmU+O1xuICB0YWJzOiBZdmNUYWJEaXJlY3RpdmVbXSA9IFtdO1xuICBASW5wdXQoKSBzZXQgd2lkZ2V0Q29uZmlnKGM6IExhc3RFZGl0ZWRBbmRDcmVhdGVkKSB7XG5cbiAgICB0aGlzLl93aWRnZXRDb25maWcgPSBjO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmxvYWRUYWJzKCk7XG4gICAgfSk7XG4gIH1cblxuICBnZXQgd2lkZ2V0Q29uZmlnKCkge1xuICAgIHJldHVybiB0aGlzLl93aWRnZXRDb25maWc7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcbiAgICBwcml2YXRlIHN5c3RlbVNlcnZpY2U6IFN5c3RlbVNlcnZpY2VcbiAgKSB7XG5cbiAgfVxuICBsb2FkVGFicygpIHtcbiAgICBpZiAodGhpcy5fd2lkZ2V0Q29uZmlnPy5sYXN0RWRpdGVkICYmIHRoaXMuX3dpZGdldENvbmZpZz8ubGFzdENyZWF0ZWQpIHtcbiAgICAgIHRoaXMudXNlclNlcnZpY2UudXNlciRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdW50aWxEZXN0cm95ZWQodGhpcyksXG4gICAgICAgICAgdGFwKHVzZXIgPT4gdGhpcy51c2VyID0gdXNlcilcbiAgICAgICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLl93aWRnZXRDb25maWc/Lmxhc3RFZGl0ZWQpIHtcbiAgICAgICAgICAgIHRoaXMudGFicyA9IFt0aGlzLmF2YWlsYWJsZVRhYnM/LmZpcnN0XTtcbiAgICAgICAgICAgIHRoaXMuZ2V0TGFzdEVkaXRlZCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAodGhpcy5fd2lkZ2V0Q29uZmlnPy5sYXN0Q3JlYXRlZCkge1xuICAgICAgICAgICAgdGhpcy50YWJzID0gW3RoaXMuYXZhaWxhYmxlVGFicy5sYXN0XTtcbiAgICAgICAgICAgIHRoaXMuZ2V0TGFzdENyZWF0ZWQoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHRoaXMuX3dpZGdldENvbmZpZz8ubGFzdEVkaXRlZCAmJiB0aGlzLl93aWRnZXRDb25maWc/Lmxhc3RDcmVhdGVkKSB7XG4gICAgICAgICAgICB0aGlzLnRhYnMgPSB0aGlzLmF2YWlsYWJsZVRhYnMudG9BcnJheSgpO1xuICAgICAgICAgICAgdGhpcy5nZXRMYXN0RWRpdGVkKCk7XG4gICAgICAgICAgICB0aGlzLmdldExhc3RDcmVhdGVkKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gQmVjYXVzZSBvZiB1cGRhdGUgZm9yIGV4aXN0aW5nIHdpZGdldFxuICAgICAgdGhpcy50YWJzID0gdGhpcy5hdmFpbGFibGVUYWJzLnRvQXJyYXkoKTtcbiAgICAgIHRoaXMudXNlclNlcnZpY2UudXNlciRcbiAgICAgICAgLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAgIC5zdWJzY3JpYmUodXNlciA9PiB7XG4gICAgICAgICAgdGhpcy51c2VyID0gdXNlcjtcbiAgICAgICAgICB0aGlzLmdldExhc3RFZGl0ZWQoKTtcbiAgICAgICAgICB0aGlzLmdldExhc3RDcmVhdGVkKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICB0aGlzLnVzZXJTZXJ2aWNlLnVzZXIkXG4gICAgICAgIC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpLCB0YXAodXNlciA9PiB0aGlzLnVzZXIgPSB1c2VyKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgaWYgKHRoaXMuX3dpZGdldENvbmZpZz8ubGFzdEVkaXRlZCAmJiB0aGlzLl93aWRnZXRDb25maWc/Lmxhc3RDcmVhdGVkKSB7XG4gICAgICAgICAgICB0aGlzLnRhYnMgPSB0aGlzLmF2YWlsYWJsZVRhYnMudG9BcnJheSgpO1xuICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5fd2lkZ2V0Q29uZmlnPy5sYXN0RWRpdGVkKSB7XG4gICAgICAgICAgICB0aGlzLnRhYnMgPSBbdGhpcy5hdmFpbGFibGVUYWJzPy5maXJzdF07XG4gICAgICAgICAgfSBlbHNlIGlmICh0aGlzLl93aWRnZXRDb25maWc/Lmxhc3RDcmVhdGVkKSB7XG4gICAgICAgICAgICB0aGlzLnRhYnMgPSBbdGhpcy5hdmFpbGFibGVUYWJzLmxhc3RdO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0aGlzLl93aWRnZXRDb25maWc/Lmxhc3RFZGl0ZWQpIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0TGFzdEVkaXRlZCgpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0aGlzLl93aWRnZXRDb25maWc/Lmxhc3RDcmVhdGVkKSB7XG4gICAgICAgICAgICB0aGlzLmdldExhc3RDcmVhdGVkKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBnZXRMYXN0RWRpdGVkKCkge1xuICAgIGNvbnN0IHEgPSB7XG4gICAgICBmaWx0ZXJzOiB7XG4gICAgICAgIG1vZGlmaWVyOiB7XG4gICAgICAgICAgbzogJ2VxJyxcbiAgICAgICAgICB2MTogdGhpcy51c2VyPy5uYW1lXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBmaWVsZHM6IFsndGl0bGUnLCAnZGVzY3JpcHRpb24nLCAnbW9kaWZpZWQnLCAndHlwZSddLFxuICAgICAgb3B0aW9uczoge1xuICAgICAgICBzb3J0OiB7XG4gICAgICAgICAgbW9kaWZpZWQ6IHtcbiAgICAgICAgICAgIG9yZGVyOiAnJ1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAodGhpcy5fd2lkZ2V0Q29uZmlnPy5zb3J0UmV2ZXJ0KSB7XG4gICAgICBxLm9wdGlvbnMuc29ydC5tb2RpZmllZC5vcmRlciA9ICdhc2MnO1xuICAgIH0gZWxzZSB7XG4gICAgICBxLm9wdGlvbnMuc29ydC5tb2RpZmllZC5vcmRlciA9ICdkZXNjJztcbiAgICB9XG5cbiAgICB0aGlzLnNlYXJjaFNlcnZpY2VcbiAgICAgIC5leGVjdXRlUXVlcnkocSwgZmFsc2UsIHRoaXMuX3dpZGdldENvbmZpZz8ubnVtYmVyKVxuICAgICAgLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICB0aGlzLm1vZGlmaWVkQnlNZS50b3RhbCA9IHJlcy5oaXRzLnRvdGFsO1xuICAgICAgICB0aGlzLm1vZGlmaWVkQnlNZS5sYXRlbHkgPSByZXMuaGl0cy5oaXRzLm1hcChpdGVtID0+IHtcbiAgICAgICAgICBjb25zdCB7aWQsIHRpdGxlLCBkZXNjcmlwdGlvbiwgdHlwZSwgbW9kaWZpZWR9ID0gaXRlbS5fc291cmNlO1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpZCxcbiAgICAgICAgICAgIHR5cGU6IHRoaXMuc3lzdGVtU2VydmljZS5nZXRPYmplY3RUeXBlKHR5cGUpLFxuICAgICAgICAgICAgdGl0bGUsXG4gICAgICAgICAgICBkZXNjcmlwdGlvbixcbiAgICAgICAgICAgIG1vZGlmaWVkLFxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cblxuICBnZXRMYXN0Q3JlYXRlZCgpIHtcbiAgICBjb25zdCBxID0ge1xuICAgICAgZmlsdGVyczoge1xuICAgICAgICBjcmVhdG9yOiB7XG4gICAgICAgICAgbzogJ2VxJyxcbiAgICAgICAgICB2MTogdGhpcy51c2VyPy5uYW1lXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBmaWVsZHM6IFsndGl0bGUnLCAnZGVzY3JpcHRpb24nLCAnY3JlYXRlZCcsICd0eXBlJ10sXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIHNvcnQ6IHtcbiAgICAgICAgICBjcmVhdGVkOiB7XG4gICAgICAgICAgICBvcmRlcjogJydcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuXG4gICAgaWYgKHRoaXMuX3dpZGdldENvbmZpZz8uc29ydFJldmVydCkge1xuICAgICAgcS5vcHRpb25zLnNvcnQuY3JlYXRlZC5vcmRlciA9ICdhc2MnO1xuICAgIH0gZWxzZSB7XG4gICAgICBxLm9wdGlvbnMuc29ydC5jcmVhdGVkLm9yZGVyID0gJ2Rlc2MnO1xuICAgIH1cblxuICAgIHRoaXMuc2VhcmNoU2VydmljZVxuICAgICAgLmV4ZWN1dGVRdWVyeShxLCBmYWxzZSwgdGhpcy5fd2lkZ2V0Q29uZmlnPy5udW1iZXIpXG4gICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgIHRoaXMuY3JlYXRlZEJ5TWUudG90YWwgPSByZXMuaGl0cy50b3RhbDtcbiAgICAgICAgdGhpcy5jcmVhdGVkQnlNZS5sYXRlbHkgPSByZXMuaGl0cy5oaXRzLm1hcChpdGVtID0+IHtcbiAgICAgICAgICBjb25zdCB7aWQsIHRpdGxlLCBkZXNjcmlwdGlvbiwgdHlwZSwgY3JlYXRlZH0gPSBpdGVtLl9zb3VyY2U7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgdHlwZTogdGhpcy5zeXN0ZW1TZXJ2aWNlLmdldE9iamVjdFR5cGUodHlwZSksXG4gICAgICAgICAgICB0aXRsZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgY3JlYXRlZFxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cbn1cbiIsIkBpZiAodGFicykge1xuPHl2Yy10YWJzIFt0YWJzXT1cInRhYnNcIiBsYXlvdXRTZXR0aW5nc0lEPVwiZW8ubGFzdEVkaXRlZC53aWRnZXQudGFic1wiPlxuXG4gIDxuZy10ZW1wbGF0ZSBbeXZjVGFiXT1cIntpZDogJ0xhc3RFZGl0ZWQnLCBsYWJlbDogJ2VvLmRhc2hib2FyZC5tb2RpZmllZC50aXRsZScgfCB0cmFuc2xhdGV9XCI+XG4gICAgQGlmIChtb2RpZmllZEJ5TWU/LmxhdGVseS5sZW5ndGgpIHtcbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XG4gICAgICA8bWFpbiBjbGFzcz1cImJvZHlcIj5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBtb2RpZmllZEJ5TWUubGF0ZWx5OyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbVwiIFtyb3V0ZXJMaW5rXT1cIlsnL29iamVjdC8nLCBpdGVtLmlkXVwiPlxuICAgICAgICAgICAgPGVvLWljb24gW29iamVjdFR5cGVdPVwiaXRlbS50eXBlXCI+PC9lby1pY29uPlxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGlmaWVkXCI+e3sgaXRlbS5tb2RpZmllZCB8IGxvY2FsZURhdGUgfX08L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+e3sgaXRlbS50aXRsZSB9fTwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVzY3JpcHRpb25cIj57eyBpdGVtLmRlc2NyaXB0aW9uIH19PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgPC9tYWluPlxuICAgIDwvZGl2PlxuICAgIH1cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8bmctdGVtcGxhdGUgW3l2Y1RhYl09XCJ7aWQ6ICdMYXN0Q3JlYXRlZCcsIGxhYmVsOiAnZW8uZGFzaGJvYXJkLmNyZWF0ZWQudGl0bGUnIHwgdHJhbnNsYXRlfVwiPlxuICAgIEBpZiAoY3JlYXRlZEJ5TWU/LmxhdGVseS5sZW5ndGgpIHtcbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XG4gICAgICA8bWFpbiBjbGFzcz1cImJvZHlcIj5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBjcmVhdGVkQnlNZS5sYXRlbHk7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJpdGVtXCIgW3JvdXRlckxpbmtdPVwiWycvb2JqZWN0LycsIGl0ZW0uaWRdXCI+XG4gICAgICAgICAgICA8ZW8taWNvbiBbb2JqZWN0VHlwZV09XCJpdGVtLnR5cGVcIj48L2VvLWljb24+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibW9kaWZpZWRcIj57eyBpdGVtLmNyZWF0ZWQgfCBsb2NhbGVEYXRlIH19PC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aXRsZVwiPnt7IGl0ZW0udGl0bGUgfX08L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRlc2NyaXB0aW9uXCI+e3sgaXRlbS5kZXNjcmlwdGlvbiB9fTwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgIDwvbWFpbj5cbiAgICA8L2Rpdj5cbiAgICB9XG4gIDwvbmctdGVtcGxhdGU+XG48L3l2Yy10YWJzPlxufSJdfQ==
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@ngx-translate/core";
|
|
4
|
+
import * as i2 from "../../../../../eo-framework/ui/eo-icon/eo-icon.component";
|
|
5
|
+
import * as i3 from "../../../../../eo-framework/ui/eo-dialog/eo-dialog.component";
|
|
6
|
+
import * as i4 from "../picture-widget.component";
|
|
7
|
+
export class PictureWidgetSetupComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.widgetConfig = {
|
|
10
|
+
image: undefined,
|
|
11
|
+
};
|
|
12
|
+
this.MAX_FILE_SIZE = 1048576;
|
|
13
|
+
this.widgetConfigChange = new EventEmitter();
|
|
14
|
+
}
|
|
15
|
+
pick() {
|
|
16
|
+
this.fileInputEl.nativeElement.click();
|
|
17
|
+
}
|
|
18
|
+
fileInputChangeListener(event) {
|
|
19
|
+
const file = event.target.files[0];
|
|
20
|
+
if (file) {
|
|
21
|
+
this.fileName = file.name;
|
|
22
|
+
if (!(file.type.includes('image/') && file.type.includes('jpeg') || file.type.includes('png'))) {
|
|
23
|
+
this.errorType = 'image';
|
|
24
|
+
this.showErrorDialog = true;
|
|
25
|
+
}
|
|
26
|
+
else if (file.size > this.MAX_FILE_SIZE) {
|
|
27
|
+
this.errorType = 'size';
|
|
28
|
+
this.showErrorDialog = true;
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
const reader = new FileReader();
|
|
32
|
+
reader.onload = () => {
|
|
33
|
+
this.widgetConfig = { image: reader.result };
|
|
34
|
+
this.widgetConfigChange.emit(this.widgetConfig);
|
|
35
|
+
};
|
|
36
|
+
reader.readAsDataURL(file);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: PictureWidgetSetupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
41
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: PictureWidgetSetupComponent, selector: "eo-picture-widget-setup", inputs: { widgetConfig: "widgetConfig" }, outputs: { widgetConfigChange: "widgetConfigChange" }, viewQueries: [{ propertyName: "fileInputEl", first: true, predicate: ["fileInput"], descendants: true }], ngImport: i0, template: "<div class=\"setup\">\n <button class=\"primary\" (click)=\"pick(); $event.target.value = null\">\n <input type=\"file\" accept=\"image/*\" #fileInput (change)=\"fileInputChangeListener($event)\">\n <eo-icon class=\"button sync-tab-btn\" [iconSrc]=\"'assets/_default/svg/ic_photo_library.svg'\"\n [iconTitle]=\"'eo.workspace.widget.picture.tooltip' | translate\"></eo-icon>\n </button>\n</div>\n<div class=\"preview\">\n <eo-picture-widget [widgetConfig]=\"widgetConfig\"></eo-picture-widget>\n</div>\n\n<eo-dialog [title]=\"'eo.workspace.widget.picture.dialog.title' | translate\" [(visible)]=\"showErrorDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n <div>\n <p>{{ fileName }}</p>\n @if (errorType === 'size') {\n <p translate>eo.workspace.widget.picture.dialog.sizeError</p>\n }\n @if (errorType === 'image') {\n <p translate>eo.state.settings.details.upload.dialog.fileError </p>\n }\n </div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\">\n <button type=\"button\" class=\"button cancel\" (click)=\"showErrorDialog = false\"\n translate>eo.state.settings.details.delete.dialog.cancel\n </button>\n <button type=\"button\" (click)=\"pick(); showErrorDialog = false\" class=\"button primary\"\n translate>eo.state.settings.details.upload.dialog.back\n </button>\n </div>\n</eo-dialog>\n", styles: [":host{display:grid;grid-template-rows:1fr;grid-template-columns:minmax(200px,400px) 1fr;grid-template-areas:\"setup preview\";height:100%}:host .setup{display:flex;grid-area:setup;padding:var(--app-pane-padding);border-right:1px solid var(--panel-divider-color);justify-content:center;align-items:center;height:100%;width:100%}:host .setup input[type=file]{display:none}:host .setup .primary{display:flex;height:5cm;align-content:center;align-items:center;width:5cm;justify-content:center}:host .setup .primary eo-icon{--eoSvgIcon-size: 100px}:host .preview{grid-area:preview;background-color:var(--panel-background);padding:var(--app-pane-padding);pointer-events:none;display:flex;align-items:center;justify-content:center}::ng-deep .delete__dialog{padding:8px;min-height:unset!important}::ng-deep .delete__dialog--header{font-size:1.17em!important;font-weight:400!important;color:rgba(var(--color-black-rgb),.54)!important;padding:0 0 1em!important;margin:0;background:#fff!important}\n"], dependencies: [{ kind: "directive", type: i1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i2.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "component", type: i3.EoDialogComponent, selector: "eo-dialog", inputs: ["hasPreviewFile", "title", "subtitle", "styleClass", "dirtyCheck", "minWidth", "minHeight", "height", "width", "focusOnShow", "align", "isFormTable", "showPreview", "visible"], outputs: ["onTogglePreview", "visibleChange", "hide", "show"] }, { kind: "component", type: i4.PictureWidgetComponent, selector: "eo-picture-widget", inputs: ["widgetConfig"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
|
|
42
|
+
}
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: PictureWidgetSetupComponent, decorators: [{
|
|
44
|
+
type: Component,
|
|
45
|
+
args: [{ selector: 'eo-picture-widget-setup', template: "<div class=\"setup\">\n <button class=\"primary\" (click)=\"pick(); $event.target.value = null\">\n <input type=\"file\" accept=\"image/*\" #fileInput (change)=\"fileInputChangeListener($event)\">\n <eo-icon class=\"button sync-tab-btn\" [iconSrc]=\"'assets/_default/svg/ic_photo_library.svg'\"\n [iconTitle]=\"'eo.workspace.widget.picture.tooltip' | translate\"></eo-icon>\n </button>\n</div>\n<div class=\"preview\">\n <eo-picture-widget [widgetConfig]=\"widgetConfig\"></eo-picture-widget>\n</div>\n\n<eo-dialog [title]=\"'eo.workspace.widget.picture.dialog.title' | translate\" [(visible)]=\"showErrorDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n <div>\n <p>{{ fileName }}</p>\n @if (errorType === 'size') {\n <p translate>eo.workspace.widget.picture.dialog.sizeError</p>\n }\n @if (errorType === 'image') {\n <p translate>eo.state.settings.details.upload.dialog.fileError </p>\n }\n </div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\">\n <button type=\"button\" class=\"button cancel\" (click)=\"showErrorDialog = false\"\n translate>eo.state.settings.details.delete.dialog.cancel\n </button>\n <button type=\"button\" (click)=\"pick(); showErrorDialog = false\" class=\"button primary\"\n translate>eo.state.settings.details.upload.dialog.back\n </button>\n </div>\n</eo-dialog>\n", styles: [":host{display:grid;grid-template-rows:1fr;grid-template-columns:minmax(200px,400px) 1fr;grid-template-areas:\"setup preview\";height:100%}:host .setup{display:flex;grid-area:setup;padding:var(--app-pane-padding);border-right:1px solid var(--panel-divider-color);justify-content:center;align-items:center;height:100%;width:100%}:host .setup input[type=file]{display:none}:host .setup .primary{display:flex;height:5cm;align-content:center;align-items:center;width:5cm;justify-content:center}:host .setup .primary eo-icon{--eoSvgIcon-size: 100px}:host .preview{grid-area:preview;background-color:var(--panel-background);padding:var(--app-pane-padding);pointer-events:none;display:flex;align-items:center;justify-content:center}::ng-deep .delete__dialog{padding:8px;min-height:unset!important}::ng-deep .delete__dialog--header{font-size:1.17em!important;font-weight:400!important;color:rgba(var(--color-black-rgb),.54)!important;padding:0 0 1em!important;margin:0;background:#fff!important}\n"] }]
|
|
46
|
+
}], ctorParameters: () => [], propDecorators: { fileInputEl: [{
|
|
47
|
+
type: ViewChild,
|
|
48
|
+
args: ['fileInput']
|
|
49
|
+
}], widgetConfig: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], widgetConfigChange: [{
|
|
52
|
+
type: Output
|
|
53
|
+
}] } });
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGljdHVyZS13aWRnZXQtc2V0dXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvcGljdHVyZS13aWRnZXQvcGljdHVyZS13aWRnZXQtc2V0dXAvcGljdHVyZS13aWRnZXQtc2V0dXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvcGljdHVyZS13aWRnZXQvcGljdHVyZS13aWRnZXQtc2V0dXAvcGljdHVyZS13aWRnZXQtc2V0dXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVE1RixNQUFNLE9BQU8sMkJBQTJCO0lBYXRDO1FBVlMsaUJBQVksR0FBb0M7WUFDdkQsS0FBSyxFQUFFLFNBQVM7U0FDakIsQ0FBQztRQUNGLGtCQUFhLEdBQUcsT0FBTyxDQUFDO1FBRWQsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQXVCLENBQUM7SUFNdkUsQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsV0FBWSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRUQsdUJBQXVCLENBQUMsS0FBVTtRQUNoQyxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVuQyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ1QsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQzFCLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDL0YsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQzlCLENBQUM7aUJBQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDMUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQzlCLENBQUM7aUJBQU0sQ0FBQztnQkFDTixNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO2dCQUNoQyxNQUFNLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRTtvQkFDbkIsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsTUFBZ0IsRUFBQyxDQUFDO29CQUNyRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDbEQsQ0FBQyxDQUFDO2dCQUNGLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0IsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDOzhHQXhDVSwyQkFBMkI7a0dBQTNCLDJCQUEyQiwwUUNSeEMsODZDQWdDQTs7MkZEeEJhLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSx5QkFBeUI7d0RBS1gsV0FBVztzQkFBbEMsU0FBUzt1QkFBQyxXQUFXO2dCQUViLFlBQVk7c0JBQXBCLEtBQUs7Z0JBS0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7SVdpZGdldFNldHVwQ29tcG9uZW50LCBQaWN0dXJlV2lkZ2V0Q29uZmlnfSBmcm9tICdAeXV1dmlzL3dpZGdldC1ncmlkJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tcGljdHVyZS13aWRnZXQtc2V0dXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vcGljdHVyZS13aWRnZXQtc2V0dXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9waWN0dXJlLXdpZGdldC1zZXR1cC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFBpY3R1cmVXaWRnZXRTZXR1cENvbXBvbmVudCBpbXBsZW1lbnRzIElXaWRnZXRTZXR1cENvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoJ2ZpbGVJbnB1dCcpIGZpbGVJbnB1dEVsOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpIHdpZGdldENvbmZpZzogUGljdHVyZVdpZGdldENvbmZpZyB8IHVuZGVmaW5lZCA9IHtcbiAgICBpbWFnZTogdW5kZWZpbmVkLFxuICB9O1xuICBNQVhfRklMRV9TSVpFID0gMTA0ODU3NjtcblxuICBAT3V0cHV0KCkgd2lkZ2V0Q29uZmlnQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxQaWN0dXJlV2lkZ2V0Q29uZmlnPigpO1xuICBmaWxlTmFtZTogYW55O1xuICBlcnJvclR5cGU6IHN0cmluZztcbiAgc2hvd0Vycm9yRGlhbG9nOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICB9XG5cbiAgcGljaygpIHtcbiAgICB0aGlzLmZpbGVJbnB1dEVsIS5uYXRpdmVFbGVtZW50LmNsaWNrKCk7XG4gIH1cblxuICBmaWxlSW5wdXRDaGFuZ2VMaXN0ZW5lcihldmVudDogYW55KSB7XG4gICAgY29uc3QgZmlsZSA9IGV2ZW50LnRhcmdldC5maWxlc1swXTtcblxuICAgIGlmIChmaWxlKSB7XG4gICAgICB0aGlzLmZpbGVOYW1lID0gZmlsZS5uYW1lO1xuICAgICAgaWYgKCEoZmlsZS50eXBlLmluY2x1ZGVzKCdpbWFnZS8nKSAmJiBmaWxlLnR5cGUuaW5jbHVkZXMoJ2pwZWcnKSB8fCBmaWxlLnR5cGUuaW5jbHVkZXMoJ3BuZycpKSkge1xuICAgICAgICB0aGlzLmVycm9yVHlwZSA9ICdpbWFnZSc7XG4gICAgICAgIHRoaXMuc2hvd0Vycm9yRGlhbG9nID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSBpZiAoZmlsZS5zaXplID4gdGhpcy5NQVhfRklMRV9TSVpFKSB7XG4gICAgICAgIHRoaXMuZXJyb3JUeXBlID0gJ3NpemUnO1xuICAgICAgICB0aGlzLnNob3dFcnJvckRpYWxvZyA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xuICAgICAgICByZWFkZXIub25sb2FkID0gKCkgPT4ge1xuICAgICAgICAgIHRoaXMud2lkZ2V0Q29uZmlnID0ge2ltYWdlOiByZWFkZXIucmVzdWx0IGFzIHN0cmluZ307XG4gICAgICAgICAgdGhpcy53aWRnZXRDb25maWdDaGFuZ2UuZW1pdCh0aGlzLndpZGdldENvbmZpZyk7XG4gICAgICAgIH07XG4gICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInNldHVwXCI+XG4gIDxidXR0b24gY2xhc3M9XCJwcmltYXJ5XCIgKGNsaWNrKT1cInBpY2soKTsgJGV2ZW50LnRhcmdldC52YWx1ZSA9IG51bGxcIj5cbiAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiBhY2NlcHQ9XCJpbWFnZS8qXCIgI2ZpbGVJbnB1dCAoY2hhbmdlKT1cImZpbGVJbnB1dENoYW5nZUxpc3RlbmVyKCRldmVudClcIj5cbiAgICA8ZW8taWNvbiBjbGFzcz1cImJ1dHRvbiBzeW5jLXRhYi1idG5cIiBbaWNvblNyY109XCInYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19waG90b19saWJyYXJ5LnN2ZydcIlxuICAgICAgICAgICAgIFtpY29uVGl0bGVdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQucGljdHVyZS50b29sdGlwJyB8IHRyYW5zbGF0ZVwiPjwvZW8taWNvbj5cbiAgPC9idXR0b24+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJwcmV2aWV3XCI+XG4gIDxlby1waWN0dXJlLXdpZGdldCBbd2lkZ2V0Q29uZmlnXT1cIndpZGdldENvbmZpZ1wiPjwvZW8tcGljdHVyZS13aWRnZXQ+XG48L2Rpdj5cblxuPGVvLWRpYWxvZyBbdGl0bGVdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQucGljdHVyZS5kaWFsb2cudGl0bGUnIHwgdHJhbnNsYXRlXCIgWyh2aXNpYmxlKV09XCJzaG93RXJyb3JEaWFsb2dcIlxuICAgICAgICAgICBbZm9jdXNPblNob3ddPVwiZmFsc2VcIiBbbWluV2lkdGhdPVwiNDAwXCIgW3N0eWxlQ2xhc3NdPVwiJ2RlbGV0ZV9fZGlhbG9nJ1wiPlxuICA8ZGl2PlxuICAgIDxwPnt7IGZpbGVOYW1lIH19PC9wPlxuICAgIEBpZiAoZXJyb3JUeXBlID09PSAnc2l6ZScpIHtcbiAgICAgIDxwIHRyYW5zbGF0ZT5lby53b3Jrc3BhY2Uud2lkZ2V0LnBpY3R1cmUuZGlhbG9nLnNpemVFcnJvcjwvcD5cbiAgICB9XG4gICAgQGlmIChlcnJvclR5cGUgPT09ICdpbWFnZScpIHtcbiAgICAgIDxwIHRyYW5zbGF0ZT5lby5zdGF0ZS5zZXR0aW5ncy5kZXRhaWxzLnVwbG9hZC5kaWFsb2cuZmlsZUVycm9yIDwvcD5cbiAgICB9XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJhY3Rpb24tYnV0dG9ucyBpbWFnZS1kZWxldGUtLWFjdGlvbi1idXR0b25zIGZsZXgtcm93XCI+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidXR0b24gY2FuY2VsXCIgKGNsaWNrKT1cInNob3dFcnJvckRpYWxvZyA9IGZhbHNlXCJcbiAgICAgICAgICAgIHRyYW5zbGF0ZT5lby5zdGF0ZS5zZXR0aW5ncy5kZXRhaWxzLmRlbGV0ZS5kaWFsb2cuY2FuY2VsXG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInBpY2soKTsgc2hvd0Vycm9yRGlhbG9nID0gZmFsc2VcIiBjbGFzcz1cImJ1dHRvbiBwcmltYXJ5XCJcbiAgICAgICAgICAgIHRyYW5zbGF0ZT5lby5zdGF0ZS5zZXR0aW5ncy5kZXRhaWxzLnVwbG9hZC5kaWFsb2cuYmFja1xuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZW8tZGlhbG9nPlxuIl19
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class PictureWidgetComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.style = {};
|
|
7
|
+
}
|
|
8
|
+
set widgetConfig(c) {
|
|
9
|
+
this.imageUri = c?.image || undefined;
|
|
10
|
+
this.style['background-image'] = this.imageUri
|
|
11
|
+
? `url(${this.imageUri})`
|
|
12
|
+
: 'none';
|
|
13
|
+
}
|
|
14
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: PictureWidgetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: PictureWidgetComponent, selector: "eo-picture-widget", inputs: { widgetConfig: "widgetConfig" }, ngImport: i0, template: "<div [ngStyle]=\"style\"></div>\n", styles: [":host{height:100%;width:100%;display:block}:host>div{max-width:100%;max-height:100%;width:100%;height:100%;background-size:contain;background-position:center;background-repeat:no-repeat}:host img{object-fit:cover}:host.wholeImage{display:inline-block;height:auto;width:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
16
|
+
}
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: PictureWidgetComponent, decorators: [{
|
|
18
|
+
type: Component,
|
|
19
|
+
args: [{ selector: 'eo-picture-widget', template: "<div [ngStyle]=\"style\"></div>\n", styles: [":host{height:100%;width:100%;display:block}:host>div{max-width:100%;max-height:100%;width:100%;height:100%;background-size:contain;background-position:center;background-repeat:no-repeat}:host img{object-fit:cover}:host.wholeImage{display:inline-block;height:auto;width:auto}\n"] }]
|
|
20
|
+
}], propDecorators: { widgetConfig: [{
|
|
21
|
+
type: Input
|
|
22
|
+
}] } });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGljdHVyZS13aWRnZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvcGljdHVyZS13aWRnZXQvcGljdHVyZS13aWRnZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvcGljdHVyZS13aWRnZXQvcGljdHVyZS13aWRnZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7OztBQVEvQyxNQUFNLE9BQU8sc0JBQXNCO0lBTG5DO1FBT0UsVUFBSyxHQUFRLEVBQUUsQ0FBQztLQVFqQjtJQU5DLElBQWEsWUFBWSxDQUFDLENBQWtDO1FBQzFELElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxFQUFFLEtBQUssSUFBSSxTQUFTLENBQUM7UUFDdEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRO1lBQzVDLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQyxRQUFRLEdBQUc7WUFDekIsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNiLENBQUM7OEdBVFUsc0JBQXNCO2tHQUF0QixzQkFBc0IsbUdDUm5DLG1DQUNBOzsyRkRPYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UsbUJBQW1COzhCQVFoQixZQUFZO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7SVdpZGdldENvbXBvbmVudCwgUGljdHVyZVdpZGdldENvbmZpZ30gZnJvbSAnQHl1dXZpcy93aWRnZXQtZ3JpZCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLXBpY3R1cmUtd2lkZ2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BpY3R1cmUtd2lkZ2V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGljdHVyZS13aWRnZXQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBQaWN0dXJlV2lkZ2V0Q29tcG9uZW50IGltcGxlbWVudHMgSVdpZGdldENvbXBvbmVudCB7XG4gIGltYWdlVXJpOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHN0eWxlOiBhbnkgPSB7fTtcblxuICBASW5wdXQoKSBzZXQgd2lkZ2V0Q29uZmlnKGM6IFBpY3R1cmVXaWRnZXRDb25maWcgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLmltYWdlVXJpID0gYz8uaW1hZ2UgfHwgdW5kZWZpbmVkO1xuICAgIHRoaXMuc3R5bGVbJ2JhY2tncm91bmQtaW1hZ2UnXSA9IHRoaXMuaW1hZ2VVcmlcbiAgICAgID8gYHVybCgke3RoaXMuaW1hZ2VVcml9KWBcbiAgICAgIDogJ25vbmUnO1xuICB9XG59XG4iLCI8ZGl2IFtuZ1N0eWxlXT1cInN0eWxlXCI+PC9kaXY+XG4iXX0=
|