@myrmidon/cadmus-ui 4.0.2 → 4.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/cadmus-ui.module.mjs +4 -4
- package/esm2020/lib/components/close-save-buttons/close-save-buttons.component.mjs +3 -3
- package/esm2020/lib/components/decorated-token-text/decorated-token-text.component.mjs +3 -3
- package/esm2020/lib/components/error-list/error-list.component.mjs +3 -3
- package/esm2020/lib/components/facet-badge/facet-badge.component.mjs +3 -3
- package/esm2020/lib/components/flags-badge/flags-badge.component.mjs +3 -3
- package/esm2020/lib/components/layer-hints/layer-hints.component.mjs +3 -3
- package/esm2020/lib/components/lookup-pin/lookup-pin.component.mjs +3 -3
- package/esm2020/lib/components/model-editor-component-base.mjs +4 -4
- package/esm2020/lib/components/part-badge/part-badge.component.mjs +3 -3
- package/esm2020/lib/components/thesaurus-tree/thesaurus-tree.component.mjs +3 -3
- package/esm2020/lib/services/color.service.mjs +3 -3
- package/esm2020/lib/services/user-ref-lookup.service.mjs +3 -3
- package/fesm2015/myrmidon-cadmus-ui.mjs +40 -41
- package/fesm2015/myrmidon-cadmus-ui.mjs.map +1 -1
- package/fesm2020/myrmidon-cadmus-ui.mjs +40 -41
- package/fesm2020/myrmidon-cadmus-ui.mjs.map +1 -1
- package/lib/components/model-editor-component-base.d.ts +1 -1
- package/package.json +1 -1
|
@@ -30,8 +30,8 @@ import { ThesaurusTreeComponent } from './components/thesaurus-tree/thesaurus-tr
|
|
|
30
30
|
import * as i0 from "@angular/core";
|
|
31
31
|
export class CadmusUiModule {
|
|
32
32
|
}
|
|
33
|
-
CadmusUiModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.
|
|
34
|
-
CadmusUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.
|
|
33
|
+
CadmusUiModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: CadmusUiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
34
|
+
CadmusUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.2", ngImport: i0, type: CadmusUiModule, declarations: [CloseSaveButtonsComponent,
|
|
35
35
|
DecoratedTokenTextComponent,
|
|
36
36
|
ErrorListComponent,
|
|
37
37
|
FacetBadgeComponent,
|
|
@@ -67,7 +67,7 @@ CadmusUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
|
|
|
67
67
|
LookupPinComponent,
|
|
68
68
|
PartBadgeComponent,
|
|
69
69
|
ThesaurusTreeComponent] });
|
|
70
|
-
CadmusUiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.
|
|
70
|
+
CadmusUiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: CadmusUiModule, imports: [CommonModule,
|
|
71
71
|
FormsModule,
|
|
72
72
|
RouterModule,
|
|
73
73
|
ReactiveFormsModule,
|
|
@@ -87,7 +87,7 @@ CadmusUiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
|
|
|
87
87
|
NgToolsModule,
|
|
88
88
|
CadmusCoreModule,
|
|
89
89
|
CadmusRefsLookupModule] });
|
|
90
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.
|
|
90
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: CadmusUiModule, decorators: [{
|
|
91
91
|
type: NgModule,
|
|
92
92
|
args: [{
|
|
93
93
|
imports: [
|
|
@@ -11,9 +11,9 @@ export class CloseSaveButtonsComponent {
|
|
|
11
11
|
this.closeRequest.emit();
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
|
-
CloseSaveButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.
|
|
15
|
-
CloseSaveButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.
|
|
14
|
+
CloseSaveButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: CloseSaveButtonsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
15
|
+
CloseSaveButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: CloseSaveButtonsComponent, selector: "cadmus-close-save-buttons", inputs: { form: "form", noSave: "noSave" }, outputs: { closeRequest: "closeRequest" }, ngImport: i0, template: "<ng-container *ngIf=\"form\">\r\n <button type=\"button\" mat-raised-button color=\"warn\" (click)=\"close()\">\r\n <mat-icon>cancel</mat-icon>\r\n close\r\n </button>\r\n <button\r\n *ngIf=\"!noSave\"\r\n type=\"submit\"\r\n [disabled]=\"form.invalid\"\r\n mat-raised-button\r\n color=\"primary\"\r\n style=\"margin-left:8px\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n save\r\n </button>\r\n</ng-container>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: CloseSaveButtonsComponent, decorators: [{
|
|
17
17
|
type: Component,
|
|
18
18
|
args: [{ selector: 'cadmus-close-save-buttons', template: "<ng-container *ngIf=\"form\">\r\n <button type=\"button\" mat-raised-button color=\"warn\" (click)=\"close()\">\r\n <mat-icon>cancel</mat-icon>\r\n close\r\n </button>\r\n <button\r\n *ngIf=\"!noSave\"\r\n type=\"submit\"\r\n [disabled]=\"form.invalid\"\r\n mat-raised-button\r\n color=\"primary\"\r\n style=\"margin-left:8px\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n save\r\n </button>\r\n</ng-container>\r\n" }]
|
|
19
19
|
}], ctorParameters: function () { return []; }, propDecorators: { form: [{
|
|
@@ -49,9 +49,9 @@ export class DecoratedTokenTextComponent {
|
|
|
49
49
|
this.text = this._textLayerService.render(this._baseText, this._locations, this._selectedLoc);
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
|
-
DecoratedTokenTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.
|
|
53
|
-
DecoratedTokenTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.
|
|
54
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.
|
|
52
|
+
DecoratedTokenTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: DecoratedTokenTextComponent, deps: [{ token: i1.TextLayerService }], target: i0.ɵɵFactoryTarget.Component });
|
|
53
|
+
DecoratedTokenTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: DecoratedTokenTextComponent, selector: "cadmus-decorated-token-text", inputs: { baseText: "baseText", locations: "locations", selectedLocation: "selectedLocation" }, viewQueries: [{ propertyName: "_textElement", first: true, predicate: ["textElem"], descendants: true }], ngImport: i0, template: "<div [innerHtml]=\"text | safeHtml: 'html'\" id=\"text\" #textElem></div>\r\n", styles: [":host ::ng-deep div#text{counter-reset:text-y-counter}:host ::ng-deep div#text p:before{content:counter(text-y-counter);counter-increment:text-y-counter;margin-right:6px;color:#a0a0a0}:host ::ng-deep span.fr{background-color:#ff0;border:1px solid silver;border-radius:6px;padding:0 4px}:host ::ng-deep span.fr-sel{background-color:orange;font-weight:700;border:1px solid #404040}\n"], dependencies: [{ kind: "pipe", type: i2.SafeHtmlPipe, name: "safeHtml" }] });
|
|
54
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: DecoratedTokenTextComponent, decorators: [{
|
|
55
55
|
type: Component,
|
|
56
56
|
args: [{ selector: 'cadmus-decorated-token-text', template: "<div [innerHtml]=\"text | safeHtml: 'html'\" id=\"text\" #textElem></div>\r\n", styles: [":host ::ng-deep div#text{counter-reset:text-y-counter}:host ::ng-deep div#text p:before{content:counter(text-y-counter);counter-increment:text-y-counter;margin-right:6px;color:#a0a0a0}:host ::ng-deep span.fr{background-color:#ff0;border:1px solid silver;border-radius:6px;padding:0 4px}:host ::ng-deep span.fr-sel{background-color:orange;font-weight:700;border:1px solid #404040}\n"] }]
|
|
57
57
|
}], ctorParameters: function () { return [{ type: i1.TextLayerService }]; }, propDecorators: { _textElement: [{
|
|
@@ -6,9 +6,9 @@ export class ErrorListComponent {
|
|
|
6
6
|
ngOnInit() {
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
|
-
ErrorListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.
|
|
10
|
-
ErrorListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.
|
|
9
|
+
ErrorListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ErrorListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
+
ErrorListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: ErrorListComponent, selector: "cadmus-error-list", inputs: { errors: "errors" }, ngImport: i0, template: "<ul *ngIf=\"errors\">\r\n <li *ngFor=\"let error of errors\">{{error}}</li>\r\n</ul>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ErrorListComponent, decorators: [{
|
|
12
12
|
type: Component,
|
|
13
13
|
args: [{ selector: 'cadmus-error-list', template: "<ul *ngIf=\"errors\">\r\n <li *ngFor=\"let error of errors\">{{error}}</li>\r\n</ul>\r\n" }]
|
|
14
14
|
}], ctorParameters: function () { return []; }, propDecorators: { errors: [{
|
|
@@ -89,9 +89,9 @@ export class FacetBadgeComponent {
|
|
|
89
89
|
this.tip = this.getFacetTip(this._facetId) ?? undefined;
|
|
90
90
|
}
|
|
91
91
|
}
|
|
92
|
-
FacetBadgeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.
|
|
93
|
-
FacetBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.
|
|
94
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.
|
|
92
|
+
FacetBadgeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: FacetBadgeComponent, deps: [{ token: i1.ColorService }], target: i0.ɵɵFactoryTarget.Component });
|
|
93
|
+
FacetBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: FacetBadgeComponent, selector: "cadmus-facet-badge", inputs: { facetId: "facetId", facetDefinitions: "facetDefinitions" }, ngImport: i0, template: "<span\r\n class=\"model-type\"\r\n [style.background-color]=\"color\"\r\n [style.color]=\"contrastColor\"\r\n matTooltip=\"{{ tip }}\"\r\n >{{ facetId }}\r\n</span>\r\n", styles: ["span.model-type{padding:4px;border-radius:6px}\n"], dependencies: [{ kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
|
|
94
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: FacetBadgeComponent, decorators: [{
|
|
95
95
|
type: Component,
|
|
96
96
|
args: [{ selector: 'cadmus-facet-badge', template: "<span\r\n class=\"model-type\"\r\n [style.background-color]=\"color\"\r\n [style.color]=\"contrastColor\"\r\n matTooltip=\"{{ tip }}\"\r\n >{{ facetId }}\r\n</span>\r\n", styles: ["span.model-type{padding:4px;border-radius:6px}\n"] }]
|
|
97
97
|
}], ctorParameters: function () { return [{ type: i1.ColorService }]; }, propDecorators: { facetId: [{
|
|
@@ -40,9 +40,9 @@ export class FlagsBadgeComponent {
|
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
|
-
FlagsBadgeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.
|
|
44
|
-
FlagsBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.
|
|
45
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.
|
|
43
|
+
FlagsBadgeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: FlagsBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
44
|
+
FlagsBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: FlagsBadgeComponent, selector: "cadmus-flags-badge", inputs: { flags: "flags", flagDefinitions: "flagDefinitions" }, ngImport: i0, template: "<div>\r\n <span\r\n class=\"badge-flag\"\r\n *ngFor=\"let def of badgeFlags\"\r\n [style.color]=\"'#' + def.colorKey\"\r\n [matTooltip]=\"def.label\"\r\n >\r\n ●\r\n </span>\r\n</div>\r\n", styles: ["span.badge-flag{margin-right:4px;font-size:24px;cursor:default}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
|
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: FlagsBadgeComponent, decorators: [{
|
|
46
46
|
type: Component,
|
|
47
47
|
args: [{ selector: 'cadmus-flags-badge', template: "<div>\r\n <span\r\n class=\"badge-flag\"\r\n *ngFor=\"let def of badgeFlags\"\r\n [style.color]=\"'#' + def.colorKey\"\r\n [matTooltip]=\"def.label\"\r\n >\r\n ●\r\n </span>\r\n</div>\r\n", styles: ["span.badge-flag{margin-right:4px;font-size:24px;cursor:default}\n"] }]
|
|
48
48
|
}], ctorParameters: function () { return []; }, propDecorators: { flags: [{
|
|
@@ -76,9 +76,9 @@ export class LayerHintsComponent {
|
|
|
76
76
|
});
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
|
-
LayerHintsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.
|
|
80
|
-
LayerHintsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.
|
|
81
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.
|
|
79
|
+
LayerHintsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: LayerHintsComponent, deps: [{ token: i1.FormBuilder }, { token: i2.DialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
80
|
+
LayerHintsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: LayerHintsComponent, selector: "cadmus-layer-hints", inputs: { hints: "hints", targetLocation: "targetLocation", disabled: "disabled", readonly: "readonly" }, outputs: { requestEdit: "requestEdit", requestDelete: "requestDelete", requestMove: "requestMove", requestPatch: "requestPatch" }, ngImport: i0, template: "<form *ngIf=\"hints\" [formGroup]=\"form\" (submit)=\"emitRequestPatch()\">\r\n <table class=\"patches\">\r\n <thead>\r\n <tr>\r\n <th></th>\r\n <th>location</th>\r\n <th>description</th>\r\n <th>patch</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let hint of hints; let i = index\">\r\n <td *ngIf=\"!readonly\">\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Edit this fragment\"\r\n [disabled]=\"disabled\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Move this fragment to {{ targetLocation }}\"\r\n [disabled]=\"\r\n disabled || !targetLocation || targetLocation === hint.location\r\n \"\r\n (click)=\"emitRequestMove(hint)\"\r\n >\r\n <mat-icon>arrow_forward</mat-icon>\r\n </button>\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Delete this fragment\"\r\n color=\"warn\"\r\n [disabled]=\"disabled\"\r\n (click)=\"emitRequestDelete(hint)\"\r\n >\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n </td>\r\n <td>{{ hint.location }}</td>\r\n <td>{{ hint.description }}</td>\r\n <td>\r\n <mat-checkbox\r\n *ngIf=\"hint.patchOperation\"\r\n matTooltip=\"Apply this patch\"\r\n [disabled]=\"disabled\"\r\n [value]=\"(i + 1).toString()\"\r\n >\r\n {{ hint.patchOperation }}\r\n </mat-checkbox>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n <div *ngIf=\"targetLocation\">move target: {{ targetLocation }}</div>\r\n <button\r\n type=\"submit\"\r\n mat-raised-button\r\n [disabled]=\"readonly || disabled || form.invalid\"\r\n >\r\n apply patches\r\n </button>\r\n</form>\r\n", styles: ["table.patches th{font-weight:400;color:#bdbdbd}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i7.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
|
|
81
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: LayerHintsComponent, decorators: [{
|
|
82
82
|
type: Component,
|
|
83
83
|
args: [{ selector: 'cadmus-layer-hints', template: "<form *ngIf=\"hints\" [formGroup]=\"form\" (submit)=\"emitRequestPatch()\">\r\n <table class=\"patches\">\r\n <thead>\r\n <tr>\r\n <th></th>\r\n <th>location</th>\r\n <th>description</th>\r\n <th>patch</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let hint of hints; let i = index\">\r\n <td *ngIf=\"!readonly\">\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Edit this fragment\"\r\n [disabled]=\"disabled\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Move this fragment to {{ targetLocation }}\"\r\n [disabled]=\"\r\n disabled || !targetLocation || targetLocation === hint.location\r\n \"\r\n (click)=\"emitRequestMove(hint)\"\r\n >\r\n <mat-icon>arrow_forward</mat-icon>\r\n </button>\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Delete this fragment\"\r\n color=\"warn\"\r\n [disabled]=\"disabled\"\r\n (click)=\"emitRequestDelete(hint)\"\r\n >\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n </td>\r\n <td>{{ hint.location }}</td>\r\n <td>{{ hint.description }}</td>\r\n <td>\r\n <mat-checkbox\r\n *ngIf=\"hint.patchOperation\"\r\n matTooltip=\"Apply this patch\"\r\n [disabled]=\"disabled\"\r\n [value]=\"(i + 1).toString()\"\r\n >\r\n {{ hint.patchOperation }}\r\n </mat-checkbox>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n <div *ngIf=\"targetLocation\">move target: {{ targetLocation }}</div>\r\n <button\r\n type=\"submit\"\r\n mat-raised-button\r\n [disabled]=\"readonly || disabled || form.invalid\"\r\n >\r\n apply patches\r\n </button>\r\n</form>\r\n", styles: ["table.patches th{font-weight:400;color:#bdbdbd}\n"] }]
|
|
84
84
|
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.DialogService }]; }, propDecorators: { hints: [{
|
|
@@ -111,9 +111,9 @@ export class LookupPinComponent {
|
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
|
-
LookupPinComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.
|
|
115
|
-
LookupPinComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.
|
|
116
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.
|
|
114
|
+
LookupPinComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: LookupPinComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.ItemService }, { token: 'indexLookupDefinitions' }], target: i0.ɵɵFactoryTarget.Component });
|
|
115
|
+
LookupPinComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: LookupPinComponent, selector: "cadmus-lookup-pin", inputs: { initialValue: "initialValue", label: "label", limit: "limit", resetOnPick: "resetOnPick", lookupKey: "lookupKey" }, outputs: { entryChange: "entryChange" }, ngImport: i0, template: "<form [formGroup]=\"form\">\r\n <mat-autocomplete #lookupAuto=\"matAutocomplete\" [displayWith]=\"entryToName\">\r\n <mat-option\r\n *ngFor=\"let entry of entries$ | async\"\r\n [value]=\"entry\"\r\n (onSelectionChange)=\"pickEntry(entry)\"\r\n >\r\n {{ entry?.value }}\r\n </mat-option>\r\n </mat-autocomplete>\r\n\r\n <mat-form-field>\r\n <input\r\n matInput\r\n type=\"text\"\r\n [placeholder]=\"label\"\r\n [formControl]=\"lookup\"\r\n [matAutocomplete]=\"lookupAuto\"\r\n />\r\n </mat-form-field>\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n color=\"warn\"\r\n (click)=\"clear()\"\r\n [disabled]=\"!entry\"\r\n matTooltip=\"Clear\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n</form>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i4.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i10.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] });
|
|
116
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: LookupPinComponent, decorators: [{
|
|
117
117
|
type: Component,
|
|
118
118
|
args: [{ selector: 'cadmus-lookup-pin', template: "<form [formGroup]=\"form\">\r\n <mat-autocomplete #lookupAuto=\"matAutocomplete\" [displayWith]=\"entryToName\">\r\n <mat-option\r\n *ngFor=\"let entry of entries$ | async\"\r\n [value]=\"entry\"\r\n (onSelectionChange)=\"pickEntry(entry)\"\r\n >\r\n {{ entry?.value }}\r\n </mat-option>\r\n </mat-autocomplete>\r\n\r\n <mat-form-field>\r\n <input\r\n matInput\r\n type=\"text\"\r\n [placeholder]=\"label\"\r\n [formControl]=\"lookup\"\r\n [matAutocomplete]=\"lookupAuto\"\r\n />\r\n </mat-form-field>\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n color=\"warn\"\r\n (click)=\"clear()\"\r\n [disabled]=\"!entry\"\r\n matTooltip=\"Clear\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n</form>\r\n" }]
|
|
119
119
|
}], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i2.ItemService }, { type: undefined, decorators: [{
|
|
@@ -175,9 +175,9 @@ export class ModelEditorComponentBase {
|
|
|
175
175
|
this.form.markAsPristine();
|
|
176
176
|
}
|
|
177
177
|
}
|
|
178
|
-
ModelEditorComponentBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.
|
|
179
|
-
ModelEditorComponentBase.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.
|
|
180
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.
|
|
178
|
+
ModelEditorComponentBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ModelEditorComponentBase, deps: [{ token: i1.AuthJwtService }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
179
|
+
ModelEditorComponentBase.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: ModelEditorComponentBase, selector: "ng-component", inputs: { identity: "identity", data: "data", disabled: "disabled" }, outputs: { dataChange: "dataChange", dirtyChange: "dirtyChange", editorClose: "editorClose" }, ngImport: i0, template: '', isInline: true });
|
|
180
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ModelEditorComponentBase, decorators: [{
|
|
181
181
|
type: Component,
|
|
182
182
|
args: [{
|
|
183
183
|
template: '',
|
|
@@ -195,4 +195,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
|
|
|
195
195
|
}], editorClose: [{
|
|
196
196
|
type: Output
|
|
197
197
|
}] } });
|
|
198
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwtZWRpdG9yLWNvbXBvbmVudC1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlybWlkb24vY2FkbXVzLXVpL3NyYy9saWIvY29tcG9uZW50cy9tb2RlbC1lZGl0b3ItY29tcG9uZW50LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNaLFNBQVMsR0FHVixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFTOUMsT0FBTyxFQUFFLFVBQVUsRUFBWSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFDTCxlQUFlLEVBQ2Ysb0JBQW9CLEVBRXBCLEVBQUUsR0FFSCxNQUFNLE1BQU0sQ0FBQzs7OztBQStCZDs7Ozs7O0dBTUc7QUFJSCxNQUFNLE9BQWdCLHdCQUF3QjtJQWdGNUM7Ozs7O09BS0c7SUFDSCxZQUNZLFdBQTJCLEVBQzNCLFdBQXdCO1FBRHhCLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUMzQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUVsQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksWUFBWSxFQUFLLENBQUM7UUFDeEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQzNDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUMvQyxJQUFJLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMs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bnRlbnQiOlsiaW1wb3J0IHtcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIENvbXBvbmVudCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHsgZGVlcENvcHkgfSBmcm9tICdAbXlybWlkb24vbmctdG9vbHMnO1xyXG5pbXBvcnQgeyBBdXRoSnd0U2VydmljZSwgVXNlciB9IGZyb20gJ0BteXJtaWRvbi9hdXRoLWp3dC1sb2dpbic7XHJcblxyXG5pbXBvcnQge1xyXG4gIEZyYWdtZW50LFxyXG4gIFBhcnQsXHJcbiAgVGV4dExheWVyUGFydCxcclxuICBUaGVzYXVyaVNldCxcclxufSBmcm9tICdAbXlybWlkb24vY2FkbXVzLWNvcmUnO1xyXG5pbXBvcnQgeyBkaXJ0eUNoZWNrLCBIYXNEaXJ0eSB9IGZyb20gJ0BteXJtaWRvbi9uZ3gtZGlydHktY2hlY2snO1xyXG5pbXBvcnQge1xyXG4gIEJlaGF2aW9yU3ViamVjdCxcclxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcclxuICBPYnNlcnZhYmxlLFxyXG4gIG9mLFxyXG4gIFN1YnNjcmlwdGlvbixcclxufSBmcm9tICdyeGpzJztcclxuXHJcbi8qKlxyXG4gKiBUaGUgaWRlbnRpZmllcnMgZm9yIGFuIGVkaXRlZCBwYXJ0LlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBQYXJ0SWRlbnRpdHkge1xyXG4gIGl0ZW1JZDogc3RyaW5nO1xyXG4gIHR5cGVJZDogc3RyaW5nO1xyXG4gIHBhcnRJZDogc3RyaW5nIHwgbnVsbDtcclxuICByb2xlSWQ6IHN0cmluZyB8IG51bGw7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUaGUgaWRlbnRpZmllcnMgZm9yIGFuIGVkaXRlZCBmcmFnbWVudC5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgRnJhZ21lbnRJZGVudGl0eSBleHRlbmRzIFBhcnRJZGVudGl0eSB7XHJcbiAgZnJUeXBlSWQ6IHN0cmluZztcclxuICBmclJvbGVJZDogc3RyaW5nIHwgbnVsbDtcclxuICBsb2M6IHN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiAqIEFuIGVkaXRlZCBwYXJ0IG9yIGZyYWdtZW50LlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBFZGl0ZWRPYmplY3Q8VCBleHRlbmRzIFBhcnQgfCBGcmFnbWVudD4ge1xyXG4gIHZhbHVlOiBUO1xyXG4gIHRoZXNhdXJpOiBUaGVzYXVyaVNldDtcclxuICBsYXllclBhcnQ/OiBUZXh0TGF5ZXJQYXJ0O1xyXG4gIGJhc2VUZXh0Pzogc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogQmFzZSBjbGFzcyBmb3IgcGFydC9mcmFnbWVudCBlZGl0b3JzIGR1bWIgY29tcG9uZW50cy5cclxuICogVGhlIG1vZGVsIHR5cGUgaXMgdGhlIHRlbXBsYXRlZCBhcmd1bWVudCBULlxyXG4gKlxyXG4gKiBXaGVuIGRlcml2aW5nIGZyb20gdGhpcyBlZGl0b3IsIGJlIHN1cmUgdG8gY2FsbCBzdXBlci5uZ09uSW5pdCgpXHJcbiAqIGZyb20gdGhlIGRlcml2ZWQgZWRpdG9yJ3MgbmdPbkluaXQgaGFuZGxlci5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlOiAnJyxcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1vZGVsRWRpdG9yQ29tcG9uZW50QmFzZTxUIGV4dGVuZHMgUGFydCB8IEZyYWdtZW50PlxyXG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEhhc0RpcnR5XHJcbntcclxuICBwcml2YXRlIF9kaXJ0eVN1Yj86IFN1YnNjcmlwdGlvbjtcclxuICBwcml2YXRlIF9kaXJ0eUV2U3ViPzogU3Vic2NyaXB0aW9uO1xyXG4gIHByaXZhdGUgX2F1dGhTdWI/OiBTdWJzY3JpcHRpb247XHJcbiAgcHJpdmF0ZSBfZGF0YT86IEVkaXRlZE9iamVjdDxUPjtcclxuICBwcml2YXRlIF9kaXJ0eVN0b3JlJDogQmVoYXZpb3JTdWJqZWN0PG9iamVjdD47XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSByb290IGZvcm0gb2YgdGhlIGVkaXRvci5cclxuICAgKi9cclxuICBwdWJsaWMgZm9ybTogRm9ybUdyb3VwIHwgVW50eXBlZEZvcm1Hcm91cDtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIGN1cnJlbnQgdXNlci5cclxuICAgKi9cclxuICBwdWJsaWMgdXNlcj86IFVzZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSB1c2VyIGF1dGhvcml6YXRpb24gbGV2ZWwgKDAtNCkuXHJcbiAgICovXHJcbiAgcHVibGljIHVzZXJMZXZlbDogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBBbiBvYnNlcnZhYmxlIHdpdGggdGhlIGN1cnJlbnQgZGlydHkgc3RhdGUgb2YgdGhlIGVkaXRvci5cclxuICAgKi9cclxuICBwdWJsaWMgaXNEaXJ0eSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBpZGVudGl0eSBvZiB0aGUgZWRpdGVkIG1vZGVsLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGlkZW50aXR5OiBQYXJ0SWRlbnRpdHkgfCBGcmFnbWVudElkZW50aXR5IHwgdW5kZWZpbmVkO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgZGF0YSBiZWluZyBlZGl0ZWQuXHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZ2V0IGRhdGEoKTogRWRpdGVkT2JqZWN0PFQ+IHwgdW5kZWZpbmVkIHtcclxuICAgIHJldHVybiB0aGlzLl9kYXRhO1xyXG4gIH1cclxuICBwdWJsaWMgc2V0IGRhdGEodmFsdWU6IEVkaXRlZE9iamVjdDxUPiB8IHVuZGVmaW5lZCkge1xyXG4gICAgdGhpcy5fZGF0YSA9IHZhbHVlO1xyXG4gICAgdGhpcy5vbkRhdGFTZXQodmFsdWUpO1xyXG4gICAgdGhpcy5fZGlydHlTdG9yZSQubmV4dCh0aGlzLmZvcm0udmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBlZGl0ZWQgZGF0YSBpcyBzYXZlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgZGF0YUNoYW5nZTogRXZlbnRFbWl0dGVyPFQ+O1xyXG5cclxuICAvKipcclxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGRpcnR5IHN0YXRlIGhhcyBjaGFuZ2VkLlxyXG4gICAqIFRoaXMgZXZlbnQganVzdCByZWZsZWN0cyBjaGFuZ2VzIGluIGlzRGlydHkkLCBhbmQgaXMgYSBmYWNpbGl0eVxyXG4gICAqIGZvciBwcm9wYWdhdGluZyBpdCB0byB0aGUgcGFyZW50J3MgY29tcG9uZW50LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBkaXJ0eUNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+O1xyXG5cclxuICAvKipcclxuICAgKiBUcnVlIHRvIGRpc2FibGUgdGhlIGVkaXRvci5cclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuZm9ybS5kaXNhYmxlKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmZvcm0uZW5hYmxlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHVzZXIgcmVxdWVzdHMgdG8gY2xvc2UgdGhlIGVkaXRvci5cclxuICAgKi9cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgZWRpdG9yQ2xvc2U6IEV2ZW50RW1pdHRlcjxhbnk+O1xyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGUgYSBuZXcgaW5zdGFuY2Ugb2YgdGhlIGVkaXRvci5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBhdXRoU2VydmljZSBUaGUgYXV0aGVudGljYXRpb24gc2VydmljZS5cclxuICAgKiBAcGFyYW0gZm9ybUJ1aWxkZXIgRm9ybSBidWlsZGVyLlxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIGF1dGhTZXJ2aWNlOiBBdXRoSnd0U2VydmljZSxcclxuICAgIHByb3RlY3RlZCBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXJcclxuICApIHtcclxuICAgIHRoaXMuZGF0YUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8VD4oKTtcclxuICAgIHRoaXMuZWRpdG9yQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICAgIHRoaXMuZGlydHlDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcbiAgICB0aGlzLmZvcm0gPSBmb3JtQnVpbGRlci5ncm91cCh7fSk7XHJcbiAgICB0aGlzLnVzZXJMZXZlbCA9IDA7XHJcbiAgICB0aGlzLl9kaXJ0eVN0b3JlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8b2JqZWN0Pih7fSk7XHJcbiAgICB0aGlzLmlzRGlydHkkID0gb2YoZmFsc2UpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgLy8gZm9ybVxyXG4gICAgdGhpcy5mb3JtID0gdGhpcy5idWlsZEZvcm0odGhpcy5mb3JtQnVpbGRlcik7XHJcblxyXG4gICAgLy8gZGlydHkgY2hlY2sgb24gZm9ybVxyXG4gICAgdGhpcy5pc0RpcnR5JCA9IGRpcnR5Q2hlY2sodGhpcy5mb3JtLCB0aGlzLl9kaXJ0eVN0b3JlJCk7XHJcbiAgICB0aGlzLl9kaXJ0eUV2U3ViID0gdGhpcy5pc0RpcnR5JFxyXG4gICAgICAucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKVxyXG4gICAgICAuc3Vic2NyaWJlKCh2KSA9PiB7XHJcbiAgICAgICAgdGhpcy5kaXJ0eUNoYW5nZS5lbWl0KHYpO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICAvLyBhdXRoIHNlcnZpY2VcclxuICAgIHRoaXMudXNlckxldmVsID0gdGhpcy5nZXRDdXJyZW50VXNlckxldmVsKCk7XHJcbiAgICB0aGlzLl9hdXRoU3ViID0gdGhpcy5hdXRoU2VydmljZS5jdXJyZW50VXNlciQuc3Vic2NyaWJlKFxyXG4gICAgICAodXNlcjogVXNlciB8IG51bGwpID0+IHtcclxuICAgICAgICB0aGlzLnVwZGF0ZVVzZXJQcm9wZXJ0aWVzKHVzZXIpO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZGlydHlTdWI/LnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLl9kaXJ0eUV2U3ViPy51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5fYXV0aFN1Yj8udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEltcGxlbWVudCBpbiB0aGUgZGVyaXZlZCBjbGFzcyB0byBidWlsZCB0aGUgcm9vdCBmb3JtIG9mIHRoaXMgZWRpdG9yLlxyXG4gICAqIFRoZSBmb3JtIGJ1aWx0IHdpbGwgdGhlbiBiZSBhdHRhY2hlZCB0byB0aGUgZGlydHkgY2hlY2sgbWVjaGFuaXNtXHJcbiAgICogcHJvdmlkZWQgYnkgdGhpcyBiYXNlIGNsYXNzLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIGZvcm1CdWlsZGVyIFRoZSBmb3JtIGJ1aWxkZXIuXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGFic3RyYWN0IGJ1aWxkRm9ybShcclxuICAgIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlclxyXG4gICk6IEZvcm1Hcm91cCB8IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCB0aGUgYXV0aG9yaXphdGlvbiBsZXZlbCBvZiB0aGUgY3VycmVudCB1c2VyIGlmIGFueS5cclxuICAgKiBAcmV0dXJucyA0LTEgZm9yIGFkbWluLCBlZGl0b3IsIG9wZXJhdG9yLCB2aXNpdG9yOyBlbHNlIDAuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBnZXRDdXJyZW50VXNlckxldmVsKCk6IG51bWJlciB7XHJcbiAgICBjb25zdCB1c2VyID0gdGhpcy5hdXRoU2VydmljZS5jdXJyZW50VXNlclZhbHVlO1xyXG4gICAgaWYgKCF1c2VyIHx8ICF1c2VyLnJvbGVzKSB7XHJcbiAgICAgIHJldHVybiAwO1xyXG4gICAgfVxyXG4gICAgaWYgKHVzZXIucm9sZXMuaW5kZXhPZignYWRtaW4nKSA+IC0xKSB7XHJcbiAgICAgIHJldHVybiA0O1xyXG4gICAgfVxyXG4gICAgaWYgKHVzZXIucm9sZXMuaW5kZXhPZignZWRpdG9yJykgPiAtMSkge1xyXG4gICAgICByZXR1cm4gMztcclxuICAgIH1cclxuICAgIGlmICh1c2VyLnJvbGVzLmluZGV4T2YoJ29wZXJhdG9yJykgPiAtMSkge1xyXG4gICAgICByZXR1cm4gMjtcclxuICAgIH1cclxuICAgIGlmICh1c2VyLnJvbGVzLmluZGV4T2YoJ3Zpc2l0b3InKSA+IC0xKSB7XHJcbiAgICAgIHJldHVybiAxO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIDA7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVVzZXJQcm9wZXJ0aWVzKHVzZXI6IFVzZXIgfCBudWxsKTogdm9pZCB7XHJcbiAgICBpZiAoIXVzZXIpIHtcclxuICAgICAgdGhpcy51c2VyID0gdW5kZWZpbmVkO1xyXG4gICAgICB0aGlzLnVzZXJMZXZlbCA9IDA7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnVzZXIgPSB1c2VyO1xyXG4gICAgICB0aGlzLnVzZXJMZXZlbCA9IHRoaXMuZ2V0Q3VycmVudFVzZXJMZXZlbCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlIHRoZSBkYXRhIHZhbHVlIHByb3BlcnR5IGFuZCBlbWl0IHRoZSBjb3JyZXNwb25kaW5nXHJcbiAgICogbW9kZWxDaGFuZ2UgZXZlbnQuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlLlxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCB1cGRhdGVWYWx1ZSh2YWx1ZTogVCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZGF0YSA9IHsgLi4uKHRoaXMuX2RhdGEgfHwgeyB0aGVzYXVyaToge30gfSksIHZhbHVlOiB2YWx1ZSB9O1xyXG4gICAgdGhpcy5fZGlydHlTdG9yZSQubmV4dCh0aGlzLmZvcm0udmFsdWUpO1xyXG4gICAgdGhpcy5kYXRhQ2hhbmdlLmVtaXQodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSW52b2tlZCB3aGVuZXZlciB0aGUgbW9kZWwgcHJvcGVydHkgaXMgc2V0ICg9ZGF0YSBjb21lcyBmcm9tIGlucHV0IG1vZGVsXHJcbiAgICogcHJvcGVydHkpLCB1bmxlc3Mgc2V0dGluZyBpdCB2aWEgdXBkYXRlTW9kZWwuIEltcGxlbWVudCB0byB1cGRhdGUgdGhlIGZvcm1cclxuICAgKiBjb250cm9scyB0byByZWZsZWN0IHRoZSBuZXcgbW9kZWwgZGF0YS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBkYXRhIFRoZSBkYXRhIHNldCwgb3IgdW5kZWZpbmVkLlxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBvbkRhdGFTZXQoZGF0YT86IEVkaXRlZE9iamVjdDxUPik6IHZvaWQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBhIG5ldyBvYmplY3QgZnJvbSB0aGUgZWRpdGVkIHBhcnQgaWYgYW55LCBlbHNlIGFzIGEgbmV3IHBhcnQuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gdHlwZUlkIFRoZSBwYXJ0J3MgdHlwZSBJRC4gVGhpcyBpcyBhIGNvbnN0YW50IHJlY2VpdmVkXHJcbiAgICogZnJvbSB0aGUgaW1wbGVtZW50b3IuXHJcbiAgICogQHJldHVybnMgUGFydCBvYmplY3QuXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGdldEVkaXRlZFBhcnQodHlwZUlkOiBzdHJpbmcpOiBQYXJ0IHtcclxuICAgIGNvbnN0IHBhcnQgPSBkZWVwQ29weSh0aGlzLmRhdGE/LnZhbHVlKSBhcyBQYXJ0IHwgbnVsbDtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIHBhcnQgfHwge1xyXG4gICAgICAgIGl0ZW1JZDogdGhpcy5pZGVudGl0eSEuaXRlbUlkIHx8ICcnLFxyXG4gICAgICAgIGlkOiAnJyxcclxuICAgICAgICB0eXBlSWQ6IHR5cGVJZCxcclxuICAgICAgICByb2xlSWQ6IHRoaXMuaWRlbnRpdHkhLnJvbGVJZCB8fCB1bmRlZmluZWQsXHJcbiAgICAgICAgdGltZUNyZWF0ZWQ6IG5ldyBEYXRlKCksXHJcbiAgICAgICAgY3JlYXRvcklkOiAnJyxcclxuICAgICAgICB0aW1lTW9kaWZpZWQ6IG5ldyBEYXRlKCksXHJcbiAgICAgICAgdXNlcklkOiAnJyxcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBhIG5ldyBvYmplY3QgZnJvbSB0aGUgZWRpdGVkIGZyYWdtZW50IGlmIGFueSwgZWxzZSBhIG5ldyBmcmFnbWVudC5cclxuICAgKlxyXG4gICAqIEByZXR1cm5zIEZyYWdtZW50IG9iamVjdC5cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgZ2V0RWRpdGVkRnJhZ21lbnQoKTogRnJhZ21lbnQge1xyXG4gICAgY29uc3QgZnIgPSBkZWVwQ29weSh0aGlzLmRhdGE/LnZhbHVlKSBhcyBGcmFnbWVudCB8IG51bGw7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICBmciB8fCB7XHJcbiAgICAgICAgbG9jYXRpb246ICh0aGlzLmlkZW50aXR5IGFzIEZyYWdtZW50SWRlbnRpdHkpLmxvYyxcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEltcGxlbWVudCBpbiBkZXJpdmVkIGNsYXNzZXMgdG8gZ2V0IHRoZSBkYXRhIGZyb20gZm9ybSdzIGNvbnRyb2xzLlxyXG4gICAqIFRoaXMgaXMgdXNlZCB3aGVuIHNhdmluZy5cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0VmFsdWUoKTogVDtcclxuXHJcbiAgLyoqXHJcbiAgICogVHJ1ZSBpZiB0aGlzIGVkaXRvciBoYXMgdGhlIHRoZXNhdXJ1cyBoYXZpbmcgdGhlIHNwZWNpZmllZCBrZXkgaW4gdGhlXHJcbiAgICogbG9hZGVkIHRoZXNhdXJpIHNldC5cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgaGFzVGhlc2F1cnVzKGtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5kYXRhPy50aGVzYXVyaSAmJiB0aGlzLmRhdGEudGhlc2F1cmlba2V5XSA/IHRydWUgOiBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVtaXQgYSByZXF1ZXN0IHRvIGNsb3NlIHRoZSBlZGl0b3IuXHJcbiAgICovXHJcbiAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5lZGl0b3JDbG9zZS5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTYXZlIHRoZSBlZGl0ZWQgZGF0YSBpZiB2YWxpZC5cclxuICAgKi9cclxuICBwdWJsaWMgc2F2ZSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmZvcm0uaW52YWxpZCkge1xyXG4gICAgICBjb25zb2xlLndhcm4oJ1NhdmUgaW52b2tlZCB3aXRoIGludmFsaWQgZm9ybScpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZ2V0VmFsdWUoKTtcclxuICAgIHRoaXMudXBkYXRlVmFsdWUodmFsdWUpO1xyXG4gICAgLy8gdGhlIGZvcm0gaXMgbm8gbW9yZSBkaXJ0eVxyXG4gICAgdGhpcy5mb3JtLm1hcmtBc1ByaXN0aW5lKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
198
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwtZWRpdG9yLWNvbXBvbmVudC1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlybWlkb24vY2FkbXVzLXVpL3NyYy9saWIvY29tcG9uZW50cy9tb2RlbC1lZGl0b3ItY29tcG9uZW50LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNaLFNBQVMsR0FHVixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFTOUMsT0FBTyxFQUFFLFVBQVUsRUFBWSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFDTCxlQUFlLEVBQ2Ysb0JBQW9CLEVBRXBCLEVBQUUsR0FFSCxNQUFNLE1BQU0sQ0FBQzs7OztBQStCZDs7Ozs7O0dBTUc7QUFJSCxNQUFNLE9BQWdCLHdCQUF3QjtJQWdGNUM7Ozs7O09BS0c7SUFDSCxZQUNZLFdBQTJCLEVBQzNCLFdBQXdCO1FBRHhCLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUMzQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUVsQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksWUFBWSxFQUFLLENBQUM7UUFDeEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQzNDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUMvQyxJQUFJLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMs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bnRlbnQiOlsiaW1wb3J0IHtcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIENvbXBvbmVudCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHsgZGVlcENvcHkgfSBmcm9tICdAbXlybWlkb24vbmctdG9vbHMnO1xyXG5pbXBvcnQgeyBBdXRoSnd0U2VydmljZSwgVXNlciB9IGZyb20gJ0BteXJtaWRvbi9hdXRoLWp3dC1sb2dpbic7XHJcblxyXG5pbXBvcnQge1xyXG4gIEZyYWdtZW50LFxyXG4gIFBhcnQsXHJcbiAgVGV4dExheWVyUGFydCxcclxuICBUaGVzYXVyaVNldCxcclxufSBmcm9tICdAbXlybWlkb24vY2FkbXVzLWNvcmUnO1xyXG5pbXBvcnQgeyBkaXJ0eUNoZWNrLCBIYXNEaXJ0eSB9IGZyb20gJ0BteXJtaWRvbi9uZ3gtZGlydHktY2hlY2snO1xyXG5pbXBvcnQge1xyXG4gIEJlaGF2aW9yU3ViamVjdCxcclxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcclxuICBPYnNlcnZhYmxlLFxyXG4gIG9mLFxyXG4gIFN1YnNjcmlwdGlvbixcclxufSBmcm9tICdyeGpzJztcclxuXHJcbi8qKlxyXG4gKiBUaGUgaWRlbnRpZmllcnMgZm9yIGFuIGVkaXRlZCBwYXJ0LlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBQYXJ0SWRlbnRpdHkge1xyXG4gIGl0ZW1JZDogc3RyaW5nO1xyXG4gIHR5cGVJZDogc3RyaW5nO1xyXG4gIHBhcnRJZDogc3RyaW5nIHwgbnVsbDtcclxuICByb2xlSWQ6IHN0cmluZyB8IG51bGw7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUaGUgaWRlbnRpZmllcnMgZm9yIGFuIGVkaXRlZCBmcmFnbWVudC5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgRnJhZ21lbnRJZGVudGl0eSBleHRlbmRzIFBhcnRJZGVudGl0eSB7XHJcbiAgZnJUeXBlSWQ6IHN0cmluZztcclxuICBmclJvbGVJZDogc3RyaW5nIHwgbnVsbDtcclxuICBsb2M6IHN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiAqIEFuIGVkaXRlZCBwYXJ0IG9yIGZyYWdtZW50LlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBFZGl0ZWRPYmplY3Q8VCBleHRlbmRzIFBhcnQgfCBGcmFnbWVudD4ge1xyXG4gIHZhbHVlOiBUIHwgbnVsbDtcclxuICB0aGVzYXVyaTogVGhlc2F1cmlTZXQ7XHJcbiAgbGF5ZXJQYXJ0PzogVGV4dExheWVyUGFydDtcclxuICBiYXNlVGV4dD86IHN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiAqIEJhc2UgY2xhc3MgZm9yIHBhcnQvZnJhZ21lbnQgZWRpdG9ycyBkdW1iIGNvbXBvbmVudHMuXHJcbiAqIFRoZSBtb2RlbCB0eXBlIGlzIHRoZSB0ZW1wbGF0ZWQgYXJndW1lbnQgVC5cclxuICpcclxuICogV2hlbiBkZXJpdmluZyBmcm9tIHRoaXMgZWRpdG9yLCBiZSBzdXJlIHRvIGNhbGwgc3VwZXIubmdPbkluaXQoKVxyXG4gKiBmcm9tIHRoZSBkZXJpdmVkIGVkaXRvcidzIG5nT25Jbml0IGhhbmRsZXIuXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZTogJycsXHJcbn0pXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNb2RlbEVkaXRvckNvbXBvbmVudEJhc2U8VCBleHRlbmRzIFBhcnQgfCBGcmFnbWVudD5cclxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBIYXNEaXJ0eVxyXG57XHJcbiAgcHJpdmF0ZSBfZGlydHlTdWI/OiBTdWJzY3JpcHRpb247XHJcbiAgcHJpdmF0ZSBfZGlydHlFdlN1Yj86IFN1YnNjcmlwdGlvbjtcclxuICBwcml2YXRlIF9hdXRoU3ViPzogU3Vic2NyaXB0aW9uO1xyXG4gIHByaXZhdGUgX2RhdGE/OiBFZGl0ZWRPYmplY3Q8VD47XHJcbiAgcHJpdmF0ZSBfZGlydHlTdG9yZSQ6IEJlaGF2aW9yU3ViamVjdDxvYmplY3Q+O1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgcm9vdCBmb3JtIG9mIHRoZSBlZGl0b3IuXHJcbiAgICovXHJcbiAgcHVibGljIGZvcm06IEZvcm1Hcm91cCB8IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBjdXJyZW50IHVzZXIuXHJcbiAgICovXHJcbiAgcHVibGljIHVzZXI/OiBVc2VyO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgdXNlciBhdXRob3JpemF0aW9uIGxldmVsICgwLTQpLlxyXG4gICAqL1xyXG4gIHB1YmxpYyB1c2VyTGV2ZWw6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogQW4gb2JzZXJ2YWJsZSB3aXRoIHRoZSBjdXJyZW50IGRpcnR5IHN0YXRlIG9mIHRoZSBlZGl0b3IuXHJcbiAgICovXHJcbiAgcHVibGljIGlzRGlydHkkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgaWRlbnRpdHkgb2YgdGhlIGVkaXRlZCBtb2RlbC5cclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBpZGVudGl0eTogUGFydElkZW50aXR5IHwgRnJhZ21lbnRJZGVudGl0eSB8IHVuZGVmaW5lZDtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIGRhdGEgYmVpbmcgZWRpdGVkLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGdldCBkYXRhKCk6IEVkaXRlZE9iamVjdDxUPiB8IHVuZGVmaW5lZCB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGF0YTtcclxuICB9XHJcbiAgcHVibGljIHNldCBkYXRhKHZhbHVlOiBFZGl0ZWRPYmplY3Q8VD4gfCB1bmRlZmluZWQpIHtcclxuICAgIHRoaXMuX2RhdGEgPSB2YWx1ZTtcclxuICAgIHRoaXMub25EYXRhU2V0KHZhbHVlKTtcclxuICAgIHRoaXMuX2RpcnR5U3RvcmUkLm5leHQodGhpcy5mb3JtLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgZWRpdGVkIGRhdGEgaXMgc2F2ZWQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGRhdGFDaGFuZ2U6IEV2ZW50RW1pdHRlcjxUPjtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBkaXJ0eSBzdGF0ZSBoYXMgY2hhbmdlZC5cclxuICAgKiBUaGlzIGV2ZW50IGp1c3QgcmVmbGVjdHMgY2hhbmdlcyBpbiBpc0RpcnR5JCwgYW5kIGlzIGEgZmFjaWxpdHlcclxuICAgKiBmb3IgcHJvcGFnYXRpbmcgaXQgdG8gdGhlIHBhcmVudCdzIGNvbXBvbmVudC5cclxuICAgKi9cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgZGlydHlDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPjtcclxuXHJcbiAgLyoqXHJcbiAgICogVHJ1ZSB0byBkaXNhYmxlIHRoZSBlZGl0b3IuXHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLmZvcm0uZGlzYWJsZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5mb3JtLmVuYWJsZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRW1pdHRlZCB3aGVuIHRoZSB1c2VyIHJlcXVlc3RzIHRvIGNsb3NlIHRoZSBlZGl0b3IuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGVkaXRvckNsb3NlOiBFdmVudEVtaXR0ZXI8YW55PjtcclxuXHJcbiAgLyoqXHJcbiAgICogQ3JlYXRlIGEgbmV3IGluc3RhbmNlIG9mIHRoZSBlZGl0b3IuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gYXV0aFNlcnZpY2UgVGhlIGF1dGhlbnRpY2F0aW9uIHNlcnZpY2UuXHJcbiAgICogQHBhcmFtIGZvcm1CdWlsZGVyIEZvcm0gYnVpbGRlci5cclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCBhdXRoU2VydmljZTogQXV0aEp3dFNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyXHJcbiAgKSB7XHJcbiAgICB0aGlzLmRhdGFDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFQ+KCk7XHJcbiAgICB0aGlzLmVkaXRvckNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgICB0aGlzLmRpcnR5Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG4gICAgdGhpcy5mb3JtID0gZm9ybUJ1aWxkZXIuZ3JvdXAoe30pO1xyXG4gICAgdGhpcy51c2VyTGV2ZWwgPSAwO1xyXG4gICAgdGhpcy5fZGlydHlTdG9yZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG9iamVjdD4oe30pO1xyXG4gICAgdGhpcy5pc0RpcnR5JCA9IG9mKGZhbHNlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIC8vIGZvcm1cclxuICAgIHRoaXMuZm9ybSA9IHRoaXMuYnVpbGRGb3JtKHRoaXMuZm9ybUJ1aWxkZXIpO1xyXG5cclxuICAgIC8vIGRpcnR5IGNoZWNrIG9uIGZvcm1cclxuICAgIHRoaXMuaXNEaXJ0eSQgPSBkaXJ0eUNoZWNrKHRoaXMuZm9ybSwgdGhpcy5fZGlydHlTdG9yZSQpO1xyXG4gICAgdGhpcy5fZGlydHlFdlN1YiA9IHRoaXMuaXNEaXJ0eSRcclxuICAgICAgLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSlcclxuICAgICAgLnN1YnNjcmliZSgodikgPT4ge1xyXG4gICAgICAgIHRoaXMuZGlydHlDaGFuZ2UuZW1pdCh2KTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgLy8gYXV0aCBzZXJ2aWNlXHJcbiAgICB0aGlzLnVzZXJMZXZlbCA9IHRoaXMuZ2V0Q3VycmVudFVzZXJMZXZlbCgpO1xyXG4gICAgdGhpcy5fYXV0aFN1YiA9IHRoaXMuYXV0aFNlcnZpY2UuY3VycmVudFVzZXIkLnN1YnNjcmliZShcclxuICAgICAgKHVzZXI6IFVzZXIgfCBudWxsKSA9PiB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVVc2VyUHJvcGVydGllcyh1c2VyKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2RpcnR5U3ViPy51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5fZGlydHlFdlN1Yj8udW5zdWJzY3JpYmUoKTtcclxuICAgIHRoaXMuX2F1dGhTdWI/LnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbXBsZW1lbnQgaW4gdGhlIGRlcml2ZWQgY2xhc3MgdG8gYnVpbGQgdGhlIHJvb3QgZm9ybSBvZiB0aGlzIGVkaXRvci5cclxuICAgKiBUaGUgZm9ybSBidWlsdCB3aWxsIHRoZW4gYmUgYXR0YWNoZWQgdG8gdGhlIGRpcnR5IGNoZWNrIG1lY2hhbmlzbVxyXG4gICAqIHByb3ZpZGVkIGJ5IHRoaXMgYmFzZSBjbGFzcy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBmb3JtQnVpbGRlciBUaGUgZm9ybSBidWlsZGVyLlxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBidWlsZEZvcm0oXHJcbiAgICBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXJcclxuICApOiBGb3JtR3JvdXAgfCBVbnR5cGVkRm9ybUdyb3VwO1xyXG5cclxuICAvKipcclxuICAgKiBHZXQgdGhlIGF1dGhvcml6YXRpb24gbGV2ZWwgb2YgdGhlIGN1cnJlbnQgdXNlciBpZiBhbnkuXHJcbiAgICogQHJldHVybnMgNC0xIGZvciBhZG1pbiwgZWRpdG9yLCBvcGVyYXRvciwgdmlzaXRvcjsgZWxzZSAwLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0Q3VycmVudFVzZXJMZXZlbCgpOiBudW1iZXIge1xyXG4gICAgY29uc3QgdXNlciA9IHRoaXMuYXV0aFNlcnZpY2UuY3VycmVudFVzZXJWYWx1ZTtcclxuICAgIGlmICghdXNlciB8fCAhdXNlci5yb2xlcykge1xyXG4gICAgICByZXR1cm4gMDtcclxuICAgIH1cclxuICAgIGlmICh1c2VyLnJvbGVzLmluZGV4T2YoJ2FkbWluJykgPiAtMSkge1xyXG4gICAgICByZXR1cm4gNDtcclxuICAgIH1cclxuICAgIGlmICh1c2VyLnJvbGVzLmluZGV4T2YoJ2VkaXRvcicpID4gLTEpIHtcclxuICAgICAgcmV0dXJuIDM7XHJcbiAgICB9XHJcbiAgICBpZiAodXNlci5yb2xlcy5pbmRleE9mKCdvcGVyYXRvcicpID4gLTEpIHtcclxuICAgICAgcmV0dXJuIDI7XHJcbiAgICB9XHJcbiAgICBpZiAodXNlci5yb2xlcy5pbmRleE9mKCd2aXNpdG9yJykgPiAtMSkge1xyXG4gICAgICByZXR1cm4gMTtcclxuICAgIH1cclxuICAgIHJldHVybiAwO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVVc2VyUHJvcGVydGllcyh1c2VyOiBVc2VyIHwgbnVsbCk6IHZvaWQge1xyXG4gICAgaWYgKCF1c2VyKSB7XHJcbiAgICAgIHRoaXMudXNlciA9IHVuZGVmaW5lZDtcclxuICAgICAgdGhpcy51c2VyTGV2ZWwgPSAwO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy51c2VyID0gdXNlcjtcclxuICAgICAgdGhpcy51c2VyTGV2ZWwgPSB0aGlzLmdldEN1cnJlbnRVc2VyTGV2ZWwoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVwZGF0ZSB0aGUgZGF0YSB2YWx1ZSBwcm9wZXJ0eSBhbmQgZW1pdCB0aGUgY29ycmVzcG9uZGluZ1xyXG4gICAqIG1vZGVsQ2hhbmdlIGV2ZW50LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHZhbHVlIFRoZSB2YWx1ZS5cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgdXBkYXRlVmFsdWUodmFsdWU6IFQpOiB2b2lkIHtcclxuICAgIHRoaXMuX2RhdGEgPSB7IC4uLih0aGlzLl9kYXRhIHx8IHsgdGhlc2F1cmk6IHt9IH0pLCB2YWx1ZTogdmFsdWUgfTtcclxuICAgIHRoaXMuX2RpcnR5U3RvcmUkLm5leHQodGhpcy5mb3JtLnZhbHVlKTtcclxuICAgIHRoaXMuZGF0YUNoYW5nZS5lbWl0KHZhbHVlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEludm9rZWQgd2hlbmV2ZXIgdGhlIG1vZGVsIHByb3BlcnR5IGlzIHNldCAoPWRhdGEgY29tZXMgZnJvbSBpbnB1dCBtb2RlbFxyXG4gICAqIHByb3BlcnR5KSwgdW5sZXNzIHNldHRpbmcgaXQgdmlhIHVwZGF0ZU1vZGVsLiBJbXBsZW1lbnQgdG8gdXBkYXRlIHRoZSBmb3JtXHJcbiAgICogY29udHJvbHMgdG8gcmVmbGVjdCB0aGUgbmV3IG1vZGVsIGRhdGEuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gZGF0YSBUaGUgZGF0YSBzZXQsIG9yIHVuZGVmaW5lZC5cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgb25EYXRhU2V0KGRhdGE/OiBFZGl0ZWRPYmplY3Q8VD4pOiB2b2lkO1xyXG5cclxuICAvKipcclxuICAgKiBHZXQgYSBuZXcgb2JqZWN0IGZyb20gdGhlIGVkaXRlZCBwYXJ0IGlmIGFueSwgZWxzZSBhcyBhIG5ldyBwYXJ0LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHR5cGVJZCBUaGUgcGFydCdzIHR5cGUgSUQuIFRoaXMgaXMgYSBjb25zdGFudCByZWNlaXZlZFxyXG4gICAqIGZyb20gdGhlIGltcGxlbWVudG9yLlxyXG4gICAqIEByZXR1cm5zIFBhcnQgb2JqZWN0LlxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBnZXRFZGl0ZWRQYXJ0KHR5cGVJZDogc3RyaW5nKTogUGFydCB7XHJcbiAgICBjb25zdCBwYXJ0ID0gZGVlcENvcHkodGhpcy5kYXRhPy52YWx1ZSkgYXMgUGFydCB8IG51bGw7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICBwYXJ0IHx8IHtcclxuICAgICAgICBpdGVtSWQ6IHRoaXMuaWRlbnRpdHkhLml0ZW1JZCB8fCAnJyxcclxuICAgICAgICBpZDogJycsXHJcbiAgICAgICAgdHlwZUlkOiB0eXBlSWQsXHJcbiAgICAgICAgcm9sZUlkOiB0aGlzLmlkZW50aXR5IS5yb2xlSWQgfHwgdW5kZWZpbmVkLFxyXG4gICAgICAgIHRpbWVDcmVhdGVkOiBuZXcgRGF0ZSgpLFxyXG4gICAgICAgIGNyZWF0b3JJZDogJycsXHJcbiAgICAgICAgdGltZU1vZGlmaWVkOiBuZXcgRGF0ZSgpLFxyXG4gICAgICAgIHVzZXJJZDogJycsXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXQgYSBuZXcgb2JqZWN0IGZyb20gdGhlIGVkaXRlZCBmcmFnbWVudCBpZiBhbnksIGVsc2UgYSBuZXcgZnJhZ21lbnQuXHJcbiAgICpcclxuICAgKiBAcmV0dXJucyBGcmFnbWVudCBvYmplY3QuXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGdldEVkaXRlZEZyYWdtZW50KCk6IEZyYWdtZW50IHtcclxuICAgIGNvbnN0IGZyID0gZGVlcENvcHkodGhpcy5kYXRhPy52YWx1ZSkgYXMgRnJhZ21lbnQgfCBudWxsO1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgZnIgfHwge1xyXG4gICAgICAgIGxvY2F0aW9uOiAodGhpcy5pZGVudGl0eSBhcyBGcmFnbWVudElkZW50aXR5KS5sb2MsXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbXBsZW1lbnQgaW4gZGVyaXZlZCBjbGFzc2VzIHRvIGdldCB0aGUgZGF0YSBmcm9tIGZvcm0ncyBjb250cm9scy5cclxuICAgKiBUaGlzIGlzIHVzZWQgd2hlbiBzYXZpbmcuXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldFZhbHVlKCk6IFQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRydWUgaWYgdGhpcyBlZGl0b3IgaGFzIHRoZSB0aGVzYXVydXMgaGF2aW5nIHRoZSBzcGVjaWZpZWQga2V5IGluIHRoZVxyXG4gICAqIGxvYWRlZCB0aGVzYXVyaSBzZXQuXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGhhc1RoZXNhdXJ1cyhrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZGF0YT8udGhlc2F1cmkgJiYgdGhpcy5kYXRhLnRoZXNhdXJpW2tleV0gPyB0cnVlIDogZmFsc2U7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFbWl0IGEgcmVxdWVzdCB0byBjbG9zZSB0aGUgZWRpdG9yLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuZWRpdG9yQ2xvc2UuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2F2ZSB0aGUgZWRpdGVkIGRhdGEgaWYgdmFsaWQuXHJcbiAgICovXHJcbiAgcHVibGljIHNhdmUoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5mb3JtLmludmFsaWQpIHtcclxuICAgICAgY29uc29sZS53YXJuKCdTYXZlIGludm9rZWQgd2l0aCBpbnZhbGlkIGZvcm0nKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmdldFZhbHVlKCk7XHJcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKHZhbHVlKTtcclxuICAgIC8vIHRoZSBmb3JtIGlzIG5vIG1vcmUgZGlydHlcclxuICAgIHRoaXMuZm9ybS5tYXJrQXNQcmlzdGluZSgpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -85,9 +85,9 @@ export class PartBadgeComponent {
|
|
|
85
85
|
this.contrastColor = this._colorService.getContrastColor(this.color);
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
|
-
PartBadgeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.
|
|
89
|
-
PartBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.
|
|
90
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.
|
|
88
|
+
PartBadgeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: PartBadgeComponent, deps: [{ token: i1.FacetService }, { token: i2.ColorService }], target: i0.ɵɵFactoryTarget.Component });
|
|
89
|
+
PartBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: PartBadgeComponent, selector: "cadmus-part-badge", inputs: { badgeType: "badgeType", typeThesaurus: "typeThesaurus", facetDefinition: "facetDefinition", partTypeIds: "partTypeIds" }, ngImport: i0, template: "<span class=\"part-badge\"\r\n [style.background-color]=\"color\"\r\n [style.color]=\"contrastColor\"\r\n *ngIf=\"badgeType !== 2\"\r\n>\r\n {{ typeName }}\r\n</span>\r\n<span class=\"role-badge\" *ngIf=\"badgeType !== 1 && roleName\">\r\n {{ roleName }}\r\n</span>\r\n", styles: [".part-badge{padding:4px;border-radius:6px}.role-badge{padding:4px;border:1px solid silver;border-radius:6px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
90
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: PartBadgeComponent, decorators: [{
|
|
91
91
|
type: Component,
|
|
92
92
|
args: [{ selector: 'cadmus-part-badge', template: "<span class=\"part-badge\"\r\n [style.background-color]=\"color\"\r\n [style.color]=\"contrastColor\"\r\n *ngIf=\"badgeType !== 2\"\r\n>\r\n {{ typeName }}\r\n</span>\r\n<span class=\"role-badge\" *ngIf=\"badgeType !== 1 && roleName\">\r\n {{ roleName }}\r\n</span>\r\n", styles: [".part-badge{padding:4px;border-radius:6px}.role-badge{padding:4px;border:1px solid silver;border-radius:6px}\n"] }]
|
|
93
93
|
}], ctorParameters: function () { return [{ type: i1.FacetService }, { type: i2.ColorService }]; }, propDecorators: { badgeType: [{
|
|
@@ -203,9 +203,9 @@ export class ThesaurusTreeComponent {
|
|
|
203
203
|
return this.foundNodes?.length > 0 && this.foundNodes.indexOf(node) > -1;
|
|
204
204
|
}
|
|
205
205
|
}
|
|
206
|
-
ThesaurusTreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.
|
|
207
|
-
ThesaurusTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.
|
|
208
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.
|
|
206
|
+
ThesaurusTreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ThesaurusTreeComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
207
|
+
ThesaurusTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: ThesaurusTreeComponent, selector: "cadmus-thesaurus-tree", inputs: { entries: "entries", rootLabel: "rootLabel", renderLabel: "renderLabel" }, outputs: { entryChange: "entryChange" }, ngImport: i0, template: "<form [formGroup]=\"form\" (submit)=\"find()\">\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Expand all\"\r\n (click)=\"expandAll()\"\r\n >\r\n <mat-icon>unfold_more</mat-icon>\r\n </button>\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Collapse all\"\r\n (click)=\"collapseAll()\"\r\n >\r\n <mat-icon>unfold_less</mat-icon>\r\n </button>\r\n <mat-form-field>\r\n <mat-label>find</mat-label>\r\n <input matInput [formControl]=\"filter\" />\r\n <button\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n color=\"warn\"\r\n (click)=\"resetFilter()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n <span\r\n *ngIf=\"foundNodes\"\r\n [ngClass]=\"{\r\n 'found-count': foundNodes.length,\r\n 'not-found-count': foundNodes.length === 0\r\n }\"\r\n >{{ foundNodes.length }}</span\r\n >\r\n</form>\r\n<mat-tree\r\n [dataSource]=\"treeDataSource\"\r\n [treeControl]=\"treeControl\"\r\n class=\"th-tree\"\r\n>\r\n <!-- leaf node -->\r\n <mat-tree-node *matTreeNodeDef=\"let node\" matTreeNodeToggle>\r\n <li>\r\n <div class=\"mat-tree-node\">\r\n <a\r\n mat-button\r\n (click)=\"onTreeNodeClick(node)\"\r\n [class.hilite]=\"isFoundNode(node)\"\r\n >\r\n {{ node.label }}\r\n </a>\r\n </div>\r\n </li>\r\n </mat-tree-node>\r\n\r\n <!-- root node -->\r\n <mat-nested-tree-node *matTreeNodeDef=\"let node; when: isRoot\">\r\n <div class=\"mat-tree-node\">\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTreeNodeToggle\r\n [attr.aria-label]=\"'Toggle ' + node.label\"\r\n >\r\n <mat-icon>\r\n {{ treeControl.isExpanded(node) ? \"expand_more\" : \"chevron_right\" }}\r\n </mat-icon>\r\n </button>\r\n {{ node.label }}\r\n </div>\r\n <ul class=\"tree-nested-node\">\r\n <div *ngIf=\"treeControl.isExpanded(node)\">\r\n <ng-container matTreeNodeOutlet></ng-container>\r\n </div>\r\n </ul>\r\n </mat-nested-tree-node>\r\n\r\n <!-- parent node -->\r\n <mat-nested-tree-node *matTreeNodeDef=\"let node; when: hasChildren\">\r\n <li class=\"tree-container\">\r\n <div class=\"mat-tree-node\">\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTreeNodeToggle\r\n [attr.aria-label]=\"'Toggle ' + node.label\"\r\n >\r\n <mat-icon>\r\n {{ treeControl.isExpanded(node) ? \"expand_more\" : \"chevron_right\" }}\r\n </mat-icon>\r\n </button>\r\n <a mat-button (click)=\"onTreeNodeClick(node)\">\r\n {{ node.label }}\r\n </a>\r\n </div>\r\n <ul class=\"tree-nested-node\">\r\n <div *ngIf=\"treeControl.isExpanded(node)\">\r\n <ng-container matTreeNodeOutlet></ng-container>\r\n </div>\r\n </ul>\r\n </li>\r\n </mat-nested-tree-node>\r\n</mat-tree>\r\n", styles: [".th-tree-progress-bar{margin-left:30px}.th-tree-nested-node{padding-left:30px}mat-tree{margin-left:40px}.mat-tree-node{padding:0;background-color:#fff}.mat-nested-tree-node{top:-24px}ul,li{list-style:none;margin:0;padding:0}li.th-tree-container{border-bottom:0}ul{padding-left:40px}li{padding-left:40px;border:1px dotted grey;border-width:0 0 1px 1px;position:relative;top:-24px}li.mat-tree-node,li div{margin:0;position:relative;top:24px}li ul{border-top:1px dotted grey;margin-left:-40px;padding-left:60px}.mat-nested-tree-node:last-child ul{border-left:1px solid white;margin-left:-41px}.mat-mdc-icon-button{z-index:100}span.found-count{margin:0 4px;padding:2px 4px;color:#fff;background-color:#0cc078;border-radius:6px}span.not-found-count{margin:0 4px;padding:2px 4px;color:#fff;background-color:#fb6962;border-radius:6px}.hilite{background-color:#fdfd96}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]" }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i7.MatNestedTreeNode, selector: "mat-nested-tree-node", inputs: ["role", "disabled", "tabIndex", "matNestedTreeNode"], exportAs: ["matNestedTreeNode"] }, { kind: "directive", type: i7.MatTreeNodeDef, selector: "[matTreeNodeDef]", inputs: ["matTreeNodeDefWhen", "matTreeNode"] }, { kind: "directive", type: i7.MatTreeNodeToggle, selector: "[matTreeNodeToggle]", inputs: ["matTreeNodeToggleRecursive"] }, { kind: "component", type: i7.MatTree, selector: "mat-tree", exportAs: ["matTree"] }, { kind: "directive", type: i7.MatTreeNode, selector: "mat-tree-node", inputs: ["role", "disabled", "tabIndex"], exportAs: ["matTreeNode"] }, { kind: "directive", type: i7.MatTreeNodeOutlet, selector: "[matTreeNodeOutlet]" }, { kind: "directive", type: i8.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
|
|
208
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ThesaurusTreeComponent, decorators: [{
|
|
209
209
|
type: Component,
|
|
210
210
|
args: [{ selector: 'cadmus-thesaurus-tree', template: "<form [formGroup]=\"form\" (submit)=\"find()\">\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Expand all\"\r\n (click)=\"expandAll()\"\r\n >\r\n <mat-icon>unfold_more</mat-icon>\r\n </button>\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Collapse all\"\r\n (click)=\"collapseAll()\"\r\n >\r\n <mat-icon>unfold_less</mat-icon>\r\n </button>\r\n <mat-form-field>\r\n <mat-label>find</mat-label>\r\n <input matInput [formControl]=\"filter\" />\r\n <button\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n color=\"warn\"\r\n (click)=\"resetFilter()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n <span\r\n *ngIf=\"foundNodes\"\r\n [ngClass]=\"{\r\n 'found-count': foundNodes.length,\r\n 'not-found-count': foundNodes.length === 0\r\n }\"\r\n >{{ foundNodes.length }}</span\r\n >\r\n</form>\r\n<mat-tree\r\n [dataSource]=\"treeDataSource\"\r\n [treeControl]=\"treeControl\"\r\n class=\"th-tree\"\r\n>\r\n <!-- leaf node -->\r\n <mat-tree-node *matTreeNodeDef=\"let node\" matTreeNodeToggle>\r\n <li>\r\n <div class=\"mat-tree-node\">\r\n <a\r\n mat-button\r\n (click)=\"onTreeNodeClick(node)\"\r\n [class.hilite]=\"isFoundNode(node)\"\r\n >\r\n {{ node.label }}\r\n </a>\r\n </div>\r\n </li>\r\n </mat-tree-node>\r\n\r\n <!-- root node -->\r\n <mat-nested-tree-node *matTreeNodeDef=\"let node; when: isRoot\">\r\n <div class=\"mat-tree-node\">\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTreeNodeToggle\r\n [attr.aria-label]=\"'Toggle ' + node.label\"\r\n >\r\n <mat-icon>\r\n {{ treeControl.isExpanded(node) ? \"expand_more\" : \"chevron_right\" }}\r\n </mat-icon>\r\n </button>\r\n {{ node.label }}\r\n </div>\r\n <ul class=\"tree-nested-node\">\r\n <div *ngIf=\"treeControl.isExpanded(node)\">\r\n <ng-container matTreeNodeOutlet></ng-container>\r\n </div>\r\n </ul>\r\n </mat-nested-tree-node>\r\n\r\n <!-- parent node -->\r\n <mat-nested-tree-node *matTreeNodeDef=\"let node; when: hasChildren\">\r\n <li class=\"tree-container\">\r\n <div class=\"mat-tree-node\">\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTreeNodeToggle\r\n [attr.aria-label]=\"'Toggle ' + node.label\"\r\n >\r\n <mat-icon>\r\n {{ treeControl.isExpanded(node) ? \"expand_more\" : \"chevron_right\" }}\r\n </mat-icon>\r\n </button>\r\n <a mat-button (click)=\"onTreeNodeClick(node)\">\r\n {{ node.label }}\r\n </a>\r\n </div>\r\n <ul class=\"tree-nested-node\">\r\n <div *ngIf=\"treeControl.isExpanded(node)\">\r\n <ng-container matTreeNodeOutlet></ng-container>\r\n </div>\r\n </ul>\r\n </li>\r\n </mat-nested-tree-node>\r\n</mat-tree>\r\n", styles: [".th-tree-progress-bar{margin-left:30px}.th-tree-nested-node{padding-left:30px}mat-tree{margin-left:40px}.mat-tree-node{padding:0;background-color:#fff}.mat-nested-tree-node{top:-24px}ul,li{list-style:none;margin:0;padding:0}li.th-tree-container{border-bottom:0}ul{padding-left:40px}li{padding-left:40px;border:1px dotted grey;border-width:0 0 1px 1px;position:relative;top:-24px}li.mat-tree-node,li div{margin:0;position:relative;top:24px}li ul{border-top:1px dotted grey;margin-left:-40px;padding-left:60px}.mat-nested-tree-node:last-child ul{border-left:1px solid white;margin-left:-41px}.mat-mdc-icon-button{z-index:100}span.found-count{margin:0 4px;padding:2px 4px;color:#fff;background-color:#0cc078;border-radius:6px}span.not-found-count{margin:0 4px;padding:2px 4px;color:#fff;background-color:#fb6962;border-radius:6px}.hilite{background-color:#fdfd96}\n"] }]
|
|
211
211
|
}], ctorParameters: function () { return [{ type: i1.FormBuilder }]; }, propDecorators: { entries: [{
|
|
@@ -56,9 +56,9 @@ export class ColorService {
|
|
|
56
56
|
: 'white';
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
|
-
ColorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.
|
|
60
|
-
ColorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.
|
|
61
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.
|
|
59
|
+
ColorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ColorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
60
|
+
ColorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ColorService, providedIn: 'root' });
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ColorService, decorators: [{
|
|
62
62
|
type: Injectable,
|
|
63
63
|
args: [{
|
|
64
64
|
providedIn: 'root',
|
|
@@ -22,9 +22,9 @@ export class UserRefLookupService {
|
|
|
22
22
|
return item?.userName;
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
UserRefLookupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.
|
|
26
|
-
UserRefLookupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.
|
|
25
|
+
UserRefLookupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: UserRefLookupService, deps: [{ token: i1.UserService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
26
|
+
UserRefLookupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: UserRefLookupService, providedIn: 'root' });
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: UserRefLookupService, decorators: [{
|
|
28
28
|
type: Injectable,
|
|
29
29
|
args: [{
|
|
30
30
|
providedIn: 'root',
|