From a23d25672ddf5f912410824f5c1b0a706b636d99 Mon Sep 17 00:00:00 2001 From: Nezzar KEFIF <36443340+nezz0746@users.noreply.github.com> Date: Mon, 14 Apr 2025 15:15:46 +0200 Subject: [PATCH 1/2] feat: add useful links --- package.json | 7 +- pnpm-lock.yaml | 145 +++++++++++++++++++++++---------- src/App.tsx | 40 ++++++--- src/components/UsefulLinks.tsx | 13 +++ 4 files changed, 147 insertions(+), 58 deletions(-) create mode 100644 src/components/UsefulLinks.tsx diff --git a/package.json b/package.json index be1ba99..afb331d 100644 --- a/package.json +++ b/package.json @@ -11,12 +11,12 @@ }, "dependencies": { "react": "^19.0.0", - "react-dom": "^19.0.0" + "react-dom": "^19.0.0", + "react-router-dom": "^7.5.0" }, "devDependencies": { - "tailwindcss": "^4.1.3", - "@tailwindcss/vite": "^4.1.3", "@eslint/js": "^9.21.0", + "@tailwindcss/vite": "^4.1.3", "@types/react": "^19.0.10", "@types/react-dom": "^19.0.4", "@vitejs/plugin-react": "^4.3.4", @@ -24,6 +24,7 @@ "eslint-plugin-react-hooks": "^5.1.0", "eslint-plugin-react-refresh": "^0.4.19", "globals": "16.0.0", + "tailwindcss": "^4.1.3", "typescript": "5.8.3", "typescript-eslint": "^8.24.1", "vite": "^6.2.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3eb907f..c9cbc75 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,22 +8,22 @@ importers: .: dependencies: - '@tailwindcss/vite': - specifier: ^4.1.3 - version: 4.1.3(vite@6.2.6(jiti@2.4.2)(lightningcss@1.29.2)) react: specifier: ^19.0.0 version: 19.1.0 react-dom: specifier: ^19.0.0 version: 19.1.0(react@19.1.0) - tailwindcss: - specifier: ^4.1.3 - version: 4.1.3 + react-router-dom: + specifier: ^7.5.0 + version: 7.5.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0) devDependencies: '@eslint/js': specifier: ^9.21.0 version: 9.24.0 + '@tailwindcss/vite': + specifier: ^4.1.3 + version: 4.1.3(vite@6.2.6(jiti@2.4.2)(lightningcss@1.29.2)) '@types/react': specifier: ^19.0.10 version: 19.1.1 @@ -43,14 +43,17 @@ importers: specifier: ^0.4.19 version: 0.4.19(eslint@9.24.0(jiti@2.4.2)) globals: - specifier: ^15.15.0 - version: 15.15.0 + specifier: 16.0.0 + version: 16.0.0 + tailwindcss: + specifier: ^4.1.3 + version: 4.1.3 typescript: - specifier: ~5.7.2 - version: 5.7.3 + specifier: 5.8.3 + version: 5.8.3 typescript-eslint: specifier: ^8.24.1 - version: 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3) + version: 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) vite: specifier: ^6.2.0 version: 6.2.6(jiti@2.4.2)(lightningcss@1.29.2) @@ -572,6 +575,9 @@ packages: '@types/babel__traverse@7.20.7': resolution: {integrity: sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==} + '@types/cookie@0.6.0': + resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} + '@types/estree@1.0.7': resolution: {integrity: sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==} @@ -701,6 +707,10 @@ packages: convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + cookie@1.0.2: + resolution: {integrity: sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==} + engines: {node: '>=18'} + cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} @@ -857,8 +867,8 @@ packages: resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} engines: {node: '>=18'} - globals@15.15.0: - resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==} + globals@16.0.0: + resolution: {integrity: sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==} engines: {node: '>=18'} graceful-fs@4.2.11: @@ -1093,6 +1103,23 @@ packages: resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} engines: {node: '>=0.10.0'} + react-router-dom@7.5.0: + resolution: {integrity: sha512-fFhGFCULy4vIseTtH5PNcY/VvDJK5gvOWcwJVHQp8JQcWVr85ENhJ3UpuF/zP1tQOIFYNRJHzXtyhU1Bdgw0RA==} + engines: {node: '>=20.0.0'} + peerDependencies: + react: '>=18' + react-dom: '>=18' + + react-router@7.5.0: + resolution: {integrity: sha512-estOHrRlDMKdlQa6Mj32gIks4J+AxNsYoE0DbTTxiMy2mPzZuWSDU+N85/r1IlNR7kGfznF3VCUlvc5IUO+B9g==} + engines: {node: '>=20.0.0'} + peerDependencies: + react: '>=18' + react-dom: '>=18' + peerDependenciesMeta: + react-dom: + optional: true + react@19.1.0: resolution: {integrity: sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==} engines: {node: '>=0.10.0'} @@ -1125,6 +1152,9 @@ packages: engines: {node: '>=10'} hasBin: true + set-cookie-parser@2.7.1: + resolution: {integrity: sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==} + shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -1162,6 +1192,9 @@ packages: peerDependencies: typescript: '>=4.8.4' + turbo-stream@2.4.0: + resolution: {integrity: sha512-FHncC10WpBd2eOmGwpmQsWLDoK4cqsA/UT/GqNoaKOQnT8uzhtCbg3EoUDMvqpOSAI0S26mr0rkjzbOO6S3v1g==} + type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -1173,8 +1206,8 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' - typescript@5.7.3: - resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==} + typescript@5.8.3: + resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} engines: {node: '>=14.17'} hasBin: true @@ -1667,6 +1700,8 @@ snapshots: dependencies: '@babel/types': 7.27.0 + '@types/cookie@0.6.0': {} + '@types/estree@1.0.7': {} '@types/json-schema@7.0.15': {} @@ -1679,32 +1714,32 @@ snapshots: dependencies: csstype: 3.1.3 - '@typescript-eslint/eslint-plugin@8.29.1(@typescript-eslint/parser@8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/eslint-plugin@8.29.1(@typescript-eslint/parser@8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/parser': 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) '@typescript-eslint/scope-manager': 8.29.1 - '@typescript-eslint/type-utils': 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/utils': 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/type-utils': 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/utils': 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) '@typescript-eslint/visitor-keys': 8.29.1 eslint: 9.24.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 - ts-api-utils: 2.1.0(typescript@5.7.3) - typescript: 5.7.3 + ts-api-utils: 2.1.0(typescript@5.8.3) + typescript: 5.8.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/parser@8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@typescript-eslint/scope-manager': 8.29.1 '@typescript-eslint/types': 8.29.1 - '@typescript-eslint/typescript-estree': 8.29.1(typescript@5.7.3) + '@typescript-eslint/typescript-estree': 8.29.1(typescript@5.8.3) '@typescript-eslint/visitor-keys': 8.29.1 debug: 4.4.0 eslint: 9.24.0(jiti@2.4.2) - typescript: 5.7.3 + typescript: 5.8.3 transitivePeerDependencies: - supports-color @@ -1713,20 +1748,20 @@ snapshots: '@typescript-eslint/types': 8.29.1 '@typescript-eslint/visitor-keys': 8.29.1 - '@typescript-eslint/type-utils@8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/type-utils@8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: - '@typescript-eslint/typescript-estree': 8.29.1(typescript@5.7.3) - '@typescript-eslint/utils': 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/typescript-estree': 8.29.1(typescript@5.8.3) + '@typescript-eslint/utils': 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) debug: 4.4.0 eslint: 9.24.0(jiti@2.4.2) - ts-api-utils: 2.1.0(typescript@5.7.3) - typescript: 5.7.3 + ts-api-utils: 2.1.0(typescript@5.8.3) + typescript: 5.8.3 transitivePeerDependencies: - supports-color '@typescript-eslint/types@8.29.1': {} - '@typescript-eslint/typescript-estree@8.29.1(typescript@5.7.3)': + '@typescript-eslint/typescript-estree@8.29.1(typescript@5.8.3)': dependencies: '@typescript-eslint/types': 8.29.1 '@typescript-eslint/visitor-keys': 8.29.1 @@ -1735,19 +1770,19 @@ snapshots: is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.7.1 - ts-api-utils: 2.1.0(typescript@5.7.3) - typescript: 5.7.3 + ts-api-utils: 2.1.0(typescript@5.8.3) + typescript: 5.8.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3)': + '@typescript-eslint/utils@8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@eslint-community/eslint-utils': 4.6.0(eslint@9.24.0(jiti@2.4.2)) '@typescript-eslint/scope-manager': 8.29.1 '@typescript-eslint/types': 8.29.1 - '@typescript-eslint/typescript-estree': 8.29.1(typescript@5.7.3) + '@typescript-eslint/typescript-estree': 8.29.1(typescript@5.8.3) eslint: 9.24.0(jiti@2.4.2) - typescript: 5.7.3 + typescript: 5.8.3 transitivePeerDependencies: - supports-color @@ -1827,6 +1862,8 @@ snapshots: convert-source-map@2.0.0: {} + cookie@1.0.2: {} + cross-spawn@7.0.6: dependencies: path-key: 3.1.1 @@ -2014,7 +2051,7 @@ snapshots: globals@14.0.0: {} - globals@15.15.0: {} + globals@16.0.0: {} graceful-fs@4.2.11: {} @@ -2194,6 +2231,22 @@ snapshots: react-refresh@0.14.2: {} + react-router-dom@7.5.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0): + dependencies: + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + react-router: 7.5.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + + react-router@7.5.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0): + dependencies: + '@types/cookie': 0.6.0 + cookie: 1.0.2 + react: 19.1.0 + set-cookie-parser: 2.7.1 + turbo-stream: 2.4.0 + optionalDependencies: + react-dom: 19.1.0(react@19.1.0) + react@19.1.0: {} resolve-from@4.0.0: {} @@ -2236,6 +2289,8 @@ snapshots: semver@7.7.1: {} + set-cookie-parser@2.7.1: {} + shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 @@ -2258,25 +2313,27 @@ snapshots: dependencies: is-number: 7.0.0 - ts-api-utils@2.1.0(typescript@5.7.3): + ts-api-utils@2.1.0(typescript@5.8.3): dependencies: - typescript: 5.7.3 + typescript: 5.8.3 + + turbo-stream@2.4.0: {} type-check@0.4.0: dependencies: prelude-ls: 1.2.1 - typescript-eslint@8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3): + typescript-eslint@8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3): dependencies: - '@typescript-eslint/eslint-plugin': 8.29.1(@typescript-eslint/parser@8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/parser': 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3) - '@typescript-eslint/utils': 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/eslint-plugin': 8.29.1(@typescript-eslint/parser@8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/parser': 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/utils': 8.29.1(eslint@9.24.0(jiti@2.4.2))(typescript@5.8.3) eslint: 9.24.0(jiti@2.4.2) - typescript: 5.7.3 + typescript: 5.8.3 transitivePeerDependencies: - supports-color - typescript@5.7.3: {} + typescript@5.8.3: {} update-browserslist-db@1.1.3(browserslist@4.24.4): dependencies: diff --git a/src/App.tsx b/src/App.tsx index d9b9f3a..a6b0ef7 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,17 +1,35 @@ -import './App.css' -import Form from './components/Form' -import mainLogo from './assets/logo.png' +import "./App.css"; +import Form from "./components/Form"; +import mainLogo from "./assets/logo.png"; +import { BrowserRouter as Router, Routes, Route, Link } from "react-router-dom"; +import UsefulLinks from "./components/UsefulLinks"; function App() { return ( -
- -

Convertisseur pour journaliste

-
-
+ +
+
+ +

Convertisseur pour journaliste

+
+ +
+
+ + } /> + } /> + +
-
- ) +
+ ); } -export default App +export default App; diff --git a/src/components/UsefulLinks.tsx b/src/components/UsefulLinks.tsx new file mode 100644 index 0000000..d18b0a9 --- /dev/null +++ b/src/components/UsefulLinks.tsx @@ -0,0 +1,13 @@ +import React from "react"; + +const CharteMunich: React.FC = () => { + return ( +
+ + Charte de Munich + +
+ ); +}; + +export default CharteMunich; From e8837f3a91a87138bc698d61fc16091ad7fa5575 Mon Sep 17 00:00:00 2001 From: Nezzar KEFIF <36443340+nezz0746@users.noreply.github.com> Date: Mon, 14 Apr 2025 15:17:07 +0200 Subject: [PATCH 2/2] fix: page naming typo --- src/components/UsefulLinks.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/UsefulLinks.tsx b/src/components/UsefulLinks.tsx index d18b0a9..5585b1e 100644 --- a/src/components/UsefulLinks.tsx +++ b/src/components/UsefulLinks.tsx @@ -1,6 +1,6 @@ import React from "react"; -const CharteMunich: React.FC = () => { +const UsefulLinks: React.FC = () => { return (
@@ -10,4 +10,4 @@ const CharteMunich: React.FC = () => { ); }; -export default CharteMunich; +export default UsefulLinks;