Logo Wall xsm breakpoint
This commit is contained in:
@@ -0,0 +1,63 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
const LogoWall = ({ logos = [] }) => {
|
||||||
|
// Default logos if none provided - ordered to match the screenshot
|
||||||
|
const defaultLogos = [
|
||||||
|
{
|
||||||
|
src: "assets/Section/Logo_FoodNotBombs.png",
|
||||||
|
alt: "Food Not Bombs",
|
||||||
|
size: "h-11",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
src: "assets/Section/Logo_StartCOOP.png",
|
||||||
|
alt: "Start COOP",
|
||||||
|
size: "h-11",
|
||||||
|
},
|
||||||
|
{ src: "assets/Section/Logo_Metagov.png", alt: "Metagov", size: "h-7" },
|
||||||
|
{
|
||||||
|
src: "assets/Section/Logo_OpenCivics.png",
|
||||||
|
alt: "Open Civics",
|
||||||
|
size: "h-7",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
src: "assets/Section/Logo_MutualAidCO.png",
|
||||||
|
alt: "Mutual Aid CO",
|
||||||
|
size: "h-11",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
src: "assets/Section/Logo_CUBoulder.png",
|
||||||
|
alt: "CU Boulder",
|
||||||
|
size: "h-11",
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
|
const displayLogos = logos.length > 0 ? logos : defaultLogos;
|
||||||
|
|
||||||
|
return (
|
||||||
|
<section className="p-[var(--spacing-scale-032)]">
|
||||||
|
<div className="flex flex-col gap-[var(--spacing-scale-032)]">
|
||||||
|
{/* Label */}
|
||||||
|
<p className="font-inter font-medium text-[10px] leading-[12px] uppercase text-[var(--color-content-default-secondary)] text-center">
|
||||||
|
Trusted by leading cooperators
|
||||||
|
</p>
|
||||||
|
|
||||||
|
{/* Logo Grid Container */}
|
||||||
|
<div className="opacity-60">
|
||||||
|
<div className="grid grid-cols-2 grid-rows-3 gap-[var(--spacing-scale-032)]">
|
||||||
|
{displayLogos.map((logo, index) => (
|
||||||
|
<div key={index} className="flex items-center justify-center">
|
||||||
|
<img
|
||||||
|
src={logo.src}
|
||||||
|
alt={logo.alt}
|
||||||
|
className={`${logo.size || "h-8"} w-auto object-contain`}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
export default LogoWall;
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
import NumberedCards from "./components/NumberedCards";
|
import NumberedCards from "./components/NumberedCards";
|
||||||
import HeroBanner from "./components/HeroBanner";
|
import HeroBanner from "./components/HeroBanner";
|
||||||
|
import LogoWall from "./components/LogoWall";
|
||||||
|
|
||||||
export default function Page() {
|
export default function Page() {
|
||||||
const heroBannerData = {
|
const heroBannerData = {
|
||||||
@@ -36,6 +37,7 @@ export default function Page() {
|
|||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
<HeroBanner {...heroBannerData} />
|
<HeroBanner {...heroBannerData} />
|
||||||
|
<LogoWall />
|
||||||
<NumberedCards {...numberedCardsData} />
|
<NumberedCards {...numberedCardsData} />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 11 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 16 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 26 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 52 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 35 KiB |
@@ -0,0 +1,36 @@
|
|||||||
|
import LogoWall from "../app/components/LogoWall";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
title: "Components/LogoWall",
|
||||||
|
component: LogoWall,
|
||||||
|
parameters: {
|
||||||
|
layout: "fullscreen",
|
||||||
|
},
|
||||||
|
tags: ["autodocs"],
|
||||||
|
argTypes: {
|
||||||
|
logos: {
|
||||||
|
control: "object",
|
||||||
|
description: "Array of logo objects with src and alt properties",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
export const Default = {
|
||||||
|
args: {},
|
||||||
|
};
|
||||||
|
|
||||||
|
export const CustomLogos = {
|
||||||
|
args: {
|
||||||
|
logos: [
|
||||||
|
{ src: "assets/Section/Logo_CUBoulder.png", alt: "CU Boulder" },
|
||||||
|
{ src: "assets/Section/Logo_FoodNotBombs.png", alt: "Food Not Bombs" },
|
||||||
|
{ src: "assets/Section/Logo_Metagov.png", alt: "Metagov" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
export const EmptyState = {
|
||||||
|
args: {
|
||||||
|
logos: [],
|
||||||
|
},
|
||||||
|
};
|
||||||
Reference in New Issue
Block a user