{ "$schema": "https://blode.co/ui/schema/registry-item.json", "name": "marker", "title": "Marker", "author": "Matthew Blode", "description": "A compact inline status line for activity feeds and transcripts, with optional icon, separator, and border variants.", "dependencies": ["@base-ui/react"], "files": [ { "path": "ui/marker.tsx", "content": "import { mergeProps } from \"@base-ui/react/merge-props\";\nimport { useRender } from \"@base-ui/react/use-render\";\nimport { cva } from \"class-variance-authority\";\nimport type { VariantProps } from \"class-variance-authority\";\nimport type * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst markerVariants = cva(\n \"group/marker relative flex min-h-4 w-full items-center gap-2 text-left text-muted-foreground text-sm [a]:underline [a]:underline-offset-3 [a]:hover:text-foreground [&_svg:not([class*='size-'])]:size-4\",\n {\n variants: {\n variant: {\n border: \"border-border border-b pb-2\",\n default: \"\",\n separator:\n \"before:mr-1 before:h-px before:min-w-0 before:flex-1 before:bg-border after:ml-1 after:h-px after:min-w-0 after:flex-1 after:bg-border\",\n },\n },\n },\n);\n\nconst Marker = ({\n className,\n variant = \"default\",\n render,\n ...props\n}: useRender.ComponentProps<\"div\"> & VariantProps) =>\n useRender({\n defaultTagName: \"div\",\n props: mergeProps<\"div\">(\n {\n className: cn(markerVariants({ className, variant })),\n },\n props,\n ),\n render,\n state: {\n slot: \"marker\",\n variant,\n },\n });\n\nconst MarkerIcon = ({ className, ...props }: React.ComponentProps<\"span\">) => (\n \n);\n\nconst MarkerContent = ({ className, ...props }: React.ComponentProps<\"span\">) => (\n \n);\n\nexport { Marker, MarkerIcon, MarkerContent, markerVariants };\n", "type": "registry:ui", "target": "" } ], "type": "registry:ui" }