{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "ds-footer-bottom-bar",
  "title": "Footer Bottom Bar",
  "description": "Faixa inferior atômica com copyright dinâmico, links legais e ações acessórias.",
  "dependencies": [
    "class-variance-authority"
  ],
  "registryDependencies": [
    "@lema-ds/ui-i18n"
  ],
  "files": [
    {
      "path": "components/ds/ds-footer-bottom-bar.tsx",
      "content": "import * as React from \"react\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\nimport { UI_I18N, type UILocale } from \"@/lib/ui-i18n\"\n\n// ── Types ──\n\nexport interface LegalLinkItem {\n  label: string\n  href: string\n}\n\nexport interface FooterBottomBarProps\n  extends\n    React.HTMLAttributes<HTMLDivElement>,\n    VariantProps<typeof footerBottomBarVariants> {\n  brandName?: string\n  year?: number | string\n  legalLinks?: LegalLinkItem[]\n  locale?: UILocale\n}\n\n// ── Variants ──\n\nexport const footerBottomBarVariants = cva(\n  \"flex w-full flex-col gap-4 border-t border-border pt-6 text-xs text-muted-foreground sm:flex-row sm:items-center sm:justify-between\",\n  {\n    variants: {\n      spacing: {\n        compact: \"pt-4\",\n        normal: \"pt-6\",\n        relaxed: \"pt-8\",\n      },\n    },\n    defaultVariants: {\n      spacing: \"normal\",\n    },\n  }\n)\n\n// ── Component ──\n\nexport const FooterBottomBar = React.forwardRef<\n  HTMLDivElement,\n  FooterBottomBarProps\n>(\n  (\n    {\n      brandName = \"LEMA\",\n      year = new Date().getFullYear(),\n      legalLinks,\n      locale = \"en-US\",\n      spacing = \"normal\",\n      children,\n      className,\n      ...props\n    },\n    ref\n  ) => {\n    const t = UI_I18N[locale].footer\n\n    const links = legalLinks || [\n      { label: t.privacyPolicy, href: \"#\" },\n      { label: t.termsOfService, href: \"#\" },\n      { label: t.cookiePolicy, href: \"#\" },\n    ]\n\n    return (\n      <div\n        ref={ref}\n        className={cn(footerBottomBarVariants({ spacing }), className)}\n        {...props}\n      >\n        <div className=\"flex flex-wrap items-center gap-x-4 gap-y-2\">\n          <p>\n            © {year} {brandName}. {t.allRightsReserved}\n          </p>\n          {links.length > 0 && (\n            <nav\n              aria-label=\"Links legais\"\n              className=\"flex flex-wrap items-center gap-x-3 gap-y-1\"\n            >\n              {links.map((link, idx) => (\n                <a\n                  key={`${link.label}-${idx}`}\n                  href={link.href}\n                  className=\"underline-offset-4 transition-colors hover:text-foreground hover:underline\"\n                >\n                  {link.label}\n                </a>\n              ))}\n            </nav>\n          )}\n        </div>\n\n        {children && (\n          <div className=\"flex flex-wrap items-center gap-3\">{children}</div>\n        )}\n      </div>\n    )\n  }\n)\nFooterBottomBar.displayName = \"FooterBottomBar\"\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}
