@myrmidon/cadmus-part-codicology-sheet-labels 2.0.6 → 2.0.7

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.
@@ -39,8 +39,8 @@ import { CodLocationConverterComponent } from './cod-location-converter/cod-loca
39
39
  import * as i0 from "@angular/core";
40
40
  export class CadmusPartCodicologySheetLabelsModule {
41
41
  }
42
- CadmusPartCodicologySheetLabelsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CadmusPartCodicologySheetLabelsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
43
- CadmusPartCodicologySheetLabelsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: CadmusPartCodicologySheetLabelsModule, declarations: [CodCColDefinitionComponent,
42
+ CadmusPartCodicologySheetLabelsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CadmusPartCodicologySheetLabelsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
43
+ CadmusPartCodicologySheetLabelsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.1", ngImport: i0, type: CadmusPartCodicologySheetLabelsModule, declarations: [CodCColDefinitionComponent,
44
44
  CodEndleafComponent,
45
45
  CodLabelCellComponent,
46
46
  CodLocationConverterComponent,
@@ -87,7 +87,7 @@ CadmusPartCodicologySheetLabelsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVers
87
87
  CodSColDefinitionComponent,
88
88
  CodSheetLabelsPartComponent,
89
89
  CodSheetLabelsPartFeatureComponent] });
90
- CadmusPartCodicologySheetLabelsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CadmusPartCodicologySheetLabelsModule, imports: [CommonModule,
90
+ CadmusPartCodicologySheetLabelsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CadmusPartCodicologySheetLabelsModule, imports: [CommonModule,
91
91
  FormsModule,
92
92
  ReactiveFormsModule,
93
93
  ClipboardModule,
@@ -116,7 +116,7 @@ CadmusPartCodicologySheetLabelsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVers
116
116
  CadmusUiFlagsPickerModule,
117
117
  CadmusCodicologyUiModule,
118
118
  CadmusRefsLookupModule] });
