{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "timeline", "title": "Timeline", "description": "Vertical timeline with colored icon markers, time labels, headers, body content, and footer actions.", "registryDependencies": [ "https://raw.githubusercontent.com/dnachavez/adminlte-next/master/public/r/adminlte-theme.json", "https://raw.githubusercontent.com/dnachavez/adminlte-next/master/public/r/adminlte-badge.json" ], "files": [ { "path": "registry/new-york/timeline/components/timeline.tsx", "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { cn } from \"@/registry/new-york/adminlte-theme/lib/cn\"\n\n/* ---------------------------------------------------------------------------\n * Timeline\n * -------------------------------------------------------------------------- */\n\ninterface TimelineProps extends React.HTMLAttributes {}\n\nconst Timeline = React.forwardRef(\n ({ className, children, ...props }, ref) => {\n return (\n \n {children}\n \n )\n }\n)\nTimeline.displayName = \"Timeline\"\n\n/* ---------------------------------------------------------------------------\n * TimelineLabel\n * -------------------------------------------------------------------------- */\n\ninterface TimelineLabelProps extends React.HTMLAttributes {\n color?: string\n}\n\nconst TimelineLabel = React.forwardRef(\n ({ className, color = \"bg-[#3c8dbc]\", children, ...props }, ref) => {\n return (\n \n \n {children}\n \n \n )\n }\n)\nTimelineLabel.displayName = \"TimelineLabel\"\n\n/* ---------------------------------------------------------------------------\n * TimelineItem\n * -------------------------------------------------------------------------- */\n\ninterface TimelineItemProps extends React.HTMLAttributes {\n icon?: React.ReactNode\n iconColor?: string\n time?: string\n header?: React.ReactNode\n footer?: React.ReactNode\n}\n\nconst TimelineItem = React.forwardRef(\n (\n {\n className,\n icon,\n iconColor = \"bg-[#d2d6de]\",\n time,\n header,\n footer,\n children,\n ...props\n },\n ref\n ) => {\n return (\n \n {/* Time marker icon */}\n \n {icon}\n \n\n {/* Content */}\n
\n {/* Time stamp */}\n {time && (\n \n {time}\n \n )}\n\n {/* Header */}\n {header && (\n

\n {header}\n

\n )}\n\n {/* Body */}\n {children && (\n
{children}
\n )}\n\n {/* Footer */}\n {footer && (\n
\n {footer}\n
\n )}\n
\n \n )\n }\n)\nTimelineItem.displayName = \"TimelineItem\"\n\nexport { Timeline, TimelineItem, TimelineLabel }\nexport type { TimelineProps, TimelineItemProps, TimelineLabelProps }\n", "type": "registry:component" } ], "type": "registry:component" }