From 5d15571b2c5099af2883f508997182a3b3b6b61a Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Fri, 12 Jul 2019 12:37:59 -0400 Subject: [PATCH] LP1825851 Combobox display template option Signed-off-by: Bill Erickson Signed-off-by: Kyle Huckins Signed-off-by: Galen Charlton --- .../src/eg2/src/app/share/combobox/combobox.component.html | 4 ++-- .../src/eg2/src/app/share/combobox/combobox.component.ts | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/Open-ILS/src/eg2/src/app/share/combobox/combobox.component.html b/Open-ILS/src/eg2/src/app/share/combobox/combobox.component.html index 0f0afde823..83df22e20a 100644 --- a/Open-ILS/src/eg2/src/app/share/combobox/combobox.component.html +++ b/Open-ILS/src/eg2/src/app/share/combobox/combobox.component.html @@ -1,6 +1,6 @@ - + {{r.label || r.id}} @@ -14,7 +14,7 @@ [required]="isRequired" [(ngModel)]="selected" [ngbTypeahead]="filter" - [resultTemplate]="displayTemplate" + [resultTemplate]=" displayTemplate || defaultDisplayTemplate" [inputFormatter]="formatDisplayString" (click)="onClick($event)" (blur)="onBlur()" diff --git a/Open-ILS/src/eg2/src/app/share/combobox/combobox.component.ts b/Open-ILS/src/eg2/src/app/share/combobox/combobox.component.ts index 0696a989fb..67d73e9cf5 100644 --- a/Open-ILS/src/eg2/src/app/share/combobox/combobox.component.ts +++ b/Open-ILS/src/eg2/src/app/share/combobox/combobox.component.ts @@ -3,7 +3,8 @@ * * */ -import {Component, OnInit, Input, Output, ViewChild, EventEmitter, ElementRef, forwardRef} from '@angular/core'; +import {Component, OnInit, Input, Output, ViewChild, + TemplateRef, EventEmitter, ElementRef, forwardRef} from '@angular/core'; import {ControlValueAccessor, NG_VALUE_ACCESSOR} from '@angular/forms'; import {Observable, of, Subject} from 'rxjs'; import {map, tap, reduce, mergeMap, mapTo, debounceTime, distinctUntilChanged, merge, filter} from 'rxjs/operators'; @@ -99,6 +100,9 @@ export class ComboboxComponent implements ControlValueAccessor, OnInit { } } + // When provided use this as the display template for each entry. + @Input() displayTemplate: TemplateRef; + // Emitted when the value is changed via UI. // When the UI value is cleared, null is emitted. @Output() onChange: EventEmitter; -- 2.43.2