42 lines
1.4 KiB
HTML
42 lines
1.4 KiB
HTML
<div class="flex flex-col gap-2 min-h-screen">
|
|
<div class="flex items-center justify-between">
|
|
<h2 class="text-2xl font-semibold">Gestion des Points de Vente</h2>
|
|
<z-button (click)="openCreate()">Nouveau point de vente</z-button>
|
|
</div>
|
|
|
|
<app-search-bar (search)="onSearch($event)"></app-search-bar>
|
|
|
|
<app-data-table [data]="rows()" [columns]="cols" [sort]="sort()" (sortChange)="sort.set($event)">
|
|
<ng-template #rowActions let-row>
|
|
<div class="flex gap-3">
|
|
<button z-button zType="ghost" (click)="openEdit(row)" title="Modifier">
|
|
<i class="icon-pen"></i>
|
|
</button>
|
|
<button z-button zType="destructive" (click)="remove(row)" title="Supprimer">
|
|
<i class="icon-trash"></i>
|
|
</button>
|
|
</div>
|
|
</ng-template>
|
|
</app-data-table>
|
|
|
|
<app-paginator
|
|
[total]="total()"
|
|
[page]="page()"
|
|
[perPage]="size()"
|
|
(pageChange)="page.set($event - 1)"
|
|
(perPageChange)="size.set($event)"
|
|
></app-paginator>
|
|
</div>
|
|
|
|
<app-modal [open]="modalOpen()" [title]="modalTitle()" (close)="closeModal()" size="xl">
|
|
<app-points-vente-form
|
|
[value]="editingItem() ?? undefined"
|
|
(save)="onFormSave($event)"
|
|
(cancel)="closeModal()"
|
|
/>
|
|
<div modal-actions class="flex justify-end gap-2">
|
|
<z-button zType="destructive" (click)="closeModal()">Annuler</z-button>
|
|
<z-button (click)="submitChildForm()">Enregistrer</z-button>
|
|
</div>
|
|
</app-modal>
|