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

68 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"
>
2025-09-15 13:03:21 +02:00
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-15 16:09:20 +02:00
<!-- (blur)="displayDropdown = false"-->
2025-09-10 16:02:31 +02:00
<input
2025-09-15 16:09:20 +02:00
(click)="onClickInput()"
(focus)="displayDropdown = true"
2025-09-10 16:02:31 +02:00
class="is-hidden" placeholder="{{label}}"
type="text">
2025-09-15 13:03:21 +02:00
<span [ngClass]="{ 'is-visible' : selectedChoices?.length}"
class="selected-items-counter">
2025-09-15 16:09:20 +02:00
{{ selectedChoices?.length || 0 }}
2025-09-15 13:03:21 +02:00
</span>
2025-09-10 16:02:31 +02:00
<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>