feat(sidebar) : slots footer / footer-collapsed collés en bas

Ajoute deux slots `footer` et `footer-collapsed` à MalioSidebar pour
afficher un contenu en bas (profil, déconnexion, version…). Le footer
est toujours collé en bas grâce au `flex-1` de la nav et reste visible
quand la liste de liens scrolle. Bordure haute m-primary en mode déplié,
à l'image du bloc logo.

Tests, page playground, story et docs (COMPONENTS + CHANGELOG) mis à jour.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-25 09:59:21 +02:00
parent c0a3037293
commit ea020af9e2
6 changed files with 122 additions and 1 deletions
+5 -1
View File
@@ -893,12 +893,16 @@ Barre latérale de navigation rétractable.
**Lien actif :** un lien est marqué actif (texte `m-primary` + semi-bold) quand la route courante **est ce lien ou une de ses sous-routes** (match par préfixe) — ex. `/supplier` reste actif sur `/supplier/1/edit`. Mettre `exact: true` sur l'item force le match strict (actif uniquement sur la route exacte). Indépendant de l'imbrication des routes côté consommateur.
**Events :** `update:modelValue(value: boolean)`
**Slots :** `logo` (sidebar ouverte), `logo-collapsed` (sidebar fermée)
**Slots :** `logo` (sidebar ouverte), `logo-collapsed` (sidebar fermée), `footer` (bas, sidebar ouverte), `footer-collapsed` (bas, sidebar fermée)
Le footer est **toujours collé en bas** : la nav occupe l'espace restant (`flex-1`) et pousse le footer vers le bas, qui reste visible même quand la liste de liens scrolle.
```vue
<MalioSidebar v-model="isOpen" :sections="menuSections">
<template #logo><img src="/logo.png" /></template>
<template #logo-collapsed><img src="/logo-small.png" /></template>
<template #footer><UserProfile /></template>
<template #footer-collapsed><Icon name="mdi:account" /></template>
</MalioSidebar>
```