From 3640e9797e430c615f0356490c389eb185b443ea Mon Sep 17 00:00:00 2001 From: JW-Rami Date: Fri, 2 Aug 2024 04:48:19 +0800 Subject: [PATCH] build(migration): react to next --- .gitignore | 7 +- next.config.mjs | 7 + package-lock.json | 277 ++++++++++++++++++ package.json | 6 +- public/{logo-flocon-jw.ico => favicon.ico} | Bin src/App.js | 2 +- src/app/[[...slug]]/client.tsx | 10 + src/app/[[...slug]]/page.tsx | 10 + src/app/layout.tsx | 36 +++ src/assets/logoJWCorp/jwlogosolutionblanc.svg | 1 - .../logoJWCorp/jwlogosolutionviolet.svg | 1 - .../AnimationsComponent.js | 81 ----- src/components/Footer/Footer.js | 29 +- .../Navbar/{Navbar.js => Navbar.tsx} | 40 ++- .../{NotreMission.js => NotreMission.tsx} | 17 +- src/page/Home/Home.js | 4 +- tsconfig.json | 33 +++ 17 files changed, 440 insertions(+), 121 deletions(-) create mode 100644 next.config.mjs rename public/{logo-flocon-jw.ico => favicon.ico} (100%) create mode 100644 src/app/[[...slug]]/client.tsx create mode 100644 src/app/[[...slug]]/page.tsx create mode 100644 src/app/layout.tsx delete mode 100644 src/assets/logoJWCorp/jwlogosolutionblanc.svg delete mode 100644 src/assets/logoJWCorp/jwlogosolutionviolet.svg rename src/components/Navbar/{Navbar.js => Navbar.tsx} (64%) rename src/components/NotreMission/{NotreMission.js => NotreMission.tsx} (95%) create mode 100644 tsconfig.json diff --git a/.gitignore b/.gitignore index 1659de2..c0102b6 100644 --- a/.gitignore +++ b/.gitignore @@ -24,4 +24,9 @@ yarn-debug.log* yarn-error.log* -src/firebaseConfig.js \ No newline at end of file +src/firebaseConfig.js + +# Next +.next +next-env.d.ts +dist \ No newline at end of file diff --git a/next.config.mjs b/next.config.mjs new file mode 100644 index 0000000..5263a43 --- /dev/null +++ b/next.config.mjs @@ -0,0 +1,7 @@ +/** @type {import('next').NextConfig} */ +const nextConfig = { + output: 'export', // Outputs a Single-Page Application (SPA). + distDir: './dist', // Changes the build output directory to `./dist/`. + } + + export default nextConfig \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index e4f75d0..5b3c8d0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,6 +17,7 @@ "firebase": "^9.15.0", "framer-motion": "^7.8.0", "gsap": "^3.11.3", + "next": "^14.2.5", "react": "^18.2.0", "react-calendly": "^4.3.0", "react-device-detect": "^2.2.3", @@ -4059,6 +4060,146 @@ "tslib": "^2.3.1" } }, + "node_modules/@next/env": { + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.5.tgz", + "integrity": "sha512-/zZGkrTOsraVfYjGP8uM0p6r0BDT6xWpkjdVbcz66PJVSpwXX3yNiRycxAuDfBKGWBrZBXRuK/YVlkNgxHGwmA==" + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.5.tgz", + "integrity": "sha512-/9zVxJ+K9lrzSGli1///ujyRfon/ZneeZ+v4ptpiPoOU+GKZnm8Wj8ELWU1Pm7GHltYRBklmXMTUqM/DqQ99FQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.5.tgz", + "integrity": "sha512-vXHOPCwfDe9qLDuq7U1OYM2wUY+KQ4Ex6ozwsKxp26BlJ6XXbHleOUldenM67JRyBfVjv371oneEvYd3H2gNSA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.5.tgz", + "integrity": "sha512-vlhB8wI+lj8q1ExFW8lbWutA4M2ZazQNvMWuEDqZcuJJc78iUnLdPPunBPX8rC4IgT6lIx/adB+Cwrl99MzNaA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.5.tgz", + "integrity": "sha512-NpDB9NUR2t0hXzJJwQSGu1IAOYybsfeB+LxpGsXrRIb7QOrYmidJz3shzY8cM6+rO4Aojuef0N/PEaX18pi9OA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.5.tgz", + "integrity": "sha512-8XFikMSxWleYNryWIjiCX+gU201YS+erTUidKdyOVYi5qUQo/gRxv/3N1oZFCgqpesN6FPeqGM72Zve+nReVXQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.5.tgz", + "integrity": "sha512-6QLwi7RaYiQDcRDSU/os40r5o06b5ue7Jsk5JgdRBGGp8l37RZEh9JsLSM8QF0YDsgcosSeHjglgqi25+m04IQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.5.tgz", + "integrity": "sha512-1GpG2VhbspO+aYoMOQPQiqc/tG3LzmsdBH0LhnDS3JrtDx2QmzXe0B6mSZZiN3Bq7IOMXxv1nlsjzoS1+9mzZw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-ia32-msvc": { + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.5.tgz", + "integrity": "sha512-Igh9ZlxwvCDsu6438FXlQTHlRno4gFpJzqPjSIBZooD22tKeI4fE/YMRoHVJHmrQ2P5YL1DoZ0qaOKkbeFWeMg==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.5.tgz", + "integrity": "sha512-tEQ7oinq1/CjSG9uSTerca3v4AZ+dFa+4Yu6ihaG8Ud8ddqLQgFGcnwYls13H5X5CPDPZJdYxyeMui6muOLd4g==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { "version": "5.1.1-v1", "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", @@ -4602,6 +4743,20 @@ "url": "https://github.com/sponsors/gregberge" } }, + "node_modules/@swc/counter": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", + "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==" + }, + "node_modules/@swc/helpers": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", + "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", + "dependencies": { + "@swc/counter": "^0.1.3", + "tslib": "^2.4.0" + } + }, "node_modules/@testing-library/dom": { "version": "10.1.0", "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.1.0.tgz", @@ -6435,6 +6590,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "dependencies": { + "streamsearch": "^1.1.0" + }, + "engines": { + "node": ">=10.16.0" + } + }, "node_modules/bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", @@ -6643,6 +6809,11 @@ "node": ">=0.10.0" } }, + "node_modules/client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" + }, "node_modules/cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -13356,6 +13527,82 @@ "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" }, + "node_modules/next": { + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.5.tgz", + "integrity": "sha512-0f8aRfBVL+mpzfBjYfQuLWh2WyAwtJXCRfkPF4UJ5qd2YwrHczsrSzXU4tRMV0OAxR8ZJZWPFn6uhSC56UTsLA==", + "dependencies": { + "@next/env": "14.2.5", + "@swc/helpers": "0.5.5", + "busboy": "1.6.0", + "caniuse-lite": "^1.0.30001579", + "graceful-fs": "^4.2.11", + "postcss": "8.4.31", + "styled-jsx": "5.1.1" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": ">=18.17.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "14.2.5", + "@next/swc-darwin-x64": "14.2.5", + "@next/swc-linux-arm64-gnu": "14.2.5", + "@next/swc-linux-arm64-musl": "14.2.5", + "@next/swc-linux-x64-gnu": "14.2.5", + "@next/swc-linux-x64-musl": "14.2.5", + "@next/swc-win32-arm64-msvc": "14.2.5", + "@next/swc-win32-ia32-msvc": "14.2.5", + "@next/swc-win32-x64-msvc": "14.2.5" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "@playwright/test": "^1.41.2", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "@opentelemetry/api": { + "optional": true + }, + "@playwright/test": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/next/node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, "node_modules/no-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", @@ -16921,6 +17168,14 @@ "node": ">= 0.4" } }, + "node_modules/streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -17151,6 +17406,28 @@ "webpack": "^5.0.0" } }, + "node_modules/styled-jsx": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", + "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", + "dependencies": { + "client-only": "0.0.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "babel-plugin-macros": { + "optional": true + } + } + }, "node_modules/stylehacks": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", diff --git a/package.json b/package.json index cc812ee..1c5d3c5 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ "firebase": "^9.15.0", "framer-motion": "^7.8.0", "gsap": "^3.11.3", + "next": "^14.2.5", "react": "^18.2.0", "react-calendly": "^4.3.0", "react-device-detect": "^2.2.3", @@ -29,8 +30,9 @@ "web-vitals": "^2.1.4" }, "scripts": { - "start": "react-scripts start", - "build": "react-scripts build", + "dev": "next dev", + "build": "next build", + "start": "next start", "test": "react-scripts test", "eject": "react-scripts eject" }, diff --git a/public/logo-flocon-jw.ico b/public/favicon.ico similarity index 100% rename from public/logo-flocon-jw.ico rename to public/favicon.ico diff --git a/src/App.js b/src/App.js index 352605d..a946e01 100644 --- a/src/App.js +++ b/src/App.js @@ -3,7 +3,7 @@ import Home from "./page/Home/Home"; import Services from "./page/Services/Services"; import { BrowserRouter, Routes, Route } from "react-router-dom"; import { useState } from "react"; -import Navbar from "./components/Navbar/Navbar"; +import Navbar from "./components/Navbar/Navbar.tsx"; import MentionsLegales from "./components/MentionsLegales/MentionsLegales"; import BitcoinPrice from "./page/BitcoinPrice/BitcoinPrice"; function App() { diff --git a/src/app/[[...slug]]/client.tsx b/src/app/[[...slug]]/client.tsx new file mode 100644 index 0000000..c3b0107 --- /dev/null +++ b/src/app/[[...slug]]/client.tsx @@ -0,0 +1,10 @@ +'use client' + +import React from 'react' +import dynamic from 'next/dynamic' + +const App = dynamic(() => import('../../App'), { ssr: false }) + +export function ClientOnly() { + return +} \ No newline at end of file diff --git a/src/app/[[...slug]]/page.tsx b/src/app/[[...slug]]/page.tsx new file mode 100644 index 0000000..01d36d5 --- /dev/null +++ b/src/app/[[...slug]]/page.tsx @@ -0,0 +1,10 @@ +import '../../index.css' +import { ClientOnly } from './client' + +export function generateStaticParams() { + return [{ slug: [''] }] +} + +export default function Page() { + return +} \ No newline at end of file diff --git a/src/app/layout.tsx b/src/app/layout.tsx new file mode 100644 index 0000000..d747bbd --- /dev/null +++ b/src/app/layout.tsx @@ -0,0 +1,36 @@ +import '../index.css' + +export default function RootLayout({ + children, +}: { + children: React.ReactNode; +}) { + return ( + <> + + + + + + + + JW Corp - Blockchain Solutions + + + +
{children}
+ + + + ); +} diff --git a/src/assets/logoJWCorp/jwlogosolutionblanc.svg b/src/assets/logoJWCorp/jwlogosolutionblanc.svg deleted file mode 100644 index 0ff02ef..0000000 --- a/src/assets/logoJWCorp/jwlogosolutionblanc.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/assets/logoJWCorp/jwlogosolutionviolet.svg b/src/assets/logoJWCorp/jwlogosolutionviolet.svg deleted file mode 100644 index 103ecf0..0000000 --- a/src/assets/logoJWCorp/jwlogosolutionviolet.svg +++ /dev/null @@ -1 +0,0 @@ -BLOCKCHAINSOLUTIONS \ No newline at end of file diff --git a/src/components/AnimationsComponent/AnimationsComponent.js b/src/components/AnimationsComponent/AnimationsComponent.js index eb0125c..94013ef 100644 --- a/src/components/AnimationsComponent/AnimationsComponent.js +++ b/src/components/AnimationsComponent/AnimationsComponent.js @@ -87,30 +87,6 @@ function AnimationsComponent() { slideInLeftServiceTitle("#notre-mission-title"); }, []); - // const slideInLeftServiceConseil = (element) => { - // gsap.fromTo( - // element, - // { - // opacity: 0, - // x: -200, - // }, - // { - // opacity: 1, - // x: 0, - // delay: 0.6, - // duration: 0.6, - // scrollTrigger: { - // trigger: element, - // start: "20px 60%", - // end: "bottom center", - // // toggleActions: "restart none none none", - // }, - // } - // ); - // }; - // useEffect(() => { - // slideInLeftServiceConseil("#conseil-paragraph"); - // }, []); const slideInLeftServiceDev = (element) => { gsap.fromTo( @@ -137,55 +113,6 @@ function AnimationsComponent() { slideInLeftServiceDev("#notre-mission-animation"); }, []); - // const slideInLeftServiceAudit = (element) => { - // gsap.fromTo( - // element, - // { - // opacity: 0, - // x: -200, - // }, - // { - // opacity: 1, - // x: 0, - // delay: 1.9, - // duration: 0.6, - // scrollTrigger: { - // trigger: element, - // start: "20px 80%", - // end: "bottom center", - // // toggleActions: "restart none none none", - // }, - // } - // ); - // }; - // useEffect(() => { - // slideInLeftServiceAudit("#audit"); - // }, []); - - // const slideInLeftServiceRecherche = (element) => { - // gsap.fromTo( - // element, - // { - // opacity: 0, - // x: -200, - // }, - // { - // opacity: 1, - // x: 0, - // delay: 2.5, - // duration: 0.6, - // scrollTrigger: { - // trigger: element, - // start: "20px 80%", - // end: "bottom center", - // // toggleActions: "restart none none none", - // }, - // } - // ); - // }; - // useEffect(() => { - // slideInLeftServiceRecherche("#recherche-developpement"); - // }, []); // Animation "lineAnimation" in Formulaire --> Lines const lineTriggerTop = (element) => { gsap.fromTo( @@ -233,14 +160,6 @@ function AnimationsComponent() { return ( <> - <> - {/* */} - ); } diff --git a/src/components/Footer/Footer.js b/src/components/Footer/Footer.js index 11e69bd..a6c73a8 100644 --- a/src/components/Footer/Footer.js +++ b/src/components/Footer/Footer.js @@ -1,23 +1,36 @@ import React from "react"; import "./Footer.css"; -import logo from "../../assets/logoJWCorp/jwlogosolutionblanc.svg"; - -const Footer = ({langageState}) => { +const Footer = ({ langageState }) => { const year = new Date().getFullYear(); return (
diff --git a/src/components/Navbar/Navbar.js b/src/components/Navbar/Navbar.tsx similarity index 64% rename from src/components/Navbar/Navbar.js rename to src/components/Navbar/Navbar.tsx index adbc72f..ba50abb 100644 --- a/src/components/Navbar/Navbar.js +++ b/src/components/Navbar/Navbar.tsx @@ -1,32 +1,39 @@ import React, { useEffect, useState } from "react"; import "./Navbar.css"; -import jwblanc from "../../assets/logoJWCorp/jwlogosolutionblanc.svg"; import { Link } from "react-router-dom"; import { HashLink } from "react-router-hash-link"; -function Navbar({ handlingLangage, checkDomain }) { - const [displayNotification, setDisplayNotification] = useState(false); +interface NavbarProps { + handlingLangage: () => void; + checkDomain: boolean; +} + +const Navbar: React.FC = ({ handlingLangage, checkDomain }) => { + const [displayNotification, setDisplayNotification] = useState(false); + useEffect(() => { - setTimeout(() => { + const timer = setTimeout(() => { setDisplayNotification(true); }, 5000); + + return () => clearTimeout(timer); }, []); + return ( <>
{checkDomain ? ( - <> - - JW Corp logo blanc - - + + JW Corp logo blanc + ) : ( - <> - - JW Corp logo blanc - - + + JW Corp logo blanc + )}
@@ -35,7 +42,7 @@ function Navbar({ handlingLangage, checkDomain }) { style={ displayNotification ? { - animation: " jellow 2s ease 0s 1 normal forwards", + animation: "jellow 2s ease 0s 1 normal forwards", } : {} } @@ -61,5 +68,6 @@ function Navbar({ handlingLangage, checkDomain }) {
); -} +}; + export default Navbar; diff --git a/src/components/NotreMission/NotreMission.js b/src/components/NotreMission/NotreMission.tsx similarity index 95% rename from src/components/NotreMission/NotreMission.js rename to src/components/NotreMission/NotreMission.tsx index 06c07e0..e2bb9a1 100644 --- a/src/components/NotreMission/NotreMission.js +++ b/src/components/NotreMission/NotreMission.tsx @@ -1,7 +1,10 @@ import React from "react"; import "./NotreMission.css"; import { HashLink } from "react-router-hash-link"; -const NotreMission = ({ langageState }) => { +interface NotreMissionProps { + langageState: boolean; +} +const NotreMission: React.FC = ({ langageState }) => { return (
@@ -54,8 +57,8 @@ const NotreMission = ({ langageState }) => { ) : ( <> - We mobilize our knowledge and skills to serve your - Blockchain projects. + We mobilize our knowledge and skills to serve your Blockchain + projects. )}

@@ -119,7 +122,7 @@ const NotreMission = ({ langageState }) => { className="hashlink-notre-mission notreMission-service" to={"/Services#auditservice"} > -

Audit

+

Technical advisoring

{langageState ? ( <> @@ -129,9 +132,8 @@ const NotreMission = ({ langageState }) => { ) : ( <> - Your projects or your smart contracts audited by our experts. - We send you a detailed report containing in particular - observations and action plan. + Feature specifications, product vision and strategy, we help + you to manage the project from a technical point of view )}

@@ -175,7 +177,6 @@ const NotreMission = ({ langageState }) => {
- ); }; diff --git a/src/page/Home/Home.js b/src/page/Home/Home.js index 67a72d1..fc30288 100644 --- a/src/page/Home/Home.js +++ b/src/page/Home/Home.js @@ -5,7 +5,7 @@ import { useNavigate } from "react-router-dom"; import { db } from "../../firebaseConfig"; import { addDoc, collection } from "firebase/firestore"; import LandingPage from "../../components/LandingPage/LandingPage"; -import NotreMission from "../../components/NotreMission/NotreMission"; +import NotreMission from "../../components/NotreMission/NotreMission.tsx"; import NosValeurs from "../../components/NosValeurs/NosValeurs"; import Google from "../../components/Googlemaps/Google"; import Footer from "../../components/Footer/Footer"; @@ -76,7 +76,7 @@ function Home({ langageState }) { - {isMobile == false && } + {isMobile === false && } diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..bc94556 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,33 @@ +{ + "compilerOptions": { + "target": "es5", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": false, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "node", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "baseUrl": ".", + "incremental": true, + "plugins": [ + { + "name": "next" + } + ], + "strictNullChecks": true + }, + "include": [ + "next-env.d.ts", + "**/*.ts", + "**/*.tsx", + ".next/types/**/*.ts", + "./dist/types/**/*.ts" + ], + "exclude": ["node_modules"] + } \ No newline at end of file