Grille & vue bénévole : message quand il n'y a pas de données

- components/state : composant EmptyNote (encadré pointillés).
- GrillePage : si aucun créneau, message au lieu de la grille vide.
- VolunteerViewPage : si aucun bénévole, message ; si un filtre ne
  renvoie rien, message à la place du tableau (avant, l'en-tête collant
  restait affiché).

typecheck + lint + build + smoke OK.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017uUsRg7XzopkCPWimwg9ZM
This commit is contained in:
AdamThomas
2026-09-10 21:22:10 +02:00
co-authored by Claude Sonnet 5
parent 385c46c241
commit 06f8736c33
4 changed files with 47 additions and 13 deletions
+11
View File
@@ -1,6 +1,17 @@
import type { ReactNode } from 'react';
import { ApiError } from '@/api';
import { t } from '@/i18n';
export function EmptyNote({ children }: { children: ReactNode }) {
return (
<div className="m-4 flex max-w-[640px] items-center gap-[14px] border-[3px] border-dashed border-ink bg-paper p-[22px]">
<span className="h-9 w-9 flex-none border-[3px] border-ink bg-yellow" />
<span className="font-display text-[14px] font-extrabold leading-snug">{children}</span>
</div>
);
}
export function Loading() {
return (
<div className="flex items-center gap-3 p-6 font-mono text-[11px] uppercase tracking-widest opacity-60">