Skip to content

Commit bbd9597

Browse files
committed
chore: update with suggested changes
1 parent ed160a8 commit bbd9597

File tree

2 files changed

+45
-33
lines changed

2 files changed

+45
-33
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,37 @@
11
import { Meta, StoryObj } from "@storybook/react"
22

3-
import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from "."
3+
import {
4+
FaqAccordion,
5+
FaqAccordionContent,
6+
FaqAccordionItem,
7+
FaqAccordionTrigger,
8+
} from "."
49

510
const meta = {
611
title: "FaqAccordion",
7-
component: Accordion,
12+
component: FaqAccordion,
813
decorators: [
914
(Story) => (
1015
<div className="">
1116
<Story />
1217
</div>
1318
),
1419
],
15-
} satisfies Meta<typeof Accordion>
20+
} satisfies Meta<typeof FaqAccordion>
1621

1722
export default meta
1823

19-
export const FaqAccordion: StoryObj = {
24+
export const FaqAccordionStory: StoryObj = {
2025
render: () => (
21-
<Accordion type="single" collapsible>
22-
<AccordionItem value="item-1">
23-
<AccordionTrigger>
26+
<FaqAccordion type="single" collapsible>
27+
<FaqAccordionItem value="item-1">
28+
<FaqAccordionTrigger>
2429
<h2 className="text-start text-base md:text-xl">
2530
Why is there no &apos;official&apos; Ethereum L2?
2631
</h2>
27-
</AccordionTrigger>
32+
</FaqAccordionTrigger>
2833

29-
<AccordionContent>
34+
<FaqAccordionContent>
3035
Just as there is no &apos;official&apos; Ethereum client, there is no
3136
&apos;official&apos; Ethereum layer 2. Ethereum is permissionless -
3237
technically anyone can create a layer 2! Multiple teams will implement
@@ -35,15 +40,15 @@ export const FaqAccordion: StoryObj = {
3540
use cases. Much like we have multiple Ethereum clients developed by
3641
multiple teams in order to have diversity in the network, this too
3742
will be how layer 2s develop in the future.
38-
</AccordionContent>
39-
</AccordionItem>
40-
<AccordionItem value="item-2">
41-
<AccordionTrigger>
43+
</FaqAccordionContent>
44+
</FaqAccordionItem>
45+
<FaqAccordionItem value="item-2">
46+
<FaqAccordionTrigger>
4247
<h2 className="text-start text-base md:text-xl">
4348
Why is there no &apos;official&apos; Ethereum L2?
4449
</h2>
45-
</AccordionTrigger>
46-
<AccordionContent>
50+
</FaqAccordionTrigger>
51+
<FaqAccordionContent>
4752
Just as there is no &apos;official&apos; Ethereum client, there is no
4853
&apos;official&apos; Ethereum layer 2. Ethereum is permissionless -
4954
technically anyone can create a layer 2! Multiple teams will implement
@@ -52,8 +57,8 @@ export const FaqAccordion: StoryObj = {
5257
use cases. Much like we have multiple Ethereum clients developed by
5358
multiple teams in order to have diversity in the network, this too
5459
will be how layer 2s develop in the future.
55-
</AccordionContent>
56-
</AccordionItem>
57-
</Accordion>
60+
</FaqAccordionContent>
61+
</FaqAccordionItem>
62+
</FaqAccordion>
5863
),
5964
}

src/components/FaqAccordian/index.tsx renamed to src/components/FaqAccordion/index.tsx

Lines changed: 22 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,15 @@ import { cn } from "@/lib/utils/cn"
66

77
import * as RootAccordion from "../../../tailwind/ui/accordion"
88

9-
const AccordionTrigger = React.forwardRef<
9+
const FaqAccordionTrigger = React.forwardRef<
1010
React.ElementRef<typeof AccordionPrimitive.Trigger>,
1111
React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Trigger>
1212
>(({ className, children, ...props }, ref) => (
13-
// p-4 hover:bg-background-highlight
14-
<AccordionPrimitive.Header className="flex w-full">
13+
<AccordionPrimitive.Header>
1514
<AccordionPrimitive.Trigger
1615
ref={ref}
1716
className={cn(
18-
"px-4 py-3 md:px-8 md:py-6",
17+
"w-full px-4 py-3 md:px-8 md:py-6",
1918
"flex flex-1 items-center justify-between gap-2",
2019
"border-t border-body-light",
2120
"focus-visible:outline-1 focus-visible:-outline-offset-1 focus-visible:outline-primary-hover",
@@ -38,17 +37,20 @@ const AccordionTrigger = React.forwardRef<
3837
</AccordionPrimitive.Trigger>
3938
</AccordionPrimitive.Header>
4039
))
41-
AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName
40+
FaqAccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName
4241

43-
// TODO: Prop types
44-
const Accordion = ({ children, ...props }) => {
42+
const FaqAccordion = ({
43+
children,
44+
type,
45+
...props
46+
}: AccordionPrimitive.AccordionSingleProps) => {
4547
return (
4648
<RootAccordion.Accordion
47-
type="single"
49+
type={type}
4850
collapsible
4951
className={cn(
5052
"rounded border border-body-light first:border-t-0",
51-
"overflow-hidden bg-background",
53+
"max-w-4xl overflow-hidden bg-background",
5254
props?.className
5355
)}
5456
{...props}
@@ -57,7 +59,7 @@ const Accordion = ({ children, ...props }) => {
5759
</RootAccordion.Accordion>
5860
)
5961
}
60-
const AccordionItem = React.forwardRef<
62+
const FaqAccordionItem = React.forwardRef<
6163
React.ElementRef<typeof AccordionPrimitive.Item>,
6264
React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Item>
6365
>(({ className, ...props }, ref) => (
@@ -67,16 +69,16 @@ const AccordionItem = React.forwardRef<
6769
{...props}
6870
/>
6971
))
70-
AccordionItem.displayName = "AccordionItem"
72+
FaqAccordionItem.displayName = "AccordionItem"
7173

72-
const AccordionContent = React.forwardRef<
74+
const FaqAccordionContent = React.forwardRef<
7375
React.ElementRef<typeof AccordionPrimitive.Content>,
7476
React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Content>
7577
>(({ className, children, ...props }, ref) => (
7678
<AccordionPrimitive.Content
7779
ref={ref}
7880
className={cn(
79-
"overflow-hidden px-4 text-sm md:px-8",
81+
"w-full overflow-hidden px-4 text-sm md:px-8",
8082
"transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down"
8183
)}
8284
{...props}
@@ -87,6 +89,11 @@ const AccordionContent = React.forwardRef<
8789
</AccordionPrimitive.Content>
8890
))
8991

90-
AccordionContent.displayName = AccordionPrimitive.Content.displayName
92+
FaqAccordionContent.displayName = AccordionPrimitive.Content.displayName
9193

92-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger }
94+
export {
95+
FaqAccordion,
96+
FaqAccordionContent,
97+
FaqAccordionItem,
98+
FaqAccordionTrigger,
99+
}

0 commit comments

Comments
 (0)