Files
LoreMind/web/src/app/shared/dynamic-fields-form/dynamic-fields-form.component.html
IETM_FIXE\ietm6 5aa08a3a27
Some checks failed
Tests unitaires / Brain (Python · pytest + couverture) (push) Successful in 21s
Tests unitaires / Web (Angular · vitest + couverture) (push) Successful in 30s
Tests unitaires / Core (Java · mvn test + JaCoCo) (push) Successful in 2m22s
Build & Push Images / build (brain) (push) Successful in 1m16s
E2E Tests / e2e (push) Failing after 5m24s
Build & Push Images / build (core) (push) Successful in 3m5s
Build & Push Images / build-switcher (push) Successful in 50s
Build & Push Images / build (web) (push) Successful in 1m56s
Correction du worflow release : on ne fait plus les tests (évite le doublons de test avec le ci.yml).
Correction de tests coté java + config
Suppression de classes inutilisées coté Angular
2026-06-19 00:36:30 +02:00

65 lines
2.1 KiB
HTML

@if (fields.length) {
<div class="dff">
@for (f of fields; track trackByName($index, f)) {
<div class="dff-field">
<label>{{ f.name }}</label>
@switch (f.type) {
@case ('TEXT') {
<textarea
rows="4"
[ngModel]="values[f.name] || ''"
(ngModelChange)="onTextChange(f, $event)"
[name]="'val-' + f.name"
[placeholder]="'dynamicFieldsForm.textPlaceholder' | translate:{ name: f.name }">
</textarea>
}
@case ('NUMBER') {
<input
type="number"
[ngModel]="values[f.name] || ''"
(ngModelChange)="onTextChange(f, $event)"
[name]="'val-' + f.name"
placeholder="0"
/>
}
@case ('IMAGE') {
<app-image-gallery
[editable]="true"
[layout]="f.layout || 'GALLERY'"
[imageIds]="imagesFor(f)"
(imageIdsChange)="onImageIdsChange(f, $event)">
</app-image-gallery>
}
<!-- KEY_VALUE_LIST : grille d'inputs avec labels figes du template -->
@case ('KEY_VALUE_LIST') {
<div class="dff-kv-grid">
@for (lbl of f.labels; track trackByLabel($index, lbl)) {
<div class="dff-kv-cell">
<span class="dff-kv-label">{{ lbl }}</span>
<input
type="text"
[ngModel]="kvValue(f, lbl)"
(ngModelChange)="onKvChange(f, lbl, $event)"
[name]="'kv-' + f.name + '-' + lbl"
placeholder="—"
/>
</div>
}
@if (!f.labels?.length) {
<div class="dff-kv-empty">
{{ 'dynamicFieldsForm.noLabels' | translate }}
</div>
}
</div>
}
}
</div>
}
</div>
} @else {
<div class="dff-empty">
{{ 'dynamicFieldsForm.noFields' | translate }}
</div>
}