Skip to content

Commit

Permalink
Merge pull request #195 from alifakbar111/feat/100-storybook-react-card
Browse files Browse the repository at this point in the history
Feat/100 storybook react card
  • Loading branch information
alifakbar111 authored Jan 30, 2025
2 parents f63c585 + 29bbc8c commit 39ab178
Show file tree
Hide file tree
Showing 11 changed files with 880 additions and 745 deletions.
6 changes: 3 additions & 3 deletions apps/docs-react/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
},
"dependencies": {
"@repo/ui-react": "workspace:*",
"lucide-react": "^0.473.0",
"lucide-react": "^0.474.0",
"pathe": "^2.0.2",
"react-dom": "^19.0.0",
"react-router": "^7.1.3",
Expand All @@ -38,8 +38,8 @@
"@storybook/test": "^8.5.1",
"@storybook/theming": "^8.5.1",
"@tailwindcss/vite": "^4.0.0",
"@types/node": "^22.10.8",
"@types/react": "^19.0.7",
"@types/node": "^22.10.10",
"@types/react": "^19.0.8",
"@types/react-dom": "^19.0.3",
"@vitejs/plugin-react": "^4.3.4",
"storybook": "^8.5.1",
Expand Down
2 changes: 1 addition & 1 deletion apps/docs-react/stories/breadcrumb/breadcrumb.mdx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Canvas, Meta, Primary, Stories, Story } from '@storybook/blocks'
import { Canvas, Meta, Primary, Stories } from '@storybook/blocks'
import * as BreadcrumbStories from './breadcrumb.stories'

<Meta of={BreadcrumbStories} />
Expand Down
38 changes: 19 additions & 19 deletions apps/docs-react/stories/breadcrumb/breadcrumb.stories.tsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
import type { Meta, StoryObj } from '@storybook/react'
import {
Breadcrumb,
BreadcrumbEllipsis,
BreadcrumbItem,
BreadcrumbLink,
BreadcrumbList,
BreadcrumbSeparator,
BreadcrumbPage,
BreadcrumbEllipsis,
BreadcrumbSeparator,
} from '@repo/ui-react/breadcrumb'
import React from 'react'
import type { Meta, StoryObj } from '@storybook/react'
import { Slash } from 'lucide-react'
import React from 'react'

