Kavita/UI/Web/src/app/admin/role-selector/role-selector.component.html
2024-11-14 05:11:39 -08:00

28 lines
1.1 KiB
HTML

<ng-container *transloco="let t; read:'role-selector'">
<div class="d-flex justify-content-between">
<div class="col-auto">
<h4>{{t('title')}}</h4>
</div>
<div class="col-auto">
@if(selectedRoles.length > 0) {
<span class="form-check float-end">
<input id="role--select-all" type="checkbox" class="form-check-input"
[ngModel]="selectAll" (change)="toggleAll()" [indeterminate]="hasSomeSelected">
<label for="role--select-all" class="form-check-label">{{selectAll ? t('deselect-all') : t('select-all')}}</label>
</span>
}
</div>
</div>
<ul class="list-group">
@for(role of selectedRoles; track role; let i = $index) {
<li class="list-group-item">
<div class="form-check">
<input id="role-{{i}}" type="checkbox" class="form-check-input"
[(ngModel)]="role.selected" [disabled]="role.disabled" name="role" (ngModelChange)="handleModelUpdate()">
<label for="role-{{i}}" class="form-check-label">{{role.data}}</label>
</div>
</li>
}
</ul>
</ng-container>