@@ -5,8 +5,7 @@ import * as AccordionPrimitive from '@radix-ui/react-accordion';
55import { ChevronDown } from 'lucide-react' ;
66
77import { cn } from '@/lib/utils' ;
8-
9- const Accordion = AccordionPrimitive . Root ;
8+ import Markdown from 'react-markdown' ;
109
1110const AccordionItem = React . forwardRef <
1211 React . ElementRef < typeof AccordionPrimitive . Item > ,
@@ -28,7 +27,7 @@ const AccordionTrigger = React.forwardRef<
2827 < AccordionPrimitive . Trigger
2928 ref = { ref }
3029 className = { cn (
31- 'flex flex-1 items-center justify-between pb-4 text-md font-semibold transition-all hover:underline text-left [&[data-state=open]>svg]:rotate-180' ,
30+ 'flex flex-1 items-center justify-between p-2 rounded-lg text-md bg-neutral-500 text-white transition-all hover:underline text-left [&[data-state=open]>svg]:rotate-180' ,
3231 className
3332 ) }
3433 { ...props }
@@ -54,4 +53,29 @@ const AccordionContent = React.forwardRef<
5453) ) ;
5554AccordionContent . displayName = AccordionPrimitive . Content . displayName ;
5655
57- export { Accordion , AccordionItem , AccordionTrigger , AccordionContent } ;
56+ export interface AccordionProps {
57+ title : string ;
58+ content : string ;
59+ }
60+
61+ export const Accordion = ( props : AccordionProps ) => (
62+ < >
63+ < div className = "hideonprint" >
64+ < AccordionPrimitive . Root type = "single" collapsible >
65+ < AccordionItem value = "item-1" >
66+ < AccordionTrigger > { props . title } </ AccordionTrigger >
67+ < AccordionContent >
68+ < Markdown className = "mt-2 text-gray-800 markdown" >
69+ { props . content }
70+ </ Markdown >
71+ </ AccordionContent >
72+ </ AccordionItem >
73+ </ AccordionPrimitive . Root >
74+ </ div >
75+ < div className = "hidden showonprint" >
76+ < Markdown className = "text-gray-800 markdown" >
77+ { props . content }
78+ </ Markdown >
79+ </ div >
80+ </ >
81+ ) ;
0 commit comments