From ea98d5b2e5ba1f4423344c03ebc02da459c30fee Mon Sep 17 00:00:00 2001
From: Celeste Robert <celeste@lydra.fr>
Date: Mon, 14 Apr 2025 17:06:12 +0200
Subject: [PATCH] feat: team on separate page

---
 docusaurus.config.js                          |  4 +-
 .../{HomepageTeam => TeamComponent}/index.js  | 65 ++++++++++++++++++-
 .../styles.module.css                         |  0
 src/css/custom.css                            |  8 +++
 src/pages/equipe.js                           | 20 ++++++
 src/pages/index.js                            |  7 +-
 6 files changed, 96 insertions(+), 8 deletions(-)
 rename src/components/{HomepageTeam => TeamComponent}/index.js (81%)
 rename src/components/{HomepageTeam => TeamComponent}/styles.module.css (100%)
 create mode 100644 src/pages/equipe.js

diff --git a/docusaurus.config.js b/docusaurus.config.js
index 8187bea..a96dfeb 100644
--- a/docusaurus.config.js
+++ b/docusaurus.config.js
@@ -149,8 +149,8 @@ const config = {
             items: [
               {
                 label: 'L\'équipe',
-                to: '/#team',
-                activeBasePath: '/#'
+                to: '/equipe',
+                activeBasePath: '/equipe'
               },
               {
                 label: 'Nos réseaux',
diff --git a/src/components/HomepageTeam/index.js b/src/components/TeamComponent/index.js
similarity index 81%
rename from src/components/HomepageTeam/index.js
rename to src/components/TeamComponent/index.js
index d4939f9..5a29e19 100644
--- a/src/components/HomepageTeam/index.js
+++ b/src/components/TeamComponent/index.js
@@ -1,4 +1,5 @@
 import React from "react";
+import clsx from 'clsx';
 import "slick-carousel/slick/slick.css";
 import "slick-carousel/slick/slick-theme.css";
 import styles from "./styles.module.css";
@@ -6,6 +7,7 @@ import useBaseUrl from "@docusaurus/useBaseUrl";
 import { FaLinkedin } from "react-icons/fa";
 import Image from "@theme/IdealImage";
 import Link from "@docusaurus/Link";
+import Slider from "react-slick";
 
 const FeatureList = [
   {
@@ -96,9 +98,9 @@ function Feature({ img, title, subtitle, description, url, link }) {
 );
 }
 
-export default function HomepageTeam() {
+export function Team() {
   return (
-    <section id="team">
+    <section>
       <h2 className="text--center margin-top--lg"> Notre Équipe </h2>
       <div className={styles.features + " team"}>
         <div className="container">
@@ -110,3 +112,62 @@ export default function HomepageTeam() {
     </section>
   );
 }
+
+
+function FeatureSlider({img, title, subtitle}) {
+    return (
+      <div className={styles.featureElement}>
+        <div style={{position:'relative'}}>
+          <Image img={useBaseUrl(img)} className={styles.featureSvg} style={{margin:'auto'}} role="img" />
+        </div>
+        <div className="text--center padding-horiz--md">
+          <h3>{title}</h3>
+          <p> <b>{subtitle}</b></p>
+          <Link className="button button--sm button--primary" href="/equipe"> Voir plus </Link>
+        </div>
+      </div>
+    )
+}
+
+
+export function TeamSlider() {
+  const settings = {
+    accessibility: true,
+    autoplay: true,
+    autoplaySpeed: 8500,
+    speed: 1500,
+    infinite: true,
+    rtl: true,
+    slidesToShow: 3,
+    slidesToScroll: 1,
+    responsive: [
+      {
+        breakpoint: 720,
+        settings: {
+          slidesToShow: 1,
+          slidesToScroll: 1,
+          initialSlide: 0
+        }
+      },
+    ]
+  };
+  return (
+    <section id="team">
+      <h2 className='text--center margin-top--lg'> Notre Équipe </h2>
+      <div className={styles.features + ' team'}>
+        <div className="container">
+          <div className="row">
+            <div className={clsx('col')}>
+            <Slider {...settings}>
+            {FeatureList.map((props, idx) => (
+                <FeatureSlider key={idx} {...props} />
+              ))}
+            </Slider>
+            </div>
+          </div>
+        </div>
+      </div>
+    </section>
+  );
+}
+
diff --git a/src/components/HomepageTeam/styles.module.css b/src/components/TeamComponent/styles.module.css
similarity index 100%
rename from src/components/HomepageTeam/styles.module.css
rename to src/components/TeamComponent/styles.module.css
diff --git a/src/css/custom.css b/src/css/custom.css
index 96ceac1..326039b 100644
--- a/src/css/custom.css
+++ b/src/css/custom.css
@@ -40,6 +40,8 @@
   --ifm-h4-font-size: 2rem;
   --ifm-h5-font-size: 1.75rem;
   --ifm-h6-font-size: 1.5rem;
+
+  --ifm-container-width-xxl: 1400px;
 }
 
 /* For readability concerns, you should choose a lighter palette in dark mode. */
@@ -143,6 +145,12 @@ section:nth-child(even) {
   }
 }
 
+@media (min-width: 1440px) {
+  .container {
+    max-width: var(--ifm-container-width-xxl);
+  }
+}
+
 .tags-list li {
   white-space: nowrap;
   text-align: center;
diff --git a/src/pages/equipe.js b/src/pages/equipe.js
new file mode 100644
index 0000000..a96e7a3
--- /dev/null
+++ b/src/pages/equipe.js
@@ -0,0 +1,20 @@
+import React from 'react';
+import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
+import Layout from '@theme/Layout';
+import { Team } from '@site/src/components/TeamComponent';
+
+const pageTitle = "Équipe"
+
+
+export default function Home() {
+  const {siteConfig} = useDocusaurusContext();
+  return (
+    <Layout
+      title={`${pageTitle} - ${siteConfig.title}`}
+      description="Description will go into a meta tag in <head />">
+      <main>
+        <Team />
+      </main>
+    </Layout>
+  );
+}
diff --git a/src/pages/index.js b/src/pages/index.js
index 99bd3dc..39114b1 100644
--- a/src/pages/index.js
+++ b/src/pages/index.js
@@ -3,11 +3,10 @@ import clsx from 'clsx';
 import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
 import Layout from '@theme/Layout';
 import Image from '@theme/IdealImage';
-import HomepageTeam from '@site/src/components/HomepageTeam';
 import styles from './index.module.css';
 import useBaseUrl from "@docusaurus/useBaseUrl";
 import TestimoniesCarousel from '@site/src/components/TestimoniesCarousel';
-
+import { TeamSlider } from '@site/src/components/TeamComponent';
 
 const pageTitle = "Home"
 
@@ -42,8 +41,8 @@ export default function Home() {
       description="Description will go into a meta tag in <head />">
       <HomepageHeader />
       <main>
-      <HomepageTeam />
-      <TestimoniesCarousel/>
+        <TeamSlider />
+        <TestimoniesCarousel/>
       </main>
     </Layout>
   );
-- 
GitLab