@openziti/ziti-console-lib 0.5.1 → 0.6.1
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/assets/scripts/growler.js +4 -0
- package/assets/styles/forms.css +7 -7
- package/assets/styles/global.scss +273 -22
- package/assets/styles/header.css +1 -1
- package/assets/styles/ziti.css +40 -40
- package/esm2022/lib/features/card/card.component.mjs +2 -2
- package/esm2022/lib/features/data-table/cells/table-cell-menu/table-cell-menu.component.mjs +2 -2
- package/esm2022/lib/features/data-table/cells/table-cell-name/table-cell-name.component.mjs +12 -3
- package/esm2022/lib/features/data-table/column-headers/table-column-default/table-column-default.component.mjs +2 -2
- package/esm2022/lib/features/data-table/column-headers/table-column-menu/table-column-menu.component.mjs +2 -2
- package/esm2022/lib/features/data-table/data-table.component.mjs +2 -2
- package/esm2022/lib/features/dynamic-widgets/object/object.component.mjs +2 -2
- package/esm2022/lib/features/dynamic-widgets/text-list/text-list-input.component.mjs +2 -2
- package/esm2022/lib/features/json-view/json-view.component.mjs +2 -2
- package/esm2022/lib/features/list-page-features/list-page-header/list-page-header.component.mjs +22 -3
- package/esm2022/lib/features/multi-action-button/multi-action-button.component.mjs +2 -2
- package/esm2022/lib/features/overrides/overrides.component.mjs +2 -2
- package/esm2022/lib/features/preview-list/preview-list.component.mjs +2 -2
- package/esm2022/lib/features/projectable-forms/auth-policy/auth-policy-form.component.mjs +342 -0
- package/esm2022/lib/features/projectable-forms/auth-policy/auth-policy-form.service.mjs +127 -0
- package/esm2022/lib/features/projectable-forms/edge-router/edge-router-form.component.mjs +2 -2
- package/esm2022/lib/features/projectable-forms/form-field-container/form-field-container.component.mjs +2 -2
- package/esm2022/lib/features/projectable-forms/form-header/form-header.component.mjs +2 -2
- package/esm2022/lib/features/projectable-forms/identity/identity-form.component.mjs +2 -2
- package/esm2022/lib/features/projectable-forms/jwt-signer/jwt-signer-form.component.mjs +338 -0
- package/esm2022/lib/features/projectable-forms/jwt-signer/jwt-signer-form.service.mjs +92 -0
- package/esm2022/lib/features/projectable-forms/service/service-form.component.mjs +3 -3
- package/esm2022/lib/features/projectable-forms/service/simple-service/simple-service.component.mjs +14 -11
- package/esm2022/lib/features/reset-enrollment/reset-enrollment.component.mjs +2 -2
- package/esm2022/lib/features/sidebars/side-navbar/side-navbar.component.mjs +2 -2
- package/esm2022/lib/features/tag-selector/tag-selector.component.mjs +2 -2
- package/esm2022/lib/features/visualizer/network-visualizer/network-visualizer.component.mjs +2 -2
- package/esm2022/lib/features/wrappers/zac-wrapper.component.mjs +3 -3
- package/esm2022/lib/models/auth-policy.mjs +31 -0
- package/esm2022/lib/models/jwt-signer.mjs +19 -0
- package/esm2022/lib/pages/auth-policies/auth-policies-page.component.mjs +115 -0
- package/esm2022/lib/pages/auth-policies/auth-policies-page.service.mjs +207 -0
- package/esm2022/lib/pages/edge-routers/edge-routers-page.component.mjs +2 -2
- package/esm2022/lib/pages/identities/identities-page.component.mjs +2 -2
- package/esm2022/lib/pages/jwt-signers/jwt-signers-page.component.mjs +96 -0
- package/esm2022/lib/pages/jwt-signers/jwt-signers-page.service.mjs +177 -0
- package/esm2022/lib/pages/services/services-page.component.mjs +2 -2
- package/esm2022/lib/pages/terminators/terminators-page.component.mjs +2 -2
- package/esm2022/lib/services/login-service.class.mjs +1 -1
- package/esm2022/lib/services/node-data.service.mjs +23 -3
- package/esm2022/lib/services/noop-login.service.mjs +1 -4
- package/esm2022/lib/services/settings-service.class.mjs +1 -1
- package/esm2022/lib/services/settings.service.mjs +6 -1
- package/esm2022/lib/services/validation.service.mjs +23 -1
- package/esm2022/lib/services/ziti-controller-data.service.mjs +16 -1
- package/esm2022/lib/services/ziti-data.service.mjs +4 -4
- package/esm2022/lib/ziti-console-lib.module.mjs +29 -5
- package/esm2022/public-api.mjs +9 -1
- package/fesm2022/openziti-ziti-console-lib.mjs +1874 -356
- package/fesm2022/openziti-ziti-console-lib.mjs.map +1 -1
- package/lib/features/data-table/cells/table-cell-name/table-cell-name.component.d.ts.map +1 -1
- package/lib/features/list-page-features/list-page-header/list-page-header.component.d.ts +1 -0
- package/lib/features/list-page-features/list-page-header/list-page-header.component.d.ts.map +1 -1
- package/lib/features/projectable-forms/auth-policy/auth-policy-form.component.d.ts +75 -0
- package/lib/features/projectable-forms/auth-policy/auth-policy-form.component.d.ts.map +1 -0
- package/lib/features/projectable-forms/auth-policy/auth-policy-form.service.d.ts +38 -0
- package/lib/features/projectable-forms/auth-policy/auth-policy-form.service.d.ts.map +1 -0
- package/lib/features/projectable-forms/jwt-signer/jwt-signer-form.component.d.ts +64 -0
- package/lib/features/projectable-forms/jwt-signer/jwt-signer-form.component.d.ts.map +1 -0
- package/lib/features/projectable-forms/jwt-signer/jwt-signer-form.service.d.ts +21 -0
- package/lib/features/projectable-forms/jwt-signer/jwt-signer-form.service.d.ts.map +1 -0
- package/lib/features/projectable-forms/service/simple-service/simple-service.component.d.ts.map +1 -1
- package/lib/models/auth-policy.d.ts +8 -0
- package/lib/models/auth-policy.d.ts.map +1 -0
- package/lib/models/jwt-signer.d.ts +16 -0
- package/lib/models/jwt-signer.d.ts.map +1 -0
- package/lib/pages/auth-policies/auth-policies-page.component.d.ts +29 -0
- package/lib/pages/auth-policies/auth-policies-page.component.d.ts.map +1 -0
- package/lib/pages/auth-policies/auth-policies-page.service.d.ts +34 -0
- package/lib/pages/auth-policies/auth-policies-page.service.d.ts.map +1 -0
- package/lib/pages/jwt-signers/jwt-signers-page.component.d.ts +29 -0
- package/lib/pages/jwt-signers/jwt-signers-page.component.d.ts.map +1 -0
- package/lib/pages/jwt-signers/jwt-signers-page.service.d.ts +31 -0
- package/lib/pages/jwt-signers/jwt-signers-page.service.d.ts.map +1 -0
- package/lib/services/login-service.class.d.ts +0 -1
- package/lib/services/login-service.class.d.ts.map +1 -1
- package/lib/services/node-data.service.d.ts +1 -0
- package/lib/services/node-data.service.d.ts.map +1 -1
- package/lib/services/noop-login.service.d.ts +0 -1
- package/lib/services/noop-login.service.d.ts.map +1 -1
- package/lib/services/settings-service.class.d.ts +1 -0
- package/lib/services/settings-service.class.d.ts.map +1 -1
- package/lib/services/settings.service.d.ts +1 -0
- package/lib/services/settings.service.d.ts.map +1 -1
- package/lib/services/validation.service.d.ts +2 -0
- package/lib/services/validation.service.d.ts.map +1 -1
- package/lib/services/ziti-controller-data.service.d.ts +1 -0
- package/lib/services/ziti-controller-data.service.d.ts.map +1 -1
- package/lib/services/ziti-data.service.d.ts +4 -3
- package/lib/services/ziti-data.service.d.ts.map +1 -1
- package/lib/ziti-console-lib.module.d.ts +22 -17
- package/lib/ziti-console-lib.module.d.ts.map +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +8 -0
- package/public-api.d.ts.map +1 -1
|
@@ -65,7 +65,7 @@ class ObjectComponent {
|
|
|
65
65
|
<div *ngIf="showAdd" class="save-button button" (click)="addClicked()">Add</div>
|
|
66
66
|
</div>
|
|
67
67
|
</div>
|
|
68
|
-
`, isInline: true, styles: [":host>label{margin-top:0}.wrapper{border-radius:.5rem;padding:var(--paddingMedium);display:flex;flex-direction:column;gap:5px;margin-top:var(--marginMedium)}.wrapper.closed{cursor:pointer}.wrapper .object-main-content[hidden]{display:none}.wrapper .save-button{margin-top:var(--marginSmall);height:35px;min-width:140px}.object-header-container{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start}.object-header-container .object-header-title{width:100%;display:flex;justify-content:space-between;align-items:center;height:23px;cursor:pointer}.object-header-container .object-label{margin:0;cursor:pointer}.expand-toggle{font-family:zac;font-weight:600;font-size:23px;width:27px;color:var(--stroke);height:20px;margin-top:-3px;cursor:pointer}.expand-toggle:before{content:\"\\e91f\"}.expand-toggle.open{transform:rotate(270deg)}.added-items-list{margin-top:var(--marginSmall);width:100%}.added-items-list label,.added-items-list .added-items-label{margin-top:0}.added-items-list .object-list-items-container{background-color:#ffffff4d;border-radius:
|
|
68
|
+
`, isInline: true, styles: [":host>label{margin-top:0}.wrapper{border-radius:.5rem;padding:var(--paddingMedium);display:flex;flex-direction:column;gap:5px;margin-top:var(--marginMedium)}.wrapper.closed{cursor:pointer}.wrapper .object-main-content[hidden]{display:none}.wrapper .save-button{margin-top:var(--marginSmall);height:35px;min-width:140px}.object-header-container{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start}.object-header-container .object-header-title{width:100%;display:flex;justify-content:space-between;align-items:center;height:23px;cursor:pointer}.object-header-container .object-label{margin:0;cursor:pointer}.expand-toggle{font-family:zac;font-weight:600;font-size:23px;width:27px;color:var(--stroke);height:20px;margin-top:-3px;cursor:pointer}.expand-toggle:before{content:\"\\e91f\"}.expand-toggle.open{transform:rotate(270deg)}.added-items-list{margin-top:var(--marginSmall);width:100%}.added-items-list label,.added-items-list .added-items-label{margin-top:0}.added-items-list .object-list-items-container{background-color:#ffffff4d;border-radius:var(--inputBorderRadius);display:flex;flex-direction:column;padding:5px}.added-items-list .object-list-items-container .none-added-label{padding-left:var(--paddingSmall);color:var(--white);opacity:.7}.added-items-list .object-list-item{display:flex;flex-direction:row;justify-content:flex-start;align-items:center}.added-items-list .object-list-item .preview-name{color:var(--formBackground);font-weight:600;margin-left:var(--marginSmall);margin-bottom:2px}.added-items-list .object-list-item .icon-clear{color:var(--formBackground);cursor:pointer}.added-items-list .object-list-item .icon-clear:hover{color:var(--primary)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] }); }
|
|
69
69
|
}
|
|
70
70
|
export { ObjectComponent };
|
|
71
71
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ObjectComponent, decorators: [{
|
|
@@ -92,7 +92,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
92
92
|
<div *ngIf="showAdd" class="save-button button" (click)="addClicked()">Add</div>
|
|
93
93
|
</div>
|
|
94
94
|
</div>
|
|
95
|
-
`, styles: [":host>label{margin-top:0}.wrapper{border-radius:.5rem;padding:var(--paddingMedium);display:flex;flex-direction:column;gap:5px;margin-top:var(--marginMedium)}.wrapper.closed{cursor:pointer}.wrapper .object-main-content[hidden]{display:none}.wrapper .save-button{margin-top:var(--marginSmall);height:35px;min-width:140px}.object-header-container{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start}.object-header-container .object-header-title{width:100%;display:flex;justify-content:space-between;align-items:center;height:23px;cursor:pointer}.object-header-container .object-label{margin:0;cursor:pointer}.expand-toggle{font-family:zac;font-weight:600;font-size:23px;width:27px;color:var(--stroke);height:20px;margin-top:-3px;cursor:pointer}.expand-toggle:before{content:\"\\e91f\"}.expand-toggle.open{transform:rotate(270deg)}.added-items-list{margin-top:var(--marginSmall);width:100%}.added-items-list label,.added-items-list .added-items-label{margin-top:0}.added-items-list .object-list-items-container{background-color:#ffffff4d;border-radius:
|
|
95
|
+
`, styles: [":host>label{margin-top:0}.wrapper{border-radius:.5rem;padding:var(--paddingMedium);display:flex;flex-direction:column;gap:5px;margin-top:var(--marginMedium)}.wrapper.closed{cursor:pointer}.wrapper .object-main-content[hidden]{display:none}.wrapper .save-button{margin-top:var(--marginSmall);height:35px;min-width:140px}.object-header-container{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start}.object-header-container .object-header-title{width:100%;display:flex;justify-content:space-between;align-items:center;height:23px;cursor:pointer}.object-header-container .object-label{margin:0;cursor:pointer}.expand-toggle{font-family:zac;font-weight:600;font-size:23px;width:27px;color:var(--stroke);height:20px;margin-top:-3px;cursor:pointer}.expand-toggle:before{content:\"\\e91f\"}.expand-toggle.open{transform:rotate(270deg)}.added-items-list{margin-top:var(--marginSmall);width:100%}.added-items-list label,.added-items-list .added-items-label{margin-top:0}.added-items-list .object-list-items-container{background-color:#ffffff4d;border-radius:var(--inputBorderRadius);display:flex;flex-direction:column;padding:5px}.added-items-list .object-list-items-container .none-added-label{padding-left:var(--paddingSmall);color:var(--white);opacity:.7}.added-items-list .object-list-item{display:flex;flex-direction:row;justify-content:flex-start;align-items:center}.added-items-list .object-list-item .preview-name{color:var(--formBackground);font-weight:600;margin-left:var(--marginSmall);margin-bottom:2px}.added-items-list .object-list-item .icon-clear{color:var(--formBackground);cursor:pointer}.added-items-list .object-list-item .icon-clear:hover{color:var(--primary)}\n"] }]
|
|
96
96
|
}], ctorParameters: function () { return []; }, propDecorators: { wrapperContents: [{
|
|
97
97
|
type: ViewChild,
|
|
98
98
|
args: ["wrappercontents", { read: ViewContainerRef, static: true }]
|
|
@@ -77,7 +77,7 @@ class TextListInputComponent {
|
|
|
77
77
|
</p-chips>
|
|
78
78
|
<div *ngIf="error" class="error">{{error}}</div>
|
|
79
79
|
</div>
|
|
80
|
-
`, isInline: true, styles: ["
|
|
80
|
+
`, isInline: true, styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.Chips, selector: "p-chips", inputs: ["style", "styleClass", "disabled", "field", "placeholder", "max", "ariaLabel", "ariaLabelledBy", "tabindex", "inputId", "allowDuplicate", "inputStyle", "inputStyleClass", "addOnTab", "addOnBlur", "separator", "showClear"], outputs: ["onAdd", "onRemove", "onFocus", "onBlur", "onChipClick", "onClear"] }] }); }
|
|
81
81
|
}
|
|
82
82
|
export { TextListInputComponent };
|
|
83
83
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TextListInputComponent, decorators: [{
|
|
@@ -97,7 +97,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
97
97
|
</p-chips>
|
|
98
98
|
<div *ngIf="error" class="error">{{error}}</div>
|
|
99
99
|
</div>
|
|
100
|
-
|
|
100
|
+
` }]
|
|
101
101
|
}], propDecorators: { fieldName: [{
|
|
102
102
|
type: Input
|
|
103
103
|
}], fieldValue: [{
|
|
@@ -181,12 +181,12 @@ class JsonViewComponent {
|
|
|
181
181
|
this.growlerService.show(growlerData);
|
|
182
182
|
}
|
|
183
183
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: JsonViewComponent, deps: [{ token: i1.GrowlerService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
184
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: JsonViewComponent, selector: "lib-json-view", inputs: { data: "data", schema: "schema", readOnly: "readOnly", jsonInvalid: "jsonInvalid", showCopy: "showCopy" }, outputs: { dataChange: "dataChange", jsonChange: "jsonChange", jsonInvalidChange: "jsonInvalidChange" }, viewQueries: [{ propertyName: "editorDiv", first: true, predicate: ["editor"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div id=\"jsoneditor\" [ngClass]=\"{'read-only': readOnly}\" #editor (keyup.enter)=\"enterKeyPressed($event)\" (keyup)=\"jsonChanged($event)\"></div>\n<div *ngIf=\"showCopy\" class=\"icon-copy copy\" (click)=\"copyToClipboad()\"></div>", styles: [":host{display:flex;width:100%;height:100%;flex-direction:column;position:relative}#jsoneditor{height:100%;min-height:200px;border-color:var(--inputBorder);border-style:solid;border-radius:
|
|
184
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: JsonViewComponent, selector: "lib-json-view", inputs: { data: "data", schema: "schema", readOnly: "readOnly", jsonInvalid: "jsonInvalid", showCopy: "showCopy" }, outputs: { dataChange: "dataChange", jsonChange: "jsonChange", jsonInvalidChange: "jsonInvalidChange" }, viewQueries: [{ propertyName: "editorDiv", first: true, predicate: ["editor"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div id=\"jsoneditor\" [ngClass]=\"{'read-only': readOnly}\" #editor (keyup.enter)=\"enterKeyPressed($event)\" (keyup)=\"jsonChanged($event)\"></div>\n<div *ngIf=\"showCopy\" class=\"icon-copy copy\" (click)=\"copyToClipboad()\"></div>", styles: [":host{display:flex;width:100%;height:100%;flex-direction:column;position:relative}#jsoneditor{height:100%;min-height:200px;border-color:var(--inputBorder);border-style:solid;border-radius:var(--inputBorderRadius);overflow:hidden}#jsoneditor.read-only .jse-menu{display:none}.copy.icon-copy{position:absolute;top:10px;right:10px;background:transparent}::ng-deep #jsoneditor .jse-json-node.svelte-1wlxti1 .jse-insert-area.svelte-1wlxti1.svelte-1wlxti1.svelte-1wlxti1{display:none}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
185
185
|
}
|
|
186
186
|
export { JsonViewComponent };
|
|
187
187
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: JsonViewComponent, decorators: [{
|
|
188
188
|
type: Component,
|
|
189
|
-
args: [{ selector: 'lib-json-view', template: "<div id=\"jsoneditor\" [ngClass]=\"{'read-only': readOnly}\" #editor (keyup.enter)=\"enterKeyPressed($event)\" (keyup)=\"jsonChanged($event)\"></div>\n<div *ngIf=\"showCopy\" class=\"icon-copy copy\" (click)=\"copyToClipboad()\"></div>", styles: [":host{display:flex;width:100%;height:100%;flex-direction:column;position:relative}#jsoneditor{height:100%;min-height:200px;border-color:var(--inputBorder);border-style:solid;border-radius:
|
|
189
|
+
args: [{ selector: 'lib-json-view', template: "<div id=\"jsoneditor\" [ngClass]=\"{'read-only': readOnly}\" #editor (keyup.enter)=\"enterKeyPressed($event)\" (keyup)=\"jsonChanged($event)\"></div>\n<div *ngIf=\"showCopy\" class=\"icon-copy copy\" (click)=\"copyToClipboad()\"></div>", styles: [":host{display:flex;width:100%;height:100%;flex-direction:column;position:relative}#jsoneditor{height:100%;min-height:200px;border-color:var(--inputBorder);border-style:solid;border-radius:var(--inputBorderRadius);overflow:hidden}#jsoneditor.read-only .jse-menu{display:none}.copy.icon-copy{position:absolute;top:10px;right:10px;background:transparent}::ng-deep #jsoneditor .jse-json-node.svelte-1wlxti1 .jse-insert-area.svelte-1wlxti1.svelte-1wlxti1.svelte-1wlxti1{display:none}\n"] }]
|
|
190
190
|
}], ctorParameters: function () { return [{ type: i1.GrowlerService }]; }, propDecorators: { data: [{
|
|
191
191
|
type: Input
|
|
192
192
|
}], schema: [{
|
package/esm2022/lib/features/list-page-features/list-page-header/list-page-header.component.mjs
CHANGED
|
@@ -27,13 +27,32 @@ class ListPageHeaderComponent {
|
|
|
27
27
|
clickAction(value) {
|
|
28
28
|
this.actionClicked.emit(value);
|
|
29
29
|
}
|
|
30
|
+
tabSelected(tab) {
|
|
31
|
+
const parsedUrl = new URL(window.location.href);
|
|
32
|
+
let path = parsedUrl.pathname;
|
|
33
|
+
if (document.baseURI) {
|
|
34
|
+
const base = new URL(document.baseURI).pathname;
|
|
35
|
+
if (path.startsWith(base)) {
|
|
36
|
+
path = path.slice(base.length);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
let tabUrl = tab.url;
|
|
40
|
+
if (tab.url.startsWith('/')) {
|
|
41
|
+
tabUrl = tab.url.slice(1);
|
|
42
|
+
}
|
|
43
|
+
if (path.startsWith('/')) {
|
|
44
|
+
path = path.slice(1);
|
|
45
|
+
}
|
|
46
|
+
// Return the path without parameters
|
|
47
|
+
return tabUrl === path;
|
|
48
|
+
}
|
|
30
49
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListPageHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: { title: "title", tabs: "tabs", showAdd: "showAdd", hideAction: "hideAction" }, outputs: { actionClicked: "actionClicked" }, ngImport: i0, template: "<div class=\"header\">\n <div class=\"title\">\n <span>{{title}}</span>\n </div>\n <div class=\"bread\"></div>\n <div class=\"line\"></div>\n <div class=\"tabs\">\n <div *ngFor=\"let tab of tabs\" class=\"tab\" [routerLink]=\"tab.url\" [hidden]=\"tab.hidden\">{{tab.label}}</div>\n </div>\n <div *ngIf=\"showAdd\" [ngClass]=\"{hideAction: hideAction}\" (click)=\"clickAction('add')\"\n class=\"action icon-plus icon-add\" data-action=\"add\"></div>\n <div *ngIf=\"!showAdd\" [ngClass]=\"{hideAction: hideAction}\" (click)=\"clickAction('delete')\"\n class=\"action icon-minus icon-delete\" data-action=\"delete\"></div>\n</div>\n", styles: [".header [class^=icon-],.header [class*=\" icon-\"]{font-family:zac,serif!important;speak:never;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.header .hideAction{display:none}.header .action{text-align:center;color:var(--white);line-height:60px;font-size:30px;width:60px;height:60px;border-radius:40px;position:absolute;right:0;top:12px;background-color:var(--primary);cursor:pointer;overflow:hidden;z-index:24;box-shadow:var(--shadow);transition:var(--transition)}.header .action.icon-delete{background-color:var(--red)}.header .line{width:100%;height:4px;background-color:var(--stroke)}.header .tabs{position:relative;display:flex;flex:1 1;flex-wrap:wrap;width:100%;font-size:14px;min-height:40px;padding-top:16px}.header .tabs .tab{position:relative;float:left;margin-right:20px;padding-bottom:5px;margin-bottom:10px;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);border-bottom-width:4px;border-bottom-color:transparent;border-bottom-style:solid}.header .tabs .tab:hover{border-bottom-color:var(--inputBorder)}.header .title{height:30px;overflow:hidden;font-family:Russo One,serif;color:var(--primary);filter:brightness(50%);font-size:30px;text-transform:uppercase;font-weight:400;line-height:34px}@media (max-width: 1024px){.title{font-size:20px!important}.action{line-height:45px!important;font-size:20px!important;width:45px!important;height:45px!important;border-radius:40px!important;top:20px!important;right:0!important}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
|
|
50
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: { title: "title", tabs: "tabs", showAdd: "showAdd", hideAction: "hideAction" }, outputs: { actionClicked: "actionClicked" }, ngImport: i0, template: "<div class=\"header\">\n <div class=\"title\">\n <span>{{title}}</span>\n </div>\n <div class=\"bread\"></div>\n <div class=\"line\"></div>\n <div class=\"tabs\">\n <div *ngFor=\"let tab of tabs\" class=\"tab\" [ngClass]=\"{selected: tabSelected(tab)}\" [routerLink]=\"tab.url\" [hidden]=\"tab.hidden\">{{tab.label}}</div>\n </div>\n <div *ngIf=\"showAdd\" [ngClass]=\"{hideAction: hideAction}\" (click)=\"clickAction('add')\"\n class=\"action icon-plus icon-add\" data-action=\"add\"></div>\n <div *ngIf=\"!showAdd\" [ngClass]=\"{hideAction: hideAction}\" (click)=\"clickAction('delete')\"\n class=\"action icon-minus icon-delete\" data-action=\"delete\"></div>\n</div>\n", styles: [".header [class^=icon-],.header [class*=\" icon-\"]{font-family:zac,serif!important;speak:never;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.header .hideAction{display:none}.header .action{text-align:center;color:var(--white);line-height:60px;font-size:30px;width:60px;height:60px;border-radius:40px;position:absolute;right:0;top:12px;background-color:var(--primary);cursor:pointer;overflow:hidden;z-index:24;box-shadow:var(--shadow);transition:var(--transition)}.header .action.icon-delete{background-color:var(--red)}.header .line{width:100%;height:4px;background-color:var(--stroke)}.header .tabs{position:relative;display:flex;flex:1 1;flex-wrap:wrap;width:100%;font-size:14px;min-height:40px;padding-top:16px}.header .tabs .tab{position:relative;float:left;margin-right:20px;padding-bottom:5px;margin-bottom:10px;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);border-bottom-width:4px;border-bottom-color:transparent;border-bottom-style:solid}.header .tabs .tab:hover{border-bottom-color:var(--inputBorder)}.header .tabs .tab.selected,.header .tabs .tab.selected:hover{border-bottom-color:var(--primaryColor)}.header .title{height:30px;overflow:hidden;font-family:Russo One,serif;color:var(--primary);filter:brightness(50%);font-size:30px;text-transform:uppercase;font-weight:400;line-height:34px}@media (max-width: 1024px){.title{font-size:20px!important}.action{line-height:45px!important;font-size:20px!important;width:45px!important;height:45px!important;border-radius:40px!important;top:20px!important;right:0!important}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
|
|
32
51
|
}
|
|
33
52
|
export { ListPageHeaderComponent };
|
|
34
53
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListPageHeaderComponent, decorators: [{
|
|
35
54
|
type: Component,
|
|
36
|
-
args: [{ selector: 'lib-list-page-header', template: "<div class=\"header\">\n <div class=\"title\">\n <span>{{title}}</span>\n </div>\n <div class=\"bread\"></div>\n <div class=\"line\"></div>\n <div class=\"tabs\">\n <div *ngFor=\"let tab of tabs\" class=\"tab\" [routerLink]=\"tab.url\" [hidden]=\"tab.hidden\">{{tab.label}}</div>\n </div>\n <div *ngIf=\"showAdd\" [ngClass]=\"{hideAction: hideAction}\" (click)=\"clickAction('add')\"\n class=\"action icon-plus icon-add\" data-action=\"add\"></div>\n <div *ngIf=\"!showAdd\" [ngClass]=\"{hideAction: hideAction}\" (click)=\"clickAction('delete')\"\n class=\"action icon-minus icon-delete\" data-action=\"delete\"></div>\n</div>\n", styles: [".header [class^=icon-],.header [class*=\" icon-\"]{font-family:zac,serif!important;speak:never;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.header .hideAction{display:none}.header .action{text-align:center;color:var(--white);line-height:60px;font-size:30px;width:60px;height:60px;border-radius:40px;position:absolute;right:0;top:12px;background-color:var(--primary);cursor:pointer;overflow:hidden;z-index:24;box-shadow:var(--shadow);transition:var(--transition)}.header .action.icon-delete{background-color:var(--red)}.header .line{width:100%;height:4px;background-color:var(--stroke)}.header .tabs{position:relative;display:flex;flex:1 1;flex-wrap:wrap;width:100%;font-size:14px;min-height:40px;padding-top:16px}.header .tabs .tab{position:relative;float:left;margin-right:20px;padding-bottom:5px;margin-bottom:10px;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);border-bottom-width:4px;border-bottom-color:transparent;border-bottom-style:solid}.header .tabs .tab:hover{border-bottom-color:var(--inputBorder)}.header .title{height:30px;overflow:hidden;font-family:Russo One,serif;color:var(--primary);filter:brightness(50%);font-size:30px;text-transform:uppercase;font-weight:400;line-height:34px}@media (max-width: 1024px){.title{font-size:20px!important}.action{line-height:45px!important;font-size:20px!important;width:45px!important;height:45px!important;border-radius:40px!important;top:20px!important;right:0!important}}\n"] }]
|
|
55
|
+
args: [{ selector: 'lib-list-page-header', template: "<div class=\"header\">\n <div class=\"title\">\n <span>{{title}}</span>\n </div>\n <div class=\"bread\"></div>\n <div class=\"line\"></div>\n <div class=\"tabs\">\n <div *ngFor=\"let tab of tabs\" class=\"tab\" [ngClass]=\"{selected: tabSelected(tab)}\" [routerLink]=\"tab.url\" [hidden]=\"tab.hidden\">{{tab.label}}</div>\n </div>\n <div *ngIf=\"showAdd\" [ngClass]=\"{hideAction: hideAction}\" (click)=\"clickAction('add')\"\n class=\"action icon-plus icon-add\" data-action=\"add\"></div>\n <div *ngIf=\"!showAdd\" [ngClass]=\"{hideAction: hideAction}\" (click)=\"clickAction('delete')\"\n class=\"action icon-minus icon-delete\" data-action=\"delete\"></div>\n</div>\n", styles: [".header [class^=icon-],.header [class*=\" icon-\"]{font-family:zac,serif!important;speak:never;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.header .hideAction{display:none}.header .action{text-align:center;color:var(--white);line-height:60px;font-size:30px;width:60px;height:60px;border-radius:40px;position:absolute;right:0;top:12px;background-color:var(--primary);cursor:pointer;overflow:hidden;z-index:24;box-shadow:var(--shadow);transition:var(--transition)}.header .action.icon-delete{background-color:var(--red)}.header .line{width:100%;height:4px;background-color:var(--stroke)}.header .tabs{position:relative;display:flex;flex:1 1;flex-wrap:wrap;width:100%;font-size:14px;min-height:40px;padding-top:16px}.header .tabs .tab{position:relative;float:left;margin-right:20px;padding-bottom:5px;margin-bottom:10px;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);border-bottom-width:4px;border-bottom-color:transparent;border-bottom-style:solid}.header .tabs .tab:hover{border-bottom-color:var(--inputBorder)}.header .tabs .tab.selected,.header .tabs .tab.selected:hover{border-bottom-color:var(--primaryColor)}.header .title{height:30px;overflow:hidden;font-family:Russo One,serif;color:var(--primary);filter:brightness(50%);font-size:30px;text-transform:uppercase;font-weight:400;line-height:34px}@media (max-width: 1024px){.title{font-size:20px!important}.action{line-height:45px!important;font-size:20px!important;width:45px!important;height:45px!important;border-radius:40px!important;top:20px!important;right:0!important}}\n"] }]
|
|
37
56
|
}], propDecorators: { title: [{
|
|
38
57
|
type: Input
|
|
39
58
|
}], tabs: [{
|
|
@@ -45,4 +64,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
45
64
|
}], actionClicked: [{
|
|
46
65
|
type: Output
|
|
47
66
|
}] } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1wYWdlLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvbGlzdC1wYWdlLWZlYXR1cmVzL2xpc3QtcGFnZS1oZWFkZXIvbGlzdC1wYWdlLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvbGlzdC1wYWdlLWZlYXR1cmVzL2xpc3QtcGFnZS1oZWFkZXIvbGlzdC1wYWdlLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7QUFFckUsTUFLYSx1QkFBdUI7SUFMcEM7UUFNYSxVQUFLLEdBQVcsRUFBRSxDQUFDO1FBRW5CLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFDZixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztLQXlCeEQ7SUF2QkcsV0FBVyxDQUFDLEtBQWE7UUFDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELFdBQVcsQ0FBQyxHQUFHO1FBQ1gsTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoRCxJQUFJLElBQUksR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDO1FBQzlCLElBQUksUUFBUSxDQUFDLE9BQU8sRUFBRTtZQUNsQixNQUFNLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDO1lBQ2hELElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDdkIsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ2xDO1NBQ0o7UUFDRCxJQUFJLE1BQU0sR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDO1FBQ3JCLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDekIsTUFBTSxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzdCO1FBQ0QsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3RCLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3hCO1FBQ0QscUNBQXFDO1FBQ3JDLE9BQU8sTUFBTSxLQUFLLElBQUksQ0FBQztJQUMzQixDQUFDOytHQTdCUSx1QkFBdUI7bUdBQXZCLHVCQUF1QixpTUN2QnBDLHd0QkFjQTs7U0RTYSx1QkFBdUI7NEZBQXZCLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxzQkFBc0I7OEJBS3JCLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gICAgQ29weXJpZ2h0IE5ldEZvdW5kcnkgSW5jLlxuXG4gICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cbiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItbGlzdC1wYWdlLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9saXN0LXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGlzdC1wYWdlLWhlYWRlci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIExpc3RQYWdlSGVhZGVyQ29tcG9uZW50IHtcbiAgICBASW5wdXQoKSB0aXRsZTogc3RyaW5nID0gJyc7XG4gICAgQElucHV0KCkgdGFicyE6IGFueVtdO1xuICAgIEBJbnB1dCgpIHNob3dBZGQgPSB0cnVlO1xuICAgIEBJbnB1dCgpIGhpZGVBY3Rpb24gPSBmYWxzZTtcbiAgICBAT3V0cHV0KCkgYWN0aW9uQ2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgY2xpY2tBY3Rpb24odmFsdWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLmFjdGlvbkNsaWNrZWQuZW1pdCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgdGFiU2VsZWN0ZWQodGFiKSB7XG4gICAgICAgIGNvbnN0IHBhcnNlZFVybCA9IG5ldyBVUkwod2luZG93LmxvY2F0aW9uLmhyZWYpO1xuICAgICAgICBsZXQgcGF0aCA9IHBhcnNlZFVybC5wYXRobmFtZTtcbiAgICAgICAgaWYgKGRvY3VtZW50LmJhc2VVUkkpIHtcbiAgICAgICAgICAgIGNvbnN0IGJhc2UgPSBuZXcgVVJMKGRvY3VtZW50LmJhc2VVUkkpLnBhdGhuYW1lO1xuICAgICAgICAgICAgaWYgKHBhdGguc3RhcnRzV2l0aChiYXNlKSkge1xuICAgICAgICAgICAgICAgIHBhdGggPSBwYXRoLnNsaWNlKGJhc2UubGVuZ3RoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBsZXQgdGFiVXJsID0gdGFiLnVybDtcbiAgICAgICAgaWYgKHRhYi51cmwuc3RhcnRzV2l0aCgnLycpKSB7XG4gICAgICAgICAgICB0YWJVcmwgPSB0YWIudXJsLnNsaWNlKDEpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwYXRoLnN0YXJ0c1dpdGgoJy8nKSkge1xuICAgICAgICAgICAgcGF0aCA9IHBhdGguc2xpY2UoMSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gUmV0dXJuIHRoZSBwYXRoIHdpdGhvdXQgcGFyYW1ldGVyc1xuICAgICAgICByZXR1cm4gdGFiVXJsID09PSBwYXRoO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJoZWFkZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwidGl0bGVcIj5cbiAgICAgICAgPHNwYW4+e3t0aXRsZX19PC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJicmVhZFwiPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJsaW5lXCI+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInRhYnNcIj5cbiAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgdGFiIG9mIHRhYnNcIiBjbGFzcz1cInRhYlwiIFtuZ0NsYXNzXT1cIntzZWxlY3RlZDogdGFiU2VsZWN0ZWQodGFiKX1cIiBbcm91dGVyTGlua109XCJ0YWIudXJsXCIgW2hpZGRlbl09XCJ0YWIuaGlkZGVuXCI+e3t0YWIubGFiZWx9fTwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJzaG93QWRkXCIgW25nQ2xhc3NdPVwie2hpZGVBY3Rpb246IGhpZGVBY3Rpb259XCIgKGNsaWNrKT1cImNsaWNrQWN0aW9uKCdhZGQnKVwiXG4gICAgICAgICBjbGFzcz1cImFjdGlvbiBpY29uLXBsdXMgaWNvbi1hZGRcIiBkYXRhLWFjdGlvbj1cImFkZFwiPjwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCIhc2hvd0FkZFwiIFtuZ0NsYXNzXT1cIntoaWRlQWN0aW9uOiBoaWRlQWN0aW9ufVwiIChjbGljayk9XCJjbGlja0FjdGlvbignZGVsZXRlJylcIlxuICAgICAgICAgY2xhc3M9XCJhY3Rpb24gaWNvbi1taW51cyBpY29uLWRlbGV0ZVwiIGRhdGEtYWN0aW9uPVwiZGVsZXRlXCI+PC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -17,12 +17,12 @@ class MultiActionButtonComponent {
|
|
|
17
17
|
this.actionRequested.emit(action);
|
|
18
18
|
}
|
|
19
19
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MultiActionButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MultiActionButtonComponent, selector: "lib-multi-action-button", inputs: { actions: "actions" }, outputs: { actionRequested: "actionRequested" }, ngImport: i0, template: "<div class=\"multi-action-button-container\">\n <div class=\"form-field-action\"\n *ngIf=\"actions\"\n (clickOutside)=\"closeMoreActionsMenu()\"\n >\n <div class=\"primary-action-button\" (click)=\"actionClicked(actions[0])\">{{actions[0].label}}</div>\n <div class=\"secondary-action-button\"\n *ngIf=\"actions.length > 1\"\n (click)=\"showMoreActionsMenu()\"\n ><div class=\"secondary-actions-arrow icon-prev\"></div></div>\n </div>\n <div class=\"multi-action-button-dropdown\" *ngIf=\"showMoreActions\">\n <ul>\n <li *ngFor=\"let action of actions\" class=\"confirm-item-name\" (click)=\"actionClicked(action)\">{{action.label}}</li>\n </ul>\n </div>\n</div>\n", styles: [".multi-action-button-container{position:absolute;right:15px;top:10px;z-index:999999}.multi-action-button-container .form-field-action{display:flex;flex-direction:row;align-items:center;padding:0;height:25px}.multi-action-button-container .form-field-action .primary-action-button{padding-left:10px;padding-right:10px;border-right-style:solid;height:100%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;background:var(--primary);color:var(--white);cursor:pointer;border-top-left-radius:
|
|
20
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MultiActionButtonComponent, selector: "lib-multi-action-button", inputs: { actions: "actions" }, outputs: { actionRequested: "actionRequested" }, ngImport: i0, template: "<div class=\"multi-action-button-container\">\n <div class=\"form-field-action\"\n *ngIf=\"actions\"\n (clickOutside)=\"closeMoreActionsMenu()\"\n >\n <div class=\"primary-action-button\" (click)=\"actionClicked(actions[0])\">{{actions[0].label}}</div>\n <div class=\"secondary-action-button\"\n *ngIf=\"actions.length > 1\"\n (click)=\"showMoreActionsMenu()\"\n ><div class=\"secondary-actions-arrow icon-prev\"></div></div>\n </div>\n <div class=\"multi-action-button-dropdown\" *ngIf=\"showMoreActions\">\n <ul>\n <li *ngFor=\"let action of actions\" class=\"confirm-item-name\" (click)=\"actionClicked(action)\">{{action.label}}</li>\n </ul>\n </div>\n</div>\n", styles: [".multi-action-button-container{position:absolute;right:15px;top:10px;z-index:999999}.multi-action-button-container .form-field-action{display:flex;flex-direction:row;align-items:center;padding:0;height:25px}.multi-action-button-container .form-field-action .primary-action-button{padding-left:10px;padding-right:10px;border-right-style:solid;height:100%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;background:var(--primary);color:var(--white);cursor:pointer;border-top-left-radius:var(--inputBorderRadius);border-bottom-left-radius:var(--inputBorderRadius);border-color:var(--stroke);box-shadow:0 3px 9px 0 var(--primaryColorOpaque)}.multi-action-button-container .form-field-action .primary-action-button:hover{outline:0;filter:brightness(90%);box-shadow:0 2px 3px 0 var(--primaryColorOpaque)}.multi-action-button-container .form-field-action .primary-action-button:active{background:#648293;box-shadow:none;transform:translateY(1px)}.multi-action-button-container .form-field-action .secondary-action-button{height:100%;width:30px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;background:var(--primary);color:var(--white);cursor:pointer;border-top-right-radius:var(--inputBorderRadius);border-bottom-right-radius:var(--inputBorderRadius);border-color:var(--stroke);box-shadow:0 3px 9px 0 var(--primaryColorOpaque)}.multi-action-button-container .form-field-action .secondary-action-button:hover{outline:0;filter:brightness(90%);box-shadow:0 2px 3px 0 var(--primaryColorOpaque)}.multi-action-button-container .form-field-action .secondary-action-button:active{background:#648293;box-shadow:none;transform:translateY(1px)}.multi-action-button-container .form-field-action .secondary-action-button .secondary-actions-arrow{transform:rotate(270deg)}.multi-action-button-container .multi-action-button-dropdown{position:absolute;background:var(--background);width:100%}.multi-action-button-container .multi-action-button-dropdown ul{width:100%;margin:0;padding:0}.multi-action-button-container .multi-action-button-dropdown ul li{list-style-type:none;padding:5px 5px 5px 10px;cursor:pointer}.multi-action-button-container .multi-action-button-dropdown ul li:hover{background-color:var(--inputBorder)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideEnabled", "attachOutsideOnClick", "delayClickOutsideInit", "emitOnBlur", "exclude", "excludeBeforeClick", "clickOutsideEvents"], outputs: ["clickOutside"] }] }); }
|
|
21
21
|
}
|
|
22
22
|
export { MultiActionButtonComponent };
|
|
23
23
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MultiActionButtonComponent, decorators: [{
|
|
24
24
|
type: Component,
|
|
25
|
-
args: [{ selector: 'lib-multi-action-button', template: "<div class=\"multi-action-button-container\">\n <div class=\"form-field-action\"\n *ngIf=\"actions\"\n (clickOutside)=\"closeMoreActionsMenu()\"\n >\n <div class=\"primary-action-button\" (click)=\"actionClicked(actions[0])\">{{actions[0].label}}</div>\n <div class=\"secondary-action-button\"\n *ngIf=\"actions.length > 1\"\n (click)=\"showMoreActionsMenu()\"\n ><div class=\"secondary-actions-arrow icon-prev\"></div></div>\n </div>\n <div class=\"multi-action-button-dropdown\" *ngIf=\"showMoreActions\">\n <ul>\n <li *ngFor=\"let action of actions\" class=\"confirm-item-name\" (click)=\"actionClicked(action)\">{{action.label}}</li>\n </ul>\n </div>\n</div>\n", styles: [".multi-action-button-container{position:absolute;right:15px;top:10px;z-index:999999}.multi-action-button-container .form-field-action{display:flex;flex-direction:row;align-items:center;padding:0;height:25px}.multi-action-button-container .form-field-action .primary-action-button{padding-left:10px;padding-right:10px;border-right-style:solid;height:100%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;background:var(--primary);color:var(--white);cursor:pointer;border-top-left-radius:
|
|
25
|
+
args: [{ selector: 'lib-multi-action-button', template: "<div class=\"multi-action-button-container\">\n <div class=\"form-field-action\"\n *ngIf=\"actions\"\n (clickOutside)=\"closeMoreActionsMenu()\"\n >\n <div class=\"primary-action-button\" (click)=\"actionClicked(actions[0])\">{{actions[0].label}}</div>\n <div class=\"secondary-action-button\"\n *ngIf=\"actions.length > 1\"\n (click)=\"showMoreActionsMenu()\"\n ><div class=\"secondary-actions-arrow icon-prev\"></div></div>\n </div>\n <div class=\"multi-action-button-dropdown\" *ngIf=\"showMoreActions\">\n <ul>\n <li *ngFor=\"let action of actions\" class=\"confirm-item-name\" (click)=\"actionClicked(action)\">{{action.label}}</li>\n </ul>\n </div>\n</div>\n", styles: [".multi-action-button-container{position:absolute;right:15px;top:10px;z-index:999999}.multi-action-button-container .form-field-action{display:flex;flex-direction:row;align-items:center;padding:0;height:25px}.multi-action-button-container .form-field-action .primary-action-button{padding-left:10px;padding-right:10px;border-right-style:solid;height:100%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;background:var(--primary);color:var(--white);cursor:pointer;border-top-left-radius:var(--inputBorderRadius);border-bottom-left-radius:var(--inputBorderRadius);border-color:var(--stroke);box-shadow:0 3px 9px 0 var(--primaryColorOpaque)}.multi-action-button-container .form-field-action .primary-action-button:hover{outline:0;filter:brightness(90%);box-shadow:0 2px 3px 0 var(--primaryColorOpaque)}.multi-action-button-container .form-field-action .primary-action-button:active{background:#648293;box-shadow:none;transform:translateY(1px)}.multi-action-button-container .form-field-action .secondary-action-button{height:100%;width:30px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;background:var(--primary);color:var(--white);cursor:pointer;border-top-right-radius:var(--inputBorderRadius);border-bottom-right-radius:var(--inputBorderRadius);border-color:var(--stroke);box-shadow:0 3px 9px 0 var(--primaryColorOpaque)}.multi-action-button-container .form-field-action .secondary-action-button:hover{outline:0;filter:brightness(90%);box-shadow:0 2px 3px 0 var(--primaryColorOpaque)}.multi-action-button-container .form-field-action .secondary-action-button:active{background:#648293;box-shadow:none;transform:translateY(1px)}.multi-action-button-container .form-field-action .secondary-action-button .secondary-actions-arrow{transform:rotate(270deg)}.multi-action-button-container .multi-action-button-dropdown{position:absolute;background:var(--background);width:100%}.multi-action-button-container .multi-action-button-dropdown ul{width:100%;margin:0;padding:0}.multi-action-button-container .multi-action-button-dropdown ul li{list-style-type:none;padding:5px 5px 5px 10px;cursor:pointer}.multi-action-button-container .multi-action-button-dropdown ul li:hover{background-color:var(--inputBorder)}\n"] }]
|
|
26
26
|
}], propDecorators: { actions: [{
|
|
27
27
|
type: Input
|
|
28
28
|
}], actionRequested: [{
|
|
@@ -99,12 +99,12 @@ class OverridesComponent {
|
|
|
99
99
|
return isEmpty(this.selectedServiceId) || isEmpty(this.selectedConfigId);
|
|
100
100
|
}
|
|
101
101
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: OverridesComponent, deps: [{ token: i1.OverridesService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
102
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: OverridesComponent, selector: "lib-overrides", inputs: { identity: "identity" }, outputs: { close: "close" }, viewQueries: [{ propertyName: "servicesList", first: true, predicate: ["servicesList"], descendants: true }, { propertyName: "configList", first: true, predicate: ["configList"], descendants: true }], ngImport: i0, template: "<div id=\"OverrideModal\" class=\"overrides-wrapper\">\n <div class=\"overrides-container sized large\">\n <div class=\"form-title-container\">\n <div class=\"form-title-back-button\" (click)=\"close.emit()\">\n <div class=\"form-title-back-button-image\"></div>\n <div class=\"form-title-back-button-line\"></div>\n </div>\n <span class=\"title\">IDENTITY OVERRIDES</span>\n </div>\n <div class=\"subtitle\">Manage the Service Config Identity Overrides</div>\n <div class=\"darkened overrides\" *ngIf=\"overrides.length > 0\">Current Overrides</div>\n <div id=\"OverrideList\" class=\"grid splitRemove overrides\">\n <div id=\"OverrideTemplate\" class=\"row grid threedelete\" *ngFor=\"let override of overrides\">\n <div>{{override.service.name}}</div>\n <div>{{override.config.name}}</div>\n <div class=\"relative\">\n <div class=\"remove icon-minus removeAssoc\" (click)=\"removeOverride(override)\"></div>\n </div>\n </div>\n </div>\n <div class=\"darkened\">ADD OVERRIDE CONFIG</div>\n <div class=\"grid split override-list-container\">\n <div>\n <label for=\"ServiceList\">Service</label>\n <p-dropdown\n #servicesList\n id=\"ServiceList\"\n [options]=\"services\"\n [(ngModel)]=\"selectedServiceId\"\n placeholder=\"Select a service\"\n [editable]=\"true\"\n [optionValue]=\"'id'\"\n [optionLabel]=\"'name'\"\n (onFocus)=\"servicesList.show()\"\n (onChange)=\"serviceSelectionChanged($event)\"\n (keyup)=\"filterServicesDebounced($event)\"\n ></p-dropdown>\n </div>\n <div>\n <label for=\"ConfigList\">Configuration</label>\n <p-dropdown\n #configList\n id=\"ConfigList\"\n [options]=\"configs\"\n [(ngModel)]=\"selectedConfigId\"\n placeholder=\"Select a config\"\n [editable]=\"true\"\n [optionValue]=\"'id'\"\n [optionLabel]=\"'name'\"\n (onChange)=\"configSelectionChanged($event)\"\n (keyup)=\"filterConfigsDebounced($event)\"\n (onFocus)=\"configList.show()\"\n ></p-dropdown>\n </div>\n </div>\n <div class=\"buttons\">\n <div\n id=\"AssociateButton\"\n class=\"button confirm\"\n [ngClass]=\"{disabled: disableAddButton}\"\n (click)=\"addOverride()\"\n >\n Add\n </div>\n </div>\n </div>\n</div>", styles: [".overrides-wrapper{display:flex;justify-content:center;padding:10px}.overrides-wrapper .overrides-container{max-width:1024px;flex:1 1 auto}.overrides-wrapper .overrides-container .form-title-container{margin-left:-10px}.overrides-wrapper .overrides-container .title{display:flex;margin-left:5px}.overrides-wrapper .overrides-container .button.confirm.disabled{pointer-events:none;filter:grayscale(1);opacity:.5}.overrides-wrapper .overrides-container .button.confirm:hover{outline:0;filter:brightness(90%);background-color:var(--primaryColor);box-shadow:0 2px 3px 0 var(--primaryColorOpaque)}::ng-deep .override-list-container .p-element.p-icon-wrapper path{stroke:var(--formSubGroup)!important;fill:var(--formSubGroup)!important}::ng-deep .override-list-container .p-dropdown{font-weight:400;font-family:Open Sans,Arial,sans-serif;height:50px;width:100%;border-color:var(--stroke);border-style:solid;border-width:
|
|
102
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: OverridesComponent, selector: "lib-overrides", inputs: { identity: "identity" }, outputs: { close: "close" }, viewQueries: [{ propertyName: "servicesList", first: true, predicate: ["servicesList"], descendants: true }, { propertyName: "configList", first: true, predicate: ["configList"], descendants: true }], ngImport: i0, template: "<div id=\"OverrideModal\" class=\"overrides-wrapper\">\n <div class=\"overrides-container sized large\">\n <div class=\"form-title-container\">\n <div class=\"form-title-back-button\" (click)=\"close.emit()\">\n <div class=\"form-title-back-button-image\"></div>\n <div class=\"form-title-back-button-line\"></div>\n </div>\n <span class=\"title\">IDENTITY OVERRIDES</span>\n </div>\n <div class=\"subtitle\">Manage the Service Config Identity Overrides</div>\n <div class=\"darkened overrides\" *ngIf=\"overrides.length > 0\">Current Overrides</div>\n <div id=\"OverrideList\" class=\"grid splitRemove overrides\">\n <div id=\"OverrideTemplate\" class=\"row grid threedelete\" *ngFor=\"let override of overrides\">\n <div>{{override.service.name}}</div>\n <div>{{override.config.name}}</div>\n <div class=\"relative\">\n <div class=\"remove icon-minus removeAssoc\" (click)=\"removeOverride(override)\"></div>\n </div>\n </div>\n </div>\n <div class=\"darkened\">ADD OVERRIDE CONFIG</div>\n <div class=\"grid split override-list-container\">\n <div>\n <label for=\"ServiceList\">Service</label>\n <p-dropdown\n #servicesList\n id=\"ServiceList\"\n [options]=\"services\"\n [(ngModel)]=\"selectedServiceId\"\n placeholder=\"Select a service\"\n [editable]=\"true\"\n [optionValue]=\"'id'\"\n [optionLabel]=\"'name'\"\n (onFocus)=\"servicesList.show()\"\n (onChange)=\"serviceSelectionChanged($event)\"\n (keyup)=\"filterServicesDebounced($event)\"\n ></p-dropdown>\n </div>\n <div>\n <label for=\"ConfigList\">Configuration</label>\n <p-dropdown\n #configList\n id=\"ConfigList\"\n [options]=\"configs\"\n [(ngModel)]=\"selectedConfigId\"\n placeholder=\"Select a config\"\n [editable]=\"true\"\n [optionValue]=\"'id'\"\n [optionLabel]=\"'name'\"\n (onChange)=\"configSelectionChanged($event)\"\n (keyup)=\"filterConfigsDebounced($event)\"\n (onFocus)=\"configList.show()\"\n ></p-dropdown>\n </div>\n </div>\n <div class=\"buttons\">\n <div\n id=\"AssociateButton\"\n class=\"button confirm\"\n [ngClass]=\"{disabled: disableAddButton}\"\n (click)=\"addOverride()\"\n >\n Add\n </div>\n </div>\n </div>\n</div>", styles: [".overrides-wrapper{display:flex;justify-content:center;padding:10px}.overrides-wrapper .overrides-container{max-width:1024px;flex:1 1 auto}.overrides-wrapper .overrides-container .form-title-container{margin-left:-10px}.overrides-wrapper .overrides-container .title{display:flex;margin-left:5px}.overrides-wrapper .overrides-container .button.confirm.disabled{pointer-events:none;filter:grayscale(1);opacity:.5}.overrides-wrapper .overrides-container .button.confirm:hover{outline:0;filter:brightness(90%);background-color:var(--primaryColor);box-shadow:0 2px 3px 0 var(--primaryColorOpaque)}::ng-deep .override-list-container .p-element.p-icon-wrapper path{stroke:var(--formSubGroup)!important;fill:var(--formSubGroup)!important}::ng-deep .override-list-container .p-dropdown{font-weight:400;font-family:Open Sans,Arial,sans-serif;height:50px;width:100%;border-color:var(--stroke);border-style:solid;border-width:var(--inputBorderWidth);border-radius:var(--inputBorderRadius);padding-left:10px;padding-right:10px;outline:none;box-sizing:border-box;font-size:15px;background-color:var(--navigation)!important;color:var(--text);-webkit-appearance:none}::ng-deep .override-list-container .p-inputtext{border-radius:var(--inputBorderRadius);border-color:transparent!important;height:46px}::ng-deep .override-list-container .p-inputtext:hover{border-color:transparent!important}::ng-deep .override-list-container .p-inputtext:active{border-color:transparent!important}::ng-deep .override-list-container .p-dropdown:not(.p-disabled).p-focus{box-shadow:none}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }] }); }
|
|
103
103
|
}
|
|
104
104
|
export { OverridesComponent };
|
|
105
105
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: OverridesComponent, decorators: [{
|
|
106
106
|
type: Component,
|
|
107
|
-
args: [{ selector: 'lib-overrides', template: "<div id=\"OverrideModal\" class=\"overrides-wrapper\">\n <div class=\"overrides-container sized large\">\n <div class=\"form-title-container\">\n <div class=\"form-title-back-button\" (click)=\"close.emit()\">\n <div class=\"form-title-back-button-image\"></div>\n <div class=\"form-title-back-button-line\"></div>\n </div>\n <span class=\"title\">IDENTITY OVERRIDES</span>\n </div>\n <div class=\"subtitle\">Manage the Service Config Identity Overrides</div>\n <div class=\"darkened overrides\" *ngIf=\"overrides.length > 0\">Current Overrides</div>\n <div id=\"OverrideList\" class=\"grid splitRemove overrides\">\n <div id=\"OverrideTemplate\" class=\"row grid threedelete\" *ngFor=\"let override of overrides\">\n <div>{{override.service.name}}</div>\n <div>{{override.config.name}}</div>\n <div class=\"relative\">\n <div class=\"remove icon-minus removeAssoc\" (click)=\"removeOverride(override)\"></div>\n </div>\n </div>\n </div>\n <div class=\"darkened\">ADD OVERRIDE CONFIG</div>\n <div class=\"grid split override-list-container\">\n <div>\n <label for=\"ServiceList\">Service</label>\n <p-dropdown\n #servicesList\n id=\"ServiceList\"\n [options]=\"services\"\n [(ngModel)]=\"selectedServiceId\"\n placeholder=\"Select a service\"\n [editable]=\"true\"\n [optionValue]=\"'id'\"\n [optionLabel]=\"'name'\"\n (onFocus)=\"servicesList.show()\"\n (onChange)=\"serviceSelectionChanged($event)\"\n (keyup)=\"filterServicesDebounced($event)\"\n ></p-dropdown>\n </div>\n <div>\n <label for=\"ConfigList\">Configuration</label>\n <p-dropdown\n #configList\n id=\"ConfigList\"\n [options]=\"configs\"\n [(ngModel)]=\"selectedConfigId\"\n placeholder=\"Select a config\"\n [editable]=\"true\"\n [optionValue]=\"'id'\"\n [optionLabel]=\"'name'\"\n (onChange)=\"configSelectionChanged($event)\"\n (keyup)=\"filterConfigsDebounced($event)\"\n (onFocus)=\"configList.show()\"\n ></p-dropdown>\n </div>\n </div>\n <div class=\"buttons\">\n <div\n id=\"AssociateButton\"\n class=\"button confirm\"\n [ngClass]=\"{disabled: disableAddButton}\"\n (click)=\"addOverride()\"\n >\n Add\n </div>\n </div>\n </div>\n</div>", styles: [".overrides-wrapper{display:flex;justify-content:center;padding:10px}.overrides-wrapper .overrides-container{max-width:1024px;flex:1 1 auto}.overrides-wrapper .overrides-container .form-title-container{margin-left:-10px}.overrides-wrapper .overrides-container .title{display:flex;margin-left:5px}.overrides-wrapper .overrides-container .button.confirm.disabled{pointer-events:none;filter:grayscale(1);opacity:.5}.overrides-wrapper .overrides-container .button.confirm:hover{outline:0;filter:brightness(90%);background-color:var(--primaryColor);box-shadow:0 2px 3px 0 var(--primaryColorOpaque)}::ng-deep .override-list-container .p-element.p-icon-wrapper path{stroke:var(--formSubGroup)!important;fill:var(--formSubGroup)!important}::ng-deep .override-list-container .p-dropdown{font-weight:400;font-family:Open Sans,Arial,sans-serif;height:50px;width:100%;border-color:var(--stroke);border-style:solid;border-width:
|
|
107
|
+
args: [{ selector: 'lib-overrides', template: "<div id=\"OverrideModal\" class=\"overrides-wrapper\">\n <div class=\"overrides-container sized large\">\n <div class=\"form-title-container\">\n <div class=\"form-title-back-button\" (click)=\"close.emit()\">\n <div class=\"form-title-back-button-image\"></div>\n <div class=\"form-title-back-button-line\"></div>\n </div>\n <span class=\"title\">IDENTITY OVERRIDES</span>\n </div>\n <div class=\"subtitle\">Manage the Service Config Identity Overrides</div>\n <div class=\"darkened overrides\" *ngIf=\"overrides.length > 0\">Current Overrides</div>\n <div id=\"OverrideList\" class=\"grid splitRemove overrides\">\n <div id=\"OverrideTemplate\" class=\"row grid threedelete\" *ngFor=\"let override of overrides\">\n <div>{{override.service.name}}</div>\n <div>{{override.config.name}}</div>\n <div class=\"relative\">\n <div class=\"remove icon-minus removeAssoc\" (click)=\"removeOverride(override)\"></div>\n </div>\n </div>\n </div>\n <div class=\"darkened\">ADD OVERRIDE CONFIG</div>\n <div class=\"grid split override-list-container\">\n <div>\n <label for=\"ServiceList\">Service</label>\n <p-dropdown\n #servicesList\n id=\"ServiceList\"\n [options]=\"services\"\n [(ngModel)]=\"selectedServiceId\"\n placeholder=\"Select a service\"\n [editable]=\"true\"\n [optionValue]=\"'id'\"\n [optionLabel]=\"'name'\"\n (onFocus)=\"servicesList.show()\"\n (onChange)=\"serviceSelectionChanged($event)\"\n (keyup)=\"filterServicesDebounced($event)\"\n ></p-dropdown>\n </div>\n <div>\n <label for=\"ConfigList\">Configuration</label>\n <p-dropdown\n #configList\n id=\"ConfigList\"\n [options]=\"configs\"\n [(ngModel)]=\"selectedConfigId\"\n placeholder=\"Select a config\"\n [editable]=\"true\"\n [optionValue]=\"'id'\"\n [optionLabel]=\"'name'\"\n (onChange)=\"configSelectionChanged($event)\"\n (keyup)=\"filterConfigsDebounced($event)\"\n (onFocus)=\"configList.show()\"\n ></p-dropdown>\n </div>\n </div>\n <div class=\"buttons\">\n <div\n id=\"AssociateButton\"\n class=\"button confirm\"\n [ngClass]=\"{disabled: disableAddButton}\"\n (click)=\"addOverride()\"\n >\n Add\n </div>\n </div>\n </div>\n</div>", styles: [".overrides-wrapper{display:flex;justify-content:center;padding:10px}.overrides-wrapper .overrides-container{max-width:1024px;flex:1 1 auto}.overrides-wrapper .overrides-container .form-title-container{margin-left:-10px}.overrides-wrapper .overrides-container .title{display:flex;margin-left:5px}.overrides-wrapper .overrides-container .button.confirm.disabled{pointer-events:none;filter:grayscale(1);opacity:.5}.overrides-wrapper .overrides-container .button.confirm:hover{outline:0;filter:brightness(90%);background-color:var(--primaryColor);box-shadow:0 2px 3px 0 var(--primaryColorOpaque)}::ng-deep .override-list-container .p-element.p-icon-wrapper path{stroke:var(--formSubGroup)!important;fill:var(--formSubGroup)!important}::ng-deep .override-list-container .p-dropdown{font-weight:400;font-family:Open Sans,Arial,sans-serif;height:50px;width:100%;border-color:var(--stroke);border-style:solid;border-width:var(--inputBorderWidth);border-radius:var(--inputBorderRadius);padding-left:10px;padding-right:10px;outline:none;box-sizing:border-box;font-size:15px;background-color:var(--navigation)!important;color:var(--text);-webkit-appearance:none}::ng-deep .override-list-container .p-inputtext{border-radius:var(--inputBorderRadius);border-color:transparent!important;height:46px}::ng-deep .override-list-container .p-inputtext:hover{border-color:transparent!important}::ng-deep .override-list-container .p-inputtext:active{border-color:transparent!important}::ng-deep .override-list-container .p-dropdown:not(.p-disabled).p-focus{box-shadow:none}\n"] }]
|
|
108
108
|
}], ctorParameters: function () { return [{ type: i1.OverridesService }]; }, propDecorators: { identity: [{
|
|
109
109
|
type: Input
|
|
110
110
|
}], close: [{
|
|
@@ -99,12 +99,12 @@ class PreviewListComponent {
|
|
|
99
99
|
event.preventDefault();
|
|
100
100
|
}
|
|
101
101
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PreviewListComponent, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
102
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PreviewListComponent, selector: "lib-preview-list", inputs: { label: "label", clickable: "clickable", isLoading: "isLoading", allNames: "allNames", items: "items", allowRemove: "allowRemove", tooltip: "tooltip", showfilter: "showfilter" }, outputs: { itemSelected: "itemSelected", itemRemoved: "itemRemoved" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"listBox row\">\n <input *ngIf=\"showfilter\" (keyup)=\"onKeydownEvent()\" [(ngModel)]=\"filterFor\" placeholder=\"Type to Filter\"/>\n <div class=\"text row\">\n <div (click)=\"selected(item)\" *ngFor=\"let item of previewItems\" [ngClass]=\"{ clickable: clickable }\" class=\"listText\">\n <div *ngIf=\"allowRemove\" class=\"icon-clear\" (click)=\"remove(item)\"></div>\n <span *ngIf=\"!item.href\" class=\"preview-name\" matTooltip=\"{{tooltip}}\" matTooltipPosition=\"below\" matTooltipShowDelay=\"1000\">{{ item }}</span>\n <a *ngIf=\"item.href\" [href]=\"'./' + item.href\" (click)=\"linkClicked($event, item)\" class=\"{{item.linkClass ? item.linkClass : ''}}\" matTooltip=\"{{tooltip}}\" matTooltipShowDelay=\"1000\" matTooltipPosition=\"below\">\n <span *ngIf=\"item.name\" class=\"preview-name\">{{ item.name }}<div *ngIf=\"item.iconClass\" class=\"preview-item-icon {{item.iconClass}}\" (click)=\"remove(item)\"></div></span>\n </a>\n </div>\n </div>\n</div>\n<div *ngIf=\"isLoading\" class=\"spinner-container\">\n <span class=\"spinner\"></span>\n</div>", styles: [":host{display:flex;flex-direction:column;height:100%;position:relative}.counter{background-color:#4c5566;color:var(--white);position:absolute;right:0}.listBox{background-color:var(--stroke);padding:10px;border-radius:
|
|
102
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PreviewListComponent, selector: "lib-preview-list", inputs: { label: "label", clickable: "clickable", isLoading: "isLoading", allNames: "allNames", items: "items", allowRemove: "allowRemove", tooltip: "tooltip", showfilter: "showfilter" }, outputs: { itemSelected: "itemSelected", itemRemoved: "itemRemoved" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"listBox row\">\n <input *ngIf=\"showfilter\" (keyup)=\"onKeydownEvent()\" [(ngModel)]=\"filterFor\" placeholder=\"Type to Filter\"/>\n <div class=\"text row\">\n <div (click)=\"selected(item)\" *ngFor=\"let item of previewItems\" [ngClass]=\"{ clickable: clickable }\" class=\"listText\">\n <div *ngIf=\"allowRemove\" class=\"icon-clear\" (click)=\"remove(item)\"></div>\n <span *ngIf=\"!item.href\" class=\"preview-name\" matTooltip=\"{{tooltip}}\" matTooltipPosition=\"below\" matTooltipShowDelay=\"1000\">{{ item }}</span>\n <a *ngIf=\"item.href\" [href]=\"'./' + item.href\" (click)=\"linkClicked($event, item)\" class=\"{{item.linkClass ? item.linkClass : ''}}\" matTooltip=\"{{tooltip}}\" matTooltipShowDelay=\"1000\" matTooltipPosition=\"below\">\n <span *ngIf=\"item.name\" class=\"preview-name\">{{ item.name }}<div *ngIf=\"item.iconClass\" class=\"preview-item-icon {{item.iconClass}}\" (click)=\"remove(item)\"></div></span>\n </a>\n </div>\n </div>\n</div>\n<div *ngIf=\"isLoading\" class=\"spinner-container\">\n <span class=\"spinner\"></span>\n</div>", styles: [":host{display:flex;flex-direction:column;height:100%;position:relative}.counter{background-color:#4c5566;color:var(--white);position:absolute;right:0}.listBox{background-color:var(--stroke);padding:10px;border-radius:var(--inputBorderRadius);height:100%;min-height:60px}.listBox input{height:40px;border-radius:27px;font-size:14px;font-weight:600;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAuCAYAAABTTPsKAAAD4klEQVRYhc2ZyYsUSRSHvypLbRfGDfWgzngYFRR3EUQPOm5oOyMuKIoo4kk9iAriQfAPcAMvKuJBPAyiXmbAwWVUFGEYmMHlIi24ogd3cW3trpYnv4CooLKrKiuzqn5QUBmZEe/Lly9fvIjMPH36CmA4cABYAHSnsdQK/AVsBR4Y8E/ATaA30KXBYJ3agffA+Cywt8FhEZsx7jUPf/bC4BNwuc5woWYBPdTWmgti9hSwrv6MBToOrFVD92xwsqOOYFEqYAqBGzGOC5gshv07aANuNZCnM8A4IOcacsEFdjyp9lzly0KipZEBA7VYSKwEfpf7nTqU4uqpHkWYVlkInAR+ATZ4AZ4HmoErdQKeCVz0eGymO2asrpawE38D0xXHdjcfFM93aww7Avgf6CUPWyK4Dsw2cJfW7A4WA4/1P6NHcgHoV0PYfrLpwqFdTIv1vyAPvwXmyLMd8voQ4A+gaw1gu8rWENl2T3mO2AiBTfeARYphFB7TgMM1AD4sWy7V5sVyz78oBDZd0wvoZHe7HtiWIuw22fBntQ1iKVAxYFRw7PE8nVEZ2pwCbLPGdimsXbaPF7vYZYmi54A/gfneY7JSdCpwOyHYscC/QJOOLSOcA36NKg+iPIw6rNBM2Ka2bnqLBycAO1hjdfNgW2QzspbpDNj0EZintzSv6wdojdVUom9natIYAzRmXjbmyWakSgGbnigsnJdzepQngqmzXGXUd6wXam2y8aTUGOUAm/4DVnvHZmgpsDsG8G719SvF1bJRUuUCm84Au7zMkfWMl6sl6uPs5jXmmXIH6CxLRMkqu+Weh94BPwJvSvTrAzwCftCxhcFpq8AqMR4W8OXIFqk/AxPUv0lJfl/Q114gP4yGAT092BtxFrxxgL8Ay4D7OrYa4LciwKOBNRHrxKye0pdKjVcSw74eBSuV4RHXtUW0W9+HcQzHBUaVlFPUflxU+4eI9pKqBriUDqm+db9nSQwaJ4bLldUDOzyn9G904KHAxKRtpBkSpsQ3ZNL0sG1EW9r6quNw2R5Lab90vbX67ZXUS5cUcJTnZmjqtjQ2KAlD1QB/9v4PVAETbgnk5OWeSYQDVQKf9WayjKbnO9oxT03VAO8HrgZbAubpS1pU2tLHKrh/VOtGTdMVqdqQmAvs1Eo37z32LarGWrXXMAV4WW9gBGlL8sn2DS1YRo3U57TNScUvCWYJAxsDHPXarKy00vMgcD6pD5ZJ5mELkU3AQuC15+2stk/7JmEkjYnDlu+jtL/rpuZwRn0Rd/C0Zrrn+m69UauK71ulkt2EbU7HUtrFzxF9BXLpzzZLtusDZuUCvgHvMdO9Y7xsIwAAAABJRU5ErkJggg==);background-size:auto 21px;background-position:top 8px right 12px;background-repeat:no-repeat;margin-bottom:10px;padding-left:14px}.text{overflow-y:scroll;height:100%}.listText{width:100%;position:relative;float:left;font-size:14px;font-weight:600;padding-left:10px;padding-right:10px;margin-bottom:2px;color:var(--primary);display:flex;flex-direction:row;align-items:center;gap:5px}.listText a{color:var(--primary);display:flex;flex-direction:row;align-items:center}.listText a:hover .preview-item-icon{text-decoration:underline}.listText .icon-clear{margin-top:2px}.listText .icon-clear:hover{color:var(--background)}::-webkit-scrollbar-thumb{background-color:var(--background)!important}.clickable{color:var(--primary);cursor:pointer}.clickable:hover,.clickable:focus{filter:brightness(90%)}.clickable:active{color:var(--icon);transform:translateY(1px)}.clickable .preview-name:hover,.clickable .preview-name:focus{text-decoration:underline}.clickable .preview-name:active{text-decoration:underline}.preview-name{white-space:pre}.preview-item-icon{margin-left:7px;font-family:zac!important}.preview-more-results{margin-top:5px}.spinner-container{position:absolute;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.spinner-container .spinner{display:inline-block;width:32px;height:32px;border-radius:50%;background:transparent;border-top:5px solid var(--tableText);border-right:5px solid var(--tableText);border-bottom:5px solid transparent;border-left:5px solid transparent;animation:loading .5s infinite linear;opacity:.7}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] }); }
|
|
103
103
|
}
|
|
104
104
|
export { PreviewListComponent };
|
|
105
105
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PreviewListComponent, decorators: [{
|
|
106
106
|
type: Component,
|
|
107
|
-
args: [{ selector: 'lib-preview-list', template: "<div class=\"listBox row\">\n <input *ngIf=\"showfilter\" (keyup)=\"onKeydownEvent()\" [(ngModel)]=\"filterFor\" placeholder=\"Type to Filter\"/>\n <div class=\"text row\">\n <div (click)=\"selected(item)\" *ngFor=\"let item of previewItems\" [ngClass]=\"{ clickable: clickable }\" class=\"listText\">\n <div *ngIf=\"allowRemove\" class=\"icon-clear\" (click)=\"remove(item)\"></div>\n <span *ngIf=\"!item.href\" class=\"preview-name\" matTooltip=\"{{tooltip}}\" matTooltipPosition=\"below\" matTooltipShowDelay=\"1000\">{{ item }}</span>\n <a *ngIf=\"item.href\" [href]=\"'./' + item.href\" (click)=\"linkClicked($event, item)\" class=\"{{item.linkClass ? item.linkClass : ''}}\" matTooltip=\"{{tooltip}}\" matTooltipShowDelay=\"1000\" matTooltipPosition=\"below\">\n <span *ngIf=\"item.name\" class=\"preview-name\">{{ item.name }}<div *ngIf=\"item.iconClass\" class=\"preview-item-icon {{item.iconClass}}\" (click)=\"remove(item)\"></div></span>\n </a>\n </div>\n </div>\n</div>\n<div *ngIf=\"isLoading\" class=\"spinner-container\">\n <span class=\"spinner\"></span>\n</div>", styles: [":host{display:flex;flex-direction:column;height:100%;position:relative}.counter{background-color:#4c5566;color:var(--white);position:absolute;right:0}.listBox{background-color:var(--stroke);padding:10px;border-radius:
|
|
107
|
+
args: [{ selector: 'lib-preview-list', template: "<div class=\"listBox row\">\n <input *ngIf=\"showfilter\" (keyup)=\"onKeydownEvent()\" [(ngModel)]=\"filterFor\" placeholder=\"Type to Filter\"/>\n <div class=\"text row\">\n <div (click)=\"selected(item)\" *ngFor=\"let item of previewItems\" [ngClass]=\"{ clickable: clickable }\" class=\"listText\">\n <div *ngIf=\"allowRemove\" class=\"icon-clear\" (click)=\"remove(item)\"></div>\n <span *ngIf=\"!item.href\" class=\"preview-name\" matTooltip=\"{{tooltip}}\" matTooltipPosition=\"below\" matTooltipShowDelay=\"1000\">{{ item }}</span>\n <a *ngIf=\"item.href\" [href]=\"'./' + item.href\" (click)=\"linkClicked($event, item)\" class=\"{{item.linkClass ? item.linkClass : ''}}\" matTooltip=\"{{tooltip}}\" matTooltipShowDelay=\"1000\" matTooltipPosition=\"below\">\n <span *ngIf=\"item.name\" class=\"preview-name\">{{ item.name }}<div *ngIf=\"item.iconClass\" class=\"preview-item-icon {{item.iconClass}}\" (click)=\"remove(item)\"></div></span>\n </a>\n </div>\n </div>\n</div>\n<div *ngIf=\"isLoading\" class=\"spinner-container\">\n <span class=\"spinner\"></span>\n</div>", styles: [":host{display:flex;flex-direction:column;height:100%;position:relative}.counter{background-color:#4c5566;color:var(--white);position:absolute;right:0}.listBox{background-color:var(--stroke);padding:10px;border-radius:var(--inputBorderRadius);height:100%;min-height:60px}.listBox input{height:40px;border-radius:27px;font-size:14px;font-weight:600;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAuCAYAAABTTPsKAAAD4klEQVRYhc2ZyYsUSRSHvypLbRfGDfWgzngYFRR3EUQPOm5oOyMuKIoo4kk9iAriQfAPcAMvKuJBPAyiXmbAwWVUFGEYmMHlIi24ogd3cW3trpYnv4CooLKrKiuzqn5QUBmZEe/Lly9fvIjMPH36CmA4cABYAHSnsdQK/AVsBR4Y8E/ATaA30KXBYJ3agffA+Cywt8FhEZsx7jUPf/bC4BNwuc5woWYBPdTWmgti9hSwrv6MBToOrFVD92xwsqOOYFEqYAqBGzGOC5gshv07aANuNZCnM8A4IOcacsEFdjyp9lzly0KipZEBA7VYSKwEfpf7nTqU4uqpHkWYVlkInAR+ATZ4AZ4HmoErdQKeCVz0eGymO2asrpawE38D0xXHdjcfFM93aww7Avgf6CUPWyK4Dsw2cJfW7A4WA4/1P6NHcgHoV0PYfrLpwqFdTIv1vyAPvwXmyLMd8voQ4A+gaw1gu8rWENl2T3mO2AiBTfeARYphFB7TgMM1AD4sWy7V5sVyz78oBDZd0wvoZHe7HtiWIuw22fBntQ1iKVAxYFRw7PE8nVEZ2pwCbLPGdimsXbaPF7vYZYmi54A/gfneY7JSdCpwOyHYscC/QJOOLSOcA36NKg+iPIw6rNBM2Ka2bnqLBycAO1hjdfNgW2QzspbpDNj0EZintzSv6wdojdVUom9natIYAzRmXjbmyWakSgGbnigsnJdzepQngqmzXGXUd6wXam2y8aTUGOUAm/4DVnvHZmgpsDsG8G719SvF1bJRUuUCm84Au7zMkfWMl6sl6uPs5jXmmXIH6CxLRMkqu+Weh94BPwJvSvTrAzwCftCxhcFpq8AqMR4W8OXIFqk/AxPUv0lJfl/Q114gP4yGAT092BtxFrxxgL8Ay4D7OrYa4LciwKOBNRHrxKye0pdKjVcSw74eBSuV4RHXtUW0W9+HcQzHBUaVlFPUflxU+4eI9pKqBriUDqm+db9nSQwaJ4bLldUDOzyn9G904KHAxKRtpBkSpsQ3ZNL0sG1EW9r6quNw2R5Lab90vbX67ZXUS5cUcJTnZmjqtjQ2KAlD1QB/9v4PVAETbgnk5OWeSYQDVQKf9WayjKbnO9oxT03VAO8HrgZbAubpS1pU2tLHKrh/VOtGTdMVqdqQmAvs1Eo37z32LarGWrXXMAV4WW9gBGlL8sn2DS1YRo3U57TNScUvCWYJAxsDHPXarKy00vMgcD6pD5ZJ5mELkU3AQuC15+2stk/7JmEkjYnDlu+jtL/rpuZwRn0Rd/C0Zrrn+m69UauK71ulkt2EbU7HUtrFzxF9BXLpzzZLtusDZuUCvgHvMdO9Y7xsIwAAAABJRU5ErkJggg==);background-size:auto 21px;background-position:top 8px right 12px;background-repeat:no-repeat;margin-bottom:10px;padding-left:14px}.text{overflow-y:scroll;height:100%}.listText{width:100%;position:relative;float:left;font-size:14px;font-weight:600;padding-left:10px;padding-right:10px;margin-bottom:2px;color:var(--primary);display:flex;flex-direction:row;align-items:center;gap:5px}.listText a{color:var(--primary);display:flex;flex-direction:row;align-items:center}.listText a:hover .preview-item-icon{text-decoration:underline}.listText .icon-clear{margin-top:2px}.listText .icon-clear:hover{color:var(--background)}::-webkit-scrollbar-thumb{background-color:var(--background)!important}.clickable{color:var(--primary);cursor:pointer}.clickable:hover,.clickable:focus{filter:brightness(90%)}.clickable:active{color:var(--icon);transform:translateY(1px)}.clickable .preview-name:hover,.clickable .preview-name:focus{text-decoration:underline}.clickable .preview-name:active{text-decoration:underline}.preview-name{white-space:pre}.preview-item-icon{margin-left:7px;font-family:zac!important}.preview-more-results{margin-top:5px}.spinner-container{position:absolute;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.spinner-container .spinner{display:inline-block;width:32px;height:32px;border-radius:50%;background:transparent;border-top:5px solid var(--tableText);border-right:5px solid var(--tableText);border-bottom:5px solid transparent;border-left:5px solid transparent;animation:loading .5s infinite linear;opacity:.7}\n"] }]
|
|
108
108
|
}], ctorParameters: function () { return [{ type: i1.Router }]; }, propDecorators: { label: [{
|
|
109
109
|
type: Input
|
|
110
110
|
}], clickable: [{
|