@eo-sdk/client 11.2.2 → 11.4.0-rc.2
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/about-state/about-state.component.d.ts.map +1 -1
- package/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.d.ts.map +1 -1
- package/app/eo-client/dashboard/widgets/charts-widget/icharts.d.ts +2 -0
- package/app/eo-client/dashboard/widgets/charts-widget/icharts.d.ts.map +1 -1
- package/app/eo-client/object-state/object-state/object-state.component.d.ts.map +1 -1
- package/app/eo-framework/accordion/simple-accordion/simple-accordion.component.d.ts +4 -1
- package/app/eo-framework/accordion/simple-accordion/simple-accordion.component.d.ts.map +1 -1
- package/app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component.d.ts +1 -0
- package/app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component.d.ts.map +1 -1
- package/app/eo-framework/grid/column-configurator/column-configurator.component.d.ts.map +1 -1
- package/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.d.ts +5 -0
- package/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.d.ts.map +1 -1
- package/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.d.ts +13 -10
- package/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.d.ts.map +1 -1
- package/app/eo-framework/util/services/utilities.service.d.ts +57 -193
- package/app/eo-framework/util/services/utilities.service.d.ts.map +1 -1
- package/assets/_default/i18n/de.json +14 -0
- package/assets/_default/i18n/en.json +14 -0
- package/esm2022/app/eo-client/about-state/about-state.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.mjs +8 -3
- package/esm2022/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.mjs +8 -8
- package/esm2022/app/eo-client/dashboard/widgets/charts-widget/icharts.mjs +1 -1
- package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.component.mjs +2 -2
- package/esm2022/app/eo-client/object-state/object-state/object-state.component.mjs +4 -3
- package/esm2022/app/eo-client/settings/settings.component.mjs +1 -1
- package/esm2022/app/eo-framework/accordion/simple-accordion/simple-accordion.component.mjs +9 -3
- package/esm2022/app/eo-framework/app-shell/app-bar/app-add/app-add-dialog/app-add-dialog.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.mjs +2 -2
- package/esm2022/app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component.mjs +6 -3
- package/esm2022/app/eo-framework/grid/column-configurator/column-configurator.component.mjs +4 -1
- package/esm2022/app/eo-framework/inbox-details/inbox-details.component.mjs +1 -1
- package/esm2022/app/eo-framework/object-details/object-details.component.mjs +3 -3
- package/esm2022/app/eo-framework/quick-search/quick-search/quick-search.component.mjs +2 -2
- package/esm2022/app/eo-framework/recyclebin-details/recyclebin-details.component.mjs +3 -3
- package/esm2022/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.mjs +22 -9
- package/esm2022/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.mjs +36 -23
- package/esm2022/app/eo-framework/util/services/utilities.service.mjs +59 -2
- package/fesm2022/eo-sdk-client.mjs +150 -50
- package/fesm2022/eo-sdk-client.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -310,6 +310,7 @@ let ObjectStateComponent = class ObjectStateComponent {
|
|
|
310
310
|
this.error = false;
|
|
311
311
|
this.process(res);
|
|
312
312
|
this.selection.focus(res);
|
|
313
|
+
this.isReferenceActive = false;
|
|
313
314
|
}, Utils.throw(() => {
|
|
314
315
|
// this.layoutService.setAreas([]);
|
|
315
316
|
this.error = true;
|
|
@@ -324,7 +325,7 @@ let ObjectStateComponent = class ObjectStateComponent {
|
|
|
324
325
|
this.selection.clear();
|
|
325
326
|
}
|
|
326
327
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ObjectStateComponent, deps: [{ token: i1.ActivatedRoute }, { token: i2.PageTitleService }, { token: i3.SystemService }, { token: i3.DmsService }, { token: i4.SelectionService }, { token: i3.TranslateService }, { token: i5.ObjectStateService }, { token: i6.ActionService }, { token: i7.LocationService }, { token: i8.PendingChangesService }, { token: i3.EventService }, { token: i9.GridService }, { token: i10.LayoutService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
327
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: ObjectStateComponent, selector: "eo-object-state", outputs: { onTermFilterChange: "onTermFilterChange" }, providers: [ObjectStateService], viewQueries: [{ propertyName: "eoGrid", first: true, predicate: ["eoGrid"], descendants: true }], ngImport: i0, template: "<div class=\"file\" [ngClass]=\"{ready: context || context === null}\" *ngIf=\"!error; else errorTmpl\">\n\n <div class=\"file-head\" *ngIf=\"context && context.isContextFolder\">\n <div class=\"left\">\n <eo-icon class=\"type-icon\" [objectType]=\"context.type\"></eo-icon>\n <div class=\"title\" (click)=\"setupFrontPage()\" (contextmenu)=\"onContextMenuClicked($event)\">\n <div class=\"label\">{{context.title || ' '}}</div>\n <div class=\"description\">{{context.description || ' '}}</div>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"fold\">\n <span class=\"created-date\">{{context.created.on | localeDate}}</span>\n <span class=\"created-title\">{{context.created.by.title}}</span>\n </div>\n <div class=\"actions\">\n </div>\n </div>\n </div>\n\n <div class=\"file-body\">\n <div class=\"file-body-wrap\">\n\n <ng-container *ngIf=\"context !== null; else tplDetailsOnly\">\n\n <yvc-split-view *ngIf=\"cacheLayout\" [layoutSettingsID]=\"cacheLayout\">\n <ng-template yvcSplitArea [panelClass]=\"'tree'\" [size]=\"20\" [visible]=\"true\">\n <div class=\"tree-panel-error\" *ngIf=\"loadingState.tree.isError(); else tplTree\" translate>\n eo.state.object.tree.error</div>\n\n <ng-template #tplTree>\n\n <eo-list-container #eoList [loading]=\"!contextTree\" [tabs]=\"false\">\n <div class=\"eo-header dark\">\n <div class=\"eo-header-info\">\n <h2 class=\"eo-header-title\" translate>eo.state.object.tree.title</h2>\n <form name=\"structureForm\" class=\"tree-filter-form\" [ngClass]=\"{active: !!termFilter}\">\n <eo-form-input [skipToggle]=\"true\" [label]=\" 'eo.state.object.tree.filter.label' | translate\">\n <input [(ngModel)]=\"termFilter\" maxlength=\"250\" [ngModelOptions]=\"{standalone: true}\"\n (ngModelChange)=\"onTermFilterChange.emit($event)\" />\n </eo-form-input>\n </form>\n </div>\n </div>\n <div class=\"eo-body tree\">\n <eo-tree [tree]=\"contextTree\" [options]=\"{multiselect: false, disableDeselection: true}\"\n [@panelLoading]=\"loadingState.tree.state\" *ngIf=\"contextTree\" [highlightedNodes]=\"highlightedNodes\"\n [treeUpdate]=\"contextTreeUpdate\" [(ngModel)]=\"selectedNodes\"\n (ngModelChange)=\"onTreeSelectionChanged($event)\"></eo-tree>\n <h3 *ngIf=\"contextTreeRef?.length\" title=\"{{'eo.state.object.tree.references.tooltip'|translate}}\"\n translate>eo.state.object.tree.references</h3>\n <eo-tree [tree]=\"contextTreeRef\" [options]=\"{multiselect: false, disableDeselection: true}\"\n [@panelLoading]=\"loadingState.treeRef.state\" *ngIf=\"contextTreeRef?.length\"\n [highlightedNodes]=\"highlightedNodes\" [treeUpdate]=\"contextTreeRefUpdate\"\n [(ngModel)]=\"selectedNodes\" (ngModelChange)=\"onTreeSelectionChanged($event)\"\n class=\"reference\"></eo-tree>\n </div>\n </eo-list-container>\n\n </ng-template>\n </ng-template>\n\n <ng-template yvcSplitArea [panelClass]=\"'tree'\" [size]=\"35\" [visible]=\"true\">\n <eo-object-state-details *ngIf=\"context\" [context]=\"context\" [frontPageData]=\"frontPageData\"\n [visible]=\"frontPage\" (onTabChange)=\"setupFrontPage(true)\" [plugins]=\"'object-state-details-tab.object' | plugins\">\n </eo-object-state-details>\n\n <eo-result-list *ngIf=\"!frontPage && searchResult\" [selectFirst]=\"false\" [title]=\"gridTitle\"\n [reference]=\"selectedNode?.isReference\" [searchResult]=\"searchResult\" [configType]=\"configType\"\n [configContext]=\"\" [emptyMessage]=\"'eo.state.object.list.error'\" (onRefresh)=\"refreshList()\">\n </eo-result-list>\n </ng-template>\n\n <ng-template yvcSplitArea [size]=\"45\" [visible]=\"true\">\n <ng-container *ngTemplateOutlet=\"tplObjectDetails\"></ng-container>\n </ng-template>\n </yvc-split-view>\n\n </ng-container>\n\n <ng-template #tplDetailsOnly><ng-container *ngTemplateOutlet=\"tplObjectDetails\"></ng-container></ng-template>\n\n <ng-template #tplObjectDetails>\n <eo-object-details [applySelection]=\"{}\" [reference]=\"isReferenceActive\"\n [cacheLayout]=\"'object.state--' + typeName + '.object-details'\" [plugins]=\"'object-details-tab.object' | plugins\">\n </eo-object-details>\n </ng-template>\n </div>\n </div>\n</div>\n\n<ng-template #errorTmpl>\n <eo-error404></eo-error404>\n</ng-template>", styles: [":host{position:absolute;left:var(--app-pane-padding);right:var(--app-pane-padding);top:var(--app-pane-padding);bottom:var(--app-pane-padding)}:host .eo-body.tree h3{margin:0;padding:calc(var(--app-pane-padding) / 2) var(--app-pane-padding) 0 var(--app-pane-padding);font-size:var(--font-subhead);font-weight:var(--font-weight-normal);color:var(--text-color-caption);border-top:1px solid var(--list-item-border-color)}:host .file{height:100%;display:flex;flex-flow:column}:host .file .file-head,:host .file .file-body{opacity:0;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}:host .file.ready .file-head,:host .file.ready .file-body{opacity:1}:host .file .empty-state{background:rgba(var(--color-white-rgb),.3);height:100%;display:flex;flex-flow:column;align-items:center;justify-content:center}:host .file.undocked .empty-state{background:var(--main-background)}:host .file-head{color:var(--text-color-caption);margin-bottom:calc(var(--app-pane-padding) / 4);display:flex;flex-flow:row nowrap;width:100%}:host .file-head eo-icon{padding:var(--app-pane-padding);box-sizing:content-box;flex:none}:host .file-head .left,:host .file-head .right{border-bottom:4px solid var(--color-primary-3);box-sizing:border-box}:host .file-head .left{flex:0 0 auto;display:flex;flex-flow:row nowrap;background:var(--color-white);max-width:calc(100% - 350px)}:host .file-head .left div.title{flex:1;padding:var(--app-pane-padding) 0;display:inline-grid;min-height:0;min-width:0;cursor:pointer}[dir=ltr] :host .file-head .left div.title{padding-right:calc(var(--app-pane-padding) * 2);padding-left:0}[dir=rtl] :host .file-head .left div.title{padding-left:calc(var(--app-pane-padding) * 2);padding-right:0}:host .file-head .left div.title .label,:host .file-head .left div.title .description{display:inline-block;max-width:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host .file-head .left div.title .label{font-size:var(--font-title)}:host .file-head .right{flex:1 1 auto;display:flex;flex-flow:column;min-width:350px}:host .file-head .right .fold{flex:0 0 auto;background:var(--main-background);color:var(--text-color-caption);text-align:right;padding-bottom:calc(var(--app-pane-padding) / 2);display:flex;justify-content:flex-end}[dir=rtl] :host .file-head .right .fold{text-align:right;text-align:left}:host .file-head .right .fold .created-date{padding-right:5px}:host .file-head .right .actions{background:var(--color-white);flex:1 1 auto;display:flex;align-items:center;padding:0 var(--app-pane-padding);justify-content:flex-end;min-height:50px}:host .file-body{flex:1 1 auto;position:relative}:host .file-body .file-body-wrap{position:absolute;inset:0;overflow:hidden}:host .file-body .file-body-wrap .frontPage{position:absolute;inset:0;overflow:hidden}:host ::ng-deep .tree .tree-panel-error{display:flex;height:100%;flex-flow:column;justify-content:center;align-items:center;color:var(--text-color-caption)}:host ::ng-deep .tree .eo-head{background-color:var(--color-primary-3)}:host ::ng-deep .tree .eo-head .eo-header-info{padding:0}:host ::ng-deep .tree .eo-head .eo-header-info h2{flex:1 1 auto;color:var(--color-white)}:host ::ng-deep .tree .eo-head .eo-header-info form.tree-filter-form{width:61%;flex:0 0 auto;margin-bottom:var(--app-pane-padding);min-width:200px;align-self:flex-end}:host ::ng-deep .tree .eo-head .eo-header-info form.tree-filter-form input{background-color:transparent;border:0;outline:0}:host ::ng-deep .tree eo-result-list .eo-head{background-color:var(--panel-background)}:host ::ng-deep yvc-split-view{height:100%}:host ::ng-deep eo-tree{padding:var(--app-pane-padding)}:host ::ng-deep eo-object-details{background:var(--panel-background-grey)}\n"], dependencies: [{ kind: "directive", type: i11.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i11.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i12.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i12.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i12.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i12.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i12.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i12.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i12.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i13.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i14.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "component", type: i15.ResultListComponent, selector: "eo-result-list", inputs: ["title", "configType", "configContext", "clearAfterExecute", "emptyMessage", "selectFirst", "gridOptions", "hasIcon", "reference", "query", "searchResult"], outputs: ["onSelectionChanged", "onFocusChanged", "onDoubleClick", "onContextMenu", "onCountChanged", "onRefresh", "onResult", "onQueryInvalid"] }, { kind: "component", type: i16.ObjectDetailsComponent, selector: "eo-object-details", inputs: ["plugins", "reference", "searchTerm", "enableCompare", "recyclebinTabs", "versionComponentTabs", "enableDiff", "enableSync", "cacheLayout", "emptyState", "params", "params2", "item", "item2", "applySelection", "parseDmsParams"], outputs: ["hasContent"] }, { kind: "component", type: i17.TreeComponent, selector: "eo-tree", inputs: ["options", "isDisplayed", "readonly", "emptyMessage", "selectionKey", "highlightedNodes", "tree", "treeUpdate"], outputs: ["expandedNodesChanged", "onSelected"] }, { kind: "component", type: i18.FormInputComponent, selector: "eo-form-input", inputs: ["label", "tag", "description", "skipToggle", "isNull", "invalid", "disabled", "required"], outputs: ["onToggleLabel"] }, { kind: "component", type: i19.ListContainerComponent, selector: "eo-list-container", inputs: ["applySelection", "applyVersion", "loading", "tabs", "parseDmsParams"] }, { kind: "component", type: i20.Error404Component, selector: "eo-error404" }, { kind: "component", type: i21.ObjectStateDetailsComponent, selector: "eo-object-state-details", inputs: ["plugins", "context", "selectedItem", "seenItems", "frontPageData", "visible"], outputs: ["onTabChange"] }, { kind: "component", type: i22.SplitViewComponent, selector: "yvc-split-view", inputs: ["direction", "gutterSize", "restrictMove", "disabled", "gutterDblClickDuration", "layoutSettingsID"], outputs: ["layoutSettingsChange", "dragStart", "dragEnd", "gutterClick", "gutterDblClick"] }, { kind: "directive", type: i22.SplitAreaDirective, selector: "[yvcSplitArea]", inputs: ["size", "order", "minSize", "maxSize", "panelClass", "visible"] }, { kind: "pipe", type: i13.TranslatePipe, name: "translate" }, { kind: "pipe", type: i23.LocaleDatePipe, name: "localeDate" }, { kind: "pipe", type: i24.PluginPipe, name: "plugins" }], animations: [panelLoadingAnimations] }); }
|
|
328
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: ObjectStateComponent, selector: "eo-object-state", outputs: { onTermFilterChange: "onTermFilterChange" }, providers: [ObjectStateService], viewQueries: [{ propertyName: "eoGrid", first: true, predicate: ["eoGrid"], descendants: true }], ngImport: i0, template: "<div class=\"file\" [ngClass]=\"{ready: context || context === null}\" *ngIf=\"!error; else errorTmpl\">\n\n <div class=\"file-head\" *ngIf=\"context && context.isContextFolder\">\n <div class=\"left\">\n <eo-icon class=\"type-icon\" [objectType]=\"context.type\"></eo-icon>\n <div class=\"title\" (click)=\"setupFrontPage()\" (contextmenu)=\"onContextMenuClicked($event)\">\n <div class=\"label\">{{context.title || ' '}}</div>\n <div class=\"description\">{{context.description || ' '}}</div>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"fold\">\n <span class=\"created-date\">{{context.created.on | localeDate}}</span>\n <span class=\"created-title\">{{context.created.by.title}}</span>\n </div>\n <div class=\"actions\">\n </div>\n </div>\n </div>\n\n <div class=\"file-body\">\n <div class=\"file-body-wrap\">\n\n <ng-container *ngIf=\"context !== null; else tplDetailsOnly\">\n\n <yvc-split-view *ngIf=\"cacheLayout\" [layoutSettingsID]=\"cacheLayout\">\n <ng-template yvcSplitArea [panelClass]=\"'tree'\" [size]=\"20\" [visible]=\"true\">\n <div class=\"tree-panel-error\" *ngIf=\"loadingState.tree.isError(); else tplTree\" translate>\n eo.state.object.tree.error</div>\n\n <ng-template #tplTree>\n\n <eo-list-container #eoList [loading]=\"!contextTree\" [tabs]=\"false\">\n <div class=\"eo-header dark\">\n <div class=\"eo-header-info\">\n <h2 class=\"eo-header-title\" translate>eo.state.object.tree.title</h2>\n <form name=\"structureForm\" class=\"tree-filter-form\" [ngClass]=\"{active: !!termFilter}\">\n <eo-form-input [skipToggle]=\"true\" [label]=\" 'eo.state.object.tree.filter.label' | translate\">\n <input [(ngModel)]=\"termFilter\" maxlength=\"250\" [ngModelOptions]=\"{standalone: true}\"\n (ngModelChange)=\"onTermFilterChange.emit($event)\" />\n </eo-form-input>\n </form>\n </div>\n </div>\n <div class=\"eo-body tree\">\n <eo-tree [tree]=\"contextTree\" [options]=\"{multiselect: false, disableDeselection: true}\"\n [@panelLoading]=\"loadingState.tree.state\" *ngIf=\"contextTree && (contextTree.length > 1 || (contextTree.length === 1 && contextTree[0].children.length && contextTree[0].name))\" [highlightedNodes]=\"highlightedNodes\"\n [treeUpdate]=\"contextTreeUpdate\" [(ngModel)]=\"selectedNodes\"\n (ngModelChange)=\"onTreeSelectionChanged($event)\"></eo-tree>\n <h3 *ngIf=\"contextTreeRef?.length\" title=\"{{'eo.state.object.tree.references.tooltip'|translate}}\"\n translate>eo.state.object.tree.references</h3>\n <eo-tree [tree]=\"contextTreeRef\" [options]=\"{multiselect: false, disableDeselection: true}\"\n [@panelLoading]=\"loadingState.treeRef.state\" *ngIf=\"contextTreeRef?.length\"\n [highlightedNodes]=\"highlightedNodes\" [treeUpdate]=\"contextTreeRefUpdate\"\n [(ngModel)]=\"selectedNodes\" (ngModelChange)=\"onTreeSelectionChanged($event)\"\n class=\"reference\"></eo-tree>\n </div>\n </eo-list-container>\n\n </ng-template>\n </ng-template>\n\n <ng-template yvcSplitArea [panelClass]=\"'tree'\" [size]=\"35\" [visible]=\"true\">\n <eo-object-state-details *ngIf=\"context\" [context]=\"context\" [frontPageData]=\"frontPageData\"\n [visible]=\"frontPage\" (onTabChange)=\"setupFrontPage(true)\" [plugins]=\"'object-state-details-tab.object' | plugins\">\n </eo-object-state-details>\n\n <eo-result-list *ngIf=\"!frontPage && searchResult\" [selectFirst]=\"false\" [title]=\"gridTitle\"\n [reference]=\"selectedNode?.isReference\" [searchResult]=\"searchResult\" [configType]=\"configType\"\n [configContext]=\"\" [emptyMessage]=\"'eo.state.object.list.error'\" (onRefresh)=\"refreshList()\">\n </eo-result-list>\n </ng-template>\n\n <ng-template yvcSplitArea [size]=\"45\" [visible]=\"true\">\n <ng-container *ngTemplateOutlet=\"tplObjectDetails\"></ng-container>\n </ng-template>\n </yvc-split-view>\n\n </ng-container>\n\n <ng-template #tplDetailsOnly><ng-container *ngTemplateOutlet=\"tplObjectDetails\"></ng-container></ng-template>\n\n <ng-template #tplObjectDetails>\n <eo-object-details [applySelection]=\"{}\" [reference]=\"isReferenceActive\"\n [cacheLayout]=\"'object.state--' + typeName + '.object-details'\" [plugins]=\"'object-details-tab.object' | plugins\">\n </eo-object-details>\n </ng-template>\n </div>\n </div>\n</div>\n\n<ng-template #errorTmpl>\n <eo-error404></eo-error404>\n</ng-template>\n", styles: [":host{position:absolute;left:var(--app-pane-padding);right:var(--app-pane-padding);top:var(--app-pane-padding);bottom:var(--app-pane-padding)}:host .eo-body.tree h3{margin:0;padding:calc(var(--app-pane-padding) / 2) var(--app-pane-padding) 0 var(--app-pane-padding);font-size:var(--font-subhead);font-weight:var(--font-weight-normal);color:var(--text-color-caption);border-top:1px solid var(--list-item-border-color)}:host .file{height:100%;display:flex;flex-flow:column}:host .file .file-head,:host .file .file-body{opacity:0;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}:host .file.ready .file-head,:host .file.ready .file-body{opacity:1}:host .file .empty-state{background:rgba(var(--color-white-rgb),.3);height:100%;display:flex;flex-flow:column;align-items:center;justify-content:center}:host .file.undocked .empty-state{background:var(--main-background)}:host .file-head{color:var(--text-color-caption);margin-bottom:calc(var(--app-pane-padding) / 4);display:flex;flex-flow:row nowrap;width:100%}:host .file-head eo-icon{padding:var(--app-pane-padding);box-sizing:content-box;flex:none}:host .file-head .left,:host .file-head .right{border-bottom:4px solid var(--color-primary-3);box-sizing:border-box}:host .file-head .left{flex:0 0 auto;display:flex;flex-flow:row nowrap;background:var(--color-white);max-width:calc(100% - 350px)}:host .file-head .left div.title{flex:1;padding:var(--app-pane-padding) 0;display:inline-grid;min-height:0;min-width:0;cursor:pointer}[dir=ltr] :host .file-head .left div.title{padding-right:calc(var(--app-pane-padding) * 2);padding-left:0}[dir=rtl] :host .file-head .left div.title{padding-left:calc(var(--app-pane-padding) * 2);padding-right:0}:host .file-head .left div.title .label,:host .file-head .left div.title .description{display:inline-block;max-width:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host .file-head .left div.title .label{font-size:var(--font-title)}:host .file-head .right{flex:1 1 auto;display:flex;flex-flow:column;min-width:350px}:host .file-head .right .fold{flex:0 0 auto;background:var(--main-background);color:var(--text-color-caption);text-align:right;padding-bottom:calc(var(--app-pane-padding) / 2);display:flex;justify-content:flex-end}[dir=rtl] :host .file-head .right .fold{text-align:right;text-align:left}:host .file-head .right .fold .created-date{padding-right:5px}:host .file-head .right .actions{background:var(--color-white);flex:1 1 auto;display:flex;align-items:center;padding:0 var(--app-pane-padding);justify-content:flex-end;min-height:50px}:host .file-body{flex:1 1 auto;position:relative}:host .file-body .file-body-wrap{position:absolute;inset:0;overflow:hidden}:host .file-body .file-body-wrap .frontPage{position:absolute;inset:0;overflow:hidden}:host ::ng-deep .tree .tree-panel-error{display:flex;height:100%;flex-flow:column;justify-content:center;align-items:center;color:var(--text-color-caption)}:host ::ng-deep .tree .eo-head{background-color:var(--color-primary-3)}:host ::ng-deep .tree .eo-head .eo-header-info{padding:0}:host ::ng-deep .tree .eo-head .eo-header-info h2{flex:1 1 auto;color:var(--color-white)}:host ::ng-deep .tree .eo-head .eo-header-info form.tree-filter-form{width:61%;flex:0 0 auto;margin-bottom:var(--app-pane-padding);min-width:200px;align-self:flex-end}:host ::ng-deep .tree .eo-head .eo-header-info form.tree-filter-form input{background-color:transparent;border:0;outline:0}:host ::ng-deep .tree eo-result-list .eo-head{background-color:var(--panel-background)}:host ::ng-deep yvc-split-view{height:100%}:host ::ng-deep eo-tree{padding:var(--app-pane-padding)}:host ::ng-deep eo-object-details{background:var(--panel-background-grey)}\n"], dependencies: [{ kind: "directive", type: i11.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i11.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i12.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i12.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i12.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i12.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i12.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i12.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i12.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i13.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i14.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "component", type: i15.ResultListComponent, selector: "eo-result-list", inputs: ["title", "configType", "configContext", "clearAfterExecute", "emptyMessage", "selectFirst", "gridOptions", "hasIcon", "reference", "query", "searchResult"], outputs: ["onSelectionChanged", "onFocusChanged", "onDoubleClick", "onContextMenu", "onCountChanged", "onRefresh", "onResult", "onQueryInvalid"] }, { kind: "component", type: i16.ObjectDetailsComponent, selector: "eo-object-details", inputs: ["plugins", "reference", "searchTerm", "enableCompare", "recyclebinTabs", "versionComponentTabs", "enableDiff", "enableSync", "cacheLayout", "emptyState", "params", "params2", "item", "item2", "applySelection", "parseDmsParams"], outputs: ["hasContent"] }, { kind: "component", type: i17.TreeComponent, selector: "eo-tree", inputs: ["options", "isDisplayed", "readonly", "emptyMessage", "selectionKey", "highlightedNodes", "tree", "treeUpdate"], outputs: ["expandedNodesChanged", "onSelected"] }, { kind: "component", type: i18.FormInputComponent, selector: "eo-form-input", inputs: ["label", "tag", "description", "skipToggle", "isNull", "invalid", "disabled", "required"], outputs: ["onToggleLabel"] }, { kind: "component", type: i19.ListContainerComponent, selector: "eo-list-container", inputs: ["applySelection", "applyVersion", "loading", "tabs", "parseDmsParams"] }, { kind: "component", type: i20.Error404Component, selector: "eo-error404" }, { kind: "component", type: i21.ObjectStateDetailsComponent, selector: "eo-object-state-details", inputs: ["plugins", "context", "selectedItem", "seenItems", "frontPageData", "visible"], outputs: ["onTabChange"] }, { kind: "component", type: i22.SplitViewComponent, selector: "yvc-split-view", inputs: ["direction", "gutterSize", "restrictMove", "disabled", "gutterDblClickDuration", "layoutSettingsID"], outputs: ["layoutSettingsChange", "dragStart", "dragEnd", "gutterClick", "gutterDblClick"] }, { kind: "directive", type: i22.SplitAreaDirective, selector: "[yvcSplitArea]", inputs: ["size", "order", "minSize", "maxSize", "panelClass", "visible"] }, { kind: "pipe", type: i13.TranslatePipe, name: "translate" }, { kind: "pipe", type: i23.LocaleDatePipe, name: "localeDate" }, { kind: "pipe", type: i24.PluginPipe, name: "plugins" }], animations: [panelLoadingAnimations] }); }
|
|
328
329
|
};
|
|
329
330
|
ObjectStateComponent = __decorate([
|
|
330
331
|
UntilDestroy()
|
|
@@ -332,11 +333,11 @@ ObjectStateComponent = __decorate([
|
|
|
332
333
|
export { ObjectStateComponent };
|
|
333
334
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ObjectStateComponent, decorators: [{
|
|
334
335
|
type: Component,
|
|
335
|
-
args: [{ selector: 'eo-object-state', providers: [ObjectStateService], animations: [panelLoadingAnimations], template: "<div class=\"file\" [ngClass]=\"{ready: context || context === null}\" *ngIf=\"!error; else errorTmpl\">\n\n <div class=\"file-head\" *ngIf=\"context && context.isContextFolder\">\n <div class=\"left\">\n <eo-icon class=\"type-icon\" [objectType]=\"context.type\"></eo-icon>\n <div class=\"title\" (click)=\"setupFrontPage()\" (contextmenu)=\"onContextMenuClicked($event)\">\n <div class=\"label\">{{context.title || ' '}}</div>\n <div class=\"description\">{{context.description || ' '}}</div>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"fold\">\n <span class=\"created-date\">{{context.created.on | localeDate}}</span>\n <span class=\"created-title\">{{context.created.by.title}}</span>\n </div>\n <div class=\"actions\">\n </div>\n </div>\n </div>\n\n <div class=\"file-body\">\n <div class=\"file-body-wrap\">\n\n <ng-container *ngIf=\"context !== null; else tplDetailsOnly\">\n\n <yvc-split-view *ngIf=\"cacheLayout\" [layoutSettingsID]=\"cacheLayout\">\n <ng-template yvcSplitArea [panelClass]=\"'tree'\" [size]=\"20\" [visible]=\"true\">\n <div class=\"tree-panel-error\" *ngIf=\"loadingState.tree.isError(); else tplTree\" translate>\n eo.state.object.tree.error</div>\n\n <ng-template #tplTree>\n\n <eo-list-container #eoList [loading]=\"!contextTree\" [tabs]=\"false\">\n <div class=\"eo-header dark\">\n <div class=\"eo-header-info\">\n <h2 class=\"eo-header-title\" translate>eo.state.object.tree.title</h2>\n <form name=\"structureForm\" class=\"tree-filter-form\" [ngClass]=\"{active: !!termFilter}\">\n <eo-form-input [skipToggle]=\"true\" [label]=\" 'eo.state.object.tree.filter.label' | translate\">\n <input [(ngModel)]=\"termFilter\" maxlength=\"250\" [ngModelOptions]=\"{standalone: true}\"\n (ngModelChange)=\"onTermFilterChange.emit($event)\" />\n </eo-form-input>\n </form>\n </div>\n </div>\n <div class=\"eo-body tree\">\n <eo-tree [tree]=\"contextTree\" [options]=\"{multiselect: false, disableDeselection: true}\"\n [@panelLoading]=\"loadingState.tree.state\" *ngIf=\"contextTree\" [highlightedNodes]=\"highlightedNodes\"\n [treeUpdate]=\"contextTreeUpdate\" [(ngModel)]=\"selectedNodes\"\n (ngModelChange)=\"onTreeSelectionChanged($event)\"></eo-tree>\n <h3 *ngIf=\"contextTreeRef?.length\" title=\"{{'eo.state.object.tree.references.tooltip'|translate}}\"\n translate>eo.state.object.tree.references</h3>\n <eo-tree [tree]=\"contextTreeRef\" [options]=\"{multiselect: false, disableDeselection: true}\"\n [@panelLoading]=\"loadingState.treeRef.state\" *ngIf=\"contextTreeRef?.length\"\n [highlightedNodes]=\"highlightedNodes\" [treeUpdate]=\"contextTreeRefUpdate\"\n [(ngModel)]=\"selectedNodes\" (ngModelChange)=\"onTreeSelectionChanged($event)\"\n class=\"reference\"></eo-tree>\n </div>\n </eo-list-container>\n\n </ng-template>\n </ng-template>\n\n <ng-template yvcSplitArea [panelClass]=\"'tree'\" [size]=\"35\" [visible]=\"true\">\n <eo-object-state-details *ngIf=\"context\" [context]=\"context\" [frontPageData]=\"frontPageData\"\n [visible]=\"frontPage\" (onTabChange)=\"setupFrontPage(true)\" [plugins]=\"'object-state-details-tab.object' | plugins\">\n </eo-object-state-details>\n\n <eo-result-list *ngIf=\"!frontPage && searchResult\" [selectFirst]=\"false\" [title]=\"gridTitle\"\n [reference]=\"selectedNode?.isReference\" [searchResult]=\"searchResult\" [configType]=\"configType\"\n [configContext]=\"\" [emptyMessage]=\"'eo.state.object.list.error'\" (onRefresh)=\"refreshList()\">\n </eo-result-list>\n </ng-template>\n\n <ng-template yvcSplitArea [size]=\"45\" [visible]=\"true\">\n <ng-container *ngTemplateOutlet=\"tplObjectDetails\"></ng-container>\n </ng-template>\n </yvc-split-view>\n\n </ng-container>\n\n <ng-template #tplDetailsOnly><ng-container *ngTemplateOutlet=\"tplObjectDetails\"></ng-container></ng-template>\n\n <ng-template #tplObjectDetails>\n <eo-object-details [applySelection]=\"{}\" [reference]=\"isReferenceActive\"\n [cacheLayout]=\"'object.state--' + typeName + '.object-details'\" [plugins]=\"'object-details-tab.object' | plugins\">\n </eo-object-details>\n </ng-template>\n </div>\n </div>\n</div>\n\n<ng-template #errorTmpl>\n <eo-error404></eo-error404>\n</ng-template
|
|
336
|
+
args: [{ selector: 'eo-object-state', providers: [ObjectStateService], animations: [panelLoadingAnimations], template: "<div class=\"file\" [ngClass]=\"{ready: context || context === null}\" *ngIf=\"!error; else errorTmpl\">\n\n <div class=\"file-head\" *ngIf=\"context && context.isContextFolder\">\n <div class=\"left\">\n <eo-icon class=\"type-icon\" [objectType]=\"context.type\"></eo-icon>\n <div class=\"title\" (click)=\"setupFrontPage()\" (contextmenu)=\"onContextMenuClicked($event)\">\n <div class=\"label\">{{context.title || ' '}}</div>\n <div class=\"description\">{{context.description || ' '}}</div>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"fold\">\n <span class=\"created-date\">{{context.created.on | localeDate}}</span>\n <span class=\"created-title\">{{context.created.by.title}}</span>\n </div>\n <div class=\"actions\">\n </div>\n </div>\n </div>\n\n <div class=\"file-body\">\n <div class=\"file-body-wrap\">\n\n <ng-container *ngIf=\"context !== null; else tplDetailsOnly\">\n\n <yvc-split-view *ngIf=\"cacheLayout\" [layoutSettingsID]=\"cacheLayout\">\n <ng-template yvcSplitArea [panelClass]=\"'tree'\" [size]=\"20\" [visible]=\"true\">\n <div class=\"tree-panel-error\" *ngIf=\"loadingState.tree.isError(); else tplTree\" translate>\n eo.state.object.tree.error</div>\n\n <ng-template #tplTree>\n\n <eo-list-container #eoList [loading]=\"!contextTree\" [tabs]=\"false\">\n <div class=\"eo-header dark\">\n <div class=\"eo-header-info\">\n <h2 class=\"eo-header-title\" translate>eo.state.object.tree.title</h2>\n <form name=\"structureForm\" class=\"tree-filter-form\" [ngClass]=\"{active: !!termFilter}\">\n <eo-form-input [skipToggle]=\"true\" [label]=\" 'eo.state.object.tree.filter.label' | translate\">\n <input [(ngModel)]=\"termFilter\" maxlength=\"250\" [ngModelOptions]=\"{standalone: true}\"\n (ngModelChange)=\"onTermFilterChange.emit($event)\" />\n </eo-form-input>\n </form>\n </div>\n </div>\n <div class=\"eo-body tree\">\n <eo-tree [tree]=\"contextTree\" [options]=\"{multiselect: false, disableDeselection: true}\"\n [@panelLoading]=\"loadingState.tree.state\" *ngIf=\"contextTree && (contextTree.length > 1 || (contextTree.length === 1 && contextTree[0].children.length && contextTree[0].name))\" [highlightedNodes]=\"highlightedNodes\"\n [treeUpdate]=\"contextTreeUpdate\" [(ngModel)]=\"selectedNodes\"\n (ngModelChange)=\"onTreeSelectionChanged($event)\"></eo-tree>\n <h3 *ngIf=\"contextTreeRef?.length\" title=\"{{'eo.state.object.tree.references.tooltip'|translate}}\"\n translate>eo.state.object.tree.references</h3>\n <eo-tree [tree]=\"contextTreeRef\" [options]=\"{multiselect: false, disableDeselection: true}\"\n [@panelLoading]=\"loadingState.treeRef.state\" *ngIf=\"contextTreeRef?.length\"\n [highlightedNodes]=\"highlightedNodes\" [treeUpdate]=\"contextTreeRefUpdate\"\n [(ngModel)]=\"selectedNodes\" (ngModelChange)=\"onTreeSelectionChanged($event)\"\n class=\"reference\"></eo-tree>\n </div>\n </eo-list-container>\n\n </ng-template>\n </ng-template>\n\n <ng-template yvcSplitArea [panelClass]=\"'tree'\" [size]=\"35\" [visible]=\"true\">\n <eo-object-state-details *ngIf=\"context\" [context]=\"context\" [frontPageData]=\"frontPageData\"\n [visible]=\"frontPage\" (onTabChange)=\"setupFrontPage(true)\" [plugins]=\"'object-state-details-tab.object' | plugins\">\n </eo-object-state-details>\n\n <eo-result-list *ngIf=\"!frontPage && searchResult\" [selectFirst]=\"false\" [title]=\"gridTitle\"\n [reference]=\"selectedNode?.isReference\" [searchResult]=\"searchResult\" [configType]=\"configType\"\n [configContext]=\"\" [emptyMessage]=\"'eo.state.object.list.error'\" (onRefresh)=\"refreshList()\">\n </eo-result-list>\n </ng-template>\n\n <ng-template yvcSplitArea [size]=\"45\" [visible]=\"true\">\n <ng-container *ngTemplateOutlet=\"tplObjectDetails\"></ng-container>\n </ng-template>\n </yvc-split-view>\n\n </ng-container>\n\n <ng-template #tplDetailsOnly><ng-container *ngTemplateOutlet=\"tplObjectDetails\"></ng-container></ng-template>\n\n <ng-template #tplObjectDetails>\n <eo-object-details [applySelection]=\"{}\" [reference]=\"isReferenceActive\"\n [cacheLayout]=\"'object.state--' + typeName + '.object-details'\" [plugins]=\"'object-details-tab.object' | plugins\">\n </eo-object-details>\n </ng-template>\n </div>\n </div>\n</div>\n\n<ng-template #errorTmpl>\n <eo-error404></eo-error404>\n</ng-template>\n", styles: [":host{position:absolute;left:var(--app-pane-padding);right:var(--app-pane-padding);top:var(--app-pane-padding);bottom:var(--app-pane-padding)}:host .eo-body.tree h3{margin:0;padding:calc(var(--app-pane-padding) / 2) var(--app-pane-padding) 0 var(--app-pane-padding);font-size:var(--font-subhead);font-weight:var(--font-weight-normal);color:var(--text-color-caption);border-top:1px solid var(--list-item-border-color)}:host .file{height:100%;display:flex;flex-flow:column}:host .file .file-head,:host .file .file-body{opacity:0;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}:host .file.ready .file-head,:host .file.ready .file-body{opacity:1}:host .file .empty-state{background:rgba(var(--color-white-rgb),.3);height:100%;display:flex;flex-flow:column;align-items:center;justify-content:center}:host .file.undocked .empty-state{background:var(--main-background)}:host .file-head{color:var(--text-color-caption);margin-bottom:calc(var(--app-pane-padding) / 4);display:flex;flex-flow:row nowrap;width:100%}:host .file-head eo-icon{padding:var(--app-pane-padding);box-sizing:content-box;flex:none}:host .file-head .left,:host .file-head .right{border-bottom:4px solid var(--color-primary-3);box-sizing:border-box}:host .file-head .left{flex:0 0 auto;display:flex;flex-flow:row nowrap;background:var(--color-white);max-width:calc(100% - 350px)}:host .file-head .left div.title{flex:1;padding:var(--app-pane-padding) 0;display:inline-grid;min-height:0;min-width:0;cursor:pointer}[dir=ltr] :host .file-head .left div.title{padding-right:calc(var(--app-pane-padding) * 2);padding-left:0}[dir=rtl] :host .file-head .left div.title{padding-left:calc(var(--app-pane-padding) * 2);padding-right:0}:host .file-head .left div.title .label,:host .file-head .left div.title .description{display:inline-block;max-width:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host .file-head .left div.title .label{font-size:var(--font-title)}:host .file-head .right{flex:1 1 auto;display:flex;flex-flow:column;min-width:350px}:host .file-head .right .fold{flex:0 0 auto;background:var(--main-background);color:var(--text-color-caption);text-align:right;padding-bottom:calc(var(--app-pane-padding) / 2);display:flex;justify-content:flex-end}[dir=rtl] :host .file-head .right .fold{text-align:right;text-align:left}:host .file-head .right .fold .created-date{padding-right:5px}:host .file-head .right .actions{background:var(--color-white);flex:1 1 auto;display:flex;align-items:center;padding:0 var(--app-pane-padding);justify-content:flex-end;min-height:50px}:host .file-body{flex:1 1 auto;position:relative}:host .file-body .file-body-wrap{position:absolute;inset:0;overflow:hidden}:host .file-body .file-body-wrap .frontPage{position:absolute;inset:0;overflow:hidden}:host ::ng-deep .tree .tree-panel-error{display:flex;height:100%;flex-flow:column;justify-content:center;align-items:center;color:var(--text-color-caption)}:host ::ng-deep .tree .eo-head{background-color:var(--color-primary-3)}:host ::ng-deep .tree .eo-head .eo-header-info{padding:0}:host ::ng-deep .tree .eo-head .eo-header-info h2{flex:1 1 auto;color:var(--color-white)}:host ::ng-deep .tree .eo-head .eo-header-info form.tree-filter-form{width:61%;flex:0 0 auto;margin-bottom:var(--app-pane-padding);min-width:200px;align-self:flex-end}:host ::ng-deep .tree .eo-head .eo-header-info form.tree-filter-form input{background-color:transparent;border:0;outline:0}:host ::ng-deep .tree eo-result-list .eo-head{background-color:var(--panel-background)}:host ::ng-deep yvc-split-view{height:100%}:host ::ng-deep eo-tree{padding:var(--app-pane-padding)}:host ::ng-deep eo-object-details{background:var(--panel-background-grey)}\n"] }]
|
|
336
337
|
}], ctorParameters: () => [{ type: i1.ActivatedRoute }, { type: i2.PageTitleService }, { type: i3.SystemService }, { type: i3.DmsService }, { type: i4.SelectionService }, { type: i3.TranslateService }, { type: i5.ObjectStateService }, { type: i6.ActionService }, { type: i7.LocationService }, { type: i8.PendingChangesService }, { type: i3.EventService }, { type: i9.GridService }, { type: i10.LayoutService }], propDecorators: { eoGrid: [{
|
|
337
338
|
type: ViewChild,
|
|
338
339
|
args: ['eoGrid']
|
|
339
340
|
}], onTermFilterChange: [{
|
|
340
341
|
type: Output
|
|
341
342
|
}] } });
|
|
342
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LXN0YXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L29iamVjdC1zdGF0ZS9vYmplY3Qtc3RhdGUvb2JqZWN0LXN0YXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L29iamVjdC1zdGF0ZS9vYmplY3Qtc3RhdGUvb2JqZWN0LXN0YXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBcUIsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU1RixPQUFPLEVBQXdCLFVBQVUsRUFBMkUsS0FBSyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQy9JLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDOUIsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTVDLE9BQU8sRUFBQyxZQUFZLEVBQUUsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFXbkUsT0FBTyxFQUFDLFlBQVksRUFBRSxzQkFBc0IsRUFBQyxNQUFNLDZEQUE2RCxDQUFDO0FBRWpILE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhDQUE4QyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVV6RSxJQUFNLG9CQUFvQixHQUExQixNQUFNLG9CQUFvQjtJQXNDL0IsWUFBb0IsS0FBcUIsRUFDL0IsWUFBOEIsRUFDOUIsYUFBNEIsRUFDNUIsVUFBc0IsRUFDdEIsU0FBMkIsRUFDNUIsU0FBMkIsRUFDM0IsV0FBK0IsRUFDOUIsYUFBNEIsRUFDNUIsUUFBeUIsRUFDekIsY0FBcUMsRUFDckMsWUFBMEIsRUFDMUIsV0FBd0IsRUFDeEIsYUFBNEI7UUFabEIsVUFBSyxHQUFMLEtBQUss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QUFFLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDO3FCQUN2RCxTQUFTLENBQUMsQ0FBQyxHQUFjLEVBQUUsRUFBRTtvQkFDNUIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7b0JBQ25CLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUM1QixDQUFDLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUU7b0JBQ2xCLG1DQUFtQztvQkFDbkMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7Z0JBQ3BCLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDUixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsV0FBVztRQUNULHdFQUF3RTtRQUN4RSxvQkFBb0I7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3pCLENBQUM7OEdBbldVLG9CQUFvQjtrR0FBcEIsb0JBQW9CLGlHQUhwQixDQUFDLGtCQUFrQixDQUFDLDRIQzNCakMsMDNKQTZGYywrNFBEakVBLENBQUMsc0JBQXNCLENBQUM7O0FBRXpCLG9CQUFvQjtJQVJoQyxZQUFZLEVBQUU7R0FRRixvQkFBb0IsQ0FxV2hDOzsyRkFyV1ksb0JBQW9CO2tCQVBoQyxTQUFTOytCQUNFLGlCQUFpQixhQUdoQixDQUFDLGtCQUFrQixDQUFDLGNBQ25CLENBQUMsc0JBQXNCLENBQUM7c2JBSWYsTUFBTTtzQkFBMUIsU0FBUzt1QkFBQyxRQUFRO2dCQW1CVCxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0dyaWRPcHRpb25zfSBmcm9tICdAYWctZ3JpZC1jb21tdW5pdHkvY29yZSc7XG5pbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7RG1zT2JqZWN0LCBEbXNTZXJ2aWNlLCBFbmFpb0V2ZW50LCBFdmVudFNlcnZpY2UsIE9iamVjdFR5cGUsIFNlYXJjaFJlc3VsdCwgU3lzdGVtU2VydmljZSwgVHJhbnNsYXRlU2VydmljZSwgVXRpbHN9IGZyb20gJ0Blby1zZGsvY29yZSc7XG5pbXBvcnQge2ZvcmtKb2lufSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VW50aWxEZXN0cm95LCB1bnRpbERlc3Ryb3llZH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcbmltcG9ydCB7R3JpZFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2VvLWZyYW1ld29yay1jb3JlL2FwaS9ncmlkLnNlcnZpY2UnO1xuaW1wb3J0IHtMYXlvdXRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS9sYXlvdXQvbGF5b3V0LnNlcnZpY2UnO1xuaW1wb3J0IHtMb2NhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2VvLWZyYW1ld29yay1jb3JlL2xvY2F0aW9uL2xvY2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHtQZW5kaW5nQ2hhbmdlc0NvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUvcGVuZGluZy1jaGFuZ2VzL3BlbmRpbmctY2hhbmdlcy1jb21wb25lbnQuaW50ZXJmYWNlJztcbmltcG9ydCB7UGVuZGluZ0NoYW5nZXNTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS9wZW5kaW5nLWNoYW5nZXMvcGVuZGluZy1jaGFuZ2VzLnNlcnZpY2UnO1xuaW1wb3J0IHtTZWxlY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS9zZWxlY3Rpb24vc2VsZWN0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHtQYWdlVGl0bGVTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS90aXRsZS9wYWdlLXRpdGxlLnNlcnZpY2UnO1xuaW1wb3J0IHtBY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb24tc2VydmljZS9hY3Rpb24uc2VydmljZSc7XG5pbXBvcnQge0dyaWRDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2VvLWZyYW1ld29yay9ncmlkL2dyaWQuY29tcG9uZW50JztcbmltcG9ydCB7VHJlZU5vZGV9IGZyb20gJy4uLy4uLy4uL2VvLWZyYW1ld29yay90cmVlL3RyZWUuY29tcG9uZW50LmludGVyZmFjZSc7XG5pbXBvcnQge1BhbmVsTG9hZGluZywgcGFuZWxMb2FkaW5nQW5pbWF0aW9uc30gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrL3VpL2FuaW1hdGlvbnMvcGFuZWwtbG9hZGluZy5hbmltYXRpb24nO1xuaW1wb3J0IHtGcm9udFBhZ2VEYXRhLCBPYmplY3RTZWFyY2hSZXN1bHR9IGZyb20gJy4uL29iamVjdC1zdGF0ZS1zZXJ2aWNlL29iamVjdC1zdGF0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHtPYmplY3RTdGF0ZVNlcnZpY2V9IGZyb20gJy4uL29iamVjdC1zdGF0ZS1zZXJ2aWNlL29iamVjdC1zdGF0ZS5zZXJ2aWNlJztcblxuQFVudGlsRGVzdHJveSgpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlby1vYmplY3Qtc3RhdGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vb2JqZWN0LXN0YXRlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vb2JqZWN0LXN0YXRlLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW09iamVjdFN0YXRlU2VydmljZV0sXG4gIGFuaW1hdGlvbnM6IFtwYW5lbExvYWRpbmdBbmltYXRpb25zXVxufSlcbmV4cG9ydCBjbGFzcyBPYmplY3RTdGF0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBQZW5kaW5nQ2hhbmdlc0NvbXBvbmVudCB7XG5cbiAgQFZpZXdDaGlsZCgnZW9HcmlkJykgZW9HcmlkOiBHcmlkQ29tcG9uZW50O1xuXG4gIGVycm9yID0gZmFsc2U7XG4gIGNvbnRleHQ6IERtc09iamVjdDtcbiAgc2VsZWN0ZWRJdGVtOiBEbXNPYmplY3Q7XG4gIGZyb250UGFnZTogYm9vbGVhbjtcbiAgZnJvbnRQYWdlRGF0YTogRnJvbnRQYWdlRGF0YTtcbiAgY29udGV4dFRyZWU6IFRyZWVOb2RlW107XG4gIGNvbnRleHRUcmVlVXBkYXRlOiBUcmVlTm9kZVtdO1xuICBjb250ZXh0VHJlZVJlZjogVHJlZU5vZGVbXTtcbiAgY29udGV4dFRyZWVSZWZVcGRhdGU6IFRyZWVOb2RlW107XG4gIHNlbGVjdGVkTm9kZXM6IFRyZWVOb2RlW107XG4gIHNlbGVjdGVkTm9kZTogVHJlZU5vZGU7XG4gIGhpZ2hsaWdodGVkTm9kZXM6IHN0cmluZ1tdO1xuICBpc1JlZmVyZW5jZUFjdGl2ZSA9IGZhbHNlO1xuICBwcml2YXRlIGV4cGFuZGVkTm9kZUlkczogc3RyaW5nW10gPSBbXTtcbiAgdGVybUZpbHRlcjogc3RyaW5nO1xuICBhbGxUeXBlczogc3RyaW5nW10gPSBbXTtcbiAgY29uZmlnVHlwZTogT2JqZWN0VHlwZTtcbiAgQE91dHB1dCgpIG9uVGVybUZpbHRlckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBncmlkT3B0aW9uczogR3JpZE9wdGlvbnM7XG4gIGdyaWRUaXRsZTogc3RyaW5nO1xuICBlbXB0eUdyaWQgPSB0cnVlO1xuXG4gIHNlYXJjaFJlc3VsdDogU2VhcmNoUmVzdWx0O1xuICB0eXBlTmFtZSA9ICcnO1xuICBjYWNoZUxheW91dCA9ICcnO1xuXG4gIGxvYWRpbmdTdGF0ZSA9IHtcbiAgICB0cmVlOiBuZXcgUGFuZWxMb2FkaW5nKCksXG4gICAgdHJlZVJlZjogbmV3IFBhbmVsTG9hZGluZygpLFxuICAgIGxpc3Q6IG5ldyBQYW5lbExvYWRpbmcoKSxcbiAgICBkZXRhaWxzOiBuZXcgUGFuZWxMb2FkaW5nKCksXG4gIH07XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSB0aXRsZVNlcnZpY2U6IFBhZ2VUaXRsZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzeXN0ZW1TZXJ2aWNlOiBTeXN0ZW1TZXJ2aWNlLFxuICAgIHByaXZhdGUgZG1zU2VydmljZTogRG1zU2VydmljZSxcbiAgICBwcml2YXRlIHNlbGVjdGlvbjogU2VsZWN0aW9uU2VydmljZSxcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHB1YmxpYyBvYmplY3RTdGF0ZTogT2JqZWN0U3RhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgYWN0aW9uU2VydmljZTogQWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGxvY2F0aW9uOiBMb2NhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwZW5kaW5nQ2hhbmdlczogUGVuZGluZ0NoYW5nZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBncmlkU2VydmljZTogR3JpZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsYXlvdXRTZXJ2aWNlOiBMYXlvdXRTZXJ2aWNlKSB7XG5cbiAgICB0aGlzLnRpdGxlU2VydmljZS5zZXRCYXNlVGl0bGUobnVsbCk7XG4gICAgdGhpcy5ncmlkT3B0aW9ucyA9IDxHcmlkT3B0aW9ucz57fTtcblxuICAgIHRoaXMub25UZXJtRmlsdGVyQ2hhbmdlXG4gICAgICAucGlwZShkZWJvdW5jZVRpbWUoMTAwMCkpXG4gICAgICAuc3Vic2NyaWJlKHYgPT4gdGhpcy5zZXR1cEZyb250UGFnZSh0cnVlKSk7XG5cbiAgICAvLyBzdWJzY3JpYmUgZm9yIGRhdGEgZnJvbSB0aGUgY29ubmVjdGVkIHNlcnZpY2VcbiAgICB0aGlzLm9iamVjdFN0YXRlXG4gICAgICAubGlzdCRcbiAgICAgIC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgLnN1YnNjcmliZSgocmVzOiBPYmplY3RTZWFyY2hSZXN1bHQpID0+IHtcbiAgICAgICAgdGhpcy5mcm9udFBhZ2UgPSAhcmVzO1xuICAgICAgICBpZiAocmVzKSB7XG4gICAgICAgICAgLy8gc2V0dXAgdGhlIGdyaWQgd2l0aCB0aGUgbmV3IGRhdGFcbiAgICAgICAgICBsZXQge25hbWUsIHJlc3VsdH0gPSByZXM7XG4gICAgICAgICAgdGhpcy5lbXB0eUdyaWQgPSByZXN1bHQuY291bnQudmFsdWUgPT09IDA7XG4gICAgICAgICAgdGhpcy5ncmlkVGl0bGUgPSBuYW1lO1xuICAgICAgICAgIHRoaXMuY29uZmlnVHlwZSA9IHRoaXMuc3lzdGVtU2VydmljZS5nZXRPYmplY3RUeXBlKHJlc3VsdC50eXBlTmFtZSkgfHwge3FuYW1lOiByZXN1bHQudHlwZU5hbWV9IGFzIE9iamVjdFR5cGU7XG4gICAgICAgICAgdGhpcy5zZWFyY2hSZXN1bHQgPSByZXN1bHQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyB0aGlzLmxvYWRpbmdTdGF0ZS5saXN0LnJlYWR5KCk7XG4gICAgICB9KTtcblxuICAgIHRoaXMub2JqZWN0U3RhdGUudHJlZSRcbiAgICAgIC5waXBlKFxuICAgICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShyZXMgPT4gdGhpcy5idWlsZENvbnRleHRUcmVlKHJlcy5mb2xkZXIpKTtcblxuICAgIHRoaXMub2JqZWN0U3RhdGUudHJlZVJlZiRcbiAgICAgIC5waXBlKFxuICAgICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShyZXMgPT4gdGhpcy5idWlsZENvbnRleHRUcmVlUmVmKHJlcy5mb2xkZXIpKTtcblxuICAgIHRoaXMuc2VsZWN0aW9uLmZvY3VzJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHVudGlsRGVzdHJveWVkKHRoaXMpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChpdGVtOiBEbXNPYmplY3QpID0+IHtcbiAgICAgICAgaWYgKGl0ZW0pIHtcbiAgICAgICAgICB0aGlzLmhpZ2hsaWdodChpdGVtLmlkKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbSA9IGl0ZW07XG4gICAgICAgIC8vIHRoaXMubG9hZGluZ1N0YXRlLmRldGFpbHMucmVhZHkoKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5ldmVudFNlcnZpY2VcbiAgICAgIC5vbihFbmFpb0V2ZW50LkRNU19PQkpFQ1RfREVMRVRFRClcbiAgICAgIC5waXBlKFxuICAgICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoZXZ0KSA9PiB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLmNvbnRleHQgJiYgdGhpcy5jb250ZXh0LmlkID09PSBldnQuZGF0YS5pZCkge1xuICAgICAgICAgICAgdGhpcy5jb250ZXh0ID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuZXJyb3IgPSB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAodGhpcy5mcm9udFBhZ2UpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0dXBGcm9udFBhZ2UoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy51cGRhdGVDb250ZXh0VHJlZSgpO1xuICAgICAgICB9LCAxMDAwKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5ldmVudFNlcnZpY2VcbiAgICAgIC5vbihFbmFpb0V2ZW50LkRNU19PQkpFQ1RfVVBEQVRFRClcbiAgICAgIC5waXBlKFxuICAgICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRleHQgJiYgZXZlbnQuZGF0YSAmJiB0aGlzLmNvbnRleHQuaWQgPT09IGV2ZW50LmRhdGEuaWQpIHtcbiAgICAgICAgICB0aGlzLmNvbnRleHQgPSBldmVudC5kYXRhO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmZyb250UGFnZSkge1xuICAgICAgICAgIHRoaXMuc2V0dXBGcm9udFBhZ2UodHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy51cGRhdGVDb250ZXh0VHJlZSgpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmV2ZW50U2VydmljZVxuICAgICAgLm9uKEVuYWlvRXZlbnQuRE1TX09CSkVDVF9QQVNURUQpXG4gICAgICAucGlwZShcbiAgICAgICAgdW50aWxEZXN0cm95ZWQodGhpcylcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKGV2dCkgPT4ge1xuICAgICAgICBjb25zdCBuYW1lID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uY2xpcGJvYXJkLnBhc3RlLnJlc3VsdGxpc3QuaGVhZGxpbmUnKTtcbiAgICAgICAgdGhpcy5vYmplY3RTdGF0ZVxuICAgICAgICAgIC5zZWxlY3RUcmVlTm9kZSg8YW55Pnt9LCA8YW55PntuYW1lfSwge2lkOiBldnQuZGF0YS5tYXAoZCA9PiBkLmlkKX0pLnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLnVwZGF0ZUNvbnRleHRUcmVlKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIGhhc1BlbmRpbmdDaGFuZ2VzKCkge1xuICAgIHJldHVybiB0aGlzLnBlbmRpbmdDaGFuZ2VzLmhhc1BlbmRpbmdUYXNrKCk7XG4gIH1cblxuICBvbkV4cGFuZGVkTm9kZXNDaGFuZ2VkKGV4cGFuZGVkTm9kZXM6IHN0cmluZ1tdKSB7XG4gICAgdGhpcy5leHBhbmRlZE5vZGVJZHMgPSBleHBhbmRlZE5vZGVzO1xuICB9XG5cbiAgLy8gc2VsZWN0IGFuIGVudHJ5IGZyb20gdGhlIHRyZWVcbiAgb25UcmVlU2VsZWN0aW9uQ2hhbmdlZChub2RlOiBUcmVlTm9kZSkge1xuICAgIHRoaXMubG9jYXRpb24ubGVhdmUoKTtcbiAgICB0aGlzLnNlbGVjdGVkTm9kZSA9IG5vZGU7XG4gICAgaWYgKG5vZGUuZGF0YS50eXBlKSB7XG4gICAgICB0aGlzLmxvY2F0aW9uLmVudGVyKHRoaXMuY29udGV4dCwgdGhpcy5zZWxlY3RlZE5vZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvY2F0aW9uLmVudGVyKHRoaXMuY29udGV4dCk7XG4gICAgfVxuICAgIGlmIChub2RlKSB7XG4gICAgICB0aGlzLmdyaWRTZXJ2aWNlLnVwZGF0ZUNvbnRleHQobm9kZS5pc1JlZmVyZW5jZSB8fCB0aGlzLmFsbFR5cGVzLmluY2x1ZGVzKG5vZGUuZGF0YS50eXBlKSA/IFtub2RlLmRhdGEudHlwZV0gOiB0aGlzLmFsbFR5cGVzKTtcbiAgICAgIHRoaXMubG9hZGluZ1N0YXRlLmxpc3RcbiAgICAgICAgLnN1YnNjcmliZShub2RlLmlzUmVmZXJlbmNlID9cbiAgICAgICAgICB0aGlzLm9iamVjdFN0YXRlLnNlbGVjdFRyZWVOb2RlKHRoaXMuY29udGV4dCwgbm9kZSwge3Rlcm06IHRoaXMudGVybUZpbHRlcn0sICdyZWZlcmVuY2V2aWV3JykgOlxuICAgICAgICAgIHRoaXMub2JqZWN0U3RhdGUuc2VsZWN0VHJlZU5vZGUodGhpcy5jb250ZXh0LCBub2RlLCB7dGVybTogdGhpcy50ZXJtRmlsdGVyfSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNldHVwRnJvbnRQYWdlKCk7XG4gICAgfVxuICB9XG5cbiAgb25Db250ZXh0TWVudUNsaWNrZWQoZXZ0LCBkb2M/KSB7XG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuYWN0aW9uU2VydmljZS5zaG93QWN0aW9ucyhbZG9jIHx8IHRoaXMuY29udGV4dF0sICdETVNfT0JKRUNUJyk7XG4gIH1cblxuICByZWZyZXNoTGlzdCgpIHtcbiAgICB0aGlzLm9uVHJlZVNlbGVjdGlvbkNoYW5nZWQodGhpcy5zZWxlY3RlZE5vZGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBwcm9jZXNzKGl0ZW06IERtc09iamVjdCwgc2VsZWN0ZWRJZD8pIHtcbiAgICBpZiAoaXRlbS5pc0NvbnRleHRGb2xkZXIpIHtcbiAgICAgIC8vIGlmIHRoZXJlIGFscmVhZHkgaXMgYSBjb250ZXh0IHNldCwgd2UgbmVlZCB0byBsZWF2ZSBsb2NhdGlvbiBmb3IgdGhlIG9sZCBjb250ZXh0IGZpcnN0XG4gICAgICAvLyBvdGhlcndpc2UgVXBsb2FkVGFyZ2V0cyB3aWxsIG5vdCBiZSB1bnJlZ2lzdGVyZWQgY29ycmVjdGx5XG4gICAgICBpZiAodGhpcy5jb250ZXh0KSB7XG4gICAgICAgIHRoaXMubG9jYXRpb24ubGVhdmUoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY29udGV4dCA9IGl0ZW07XG4gICAgICB0aGlzLmNhY2hlTGF5b3V0ID0gJ29iamVjdC5zdGF0ZS0tJyArIGl0ZW0udHlwZU5hbWU7XG4gICAgICAvLyBhZGQgdGhpcyBsb2NhdGlvbiB0byB0aGUgbG9jYXRpb24gc2VydmljZSwgd2hpY2ggd2lsbCB0cmFjayBhY3RpdmUgbG9jYXRpb25zXG4gICAgICAvLyBhbmQgaGFuZGxlIGEgaGlzdG9yeSBvZiB2aXNpdGVkIGxvY2F0aW9ucy5cbiAgICAgIHRoaXMubG9jYXRpb24uZW50ZXIodGhpcy5jb250ZXh0LCB0aGlzLnNlbGVjdGVkTm9kZSk7XG5cbiAgICAgIHRoaXMub2JqZWN0U3RhdGUubG9hZFRyZWVCeVF1ZXJ5KHRoaXMuY29udGV4dC5pZCwgdGhpcy5jb250ZXh0LnR5cGVOYW1lLCB7ZGVmaW5pdGlvbjogW3tmaWVsZDogJ3R5cGUnLCBrZXk6ICdUeXBlcycsIHNpemU6IDEwMDB9XX0pXG4gICAgICAgIC5zdWJzY3JpYmUodHlwZXMgPT4gKHRoaXMuYWxsVHlwZXMgPSAodHlwZXMuZm9sZGVyWzBdLmZvbGRlciB8fCBbXSkubWFwKHQgPT4gdC50eXBlKSkpO1xuXG4gICAgICB0aGlzLmZldGNoVHJlZURhdGEoJycsIHNlbGVjdGVkSWQpO1xuICAgICAgdGhpcy5zZXR1cEZyb250UGFnZSh0cnVlKTtcblxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBmZXRjaCB0aGUgY29udGV4dCBmb2xkZXJcbiAgICAgIGlmIChpdGVtLmNvbnRleHRGb2xkZXIpIHtcbiAgICAgICAgdGhpcy5jYWNoZUxheW91dCA9ICdvYmplY3Quc3RhdGUtLScgKyBpdGVtLmNvbnRleHRGb2xkZXIudHlwZU5hbWU7XG4gICAgICAgIHRoaXMuZG1zU2VydmljZVxuICAgICAgICAgIC5nZXREbXNPYmplY3QoaXRlbS5jb250ZXh0Rm9sZGVyLmlkLCBpdGVtLmNvbnRleHRGb2xkZXIudHlwZU5hbWUsIG51bGwsICdERVRBSUxTJylcbiAgICAgICAgICAuc3Vic2NyaWJlKChyZXM6IERtc09iamVjdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5wcm9jZXNzKHJlcywgaXRlbS5pZCk7XG4gICAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBqdXN0IHRoZSBkb2N1bWVudCBpbiByb290XG4gICAgICAgIHRoaXMuY29udGV4dCA9IG51bGw7XG4gICAgICAgIHRoaXMuY2FjaGVMYXlvdXQgPSAnJztcbiAgICAgICAgLy8gaGlkZSBlbXB0eSB0cmVlICYgbGlzdFxuICAgICAgICAvLyB0aGlzLmxheW91dFNlcnZpY2UuaGlkZUFyZWFzKChhLCBpKSA9PiBpIDwgMik7XG4gICAgICB9XG4gICAgfVxuICAgIC8vIHRoaXMubGF5b3V0U2VydmljZS52aXNpYmlsaXR5VXBkYXRlKCk7XG4gIH1cblxuICBzZXR1cEZyb250UGFnZSh1cGRhdGVTZWxlY3Rpb24gPSBmYWxzZSwgdXBkYXRlVHJlZSA9IGZhbHNlKSB7XG4gICAgdGhpcy5vYmplY3RTdGF0ZVxuICAgICAgLnNlbGVjdEZyb250UGFnZSh0aGlzLmNvbnRleHQpXG4gICAgICAuc3Vic2NyaWJlKChkYXRhKSA9PiB7XG4gICAgICAgIHRoaXMuZnJvbnRQYWdlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5mcm9udFBhZ2VEYXRhID0gZGF0YTtcbiAgICAgIH0pO1xuXG4gICAgaWYgKCF1cGRhdGVTZWxlY3Rpb24pIHtcbiAgICAgIHRoaXMubG9jYXRpb24ubGVhdmUoKTtcbiAgICAgIHRoaXMuc2VsZWN0aW9uLmZvY3VzKHRoaXMuY29udGV4dCk7XG4gICAgICB0aGlzLmxvY2F0aW9uLmVudGVyKHRoaXMuY29udGV4dCk7XG4gICAgfVxuXG4gICAgaWYgKCF1cGRhdGVUcmVlKSB7XG4gICAgICB0aGlzLmZldGNoVHJlZURhdGEodGhpcy50ZXJtRmlsdGVyKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZldGNoVHJlZURhdGEodGVybUZpbHRlcj86IHN0cmluZywgc2VsZWN0ZWRJZD86IGFueSkge1xuICAgIHRoaXMuaGlnaGxpZ2h0KHNlbGVjdGVkSWQpO1xuICAgIHRoaXMubG9hZGluZ1N0YXRlLnRyZWUuc3Vic2NyaWJlKHRoaXMub2JqZWN0U3RhdGUudXBkYXRlVHJlZUJ5UXVlcnkodGhpcy5jb250ZXh0LCB7dGVybTogdGVybUZpbHRlcn0pKTtcbiAgICB0aGlzLmxvYWRpbmdTdGF0ZS50cmVlUmVmLnN1YnNjcmliZSh0aGlzLm9iamVjdFN0YXRlLnVwZGF0ZVRyZWVCeVF1ZXJ5KHRoaXMuY29udGV4dCwge3Rlcm06IHRlcm1GaWx0ZXJ9LCAncmVmZXJlbmNldmlldycpKTtcbiAgfVxuXG4gIHByaXZhdGUgaGlnaGxpZ2h0KHNlbGVjdGVkSWQpIHtcbiAgICBpZiAoc2VsZWN0ZWRJZCAmJiB0aGlzLmNvbnRleHQpIHtcbiAgICAgIGZvcmtKb2luKFtcbiAgICAgICAgdGhpcy5vYmplY3RTdGF0ZS5sb2FkVHJlZUJ5UXVlcnkodGhpcy5jb250ZXh0LmlkLCB0aGlzLmNvbnRleHQudHlwZU5hbWUsIHtpZDogc2VsZWN0ZWRJZH0pLFxuICAgICAgICB0aGlzLm9iamVjdFN0YXRlLmxvYWRUcmVlQnlRdWVyeSh0aGlzLmNvbnRleHQuaWQsIHRoaXMuY29udGV4dC50eXBlTmFtZSwge2lkOiBzZWxlY3RlZElkfSwgJ3JlZmVyZW5jZXZpZXcnKVxuICAgICAgXSkuc3Vic2NyaWJlKChyZXMpID0+IHtcbiAgICAgICAgdGhpcy5oaWdobGlnaHRlZE5vZGVzID0gdGhpcy5oaWdobGlnaHROb2RlcyhbLi4ucmVzWzBdLmZvbGRlciwgLi4ucmVzWzFdLmZvbGRlcl0pO1xuICAgICAgICB0aGlzLmlzUmVmZXJlbmNlQWN0aXZlID0gISEocmVzWzFdLnRvdGFsLnZhbHVlICYmICFyZXNbMF0udG90YWwudmFsdWUpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGlnaGxpZ2h0ZWROb2RlcyA9IFtdO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ29udGV4dFRyZWUoKSB7XG4gICAgaWYgKHRoaXMuY29udGV4dCkge1xuICAgICAgdGhpcy5vYmplY3RTdGF0ZVxuICAgICAgICAubG9hZFRyZWVCeVF1ZXJ5KHRoaXMuY29udGV4dC5pZCwgdGhpcy5jb250ZXh0LnR5cGVOYW1lLCB7dGVybTogdGhpcy50ZXJtRmlsdGVyfSlcbiAgICAgICAgLnN1YnNjcmliZShyZXMgPT4gdGhpcy5jb250ZXh0VHJlZVVwZGF0ZSA9IHJlcy5mb2xkZXIubWFwKGYgPT4gdGhpcy5hZGRUcmVlTm9kZShmLCBbXSkpKTtcbiAgICAgIHRoaXMub2JqZWN0U3RhdGVcbiAgICAgICAgLmxvYWRUcmVlQnlRdWVyeSh0aGlzLmNvbnRleHQuaWQsIHRoaXMuY29udGV4dC50eXBlTmFtZSwge3Rlcm06IHRoaXMudGVybUZpbHRlcn0sICdyZWZlcmVuY2V2aWV3JylcbiAgICAgICAgLnN1YnNjcmliZShyZXMgPT4gdGhpcy5jb250ZXh0VHJlZVJlZlVwZGF0ZSA9IHJlcy5mb2xkZXIubWFwKGYgPT4gdGhpcy5hZGRUcmVlTm9kZShmLCBbXSwgdHJ1ZSkpKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGhpZ2hsaWdodE5vZGVzKGZvbGRlciA9IFtdLCBub2RlcyA9IFtdKSB7XG4gICAgZm9sZGVyLmZvckVhY2goZiA9PiB7XG4gICAgICBpZiAoZi5jb3VudCkge1xuICAgICAgICBub2Rlcy5wdXNoKGYua2V5KTtcbiAgICAgIH1cbiAgICAgIGlmIChmLmZvbGRlcikge1xuICAgICAgICB0aGlzLmhpZ2hsaWdodE5vZGVzKGYuZm9sZGVyLCBub2Rlcyk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIG5vZGVzO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZENvbnRleHRUcmVlKGZvbGRlciA9IFtdKSB7XG4gICAgdGhpcy5jb250ZXh0VHJlZVVwZGF0ZSA9IG51bGw7XG4gICAgdGhpcy5jb250ZXh0VHJlZSA9IGZvbGRlci5tYXAoZiA9PiB0aGlzLmFkZFRyZWVOb2RlKGYsIFtdKSk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkQ29udGV4dFRyZWVSZWYoZm9sZGVyID0gW10pIHtcbiAgICB0aGlzLmNvbnRleHRUcmVlUmVmVXBkYXRlID0gbnVsbDtcbiAgICB0aGlzLmNvbnRleHRUcmVlUmVmID0gZm9sZGVyLm1hcChmID0+IHRoaXMuYWRkVHJlZU5vZGUoZiwgW10sIHRydWUpKTtcblxuICB9XG5cbiAgcHJpdmF0ZSBhZGRUcmVlTm9kZShub2RlRGF0YSwgcGF0aDogc3RyaW5nW10sIGlzUmVmZXJlbmNlID0gZmFsc2UpIHtcbiAgICBjb25zdCB7a2V5LCB0aXRsZSwgZm9sZGVyLCBleHBhbmRlZCwgY291bnQsIHN0YXRzfSA9IG5vZGVEYXRhO1xuICAgIC8vIGltcG9ydGFudCB0byBjcmVhdGUgY2xvbmUgaGVyZSwgYmVjYXVzZSBvdGhlcndpc2UgcGF0aCB3aWxsIGJlIG1lc3NlZCB1cFxuICAgIGNvbnN0IHAgPSBwYXRoLmNvbmNhdChbdGl0bGVdKTtcbiAgICBsZXQgbm9kZTogVHJlZU5vZGUgPSB7XG4gICAgICBpZDoga2V5LFxuICAgICAgbmFtZTogdGl0bGUsXG4gICAgICBwYXRoOiBwLFxuICAgICAgY2hpbGRyZW46IChmb2xkZXIgfHwgW10pLm1hcChmID0+IHRoaXMuYWRkVHJlZU5vZGUoZiwgcCwgaXNSZWZlcmVuY2UpKSxcbiAgICAgIGV4cGFuZGVkOiBleHBhbmRlZCB8fCAhIX50aGlzLmV4cGFuZGVkTm9kZUlkcy5pbmRleE9mKGtleSksXG4gICAgICBzZWxlY3RlZDogZmFsc2UsXG4gICAgICBzZWxlY3RhYmxlOiB0cnVlLFxuICAgICAgaXNSZWZlcmVuY2UsXG4gICAgICBiYWRnZXM6IChzdGF0cyB8fCBbXSkubWFwKHN0YXQgPT4gT2JqZWN0LmFzc2lnbih7XG4gICAgICAgIHZhbHVlOiBzdGF0LnZhbHVlICsgJyAnICsgc3RhdC50aXRsZSxcbiAgICAgICAgY3NzQ2xhc3M6ICdzdGF0cydcbiAgICAgIH0pKSxcbiAgICAgIGRhdGE6IG5vZGVEYXRhXG4gICAgfTtcblxuICAgIGlmIChjb3VudCkge1xuICAgICAgbm9kZS5iYWRnZXMucHVzaCh7dmFsdWU6IGNvdW50fSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnJvdXRlLnVybFxuICAgICAgLnBpcGUoXG4gICAgICAgIHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2FjaGVMYXlvdXQgPSAnJztcbiAgICAgICAgLy8gdGhpcy5sYXlvdXRTZXJ2aWNlLmhpZGVBcmVhcygoKSA9PiBmYWxzZSk7XG4gICAgICAgIGNvbnN0IHtwYXJhbXMsIHF1ZXJ5UGFyYW1zfSA9IHRoaXMucm91dGUuc25hcHNob3Q7XG4gICAgICAgIGlmIChwYXJhbXMuaWQpIHtcbiAgICAgICAgICB0aGlzLnR5cGVOYW1lID0gcXVlcnlQYXJhbXNbJ3R5cGUnXSB8fCAnJztcbiAgICAgICAgICB0aGlzLnNlbGVjdGlvbi5mb2N1cyh7aWQ6IHBhcmFtcy5pZCwgdHlwZU5hbWU6IHRoaXMudHlwZU5hbWV9KTtcbiAgICAgICAgICB0aGlzLmRtc1NlcnZpY2VcbiAgICAgICAgICAgIC5nZXREbXNPYmplY3QocGFyYW1zLmlkLCB0aGlzLnR5cGVOYW1lLCBudWxsLCAnREVUQUlMUycpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChyZXM6IERtc09iamVjdCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmVycm9yID0gZmFsc2U7XG4gICAgICAgICAgICAgIHRoaXMucHJvY2VzcyhyZXMpO1xuICAgICAgICAgICAgICB0aGlzLnNlbGVjdGlvbi5mb2N1cyhyZXMpO1xuICAgICAgICAgICAgfSwgVXRpbHMudGhyb3coKCkgPT4ge1xuICAgICAgICAgICAgICAvLyB0aGlzLmxheW91dFNlcnZpY2Uuc2V0QXJlYXMoW10pO1xuICAgICAgICAgICAgICB0aGlzLmVycm9yID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICAvLyB3aGVuIHRoZSBjb21wb25lbnQgaXMgZGVzdHJveWVkLCB3ZSB0ZWxsIHRoZSBsb2NhdGlvbiBzZXJ2aWNlIHRoYXQgd2VcbiAgICAvLyBsZWZ0IHRoZSBsb2NhdGlvblxuICAgIHRoaXMubG9jYXRpb24ubGVhdmUoKTtcbiAgICB0aGlzLnNlbGVjdGlvbi5jbGVhcigpO1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJmaWxlXCIgW25nQ2xhc3NdPVwie3JlYWR5OiBjb250ZXh0IHx8IGNvbnRleHQgPT09IG51bGx9XCIgKm5nSWY9XCIhZXJyb3I7IGVsc2UgZXJyb3JUbXBsXCI+XG5cbiAgPGRpdiBjbGFzcz1cImZpbGUtaGVhZFwiICpuZ0lmPVwiY29udGV4dCAmJiBjb250ZXh0LmlzQ29udGV4dEZvbGRlclwiPlxuICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCI+XG4gICAgICA8ZW8taWNvbiBjbGFzcz1cInR5cGUtaWNvblwiIFtvYmplY3RUeXBlXT1cImNvbnRleHQudHlwZVwiPjwvZW8taWNvbj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0aXRsZVwiIChjbGljayk9XCJzZXR1cEZyb250UGFnZSgpXCIgKGNvbnRleHRtZW51KT1cIm9uQ29udGV4dE1lbnVDbGlja2VkKCRldmVudClcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImxhYmVsXCI+e3tjb250ZXh0LnRpdGxlIHx8ICcmbmJzcDsnfX08L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRlc2NyaXB0aW9uXCI+e3tjb250ZXh0LmRlc2NyaXB0aW9uIHx8ICcmbmJzcDsnfX08L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJyaWdodFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImZvbGRcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJjcmVhdGVkLWRhdGVcIj57e2NvbnRleHQuY3JlYXRlZC5vbiB8IGxvY2FsZURhdGV9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJjcmVhdGVkLXRpdGxlXCI+e3tjb250ZXh0LmNyZWF0ZWQuYnkudGl0bGV9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbnNcIj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiZmlsZS1ib2R5XCI+XG4gICAgPGRpdiBjbGFzcz1cImZpbGUtYm9keS13cmFwXCI+XG5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb250ZXh0ICE9PSBudWxsOyBlbHNlIHRwbERldGFpbHNPbmx5XCI+XG5cbiAgICAgICAgPHl2Yy1zcGxpdC12aWV3ICpuZ0lmPVwiY2FjaGVMYXlvdXRcIiBbbGF5b3V0U2V0dGluZ3NJRF09XCJjYWNoZUxheW91dFwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSB5dmNTcGxpdEFyZWEgW3BhbmVsQ2xhc3NdPVwiJ3RyZWUnXCIgW3NpemVdPVwiMjBcIiBbdmlzaWJsZV09XCJ0cnVlXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJlZS1wYW5lbC1lcnJvclwiICpuZ0lmPVwibG9hZGluZ1N0YXRlLnRyZWUuaXNFcnJvcigpOyBlbHNlIHRwbFRyZWVcIiB0cmFuc2xhdGU+XG4gICAgICAgICAgICAgIGVvLnN0YXRlLm9iamVjdC50cmVlLmVycm9yPC9kaXY+XG5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjdHBsVHJlZT5cblxuICAgICAgICAgICAgICA8ZW8tbGlzdC1jb250YWluZXIgI2VvTGlzdCBbbG9hZGluZ109XCIhY29udGV4dFRyZWVcIiBbdGFic109XCJmYWxzZVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJlby1oZWFkZXIgZGFya1wiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVvLWhlYWRlci1pbmZvXCI+XG4gICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImVvLWhlYWRlci10aXRsZVwiIHRyYW5zbGF0ZT5lby5zdGF0ZS5vYmplY3QudHJlZS50aXRsZTwvaDI+XG4gICAgICAgICAgICAgICAgICAgIDxmb3JtIG5hbWU9XCJzdHJ1Y3R1cmVGb3JtXCIgY2xhc3M9XCJ0cmVlLWZpbHRlci1mb3JtXCIgW25nQ2xhc3NdPVwie2FjdGl2ZTogISF0ZXJtRmlsdGVyfVwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxlby1mb3JtLWlucHV0IFtza2lwVG9nZ2xlXT1cInRydWVcIiBbbGFiZWxdPVwiICdlby5zdGF0ZS5vYmplY3QudHJlZS5maWx0ZXIubGFiZWwnIHwgdHJhbnNsYXRlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgWyhuZ01vZGVsKV09XCJ0ZXJtRmlsdGVyXCIgbWF4bGVuZ3RoPVwiMjUwXCIgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVGVybUZpbHRlckNoYW5nZS5lbWl0KCRldmVudClcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZW8tZm9ybS1pbnB1dD5cbiAgICAgICAgICAgICAgICAgICAgPC9mb3JtPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVvLWJvZHkgdHJlZVwiPlxuICAgICAgICAgICAgICAgICAgPGVvLXRyZWUgW3RyZWVdPVwiY29udGV4dFRyZWVcIiBbb3B0aW9uc109XCJ7bXVsdGlzZWxlY3Q6IGZhbHNlLCBkaXNhYmxlRGVzZWxlY3Rpb246IHRydWV9XCJcbiAgICAgICAgICAgICAgICAgICAgW0BwYW5lbExvYWRpbmddPVwibG9hZGluZ1N0YXRlLnRyZWUuc3RhdGVcIiAqbmdJZj1cImNvbnRleHRUcmVlXCIgW2hpZ2hsaWdodGVkTm9kZXNdPVwiaGlnaGxpZ2h0ZWROb2Rlc1wiXG4gICAgICAgICAgICAgICAgICAgIFt0cmVlVXBkYXRlXT1cImNvbnRleHRUcmVlVXBkYXRlXCIgWyhuZ01vZGVsKV09XCJzZWxlY3RlZE5vZGVzXCJcbiAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25UcmVlU2VsZWN0aW9uQ2hhbmdlZCgkZXZlbnQpXCI+PC9lby10cmVlPlxuICAgICAgICAgICAgICAgICAgPGgzICpuZ0lmPVwiY29udGV4dFRyZWVSZWY/Lmxlbmd0aFwiIHRpdGxlPVwie3snZW8uc3RhdGUub2JqZWN0LnRyZWUucmVmZXJlbmNlcy50b29sdGlwJ3x0cmFuc2xhdGV9fVwiXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0ZT5lby5zdGF0ZS5vYmplY3QudHJlZS5yZWZlcmVuY2VzPC9oMz5cbiAgICAgICAgICAgICAgICAgIDxlby10cmVlIFt0cmVlXT1cImNvbnRleHRUcmVlUmVmXCIgW29wdGlvbnNdPVwie211bHRpc2VsZWN0OiBmYWxzZSwgZGlzYWJsZURlc2VsZWN0aW9uOiB0cnVlfVwiXG4gICAgICAgICAgICAgICAgICAgIFtAcGFuZWxMb2FkaW5nXT1cImxvYWRpbmdTdGF0ZS50cmVlUmVmLnN0YXRlXCIgKm5nSWY9XCJjb250ZXh0VHJlZVJlZj8ubGVuZ3RoXCJcbiAgICAgICAgICAgICAgICAgICAgW2hpZ2hsaWdodGVkTm9kZXNdPVwiaGlnaGxpZ2h0ZWROb2Rlc1wiIFt0cmVlVXBkYXRlXT1cImNvbnRleHRUcmVlUmVmVXBkYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZE5vZGVzXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25UcmVlU2VsZWN0aW9uQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJyZWZlcmVuY2VcIj48L2VvLXRyZWU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZW8tbGlzdC1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSB5dmNTcGxpdEFyZWEgW3BhbmVsQ2xhc3NdPVwiJ3RyZWUnXCIgW3NpemVdPVwiMzVcIiBbdmlzaWJsZV09XCJ0cnVlXCI+XG4gICAgICAgICAgICA8ZW8tb2JqZWN0LXN0YXRlLWRldGFpbHMgKm5nSWY9XCJjb250ZXh0XCIgW2NvbnRleHRdPVwiY29udGV4dFwiIFtmcm9udFBhZ2VEYXRhXT1cImZyb250UGFnZURhdGFcIlxuICAgICAgICAgICAgICBbdmlzaWJsZV09XCJmcm9udFBhZ2VcIiAob25UYWJDaGFuZ2UpPVwic2V0dXBGcm9udFBhZ2UodHJ1ZSlcIiBbcGx1Z2luc109XCInb2JqZWN0LXN0YXRlLWRldGFpbHMtdGFiLm9iamVjdCcgfCBwbHVnaW5zXCI+XG4gICAgICAgICAgICA8L2VvLW9iamVjdC1zdGF0ZS1kZXRhaWxzPlxuXG4gICAgICAgICAgICA8ZW8tcmVzdWx0LWxpc3QgKm5nSWY9XCIhZnJvbnRQYWdlICYmIHNlYXJjaFJlc3VsdFwiIFtzZWxlY3RGaXJzdF09XCJmYWxzZVwiIFt0aXRsZV09XCJncmlkVGl0bGVcIlxuICAgICAgICAgICAgICBbcmVmZXJlbmNlXT1cInNlbGVjdGVkTm9kZT8uaXNSZWZlcmVuY2VcIiBbc2VhcmNoUmVzdWx0XT1cInNlYXJjaFJlc3VsdFwiIFtjb25maWdUeXBlXT1cImNvbmZpZ1R5cGVcIlxuICAgICAgICAgICAgICBbY29uZmlnQ29udGV4dF09XCJcIiBbZW1wdHlNZXNzYWdlXT1cIidlby5zdGF0ZS5vYmplY3QubGlzdC5lcnJvcidcIiAob25SZWZyZXNoKT1cInJlZnJlc2hMaXN0KClcIj5cbiAgICAgICAgICAgIDwvZW8tcmVzdWx0LWxpc3Q+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSB5dmNTcGxpdEFyZWEgW3NpemVdPVwiNDVcIiBbdmlzaWJsZV09XCJ0cnVlXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidHBsT2JqZWN0RGV0YWlsc1wiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwveXZjLXNwbGl0LXZpZXc+XG5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctdGVtcGxhdGUgI3RwbERldGFpbHNPbmx5PjxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0cGxPYmplY3REZXRhaWxzXCI+PC9uZy1jb250YWluZXI+PC9uZy10ZW1wbGF0ZT5cblxuICAgICAgPG5nLXRlbXBsYXRlICN0cGxPYmplY3REZXRhaWxzPlxuICAgICAgICA8ZW8tb2JqZWN0LWRldGFpbHMgW2FwcGx5U2VsZWN0aW9uXT1cInt9XCIgW3JlZmVyZW5jZV09XCJpc1JlZmVyZW5jZUFjdGl2ZVwiXG4gICAgICAgICAgW2NhY2hlTGF5b3V0XT1cIidvYmplY3Quc3RhdGUtLScgKyB0eXBlTmFtZSArICcub2JqZWN0LWRldGFpbHMnXCIgW3BsdWdpbnNdPVwiJ29iamVjdC1kZXRhaWxzLXRhYi5vYmplY3QnIHwgcGx1Z2luc1wiPlxuICAgICAgICA8L2VvLW9iamVjdC1kZXRhaWxzPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNlcnJvclRtcGw+XG4gIDxlby1lcnJvcjQwND48L2VvLWVycm9yNDA0PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
|
343
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LXN0YXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L29iamVjdC1zdGF0ZS9vYmplY3Qtc3RhdGUvb2JqZWN0LXN0YXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L29iamVjdC1zdGF0ZS9vYmplY3Qtc3RhdGUvb2JqZWN0LXN0YXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBcUIsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU1RixPQUFPLEVBQXdCLFVBQVUsRUFBMkUsS0FBSyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQy9JLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDOUIsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTVDLE9BQU8sRUFBQyxZQUFZLEVBQUUsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFXbkUsT0FBTyxFQUFDLFlBQVksRUFBRSxzQkFBc0IsRUFBQyxNQUFNLDZEQUE2RCxDQUFDO0FBRWpILE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhDQUE4QyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVV6RSxJQUFNLG9CQUFvQixHQUExQixNQUFNLG9CQUFvQjtJQXNDL0IsWUFBb0IsS0FBcUIsRUFDL0IsWUFBOEIsRUFDOUIsYUFBNEIsRUFDNUIsVUFBc0IsRUFDdEIsU0FBMkIsRUFDNUIsU0FBMkIsRUFDM0IsV0FBK0IsRUFDOUIsYUFBNEIsRUFDNUIsUUFBeUIsRUFDekIsY0FBcUMsRUFDckMsWUFBMEIsRUFDMUIsV0FBd0IsRUFDeEIsYUFBNEI7UUFabEIsVUFBSyxHQUFMLEtBQUss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dHkvY29yZSc7XG5pbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7RG1zT2JqZWN0LCBEbXNTZXJ2aWNlLCBFbmFpb0V2ZW50LCBFdmVudFNlcnZpY2UsIE9iamVjdFR5cGUsIFNlYXJjaFJlc3VsdCwgU3lzdGVtU2VydmljZSwgVHJhbnNsYXRlU2VydmljZSwgVXRpbHN9IGZyb20gJ0Blby1zZGsvY29yZSc7XG5pbXBvcnQge2ZvcmtKb2lufSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VW50aWxEZXN0cm95LCB1bnRpbERlc3Ryb3llZH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcbmltcG9ydCB7R3JpZFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2VvLWZyYW1ld29yay1jb3JlL2FwaS9ncmlkLnNlcnZpY2UnO1xuaW1wb3J0IHtMYXlvdXRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS9sYXlvdXQvbGF5b3V0LnNlcnZpY2UnO1xuaW1wb3J0IHtMb2NhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2VvLWZyYW1ld29yay1jb3JlL2xvY2F0aW9uL2xvY2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHtQZW5kaW5nQ2hhbmdlc0NvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUvcGVuZGluZy1jaGFuZ2VzL3BlbmRpbmctY2hhbmdlcy1jb21wb25lbnQuaW50ZXJmYWNlJztcbmltcG9ydCB7UGVuZGluZ0NoYW5nZXNTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS9wZW5kaW5nLWNoYW5nZXMvcGVuZGluZy1jaGFuZ2VzLnNlcnZpY2UnO1xuaW1wb3J0IHtTZWxlY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS9zZWxlY3Rpb24vc2VsZWN0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHtQYWdlVGl0bGVTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS90aXRsZS9wYWdlLXRpdGxlLnNlcnZpY2UnO1xuaW1wb3J0IHtBY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb24tc2VydmljZS9hY3Rpb24uc2VydmljZSc7XG5pbXBvcnQge0dyaWRDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2VvLWZyYW1ld29yay9ncmlkL2dyaWQuY29tcG9uZW50JztcbmltcG9ydCB7VHJlZU5vZGV9IGZyb20gJy4uLy4uLy4uL2VvLWZyYW1ld29yay90cmVlL3RyZWUuY29tcG9uZW50LmludGVyZmFjZSc7XG5pbXBvcnQge1BhbmVsTG9hZGluZywgcGFuZWxMb2FkaW5nQW5pbWF0aW9uc30gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrL3VpL2FuaW1hdGlvbnMvcGFuZWwtbG9hZGluZy5hbmltYXRpb24nO1xuaW1wb3J0IHtGcm9udFBhZ2VEYXRhLCBPYmplY3RTZWFyY2hSZXN1bHR9IGZyb20gJy4uL29iamVjdC1zdGF0ZS1zZXJ2aWNlL29iamVjdC1zdGF0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHtPYmplY3RTdGF0ZVNlcnZpY2V9IGZyb20gJy4uL29iamVjdC1zdGF0ZS1zZXJ2aWNlL29iamVjdC1zdGF0ZS5zZXJ2aWNlJztcblxuQFVudGlsRGVzdHJveSgpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlby1vYmplY3Qtc3RhdGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vb2JqZWN0LXN0YXRlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vb2JqZWN0LXN0YXRlLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW09iamVjdFN0YXRlU2VydmljZV0sXG4gIGFuaW1hdGlvbnM6IFtwYW5lbExvYWRpbmdBbmltYXRpb25zXVxufSlcbmV4cG9ydCBjbGFzcyBPYmplY3RTdGF0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBQZW5kaW5nQ2hhbmdlc0NvbXBvbmVudCB7XG5cbiAgQFZpZXdDaGlsZCgnZW9HcmlkJykgZW9HcmlkOiBHcmlkQ29tcG9uZW50O1xuXG4gIGVycm9yID0gZmFsc2U7XG4gIGNvbnRleHQ6IERtc09iamVjdDtcbiAgc2VsZWN0ZWRJdGVtOiBEbXNPYmplY3Q7XG4gIGZyb250UGFnZTogYm9vbGVhbjtcbiAgZnJvbnRQYWdlRGF0YTogRnJvbnRQYWdlRGF0YTtcbiAgY29udGV4dFRyZWU6IFRyZWVOb2RlW107XG4gIGNvbnRleHRUcmVlVXBkYXRlOiBUcmVlTm9kZVtdO1xuICBjb250ZXh0VHJlZVJlZjogVHJlZU5vZGVbXTtcbiAgY29udGV4dFRyZWVSZWZVcGRhdGU6IFRyZWVOb2RlW107XG4gIHNlbGVjdGVkTm9kZXM6IFRyZWVOb2RlW107XG4gIHNlbGVjdGVkTm9kZTogVHJlZU5vZGU7XG4gIGhpZ2hsaWdodGVkTm9kZXM6IHN0cmluZ1tdO1xuICBpc1JlZmVyZW5jZUFjdGl2ZSA9IGZhbHNlO1xuICBwcml2YXRlIGV4cGFuZGVkTm9kZUlkczogc3RyaW5nW10gPSBbXTtcbiAgdGVybUZpbHRlcjogc3RyaW5nO1xuICBhbGxUeXBlczogc3RyaW5nW10gPSBbXTtcbiAgY29uZmlnVHlwZTogT2JqZWN0VHlwZTtcbiAgQE91dHB1dCgpIG9uVGVybUZpbHRlckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBncmlkT3B0aW9uczogR3JpZE9wdGlvbnM7XG4gIGdyaWRUaXRsZTogc3RyaW5nO1xuICBlbXB0eUdyaWQgPSB0cnVlO1xuXG4gIHNlYXJjaFJlc3VsdDogU2VhcmNoUmVzdWx0O1xuICB0eXBlTmFtZSA9ICcnO1xuICBjYWNoZUxheW91dCA9ICcnO1xuXG4gIGxvYWRpbmdTdGF0ZSA9IHtcbiAgICB0cmVlOiBuZXcgUGFuZWxMb2FkaW5nKCksXG4gICAgdHJlZVJlZjogbmV3IFBhbmVsTG9hZGluZygpLFxuICAgIGxpc3Q6IG5ldyBQYW5lbExvYWRpbmcoKSxcbiAgICBkZXRhaWxzOiBuZXcgUGFuZWxMb2FkaW5nKCksXG4gIH07XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSB0aXRsZVNlcnZpY2U6IFBhZ2VUaXRsZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzeXN0ZW1TZXJ2aWNlOiBTeXN0ZW1TZXJ2aWNlLFxuICAgIHByaXZhdGUgZG1zU2VydmljZTogRG1zU2VydmljZSxcbiAgICBwcml2YXRlIHNlbGVjdGlvbjogU2VsZWN0aW9uU2VydmljZSxcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHB1YmxpYyBvYmplY3RTdGF0ZTogT2JqZWN0U3RhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgYWN0aW9uU2VydmljZTogQWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGxvY2F0aW9uOiBMb2NhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwZW5kaW5nQ2hhbmdlczogUGVuZGluZ0NoYW5nZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBncmlkU2VydmljZTogR3JpZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsYXlvdXRTZXJ2aWNlOiBMYXlvdXRTZXJ2aWNlKSB7XG5cbiAgICB0aGlzLnRpdGxlU2VydmljZS5zZXRCYXNlVGl0bGUobnVsbCk7XG4gICAgdGhpcy5ncmlkT3B0aW9ucyA9IDxHcmlkT3B0aW9ucz57fTtcblxuICAgIHRoaXMub25UZXJtRmlsdGVyQ2hhbmdlXG4gICAgICAucGlwZShkZWJvdW5jZVRpbWUoMTAwMCkpXG4gICAgICAuc3Vic2NyaWJlKHYgPT4gdGhpcy5zZXR1cEZyb250UGFnZSh0cnVlKSk7XG5cbiAgICAvLyBzdWJzY3JpYmUgZm9yIGRhdGEgZnJvbSB0aGUgY29ubmVjdGVkIHNlcnZpY2VcbiAgICB0aGlzLm9iamVjdFN0YXRlXG4gICAgICAubGlzdCRcbiAgICAgIC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgLnN1YnNjcmliZSgocmVzOiBPYmplY3RTZWFyY2hSZXN1bHQpID0+IHtcbiAgICAgICAgdGhpcy5mcm9udFBhZ2UgPSAhcmVzO1xuICAgICAgICBpZiAocmVzKSB7XG4gICAgICAgICAgLy8gc2V0dXAgdGhlIGdyaWQgd2l0aCB0aGUgbmV3IGRhdGFcbiAgICAgICAgICBsZXQge25hbWUsIHJlc3VsdH0gPSByZXM7XG4gICAgICAgICAgdGhpcy5lbXB0eUdyaWQgPSByZXN1bHQuY291bnQudmFsdWUgPT09IDA7XG4gICAgICAgICAgdGhpcy5ncmlkVGl0bGUgPSBuYW1lO1xuICAgICAgICAgIHRoaXMuY29uZmlnVHlwZSA9IHRoaXMuc3lzdGVtU2VydmljZS5nZXRPYmplY3RUeXBlKHJlc3VsdC50eXBlTmFtZSkgfHwge3FuYW1lOiByZXN1bHQudHlwZU5hbWV9IGFzIE9iamVjdFR5cGU7XG4gICAgICAgICAgdGhpcy5zZWFyY2hSZXN1bHQgPSByZXN1bHQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyB0aGlzLmxvYWRpbmdTdGF0ZS5saXN0LnJlYWR5KCk7XG4gICAgICB9KTtcblxuICAgIHRoaXMub2JqZWN0U3RhdGUudHJlZSRcbiAgICAgIC5waXBlKFxuICAgICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShyZXMgPT4gdGhpcy5idWlsZENvbnRleHRUcmVlKHJlcy5mb2xkZXIpKTtcblxuICAgIHRoaXMub2JqZWN0U3RhdGUudHJlZVJlZiRcbiAgICAgIC5waXBlKFxuICAgICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShyZXMgPT4gdGhpcy5idWlsZENvbnRleHRUcmVlUmVmKHJlcy5mb2xkZXIpKTtcblxuICAgIHRoaXMuc2VsZWN0aW9uLmZvY3VzJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHVudGlsRGVzdHJveWVkKHRoaXMpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChpdGVtOiBEbXNPYmplY3QpID0+IHtcbiAgICAgICAgaWYgKGl0ZW0pIHtcbiAgICAgICAgICB0aGlzLmhpZ2hsaWdodChpdGVtLmlkKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbSA9IGl0ZW07XG4gICAgICAgIC8vIHRoaXMubG9hZGluZ1N0YXRlLmRldGFpbHMucmVhZHkoKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5ldmVudFNlcnZpY2VcbiAgICAgIC5vbihFbmFpb0V2ZW50LkRNU19PQkpFQ1RfREVMRVRFRClcbiAgICAgIC5waXBlKFxuICAgICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoZXZ0KSA9PiB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLmNvbnRleHQgJiYgdGhpcy5jb250ZXh0LmlkID09PSBldnQuZGF0YS5pZCkge1xuICAgICAgICAgICAgdGhpcy5jb250ZXh0ID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuZXJyb3IgPSB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAodGhpcy5mcm9udFBhZ2UpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0dXBGcm9udFBhZ2UoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy51cGRhdGVDb250ZXh0VHJlZSgpO1xuICAgICAgICB9LCAxMDAwKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5ldmVudFNlcnZpY2VcbiAgICAgIC5vbihFbmFpb0V2ZW50LkRNU19PQkpFQ1RfVVBEQVRFRClcbiAgICAgIC5waXBlKFxuICAgICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRleHQgJiYgZXZlbnQuZGF0YSAmJiB0aGlzLmNvbnRleHQuaWQgPT09IGV2ZW50LmRhdGEuaWQpIHtcbiAgICAgICAgICB0aGlzLmNvbnRleHQgPSBldmVudC5kYXRhO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmZyb250UGFnZSkge1xuICAgICAgICAgIHRoaXMuc2V0dXBGcm9udFBhZ2UodHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy51cGRhdGVDb250ZXh0VHJlZSgpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmV2ZW50U2VydmljZVxuICAgICAgLm9uKEVuYWlvRXZlbnQuRE1TX09CSkVDVF9QQVNURUQpXG4gICAgICAucGlwZShcbiAgICAgICAgdW50aWxEZXN0cm95ZWQodGhpcylcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKGV2dCkgPT4ge1xuICAgICAgICBjb25zdCBuYW1lID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uY2xpcGJvYXJkLnBhc3RlLnJlc3VsdGxpc3QuaGVhZGxpbmUnKTtcbiAgICAgICAgdGhpcy5vYmplY3RTdGF0ZVxuICAgICAgICAgIC5zZWxlY3RUcmVlTm9kZSg8YW55Pnt9LCA8YW55PntuYW1lfSwge2lkOiBldnQuZGF0YS5tYXAoZCA9PiBkLmlkKX0pLnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLnVwZGF0ZUNvbnRleHRUcmVlKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIGhhc1BlbmRpbmdDaGFuZ2VzKCkge1xuICAgIHJldHVybiB0aGlzLnBlbmRpbmdDaGFuZ2VzLmhhc1BlbmRpbmdUYXNrKCk7XG4gIH1cblxuICBvbkV4cGFuZGVkTm9kZXNDaGFuZ2VkKGV4cGFuZGVkTm9kZXM6IHN0cmluZ1tdKSB7XG4gICAgdGhpcy5leHBhbmRlZE5vZGVJZHMgPSBleHBhbmRlZE5vZGVzO1xuICB9XG5cbiAgLy8gc2VsZWN0IGFuIGVudHJ5IGZyb20gdGhlIHRyZWVcbiAgb25UcmVlU2VsZWN0aW9uQ2hhbmdlZChub2RlOiBUcmVlTm9kZSkge1xuICAgIHRoaXMubG9jYXRpb24ubGVhdmUoKTtcbiAgICB0aGlzLnNlbGVjdGVkTm9kZSA9IG5vZGU7XG4gICAgaWYgKG5vZGUuZGF0YS50eXBlKSB7XG4gICAgICB0aGlzLmxvY2F0aW9uLmVudGVyKHRoaXMuY29udGV4dCwgdGhpcy5zZWxlY3RlZE5vZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvY2F0aW9uLmVudGVyKHRoaXMuY29udGV4dCk7XG4gICAgfVxuICAgIGlmIChub2RlKSB7XG4gICAgICB0aGlzLmdyaWRTZXJ2aWNlLnVwZGF0ZUNvbnRleHQobm9kZS5pc1JlZmVyZW5jZSB8fCB0aGlzLmFsbFR5cGVzLmluY2x1ZGVzKG5vZGUuZGF0YS50eXBlKSA/IFtub2RlLmRhdGEudHlwZV0gOiB0aGlzLmFsbFR5cGVzKTtcbiAgICAgIHRoaXMubG9hZGluZ1N0YXRlLmxpc3RcbiAgICAgICAgLnN1YnNjcmliZShub2RlLmlzUmVmZXJlbmNlID9cbiAgICAgICAgICB0aGlzLm9iamVjdFN0YXRlLnNlbGVjdFRyZWVOb2RlKHRoaXMuY29udGV4dCwgbm9kZSwge3Rlcm06IHRoaXMudGVybUZpbHRlcn0sICdyZWZlcmVuY2V2aWV3JykgOlxuICAgICAgICAgIHRoaXMub2JqZWN0U3RhdGUuc2VsZWN0VHJlZU5vZGUodGhpcy5jb250ZXh0LCBub2RlLCB7dGVybTogdGhpcy50ZXJtRmlsdGVyfSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNldHVwRnJvbnRQYWdlKCk7XG4gICAgfVxuICB9XG5cbiAgb25Db250ZXh0TWVudUNsaWNrZWQoZXZ0LCBkb2M/KSB7XG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuYWN0aW9uU2VydmljZS5zaG93QWN0aW9ucyhbZG9jIHx8IHRoaXMuY29udGV4dF0sICdETVNfT0JKRUNUJyk7XG4gIH1cblxuICByZWZyZXNoTGlzdCgpIHtcbiAgICB0aGlzLm9uVHJlZVNlbGVjdGlvbkNoYW5nZWQodGhpcy5zZWxlY3RlZE5vZGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBwcm9jZXNzKGl0ZW06IERtc09iamVjdCwgc2VsZWN0ZWRJZD8pIHtcbiAgICBpZiAoaXRlbS5pc0NvbnRleHRGb2xkZXIpIHtcbiAgICAgIC8vIGlmIHRoZXJlIGFscmVhZHkgaXMgYSBjb250ZXh0IHNldCwgd2UgbmVlZCB0byBsZWF2ZSBsb2NhdGlvbiBmb3IgdGhlIG9sZCBjb250ZXh0IGZpcnN0XG4gICAgICAvLyBvdGhlcndpc2UgVXBsb2FkVGFyZ2V0cyB3aWxsIG5vdCBiZSB1bnJlZ2lzdGVyZWQgY29ycmVjdGx5XG4gICAgICBpZiAodGhpcy5jb250ZXh0KSB7XG4gICAgICAgIHRoaXMubG9jYXRpb24ubGVhdmUoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY29udGV4dCA9IGl0ZW07XG4gICAgICB0aGlzLmNhY2hlTGF5b3V0ID0gJ29iamVjdC5zdGF0ZS0tJyArIGl0ZW0udHlwZU5hbWU7XG4gICAgICAvLyBhZGQgdGhpcyBsb2NhdGlvbiB0byB0aGUgbG9jYXRpb24gc2VydmljZSwgd2hpY2ggd2lsbCB0cmFjayBhY3RpdmUgbG9jYXRpb25zXG4gICAgICAvLyBhbmQgaGFuZGxlIGEgaGlzdG9yeSBvZiB2aXNpdGVkIGxvY2F0aW9ucy5cbiAgICAgIHRoaXMubG9jYXRpb24uZW50ZXIodGhpcy5jb250ZXh0LCB0aGlzLnNlbGVjdGVkTm9kZSk7XG5cbiAgICAgIHRoaXMub2JqZWN0U3RhdGUubG9hZFRyZWVCeVF1ZXJ5KHRoaXMuY29udGV4dC5pZCwgdGhpcy5jb250ZXh0LnR5cGVOYW1lLCB7ZGVmaW5pdGlvbjogW3tmaWVsZDogJ3R5cGUnLCBrZXk6ICdUeXBlcycsIHNpemU6IDEwMDB9XX0pXG4gICAgICAgIC5zdWJzY3JpYmUodHlwZXMgPT4gKHRoaXMuYWxsVHlwZXMgPSAodHlwZXMuZm9sZGVyWzBdLmZvbGRlciB8fCBbXSkubWFwKHQgPT4gdC50eXBlKSkpO1xuXG4gICAgICB0aGlzLmZldGNoVHJlZURhdGEoJycsIHNlbGVjdGVkSWQpO1xuICAgICAgdGhpcy5zZXR1cEZyb250UGFnZSh0cnVlKTtcblxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBmZXRjaCB0aGUgY29udGV4dCBmb2xkZXJcbiAgICAgIGlmIChpdGVtLmNvbnRleHRGb2xkZXIpIHtcbiAgICAgICAgdGhpcy5jYWNoZUxheW91dCA9ICdvYmplY3Quc3RhdGUtLScgKyBpdGVtLmNvbnRleHRGb2xkZXIudHlwZU5hbWU7XG4gICAgICAgIHRoaXMuZG1zU2VydmljZVxuICAgICAgICAgIC5nZXREbXNPYmplY3QoaXRlbS5jb250ZXh0Rm9sZGVyLmlkLCBpdGVtLmNvbnRleHRGb2xkZXIudHlwZU5hbWUsIG51bGwsICdERVRBSUxTJylcbiAgICAgICAgICAuc3Vic2NyaWJlKChyZXM6IERtc09iamVjdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5wcm9jZXNzKHJlcywgaXRlbS5pZCk7XG4gICAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBqdXN0IHRoZSBkb2N1bWVudCBpbiByb290XG4gICAgICAgIHRoaXMuY29udGV4dCA9IG51bGw7XG4gICAgICAgIHRoaXMuY2FjaGVMYXlvdXQgPSAnJztcbiAgICAgICAgLy8gaGlkZSBlbXB0eSB0cmVlICYgbGlzdFxuICAgICAgICAvLyB0aGlzLmxheW91dFNlcnZpY2UuaGlkZUFyZWFzKChhLCBpKSA9PiBpIDwgMik7XG4gICAgICB9XG4gICAgfVxuICAgIC8vIHRoaXMubGF5b3V0U2VydmljZS52aXNpYmlsaXR5VXBkYXRlKCk7XG4gIH1cblxuICBzZXR1cEZyb250UGFnZSh1cGRhdGVTZWxlY3Rpb24gPSBmYWxzZSwgdXBkYXRlVHJlZSA9IGZhbHNlKSB7XG4gICAgdGhpcy5vYmplY3RTdGF0ZVxuICAgICAgLnNlbGVjdEZyb250UGFnZSh0aGlzLmNvbnRleHQpXG4gICAgICAuc3Vic2NyaWJlKChkYXRhKSA9PiB7XG4gICAgICAgIHRoaXMuZnJvbnRQYWdlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5mcm9udFBhZ2VEYXRhID0gZGF0YTtcbiAgICAgIH0pO1xuXG4gICAgaWYgKCF1cGRhdGVTZWxlY3Rpb24pIHtcbiAgICAgIHRoaXMubG9jYXRpb24ubGVhdmUoKTtcbiAgICAgIHRoaXMuc2VsZWN0aW9uLmZvY3VzKHRoaXMuY29udGV4dCk7XG4gICAgICB0aGlzLmxvY2F0aW9uLmVudGVyKHRoaXMuY29udGV4dCk7XG4gICAgfVxuXG4gICAgaWYgKCF1cGRhdGVUcmVlKSB7XG4gICAgICB0aGlzLmZldGNoVHJlZURhdGEodGhpcy50ZXJtRmlsdGVyKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZldGNoVHJlZURhdGEodGVybUZpbHRlcj86IHN0cmluZywgc2VsZWN0ZWRJZD86IGFueSkge1xuICAgIHRoaXMuaGlnaGxpZ2h0KHNlbGVjdGVkSWQpO1xuICAgIHRoaXMubG9hZGluZ1N0YXRlLnRyZWUuc3Vic2NyaWJlKHRoaXMub2JqZWN0U3RhdGUudXBkYXRlVHJlZUJ5UXVlcnkodGhpcy5jb250ZXh0LCB7dGVybTogdGVybUZpbHRlcn0pKTtcbiAgICB0aGlzLmxvYWRpbmdTdGF0ZS50cmVlUmVmLnN1YnNjcmliZSh0aGlzLm9iamVjdFN0YXRlLnVwZGF0ZVRyZWVCeVF1ZXJ5KHRoaXMuY29udGV4dCwge3Rlcm06IHRlcm1GaWx0ZXJ9LCAncmVmZXJlbmNldmlldycpKTtcbiAgfVxuXG4gIHByaXZhdGUgaGlnaGxpZ2h0KHNlbGVjdGVkSWQpIHtcbiAgICBpZiAoc2VsZWN0ZWRJZCAmJiB0aGlzLmNvbnRleHQpIHtcbiAgICAgIGZvcmtKb2luKFtcbiAgICAgICAgdGhpcy5vYmplY3RTdGF0ZS5sb2FkVHJlZUJ5UXVlcnkodGhpcy5jb250ZXh0LmlkLCB0aGlzLmNvbnRleHQudHlwZU5hbWUsIHtpZDogc2VsZWN0ZWRJZH0pLFxuICAgICAgICB0aGlzLm9iamVjdFN0YXRlLmxvYWRUcmVlQnlRdWVyeSh0aGlzLmNvbnRleHQuaWQsIHRoaXMuY29udGV4dC50eXBlTmFtZSwge2lkOiBzZWxlY3RlZElkfSwgJ3JlZmVyZW5jZXZpZXcnKVxuICAgICAgXSkuc3Vic2NyaWJlKChyZXMpID0+IHtcbiAgICAgICAgdGhpcy5oaWdobGlnaHRlZE5vZGVzID0gdGhpcy5oaWdobGlnaHROb2RlcyhbLi4ucmVzWzBdLmZvbGRlciwgLi4ucmVzWzFdLmZvbGRlcl0pO1xuICAgICAgICB0aGlzLmlzUmVmZXJlbmNlQWN0aXZlID0gISEocmVzWzFdLnRvdGFsLnZhbHVlICYmICFyZXNbMF0udG90YWwudmFsdWUpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGlnaGxpZ2h0ZWROb2RlcyA9IFtdO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ29udGV4dFRyZWUoKSB7XG4gICAgaWYgKHRoaXMuY29udGV4dCkge1xuICAgICAgdGhpcy5vYmplY3RTdGF0ZVxuICAgICAgICAubG9hZFRyZWVCeVF1ZXJ5KHRoaXMuY29udGV4dC5pZCwgdGhpcy5jb250ZXh0LnR5cGVOYW1lLCB7dGVybTogdGhpcy50ZXJtRmlsdGVyfSlcbiAgICAgICAgLnN1YnNjcmliZShyZXMgPT4gdGhpcy5jb250ZXh0VHJlZVVwZGF0ZSA9IHJlcy5mb2xkZXIubWFwKGYgPT4gdGhpcy5hZGRUcmVlTm9kZShmLCBbXSkpKTtcbiAgICAgIHRoaXMub2JqZWN0U3RhdGVcbiAgICAgICAgLmxvYWRUcmVlQnlRdWVyeSh0aGlzLmNvbnRleHQuaWQsIHRoaXMuY29udGV4dC50eXBlTmFtZSwge3Rlcm06IHRoaXMudGVybUZpbHRlcn0sICdyZWZlcmVuY2V2aWV3JylcbiAgICAgICAgLnN1YnNjcmliZShyZXMgPT4gdGhpcy5jb250ZXh0VHJlZVJlZlVwZGF0ZSA9IHJlcy5mb2xkZXIubWFwKGYgPT4gdGhpcy5hZGRUcmVlTm9kZShmLCBbXSwgdHJ1ZSkpKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGhpZ2hsaWdodE5vZGVzKGZvbGRlciA9IFtdLCBub2RlcyA9IFtdKSB7XG4gICAgZm9sZGVyLmZvckVhY2goZiA9PiB7XG4gICAgICBpZiAoZi5jb3VudCkge1xuICAgICAgICBub2Rlcy5wdXNoKGYua2V5KTtcbiAgICAgIH1cbiAgICAgIGlmIChmLmZvbGRlcikge1xuICAgICAgICB0aGlzLmhpZ2hsaWdodE5vZGVzKGYuZm9sZGVyLCBub2Rlcyk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIG5vZGVzO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZENvbnRleHRUcmVlKGZvbGRlciA9IFtdKSB7XG4gICAgdGhpcy5jb250ZXh0VHJlZVVwZGF0ZSA9IG51bGw7XG4gICAgdGhpcy5jb250ZXh0VHJlZSA9IGZvbGRlci5tYXAoZiA9PiB0aGlzLmFkZFRyZWVOb2RlKGYsIFtdKSk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkQ29udGV4dFRyZWVSZWYoZm9sZGVyID0gW10pIHtcbiAgICB0aGlzLmNvbnRleHRUcmVlUmVmVXBkYXRlID0gbnVsbDtcbiAgICB0aGlzLmNvbnRleHRUcmVlUmVmID0gZm9sZGVyLm1hcChmID0+IHRoaXMuYWRkVHJlZU5vZGUoZiwgW10sIHRydWUpKTtcblxuICB9XG5cbiAgcHJpdmF0ZSBhZGRUcmVlTm9kZShub2RlRGF0YSwgcGF0aDogc3RyaW5nW10sIGlzUmVmZXJlbmNlID0gZmFsc2UpIHtcbiAgICBjb25zdCB7a2V5LCB0aXRsZSwgZm9sZGVyLCBleHBhbmRlZCwgY291bnQsIHN0YXRzfSA9IG5vZGVEYXRhO1xuICAgIC8vIGltcG9ydGFudCB0byBjcmVhdGUgY2xvbmUgaGVyZSwgYmVjYXVzZSBvdGhlcndpc2UgcGF0aCB3aWxsIGJlIG1lc3NlZCB1cFxuICAgIGNvbnN0IHAgPSBwYXRoLmNvbmNhdChbdGl0bGVdKTtcbiAgICBsZXQgbm9kZTogVHJlZU5vZGUgPSB7XG4gICAgICBpZDoga2V5LFxuICAgICAgbmFtZTogdGl0bGUsXG4gICAgICBwYXRoOiBwLFxuICAgICAgY2hpbGRyZW46IChmb2xkZXIgfHwgW10pLm1hcChmID0+IHRoaXMuYWRkVHJlZU5vZGUoZiwgcCwgaXNSZWZlcmVuY2UpKSxcbiAgICAgIGV4cGFuZGVkOiBleHBhbmRlZCB8fCAhIX50aGlzLmV4cGFuZGVkTm9kZUlkcy5pbmRleE9mKGtleSksXG4gICAgICBzZWxlY3RlZDogZmFsc2UsXG4gICAgICBzZWxlY3RhYmxlOiB0cnVlLFxuICAgICAgaXNSZWZlcmVuY2UsXG4gICAgICBiYWRnZXM6IChzdGF0cyB8fCBbXSkubWFwKHN0YXQgPT4gT2JqZWN0LmFzc2lnbih7XG4gICAgICAgIHZhbHVlOiBzdGF0LnZhbHVlICsgJyAnICsgc3RhdC50aXRsZSxcbiAgICAgICAgY3NzQ2xhc3M6ICdzdGF0cydcbiAgICAgIH0pKSxcbiAgICAgIGRhdGE6IG5vZGVEYXRhXG4gICAgfTtcblxuICAgIGlmIChjb3VudCkge1xuICAgICAgbm9kZS5iYWRnZXMucHVzaCh7dmFsdWU6IGNvdW50fSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnJvdXRlLnVybFxuICAgICAgLnBpcGUoXG4gICAgICAgIHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2FjaGVMYXlvdXQgPSAnJztcbiAgICAgICAgLy8gdGhpcy5sYXlvdXRTZXJ2aWNlLmhpZGVBcmVhcygoKSA9PiBmYWxzZSk7XG4gICAgICAgIGNvbnN0IHtwYXJhbXMsIHF1ZXJ5UGFyYW1zfSA9IHRoaXMucm91dGUuc25hcHNob3Q7XG4gICAgICAgIGlmIChwYXJhbXMuaWQpIHtcbiAgICAgICAgICB0aGlzLnR5cGVOYW1lID0gcXVlcnlQYXJhbXNbJ3R5cGUnXSB8fCAnJztcbiAgICAgICAgICB0aGlzLnNlbGVjdGlvbi5mb2N1cyh7aWQ6IHBhcmFtcy5pZCwgdHlwZU5hbWU6IHRoaXMudHlwZU5hbWV9KTtcbiAgICAgICAgICB0aGlzLmRtc1NlcnZpY2VcbiAgICAgICAgICAgIC5nZXREbXNPYmplY3QocGFyYW1zLmlkLCB0aGlzLnR5cGVOYW1lLCBudWxsLCAnREVUQUlMUycpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChyZXM6IERtc09iamVjdCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmVycm9yID0gZmFsc2U7XG4gICAgICAgICAgICAgIHRoaXMucHJvY2VzcyhyZXMpO1xuICAgICAgICAgICAgICB0aGlzLnNlbGVjdGlvbi5mb2N1cyhyZXMpO1xuICAgICAgICAgICAgICB0aGlzLmlzUmVmZXJlbmNlQWN0aXZlID0gZmFsc2U7XG4gICAgICAgICAgICB9LCBVdGlscy50aHJvdygoKSA9PiB7XG4gICAgICAgICAgICAgIC8vIHRoaXMubGF5b3V0U2VydmljZS5zZXRBcmVhcyhbXSk7XG4gICAgICAgICAgICAgIHRoaXMuZXJyb3IgPSB0cnVlO1xuICAgICAgICAgICAgfSkpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIC8vIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBkZXN0cm95ZWQsIHdlIHRlbGwgdGhlIGxvY2F0aW9uIHNlcnZpY2UgdGhhdCB3ZVxuICAgIC8vIGxlZnQgdGhlIGxvY2F0aW9uXG4gICAgdGhpcy5sb2NhdGlvbi5sZWF2ZSgpO1xuICAgIHRoaXMuc2VsZWN0aW9uLmNsZWFyKCk7XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cImZpbGVcIiBbbmdDbGFzc109XCJ7cmVhZHk6IGNvbnRleHQgfHwgY29udGV4dCA9PT0gbnVsbH1cIiAqbmdJZj1cIiFlcnJvcjsgZWxzZSBlcnJvclRtcGxcIj5cblxuICA8ZGl2IGNsYXNzPVwiZmlsZS1oZWFkXCIgKm5nSWY9XCJjb250ZXh0ICYmIGNvbnRleHQuaXNDb250ZXh0Rm9sZGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImxlZnRcIj5cbiAgICAgIDxlby1pY29uIGNsYXNzPVwidHlwZS1pY29uXCIgW29iamVjdFR5cGVdPVwiY29udGV4dC50eXBlXCI+PC9lby1pY29uPlxuICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCIgKGNsaWNrKT1cInNldHVwRnJvbnRQYWdlKClcIiAoY29udGV4dG1lbnUpPVwib25Db250ZXh0TWVudUNsaWNrZWQoJGV2ZW50KVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGFiZWxcIj57e2NvbnRleHQudGl0bGUgfHwgJyZuYnNwOyd9fTwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGVzY3JpcHRpb25cIj57e2NvbnRleHQuZGVzY3JpcHRpb24gfHwgJyZuYnNwOyd9fTwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInJpZ2h0XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZm9sZFwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImNyZWF0ZWQtZGF0ZVwiPnt7Y29udGV4dC5jcmVhdGVkLm9uIHwgbG9jYWxlRGF0ZX19PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImNyZWF0ZWQtdGl0bGVcIj57e2NvbnRleHQuY3JlYXRlZC5ieS50aXRsZX19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uc1wiPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJmaWxlLWJvZHlcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZmlsZS1ib2R5LXdyYXBcIj5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRleHQgIT09IG51bGw7IGVsc2UgdHBsRGV0YWlsc09ubHlcIj5cblxuICAgICAgICA8eXZjLXNwbGl0LXZpZXcgKm5nSWY9XCJjYWNoZUxheW91dFwiIFtsYXlvdXRTZXR0aW5nc0lEXT1cImNhY2hlTGF5b3V0XCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIHl2Y1NwbGl0QXJlYSBbcGFuZWxDbGFzc109XCIndHJlZSdcIiBbc2l6ZV09XCIyMFwiIFt2aXNpYmxlXT1cInRydWVcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmVlLXBhbmVsLWVycm9yXCIgKm5nSWY9XCJsb2FkaW5nU3RhdGUudHJlZS5pc0Vycm9yKCk7IGVsc2UgdHBsVHJlZVwiIHRyYW5zbGF0ZT5cbiAgICAgICAgICAgICAgZW8uc3RhdGUub2JqZWN0LnRyZWUuZXJyb3I8L2Rpdj5cblxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICN0cGxUcmVlPlxuXG4gICAgICAgICAgICAgIDxlby1saXN0LWNvbnRhaW5lciAjZW9MaXN0IFtsb2FkaW5nXT1cIiFjb250ZXh0VHJlZVwiIFt0YWJzXT1cImZhbHNlXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVvLWhlYWRlciBkYXJrXCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZW8taGVhZGVyLWluZm9cIj5cbiAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiZW8taGVhZGVyLXRpdGxlXCIgdHJhbnNsYXRlPmVvLnN0YXRlLm9iamVjdC50cmVlLnRpdGxlPC9oMj5cbiAgICAgICAgICAgICAgICAgICAgPGZvcm0gbmFtZT1cInN0cnVjdHVyZUZvcm1cIiBjbGFzcz1cInRyZWUtZmlsdGVyLWZvcm1cIiBbbmdDbGFzc109XCJ7YWN0aXZlOiAhIXRlcm1GaWx0ZXJ9XCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGVvLWZvcm0taW5wdXQgW3NraXBUb2dnbGVdPVwidHJ1ZVwiIFtsYWJlbF09XCIgJ2VvLnN0YXRlLm9iamVjdC50cmVlLmZpbHRlci5sYWJlbCcgfCB0cmFuc2xhdGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBbKG5nTW9kZWwpXT1cInRlcm1GaWx0ZXJcIiBtYXhsZW5ndGg9XCIyNTBcIiBbbmdNb2RlbE9wdGlvbnNdPVwie3N0YW5kYWxvbmU6IHRydWV9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25UZXJtRmlsdGVyQ2hhbmdlLmVtaXQoJGV2ZW50KVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPC9lby1mb3JtLWlucHV0PlxuICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZW8tYm9keSB0cmVlXCI+XG4gICAgICAgICAgICAgICAgICA8ZW8tdHJlZSBbdHJlZV09XCJjb250ZXh0VHJlZVwiIFtvcHRpb25zXT1cInttdWx0aXNlbGVjdDogZmFsc2UsIGRpc2FibGVEZXNlbGVjdGlvbjogdHJ1ZX1cIlxuICAgICAgICAgICAgICAgICAgICBbQHBhbmVsTG9hZGluZ109XCJsb2FkaW5nU3RhdGUudHJlZS5zdGF0ZVwiICpuZ0lmPVwiY29udGV4dFRyZWUgJiYgKGNvbnRleHRUcmVlLmxlbmd0aCA+IDEgfHwgKGNvbnRleHRUcmVlLmxlbmd0aCA9PT0gMSAmJiBjb250ZXh0VHJlZVswXS5jaGlsZHJlbi5sZW5ndGggJiYgY29udGV4dFRyZWVbMF0ubmFtZSkpXCIgW2hpZ2hsaWdodGVkTm9kZXNdPVwiaGlnaGxpZ2h0ZWROb2Rlc1wiXG4gICAgICAgICAgICAgICAgICAgIFt0cmVlVXBkYXRlXT1cImNvbnRleHRUcmVlVXBkYXRlXCIgWyhuZ01vZGVsKV09XCJzZWxlY3RlZE5vZGVzXCJcbiAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25UcmVlU2VsZWN0aW9uQ2hhbmdlZCgkZXZlbnQpXCI+PC9lby10cmVlPlxuICAgICAgICAgICAgICAgICAgPGgzICpuZ0lmPVwiY29udGV4dFRyZWVSZWY/Lmxlbmd0aFwiIHRpdGxlPVwie3snZW8uc3RhdGUub2JqZWN0LnRyZWUucmVmZXJlbmNlcy50b29sdGlwJ3x0cmFuc2xhdGV9fVwiXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0ZT5lby5zdGF0ZS5vYmplY3QudHJlZS5yZWZlcmVuY2VzPC9oMz5cbiAgICAgICAgICAgICAgICAgIDxlby10cmVlIFt0cmVlXT1cImNvbnRleHRUcmVlUmVmXCIgW29wdGlvbnNdPVwie211bHRpc2VsZWN0OiBmYWxzZSwgZGlzYWJsZURlc2VsZWN0aW9uOiB0cnVlfVwiXG4gICAgICAgICAgICAgICAgICAgIFtAcGFuZWxMb2FkaW5nXT1cImxvYWRpbmdTdGF0ZS50cmVlUmVmLnN0YXRlXCIgKm5nSWY9XCJjb250ZXh0VHJlZVJlZj8ubGVuZ3RoXCJcbiAgICAgICAgICAgICAgICAgICAgW2hpZ2hsaWdodGVkTm9kZXNdPVwiaGlnaGxpZ2h0ZWROb2Rlc1wiIFt0cmVlVXBkYXRlXT1cImNvbnRleHRUcmVlUmVmVXBkYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZE5vZGVzXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25UcmVlU2VsZWN0aW9uQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJyZWZlcmVuY2VcIj48L2VvLXRyZWU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZW8tbGlzdC1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSB5dmNTcGxpdEFyZWEgW3BhbmVsQ2xhc3NdPVwiJ3RyZWUnXCIgW3NpemVdPVwiMzVcIiBbdmlzaWJsZV09XCJ0cnVlXCI+XG4gICAgICAgICAgICA8ZW8tb2JqZWN0LXN0YXRlLWRldGFpbHMgKm5nSWY9XCJjb250ZXh0XCIgW2NvbnRleHRdPVwiY29udGV4dFwiIFtmcm9udFBhZ2VEYXRhXT1cImZyb250UGFnZURhdGFcIlxuICAgICAgICAgICAgICBbdmlzaWJsZV09XCJmcm9udFBhZ2VcIiAob25UYWJDaGFuZ2UpPVwic2V0dXBGcm9udFBhZ2UodHJ1ZSlcIiBbcGx1Z2luc109XCInb2JqZWN0LXN0YXRlLWRldGFpbHMtdGFiLm9iamVjdCcgfCBwbHVnaW5zXCI+XG4gICAgICAgICAgICA8L2VvLW9iamVjdC1zdGF0ZS1kZXRhaWxzPlxuXG4gICAgICAgICAgICA8ZW8tcmVzdWx0LWxpc3QgKm5nSWY9XCIhZnJvbnRQYWdlICYmIHNlYXJjaFJlc3VsdFwiIFtzZWxlY3RGaXJzdF09XCJmYWxzZVwiIFt0aXRsZV09XCJncmlkVGl0bGVcIlxuICAgICAgICAgICAgICBbcmVmZXJlbmNlXT1cInNlbGVjdGVkTm9kZT8uaXNSZWZlcmVuY2VcIiBbc2VhcmNoUmVzdWx0XT1cInNlYXJjaFJlc3VsdFwiIFtjb25maWdUeXBlXT1cImNvbmZpZ1R5cGVcIlxuICAgICAgICAgICAgICBbY29uZmlnQ29udGV4dF09XCJcIiBbZW1wdHlNZXNzYWdlXT1cIidlby5zdGF0ZS5vYmplY3QubGlzdC5lcnJvcidcIiAob25SZWZyZXNoKT1cInJlZnJlc2hMaXN0KClcIj5cbiAgICAgICAgICAgIDwvZW8tcmVzdWx0LWxpc3Q+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSB5dmNTcGxpdEFyZWEgW3NpemVdPVwiNDVcIiBbdmlzaWJsZV09XCJ0cnVlXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidHBsT2JqZWN0RGV0YWlsc1wiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwveXZjLXNwbGl0LXZpZXc+XG5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctdGVtcGxhdGUgI3RwbERldGFpbHNPbmx5PjxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0cGxPYmplY3REZXRhaWxzXCI+PC9uZy1jb250YWluZXI+PC9uZy10ZW1wbGF0ZT5cblxuICAgICAgPG5nLXRlbXBsYXRlICN0cGxPYmplY3REZXRhaWxzPlxuICAgICAgICA8ZW8tb2JqZWN0LWRldGFpbHMgW2FwcGx5U2VsZWN0aW9uXT1cInt9XCIgW3JlZmVyZW5jZV09XCJpc1JlZmVyZW5jZUFjdGl2ZVwiXG4gICAgICAgICAgW2NhY2hlTGF5b3V0XT1cIidvYmplY3Quc3RhdGUtLScgKyB0eXBlTmFtZSArICcub2JqZWN0LWRldGFpbHMnXCIgW3BsdWdpbnNdPVwiJ29iamVjdC1kZXRhaWxzLXRhYi5vYmplY3QnIHwgcGx1Z2luc1wiPlxuICAgICAgICA8L2VvLW9iamVjdC1kZXRhaWxzPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNlcnJvclRtcGw+XG4gIDxlby1lcnJvcjQwND48L2VvLWVycm9yNDA0PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -250,7 +250,7 @@ let SettingsComponent = class SettingsComponent {
|
|
|
250
250
|
});
|
|
251
251
|
}
|
|
252
252
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SettingsComponent, deps: [{ token: i0.Renderer2 }, { token: i1.UserService }, { token: i1.Config }, { token: i1.NotificationsService }, { token: i1.SystemService }, { token: i1.EventService }, { token: i1.CapabilitiesService }, { token: i2.PageTitleService }, { token: i3.AgentService }, { token: i4.UntypedFormBuilder }, { token: i1.AppCacheService }, { token: i1.LocalStorageService }, { token: i1.TranslateService }, { token: i0.ElementRef }, { token: i1.NotificationsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
253
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SettingsComponent, selector: "eo-settings", viewQueries: [{ propertyName: "files", first: true, predicate: ["files"], descendants: true }, { propertyName: "headerBg", first: true, predicate: ["headerBg"], descendants: true }, { propertyName: "userAvatar", first: true, predicate: ["userAvatar"], descendants: true }, { propertyName: "confirmDeleteBtn", first: true, predicate: ["confirmDeleteBtn"], descendants: true }, { propertyName: "profileImageOverlay", first: true, predicate: ["profileImageOverlay"], descendants: true }, { propertyName: "deputiesForm", first: true, predicate: NgForm, descendants: true }], ngImport: i0, template: "<div class=\"eo-settings\" *ngIf=\"user\" eoRtlAware>\n\n <div class=\"header\">\n\n <div #headerBg class=\"bg\"></div>\n <div class=\"fill\">\n <div class=\"meta username\">{{user.name}}</div>\n <h1>{{user.firstname}} {{user.lastname}}</h1>\n <div class=\"meta email\">{{user.email}}</div>\n\n <div class=\"presence\" *ngIf=\"capabilities.inbox\">\n <button class=\"toggle dark present\" id=\"presence\" (click)=\"setPresence(true)\" [ngClass]=\"{active: user.present}\"\n translate>eo.state.settings.presence.present</button>\n <button class=\"toggle dark absent\" (click)=\"setPresence(false)\" (keydown.tab)=\"tabAction($event.target)\" [ngClass]=\"{active: !user.present}\"\n translate>eo.state.settings.presence.absent</button>\n </div>\n </div>\n <div (mouseenter)=\"mouseEnter()\" (mouseleave)=\"mouseLeave()\" (keydown.tab)=\"mouseEnter()\">\n\n <eo-user-avatar #userAvatar class=\"userImage\" tabindex=\"-1\" eoRtlAware=\"full\">\n <input type=\"file\" accept=\".jpg, .png\" style=\"display:none;\" #files (change)=\"selectImage($event.target)\" (click)=\"$event.target.value=null\">\n </eo-user-avatar>\n <eo-dialog [styleClass]=\"'view'\" [minWidth]=\"'300px'\" [title]=\"'eo.state.settings.details.upload.dialog.title' | translate\"\n [(visible)]=\"showPreviewDialog\" [focusOnShow]=\"false\">\n <ng-container>\n <div class=\"contain\">\n <div class=\"attachments\">\n <div class=\"atta\">\n <img loading=\"lazy\" [src]=\"preview\">\n </div>\n <div class=\"user-avatar\" *ngIf=\"preview\">\n <eo-user-avatar class=\"preview-round\" [previewUri]=\"preview\"></eo-user-avatar>\n </div>\n </div>\n </div>\n <div class=\"button-block\">\n <button type=\"button\" (click)=\"closePreviewDialog()\" class=\"button danger\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial (click)=\"uploadNewUserImage()\" class=\"button primary\"\n translate>eo.state.settings.details.dialog.save</button>\n </div>\n </ng-container>\n </eo-dialog>\n\n <div class=\"overlay\" #profileImageOverlay tabindex=\"0\" eoRtlAware=\"full\">\n <span class=\"updateMessage\" *ngIf=\"hoverSelector\">\n <eo-icon tabindex=\"0\" (keydown.enter)=\"files.click()\" [iconSrc]=\"'assets/_default/svg/ic_edit.svg'\"\n (click)=\"files.click()\"></eo-icon>\n <eo-icon tabindex=\"0\" (keydown.enter)=\"trashIconClick()\" *ngIf=\"showDeleteIconTrash\"\n [iconSrc]=\"'assets/_default/svg/ic_trash.svg'\" aria-disabled=\"true\" (click)=\"trashIconClick()\"></eo-icon>\n </span>\n </div>\n </div>\n\n </div>\n\n <div class=\"body\" (keydown.tab)=\"tabAction($event.target)\">\n\n <div class=\"body-wrap\">\n\n <div class=\"section section-deputies\" *ngIf=\"capabilities.bpm && hasPrivilege('MANAGE_DEPUTY_LIST')\">\n <h3 translate>eo.state.settings.deputies</h3>\n\n <!-- deputies -->\n <div class=\"entry deputies\">\n <div class=\"label\" translate>eo.state.settings.deputies.label</div>\n <div class=\"values\">\n <form #deputiesForm=\"ngForm\" [ngClass]=\"{dirty: deputiesForm.dirty}\">\n <eo-organization name=\"deputies\" [dataMeta]=\"deputies.dataMeta\" [filterObject]=\"{type: 'USER'}\"\n [exceptions]=\"[user.name]\" [multiselect]=\"true\" tabindex=\"0\" [(ngModel)]=\"deputies.data\"></eo-organization>\n <div class=\"actions\" *ngIf=\"deputiesForm.valid && deputiesForm.dirty\">\n <button class=\"secondary\" (click)=\"resetDeputies()\" translate>eo.state.settings.deputies.cancel</button>\n <button class=\"primary\" (click)=\"saveDeputies()\" translate>eo.state.settings.deputies.save</button>\n </div>\n </form>\n </div>\n </div>\n\n <!-- substitute of -->\n <div class=\"entry substitute\">\n <div class=\"label\" translate>eo.state.settings.deputies.subsituteof.label</div>\n <div class=\"values\">\n <span class=\"chip\" *ngFor=\"let sub of user.substitutesOf\" [ngClass]=\"{present: sub.present}\">\n <eo-icon class=\"chip substitute substitute--present\" *ngIf=\"sub.present\"\n [iconSrc]=\"'assets/_default/svg/ic_done.svg'\"></eo-icon>\n <eo-icon class=\"chip substitute substitute--away\" *ngIf=\"!sub.present\"\n [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"></eo-icon>\n <span>{{sub.title}} ({{sub.name}})</span>\n </span>\n </div>\n </div>\n </div>\n\n <!-- password -->\n <section class=\"section section-password\">\n <div class=\"entry\">\n <div class=\"label\" translate>eo.password.reset</div>\n <div class=\"values\">\n <eo-simple-accordion #simpleAcc [header]=\"('eo.password.reset' | translate)\"\n [styles]=\"'setting__change-password'\" [headerClass]=\"'setting__change-password-header'\">\n\n <eo-change-password-form (onFormSumbit)=\"simpleAcc.selected = false\"></eo-change-password-form>\n </eo-simple-accordion>\n </div>\n </div>\n </section>\n\n <!-- language -->\n <div class=\"section section-lang\">\n <h3 translate>eo.state.settings.language</h3>\n <div class=\"entry lang-app\">\n <div class=\"label\" translate>eo.state.settings.language.client</div>\n <div class=\"values\">\n <button class=\"toggle\" (click)=\"changeClientLocale(locale.iso)\"\n [ngClass]=\"{active: translate.currentLang === locale.iso}\"\n *ngFor=\"let locale of clientLocales\">{{locale.label}}\n </button>\n </div>\n </div>\n\n <div class=\"entry lang-def\">\n <div class=\"label\" translate>eo.state.settings.language.schema</div>\n <div class=\"values\">\n <button class=\"toggle\" (click)=\"changeSchemaLocale(locale.code)\"\n [ngClass]=\"{active: activeSchema === locale.code}\"\n *ngFor=\"let locale of schemaLocales\">{{locale.displayname}}</button>\n </div>\n </div>\n </div>\n\n <!-- permissions -->\n <div class=\"section section-perm\">\n <h3 translate>eo.state.settings.permission</h3>\n <div class=\"entry perm-roles\">\n <div class=\"label\" translate>eo.state.settings.roles</div>\n <div class=\"values roles\">\n <eo-simple-accordion [header]=\"('eo.state.settings.roles' | translate)\">\n <eo-permissions [roles]=\"user.roles\"></eo-permissions>\n </eo-simple-accordion>\n </div>\n </div>\n </div>\n\n <!-- agent -->\n <div class=\"section section-others\">\n <h3 translate>eo.state.settings.others</h3>\n <ng-container *ngIf=\"showAgentConfig\">\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.agent</div>\n <div class=\"values\">\n <div class=\"use-agent\">\n <eo-checkbox [formControl]=\"useAgentControl\" [readonly]=\"useAgentControl.disabled\"\n *ngIf=\"useAgentControl\"></eo-checkbox>\n <span class=\"use-agent-label\" translate>eo.state.settings.agent.use</span>\n <!-- <a href=\"https://help.optimal-systems.com/yuuvisRAD/v60/user/client/de/client/integration/cln_tsk_agent_global.htm?Highlight=agent\">\n <eo-icon class=\"info-icon\" [iconSrc]=\"'assets/_default/svg/ic_info.svg'\"></eo-icon>\n </a> -->\n </div>\n </div>\n </div>\n\n\n <div class=\"entry lock-settings\" [ngClass]=\"{'lock-settings--show': (agentStatus | async)}\">\n <div class=\"label\" translate>eo.state.settings.lock</div>\n <div class=\"values\">\n <button class=\"toggle button-enabled\" (click)=\"changeLockSettings(LockSettings.always)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.always}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.enable</button>\n <button class=\"toggle button-disabled\" (click)=\"changeLockSettings(LockSettings.never)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.never}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.disable</button>\n <button class=\"toggle button-ask\" (click)=\"changeLockSettings(LockSettings.ask)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.ask}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.ask</button>\n </div>\n </div>\n\n\n </ng-container>\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.localSettings</div>\n <div class=\"values\">\n <div class=\"flex-row\">\n <button translate (click)=\"saveLocalSettings()\">eo.state.settings.localSettings.save</button>\n <button translate (click)=\"loadLocalSettings()\">eo.state.settings.localSettings.load</button>\n <button translate (click)=\"clearLocalSettings()\">eo.state.settings.localSettings.clear</button>\n </div>\n </div>\n </div>\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.dashboard.defaut</div>\n <div class=\"values\">\n <div class=\"flex-row\">\n <button translate (click)=\"deleteConfigDashboard = true\">eo.state.settings.dashboard.button.clear</button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <eo-dialog [title]=\"'eo.state.settings.dashboard.default.dialog.title' | translate\" [(visible)]=\"deleteConfigDashboard\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n <div>{{'eo.state.settings.dashboard.default.dialog.message' | translate}}</div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\" >\n <button type=\"button\" class=\"button cancel\" (click)=\"deleteConfigDashboard = false\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial #confirmDeleteBtn (click)=\"defaultDashboard(); deleteConfigDashboard = false\" class=\"button primary\"\n translate>eo.state.settings.dashboard.button.reset</button>\n </div>\n</eo-dialog>\n <eo-dialog [title]=\"'eo.state.settings.details.delete.dialog.title' | translate\" [(visible)]=\"showDeleteDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n <div>{{'eo.state.settings.details.delete.dialog.message' | translate}}</div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\" >\n <button type=\"button\" class=\"button cancel\" (click)=\"showDeleteDialog = false\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial #confirmDeleteBtn (click)=\"deleteUserImage()\" class=\"button primary\"\n translate>eo.state.settings.details.delete.dialog.ok</button>\n </div>\n </eo-dialog>\n\n <eo-dialog [title]=\"'eo.state.settings.details.upload.dialog.title' | translate\" [(visible)]=\"showErrorDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n\n <div>\n <p>{{fileName}}</p>\n <p *ngIf=\"viewMode ==='size'\" translate>eo.state.settings.details.upload.dialog.sizeError</p>\n <p *ngIf=\"viewMode ==='image'\" translate>eo.state.settings.details.upload.dialog.fileError </p>\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</button>\n <button type=\"button\" cdkFocusInitial (click)=\"files.click(); showErrorDialog = false\" class=\"button primary\"\n translate>eo.state.settings.details.upload.dialog.back</button>\n </div>\n </eo-dialog>\n</div>\n", styles: [":host{position:absolute;inset:0;display:flex;flex-flow:row;justify-content:center}:host .cache{display:flex;flex-flow:row;margin:0 var(--app-pane-padding)}.eo-settings{margin:var(--app-pane-padding);box-sizing:border-box;width:800px;background:var(--color-white);display:flex;flex-flow:column;box-shadow:0 2px 5px #0003}@media screen and (max-width: 832px){.eo-settings{margin:0;min-width:inherit;width:100%}}.eo-settings .header{min-height:200px;max-height:300px;position:relative;flex:1 1}@media screen and (max-width: 480px){.eo-settings .header{min-height:210px}}.eo-settings .header h1{margin:0;padding:0;font-size:var(--font-display);font-weight:var(--font-weight-light);line-height:1em}.eo-settings .header .meta{margin:calc(var(--app-pane-padding) / 2) 0}.eo-settings .header .presence{margin-top:calc(var(--app-pane-padding) * 2)}.eo-settings .header .bg{position:absolute;inset:0;background-size:cover;background-position:center center;filter:grayscale(1)}.eo-settings .header .fill{position:absolute;inset:0;background:rgba(var(--color-primary-rgb),.85);color:var(--color-white);padding:var(--app-pane-padding)}.eo-settings .header .userImage{position:absolute;z-index:1;right:var(--app-pane-padding);bottom:calc(var(--app-pane-padding) * -1);background-size:cover;width:150px;height:150px;border:4px solid var(--color-white);box-shadow:0 2px 5px rgba(var(--color-black-rgb),.26)}@media screen and (max-width: 480px){.eo-settings .header .userImage{width:105px;height:105px}}.eo-settings .header .userImage.rtl{left:var(--app-pane-padding);right:auto}.eo-settings .header .overlay{position:absolute;z-index:1;right:var(--app-pane-padding);bottom:calc(var(--app-pane-padding) * -1);width:150px;height:150px;border:4px solid var(--color-white);box-shadow:0 2px 5px rgba(var(--color-black-rgb),.26)}@media screen and (max-width: 480px){.eo-settings .header .overlay{width:105px;height:105px}}.eo-settings .header .overlay.rtl{left:var(--app-pane-padding);right:auto}.eo-settings .header .overlay:focus{border-color:var(--color-accent);opacity:2}.eo-settings .header .overlay:hover{border-color:var(--color-accent);opacity:100}.eo-settings .header .overlay .updateMessage{box-sizing:border-box;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#c0bcbcf1;background-clip:border-box}.eo-settings .header .overlay .updateMessage eo-icon{color:var(--color-white);width:48px;height:48px;opacity:.5;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}.eo-settings .header .overlay .updateMessage eo-icon:focus,.eo-settings .header .overlay .updateMessage eo-icon:hover{background-color:var(--color-primary);color:var(--color-white);cursor:pointer}.eo-settings .body{flex:1 1 auto;position:relative}.eo-settings .body .body-wrap{padding:var(--app-pane-padding);box-sizing:border-box;position:absolute;inset:0;overflow-y:auto;overflow-x:hidden}.eo-settings .body .section{margin-top:var(--app-pane-padding)}.eo-settings .body .section.section-deputies form{border-radius:2px}.eo-settings .body .section.section-deputies form .actions{display:flex;justify-content:flex-end;padding-top:calc(var(--app-pane-padding) / 4)}.eo-settings .body .section.section-deputies form .actions button{padding:calc(var(--app-pane-padding) / 4) calc(var(--app-pane-padding) / 2);border-radius:2px}.eo-settings .body .section.section-deputies form.dirty{padding:2px;background-color:rgba(var(--color-black-rgb),.06)}.eo-settings .body .section.section-deputies .entry.deputies .values{padding:0 2px;border:1px solid var(--eo-chips-border-color);border-radius:2px}.eo-settings .body .section.section-deputies .entry.substitute .values{display:flex;flex-flow:row wrap}.eo-settings .body .section.section-deputies .entry.substitute .values .chip{display:flex;align-items:center;font-size:.9em;padding:2px 4px}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute{width:calc(var(--app-pane-padding) * .75);height:calc(var(--app-pane-padding) * .6);border-radius:4px;border:0;color:var(--color-white)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute--present{background-color:var(--color-success)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute--away{background-color:var(--color-error)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip>span{margin:0 calc(var(--app-pane-padding) / 2)}.eo-settings .body .section.section-deputies ::ng-deep .values .ui-state-default{background-color:var(--color-white);border-color:rgba(var(--color-black-rgb),.1);border-radius:2px;padding:0 0 2px 2px;min-height:27px}.eo-settings .body .section.section-deputies ::ng-deep .values .ui-state-disabled{opacity:1;border-color:transparent}.eo-settings .body .section p{line-height:1.7em}.eo-settings .body .section h3{margin:0;padding:0 0 0 150px;color:var(--text-color-caption);font-weight:var(--font-weight-normal);font-size:var(--font-subhead)}@media screen and (max-width: 480px){.eo-settings .body .section h3{padding:0}}.eo-settings .body .section .entry{display:flex;flex-flow:row nowrap;padding:var(--app-pane-padding) 0 0 0}.eo-settings .body .section .entry.lock-settings{overflow:hidden;opacity:0;height:0;transition:all .5s ease-in-out}.eo-settings .body .section .entry.lock-settings--show{opacity:1;height:100%}@media screen and (max-width: 480px){.eo-settings .body .section .entry{flex-flow:column}}.eo-settings .body .section .entry .label{flex:0 0 150px;color:var(--text-color-caption)}@media screen and (max-width: 480px){.eo-settings .body .section .entry .label{margin-bottom:calc(var(--app-pane-padding) / 2);flex:0 0 auto}}.eo-settings .body .section .entry .values{flex:1 1 auto}.eo-settings .body .section .entry .values button{margin:0 4px 4px 0;cursor:pointer}.eo-settings .body .section .entry .values button.active{cursor:default}.eo-settings .body .section .entry .values button.toggle:disabled{cursor:default}.eo-settings .body .section .entry .use-agent{display:flex;align-items:center}.eo-settings .body .section .entry .use-agent .use-agent-label{margin:0 calc(var(--app-pane-padding) / 2);color:var(--text-color-caption)}.eo-settings .body .section .entry .use-agent eo-icon.info-icon{margin:0;padding:3px;box-sizing:border-box;border-radius:50%;color:var(--text-color-caption)}.eo-settings .body .section .entry .use-agent eo-icon.info-icon:hover{background-color:var(--color-primary);color:var(--color-white);cursor:pointer}.eo-settings .body .section .values.roles{display:flex;flex-flow:column;align-items:flex-start}.eo-settings .body .section .values.roles .role{display:flex;flex-flow:row nowrap;margin-bottom:calc(var(--app-pane-padding) / 2);word-break:break-all}.eo-settings .body .section .values.roles .role eo-icon{width:18px;height:18px;color:var(--text-color-hint)}.eo-settings .body .section .values.roles .role>div{padding:0 calc(var(--app-pane-padding) / 2)}.eo-settings .body .section .values.roles .role>div .description{font-size:var(--font-caption);color:var(--text-color-caption)}.eo-settings .body .toggle-btn{display:inline-block;padding:2px 5px;border-radius:2px;-webkit-border-radius:2px;background:rgba(var(--color-black-rgb),.1);color:var(--text-color-caption);cursor:pointer;margin-right:3px;text-decoration:none}.eo-settings.rtl .header .userImage{right:auto;left:var(--app-pane-padding)}.eo-settings.rtl .body .section h3{padding:0 150px 0 0}::ng-deep .view{width:100%;height:100%}::ng-deep .view .eo-dialog-content{overflow:hidden}::ng-deep .view .contain{display:flex;flex-flow:column}@media screen and (max-width: 480px){::ng-deep .view .contain{min-height:210px}}::ng-deep .view .contain .attachments{width:100%;height:100%;display:flex;align-items:center;justify-content:space-around;margin:5px 60px 0}::ng-deep .view .contain .attachments .atta{position:relative;display:block;padding:0;margin-inline:10px;margin-top:10px}::ng-deep .view .contain .attachments .atta img{max-width:200px;max-height:200px;min-width:80px;min-height:80px;border:2px solid #5c5959;box-sizing:border-box}::ng-deep .view .contain .attachments .user-avatar{display:flex;margin-right:109px;align-items:center}::ng-deep .view .contain .attachments .user-avatar .preview-round{width:90px;height:90px;border-radius:50%;border:2px solid #5c5959}::ng-deep .view .button-block{display:flex;margin:8px;justify-content:right}::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: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i7.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "directive", type: i8.RtlAwareDirective, selector: "[eoRtlAware]", inputs: ["eoRtlAware"] }, { kind: "component", type: i9.UserAvatarComponent, selector: "eo-user-avatar", inputs: ["showPresence", "previewUri"] }, { kind: "component", type: i10.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: i11.OrganizationComponent, selector: "eo-organization", inputs: ["removeCurrentUser", "situation", "multiselect", "readonly", "dataMeta", "placeholder", "exceptions", "filterObject"], outputs: ["onValueResolved", "onDataMetaChanged"] }, { kind: "component", type: i12.CheckboxComponent, selector: "eo-checkbox", inputs: ["required", "tristate", "readonly"] }, { kind: "component", type: i13.ChangePasswordFormComponent, selector: "eo-change-password-form", inputs: ["userRegex"], outputs: ["onFormSumbit"] }, { kind: "component", type: i14.PermissionsComponent, selector: "eo-permissions", inputs: ["roles"] }, { kind: "component", type: i15.SimpleAccordionComponent, selector: "eo-simple-accordion", inputs: ["header", "styles", "headerClass", "selected"], outputs: ["selectChange"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] }); }
|
|
253
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SettingsComponent, selector: "eo-settings", viewQueries: [{ propertyName: "files", first: true, predicate: ["files"], descendants: true }, { propertyName: "headerBg", first: true, predicate: ["headerBg"], descendants: true }, { propertyName: "userAvatar", first: true, predicate: ["userAvatar"], descendants: true }, { propertyName: "confirmDeleteBtn", first: true, predicate: ["confirmDeleteBtn"], descendants: true }, { propertyName: "profileImageOverlay", first: true, predicate: ["profileImageOverlay"], descendants: true }, { propertyName: "deputiesForm", first: true, predicate: NgForm, descendants: true }], ngImport: i0, template: "<div class=\"eo-settings\" *ngIf=\"user\" eoRtlAware>\n\n <div class=\"header\">\n\n <div #headerBg class=\"bg\"></div>\n <div class=\"fill\">\n <div class=\"meta username\">{{user.name}}</div>\n <h1>{{user.firstname}} {{user.lastname}}</h1>\n <div class=\"meta email\">{{user.email}}</div>\n\n <div class=\"presence\" *ngIf=\"capabilities.inbox\">\n <button class=\"toggle dark present\" id=\"presence\" (click)=\"setPresence(true)\" [ngClass]=\"{active: user.present}\"\n translate>eo.state.settings.presence.present</button>\n <button class=\"toggle dark absent\" (click)=\"setPresence(false)\" (keydown.tab)=\"tabAction($event.target)\" [ngClass]=\"{active: !user.present}\"\n translate>eo.state.settings.presence.absent</button>\n </div>\n </div>\n <div (mouseenter)=\"mouseEnter()\" (mouseleave)=\"mouseLeave()\" (keydown.tab)=\"mouseEnter()\">\n\n <eo-user-avatar #userAvatar class=\"userImage\" tabindex=\"-1\" eoRtlAware=\"full\">\n <input type=\"file\" accept=\".jpg, .png\" style=\"display:none;\" #files (change)=\"selectImage($event.target)\" (click)=\"$event.target.value=null\">\n </eo-user-avatar>\n <eo-dialog [styleClass]=\"'view'\" [minWidth]=\"'300px'\" [title]=\"'eo.state.settings.details.upload.dialog.title' | translate\"\n [(visible)]=\"showPreviewDialog\" [focusOnShow]=\"false\">\n <ng-container>\n <div class=\"contain\">\n <div class=\"attachments\">\n <div class=\"atta\">\n <img loading=\"lazy\" [src]=\"preview\">\n </div>\n <div class=\"user-avatar\" *ngIf=\"preview\">\n <eo-user-avatar class=\"preview-round\" [previewUri]=\"preview\"></eo-user-avatar>\n </div>\n </div>\n </div>\n <div class=\"button-block\">\n <button type=\"button\" (click)=\"closePreviewDialog()\" class=\"button danger\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial (click)=\"uploadNewUserImage()\" class=\"button primary\"\n translate>eo.state.settings.details.dialog.save</button>\n </div>\n </ng-container>\n </eo-dialog>\n\n <div class=\"overlay\" #profileImageOverlay tabindex=\"0\" eoRtlAware=\"full\">\n <span class=\"updateMessage\" *ngIf=\"hoverSelector\">\n <eo-icon tabindex=\"0\" (keydown.enter)=\"files.click()\" [iconSrc]=\"'assets/_default/svg/ic_edit.svg'\"\n (click)=\"files.click()\"></eo-icon>\n <eo-icon tabindex=\"0\" (keydown.enter)=\"trashIconClick()\" *ngIf=\"showDeleteIconTrash\"\n [iconSrc]=\"'assets/_default/svg/ic_trash.svg'\" aria-disabled=\"true\" (click)=\"trashIconClick()\"></eo-icon>\n </span>\n </div>\n </div>\n\n </div>\n\n <div class=\"body\" (keydown.tab)=\"tabAction($event.target)\">\n\n <div class=\"body-wrap\">\n\n <div class=\"section section-deputies\" *ngIf=\"capabilities.bpm && hasPrivilege('MANAGE_DEPUTY_LIST')\">\n <h3 translate>eo.state.settings.deputies</h3>\n\n <!-- deputies -->\n <div class=\"entry deputies\">\n <div class=\"label\" translate>eo.state.settings.deputies.label</div>\n <div class=\"values\">\n <form #deputiesForm=\"ngForm\" [ngClass]=\"{dirty: deputiesForm.dirty}\">\n <eo-organization name=\"deputies\" [dataMeta]=\"deputies.dataMeta\" [filterObject]=\"{type: 'USER'}\"\n [exceptions]=\"[user.name]\" [multiselect]=\"true\" tabindex=\"0\" [(ngModel)]=\"deputies.data\"></eo-organization>\n <div class=\"actions\" *ngIf=\"deputiesForm.valid && deputiesForm.dirty\">\n <button class=\"secondary\" (click)=\"resetDeputies()\" translate>eo.state.settings.deputies.cancel</button>\n <button class=\"primary\" (click)=\"saveDeputies()\" translate>eo.state.settings.deputies.save</button>\n </div>\n </form>\n </div>\n </div>\n\n <!-- substitute of -->\n <div class=\"entry substitute\">\n <div class=\"label\" translate>eo.state.settings.deputies.subsituteof.label</div>\n <div class=\"values\">\n <span class=\"chip\" *ngFor=\"let sub of user.substitutesOf\" [ngClass]=\"{present: sub.present}\">\n <eo-icon class=\"chip substitute substitute--present\" *ngIf=\"sub.present\"\n [iconSrc]=\"'assets/_default/svg/ic_done.svg'\"></eo-icon>\n <eo-icon class=\"chip substitute substitute--away\" *ngIf=\"!sub.present\"\n [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"></eo-icon>\n <span>{{sub.title}} ({{sub.name}})</span>\n </span>\n </div>\n </div>\n </div>\n\n <!-- password -->\n <section class=\"section section-password\">\n <div class=\"entry\">\n <div class=\"label\" translate>eo.password.reset</div>\n <div class=\"values\">\n <eo-simple-accordion #simpleAcc [header]=\"('eo.password.reset' | translate)\"\n [styles]=\"'setting__change-password'\" [headerClass]=\"'setting__change-password-header'\">\n\n <eo-change-password-form (onFormSumbit)=\"simpleAcc.selected = false\"></eo-change-password-form>\n </eo-simple-accordion>\n </div>\n </div>\n </section>\n\n <!-- language -->\n <div class=\"section section-lang\">\n <h3 translate>eo.state.settings.language</h3>\n <div class=\"entry lang-app\">\n <div class=\"label\" translate>eo.state.settings.language.client</div>\n <div class=\"values\">\n <button class=\"toggle\" (click)=\"changeClientLocale(locale.iso)\"\n [ngClass]=\"{active: translate.currentLang === locale.iso}\"\n *ngFor=\"let locale of clientLocales\">{{locale.label}}\n </button>\n </div>\n </div>\n\n <div class=\"entry lang-def\">\n <div class=\"label\" translate>eo.state.settings.language.schema</div>\n <div class=\"values\">\n <button class=\"toggle\" (click)=\"changeSchemaLocale(locale.code)\"\n [ngClass]=\"{active: activeSchema === locale.code}\"\n *ngFor=\"let locale of schemaLocales\">{{locale.displayname}}</button>\n </div>\n </div>\n </div>\n\n <!-- permissions -->\n <div class=\"section section-perm\">\n <h3 translate>eo.state.settings.permission</h3>\n <div class=\"entry perm-roles\">\n <div class=\"label\" translate>eo.state.settings.roles</div>\n <div class=\"values roles\">\n <eo-simple-accordion [header]=\"('eo.state.settings.roles' | translate)\">\n <eo-permissions [roles]=\"user.roles\"></eo-permissions>\n </eo-simple-accordion>\n </div>\n </div>\n </div>\n\n <!-- agent -->\n <div class=\"section section-others\">\n <h3 translate>eo.state.settings.others</h3>\n <ng-container *ngIf=\"showAgentConfig\">\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.agent</div>\n <div class=\"values\">\n <div class=\"use-agent\">\n <eo-checkbox [formControl]=\"useAgentControl\" [readonly]=\"useAgentControl.disabled\"\n *ngIf=\"useAgentControl\"></eo-checkbox>\n <span class=\"use-agent-label\" translate>eo.state.settings.agent.use</span>\n <!-- <a href=\"https://help.optimal-systems.com/yuuvisRAD/v60/user/client/de/client/integration/cln_tsk_agent_global.htm?Highlight=agent\">\n <eo-icon class=\"info-icon\" [iconSrc]=\"'assets/_default/svg/ic_info.svg'\"></eo-icon>\n </a> -->\n </div>\n </div>\n </div>\n\n\n <div class=\"entry lock-settings\" [ngClass]=\"{'lock-settings--show': (agentStatus | async)}\">\n <div class=\"label\" translate>eo.state.settings.lock</div>\n <div class=\"values\">\n <button class=\"toggle button-enabled\" (click)=\"changeLockSettings(LockSettings.always)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.always}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.enable</button>\n <button class=\"toggle button-disabled\" (click)=\"changeLockSettings(LockSettings.never)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.never}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.disable</button>\n <button class=\"toggle button-ask\" (click)=\"changeLockSettings(LockSettings.ask)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.ask}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.ask</button>\n </div>\n </div>\n\n\n </ng-container>\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.localSettings</div>\n <div class=\"values\">\n <div class=\"flex-row\">\n <button translate (click)=\"saveLocalSettings()\">eo.state.settings.localSettings.save</button>\n <button translate (click)=\"loadLocalSettings()\">eo.state.settings.localSettings.load</button>\n <button translate (click)=\"clearLocalSettings()\">eo.state.settings.localSettings.clear</button>\n </div>\n </div>\n </div>\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.dashboard.defaut</div>\n <div class=\"values\">\n <div class=\"flex-row\">\n <button translate (click)=\"deleteConfigDashboard = true\">eo.state.settings.dashboard.button.clear</button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <eo-dialog [title]=\"'eo.state.settings.dashboard.default.dialog.title' | translate\" [(visible)]=\"deleteConfigDashboard\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n <div>{{'eo.state.settings.dashboard.default.dialog.message' | translate}}</div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\" >\n <button type=\"button\" class=\"button cancel\" (click)=\"deleteConfigDashboard = false\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial #confirmDeleteBtn (click)=\"defaultDashboard(); deleteConfigDashboard = false\" class=\"button primary\"\n translate>eo.state.settings.dashboard.button.reset</button>\n </div>\n</eo-dialog>\n <eo-dialog [title]=\"'eo.state.settings.details.delete.dialog.title' | translate\" [(visible)]=\"showDeleteDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n <div>{{'eo.state.settings.details.delete.dialog.message' | translate}}</div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\" >\n <button type=\"button\" class=\"button cancel\" (click)=\"showDeleteDialog = false\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial #confirmDeleteBtn (click)=\"deleteUserImage()\" class=\"button primary\"\n translate>eo.state.settings.details.delete.dialog.ok</button>\n </div>\n </eo-dialog>\n\n <eo-dialog [title]=\"'eo.state.settings.details.upload.dialog.title' | translate\" [(visible)]=\"showErrorDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n\n <div>\n <p>{{fileName}}</p>\n <p *ngIf=\"viewMode ==='size'\" translate>eo.state.settings.details.upload.dialog.sizeError</p>\n <p *ngIf=\"viewMode ==='image'\" translate>eo.state.settings.details.upload.dialog.fileError </p>\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</button>\n <button type=\"button\" cdkFocusInitial (click)=\"files.click(); showErrorDialog = false\" class=\"button primary\"\n translate>eo.state.settings.details.upload.dialog.back</button>\n </div>\n </eo-dialog>\n</div>\n", styles: [":host{position:absolute;inset:0;display:flex;flex-flow:row;justify-content:center}:host .cache{display:flex;flex-flow:row;margin:0 var(--app-pane-padding)}.eo-settings{margin:var(--app-pane-padding);box-sizing:border-box;width:800px;background:var(--color-white);display:flex;flex-flow:column;box-shadow:0 2px 5px #0003}@media screen and (max-width: 832px){.eo-settings{margin:0;min-width:inherit;width:100%}}.eo-settings .header{min-height:200px;max-height:300px;position:relative;flex:1 1}@media screen and (max-width: 480px){.eo-settings .header{min-height:210px}}.eo-settings .header h1{margin:0;padding:0;font-size:var(--font-display);font-weight:var(--font-weight-light);line-height:1em}.eo-settings .header .meta{margin:calc(var(--app-pane-padding) / 2) 0}.eo-settings .header .presence{margin-top:calc(var(--app-pane-padding) * 2)}.eo-settings .header .bg{position:absolute;inset:0;background-size:cover;background-position:center center;filter:grayscale(1)}.eo-settings .header .fill{position:absolute;inset:0;background:rgba(var(--color-primary-rgb),.85);color:var(--color-white);padding:var(--app-pane-padding)}.eo-settings .header .userImage{position:absolute;z-index:1;right:var(--app-pane-padding);bottom:calc(var(--app-pane-padding) * -1);background-size:cover;width:150px;height:150px;border:4px solid var(--color-white);box-shadow:0 2px 5px rgba(var(--color-black-rgb),.26)}@media screen and (max-width: 480px){.eo-settings .header .userImage{width:105px;height:105px}}.eo-settings .header .userImage.rtl{left:var(--app-pane-padding);right:auto}.eo-settings .header .overlay{position:absolute;z-index:1;right:var(--app-pane-padding);bottom:calc(var(--app-pane-padding) * -1);width:150px;height:150px;border:4px solid var(--color-white);box-shadow:0 2px 5px rgba(var(--color-black-rgb),.26)}@media screen and (max-width: 480px){.eo-settings .header .overlay{width:105px;height:105px}}.eo-settings .header .overlay.rtl{left:var(--app-pane-padding);right:auto}.eo-settings .header .overlay:focus{border-color:var(--color-accent);opacity:2}.eo-settings .header .overlay:hover{border-color:var(--color-accent);opacity:100}.eo-settings .header .overlay .updateMessage{box-sizing:border-box;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#c0bcbcf1;background-clip:border-box}.eo-settings .header .overlay .updateMessage eo-icon{color:var(--color-white);width:48px;height:48px;opacity:.5;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}.eo-settings .header .overlay .updateMessage eo-icon:focus,.eo-settings .header .overlay .updateMessage eo-icon:hover{background-color:var(--color-primary);color:var(--color-white);cursor:pointer}.eo-settings .body{flex:1 1 auto;position:relative}.eo-settings .body .body-wrap{padding:var(--app-pane-padding);box-sizing:border-box;position:absolute;inset:0;overflow-y:auto;overflow-x:hidden}.eo-settings .body .section{margin-top:var(--app-pane-padding)}.eo-settings .body .section.section-deputies form{border-radius:2px}.eo-settings .body .section.section-deputies form .actions{display:flex;justify-content:flex-end;padding-top:calc(var(--app-pane-padding) / 4)}.eo-settings .body .section.section-deputies form .actions button{padding:calc(var(--app-pane-padding) / 4) calc(var(--app-pane-padding) / 2);border-radius:2px}.eo-settings .body .section.section-deputies form.dirty{padding:2px;background-color:rgba(var(--color-black-rgb),.06)}.eo-settings .body .section.section-deputies .entry.deputies .values{padding:0 2px;border:1px solid var(--eo-chips-border-color);border-radius:2px}.eo-settings .body .section.section-deputies .entry.substitute .values{display:flex;flex-flow:row wrap}.eo-settings .body .section.section-deputies .entry.substitute .values .chip{display:flex;align-items:center;font-size:.9em;padding:2px 4px}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute{width:calc(var(--app-pane-padding) * .75);height:calc(var(--app-pane-padding) * .6);border-radius:4px;border:0;color:var(--color-white)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute--present{background-color:var(--color-success)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute--away{background-color:var(--color-error)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip>span{margin:0 calc(var(--app-pane-padding) / 2)}.eo-settings .body .section.section-deputies ::ng-deep .values .ui-state-default{background-color:var(--color-white);border-color:rgba(var(--color-black-rgb),.1);border-radius:2px;padding:0 0 2px 2px;min-height:27px}.eo-settings .body .section.section-deputies ::ng-deep .values .ui-state-disabled{opacity:1;border-color:transparent}.eo-settings .body .section p{line-height:1.7em}.eo-settings .body .section h3{margin:0;padding:0 0 0 150px;color:var(--text-color-caption);font-weight:var(--font-weight-normal);font-size:var(--font-subhead)}@media screen and (max-width: 480px){.eo-settings .body .section h3{padding:0}}.eo-settings .body .section .entry{display:flex;flex-flow:row nowrap;padding:var(--app-pane-padding) 0 0 0}.eo-settings .body .section .entry.lock-settings{overflow:hidden;opacity:0;height:0;transition:all .5s ease-in-out}.eo-settings .body .section .entry.lock-settings--show{opacity:1;height:100%}@media screen and (max-width: 480px){.eo-settings .body .section .entry{flex-flow:column}}.eo-settings .body .section .entry .label{flex:0 0 150px;color:var(--text-color-caption)}@media screen and (max-width: 480px){.eo-settings .body .section .entry .label{margin-bottom:calc(var(--app-pane-padding) / 2);flex:0 0 auto}}.eo-settings .body .section .entry .values{flex:1 1 auto}.eo-settings .body .section .entry .values button{margin:0 4px 4px 0;cursor:pointer}.eo-settings .body .section .entry .values button.active{cursor:default}.eo-settings .body .section .entry .values button.toggle:disabled{cursor:default}.eo-settings .body .section .entry .use-agent{display:flex;align-items:center}.eo-settings .body .section .entry .use-agent .use-agent-label{margin:0 calc(var(--app-pane-padding) / 2);color:var(--text-color-caption)}.eo-settings .body .section .entry .use-agent eo-icon.info-icon{margin:0;padding:3px;box-sizing:border-box;border-radius:50%;color:var(--text-color-caption)}.eo-settings .body .section .entry .use-agent eo-icon.info-icon:hover{background-color:var(--color-primary);color:var(--color-white);cursor:pointer}.eo-settings .body .section .values.roles{display:flex;flex-flow:column;align-items:flex-start}.eo-settings .body .section .values.roles .role{display:flex;flex-flow:row nowrap;margin-bottom:calc(var(--app-pane-padding) / 2);word-break:break-all}.eo-settings .body .section .values.roles .role eo-icon{width:18px;height:18px;color:var(--text-color-hint)}.eo-settings .body .section .values.roles .role>div{padding:0 calc(var(--app-pane-padding) / 2)}.eo-settings .body .section .values.roles .role>div .description{font-size:var(--font-caption);color:var(--text-color-caption)}.eo-settings .body .toggle-btn{display:inline-block;padding:2px 5px;border-radius:2px;-webkit-border-radius:2px;background:rgba(var(--color-black-rgb),.1);color:var(--text-color-caption);cursor:pointer;margin-right:3px;text-decoration:none}.eo-settings.rtl .header .userImage{right:auto;left:var(--app-pane-padding)}.eo-settings.rtl .body .section h3{padding:0 150px 0 0}::ng-deep .view{width:100%;height:100%}::ng-deep .view .eo-dialog-content{overflow:hidden}::ng-deep .view .contain{display:flex;flex-flow:column}@media screen and (max-width: 480px){::ng-deep .view .contain{min-height:210px}}::ng-deep .view .contain .attachments{width:100%;height:100%;display:flex;align-items:center;justify-content:space-around;margin:5px 60px 0}::ng-deep .view .contain .attachments .atta{position:relative;display:block;padding:0;margin-inline:10px;margin-top:10px}::ng-deep .view .contain .attachments .atta img{max-width:200px;max-height:200px;min-width:80px;min-height:80px;border:2px solid #5c5959;box-sizing:border-box}::ng-deep .view .contain .attachments .user-avatar{display:flex;margin-right:109px;align-items:center}::ng-deep .view .contain .attachments .user-avatar .preview-round{width:90px;height:90px;border-radius:50%;border:2px solid #5c5959}::ng-deep .view .button-block{display:flex;margin:8px;justify-content:right}::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: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i7.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "directive", type: i8.RtlAwareDirective, selector: "[eoRtlAware]", inputs: ["eoRtlAware"] }, { kind: "component", type: i9.UserAvatarComponent, selector: "eo-user-avatar", inputs: ["showPresence", "previewUri"] }, { kind: "component", type: i10.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: i11.OrganizationComponent, selector: "eo-organization", inputs: ["removeCurrentUser", "situation", "multiselect", "readonly", "dataMeta", "placeholder", "exceptions", "filterObject"], outputs: ["onValueResolved", "onDataMetaChanged"] }, { kind: "component", type: i12.CheckboxComponent, selector: "eo-checkbox", inputs: ["required", "tristate", "readonly"] }, { kind: "component", type: i13.ChangePasswordFormComponent, selector: "eo-change-password-form", inputs: ["userRegex"], outputs: ["onFormSumbit"] }, { kind: "component", type: i14.PermissionsComponent, selector: "eo-permissions", inputs: ["roles"] }, { kind: "component", type: i15.SimpleAccordionComponent, selector: "eo-simple-accordion", inputs: ["header", "item", "styles", "headerClass", "selected"], outputs: ["selectChange"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] }); }
|
|
254
254
|
};
|
|
255
255
|
SettingsComponent = __decorate([
|
|
256
256
|
UntilDestroy()
|
|
@@ -8,6 +8,7 @@ export class SimpleAccordionComponent {
|
|
|
8
8
|
}
|
|
9
9
|
set selected(val) {
|
|
10
10
|
this._selected = val;
|
|
11
|
+
this.link = `object/${this.item?.id}?type=${this.item?.typeName}`;
|
|
11
12
|
}
|
|
12
13
|
get selected() {
|
|
13
14
|
return this._selected;
|
|
@@ -18,17 +19,22 @@ export class SimpleAccordionComponent {
|
|
|
18
19
|
this.selected = !this.selected;
|
|
19
20
|
this.selectChange.emit(this.selected);
|
|
20
21
|
}
|
|
22
|
+
onLinkClick(event) {
|
|
23
|
+
event.stopPropagation();
|
|
24
|
+
}
|
|
21
25
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SimpleAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
22
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SimpleAccordionComponent, selector: "eo-simple-accordion", inputs: { header: "header", styles: "styles", headerClass: "headerClass", selected: "selected" }, outputs: { selectChange: "selectChange" }, host: { properties: { "attr.role": "this.role", "class.selected": "this.selected" } }, ngImport: i0, template: "<button (click)=\"toggleOpen()\"
|
|
26
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SimpleAccordionComponent, selector: "eo-simple-accordion", inputs: { header: "header", item: "item", styles: "styles", headerClass: "headerClass", selected: "selected" }, outputs: { selectChange: "selectChange" }, host: { properties: { "attr.role": "this.role", "class.selected": "this.selected" } }, ngImport: i0, template: "<button (click)=\"toggleOpen()\">\n <div>\n {{header}}\n <a class=\"link router-link\" (click)=\"onLinkClick($event)\" [href]=\"link\">{{ this.item?.contextFolder?.title ||\n this.item?.contextFolder?.id }}</a>\n </div>\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 24 24\">\n <path d=\"M7.41 7.84L12 12.42l4.59-4.58L18 9.25l-6 6-6-6z\"></path>\n </svg>\n</button>\n<section *ngIf=\"selected\"><ng-content></ng-content></section>", styles: [":host{display:flex;flex-flow:column}:host.selected>button svg{transform:rotate(180deg)}:host>button{display:flex;align-items:center;justify-content:space-between}:host>button svg{width:18px;height:18px;fill:var(--text-color-caption)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
23
27
|
}
|
|
24
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SimpleAccordionComponent, decorators: [{
|
|
25
29
|
type: Component,
|
|
26
|
-
args: [{ selector: 'eo-simple-accordion', template: "<button (click)=\"toggleOpen()\"
|
|
30
|
+
args: [{ selector: 'eo-simple-accordion', template: "<button (click)=\"toggleOpen()\">\n <div>\n {{header}}\n <a class=\"link router-link\" (click)=\"onLinkClick($event)\" [href]=\"link\">{{ this.item?.contextFolder?.title ||\n this.item?.contextFolder?.id }}</a>\n </div>\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100%\" height=\"100%\" viewBox=\"0 0 24 24\">\n <path d=\"M7.41 7.84L12 12.42l4.59-4.58L18 9.25l-6 6-6-6z\"></path>\n </svg>\n</button>\n<section *ngIf=\"selected\"><ng-content></ng-content></section>", styles: [":host{display:flex;flex-flow:column}:host.selected>button svg{transform:rotate(180deg)}:host>button{display:flex;align-items:center;justify-content:space-between}:host>button svg{width:18px;height:18px;fill:var(--text-color-caption)}\n"] }]
|
|
27
31
|
}], propDecorators: { role: [{
|
|
28
32
|
type: HostBinding,
|
|
29
33
|
args: ['attr.role']
|
|
30
34
|
}], header: [{
|
|
31
35
|
type: Input
|
|
36
|
+
}], item: [{
|
|
37
|
+
type: Input
|
|
32
38
|
}], styles: [{
|
|
33
39
|
type: Input
|
|
34
40
|
}], headerClass: [{
|
|
@@ -41,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
41
47
|
}], selectChange: [{
|
|
42
48
|
type: Output
|
|
43
49
|
}] } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWFjY29yZGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9hY2NvcmRpb24vc2ltcGxlLWFjY29yZGlvbi9zaW1wbGUtYWNjb3JkaW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tZnJhbWV3b3JrL2FjY29yZGlvbi9zaW1wbGUtYWNjb3JkaW9uL3NpbXBsZS1hY2NvcmRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7OztBQU9sRixNQUFNLE9BQU8sd0JBQXdCO0lBTHJDO1FBTzRCLFNBQUksR0FBRyxTQUFTLENBQUM7UUFvQmpDLGlCQUFZLEdBQTBCLElBQUksWUFBWSxFQUFFLENBQUM7S0F3QnBFO0lBbkNDLElBRUksUUFBUSxDQUFDLEdBQVk7UUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7UUFDckIsSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxTQUFTLElBQUksQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUM7SUFDcEUsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBR0Qsd0JBQXdCO0lBQ3hCLGtCQUFrQjtJQUVsQixVQUFVO1FBQ1IsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDL0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBaUI7UUFDM0IsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzFCLENBQUM7OEdBakNVLHdCQUF3QjtrR0FBeEIsd0JBQXdCLDZTQ1ByQyw0ZUFVNkQ7OzJGREhoRCx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0UscUJBQXFCOzhCQU1MLElBQUk7c0JBQTdCLFdBQVc7dUJBQUMsV0FBVztnQkFJZixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUlGLFFBQVE7c0JBRlgsV0FBVzt1QkFBQyxnQkFBZ0I7O3NCQUM1QixLQUFLO2dCQVVJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLXNpbXBsZS1hY2NvcmRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vc2ltcGxlLWFjY29yZGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NpbXBsZS1hY2NvcmRpb24uY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2ltcGxlQWNjb3JkaW9uQ29tcG9uZW50IHtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpIHJvbGUgPSAndGFibGlzdCc7XG4gIF9zZWxlY3RlZDogYm9vbGVhbjtcbiAgbGluazogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIGhlYWRlcjogc3RyaW5nO1xuICBASW5wdXQoKSBpdGVtPzogYW55O1xuICBASW5wdXQoKSBzdHlsZXM6IHN0cmluZztcbiAgQElucHV0KCkgaGVhZGVyQ2xhc3M6IHN0cmluZztcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNlbGVjdGVkJylcbiAgQElucHV0KClcbiAgc2V0IHNlbGVjdGVkKHZhbDogYm9vbGVhbikge1xuICAgIHRoaXMuX3NlbGVjdGVkID0gdmFsO1xuICAgIHRoaXMubGluayA9IGBvYmplY3QvJHt0aGlzLml0ZW0/LmlkfT90eXBlPSR7dGhpcy5pdGVtPy50eXBlTmFtZX1gO1xuICB9XG5cbiAgZ2V0IHNlbGVjdGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZDtcbiAgfVxuXG4gIEBPdXRwdXQoKSBzZWxlY3RDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgLy8gaW5kZXg6IG51bWJlciA9IG51bGw7XG4gIC8vIGxhc3RJbmRleCA9IC0xO1xuXG4gIHRvZ2dsZU9wZW4oKSB7XG4gICAgdGhpcy5zZWxlY3RlZCA9ICF0aGlzLnNlbGVjdGVkO1xuICAgIHRoaXMuc2VsZWN0Q2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZCk7XG4gIH1cblxuICBvbkxpbmtDbGljayhldmVudDogTW91c2VFdmVudCkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICB9XG5cbiAgLy8gb25UYWJPcGVuKGUpIHtcbiAgLy8gICBjb25zdCBpbmRleCA9IGUuaW5kZXg7XG4gIC8vICAgdGhpcy5zZWxlY3RlZCA9IHRydWU7XG4gIC8vICAgdGhpcy5vbk9wZW4uZW1pdCh0aGlzLnNlbGVjdGVkKTtcbiAgLy8gfVxuXG4gIC8vIG9uVGFiQ2xvc2UoZSA9IGZhbHNlKSB7XG4gIC8vICAgdGhpcy5pbmRleCA9IHRoaXMubGFzdEluZGV4LS07XG4gIC8vICAgdGhpcy5zZWxlY3RlZCA9IGZhbHNlO1xuICAvLyAgIHRoaXMub25PcGVuLmVtaXQodGhpcy5zZWxlY3RlZCk7XG4gIC8vIH1cbn1cbiIsIjxidXR0b24gKGNsaWNrKT1cInRvZ2dsZU9wZW4oKVwiPlxuICA8ZGl2PlxuICAgIHt7aGVhZGVyfX1cbiAgICA8YSBjbGFzcz1cImxpbmsgcm91dGVyLWxpbmtcIiAoY2xpY2spPVwib25MaW5rQ2xpY2soJGV2ZW50KVwiIFtocmVmXT1cImxpbmtcIj57eyB0aGlzLml0ZW0/LmNvbnRleHRGb2xkZXI/LnRpdGxlIHx8XG4gICAgICB0aGlzLml0ZW0/LmNvbnRleHRGb2xkZXI/LmlkIH19PC9hPlxuICA8L2Rpdj5cbiAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIj5cbiAgICA8cGF0aCBkPVwiTTcuNDEgNy44NEwxMiAxMi40Mmw0LjU5LTQuNThMMTggOS4yNWwtNiA2LTYtNnpcIj48L3BhdGg+XG4gIDwvc3ZnPlxuPC9idXR0b24+XG48c2VjdGlvbiAqbmdJZj1cInNlbGVjdGVkXCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50Pjwvc2VjdGlvbj4iXX0=
|