From f833001b9481e946fc76aacdc2c9955615234e3f Mon Sep 17 00:00:00 2001 From: gom-by Date: Tue, 14 Jan 2025 10:54:34 +0100 Subject: [PATCH 1/2] blog items mock-up components --- latosa-frontend/app/gallery/page.tsx | 7 - latosa-frontend/app/history/[slug]/page.tsx | 65 ++----- latosa-frontend/app/page.tsx | 6 +- latosa-frontend/components/blog.tsx | 185 +++++++++++--------- latosa-frontend/components/blogItem.tsx | 65 +++++++ latosa-frontend/components/gallery.tsx | 4 +- latosa-frontend/components/nav-bar.tsx | 2 +- 7 files changed, 188 insertions(+), 146 deletions(-) delete mode 100644 latosa-frontend/app/gallery/page.tsx create mode 100644 latosa-frontend/components/blogItem.tsx diff --git a/latosa-frontend/app/gallery/page.tsx b/latosa-frontend/app/gallery/page.tsx deleted file mode 100644 index 0c12a83..0000000 --- a/latosa-frontend/app/gallery/page.tsx +++ /dev/null @@ -1,7 +0,0 @@ -export default function Gallery() { - return ( - <> - - - ) -} diff --git a/latosa-frontend/app/history/[slug]/page.tsx b/latosa-frontend/app/history/[slug]/page.tsx index d37d138..383ad48 100644 --- a/latosa-frontend/app/history/[slug]/page.tsx +++ b/latosa-frontend/app/history/[slug]/page.tsx @@ -1,63 +1,28 @@ "use server" +import { BlogInterface, posts } from "@/components/blog"; +import BlogItem, { BlogItemParams } from "@/components/blogItem"; + export default async function HistoryDetails({ params, }: { params: Promise<{ slug: string }>; }) { const { slug } = await params; - const default_img: string = "https://shadcnblocks.com/images/block/placeholder-dark-1.svg" - const default_style: string = "blog-paragraph mb-5 text-muted-foreground md:text-base lg:max-w-2xl lg:text-lg" - const sub_header_style: string = "py-12 mb-3 text-pretty text-xl font-semibold md:mb-4 md:text-4xl lg:mb-6 lg:max-w-3xl lg:text-3xl" - return ( -
-
-
-

- {slug} -

-
-
-
-

Subtitle 1

-

- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deleniti architecto incidunt, hic in consectetur eligendi nobis numquam tenetur sit repellat et unde, maxime ducimus autem esse temporibus omnis eum molestias! -

-
-
- {slug} + const blog_item: BlogInterface = posts.find((value) => value.slug == slug) as BlogInterface -
-
-

Subtitle 2

-

- Lorem ipsm dolor sit amet, consectetur adipisicing elit. Deleniti architecto incidunt, hic in consectetur eligendi nobis numquam tenetur sit repellat et unde, maxime ducimus autem esse temporibus omnis eum molestias! -

-
-
- {slug} + const blog_item_params: BlogItemParams = { + slug: slug, + title_style: "py-12 mb-3 text-pretty text-xl font-semibold md:mb-4 md:text-4xl lg:mb-6 lg:max-w-3xl lg:text-3xl", + subtitle_style: "py-12 mb-3 text-pretty text-xl font-semibold md:mb-4 md:text-4xl lg:mb-6 lg:max-w-3xl lg:text-3xl" +, + p_style: "blog-paragraph mb-5 text-muted-foreground md:text-base lg:max-w-2xl lg:text-lg", + default_img: "https://shadcnblocks.com/images/block/placeholder-dark-1.svg", + blog_content: blog_item, + } -
-
-

Subtitle 3

-

- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deleniti architecto incidunt, hic in consectetur eligendi nobis numquam tenetur sit repellat et unde, maxime ducimus autem esse temporibus omnis eum molestias! -

-

- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deleniti architecto incidunt, hic in consectetur eligendi nobis numquam tenetur sit repellat et unde, maxime ducimus autem esse temporibus omnis eum molestias! -

-
-
-
-
+ return ( + ) } diff --git a/latosa-frontend/app/page.tsx b/latosa-frontend/app/page.tsx index 1c0861c..06caa72 100644 --- a/latosa-frontend/app/page.tsx +++ b/latosa-frontend/app/page.tsx @@ -1,7 +1,7 @@ "use server"; import Features, { FeatureItem } from "@/components/features"; -import Gallery6 from "@/components/gallery"; +import Gallery from "@/components/gallery"; import Hero from "@/components/hero"; export default async function Home() { @@ -108,8 +108,8 @@ export default async function Home() { - - + + ); diff --git a/latosa-frontend/components/blog.tsx b/latosa-frontend/components/blog.tsx index 19acb74..a898b63 100644 --- a/latosa-frontend/components/blog.tsx +++ b/latosa-frontend/components/blog.tsx @@ -2,92 +2,111 @@ import { ArrowRight } from "lucide-react"; import { Button } from "@/components/ui/button"; -const posts = [ - { - id: "post-1", - title: "Duis sem sem, gravida vel porttitor eu, volutpat ut arcu", - summary: - "Pellentesque eget quam ligula. Sed felis ante, consequat nec ultrices ut, ornare quis metus. Vivamus sit amet tortor vel enim sollicitudin hendrerit.", - label: "Ut varius dolor turpis", - author: "Jane Doe", - published: "1 Jan 2024", - href: "#", - image: "https://shadcnblocks.com/images/block/placeholder-dark-1.svg", - }, - { - id: "post-2", - title: "Duis sem sem, gravida vel porttitor eu, volutpat ut arcu", - summary: - "Pellentesque eget quam ligula. Sed felis ante, consequat nec ultrices ut, ornare quis metus. Vivamus sit amet tortor vel enim sollicitudin hendrerit.", - label: "Ut varius dolor turpis", - author: "Jane Doe", - published: "1 Jan 2024", - href: "#", - image: "https://shadcnblocks.com/images/block/placeholder-dark-1.svg", - }, - { - id: "post-3", - title: "Duis sem sem, gravida vel porttitor eu, volutpat ut arcu", - summary: - "Pellentesque eget quam ligula. Sed felis ante, consequat nec ultrices ut, ornare quis metus. Vivamus sit amet tortor vel enim sollicitudin hendrerit.", - label: "Ut varius dolor turpis", - author: "Jane Doe", - published: "1 Jan 2024", - href: "#", - image: "https://shadcnblocks.com/images/block/placeholder-dark-1.svg", - }, +export interface BlogInterface { + id: string, + slug: string, + title: string, + content: string, + label: string, + author: string, + published: string, +} + +export interface BlogSummaryInterface extends BlogInterface { + summary: string, + image: string, + href: string +} + +export const posts: BlogSummaryInterface[] = [ + { + id: 'a1b2c3d4-e5f6-7g8h-9i0j-k1l2m3n4o5p6', + slug: 'tech-advancements-2025', + title: 'Tech Advancements in 2025', + content: 'The year 2025 promises groundbreaking technologies that will reshape industries. In this article, we explore the key advancements that could transform how we work, live, and communicate.', + label: 'Technology', + author: 'd3f5e6g7-h8i9j0k1-l2m3n4o5p6q7', + published: '2025-01-14', + summary: 'A look at the tech trends to expect in 2025 and beyond, from AI to quantum computing.', + image: 'https://via.placeholder.com/600x400?text=Tech+2025', + href: 'history/tech-advancements-2025' + }, + { + id: 'f7g8h9i0-j1k2l3m4-n5o6p7q8r9s0t1u2v3', + slug: 'sustainable-fashion-2025', + title: 'Sustainable Fashion in 2025', + content: 'Sustainability is no longer a trend, but a movement within the fashion industry. This article discusses how eco-friendly practices are influencing fashion designs and consumer behavior in 2025.', + label: 'Fashion', + author: 'w4x5y6z7-a8b9c0d1-e2f3g4h5i6j7', + published: '2025-01-12', + summary: 'Exploring how sustainable fashion is evolving in 2025 with innovative materials and ethical brands.', + image: 'https://via.placeholder.com/600x400?text=Sustainable+Fashion', + href: 'history/sustainable-fashion-2025' + }, + { + id: 'v1w2x3y4-z5a6b7c8-d9e0f1g2h3i4j5k6l7', + slug: 'mental-health-awareness-2025', + title: 'Mental Health Awareness in 2025', + content: 'As mental health awareness continues to grow, 2025 brings new challenges and opportunities to address psychological well-being. This article focuses on emerging trends in mental health support and public perception.', + label: 'Health', + author: 'm8n9o0p1-q2r3s4t5-u6v7w8x9y0z1a2b3', + published: '2025-01-10', + summary: 'Highlighting the importance of mental health awareness in 2025, focusing on new treatments and societal changes.', + image: 'https://via.placeholder.com/600x400?text=Mental+Health+2025', + href: '/history/mental-health-awareness-2025' + } ]; const Blog = () => { - return ( -
-
-
-

- En savoir plus sur ce sport -

-

- Lorem ipsum dolor sit amet consectetur adipisicing elit. Elig - doloremque mollitia fugiat omnis! Porro facilis quo animi - consequatur. Explicabo. -

- -
- -
-
- ); + return ( +
+
+
+

+ En savoir plus sur ce sport +

+

+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Elig + doloremque mollitia fugiat omnis! Porro facilis quo animi + consequatur. Explicabo. +

+ +
+ +
+
+ ); }; export default Blog; diff --git a/latosa-frontend/components/blogItem.tsx b/latosa-frontend/components/blogItem.tsx new file mode 100644 index 0000000..e20ff0d --- /dev/null +++ b/latosa-frontend/components/blogItem.tsx @@ -0,0 +1,65 @@ +import { BlogInterface } from "@/components/blog"; + +export interface BlogItemParams { + slug: string + title_style: string, + subtitle_style: string, + p_style: string, + default_img: string + blog_content: BlogInterface +} + +export default function BlogItem({ params } + : { params: BlogItemParams } +) { + return ( +
+
+
+

+ {params.slug} +

+
+
+
+

Subtitle 1

+

+ Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deleniti architecto incidunt, hic in consectetur eligendi nobis numquam tenetur sit repellat et unde, maxime ducimus autem esse temporibus omnis eum molestias! +

+
+
+ {params.slug} + +
+
+

Subtitle 2

+

+ Lorem ipsm dolor sit amet, consectetur adipisicing elit. Deleniti architecto incidunt, hic in consectetur eligendi nobis numquam tenetur sit repellat et unde, maxime ducimus autem esse temporibus omnis eum molestias! +

+
+
+ {params.slug} + +
+
+

Subtitle 3

+

+ Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deleniti architecto incidunt, hic in consectetur eligendi nobis numquam tenetur sit repellat et unde, maxime ducimus autem esse temporibus omnis eum molestias! +

+

+ Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deleniti architecto incidunt, hic in consectetur eligendi nobis numquam tenetur sit repellat et unde, maxime ducimus autem esse temporibus omnis eum molestias! +

+
+
+
+
+ ) +} diff --git a/latosa-frontend/components/gallery.tsx b/latosa-frontend/components/gallery.tsx index 5dfb3ba..6a6153d 100644 --- a/latosa-frontend/components/gallery.tsx +++ b/latosa-frontend/components/gallery.tsx @@ -54,7 +54,7 @@ const data = [ }, ]; -const Gallery6 = () => { +const Gallery = () => { const [carouselApi, setCarouselApi] = useState(); const [canScrollPrev, setCanScrollPrev] = useState(false); const [canScrollNext, setCanScrollNext] = useState(false); @@ -171,4 +171,4 @@ const Gallery6 = () => { ); }; -export default Gallery6; +export default Gallery; diff --git a/latosa-frontend/components/nav-bar.tsx b/latosa-frontend/components/nav-bar.tsx index 9c4b3ed..9f20767 100644 --- a/latosa-frontend/components/nav-bar.tsx +++ b/latosa-frontend/components/nav-bar.tsx @@ -202,7 +202,7 @@ const Navbar = () => { variant: "ghost", }), )} - href="#" + href="/history" > Blog From bfee01dba4dd134255883417b55486c1333c247a Mon Sep 17 00:00:00 2001 From: gom-by Date: Tue, 14 Jan 2025 11:08:41 +0100 Subject: [PATCH 2/2] navigation --- latosa-frontend/components/nav-bar.tsx | 94 +++----------------------- 1 file changed, 10 insertions(+), 84 deletions(-) diff --git a/latosa-frontend/components/nav-bar.tsx b/latosa-frontend/components/nav-bar.tsx index 9f20767..05eae36 100644 --- a/latosa-frontend/components/nav-bar.tsx +++ b/latosa-frontend/components/nav-bar.tsx @@ -10,12 +10,6 @@ import { } from "@/components/ui/accordion"; import { Button, buttonVariants } from "@/components/ui/button"; import { - NavigationMenu, - NavigationMenuContent, - NavigationMenuItem, - NavigationMenuLink, - NavigationMenuList, - NavigationMenuTrigger, navigationMenuTriggerStyle, } from "@/components/ui/navigation-menu"; import { @@ -103,85 +97,17 @@ const Navbar = () => { > Accueil - - - - - Products - - - - - - - - Resources - - - - - - - + + Calendar +