{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "button",
  "title": "Button",
  "description": "Hard offset shadow that collapses on press, with the button moving into its shadow.",
  "registryDependencies": [
    "https://spotcheckui.com/r/spotcheck-base.json"
  ],
  "files": [
    {
      "path": "registry/spotcheck/components/spotcheck/button.tsx",
      "content": "import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst BASE =\n  \"spotcheck-focus border-ink relative inline-flex cursor-pointer items-center gap-2 border-(length:--rule) px-4 py-2.5 font-(family-name:--f-mono) text-[12.5px] font-semibold tracking-[.06em] uppercase shadow-[4px_4px_0_var(--ink)] transition-[translate,box-shadow] duration-75 enabled:active:translate-x-1 enabled:active:translate-y-1 enabled:active:shadow-none disabled:cursor-not-allowed disabled:opacity-45 motion-reduce:transition-none\"\n\nconst VARIANTS = {\n  outline: \"bg-paper text-ink\",\n  ink: \"bg-ink text-paper\",\n  accent: \"bg-accent-ink text-on-accent\",\n  ghost:\n    \"text-ink enabled:active:bg-wash border-dashed bg-transparent shadow-none enabled:active:translate-x-0 enabled:active:translate-y-0\",\n}\n\nexport type ButtonVariant = keyof typeof VARIANTS\n\n/** The button's classes, for styling a link or another element as a button. */\nexport function buttonClass(variant: ButtonVariant = \"outline\", className?: string) {\n  return cn(BASE, VARIANTS[variant], className)\n}\n\ntype ButtonProps = React.ComponentProps<\"button\"> & {\n  variant?: ButtonVariant\n}\n\nexport function Button({ variant = \"outline\", className, type = \"button\", ...props }: ButtonProps) {\n  return <button type={type} className={buttonClass(variant, className)} {...props} />\n}\n",
      "type": "registry:component"
    }
  ],
  "categories": [
    "core"
  ],
  "type": "registry:component"
}