119
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CadmusPartCodicologySheetLabelsModule, decorators: [{
119
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CadmusPartCodicologySheetLabelsModule, decorators: [{
120
120
  type: NgModule,
121
121
  args: [{
122
122
  declarations: [
@@ -78,9 +78,9 @@ export class CodCColDefinitionComponent {
78
78
  this.definitionChange.emit(this.getModel());
79
79
  }
80
80
  }
81
- CodCColDefinitionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodCColDefinitionComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
82
- CodCColDefinitionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: CodCColDefinitionComponent, selector: "cadmus-cod-c-col-definition", inputs: { definition: "definition", posEntries: "posEntries" }, outputs: { definitionChange: "definitionChange", editorClose: "editorClose" }, ngImport: i0, template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- rank -->\r\n <mat-form-field style=\"width: 6em\">\r\n <mat-label>rank</mat-label>\r\n <input matInput [formControl]=\"rank\" type=\"number\" min=\"0\" />\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"form-row\">\r\n <!-- position (bound) -->\r\n <mat-form-field *ngIf=\"posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <mat-select [formControl]=\"position\">\r\n <mat-option *ngFor=\"let e of posEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- position (free) -->\r\n <mat-form-field *ngIf=\"!posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <input matInput [formControl]=\"position\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.maxLength &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- isVertical -->\r\n <mat-checkbox [formControl]=\"isVertical\">vertical</mat-checkbox>\r\n </div>\r\n\r\n <div>\r\n <!-- decoration -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>decoration</mat-label>\r\n <input matInput [formControl]=\"decoration\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(decoration).errors?.maxLength &&\r\n (decoration.dirty || decoration.touched)\r\n \"\r\n >decoration too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <div>\r\n <!-- note -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>note</mat-label>\r\n <input matInput [formControl]=\"note\" />\r\n <mat-error\r\n *ngIf=\"$any(note).errors?.maxLength && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}\n"], dependencies: [{ 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: 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.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { 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.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { 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.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { 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: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i9.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i10.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodCColDefinitionComponent, decorators: [{
81
+ CodCColDefinitionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodCColDefinitionComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
82
+ CodCColDefinitionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: CodCColDefinitionComponent, selector: "cadmus-cod-c-col-definition", inputs: { definition: "definition", posEntries: "posEntries" }, outputs: { definitionChange: "definitionChange", editorClose: "editorClose" }, ngImport: i0, template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- rank -->\r\n <mat-form-field style=\"width: 6em\">\r\n <mat-label>rank</mat-label>\r\n <input matInput [formControl]=\"rank\" type=\"number\" min=\"0\" />\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"form-row\">\r\n <!-- position (bound) -->\r\n <mat-form-field *ngIf=\"posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <mat-select [formControl]=\"position\">\r\n <mat-option *ngFor=\"let e of posEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- position (free) -->\r\n <mat-form-field *ngIf=\"!posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <input matInput [formControl]=\"position\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.maxLength &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- isVertical -->\r\n <mat-checkbox [formControl]=\"isVertical\">vertical</mat-checkbox>\r\n </div>\r\n\r\n <div>\r\n <!-- decoration -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>decoration</mat-label>\r\n <input matInput [formControl]=\"decoration\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(decoration).errors?.maxLength &&\r\n (decoration.dirty || decoration.touched)\r\n \"\r\n >decoration too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <div>\r\n <!-- note -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>note</mat-label>\r\n <input matInput [formControl]=\"note\" />\r\n <mat-error\r\n *ngIf=\"$any(note).errors?.maxLength && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}\n"], dependencies: [{ 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: 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.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { 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.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { 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.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { 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: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i9.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i10.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodCColDefinitionComponent, decorators: [{
84
84
  type: Component,
85
85
  args: [{ selector: 'cadmus-cod-c-col-definition', template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- rank -->\r\n <mat-form-field style=\"width: 6em\">\r\n <mat-label>rank</mat-label>\r\n <input matInput [formControl]=\"rank\" type=\"number\" min=\"0\" />\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"form-row\">\r\n <!-- position (bound) -->\r\n <mat-form-field *ngIf=\"posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <mat-select [formControl]=\"position\">\r\n <mat-option *ngFor=\"let e of posEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- position (free) -->\r\n <mat-form-field *ngIf=\"!posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <input matInput [formControl]=\"position\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.maxLength &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- isVertical -->\r\n <mat-checkbox [formControl]=\"isVertical\">vertical</mat-checkbox>\r\n </div>\r\n\r\n <div>\r\n <!-- decoration -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>decoration</mat-label>\r\n <input matInput [formControl]=\"decoration\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(decoration).errors?.maxLength &&\r\n (decoration.dirty || decoration.touched)\r\n \"\r\n >decoration too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <div>\r\n <!-- note -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>note</mat-label>\r\n <input matInput [formControl]=\"note\" />\r\n <mat-error\r\n *ngIf=\"$any(note).errors?.maxLength && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}\n"] }]
86
86
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }]; }, propDecorators: { definition: [{
@@ -75,9 +75,9 @@ export class CodEndleafComponent {
75
75
  this.endleafChange.emit(this.getModel());
76
76
  }
77
77
  }
78
- CodEndleafComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodEndleafComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
79
- CodEndleafComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: CodEndleafComponent, selector: "cadmus-cod-endleaf", inputs: { endleaf: "endleaf", matEntries: "matEntries", ctTagEntries: "ctTagEntries", assTagEntries: "assTagEntries", refTypeEntries: "refTypeEntries", refTagEntries: "refTagEntries", locations: "locations" }, outputs: { endleafChange: "endleafChange", editorClose: "editorClose" }, ngImport: i0, template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- location -->\r\n <mat-form-field>\r\n <mat-label>location</mat-label>\r\n <mat-select [formControl]=\"location\">\r\n <mat-option *ngFor=\"let l of locations\" [value]=\"l\">{{ l }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(location).errors?.required &&\r\n (location.dirty || location.touched)\r\n \"\r\n >location required</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- material (bound) -->\r\n <mat-form-field *ngIf=\"matEntries?.length\" class=\"form-col\">\r\n <mat-label>material</mat-label>\r\n <mat-select [formControl]=\"material\">\r\n <mat-option *ngFor=\"let e of matEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(material).errors?.required &&\r\n (material.dirty || material.touched)\r\n \"\r\n >material required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- material (free) -->\r\n <mat-form-field *ngIf=\"!matEntries?.length\" class=\"form-col\">\r\n <mat-label>material</mat-label>\r\n <input matInput [formControl]=\"material\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(material).errors?.required &&\r\n (material.dirty || material.touched)\r\n \"\r\n >material required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(material).errors?.maxLength &&\r\n (material.dirty || material.touched)\r\n \"\r\n >material too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- chronotope -->\r\n <cadmus-refs-asserted-chronotope\r\n [tagEntries]=\"ctTagEntries\"\r\n [assTagEntries]=\"assTagEntries\"\r\n [refTagEntries]=\"refTagEntries\"\r\n [refTypeEntries]=\"refTypeEntries\"\r\n [chronotope]=\"initialChronotope\"\r\n (chronotopeChange)=\"onChronotopeChange($event)\"\r\n >\r\n </cadmus-refs-asserted-chronotope>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}\n"], dependencies: [{ 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: 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.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.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: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i9.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i10.AssertedChronotopeComponent, selector: "cadmus-refs-asserted-chronotope", inputs: ["chronotope", "tagEntries", "assTagEntries", "refTypeEntries", "refTagEntries"], outputs: ["chronotopeChange"] }] });
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodEndleafComponent, decorators: [{
78
+ CodEndleafComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodEndleafComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
79
+ CodEndleafComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: CodEndleafComponent, selector: "cadmus-cod-endleaf", inputs: { endleaf: "endleaf", matEntries: "matEntries", ctTagEntries: "ctTagEntries", assTagEntries: "assTagEntries", refTypeEntries: "refTypeEntries", refTagEntries: "refTagEntries", locations: "locations" }, outputs: { endleafChange: "endleafChange", editorClose: "editorClose" }, ngImport: i0, template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- location -->\r\n <mat-form-field>\r\n <mat-label>location</mat-label>\r\n <mat-select [formControl]=\"location\">\r\n <mat-option *ngFor=\"let l of locations\" [value]=\"l\">{{ l }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(location).errors?.required &&\r\n (location.dirty || location.touched)\r\n \"\r\n >location required</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- material (bound) -->\r\n <mat-form-field *ngIf=\"matEntries?.length\" class=\"form-col\">\r\n <mat-label>material</mat-label>\r\n <mat-select [formControl]=\"material\">\r\n <mat-option *ngFor=\"let e of matEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(material).errors?.required &&\r\n (material.dirty || material.touched)\r\n \"\r\n >material required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- material (free) -->\r\n <mat-form-field *ngIf=\"!matEntries?.length\" class=\"form-col\">\r\n <mat-label>material</mat-label>\r\n <input matInput [formControl]=\"material\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(material).errors?.required &&\r\n (material.dirty || material.touched)\r\n \"\r\n >material required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(material).errors?.maxLength &&\r\n (material.dirty || material.touched)\r\n \"\r\n >material too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- chronotope -->\r\n <cadmus-refs-asserted-chronotope\r\n [tagEntries]=\"ctTagEntries\"\r\n [assTagEntries]=\"assTagEntries\"\r\n [refTagEntries]=\"refTagEntries\"\r\n [refTypeEntries]=\"refTypeEntries\"\r\n [chronotope]=\"initialChronotope\"\r\n (chronotopeChange)=\"onChronotopeChange($event)\"\r\n >\r\n </cadmus-refs-asserted-chronotope>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}\n"], dependencies: [{ 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: 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.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.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: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i9.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i10.AssertedChronotopeComponent, selector: "cadmus-refs-asserted-chronotope", inputs: ["chronotope", "tagEntries", "assTagEntries", "refTypeEntries", "refTagEntries"], outputs: ["chronotopeChange"] }] });
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodEndleafComponent, decorators: [{
81
81
  type: Component,
82
82
  args: [{ selector: 'cadmus-cod-endleaf', template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- location -->\r\n <mat-form-field>\r\n <mat-label>location</mat-label>\r\n <mat-select [formControl]=\"location\">\r\n <mat-option *ngFor=\"let l of locations\" [value]=\"l\">{{ l }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(location).errors?.required &&\r\n (location.dirty || location.touched)\r\n \"\r\n >location required</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- material (bound) -->\r\n <mat-form-field *ngIf=\"matEntries?.length\" class=\"form-col\">\r\n <mat-label>material</mat-label>\r\n <mat-select [formControl]=\"material\">\r\n <mat-option *ngFor=\"let e of matEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(material).errors?.required &&\r\n (material.dirty || material.touched)\r\n \"\r\n >material required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- material (free) -->\r\n <mat-form-field *ngIf=\"!matEntries?.length\" class=\"form-col\">\r\n <mat-label>material</mat-label>\r\n <input matInput [formControl]=\"material\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(material).errors?.required &&\r\n (material.dirty || material.touched)\r\n \"\r\n >material required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(material).errors?.maxLength &&\r\n (material.dirty || material.touched)\r\n \"\r\n >material too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- chronotope -->\r\n <cadmus-refs-asserted-chronotope\r\n [tagEntries]=\"ctTagEntries\"\r\n [assTagEntries]=\"assTagEntries\"\r\n [refTagEntries]=\"refTagEntries\"\r\n [refTypeEntries]=\"refTypeEntries\"\r\n [chronotope]=\"initialChronotope\"\r\n (chronotopeChange)=\"onChronotopeChange($event)\"\r\n >\r\n </cadmus-refs-asserted-chronotope>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}\n"] }]
83
83
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }]; }, propDecorators: { endleaf: [{
@@ -81,9 +81,9 @@ export class CodLabelCellComponent {
81
81
  this.editMode = 'none';
82
82
  }
83
83
  }
84
- CodLabelCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodLabelCellComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
85
- CodLabelCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: CodLabelCellComponent, selector: "cadmus-cod-label-cell", inputs: { cell: "cell", color: "color" }, outputs: { cellChange: "cellChange" }, viewQueries: [{ propertyName: "valueElement", first: true, predicate: ["valueInput"], descendants: true }, { propertyName: "noteElement", first: true, predicate: ["noteInput"], descendants: true }], ngImport: i0, template: "<div\r\n *ngIf=\"cell\"\r\n class=\"cell\"\r\n [style.background-color]=\"color || 'transparent'\"\r\n>\r\n <!-- display -->\r\n <div *ngIf=\"editMode === 'none'\" class=\"form-row-center\">\r\n <span>{{ cell.value }}</span>\r\n <span *ngIf=\"cell.note\" [matTooltip]=\"cell.note\">\r\n <mat-icon>description</mat-icon>\r\n </span>\r\n <button\r\n class=\"muted\"\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Edit value\"\r\n color=\"primary\"\r\n (click)=\"editValue()\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <button\r\n class=\"muted\"\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Edit note\"\r\n (click)=\"editNote()\"\r\n >\r\n <mat-icon>edit_note</mat-icon>\r\n </button>\r\n </div>\r\n <!-- edit -->\r\n <form\r\n [formGroup]=\"form\"\r\n (submit)=\"saveEdit()\"\r\n *ngIf=\"editMode !== 'none'\"\r\n class=\"form-row\"\r\n >\r\n <!-- value -->\r\n <mat-form-field *ngIf=\"editMode === 'value'\">\r\n <mat-label>value</mat-label>\r\n <input\r\n #valueInput\r\n matInput\r\n type=\"text\"\r\n spellcheck=\"false\"\r\n [formControl]=\"value\"\r\n (keydown.esc)=\"cancelEdit()\"\r\n />\r\n <mat-error\r\n *ngIf=\"value.hasError('maxLength') && (value.dirty || value.touched)\"\r\n >value too long</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- note -->\r\n <mat-form-field *ngIf=\"editMode === 'note'\">\r\n <mat-label>note</mat-label>\r\n <input\r\n #noteInput\r\n matInput\r\n type=\"text\"\r\n [formControl]=\"note\"\r\n (keydown.esc)=\"cancelEdit()\"\r\n />\r\n <mat-error\r\n *ngIf=\"note.hasError('maxLength') && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Discard edit\"\r\n color=\"warn\"\r\n (click)=\"cancelEdit()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n [disabled]=\"form.invalid\"\r\n mat-icon-button\r\n matTooltip=\"Save edit\"\r\n color=\"primary\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </form>\r\n</div>\r\n", styles: ["div.cell{margin:2px;padding-left:4px;padding-right:4px;border:1px solid transparent;border-radius:4px}div.cell:hover{margin:2px;padding-left:4px;padding-right:4px;border:1px solid gray;border-radius:4px}.form-row{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.form-row-center{display:flex;gap:4px;align-items:center;justify-content:center;flex-wrap:wrap}.form-row-center *{flex:0 0 auto}.muted{opacity:20%}.muted:hover{opacity:100%}\n"], dependencies: [{ 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.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.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: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i7.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodLabelCellComponent, decorators: [{
84
+ CodLabelCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodLabelCellComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
85
+ CodLabelCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: CodLabelCellComponent, selector: "cadmus-cod-label-cell", inputs: { cell: "cell", color: "color" }, outputs: { cellChange: "cellChange" }, viewQueries: [{ propertyName: "valueElement", first: true, predicate: ["valueInput"], descendants: true }, { propertyName: "noteElement", first: true, predicate: ["noteInput"], descendants: true }], ngImport: i0, template: "<div\r\n *ngIf=\"cell\"\r\n class=\"cell\"\r\n [style.background-color]=\"color || 'transparent'\"\r\n>\r\n <!-- display -->\r\n <div *ngIf=\"editMode === 'none'\" class=\"form-row-center\">\r\n <span>{{ cell.value }}</span>\r\n <span *ngIf=\"cell.note\" [matTooltip]=\"cell.note\">\r\n <mat-icon>description</mat-icon>\r\n </span>\r\n <button\r\n class=\"muted\"\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Edit value\"\r\n color=\"primary\"\r\n (click)=\"editValue()\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <button\r\n class=\"muted\"\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Edit note\"\r\n (click)=\"editNote()\"\r\n >\r\n <mat-icon>edit_note</mat-icon>\r\n </button>\r\n </div>\r\n <!-- edit -->\r\n <form\r\n [formGroup]=\"form\"\r\n (submit)=\"saveEdit()\"\r\n *ngIf=\"editMode !== 'none'\"\r\n class=\"form-row\"\r\n >\r\n <!-- value -->\r\n <mat-form-field *ngIf=\"editMode === 'value'\">\r\n <mat-label>value</mat-label>\r\n <input\r\n #valueInput\r\n matInput\r\n type=\"text\"\r\n spellcheck=\"false\"\r\n [formControl]=\"value\"\r\n (keydown.esc)=\"cancelEdit()\"\r\n />\r\n <mat-error\r\n *ngIf=\"value.hasError('maxLength') && (value.dirty || value.touched)\"\r\n >value too long</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- note -->\r\n <mat-form-field *ngIf=\"editMode === 'note'\">\r\n <mat-label>note</mat-label>\r\n <input\r\n #noteInput\r\n matInput\r\n type=\"text\"\r\n [formControl]=\"note\"\r\n (keydown.esc)=\"cancelEdit()\"\r\n />\r\n <mat-error\r\n *ngIf=\"note.hasError('maxLength') && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Discard edit\"\r\n color=\"warn\"\r\n (click)=\"cancelEdit()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n [disabled]=\"form.invalid\"\r\n mat-icon-button\r\n matTooltip=\"Save edit\"\r\n color=\"primary\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </form>\r\n</div>\r\n", styles: ["div.cell{margin:2px;padding-left:4px;padding-right:4px;border:1px solid transparent;border-radius:4px}div.cell:hover{margin:2px;padding-left:4px;padding-right:4px;border:1px solid gray;border-radius:4px}.form-row{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.form-row-center{display:flex;gap:4px;align-items:center;justify-content:center;flex-wrap:wrap}.form-row-center *{flex:0 0 auto}.muted{opacity:20%}.muted:hover{opacity:100%}\n"], dependencies: [{ 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.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.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: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i7.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodLabelCellComponent, decorators: [{
87
87
  type: Component,
88
88
  args: [{ selector: 'cadmus-cod-label-cell', template: "<div\r\n *ngIf=\"cell\"\r\n class=\"cell\"\r\n [style.background-color]=\"color || 'transparent'\"\r\n>\r\n <!-- display -->\r\n <div *ngIf=\"editMode === 'none'\" class=\"form-row-center\">\r\n <span>{{ cell.value }}</span>\r\n <span *ngIf=\"cell.note\" [matTooltip]=\"cell.note\">\r\n <mat-icon>description</mat-icon>\r\n </span>\r\n <button\r\n class=\"muted\"\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Edit value\"\r\n color=\"primary\"\r\n (click)=\"editValue()\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <button\r\n class=\"muted\"\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Edit note\"\r\n (click)=\"editNote()\"\r\n >\r\n <mat-icon>edit_note</mat-icon>\r\n </button>\r\n </div>\r\n <!-- edit -->\r\n <form\r\n [formGroup]=\"form\"\r\n (submit)=\"saveEdit()\"\r\n *ngIf=\"editMode !== 'none'\"\r\n class=\"form-row\"\r\n >\r\n <!-- value -->\r\n <mat-form-field *ngIf=\"editMode === 'value'\">\r\n <mat-label>value</mat-label>\r\n <input\r\n #valueInput\r\n matInput\r\n type=\"text\"\r\n spellcheck=\"false\"\r\n [formControl]=\"value\"\r\n (keydown.esc)=\"cancelEdit()\"\r\n />\r\n <mat-error\r\n *ngIf=\"value.hasError('maxLength') && (value.dirty || value.touched)\"\r\n >value too long</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- note -->\r\n <mat-form-field *ngIf=\"editMode === 'note'\">\r\n <mat-label>note</mat-label>\r\n <input\r\n #noteInput\r\n matInput\r\n type=\"text\"\r\n [formControl]=\"note\"\r\n (keydown.esc)=\"cancelEdit()\"\r\n />\r\n <mat-error\r\n *ngIf=\"note.hasError('maxLength') && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <button\r\n type=\"button\"\r\n mat-icon-button\r\n matTooltip=\"Discard edit\"\r\n color=\"warn\"\r\n (click)=\"cancelEdit()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n [disabled]=\"form.invalid\"\r\n mat-icon-button\r\n matTooltip=\"Save edit\"\r\n color=\"primary\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </form>\r\n</div>\r\n", styles: ["div.cell{margin:2px;padding-left:4px;padding-right:4px;border:1px solid transparent;border-radius:4px}div.cell:hover{margin:2px;padding-left:4px;padding-right:4px;border:1px solid gray;border-radius:4px}.form-row{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.form-row-center{display:flex;gap:4px;align-items:center;justify-content:center;flex-wrap:wrap}.form-row-center *{flex:0 0 auto}.muted{opacity:20%}.muted:hover{opacity:100%}\n"] }]
89
89
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }]; }, propDecorators: { cell: [{
@@ -139,9 +139,9 @@ export class CodLocationConverterComponent {
139
139
  });
140
140
  }
141
141
  }
142
- CodLocationConverterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodLocationConverterComponent, deps: [{ token: i1.ItemRefLookupService }, { token: i2.ItemService }, { token: i3.AuthJwtService }, { token: i4.Clipboard }, { token: i5.MatSnackBar }, { token: i6.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
143
- CodLocationConverterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: CodLocationConverterComponent, selector: "cadmus-cod-location-converter", inputs: { item: "item", facetId: "facetId" }, ngImport: i0, template: "<form [formGroup]=\"form\" *ngIf=\"user$ | async\">\r\n <mat-progress-bar mode=\"indeterminate\" *ngIf=\"loading\"></mat-progress-bar>\r\n <!-- item -->\r\n <cadmus-ref-lookup\r\n [service]=\"lookupService\"\r\n [item]=\"item\"\r\n [baseFilter]=\"baseFilter\"\r\n label=\"item\"\r\n (itemChange)=\"onItemChange($event)\"\r\n ></cadmus-ref-lookup>\r\n <!-- autoCopy -->\r\n <div>\r\n <mat-slide-toggle [formControl]=\"autoCopy\" matTooltip=\"Toggle auto-copy\"\r\n >copy</mat-slide-toggle\r\n >\r\n </div>\r\n\r\n <!-- systems -->\r\n <div *ngIf=\"systems$ | async as systems\" style=\"margin-top: 4px\">\r\n <div>\r\n <mat-form-field *ngIf=\"systems.length\">\r\n <mat-label>system</mat-label>\r\n <mat-select [formControl]=\"system\">\r\n <mat-option *ngFor=\"let s of systems\" [value]=\"s\">\r\n {{ s }}\r\n </mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"form-row\" *ngIf=\"system.value\">\r\n <!-- label -->\r\n <mat-form-field style=\"width: 4em\">\r\n <mat-label>label</mat-label>\r\n <input matInput [formControl]=\"label\" />\r\n </mat-form-field>\r\n\r\n <mat-icon>sync_alt</mat-icon>\r\n\r\n <!-- location -->\r\n <mat-form-field style=\"width: 4em\">\r\n <mat-label>location</mat-label>\r\n <input matInput [formControl]=\"location\" />\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}\n"], dependencies: [{ kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i6.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: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { 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: "component", type: i10.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i10.MatLabel, selector: "mat-label" }, { kind: "directive", type: i10.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i11.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i12.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i13.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i14.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "directive", type: i15.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i16.RefLookupComponent, selector: "cadmus-ref-lookup", inputs: ["label", "limit", "baseFilter", "service", "item", "required", "hasMore", "linkTemplate", "optDialog", "options"], outputs: ["itemChange", "moreRequest"] }, { kind: "pipe", type: i7.AsyncPipe, name: "async" }] });
144
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodLocationConverterComponent, decorators: [{
142
+ CodLocationConverterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodLocationConverterComponent, deps: [{ token: i1.ItemRefLookupService }, { token: i2.ItemService }, { token: i3.AuthJwtService }, { token: i4.Clipboard }, { token: i5.MatSnackBar }, { token: i6.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
143
+ CodLocationConverterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: CodLocationConverterComponent, selector: "cadmus-cod-location-converter", inputs: { item: "item", facetId: "facetId" }, ngImport: i0, template: "<form [formGroup]=\"form\" *ngIf=\"user$ | async\">\r\n <mat-progress-bar mode=\"indeterminate\" *ngIf=\"loading\"></mat-progress-bar>\r\n <!-- item -->\r\n <cadmus-ref-lookup\r\n [service]=\"lookupService\"\r\n [item]=\"item\"\r\n [baseFilter]=\"baseFilter\"\r\n label=\"item\"\r\n (itemChange)=\"onItemChange($event)\"\r\n ></cadmus-ref-lookup>\r\n <!-- autoCopy -->\r\n <div>\r\n <mat-slide-toggle [formControl]=\"autoCopy\" matTooltip=\"Toggle auto-copy\"\r\n >copy</mat-slide-toggle\r\n >\r\n </div>\r\n\r\n <!-- systems -->\r\n <div *ngIf=\"systems$ | async as systems\" style=\"margin-top: 4px\">\r\n <div>\r\n <mat-form-field *ngIf=\"systems.length\">\r\n <mat-label>system</mat-label>\r\n <mat-select [formControl]=\"system\">\r\n <mat-option *ngFor=\"let s of systems\" [value]=\"s\">\r\n {{ s }}\r\n </mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"form-row\" *ngIf=\"system.value\">\r\n <!-- label -->\r\n <mat-form-field style=\"width: 4em\">\r\n <mat-label>label</mat-label>\r\n <input matInput [formControl]=\"label\" />\r\n </mat-form-field>\r\n\r\n <mat-icon>sync_alt</mat-icon>\r\n\r\n <!-- location -->\r\n <mat-form-field style=\"width: 4em\">\r\n <mat-label>location</mat-label>\r\n <input matInput [formControl]=\"location\" />\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}\n"], dependencies: [{ kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i6.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: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { 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: "component", type: i10.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i10.MatLabel, selector: "mat-label" }, { kind: "directive", type: i10.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i11.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i12.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i13.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i14.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "directive", type: i15.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i16.RefLookupComponent, selector: "cadmus-ref-lookup", inputs: ["label", "limit", "baseFilter", "service", "item", "required", "hasMore", "linkTemplate", "optDialog", "options"], outputs: ["itemChange", "moreRequest"] }, { kind: "pipe", type: i7.AsyncPipe, name: "async" }] });
144
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodLocationConverterComponent, decorators: [{
145
145
  type: Component,
146
146
  args: [{ selector: 'cadmus-cod-location-converter', template: "<form [formGroup]=\"form\" *ngIf=\"user$ | async\">\r\n <mat-progress-bar mode=\"indeterminate\" *ngIf=\"loading\"></mat-progress-bar>\r\n <!-- item -->\r\n <cadmus-ref-lookup\r\n [service]=\"lookupService\"\r\n [item]=\"item\"\r\n [baseFilter]=\"baseFilter\"\r\n label=\"item\"\r\n (itemChange)=\"onItemChange($event)\"\r\n ></cadmus-ref-lookup>\r\n <!-- autoCopy -->\r\n <div>\r\n <mat-slide-toggle [formControl]=\"autoCopy\" matTooltip=\"Toggle auto-copy\"\r\n >copy</mat-slide-toggle\r\n >\r\n </div>\r\n\r\n <!-- systems -->\r\n <div *ngIf=\"systems$ | async as systems\" style=\"margin-top: 4px\">\r\n <div>\r\n <mat-form-field *ngIf=\"systems.length\">\r\n <mat-label>system</mat-label>\r\n <mat-select [formControl]=\"system\">\r\n <mat-option *ngFor=\"let s of systems\" [value]=\"s\">\r\n {{ s }}\r\n </mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"form-row\" *ngIf=\"system.value\">\r\n <!-- label -->\r\n <mat-form-field style=\"width: 4em\">\r\n <mat-label>label</mat-label>\r\n <input matInput [formControl]=\"label\" />\r\n </mat-form-field>\r\n\r\n <mat-icon>sync_alt</mat-icon>\r\n\r\n <!-- location -->\r\n <mat-form-field style=\"width: 4em\">\r\n <mat-label>location</mat-label>\r\n <input matInput [formControl]=\"location\" />\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}\n"] }]
147
147
  }], ctorParameters: function () { return [{ type: i1.ItemRefLookupService }, { type: i2.ItemService }, { type: i3.AuthJwtService }, { type: i4.Clipboard }, { type: i5.MatSnackBar }, { type: i6.FormBuilder }]; }, propDecorators: { item: [{
@@ -129,9 +129,9 @@ export class CodNColDefinitionComponent {
129
129
  this.definitionChange.emit(this.getModel());
130
130
  }
131
131
  }
132
- CodNColDefinitionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodNColDefinitionComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
133
- CodNColDefinitionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: CodNColDefinitionComponent, selector: "cadmus-cod-n-col-definition", inputs: { definition: "definition", sysEntries: "sysEntries", techEntries: "techEntries", posEntries: "posEntries", clrEntries: "clrEntries" }, outputs: { definitionChange: "definitionChange", editorClose: "editorClose" }, ngImport: i0, template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- rank -->\r\n <mat-form-field style=\"width: 6em\">\r\n <mat-label>rank</mat-label>\r\n <input matInput [formControl]=\"rank\" type=\"number\" min=\"0\" />\r\n </mat-form-field>\r\n\r\n <!-- isPagination -->\r\n <mat-checkbox [formControl]=\"isPagination\">pagination</mat-checkbox>\r\n </div>\r\n\r\n <div class=\"form-row\">\r\n <!-- system (bound) -->\r\n <mat-form-field *ngIf=\"sysEntries?.length\" class=\"form-col\">\r\n <mat-label>system</mat-label>\r\n <mat-select [formControl]=\"system\">\r\n <mat-option *ngFor=\"let e of sysEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- system (free) -->\r\n <mat-form-field *ngIf=\"!sysEntries?.length\" class=\"form-col\">\r\n <mat-label>system</mat-label>\r\n <input matInput [formControl]=\"system\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.maxLength && (system.dirty || system.touched)\r\n \"\r\n >system too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- technique (bound) -->\r\n <mat-form-field *ngIf=\"techEntries?.length\" class=\"form-col\">\r\n <mat-label>technique</mat-label>\r\n <mat-select [formControl]=\"technique\">\r\n <mat-option *ngFor=\"let e of techEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(technique).errors?.required &&\r\n (technique.dirty || technique.touched)\r\n \"\r\n >technique required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- technique (free) -->\r\n <mat-form-field *ngIf=\"!techEntries?.length\" class=\"form-col\">\r\n <mat-label>technique</mat-label>\r\n <input matInput [formControl]=\"technique\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(technique).errors?.required &&\r\n (technique.dirty || technique.touched)\r\n \"\r\n >technique required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(technique).errors?.maxLength &&\r\n (technique.dirty || technique.touched)\r\n \"\r\n >technique too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- position (bound) -->\r\n <mat-form-field *ngIf=\"posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <mat-select [formControl]=\"position\">\r\n <mat-option *ngFor=\"let e of posEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- position (free) -->\r\n <mat-form-field *ngIf=\"!posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <input matInput [formControl]=\"position\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.maxLength &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <fieldset>\r\n <legend>colors</legend>\r\n <cadmus-ui-flags-picker\r\n [flags]=\"clrFlags\"\r\n [selectedIds]=\"initialColors\"\r\n (selectedIdsChange)=\"onSelectedIdsChange($event)\"\r\n ></cadmus-ui-flags-picker>\r\n </fieldset>\r\n\r\n <div class=\"form-row\">\r\n <mat-checkbox [formControl]=\"hasDate\">date</mat-checkbox>\r\n <!-- date -->\r\n <cadmus-refs-historical-date\r\n *ngIf=\"hasDate?.value\"\r\n [date]=\"initialDate\"\r\n (dateChange)=\"onDateChange($event)\"\r\n ></cadmus-refs-historical-date>\r\n </div>\r\n\r\n <div>\r\n <!-- note -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>note</mat-label>\r\n <input matInput [formControl]=\"note\" />\r\n <mat-error\r\n *ngIf=\"$any(note).errors?.maxLength && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}fieldset{max-width:900px;margin-bottom:6px;border:1px solid silver;padding:8px;border-radius:6px}\n"], dependencies: [{ 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: 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.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { 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.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { 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.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { 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: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i9.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i10.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i11.HistoricalDateComponent, selector: "cadmus-refs-historical-date", inputs: ["date", "label", "disabled"], outputs: ["dateChange"] }, { kind: "component", type: i12.FlagsPickerComponent, selector: "cadmus-ui-flags-picker", inputs: ["selectedIds", "flags", "numbering", "toolbar", "allowUserFlags"], outputs: ["selectedIdsChange", "flagsChange"] }] });
134
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodNColDefinitionComponent, decorators: [{
132
+ CodNColDefinitionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodNColDefinitionComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
133
+ CodNColDefinitionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: CodNColDefinitionComponent, selector: "cadmus-cod-n-col-definition", inputs: { definition: "definition", sysEntries: "sysEntries", techEntries: "techEntries", posEntries: "posEntries", clrEntries: "clrEntries" }, outputs: { definitionChange: "definitionChange", editorClose: "editorClose" }, ngImport: i0, template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- rank -->\r\n <mat-form-field style=\"width: 6em\">\r\n <mat-label>rank</mat-label>\r\n <input matInput [formControl]=\"rank\" type=\"number\" min=\"0\" />\r\n </mat-form-field>\r\n\r\n <!-- isPagination -->\r\n <mat-checkbox [formControl]=\"isPagination\">pagination</mat-checkbox>\r\n </div>\r\n\r\n <div class=\"form-row\">\r\n <!-- system (bound) -->\r\n <mat-form-field *ngIf=\"sysEntries?.length\" class=\"form-col\">\r\n <mat-label>system</mat-label>\r\n <mat-select [formControl]=\"system\">\r\n <mat-option *ngFor=\"let e of sysEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- system (free) -->\r\n <mat-form-field *ngIf=\"!sysEntries?.length\" class=\"form-col\">\r\n <mat-label>system</mat-label>\r\n <input matInput [formControl]=\"system\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.maxLength && (system.dirty || system.touched)\r\n \"\r\n >system too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- technique (bound) -->\r\n <mat-form-field *ngIf=\"techEntries?.length\" class=\"form-col\">\r\n <mat-label>technique</mat-label>\r\n <mat-select [formControl]=\"technique\">\r\n <mat-option *ngFor=\"let e of techEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(technique).errors?.required &&\r\n (technique.dirty || technique.touched)\r\n \"\r\n >technique required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- technique (free) -->\r\n <mat-form-field *ngIf=\"!techEntries?.length\" class=\"form-col\">\r\n <mat-label>technique</mat-label>\r\n <input matInput [formControl]=\"technique\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(technique).errors?.required &&\r\n (technique.dirty || technique.touched)\r\n \"\r\n >technique required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(technique).errors?.maxLength &&\r\n (technique.dirty || technique.touched)\r\n \"\r\n >technique too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- position (bound) -->\r\n <mat-form-field *ngIf=\"posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <mat-select [formControl]=\"position\">\r\n <mat-option *ngFor=\"let e of posEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- position (free) -->\r\n <mat-form-field *ngIf=\"!posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <input matInput [formControl]=\"position\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.maxLength &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <fieldset>\r\n <legend>colors</legend>\r\n <cadmus-ui-flags-picker\r\n [flags]=\"clrFlags\"\r\n [selectedIds]=\"initialColors\"\r\n (selectedIdsChange)=\"onSelectedIdsChange($event)\"\r\n ></cadmus-ui-flags-picker>\r\n </fieldset>\r\n\r\n <div class=\"form-row\">\r\n <mat-checkbox [formControl]=\"hasDate\">date</mat-checkbox>\r\n <!-- date -->\r\n <cadmus-refs-historical-date\r\n *ngIf=\"hasDate?.value\"\r\n [date]=\"initialDate\"\r\n (dateChange)=\"onDateChange($event)\"\r\n ></cadmus-refs-historical-date>\r\n </div>\r\n\r\n <div>\r\n <!-- note -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>note</mat-label>\r\n <input matInput [formControl]=\"note\" />\r\n <mat-error\r\n *ngIf=\"$any(note).errors?.maxLength && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}fieldset{max-width:900px;margin-bottom:6px;border:1px solid silver;padding:8px;border-radius:6px}\n"], dependencies: [{ 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: 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.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { 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.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { 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.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { 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: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i9.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i10.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i11.HistoricalDateComponent, selector: "cadmus-refs-historical-date", inputs: ["date", "label", "disabled"], outputs: ["dateChange"] }, { kind: "component", type: i12.FlagsPickerComponent, selector: "cadmus-ui-flags-picker", inputs: ["selectedIds", "flags", "numbering", "toolbar", "allowUserFlags"], outputs: ["selectedIdsChange", "flagsChange"] }] });
134
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodNColDefinitionComponent, decorators: [{
135
135
  type: Component,
136
136
  args: [{ selector: 'cadmus-cod-n-col-definition', template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- rank -->\r\n <mat-form-field style=\"width: 6em\">\r\n <mat-label>rank</mat-label>\r\n <input matInput [formControl]=\"rank\" type=\"number\" min=\"0\" />\r\n </mat-form-field>\r\n\r\n <!-- isPagination -->\r\n <mat-checkbox [formControl]=\"isPagination\">pagination</mat-checkbox>\r\n </div>\r\n\r\n <div class=\"form-row\">\r\n <!-- system (bound) -->\r\n <mat-form-field *ngIf=\"sysEntries?.length\" class=\"form-col\">\r\n <mat-label>system</mat-label>\r\n <mat-select [formControl]=\"system\">\r\n <mat-option *ngFor=\"let e of sysEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- system (free) -->\r\n <mat-form-field *ngIf=\"!sysEntries?.length\" class=\"form-col\">\r\n <mat-label>system</mat-label>\r\n <input matInput [formControl]=\"system\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.maxLength && (system.dirty || system.touched)\r\n \"\r\n >system too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- technique (bound) -->\r\n <mat-form-field *ngIf=\"techEntries?.length\" class=\"form-col\">\r\n <mat-label>technique</mat-label>\r\n <mat-select [formControl]=\"technique\">\r\n <mat-option *ngFor=\"let e of techEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(technique).errors?.required &&\r\n (technique.dirty || technique.touched)\r\n \"\r\n >technique required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- technique (free) -->\r\n <mat-form-field *ngIf=\"!techEntries?.length\" class=\"form-col\">\r\n <mat-label>technique</mat-label>\r\n <input matInput [formControl]=\"technique\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(technique).errors?.required &&\r\n (technique.dirty || technique.touched)\r\n \"\r\n >technique required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(technique).errors?.maxLength &&\r\n (technique.dirty || technique.touched)\r\n \"\r\n >technique too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- position (bound) -->\r\n <mat-form-field *ngIf=\"posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <mat-select [formControl]=\"position\">\r\n <mat-option *ngFor=\"let e of posEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- position (free) -->\r\n <mat-form-field *ngIf=\"!posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <input matInput [formControl]=\"position\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.maxLength &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <fieldset>\r\n <legend>colors</legend>\r\n <cadmus-ui-flags-picker\r\n [flags]=\"clrFlags\"\r\n [selectedIds]=\"initialColors\"\r\n (selectedIdsChange)=\"onSelectedIdsChange($event)\"\r\n ></cadmus-ui-flags-picker>\r\n </fieldset>\r\n\r\n <div class=\"form-row\">\r\n <mat-checkbox [formControl]=\"hasDate\">date</mat-checkbox>\r\n <!-- date -->\r\n <cadmus-refs-historical-date\r\n *ngIf=\"hasDate?.value\"\r\n [date]=\"initialDate\"\r\n (dateChange)=\"onDateChange($event)\"\r\n ></cadmus-refs-historical-date>\r\n </div>\r\n\r\n <div>\r\n <!-- note -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>note</mat-label>\r\n <input matInput [formControl]=\"note\" />\r\n <mat-error\r\n *ngIf=\"$any(note).errors?.maxLength && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}fieldset{max-width:900px;margin-bottom:6px;border:1px solid silver;padding:8px;border-radius:6px}\n"] }]
137
137
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }]; }, propDecorators: { definition: [{
@@ -70,9 +70,9 @@ export class CodRColDefinitionComponent {
70
70
  this.definitionChange.emit(this.getModel());
71
71
  }
72
72
  }
73
- CodRColDefinitionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodRColDefinitionComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
74
- CodRColDefinitionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: CodRColDefinitionComponent, selector: "cadmus-cod-r-col-definition", inputs: { definition: "definition", posEntries: "posEntries" }, outputs: { definitionChange: "definitionChange", editorClose: "editorClose" }, ngImport: i0, template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- rank -->\r\n <mat-form-field style=\"width: 6em\">\r\n <mat-label>rank</mat-label>\r\n <input matInput [formControl]=\"rank\" type=\"number\" min=\"0\" />\r\n </mat-form-field>\r\n\r\n <!-- position (bound) -->\r\n <mat-form-field *ngIf=\"posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <mat-select [formControl]=\"position\">\r\n <mat-option *ngFor=\"let e of posEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- position (free) -->\r\n <mat-form-field *ngIf=\"!posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <input matInput [formControl]=\"position\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.maxLength &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <div>\r\n <!-- note -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>note</mat-label>\r\n <input matInput [formControl]=\"note\" />\r\n <mat-error\r\n *ngIf=\"$any(note).errors?.maxLength && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}\n"], dependencies: [{ 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: 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.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { 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.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { 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.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.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: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i9.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
75
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodRColDefinitionComponent, decorators: [{
73
+ CodRColDefinitionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodRColDefinitionComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
74
+ CodRColDefinitionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: CodRColDefinitionComponent, selector: "cadmus-cod-r-col-definition", inputs: { definition: "definition", posEntries: "posEntries" }, outputs: { definitionChange: "definitionChange", editorClose: "editorClose" }, ngImport: i0, template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- rank -->\r\n <mat-form-field style=\"width: 6em\">\r\n <mat-label>rank</mat-label>\r\n <input matInput [formControl]=\"rank\" type=\"number\" min=\"0\" />\r\n </mat-form-field>\r\n\r\n <!-- position (bound) -->\r\n <mat-form-field *ngIf=\"posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <mat-select [formControl]=\"position\">\r\n <mat-option *ngFor=\"let e of posEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- position (free) -->\r\n <mat-form-field *ngIf=\"!posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <input matInput [formControl]=\"position\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.maxLength &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <div>\r\n <!-- note -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>note</mat-label>\r\n <input matInput [formControl]=\"note\" />\r\n <mat-error\r\n *ngIf=\"$any(note).errors?.maxLength && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}\n"], dependencies: [{ 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: 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.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { 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.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { 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.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.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: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i9.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodRColDefinitionComponent, decorators: [{
76
76
  type: Component,
77
77
  args: [{ selector: 'cadmus-cod-r-col-definition', template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- rank -->\r\n <mat-form-field style=\"width: 6em\">\r\n <mat-label>rank</mat-label>\r\n <input matInput [formControl]=\"rank\" type=\"number\" min=\"0\" />\r\n </mat-form-field>\r\n\r\n <!-- position (bound) -->\r\n <mat-form-field *ngIf=\"posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <mat-select [formControl]=\"position\">\r\n <mat-option *ngFor=\"let e of posEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- position (free) -->\r\n <mat-form-field *ngIf=\"!posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <input matInput [formControl]=\"position\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.maxLength &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <div>\r\n <!-- note -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>note</mat-label>\r\n <input matInput [formControl]=\"note\" />\r\n <mat-error\r\n *ngIf=\"$any(note).errors?.maxLength && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}\n"] }]
78
78
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }]; }, propDecorators: { definition: [{
@@ -76,9 +76,9 @@ export class CodSColDefinitionComponent {
76
76
  this.definitionChange.emit(this.getModel());
77
77
  }
78
78
  }
79
- CodSColDefinitionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodSColDefinitionComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
80
- CodSColDefinitionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: CodSColDefinitionComponent, selector: "cadmus-cod-s-col-definition", inputs: { definition: "definition", sysEntries: "sysEntries", posEntries: "posEntries" }, outputs: { definitionChange: "definitionChange", editorClose: "editorClose" }, ngImport: i0, template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- rank -->\r\n <mat-form-field style=\"width: 6em\">\r\n <mat-label>rank</mat-label>\r\n <input matInput [formControl]=\"rank\" type=\"number\" min=\"0\" />\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"form-row\">\r\n <!-- system (bound) -->\r\n <mat-form-field *ngIf=\"sysEntries?.length\" class=\"form-col\">\r\n <mat-label>system</mat-label>\r\n <mat-select [formControl]=\"system\">\r\n <mat-option *ngFor=\"let e of sysEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- system (free) -->\r\n <mat-form-field *ngIf=\"!sysEntries?.length\" class=\"form-col\">\r\n <mat-label>system</mat-label>\r\n <input matInput [formControl]=\"system\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.maxLength && (system.dirty || system.touched)\r\n \"\r\n >system too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- position (bound) -->\r\n <mat-form-field *ngIf=\"posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <mat-select [formControl]=\"position\">\r\n <mat-option *ngFor=\"let e of posEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- position (free) -->\r\n <mat-form-field *ngIf=\"!posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <input matInput [formControl]=\"position\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.maxLength &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <div>\r\n <!-- note -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>note</mat-label>\r\n <input matInput [formControl]=\"note\" />\r\n <mat-error\r\n *ngIf=\"$any(note).errors?.maxLength && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}\n"], dependencies: [{ 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: 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.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { 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.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { 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.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.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: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i9.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
81
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CodSColDefinitionComponent, decorators: [{
79
+ CodSColDefinitionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodSColDefinitionComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
80
+ CodSColDefinitionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: CodSColDefinitionComponent, selector: "cadmus-cod-s-col-definition", inputs: { definition: "definition", sysEntries: "sysEntries", posEntries: "posEntries" }, outputs: { definitionChange: "definitionChange", editorClose: "editorClose" }, ngImport: i0, template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- rank -->\r\n <mat-form-field style=\"width: 6em\">\r\n <mat-label>rank</mat-label>\r\n <input matInput [formControl]=\"rank\" type=\"number\" min=\"0\" />\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"form-row\">\r\n <!-- system (bound) -->\r\n <mat-form-field *ngIf=\"sysEntries?.length\" class=\"form-col\">\r\n <mat-label>system</mat-label>\r\n <mat-select [formControl]=\"system\">\r\n <mat-option *ngFor=\"let e of sysEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- system (free) -->\r\n <mat-form-field *ngIf=\"!sysEntries?.length\" class=\"form-col\">\r\n <mat-label>system</mat-label>\r\n <input matInput [formControl]=\"system\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.maxLength && (system.dirty || system.touched)\r\n \"\r\n >system too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- position (bound) -->\r\n <mat-form-field *ngIf=\"posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <mat-select [formControl]=\"position\">\r\n <mat-option *ngFor=\"let e of posEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- position (free) -->\r\n <mat-form-field *ngIf=\"!posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <input matInput [formControl]=\"position\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.maxLength &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <div>\r\n <!-- note -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>note</mat-label>\r\n <input matInput [formControl]=\"note\" />\r\n <mat-error\r\n *ngIf=\"$any(note).errors?.maxLength && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}\n"], dependencies: [{ 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: 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.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { 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.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { 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.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.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: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i9.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CodSColDefinitionComponent, decorators: [{
82
82
  type: Component,
83
83
  args: [{ selector: 'cadmus-cod-s-col-definition', template: "<form [formGroup]=\"form\" (submit)=\"save()\">\r\n <div class=\"form-row\">\r\n <!-- rank -->\r\n <mat-form-field style=\"width: 6em\">\r\n <mat-label>rank</mat-label>\r\n <input matInput [formControl]=\"rank\" type=\"number\" min=\"0\" />\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"form-row\">\r\n <!-- system (bound) -->\r\n <mat-form-field *ngIf=\"sysEntries?.length\" class=\"form-col\">\r\n <mat-label>system</mat-label>\r\n <mat-select [formControl]=\"system\">\r\n <mat-option *ngFor=\"let e of sysEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- system (free) -->\r\n <mat-form-field *ngIf=\"!sysEntries?.length\" class=\"form-col\">\r\n <mat-label>system</mat-label>\r\n <input matInput [formControl]=\"system\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.required && (system.dirty || system.touched)\r\n \"\r\n >system required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(system).errors?.maxLength && (system.dirty || system.touched)\r\n \"\r\n >system too long</mat-error\r\n >\r\n </mat-form-field>\r\n\r\n <!-- position (bound) -->\r\n <mat-form-field *ngIf=\"posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <mat-select [formControl]=\"position\">\r\n <mat-option *ngFor=\"let e of posEntries\" [value]=\"e.id\">{{\r\n e.value\r\n }}</mat-option>\r\n </mat-select>\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n </mat-form-field>\r\n <!-- position (free) -->\r\n <mat-form-field *ngIf=\"!posEntries?.length\" class=\"form-col\">\r\n <mat-label>position</mat-label>\r\n <input matInput [formControl]=\"position\" />\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.required &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position required</mat-error\r\n >\r\n <mat-error\r\n *ngIf=\"\r\n $any(position).errors?.maxLength &&\r\n (position.dirty || position.touched)\r\n \"\r\n >position too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <div>\r\n <!-- note -->\r\n <mat-form-field class=\"long-text\">\r\n <mat-label>note</mat-label>\r\n <input matInput [formControl]=\"note\" />\r\n <mat-error\r\n *ngIf=\"$any(note).errors?.maxLength && (note.dirty || note.touched)\"\r\n >note too long</mat-error\r\n >\r\n </mat-form-field>\r\n </div>\r\n\r\n <!-- buttons -->\r\n <div>\r\n <button\r\n type=\"button\"\r\n color=\"warn\"\r\n mat-icon-button\r\n matTooltip=\"Discard changes\"\r\n (click)=\"cancel()\"\r\n >\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n <button\r\n type=\"submit\"\r\n color=\"primary\"\r\n mat-icon-button\r\n matTooltip=\"Accept changes\"\r\n [disabled]=\"form.invalid || form.pristine\"\r\n >\r\n <mat-icon>check_circle</mat-icon>\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.long-text{width:100%;max-width:800px}\n"] }]
84
84
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }]; }, propDecorators: { definition: [{
@@ -15,9 +15,9 @@ export class CellAdapterPipe {
15
15
  return { ...col, rowId: rowId };
16
16
  }
17
17
  }
18
- CellAdapterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CellAdapterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
19
- CellAdapterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: CellAdapterPipe, name: "cellAdapter" });
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CellAdapterPipe, decorators: [{
18
+ CellAdapterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CellAdapterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
19
+ CellAdapterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.1.1", ngImport: i0, type: CellAdapterPipe, name: "cellAdapter" });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CellAdapterPipe, decorators: [{
21
21
  type: Pipe,
22
22
  args: [{
23
23
  name: 'cellAdapter',
@@ -24,9 +24,9 @@ export class CellTypeColorPipe {
24
24
  return null;
25
25
  }
26
26
  }
27
- CellTypeColorPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CellTypeColorPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
28
- CellTypeColorPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: CellTypeColorPipe, name: "cellTypeColor" });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: CellTypeColorPipe, decorators: [{
27
+ CellTypeColorPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CellTypeColorPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
28
+ CellTypeColorPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.1.1", ngImport: i0, type: CellTypeColorPipe, name: "cellTypeColor" });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CellTypeColorPipe, decorators: [{
30
30
  type: Pipe,
31
31
  args: [{
32
32
  name: 'cellTypeColor',