ng-implementation/my-workspace/projects/sae-lib/inputs/multi-selector/multi-selector.html

67 lines
1.6 KiB
HTML
Raw Normal View History

2025-08-22 11:57:56 +02:00
<!-- sélecteurs-->
2025-09-10 16:02:31 +02:00
<div [ngClass]="{
'is-disabled': disabled
}"
class="input-box"
>
@if (selectedChoices?.length) {
<div class="selected-items-counter">
{{ selectedChoices.length }}
</div>
}
2025-09-02 13:58:35 +02:00
<i class="ri-search-line search-placeholder"></i>
<div class="label">
<span class="d-none">
{{ label }}
</span>
</div>
2025-09-10 16:02:31 +02:00
<!-- (blur)="displayDropdown = false" -->
<input
(click)="onClickInput()" (focus)="displayDropdown = true"
class="is-hidden" placeholder="{{label}}"
type="text">
<div class="dropdown-button selector-button">
<!-- bouton-->
<i class="ri-arrow-down-s-line"></i>
</div>
@if (displayDropdown && availableChoices?.length) {
2025-08-22 11:57:56 +02:00
2025-09-02 14:40:47 +02:00
<div class="dropdown">
2025-09-10 16:02:31 +02:00
2025-09-02 14:40:47 +02:00
<div class="dropdown-list">
<!-- selected:-->
<div class="selected-items">
@for (sc of selectedChoices; track sc) {
2025-09-10 16:02:31 +02:00
<div class="dropdown-item"
(click)="selectedChoicesChangeToggleItem(sc)"
>
2025-09-02 14:40:47 +02:00
<i class="ri-checkbox-line"></i>
{{ sc }}
</div>
}
2025-08-22 11:57:56 +02:00
</div>
2025-09-10 16:02:31 +02:00
@if (selectedChoices?.length && availableChoices?.length) {
<hr>
}
2025-09-02 14:40:47 +02:00
<div class="available-items">
<!-- available:-->
2025-09-10 16:02:31 +02:00
@for (ac of availableChoices; track ac) {
<div class="dropdown-item"
(click)="availableChoicesChangeToggleItem(ac)"
>
2025-09-02 14:40:47 +02:00
<i class="ri-checkbox-blank-line"></i>
2025-09-10 16:02:31 +02:00
{{ ac }}
2025-09-02 14:40:47 +02:00
</div>
}
2025-08-22 11:57:56 +02:00
</div>
</div>
</div>
2025-09-02 14:40:47 +02:00
}
2025-08-22 11:57:56 +02:00
</div>