diff --git a/app/components/common/Iframe.tsx b/app/components/common/Iframe.tsx index 7a6de69..4682821 100644 --- a/app/components/common/Iframe.tsx +++ b/app/components/common/Iframe.tsx @@ -1,3 +1,4 @@ +import React from "react"; import clsx from "clsx"; type IframeProps = { diff --git a/app/components/common/Image.tsx b/app/components/common/Image.tsx index bb8a7a3..01c424b 100644 --- a/app/components/common/Image.tsx +++ b/app/components/common/Image.tsx @@ -1,3 +1,5 @@ +import React from "react"; + export function Image(props: { src: string; alt: string } & React.ComponentPropsWithoutRef<"img">) { return {props.alt}; } diff --git a/app/components/common/Link.tsx b/app/components/common/Link.tsx index a9c00ea..0221c40 100644 --- a/app/components/common/Link.tsx +++ b/app/components/common/Link.tsx @@ -1,8 +1,9 @@ import { usePageContext } from "vike-react/usePageContext"; import { prefetch } from "vike/client/router"; +import React from "react"; import clsx from "clsx"; -export function Link(props: React.AnchorHTMLAttributes & { href: string }) { +export function Link(props: React.AnchorHTMLAttributes & { href: string; className?: string }) { const { urlPathname } = usePageContext(); const isActive = props.href === "/" ? urlPathname === props.href : urlPathname.startsWith(props.href); const isSameDomain = !(props.href.startsWith("http") || props.href.startsWith("mailto")); diff --git a/app/components/common/Mermaid.tsx b/app/components/common/Mermaid.tsx deleted file mode 100644 index ccd2021..0000000 --- a/app/components/common/Mermaid.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import MermaidRenderer from "react-mermaid2"; - -type MermaidProps = { - path: string; -}; - -export function Mermaid(props: MermaidProps) { - return ( - >Routeur: Je veux voir la page d'accueil - Routeur->>Contrôleur: Appelle la méthode \`home\` - alt Si des données sont nécessaires - Contrôleur->>Modèle: Demande les données - Modèle->>Base de données: Récupère les données - Base de données-->>Modèle: Retourne les données - Modèle-->>Contrôleur: Retourne les données - end - Contrôleur->>Vue: Demande le HTML - Vue-->>Contrôleur: Retourne le HTML généré - Contrôleur->>Utilisateur: Retourne le HTML généré - `} - /> - ); -} diff --git a/app/components/md/Tabs.tsx b/app/components/md/Tabs.tsx index 84a23f6..4eed3b1 100644 --- a/app/components/md/Tabs.tsx +++ b/app/components/md/Tabs.tsx @@ -1,6 +1,6 @@ import type { Dispatch, SetStateAction } from "react"; -import { createContext, useContext, useEffect, useState } from "react"; +import React, { createContext, useContext, useEffect, useState } from "react"; import { Button } from "@syntax/Button"; import clsx from "clsx"; diff --git a/app/components/syntax/Button.tsx b/app/components/syntax/Button.tsx index fb0a7f2..6b5234d 100644 --- a/app/components/syntax/Button.tsx +++ b/app/components/syntax/Button.tsx @@ -1,4 +1,5 @@ import { Link } from "@/components/common/Link"; +import React from "react"; import clsx from "clsx"; const variantStyles = { diff --git a/app/components/syntax/CSRSnippet.tsx b/app/components/syntax/CSRSnippet.tsx index bd23808..2361fe8 100644 --- a/app/components/syntax/CSRSnippet.tsx +++ b/app/components/syntax/CSRSnippet.tsx @@ -1,8 +1,8 @@ import { ClipboardDocumentIcon } from "@heroicons/react/24/outline"; import { prismThemes } from "@/data/themes/prism"; +import React, { Fragment, useMemo } from "react"; import { Highlight } from "prism-react-renderer"; import { useTheme } from "@/hooks/useTheme"; -import { Fragment, useMemo } from "react"; import { toast } from "react-toastify"; import { Button } from "./Button"; import Prism from "prismjs"; @@ -40,7 +40,7 @@ export default function CSRSnippet({ {label} )} -
+            
               
                 {tokens.map((line, lineIndex) => (
                   
@@ -69,7 +69,7 @@ export default function CSRSnippet({