Add back plus button which retains filter text

This commit is contained in:
Michael Shamoon 2021-04-04 17:05:27 -07:00
parent 026c213ea4
commit ec4ec41552
5 changed files with 89 additions and 21 deletions

View file

@ -39,6 +39,8 @@ export class SelectComponent extends AbstractInputComponent<number> {
public addItemRef: (name) => void
private _lastSearchTerm: string
get allowCreateNew(): boolean {
return this.createNew.observers.length > 0
}
@ -52,7 +54,28 @@ export class SelectComponent extends AbstractInputComponent<number> {
}
addItem(name: string) {
this.createNew.next(name)
if (name) this.createNew.next(name)
else this.createNew.next(this._lastSearchTerm)
this.clearLastSearchTerm()
}
clickNew() {
this.createNew.next(this._lastSearchTerm)
this.clearLastSearchTerm()
}
clearLastSearchTerm() {
this._lastSearchTerm = null
}
onSearch($event) {
this._lastSearchTerm = $event.term
}
onBlur() {
setTimeout(() => {
this.clearLastSearchTerm()
}, 3000);
}
}