{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "author": "Lopifi (https://lopifi.com)",
  "categories": [
    "ledger-tables",
    "finance",
    "accounting"
  ],
  "dependencies": [],
  "description": "Selection count + actions, safe-area aware.",
  "files": [
    {
      "content": "\"use client\";\n\nimport { cn } from \"@/lib/ledger/cn\";\nimport { Button } from \"@/components/ledger/button\";\n\nexport interface BulkActionBarProps {\n  /** Names the destruction: \"Delete 42 transactions\", never \"Delete\". */\n  actions: { label: (count: number) => string; onClick: () => void; destructive?: boolean }[];\n  className?: string;\n  count: number;\n  onClear: () => void;\n}\n\n/**\n * Bottom-anchored on phone with safe-area padding, inline on desktop.\n * Occasional, so the 240ms translate + fade is licensed.\n */\nexport function BulkActionBar({ count, actions, onClear, className }: BulkActionBarProps) {\n  if (count === 0) return null;\n  return (\n    <div\n      aria-label={`${count} selected`}\n      className={cn(\n        \"ledger-enter fixed inset-x-4 bottom-4 z-dropdown flex flex-wrap items-center gap-3\",\n        \"rounded-md border border-border bg-surface-raised px-4 py-3 shadow-elevation-3\",\n        \"md:static md:inset-auto md:shadow-none\",\n        className,\n      )}\n      role=\"region\"\n      style={{ marginBottom: \"env(safe-area-inset-bottom)\" }}\n    >\n      <span className=\"numeric text-label font-medium\">{count} selected</span>\n      <div className=\"flex flex-wrap gap-2\">\n        {actions.map((a) => (\n          <Button\n            key={a.label(count)}\n            onClick={a.onClick}\n            size=\"sm\"\n            variant={a.destructive ? \"destructive\" : \"secondary\"}\n          >\n            {a.label(count)}\n          </Button>\n        ))}\n      </div>\n      <Button className=\"ml-auto\" onClick={onClear} size=\"sm\" variant=\"ghost\">\n        Clear selection\n      </Button>\n    </div>\n  );\n}\n",
      "path": "components/ledger/bulk-action-bar.tsx",
      "target": "components/ledger/bulk-action-bar.tsx",
      "type": "registry:component"
    }
  ],
  "name": "bulk-action-bar",
  "registryDependencies": [
    "@lopifi/theme",
    "@lopifi/button",
    "@lopifi/cn"
  ],
  "title": "BulkActionBar",
  "type": "registry:component"
}
