{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "typography",
  "title": "Typography",
  "description": "A single text component that renders headings, paragraphs and other text variants with matching styles.",
  "dependencies": [
    "class-variance-authority"
  ],
  "registryDependencies": [
    "https://ui.ask.mir-ai.it/r/utils.json"
  ],
  "files": [
    {
      "path": "src/registry/ask-ui/components/ui/typography/typography.tsx",
      "content": "import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/registry/ask-ui/lib/utils\";\n\nconst typographyVariants = cva(\"\", {\n  variants: {\n    variant: {\n      h1: \"scroll-m-20 text-center text-4xl font-extrabold text-balance not-first:mt-10\",\n      h2: \"scroll-m-20 border-b pb-2 text-3xl font-semibold not-first:mt-10\",\n      h3: \"scroll-m-20 text-2xl font-semibold not-first:mt-8\",\n      h4: \"scroll-m-20 text-xl font-semibold\",\n      h5: \"scroll-m-20 text-lg font-semibold\",\n      h6: \"scroll-m-20 font-semibold\",\n      bold: \"font-semibold\",\n      strong: \"font-semibold underline\",\n      inserted: \"underline\",\n      deleted: \"line-through\",\n      italic: \"italic\",\n      mark: \"bg-primary text-primary-foreground\",\n      code: \"relative rounded bg-muted/50 px-[0.3rem] py-[0.2rem] text-sm font-mono font-semibold\",\n      p: \"not-first:mt-6\",\n      small: \"text-sm leading-none font-medium\",\n      muted: \"text-sm text-muted-foreground\",\n      blockquote: \"border-l-2 pl-6 italic not-first:mt-6\",\n    },\n  },\n  defaultVariants: {\n    variant: \"p\",\n  },\n});\n\nconst variantElementMap: Record<\n  NonNullable<VariantProps<typeof typographyVariants>[\"variant\"]>,\n  keyof React.JSX.IntrinsicElements\n> = {\n  h1: \"h1\",\n  h2: \"h2\",\n  h3: \"h3\",\n  h4: \"h4\",\n  h5: \"h5\",\n  h6: \"h6\",\n  bold: \"b\",\n  strong: \"strong\",\n  inserted: \"ins\",\n  deleted: \"del\",\n  italic: \"i\",\n  mark: \"mark\",\n  code: \"code\",\n  p: \"p\",\n  small: \"small\",\n  muted: \"p\",\n  blockquote: \"blockquote\",\n};\n\ntype TypographyProps = React.HTMLAttributes<HTMLElement> &\n  VariantProps<typeof typographyVariants>;\n\n/**\n * A simple styled typography component\n */\nconst Typography = React.forwardRef<HTMLElement, TypographyProps>(\n  ({ className, variant, ...props }, ref) => {\n    const Component = variantElementMap[variant ?? \"p\"];\n\n    return React.createElement(Component, {\n      ref,\n      className: cn(typographyVariants({ variant, className })),\n      \"data-slot\": \"typography\",\n      ...props,\n    });\n  },\n);\nTypography.displayName = \"Typography\";\n\nexport { Typography };\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}