From afa856c467416c525930dbeb1f5bba8af1b30292 Mon Sep 17 00:00:00 2001 From: Jane Sandberg Date: Tue, 1 Sep 2020 10:56:29 -0700 Subject: [PATCH] LP1849212: marc simplified editor field and subfield as directives Signed-off-by: Jane Sandberg --- ...mponent.ts => simplified-editor-field.directive.ts} | 18 ++++++++---------- ...nent.ts => simplified-editor-subfield.directive.ts} | 7 +++---- .../simplified-editor/simplified-editor.component.ts | 8 +++++--- .../simplified-editor/simplified-editor.module.ts | 12 ++++++------ 4 files changed, 22 insertions(+), 23 deletions(-) rename Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/{simplified-editor-field.component.ts => simplified-editor-field.directive.ts} (68%) rename Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/{simplified-editor-subfield.component.ts => simplified-editor-subfield.directive.ts} (56%) diff --git a/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor-field.component.ts b/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor-field.directive.ts similarity index 68% rename from Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor-field.component.ts rename to Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor-field.directive.ts index 0638ec5751..833fa0010d 100644 --- a/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor-field.component.ts +++ b/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor-field.directive.ts @@ -1,35 +1,33 @@ -import {Component, Host, Input, OnInit, Output, ViewChildren, QueryList, AfterViewInit} from '@angular/core'; +import {Directive, Host, Input, OnInit, ViewChildren, QueryList, AfterViewInit} from '@angular/core'; import {MarcSimplifiedEditorComponent} from './simplified-editor.component'; import {MarcField, MarcSubfield} from '../marcrecord'; -import { MarcSimplifiedEditorSubfieldComponent } from './simplified-editor-subfield.component'; +import {MarcSimplifiedEditorSubfieldDirective} from './simplified-editor-subfield.directive'; /** * A field that a user can edit, which will later be * compiled into MARC */ -@Component({ +@Directive({ selector: 'eg-marc-simplified-editor-field', - template: '' }) -export class MarcSimplifiedEditorFieldComponent implements OnInit, AfterViewInit { +export class MarcSimplifiedEditorFieldDirective implements OnInit, AfterViewInit { @Input() tag = 'a'; @Input() ind1 = ' '; @Input() ind2 = ' '; - @ViewChildren(MarcSimplifiedEditorSubfieldComponent) - subfields: QueryList; + @ViewChildren(MarcSimplifiedEditorSubfieldDirective) + subfields: QueryList; marcVersion: MarcField; - addSubfield: (subfield: MarcSubfield) => void; - constructor(@Host() private editor: MarcSimplifiedEditorComponent) {} ngOnInit() { this.marcVersion = { tag: this.tag, + subfields: [], authValid: false, authChecked: false, isCtrlField: false, @@ -40,7 +38,7 @@ export class MarcSimplifiedEditorFieldComponent implements OnInit, AfterViewInit } ngAfterViewInit() { - this.subfields.forEach((subfield: MarcSimplifiedEditorSubfieldComponent, index: number) => { + this.subfields.forEach((subfield: MarcSimplifiedEditorSubfieldDirective, index: number) => { this.marcVersion.subfields.push( [ subfield.code, diff --git a/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor-subfield.component.ts b/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor-subfield.directive.ts similarity index 56% rename from Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor-subfield.component.ts rename to Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor-subfield.directive.ts index 93195cff1f..d6ff39fa8c 100644 --- a/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor-subfield.component.ts +++ b/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor-subfield.directive.ts @@ -1,15 +1,14 @@ -import {Component, Input} from '@angular/core'; +import {Directive, Input} from '@angular/core'; /** * A subfield that a user can edit, which will later be * compiled into MARC */ -@Component({ +@Directive({ selector: 'eg-marc-simplified-editor-subfield', - template: '' }) -export class MarcSimplifiedEditorSubfieldComponent { +export class MarcSimplifiedEditorSubfieldDirective { @Input() code: string; @Input() defaultValue: string; diff --git a/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor.component.ts b/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor.component.ts index 80f900a6f5..ca3d14264c 100644 --- a/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor.component.ts +++ b/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor.component.ts @@ -59,9 +59,11 @@ export class MarcSimplifiedEditorComponent implements AfterViewInit, OnInit { const record = new MarcRecord(''); // need to add the value to field.subfields[0][1] this.fields.forEach((field) => { - if (field.subfields[0][1] === '') { // Default value has not been applied - field.subfields[0][1] = this.editor.get(String(field.fieldId)).value; - } + field.subfields.forEach((subfield) => { + if (subfield[1] === '') { // Default value has not been applied + subfield[1] = this.editor.get(String(field.fieldId)).value; + } + }) }); record.fields = this.fields; this.xmlRecordEvent.emit(record.toXml()); diff --git a/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor.module.ts b/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor.module.ts index 3c0fe7aac2..e17ad0efd1 100644 --- a/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor.module.ts +++ b/Open-ILS/src/eg2/src/app/staff/share/marc-edit/simplified-editor/simplified-editor.module.ts @@ -2,15 +2,15 @@ import {NgModule} from '@angular/core'; import {StaffCommonModule} from '@eg/staff/common.module'; import {CommonWidgetsModule} from '@eg/share/common-widgets.module'; import {MarcSimplifiedEditorComponent} from './simplified-editor.component'; -import {MarcSimplifiedEditorFieldComponent} from './simplified-editor-field.component'; -import {MarcSimplifiedEditorSubfieldComponent} from './simplified-editor-subfield.component'; +import {MarcSimplifiedEditorFieldDirective} from './simplified-editor-field.directive'; +import {MarcSimplifiedEditorSubfieldDirective} from './simplified-editor-subfield.directive'; import {TagTableService} from '../tagtable.service'; @NgModule({ declarations: [ MarcSimplifiedEditorComponent, - MarcSimplifiedEditorFieldComponent, - MarcSimplifiedEditorSubfieldComponent, + MarcSimplifiedEditorFieldDirective, + MarcSimplifiedEditorSubfieldDirective, ], imports: [ StaffCommonModule, @@ -18,8 +18,8 @@ import {TagTableService} from '../tagtable.service'; ], exports: [ MarcSimplifiedEditorComponent, - MarcSimplifiedEditorFieldComponent, - MarcSimplifiedEditorSubfieldComponent + MarcSimplifiedEditorFieldDirective, + MarcSimplifiedEditorSubfieldDirective ], providers: [ TagTableService -- 2.11.0