diff --git a/public/logo-agora.webp b/public/logo-agora.webp new file mode 100644 index 0000000..0194396 Binary files /dev/null and b/public/logo-agora.webp differ diff --git a/src/app/apple-icon.png b/src/app/apple-icon.png new file mode 100644 index 0000000..dc457fd Binary files /dev/null and b/src/app/apple-icon.png differ diff --git a/src/app/icon.png b/src/app/icon.png new file mode 100644 index 0000000..cc4c00b Binary files /dev/null and b/src/app/icon.png differ diff --git a/src/app/icon.svg b/src/app/icon.svg deleted file mode 100644 index 62a2d63..0000000 --- a/src/app/icon.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/src/app/leaderboard/page.tsx b/src/app/leaderboard/page.tsx index 5582728..f6d4c39 100644 --- a/src/app/leaderboard/page.tsx +++ b/src/app/leaderboard/page.tsx @@ -1,6 +1,7 @@ import { redirect } from "next/navigation"; import { createClient } from "@/lib/supabase/server"; import { LeaderboardView } from "./leaderboard-view"; +import { AgoraLogo } from "@/components/agora-logo"; export default async function LeaderboardPage() { const supabase = await createClient(); @@ -21,11 +22,9 @@ export default async function LeaderboardPage() { return (
-
-

- L'Agora -

-

Le classement des Citoyens

+
+ +

Le classement des Citoyens

{error && ( diff --git a/src/components/agora-logo.tsx b/src/components/agora-logo.tsx new file mode 100644 index 0000000..e9a84d3 --- /dev/null +++ b/src/components/agora-logo.tsx @@ -0,0 +1,20 @@ +import Image from "next/image"; + +// unoptimized : l'optimiseur d'images de Next.js aplatit systématiquement la +// transparence de ce fichier (PNG ou WebP) lors du redimensionnement à la +// volée — on sert donc le fichier statique tel quel, sa transparence réelle +// est alors préservée par le navigateur. +export function AgoraLogo({ className = "h-9 w-9" }: { className?: string }) { + return ( + + L'Agora + + ); +} diff --git a/src/components/avatar-picker.tsx b/src/components/avatar-picker.tsx index d2c791b..05ca2d6 100644 --- a/src/components/avatar-picker.tsx +++ b/src/components/avatar-picker.tsx @@ -3,7 +3,8 @@ import { useRef, useState } from "react"; import Cropper, { type Area } from "react-easy-crop"; import { cropImageToBlob } from "@/lib/image"; -import { IconCamera, IconClose } from "@/components/icons"; +import { IconClose } from "@/components/icons"; +import { AgoraLogo } from "@/components/agora-logo"; export function AvatarPicker({ hasExistingPhoto = false, @@ -126,7 +127,7 @@ export function AvatarPicker({ onClick={() => inputRef.current?.click()} className="flex items-center gap-2 rounded-md bg-ink-2 px-3 py-1.5 text-sm font-medium text-gold-bright hover:bg-ink" > - + {fileName || hasExistingPhoto ? "Changer ma photo" : "Choisir une photo"} diff --git a/src/components/header.tsx b/src/components/header.tsx index 270ee9d..5f34eda 100644 --- a/src/components/header.tsx +++ b/src/components/header.tsx @@ -6,6 +6,7 @@ import { useEffect, useRef, useState } from "react"; import { createClient } from "@/lib/supabase/client"; import { LaurelWreath } from "@/components/laurel-wreath"; import { Avatar } from "@/components/avatar"; +import { AgoraLogo } from "@/components/agora-logo"; import { IconWheel, IconScroll, @@ -106,9 +107,9 @@ export function Header({
- + - Le Tribunal + L'Agora