mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-04-02 13:45:10 -05:00
28 lines
1.7 KiB
HTML
28 lines
1.7 KiB
HTML
<div ngbDropdown #fieldDropdown="ngbDropdown" (openChange)="onOpenClose($event)" [popperOptions]="popperOptions" placement="bottom-end">
|
|
<button class="btn btn-sm btn-outline-primary" id="customFieldsDropdown" [disabled]="disabled" ngbDropdownToggle>
|
|
<i-bs name="ui-radios"></i-bs>
|
|
<div class="d-none d-sm-inline"> <ng-container i18n>Custom Fields</ng-container></div>
|
|
</button>
|
|
<div ngbDropdownMenu aria-labelledby="customFieldsDropdown" class="shadow custom-fields-dropdown">
|
|
<div class="list-group list-group-flush" (keydown)="listKeyDown($event)">
|
|
<div class="list-group-item">
|
|
<div class="input-group input-group-sm">
|
|
<input class="form-control" type="text" [(ngModel)]="filterText" placeholder="Search fields" i18n-placeholder (keyup.enter)="listFilterEnter()" #listFilterTextInput>
|
|
</div>
|
|
</div>
|
|
@for (field of filteredFields; track field.id) {
|
|
<button class="list-group-item list-group-item-action bg-light" (click)="addField(field)" #button>
|
|
<small class="d-flex">{{field.name}} <small class="ms-auto text-muted">{{getDataTypeLabel(field.data_type)}}</small></small>
|
|
</button>
|
|
}
|
|
@if (!filterText?.length || filteredFields.length === 0) {
|
|
<button class="list-group-item list-group-item-action bg-light" (click)="createField(filterText)" [disabled]="!canCreateFields" #button>
|
|
<small>
|
|
<i-bs width=".9em" height=".9em" name="asterisk"></i-bs> <ng-container i18n>Create new field</ng-container>
|
|
</small>
|
|
</button>
|
|
}
|
|
</div>
|
|
</div>
|
|
</div>
|