<label i18n>Record Type</label>
</div>
<div class="col-lg-3">
- <select class="form-control" [(ngModel)]="recordType">
- <option value='bib' i18n>Bibliographic Records</option>
- <option value='auth' i18n>Authority Records</option>
- <option value='bib-acq' i18n>Acquisitions Records</option>
- </select>
+ <eg-combobox placeholder="Record Type..." i18n-placeholder>
+ <eg-combobox-entry entryId="bib" entryLabel="Bibliographic Records"
+ [selected]="true" i18n-entryLabel></eg-combobox-entry>
+ <eg-combobox-entry entryId="auth" entryLabel="Authority Records"
+ i18n-entryLabel></eg-combobox-entry>
+ <eg-combobox-entry entryId="bib-acq" entryLabel="Acquisitions Records"
+ i18n-entryLabel></eg-combobox-entry>
+ </eg-combobox>
</div>
<div class="col-lg-3">
<label i18n>Select a Record Source</label>
</div>
<div class="col-lg-3">
- <eg-typeahead [entries]="formatEntries('bibSources')"
- placeholder="Record Source..." i18n-placeholder>
- </eg-typeahead>
+ <eg-combobox [entries]="formatEntries('bibSources')"
+ [selectFirst]="true" placeholder="Record Source..." i18n-placeholder>
+ </eg-combobox>
</div>
</div>
<div class="row">
<div class="col-lg-3">
- <label i18n>Find or Create a Qeueue</label>
+ <label i18n>Select or Create a Qeueue</label>
</div>
<div class="col-lg-3">
- <eg-typeahead [entries]="formatEntries('activeQueues')"
- [allowFreeText]="true" placeholder="Select a Queue..." i18n-placeholder>
- </eg-typeahead>
+ <eg-combobox [entries]="formatEntries('activeQueues')"
+ [allowFreeText]="true" placeholder="Select or Create a Queue..." i18n-placeholder>
+ </eg-combobox>
+ </div>
+ <div class="col-lg-3">
+ <label i18n>Limit Matches to Bucket</label>
+ </div>
+ <div class="col-lg-3">
+ <eg-combobox [entries]="formatEntries('bibBuckets')"
+ placeholder="Buckets..." i18n-placeholder></eg-combobox>
</div>
</div>
<div class="row">
<label i18n>Record Match Set</label>
</div>
<div class="col-lg-3">
- <eg-typeahead [entries]="formatEntries('matchSets')"
- placeholder="Match Set..." i18n-placeholder></eg-typeahead>
- </div>
- <div class="col-lg-3">
- <label i18n>Limit Matches to Bucket</label>
+ <eg-combobox [entries]="formatEntries('matchSets')"
+ placeholder="Match Set..." i18n-placeholder></eg-combobox>
</div>
+ <div class="col-lg-3"><label i18n>Import Non-Matching Records</label></div>
<div class="col-lg-3">
- <eg-typeahead [entries]="formatEntries('bibBuckets')"
- placeholder="Buckets..." i18n-placeholder></eg-typeahead>
+ <input class="form-check-input" type="checkbox"
+ [(ngModel)]="importNonMatching">
</div>
- </div>
+ </div>
<div class="row">
<div class="col-lg-3">
<label i18n>Holdings Import Profile</label>
</div>
<div class="col-lg-3"> <!-- TODO disable for authority -->
- <eg-typeahead [entries]="formatEntries('importItemDefs')"
+ <eg-combobox [entries]="formatEntries('importItemDefs')"
placeholder="Holdings Import Profile..." i18n-placeholder>
- </eg-typeahead>
+ </eg-combobox>
</div>
- <div class="col-lg-3"><label i18n>Import Non-Matching Records</label></div>
+ <div class="col-lg-3"><label i18n>Merge On Exact Match (901c)</label></div>
<div class="col-lg-3">
<input class="form-check-input" type="checkbox"
- [(ngModel)]="importNonMatching">
+ [(ngModel)]="mergeOnExact">
</div>
</div>
<div class="row">
<label i18n>Merge Profile</label>
</div>
<div class="col-lg-3">
- <eg-typeahead [entries]="formatEntries('mergeProfiles')"
+ <eg-combobox [entries]="formatEntries('mergeProfiles')"
placeholder="Merge Profile..." i18n-placeholder>
- </eg-typeahead>
+ </eg-combobox>
</div>
- <div class="col-lg-3"><label i18n>Merge On Exact Match (901c)</label></div>
+ <div class="col-lg-3"><label i18n>Merge On Single Match</label></div>
<div class="col-lg-3">
<input class="form-check-input" type="checkbox"
- [(ngModel)]="mergeOnExact">
+ [(ngModel)]="mergeOnSingleMatch">
</div>
</div>
<div class="row">
<div class="col-lg-3">
<label i18n>Insufficient Quality Fall-Through Profile</label></div>
<div class="col-lg-3">
- <eg-typeahead [entries]="formatEntries('mergeProfiles')"
+ <eg-combobox [entries]="formatEntries('mergeProfiles')"
placeholder="Merge Profile..." i18n-placeholder>
- </eg-typeahead>
+ </eg-combobox>
</div>
- <div class="col-lg-3"><label i18n>Merge On Single Match</label></div>
+ <div class="col-lg-3"><label i18n>Merge On Best Match</label></div>
<div class="col-lg-3">
<input class="form-check-input" type="checkbox"
- [(ngModel)]="mergeOnSingleMatch">
+ [(ngModel)]="mergeOnBestMatch">
</div>
</div>
<div class="row">
<input type="number" step="0.1"
class="form-control" [(ngModel)]="minQualityRatio">
</div>
- <div class="col-lg-3"><label i18n>Merge On Best Match</label></div>
+ <div class="col-lg-3">
+ <label i18n>Auto-overlay In-process Acquisitions Copies</label></div>
<div class="col-lg-3">
<input class="form-check-input" type="checkbox"
- [(ngModel)]="mergeOnBestMatch">
+ [(ngModel)]="autoOverlayAcqCopies">
</div>
</div>
<div class="row">
import {Component, OnInit, AfterViewInit, Input, ViewChild} from '@angular/core';
import {IdlObject} from '@eg/core/idl.service';
import {OrgService} from '@eg/core/org.service';
-import {TypeaheadEntry} from '@eg/share/typeahead/typeahead.component';
+import {ComboboxEntry} from '@eg/share/combobox/combobox.component';
import {VandelayService} from './vandelay.service';
import {ProgressDialogComponent} from '@eg/share/dialog/progress.component';
mergeOnSingleMatch: boolean;
mergeOnBestMatch: boolean;
minQualityRatio: number;
+ autoOverlayAcqCopies: boolean;
@ViewChild('progressDialog')
private progressDialog: ProgressDialogComponent;
}
// Format typeahead data sets
- formatEntries(etype: string): TypeaheadEntry[] {
+ formatEntries(etype: string): ComboboxEntry[] {
const rtype = this.recordType;
let list;