{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "status-page-footer",
  "title": "Status Page Footer",
  "description": "Presentation-only footer chrome (powered-by, action cluster). Embed/white-label gating, switchers, and tRPC fetch stay in the wrapping app",
  "registryDependencies": [
    "https://openstatus.dev/r/status-i18n.json"
  ],
  "files": [
    {
      "path": "src/components/blocks/status-page-footer.tsx",
      "content": "\"use client\";\n\nimport { useStatusBlocksLabels } from \"@/components/blocks/status-i18n\";\nimport { cn } from \"@/lib/utils\";\n\n/**\n * StatusPageFooter — presentation-only footer chrome.\n *\n * Compose with `StatusPageFooterContent`, `StatusPagePoweredBy`, and\n * `StatusPageFooterActions`. Embed / white-label gating, locale + theme\n * switchers, and the tRPC fetch all stay in the wrapping app.\n */\nexport function StatusPageFooter({\n  className,\n  ...props\n}: React.ComponentProps<\"footer\">) {\n  return (\n    <footer\n      data-slot=\"status-page-footer\"\n      className={cn(className)}\n      {...props}\n    />\n  );\n}\n\nexport function StatusPageFooterContent({\n  className,\n  ...props\n}: React.ComponentProps<\"div\">) {\n  return (\n    <div\n      data-slot=\"status-page-footer-content\"\n      className={cn(\n        \"mx-auto flex max-w-2xl items-center justify-between gap-4 px-3 py-2\",\n        className,\n      )}\n      {...props}\n    />\n  );\n}\n\n/**\n * StatusPagePoweredBy — \"powered by …\" line. The link element (with href,\n * target, utm params, app-specific Link wrapper, etc.) is supplied as\n * children so the block stays routing-agnostic.\n */\nexport function StatusPagePoweredBy({\n  children,\n  className,\n  ...props\n}: React.ComponentProps<\"p\">) {\n  const labels = useStatusBlocksLabels();\n  return (\n    <p\n      data-slot=\"status-page-powered-by\"\n      className={cn(\n        \"text-muted-foreground font-mono text-xs leading-none sm:text-sm\",\n        className,\n      )}\n      {...props}\n    >\n      {labels.poweredBy} {children}\n    </p>\n  );\n}\n\n/**\n * StatusPageFooterActions — right-side cluster (last-updated, locale,\n * theme). Pass actions as children; the block is layout-only.\n */\nexport function StatusPageFooterActions({\n  className,\n  ...props\n}: React.ComponentProps<\"div\">) {\n  return (\n    <div\n      data-slot=\"status-page-footer-actions\"\n      className={cn(\"flex items-center gap-2\", className)}\n      {...props}\n    />\n  );\n}\n",
      "type": "registry:ui",
      "target": "components/blocks/status-page-footer.tsx"
    }
  ],
  "type": "registry:block"
}