const meta: Meta = {
title: 'Basic Components/Breadcrumb',
Expand All @@ -21,15 +21,15 @@ export default meta
type Story = StoryObj<typeof meta>

export const Default: Story = {
render: (args) => (
render: () => (
<Breadcrumb>
<BreadcrumbList>
<BreadcrumbItem>
<BreadcrumbLink href='/'>Home</BreadcrumbLink>
<BreadcrumbLink href="/">Home</BreadcrumbLink>
</BreadcrumbItem>
<BreadcrumbSeparator />
<BreadcrumbItem>
<BreadcrumbLink href='/components'>Components</BreadcrumbLink>
<BreadcrumbLink href="/components">Components</BreadcrumbLink>
</BreadcrumbItem>
<BreadcrumbSeparator />
<BreadcrumbItem>
Expand All @@ -41,55 +41,55 @@ export const Default: Story = {
}

export const CustomSeparatorShowcase: Story = {
render: (args) => (
<Breadcrumb {...args}>
render: () => (
<Breadcrumb>
<BreadcrumbList>
<BreadcrumbItem>
<BreadcrumbLink href='/'>Home</BreadcrumbLink>
<BreadcrumbLink href="/">Home</BreadcrumbLink>
</BreadcrumbItem>
<BreadcrumbSeparator>
<Slash />
</BreadcrumbSeparator>
<BreadcrumbItem>
<BreadcrumbLink href='/components'>Components</BreadcrumbLink>
<BreadcrumbLink href="/components">Components</BreadcrumbLink>
</BreadcrumbItem>
</BreadcrumbList>
</Breadcrumb>
),
}

export const CollapsedShowcase: Story = {
render: (args) => (
<Breadcrumb {...args}>
render: () => (
<Breadcrumb>
<BreadcrumbList>
<BreadcrumbItem>
<BreadcrumbLink href='/'>Home</BreadcrumbLink>
<BreadcrumbLink href="/">Home</BreadcrumbLink>
</BreadcrumbItem>
<BreadcrumbSeparator />
<BreadcrumbItem>
<BreadcrumbEllipsis />
</BreadcrumbItem>
<BreadcrumbSeparator />
<BreadcrumbItem>
<BreadcrumbLink href='/components'>Components</BreadcrumbLink>
<BreadcrumbLink href="/components">Components</BreadcrumbLink>
</BreadcrumbItem>
</BreadcrumbList>
</Breadcrumb>
),
}

export const CustomLinkShowcase: Story = {
render: (args) => (
<Breadcrumb {...args}>
render: () => (
<Breadcrumb>
<BreadcrumbList>
<BreadcrumbItem>
<BreadcrumbLink asChild>
<a href='/'>Home</a>
<a href="/">Home</a>
</BreadcrumbLink>
</BreadcrumbItem>
<BreadcrumbSeparator />
<BreadcrumbItem>
<BreadcrumbLink href='/components'>Components</BreadcrumbLink>
<BreadcrumbLink href="/components">Components</BreadcrumbLink>
</BreadcrumbItem>
</BreadcrumbList>
</Breadcrumb>
Expand Down
43 changes: 43 additions & 0 deletions apps/docs-react/stories/card/card.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
import { Canvas, Meta, Primary, Stories } from '@storybook/blocks'
import * as CardStories from './card.stories'

<Meta of={CardStories} />

# Button

Card component

## Example

```tsx
import {
Card,
CardContent,
CardDescription,
CardFooter,
CardHeader,
CardTitle,
} from '@repo/ui-react/card'

<Card>
<CardHeader>
<CardTitle>Hello World</CardTitle>
<CardDescription>We start new project</CardDescription>
</CardHeader>
<CardContent>
This is the card content. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur nec
odio vel dui euismod fermentum. Curabitur nec odio vel dui euismod fermentum.
</CardContent>
<CardFooter>
<Button>View</Button>
<Button>Accept</Button>
</CardFooter>
</Card>
```

## Preview

<Primary />

<Stories />

92 changes: 92 additions & 0 deletions apps/docs-react/stories/card/card.stories.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
import { Button } from '@repo/ui-react/button'
import {
Card,
CardContent,
CardDescription,
CardFooter,
CardHeader,
CardTitle,
} from '@repo/ui-react/card'
import { Input } from '@repo/ui-react/input'
import { Label } from '@repo/ui-react/label'
import type { Meta, StoryObj } from '@storybook/react'
import * as React from 'react'

const meta: Meta<typeof Card> = {
title: 'Basic Components/Card',
component: Card,
}

export default meta

type Story = StoryObj<typeof meta>

export const Default: Story = {
render: () => (
<Card>
<CardHeader>
<CardTitle>Hello World</CardTitle>
<CardDescription>We start new project</CardDescription>
</CardHeader>
<CardContent>
This is the card content. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur
nec odio vel dui euismod fermentum. Curabitur nec odio vel dui euismod fermentum.
</CardContent>
<CardFooter>
<Button>View</Button>
<Button>Accept</Button>
</CardFooter>
</Card>
),
}

export const AddImageShowcase: Story = {
render: () => (
<Card>
<CardHeader>
<CardTitle>Hello World</CardTitle>
<CardDescription>We start new project</CardDescription>
</CardHeader>
<CardContent>
<img
src="https://images.unsplash.com/photo-1496181133206-80ce9b88a853?q=80&w=500&auto=format&fit=crop"
alt="macbook pro on top of brown table"
/>
<p>
This is the card content. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Curabitur nec odio vel dui euismod fermentum. Curabitur nec odio vel dui euismod
fermentum.
</p>
</CardContent>
<CardFooter>
<Button>View</Button>
<Button>Join</Button>
</CardFooter>
</Card>
),
}

export const FormShowcase: Story = {
render: () => (
<Card>
<CardHeader>
<CardTitle>Account</CardTitle>
<CardDescription>We start new project</CardDescription>
</CardHeader>
<CardContent>
<div className="grid gap-1.5">
<Label htmlFor="email">Email address</Label>
<Input type="email" id="email" />
</div>
<div className="grid gap-1.5">
<Label htmlFor="password">Password</Label>
<Input type="password" id="password" />
</div>
</CardContent>
<CardFooter>
<Button>Signin</Button>
<Button>Signup</Button>
</CardFooter>
</Card>
),
}
4 changes: 2 additions & 2 deletions apps/docs-solid/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
},
"dependencies": {
"@repo/ui-solid": "workspace:*",
"lucide-solid": "^0.473.0",
"lucide-solid": "^0.474.0",
"pathe": "^2.0.2",
"solid-js": "^1.9.4",
"std-env": "^3.8.0"
Expand All @@ -34,7 +34,7 @@
"@storybook/test": "^8.5.1",
"@storybook/theming": "^8.5.1",
"@tailwindcss/vite": "^4.0.0",
"@types/node": "^22.10.8",
"@types/node": "^22.10.10",
"storybook": "^8.5.1",
"storybook-solidjs": "^1.0.0-beta.6",
"storybook-solidjs-vite": "^1.0.0-beta.6",
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"devDependencies": {
"@biomejs/biome": "catalog:",
"npm-check-updates": "^17.1.14",
"turbo": "^2.3.3"
"turbo": "^2.3.4"
},
"packageManager": "[email protected]"
}
8 changes: 4 additions & 4 deletions packages/core-ui/src/styles/card.css.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@ import { type VariantProps, tv } from 'tailwind-variants'

export const cardStyles = tv({
slots: {
base: 'rounded-lg border bg-card text-card-foreground shadow-sm',
header: 'flex flex-col space-y-1.5 p-6',
base: 'rounded-lg border bg-card text-card-foreground shadow-sm max-w-sm',
header: 'flex flex-col space-y-1.5 p-6 pb-0',
title: 'font-semibold leading-none tracking-tight',
description: 'text-muted-foreground text-sm',
content: 'p-6 pt-0',
footer: 'flex items-center p-6 pt-0',
content: 'p-6 space-y-2',
footer: 'flex items-center p-6 pt-0 gap-x-2',
},
})

Expand Down
6 changes: 3 additions & 3 deletions packages/ui-react/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -52,12 +52,12 @@
"react": "^19.0.0"
},
"devDependencies": {
"@ark-ui/react": "^4.9.0",
"@ark-ui/react": "^4.9.1",
"@biomejs/biome": "catalog:",
"@repo/config-typescript": "workspace:*",
"@repo/core-ui": "workspace:*",
"@types/react": "^19.0.7",
"lucide-react": "^0.473.0",
"@types/react": "^19.0.8",
"lucide-react": "^0.474.0",
"tailwind-variants": "^0.3.1",
"tailwindcss": "4.0.0-beta.8",
"typescript": "catalog:"
Expand Down
4 changes: 2 additions & 2 deletions packages/ui-solid/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,11 @@
"solid-js": "^1.9.4"
},
"devDependencies": {
"@ark-ui/solid": "^4.10.0",
"@ark-ui/solid": "^4.10.1",
"@biomejs/biome": "catalog:",
"@repo/config-typescript": "workspace:*",
"@repo/core-ui": "workspace:*",
"lucide-solid": "^0.473.0",
"lucide-solid": "^0.474.0",
"tailwind-variants": "^0.3.1",
"tailwindcss": "4.0.0-beta.8",
"typescript": "catalog:"
Expand Down
Loading

0 comments on commit 39ab178

Please sign in to comment.