{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "calendar",
  "title": "Pixelact Calendar",
  "description": "A simple calendar component.",
  "registryDependencies": [
    "calendar"
  ],
  "files": [
    {
      "path": "components/ui/pixelact-ui/calendar.tsx",
      "content": "import { type VariantProps, cva } from \"class-variance-authority\";\nimport { DayPicker } from \"react-day-picker\";\n\nimport { cn } from \"@/lib/utils\";\n\nimport { Calendar as ShadcnCalendar } from \"@/components/ui/calendar\";\n\nimport { buttonVariants } from \"@/components/ui/button\";\nimport \"@/components/ui/pixelact-ui/styles/styles.css\";\nimport { ComponentProps } from \"react\";\n\nconst calendarVariants = cva(\"bg-card text-card-foreground\", {\n  variants: {\n    font: {\n      normal: \"\",\n      pixel: \"pixel-font\",\n    },\n  },\n  defaultVariants: {\n    font: \"pixel\",\n  },\n});\n\nexport type CalendarProps = ComponentProps<typeof DayPicker> &\n  VariantProps<typeof calendarVariants>;\n\nfunction Calendar({ className, classNames, font, ...props }: CalendarProps) {\n  const hasDropdowns = props.captionLayout === \"dropdown\";\n  return (\n    <ShadcnCalendar\n      className={cn(\n        \"border-none shadow-(--pixel-box-shadow) box-shadow-margin\",\n        calendarVariants({\n          className,\n          font,\n        })\n      )}\n      classNames={{\n        today: cn(\"bg-foreground/10\"),\n        nav_button: cn(\n          buttonVariants({ variant: \"outline\" }),\n          \"size-7 bg-transparent p-0 flex items-center justify-center hover:opacity-50\"\n        ),\n        day_button: cn(\n          buttonVariants({ variant: \"ghost\" }),\n          \"h-10 rounded-none font-sm aria-selected:opacity-100\"\n        ),\n        day: cn(\"relative rounded-none group/day select-none\"),\n        caption_label: `flex gap-2 p-1  ${\n          hasDropdowns ? \"shadow-(--pixel-box-shadow) box-shadow-margin\" : \"\"\n        }`,\n        dropdown_root: cn(\"relative\"),\n        months_dropdown: cn(\"text-foreground p-2\"),\n        years_dropdown: cn(\"text-foreground p-2\"),\n        ...classNames,\n      }}\n      components={{\n        Chevron: ({ className, orientation, ...props }) => {\n          if (orientation === \"left\") {\n            return (\n              <svg\n                xmlns=\"http://www.w3.org/2000/svg\"\n                width=\"32\"\n                height=\"32\"\n                viewBox=\"0 0 24 24\"\n                className={cn(\"size-6\", className)}\n                {...props}\n              >\n                <path\n                  className=\"fill-foreground\"\n                  d=\"M16 5v2h-2V5zm-4 4V7h2v2zm-2 2V9h2v2zm0 2H8v-2h2zm2 2v-2h-2v2zm0 0h2v2h-2zm4 4v-2h-2v2z\"\n                />\n              </svg>\n            );\n          }\n\n          if (orientation === \"right\") {\n            return (\n              <svg\n                xmlns=\"http://www.w3.org/2000/svg\"\n                width=\"32\"\n                height=\"32\"\n                viewBox=\"0 0 24 24\"\n                className={cn(\"size-5\", className)}\n                {...props}\n              >\n                <path\n                  className=\"fill-foreground\"\n                  d=\"M8 5v2h2V5zm4 4V7h-2v2zm2 2V9h-2v2zm0 2h2v-2h-2zm-2 2v-2h2v2zm0 0h-2v2h2zm-4 4v-2h2v2z\"\n                />\n              </svg>\n            );\n          }\n\n          return (\n            <svg\n              xmlns=\"http://www.w3.org/2000/svg\"\n              width=\"32\"\n              height=\"32\"\n              viewBox=\"0 0 24 24\"\n              className={cn(\"size-6\", className)}\n              {...props}\n            >\n              <path\n                className=\"fill-foreground\"\n                d=\"M7 8H5v2h2v2h2v2h2v2h2v-2h2v-2h2v-2h2V8h-2v2h-2v2h-2v2h-2v-2H9v-2H7z\"\n              />\n            </svg>\n          );\n        },\n      }}\n      {...props}\n    />\n  );\n}\n\nexport { Calendar };\n",
      "type": "registry:component",
      "target": "components/ui/pixelact-ui/calendar.tsx"
    },
    {
      "path": "components/ui/pixelact-ui/styles/styles.css",
      "content": "@import url(\"https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap\");\n\n:root {\n  --box-shadow-width: 4px;\n  --pixel-box-shadow: calc(-1 * (var(--box-shadow-width))) 0 0 0 black,\n    var(--box-shadow-width) 0 0 0 black, 0 var(--box-shadow-width) 0 0 black,\n    0 calc(-1 * (var(--box-shadow-width))) 0 0 black;\n  --pixel-box-shadow-destructive: calc(-1 * (var(--box-shadow-width))) 0 0 0\n      var(--destructive),\n    var(--box-shadow-width) 0 0 0 var(--destructive),\n    0 var(--box-shadow-width) 0 0 var(--destructive),\n    0 calc(-1 * (var(--box-shadow-width))) 0 0 var(--destructive);\n  --default-inner-border-color: rgb(200, 200, 200);\n}\n\n.dark {\n  --pixel-box-shadow: calc(-1 * (var(--box-shadow-width))) 0 0 0 var(--ring),\n    var(--box-shadow-width) 0 0 0 var(--ring),\n    0 var(--box-shadow-width) 0 0 var(--ring),\n    0 calc(-1 * (var(--box-shadow-width))) 0 0 var(--ring);\n}\n\n.pixel-font {\n  font-family: \"Press Start 2P\", system-ui, -apple-system, sans-serif;\n  line-height: 1.5;\n  letter-spacing: 0.5px;\n}\n\n.box-shadow-margin {\n  margin: var(--box-shadow-width);\n}\n",
      "type": "registry:style",
      "target": "components/ui/pixelact-ui/styles/styles.css"
    }
  ],
  "type": "registry:component"
}