feat: add RocketIcon to Header component and update metadata with application icon
This commit is contained in:
6
public/icon.svg
Normal file
6
public/icon.svg
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="#0891b2" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<path d="M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z" />
|
||||||
|
<path d="m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z" />
|
||||||
|
<path d="M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0" />
|
||||||
|
<path d="M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5" />
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 486 B |
@@ -16,6 +16,9 @@ const geistMono = Geist_Mono({
|
|||||||
export const metadata: Metadata = {
|
export const metadata: Metadata = {
|
||||||
title: 'Workshop Manager',
|
title: 'Workshop Manager',
|
||||||
description: "Application de gestion d'ateliers SWOT pour entretiens managériaux",
|
description: "Application de gestion d'ateliers SWOT pour entretiens managériaux",
|
||||||
|
icons: {
|
||||||
|
icon: '/icon.svg',
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
export default function RootLayout({
|
export default function RootLayout({
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { usePathname } from 'next/navigation';
|
|||||||
import { useSession, signOut } from 'next-auth/react';
|
import { useSession, signOut } from 'next-auth/react';
|
||||||
import { useTheme } from '@/contexts/ThemeContext';
|
import { useTheme } from '@/contexts/ThemeContext';
|
||||||
import { useState } from 'react';
|
import { useState } from 'react';
|
||||||
import { Avatar } from '@/components/ui';
|
import { Avatar, RocketIcon } from '@/components/ui';
|
||||||
|
|
||||||
export function Header() {
|
export function Header() {
|
||||||
const { theme, toggleTheme } = useTheme();
|
const { theme, toggleTheme } = useTheme();
|
||||||
@@ -20,7 +20,7 @@ export function Header() {
|
|||||||
<header className="sticky top-0 z-50 border-b border-border bg-card/80 backdrop-blur-sm">
|
<header className="sticky top-0 z-50 border-b border-border bg-card/80 backdrop-blur-sm">
|
||||||
<div className="mx-auto flex h-16 max-w-7xl items-center justify-between px-4">
|
<div className="mx-auto flex h-16 max-w-7xl items-center justify-between px-4">
|
||||||
<Link href="/" className="flex items-center gap-2">
|
<Link href="/" className="flex items-center gap-2">
|
||||||
<span className="text-2xl">🚀</span>
|
<RocketIcon className="h-7 w-7 shrink-0 text-primary" />
|
||||||
<span className="text-xl font-bold text-foreground">Workshop Manager</span>
|
<span className="text-xl font-bold text-foreground">Workshop Manager</span>
|
||||||
</Link>
|
</Link>
|
||||||
|
|
||||||
|
|||||||
23
src/components/ui/RocketIcon.tsx
Normal file
23
src/components/ui/RocketIcon.tsx
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
import { SVGProps } from 'react';
|
||||||
|
|
||||||
|
export function RocketIcon({ className, ...props }: SVGProps<SVGSVGElement>) {
|
||||||
|
return (
|
||||||
|
<svg
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
viewBox="0 0 24 24"
|
||||||
|
fill="none"
|
||||||
|
stroke="currentColor"
|
||||||
|
strokeWidth="2"
|
||||||
|
strokeLinecap="round"
|
||||||
|
strokeLinejoin="round"
|
||||||
|
className={className}
|
||||||
|
aria-hidden
|
||||||
|
{...props}
|
||||||
|
>
|
||||||
|
<path d="M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z" />
|
||||||
|
<path d="m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z" />
|
||||||
|
<path d="M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0" />
|
||||||
|
<path d="M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5" />
|
||||||
|
</svg>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -11,6 +11,7 @@ export { EditableWeeklyCheckInTitle } from './EditableWeeklyCheckInTitle';
|
|||||||
export { EditableWeatherTitle } from './EditableWeatherTitle';
|
export { EditableWeatherTitle } from './EditableWeatherTitle';
|
||||||
export { Input } from './Input';
|
export { Input } from './Input';
|
||||||
export { Modal, ModalFooter } from './Modal';
|
export { Modal, ModalFooter } from './Modal';
|
||||||
|
export { RocketIcon } from './RocketIcon';
|
||||||
export { Select } from './Select';
|
export { Select } from './Select';
|
||||||
export { Textarea } from './Textarea';
|
export { Textarea } from './Textarea';
|
||||||
export { ToggleGroup } from './ToggleGroup';
|
export { ToggleGroup } from './ToggleGroup';
|
||||||
|
|||||||
Reference in New Issue
Block a user