import LogoWall from "../../app/components/sections/LogoWall";

export default {
  title: "Components/Sections/LogoWall",
  component: LogoWall,
  parameters: {
    layout: "fullscreen",
    docs: {
      description: {
        component: `A responsive logo wall component that displays partner/sponsor logos in a grid layout. Features responsive breakpoints with different layouts and sizing for mobile, tablet, and desktop views.

## Responsive Behavior

- **Mobile**: 3 rows × 2 columns grid with 38.4px gaps
- **SM**: 2 rows × 3 columns grid with 38.4px gaps
- **MD+**: Single space-between row (no wrap)
- **LG**: 1.25× logo sizes, 48px gaps, 64px horizontal padding
- **XL**: 1.5625× logo sizes, 48px gaps, 160px horizontal padding

## Animations & Transitions

- **Opacity**: Partner logos render at 60% opacity to match Figma \`Section / Logo Wall\`.

## Props

- **logos** (optional): Array of logo objects with src, alt, and size properties. If not provided, uses default partner logos.

## Usage Examples

### Custom Logos
\`\`\`jsx
<LogoWall 
  logos={[
    { 
      src: "assets/logos/partners/cu-boulder.svg", 
      alt: "CU Boulder",
      size: "h-10 lg:h-12 xl:h-[60px]",
    },
    { 
      src: "assets/logos/partners/food-not-bombs.svg", 
      alt: "Food Not Bombs",
      size: "h-11 lg:h-14 xl:h-[70px]",
    }
  ]} 
/>
\`\`\`

### Empty State
\`\`\`jsx
<LogoWall logos={[]} />
\`\`\`
This will fall back to the default partner logos.`,
      },
    },
  },
  tags: ["autodocs"],
  argTypes: {
    logos: {
      control: "object",
      description:
        "Array of logo objects with src, alt, and size properties. If not provided, uses default partner logos.",
    },
  },
};

export const Default = {
  args: {},
  parameters: {
    docs: {
      description: {
        story:
          "Default LogoWall with all partner logos. Displays in a 2×3 grid on mobile, 3×2 grid from 430px, and a space-between row from 640px with Figma lockup sizes. Logos render at 60% opacity to match Figma.",
      },
    },
  },
};
