LP1904036 Combobox supports domId input
authorBill Erickson <berickxx@gmail.com>
Wed, 17 Mar 2021 16:23:13 +0000 (12:23 -0400)
committerBill Erickson <berickxx@gmail.com>
Mon, 5 Apr 2021 14:18:24 +0000 (10:18 -0400)
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Open-ILS/src/eg2/src/app/share/combobox/combobox.component.html
Open-ILS/src/eg2/src/app/share/combobox/combobox.component.ts

index d228081..f72683a 100644 (file)
@@ -16,6 +16,7 @@
     class="form-control"
     [ngClass]="{'text-success font-italic font-weight-bold': selected && selected.freetext}"
     [placeholder]="placeholder"
+    [id]="domId"
     [name]="name"
     [disabled]="isDisabled"
     [required]="isRequired"
index d21ad5f..c2c2333 100644 (file)
@@ -46,7 +46,10 @@ export class IdlClassTemplateDirective {
     multi: true
   }]
 })
-export class ComboboxComponent implements ControlValueAccessor, OnInit, AfterViewInit, OnChanges {
+export class ComboboxComponent
+    implements ControlValueAccessor, OnInit, AfterViewInit, OnChanges {
+
+    static domIdAuto = 0;
 
     selected: ComboboxEntry;
     click$: Subject<string>;
@@ -56,6 +59,8 @@ export class ComboboxComponent implements ControlValueAccessor, OnInit, AfterVie
     @ViewChild('defaultDisplayTemplate', { static: true}) defaultDisplayTemplate: TemplateRef<any>;
     @ViewChildren(IdlClassTemplateDirective) idlClassTemplates: QueryList<IdlClassTemplateDirective>;
 
+    @Input() domId = 'eg-combobox-' + ComboboxComponent.domIdAuto++;
+
     // Applies a name attribute to the input.
     // Useful in forms.
     @Input() name: string;