Menu

Cookie banner

Consent prompt. 2 layouts.

We use cookies

We use a few cookies to remember your cart. Nothing is shared with advertisers.

Installation

$ npx uix-ui@latest add cookie-banner

This copies the file into components/ui/cookie-banner.tsx in your project. npx shadcn@latest add @uix/cookie-banner works too.

Usage

cookie-banner.tsx
import { CookieBanner } from "@/components/ui/cookie-banner";

<div style={{ width: "100%" }}>
  <CookieBanner layout="bar" onAccept={() => setDone("accept all")} onReject={() => setDone("reject all")} onSettings={() => setDone("custom settings")}>
    We use a few cookies to remember your cart. Nothing is shared with advertisers.
  </CookieBanner>
</div>

Props

PropTypeDefaultDescription
layoutbar | card"bar"
titleReact.ReactNode"We use cookies"
iconReact.ReactNode–Replaces the cookie icon.
acceptLabelReact.ReactNode"Accept all"
rejectLabelReact.ReactNode"Reject all"
settingsLabelReact.ReactNode"Cookie settings"
onAccept() => void–
onReject() => void–
onSettings() => void–

Everything else is passed to the root element, so className, aria-* and event handlers work as usual.

Dependencies

Installed for you by the CLI.

  • class-variance-authority
  • clsx
  • tailwind-merge
  • lib/utils.ts
  • components/ui/icons.tsx
esc

↑↓ to navigate · ↵ to select · esc to close