@caprail-dev/consent 0.1.2 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -11
- package/dist/consent-banner.d.ts +7 -1
- package/dist/consent-banner.d.ts.map +1 -1
- package/dist/consent-banner.js +15 -10
- package/dist/consent-banner.js.map +1 -1
- package/dist/consent-provider.d.ts +1 -1
- package/dist/consent-provider.d.ts.map +1 -1
- package/dist/consent-provider.js +2 -2
- package/dist/consent-provider.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/types.d.ts +33 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/ui/button.d.ts.map +1 -1
- package/dist/ui/button.js +4 -4
- package/dist/ui/button.js.map +1 -1
- package/dist/ui/dialog.d.ts.map +1 -1
- package/dist/ui/dialog.js +7 -8
- package/dist/ui/dialog.js.map +1 -1
- package/dist/ui/switch.d.ts.map +1 -1
- package/dist/ui/switch.js +4 -5
- package/dist/ui/switch.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -6,9 +6,9 @@ to pair with [`@caprail-dev/analytics`](https://www.npmjs.com/package/@caprail-d
|
|
|
6
6
|
|
|
7
7
|
- **Consent matrix as state** — `useConsent()` gives any component the live
|
|
8
8
|
per-category grants and the actions to change them.
|
|
9
|
-
- **
|
|
10
|
-
(
|
|
11
|
-
|
|
9
|
+
- **Tailwind, zero theme setup** — styled with Tailwind's default palette
|
|
10
|
+
(zinc), so it looks polished out of the box in any Tailwind project — no Shadcn
|
|
11
|
+
tokens required. Override any color with `className` / `classNames`.
|
|
12
12
|
- **Region-aware** — pass the visitor's country and it switches between opt-in
|
|
13
13
|
(EEA/UK/CH/BR), opt-out (US-CA, with a "Do Not Sell/Share" link), and notice.
|
|
14
14
|
- **Mobile-first** — bottom-anchored, stacked buttons that go inline on `sm:`,
|
|
@@ -24,15 +24,12 @@ bun add @caprail-dev/consent
|
|
|
24
24
|
bun add react react-dom
|
|
25
25
|
```
|
|
26
26
|
|
|
27
|
-
## Setup (
|
|
27
|
+
## Setup (one required step)
|
|
28
28
|
|
|
29
|
-
**
|
|
30
|
-
|
|
31
|
-
`
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
**2. Let Tailwind scan the package.** Tailwind v4 does not scan `node_modules`
|
|
35
|
-
by default, so add this to the CSS file where you import Tailwind:
|
|
29
|
+
**Let Tailwind scan the package.** The components are styled with Tailwind's
|
|
30
|
+
default palette, so there are no tokens to define — but Tailwind v4 does not scan
|
|
31
|
+
`node_modules` by default, so it won't emit those utility classes unless you
|
|
32
|
+
point it at the package. Add this to the CSS file where you import Tailwind:
|
|
36
33
|
|
|
37
34
|
```css
|
|
38
35
|
@import "tailwindcss";
|
package/dist/consent-banner.d.ts
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
|
|
2
|
+
import type { ConsentBannerClassNames } from "./types";
|
|
3
|
+
export declare function ConsentBanner({ className, classNames, }?: {
|
|
4
|
+
/** Convenience override merged onto the card (same target as `classNames.card`). */
|
|
5
|
+
className?: string;
|
|
6
|
+
/** Per-slot class overrides, each merged onto that slot's defaults. */
|
|
7
|
+
classNames?: ConsentBannerClassNames;
|
|
8
|
+
}): React.JSX.Element | null;
|
|
3
9
|
//# sourceMappingURL=consent-banner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consent-banner.d.ts","sourceRoot":"","sources":["../src/consent-banner.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"consent-banner.d.ts","sourceRoot":"","sources":["../src/consent-banner.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,OAAO,KAAK,EAEV,uBAAuB,EAGxB,MAAM,SAAS,CAAC;AAmBjB,wBAAgB,aAAa,CAAC,EAC5B,SAAS,EACT,UAAU,GACX,GAAE;IACD,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,UAAU,CAAC,EAAE,uBAAuB,CAAC;CACjC,4BA0GL"}
|
package/dist/consent-banner.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
3
|
import * as React from "react";
|
|
4
|
+
import { cn } from "./cn";
|
|
4
5
|
import { useConsentContext } from "./consent-provider";
|
|
5
6
|
import { Button } from "./ui/button";
|
|
6
7
|
import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle, } from "./ui/dialog";
|
|
@@ -11,18 +12,22 @@ import { Switch } from "./ui/switch";
|
|
|
11
12
|
// is needed and the visitor hasn't decided. Mobile-first: stacked buttons that
|
|
12
13
|
// go inline on `sm:`, a safe-area inset for notch devices, and reduced-motion
|
|
13
14
|
// support. The provider renders it; it can also be dropped in standalone.
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
//
|
|
16
|
+
// Styling is theme-token-driven (so it inherits the host's Shadcn theme), and
|
|
17
|
+
// every slot takes a `className` override via `classNames` — each is merged with
|
|
18
|
+
// `cn()` so a consumer's class wins on conflict but the untouched defaults stay.
|
|
19
|
+
// No custom keyframes / injected <style>: an entrance animation, if wanted, is a
|
|
20
|
+
// consumer's `classNames.root` override (e.g. their `animate-in` plugin classes).
|
|
16
21
|
/** Quiet muted text link, shared by the Manage button and the Privacy link. */
|
|
17
|
-
const LINK_CLASS = "text-
|
|
18
|
-
export function ConsentBanner() {
|
|
22
|
+
const LINK_CLASS = "text-zinc-500 hover:text-zinc-900 text-xs underline-offset-2 transition-colors hover:underline";
|
|
23
|
+
export function ConsentBanner({ className, classNames, } = {}) {
|
|
19
24
|
const { showBanner, mode, categories, categoriesInUse, acceptAll, rejectAll, privacyUrl, } = useConsentContext();
|
|
20
25
|
const [manageOpen, setManageOpen] = React.useState(false);
|
|
21
26
|
if (!showBanner)
|
|
22
27
|
return null;
|
|
23
|
-
return (_jsxs(_Fragment, { children: [_jsx("
|
|
28
|
+
return (_jsxs(_Fragment, { children: [_jsx("div", { role: "dialog", "aria-label": "Cookie consent", className: cn("fixed inset-x-0 bottom-0 z-50 flex justify-center p-3 pb-[calc(env(safe-area-inset-bottom)_+_0.75rem)] sm:p-4", classNames?.root), children: _jsxs("div", { className: cn("border-zinc-200 bg-white flex w-full max-w-2xl flex-col gap-4 rounded-2xl border p-4 shadow-lg sm:p-5", className, classNames?.card), children: [_jsxs("div", { className: "flex flex-col gap-1", children: [_jsx("p", { className: cn("text-zinc-900 text-sm font-medium", classNames?.title), children: "We value your privacy" }), _jsx("p", { className: cn("text-zinc-600 text-sm", classNames?.description), children: "We use cookies to measure and improve your experience. Accept all, reject, or choose what to allow." })] }), _jsxs("div", { className: cn("flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between", classNames?.actions), children: [_jsxs("div", { className: "flex items-center gap-4", children: [_jsx("button", { type: "button", className: cn(LINK_CLASS, classNames?.manageButton), onClick: () => setManageOpen(true), children: "Manage" }), privacyUrl && (_jsx("a", { href: privacyUrl, target: "_blank", rel: "noreferrer", className: cn(LINK_CLASS, classNames?.privacyLink), children: "Privacy" }))] }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Button, { variant: "outline", size: "sm", className: cn("flex-1 sm:flex-none", classNames?.rejectButton), onClick: rejectAll, children: mode === "opt-out" ? "Reject" : "Reject all" }), _jsx(Button, { size: "sm", className: cn("flex-1 sm:flex-none", classNames?.acceptButton), onClick: acceptAll, children: "Accept all" })] })] })] }) }), manageOpen && (_jsx(ManageDialog, { onClose: () => setManageOpen(false), categories: categories, rowIds: ["necessary", ...categoriesInUse], dialogClassName: classNames?.dialog }))] }));
|
|
24
29
|
}
|
|
25
|
-
function ManageDialog({ onClose, categories, rowIds, }) {
|
|
30
|
+
function ManageDialog({ onClose, categories, rowIds, dialogClassName, }) {
|
|
26
31
|
const { consent, mode, save, services } = useConsentContext();
|
|
27
32
|
// Staged draft so toggling is local until "Save" — avoids committing (and
|
|
28
33
|
// firing loaders) on every flip. The dialog mounts only while open, so the
|
|
@@ -32,15 +37,15 @@ function ManageDialog({ onClose, categories, rowIds, }) {
|
|
|
32
37
|
return (_jsx(Dialog, { open: true, onOpenChange: (open) => {
|
|
33
38
|
if (!open)
|
|
34
39
|
onClose();
|
|
35
|
-
}, children: _jsxs(DialogContent, { children: [_jsxs(DialogHeader, { children: [_jsx(DialogTitle, { children: "Privacy preferences" }), _jsx(DialogDescription, { children: "Choose which categories to allow. Necessary items are always on." })] }), _jsx("div", { className: "flex flex-col gap-3", children: rowIds.map((id) => {
|
|
40
|
+
}, children: _jsxs(DialogContent, { className: dialogClassName, children: [_jsxs(DialogHeader, { children: [_jsx(DialogTitle, { children: "Privacy preferences" }), _jsx(DialogDescription, { children: "Choose which categories to allow. Necessary items are always on." })] }), _jsx("div", { className: "flex flex-col gap-3", children: rowIds.map((id) => {
|
|
36
41
|
const config = byId.get(id);
|
|
37
42
|
if (!config)
|
|
38
43
|
return null;
|
|
39
44
|
const locked = !!config.locked;
|
|
40
|
-
return (_jsxs("div", { className: "flex items-start justify-between gap-4", children: [_jsxs("div", { className: "flex flex-col gap-0.5", children: [_jsx("span", { className: "text-
|
|
45
|
+
return (_jsxs("div", { className: "flex items-start justify-between gap-4", children: [_jsxs("div", { className: "flex flex-col gap-0.5", children: [_jsx("span", { className: "text-zinc-900 text-sm font-medium", children: config.label }), _jsx("span", { className: "text-zinc-600 text-xs", children: config.description }), _jsx(ServiceNames, { names: services
|
|
41
46
|
.filter((s) => s.category === id)
|
|
42
47
|
.map((s) => s.name) })] }), _jsx(Switch, { checked: locked ? true : !!draft[id], disabled: locked, onCheckedChange: (v) => setDraft((d) => ({ ...d, [id]: v })), "aria-label": config.label })] }, id));
|
|
43
|
-
}) }), _jsxs("div", { className: "flex items-center justify-between gap-2", children: [mode === "opt-out" ? (_jsx("button", { type: "button", className: "text-
|
|
48
|
+
}) }), _jsxs("div", { className: "flex items-center justify-between gap-2", children: [mode === "opt-out" ? (_jsx("button", { type: "button", className: "text-zinc-500 hover:text-zinc-900 text-xs underline underline-offset-2", onClick: () => {
|
|
44
49
|
const rejected = {};
|
|
45
50
|
for (const c of categories)
|
|
46
51
|
rejected[c.id] = !!c.locked;
|
|
@@ -55,6 +60,6 @@ function ManageDialog({ onClose, categories, rowIds, }) {
|
|
|
55
60
|
function ServiceNames({ names }) {
|
|
56
61
|
if (names.length === 0)
|
|
57
62
|
return null;
|
|
58
|
-
return (_jsx("span", { className: "text-
|
|
63
|
+
return (_jsx("span", { className: "text-zinc-400 text-xs", children: names.join(", ") }));
|
|
59
64
|
}
|
|
60
65
|
//# sourceMappingURL=consent-banner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consent-banner.js","sourceRoot":"","sources":["../src/consent-banner.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EACL,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,WAAW,GACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"consent-banner.js","sourceRoot":"","sources":["../src/consent-banner.tsx"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,6 @@ type InternalConsentValue = ConsentValue & {
|
|
|
10
10
|
export declare function useConsentContext(): InternalConsentValue;
|
|
11
11
|
/** Public hook: the consent matrix and the actions to change it. */
|
|
12
12
|
export declare function useConsent(): ConsentValue;
|
|
13
|
-
export declare function ConsentProvider({ country, region, categories: categoriesInput, services, forceBanner, cookieless, cookieName, privacyUrl, onChange, children, }: ConsentProviderProps): React.JSX.Element;
|
|
13
|
+
export declare function ConsentProvider({ country, region, categories: categoriesInput, services, forceBanner, cookieless, cookieName, privacyUrl, bannerClassName, bannerClassNames, onChange, children, }: ConsentProviderProps): React.JSX.Element;
|
|
14
14
|
export {};
|
|
15
15
|
//# sourceMappingURL=consent-provider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consent-provider.d.ts","sourceRoot":"","sources":["../src/consent-provider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAIV,oBAAoB,EAEpB,YAAY,EACZ,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAqGjB,qFAAqF;AACrF,KAAK,oBAAoB,GAAG,YAAY,GAAG;IACzC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAC;AAIF,gEAAgE;AAChE,wBAAgB,iBAAiB,IAAI,oBAAoB,CAMxD;AAED,oEAAoE;AACpE,wBAAgB,UAAU,IAAI,YAAY,CAEzC;AAED,wBAAgB,eAAe,CAAC,EAC9B,OAAc,EACd,MAAa,EACb,UAAU,EAAE,eAAe,EAC3B,QAAa,EACb,WAAmB,EACnB,UAAkB,EAClB,UAA8B,EAC9B,UAAiB,EACjB,QAAQ,EACR,QAAQ,GACT,EAAE,oBAAoB,qBA8FtB"}
|
|
1
|
+
{"version":3,"file":"consent-provider.d.ts","sourceRoot":"","sources":["../src/consent-provider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAIV,oBAAoB,EAEpB,YAAY,EACZ,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAqGjB,qFAAqF;AACrF,KAAK,oBAAoB,GAAG,YAAY,GAAG;IACzC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAC;AAIF,gEAAgE;AAChE,wBAAgB,iBAAiB,IAAI,oBAAoB,CAMxD;AAED,oEAAoE;AACpE,wBAAgB,UAAU,IAAI,YAAY,CAEzC;AAED,wBAAgB,eAAe,CAAC,EAC9B,OAAc,EACd,MAAa,EACb,UAAU,EAAE,eAAe,EAC3B,QAAa,EACb,WAAmB,EACnB,UAAkB,EAClB,UAA8B,EAC9B,UAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACR,QAAQ,GACT,EAAE,oBAAoB,qBA8FtB"}
|
package/dist/consent-provider.js
CHANGED
|
@@ -103,7 +103,7 @@ export function useConsentContext() {
|
|
|
103
103
|
export function useConsent() {
|
|
104
104
|
return useConsentContext();
|
|
105
105
|
}
|
|
106
|
-
export function ConsentProvider({ country = null, region = null, categories: categoriesInput, services = [], forceBanner = false, cookieless = false, cookieName = "caprail_consent", privacyUrl = null, onChange, children, }) {
|
|
106
|
+
export function ConsentProvider({ country = null, region = null, categories: categoriesInput, services = [], forceBanner = false, cookieless = false, cookieName = "caprail_consent", privacyUrl = null, bannerClassName, bannerClassNames, onChange, children, }) {
|
|
107
107
|
const categories = React.useMemo(() => normalizeCategories(categoriesInput), [categoriesInput]);
|
|
108
108
|
const mode = consentMode(country, region);
|
|
109
109
|
// The toggles shown (and what makes a banner "needed"): every configured
|
|
@@ -174,6 +174,6 @@ export function ConsentProvider({ country = null, region = null, categories: cat
|
|
|
174
174
|
save: (next) => commit(next),
|
|
175
175
|
openBanner: () => setDecided(false),
|
|
176
176
|
};
|
|
177
|
-
return (_jsxs(ConsentContext.Provider, { value: value, children: [children, _jsx(ConsentBanner, {}), _jsx(ConsentedServices, {})] }));
|
|
177
|
+
return (_jsxs(ConsentContext.Provider, { value: value, children: [children, _jsx(ConsentBanner, { className: bannerClassName, classNames: bannerClassNames }), _jsx(ConsentedServices, {})] }));
|
|
178
178
|
}
|
|
179
179
|
//# sourceMappingURL=consent-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consent-provider.js","sourceRoot":"","sources":["../src/consent-provider.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"consent-provider.js","sourceRoot":"","sources":["../src/consent-provider.tsx"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,5 +2,5 @@ export { ConsentProvider, useConsent } from "./consent-provider";
|
|
|
2
2
|
export { ConsentBanner } from "./consent-banner";
|
|
3
3
|
export { ConsentedServices } from "./service-registry";
|
|
4
4
|
export { consentMode } from "./regions";
|
|
5
|
-
export type { CategoryConfig, ConsentCategory, ConsentMode, ConsentProviderProps, ConsentState, ConsentValue, ServiceDefinition, } from "./types";
|
|
5
|
+
export type { CategoryConfig, ConsentBannerClassNames, ConsentCategory, ConsentMode, ConsentProviderProps, ConsentState, ConsentValue, ServiceDefinition, } from "./types";
|
|
6
6
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,YAAY,EACV,cAAc,EACd,eAAe,EACf,WAAW,EACX,oBAAoB,EACpB,YAAY,EACZ,YAAY,EACZ,iBAAiB,GAClB,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,YAAY,EACV,cAAc,EACd,uBAAuB,EACvB,eAAe,EACf,WAAW,EACX,oBAAoB,EACpB,YAAY,EACZ,YAAY,EACZ,iBAAiB,GAClB,MAAM,SAAS,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -54,6 +54,35 @@ export type ServiceDefinition = {
|
|
|
54
54
|
cookieless: boolean;
|
|
55
55
|
}>;
|
|
56
56
|
};
|
|
57
|
+
/**
|
|
58
|
+
* Per-slot `className` overrides for the consent banner. Each entry is merged
|
|
59
|
+
* (via `tailwind-merge`) onto that slot's built-in classes, so a consumer's
|
|
60
|
+
* class wins on conflict while keeping the defaults it doesn't touch. Use the
|
|
61
|
+
* banner's top-level `className` for the common case (the card) and these slots
|
|
62
|
+
* for finer control.
|
|
63
|
+
*/
|
|
64
|
+
export type ConsentBannerClassNames = {
|
|
65
|
+
/** Outer fixed, bottom-anchored wrapper. */
|
|
66
|
+
root?: string;
|
|
67
|
+
/** The bordered banner card. (Same target as the top-level `className`.) */
|
|
68
|
+
card?: string;
|
|
69
|
+
/** The "We value your privacy" title. */
|
|
70
|
+
title?: string;
|
|
71
|
+
/** The body copy under the title. */
|
|
72
|
+
description?: string;
|
|
73
|
+
/** The row holding the Manage/Privacy links and the action buttons. */
|
|
74
|
+
actions?: string;
|
|
75
|
+
/** The "Manage" button. */
|
|
76
|
+
manageButton?: string;
|
|
77
|
+
/** The "Privacy" link. */
|
|
78
|
+
privacyLink?: string;
|
|
79
|
+
/** The "Reject" / "Reject all" button. */
|
|
80
|
+
rejectButton?: string;
|
|
81
|
+
/** The "Accept all" button. */
|
|
82
|
+
acceptButton?: string;
|
|
83
|
+
/** The manage dialog's content panel. */
|
|
84
|
+
dialog?: string;
|
|
85
|
+
};
|
|
57
86
|
export type ConsentProviderProps = {
|
|
58
87
|
/**
|
|
59
88
|
* Visitor country code (ISO-3166-1 alpha-2) from the host's edge, e.g.
|
|
@@ -84,6 +113,10 @@ export type ConsentProviderProps = {
|
|
|
84
113
|
cookieName?: string;
|
|
85
114
|
/** URL of the privacy policy. When set, the banner shows a "Privacy" link. */
|
|
86
115
|
privacyUrl?: string | null;
|
|
116
|
+
/** Convenience class merged onto the built-in banner's card. */
|
|
117
|
+
bannerClassName?: string;
|
|
118
|
+
/** Per-slot class overrides forwarded to the built-in banner. */
|
|
119
|
+
bannerClassNames?: ConsentBannerClassNames;
|
|
87
120
|
/** Called after every settled change (accept / reject / save). */
|
|
88
121
|
onChange?: (state: ConsentState) => void;
|
|
89
122
|
children: React.ReactNode;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC;;;GAGG;AAEH;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC;AAErC,kFAAkF;AAClF,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE1D;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,qEAAqE;IACrE,EAAE,EAAE,eAAe,CAAC;IACpB,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,+CAA+C;IAC/C,WAAW,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,sDAAsD;IACtD,EAAE,EAAE,MAAM,CAAC;IACX,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,kFAAkF;IAClF,QAAQ,EAAE,eAAe,CAAC;IAC1B;;;;;OAKG;IACH,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,UAAU,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACtD,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;OAIG;IACH,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,kFAAkF;IAClF,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC/B;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,wFAAwF;IACxF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,kEAAkE;IAClE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACzC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF,2CAA2C;AAC3C,MAAM,MAAM,YAAY,GAAG;IACzB,kCAAkC;IAClC,OAAO,EAAE,YAAY,CAAC;IACtB,6CAA6C;IAC7C,IAAI,EAAE,WAAW,CAAC;IAClB,kDAAkD;IAClD,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,+CAA+C;IAC/C,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,sFAAsF;IACtF,eAAe,EAAE,eAAe,EAAE,CAAC;IACnC,kDAAkD;IAClD,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,EAAE,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACjE,sEAAsE;IACtE,IAAI,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACpC,kFAAkF;IAClF,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/button.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../src/ui/button.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../src/ui/button.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAS/B,KAAK,aAAa,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AACrD,KAAK,UAAU,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,CAAC;AAe5C,MAAM,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG;IACzD,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,OAAmB,EACnB,IAAgB,EAChB,GAAG,KAAK,EACT,EAAE,WAAW,qBAab;AAED,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
package/dist/ui/button.js
CHANGED
|
@@ -3,9 +3,9 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
import { cn } from "../cn";
|
|
5
5
|
const VARIANT_CLASS = {
|
|
6
|
-
default: "bg-
|
|
7
|
-
outline: "border border-
|
|
8
|
-
ghost: "text-
|
|
6
|
+
default: "bg-zinc-900 text-zinc-50 hover:bg-zinc-800",
|
|
7
|
+
outline: "border border-zinc-200 bg-white text-zinc-900 hover:bg-zinc-100",
|
|
8
|
+
ghost: "text-zinc-500 hover:bg-zinc-100 hover:text-zinc-900",
|
|
9
9
|
};
|
|
10
10
|
const SIZE_CLASS = {
|
|
11
11
|
default: "h-9 px-4 text-sm",
|
|
@@ -13,7 +13,7 @@ const SIZE_CLASS = {
|
|
|
13
13
|
icon: "size-9",
|
|
14
14
|
};
|
|
15
15
|
function Button({ className, variant = "default", size = "default", ...props }) {
|
|
16
|
-
return (_jsx("button", { "data-slot": "button", className: cn("focus-visible:ring-
|
|
16
|
+
return (_jsx("button", { "data-slot": "button", className: cn("focus-visible:ring-zinc-400 inline-flex items-center justify-center gap-2 rounded-lg font-medium whitespace-nowrap transition-colors outline-none focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50", VARIANT_CLASS[variant], SIZE_CLASS[size], className), ...props }));
|
|
17
17
|
}
|
|
18
18
|
export { Button };
|
|
19
19
|
//# sourceMappingURL=button.js.map
|
package/dist/ui/button.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/ui/button.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/ui/button.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAU3B,MAAM,aAAa,GAAkC;IACnD,OAAO,EAAE,4CAA4C;IACrD,OAAO,EACL,iEAAiE;IACnE,KAAK,EAAE,qDAAqD;CAC7D,CAAC;AAEF,MAAM,UAAU,GAA+B;IAC7C,OAAO,EAAE,kBAAkB;IAC3B,EAAE,EAAE,wBAAwB;IAC5B,IAAI,EAAE,QAAQ;CACf,CAAC;AAOF,SAAS,MAAM,CAAC,EACd,SAAS,EACT,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,SAAS,EAChB,GAAG,KAAK,EACI;IACZ,OAAO,CACL,8BACY,QAAQ,EAClB,SAAS,EAAE,EAAE,CACX,yNAAyN,EACzN,aAAa,CAAC,OAAO,CAAC,EACtB,UAAU,CAAC,IAAI,CAAC,EAChB,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
package/dist/ui/dialog.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../src/ui/dialog.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../src/ui/dialog.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAS1D,iBAAS,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,qBAEvE;AAkBD,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,SAAgB,EAChB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG;IACxD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,qBAmCA;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,qBAQzE;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,qBAQpD;AAED,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,WAAW,CAAC,qBAQ1D;AAED,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC"}
|
package/dist/ui/dialog.js
CHANGED
|
@@ -3,11 +3,10 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
import * as DialogPrimitive from "@radix-ui/react-dialog";
|
|
5
5
|
import { cn } from "../cn";
|
|
6
|
-
//
|
|
7
|
-
//
|
|
8
|
-
//
|
|
9
|
-
//
|
|
10
|
-
// transitions Radix toggles via `data-state`.
|
|
6
|
+
// Dialog on Tailwind's default palette (zinc), so it looks right in any Tailwind
|
|
7
|
+
// project. Content is portaled to <body>. Kept dependency-free: the close glyph
|
|
8
|
+
// is an inline SVG (no icon library) and there are no animation-plugin classes,
|
|
9
|
+
// only Tailwind transitions Radix toggles via `data-state`.
|
|
11
10
|
function Dialog(props) {
|
|
12
11
|
return _jsx(DialogPrimitive.Root, { "data-slot": "dialog", ...props });
|
|
13
12
|
}
|
|
@@ -15,16 +14,16 @@ function DialogOverlay({ className, ...props }) {
|
|
|
15
14
|
return (_jsx(DialogPrimitive.Overlay, { "data-slot": "dialog-overlay", className: cn("fixed inset-0 z-50 bg-black/50 transition-opacity data-[state=closed]:opacity-0 motion-reduce:transition-none", className), ...props }));
|
|
16
15
|
}
|
|
17
16
|
function DialogContent({ className, children, showClose = true, ...props }) {
|
|
18
|
-
return (_jsxs(DialogPrimitive.Portal, { "data-slot": "dialog-portal", children: [_jsx(DialogOverlay, {}), _jsxs(DialogPrimitive.Content, { "data-slot": "dialog-content", className: cn("border-
|
|
17
|
+
return (_jsxs(DialogPrimitive.Portal, { "data-slot": "dialog-portal", children: [_jsx(DialogOverlay, {}), _jsxs(DialogPrimitive.Content, { "data-slot": "dialog-content", className: cn("border-zinc-200 bg-white text-zinc-900 fixed top-1/2 left-1/2 z-50 grid w-[calc(100%-2rem)] max-w-md -translate-x-1/2 -translate-y-1/2 gap-4 rounded-2xl border p-5 shadow-xl", className), ...props, children: [children, showClose && (_jsx(DialogPrimitive.Close, { "aria-label": "Close", className: "text-zinc-500 focus-visible:ring-zinc-400 absolute top-4 right-4 grid size-8 place-items-center rounded-lg transition-opacity hover:opacity-70 focus:outline-none focus-visible:ring-2", children: _jsx("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", className: "size-5", "aria-hidden": "true", children: _jsx("path", { d: "M18 6 6 18M6 6l12 12" }) }) }))] })] }));
|
|
19
18
|
}
|
|
20
19
|
function DialogHeader({ className, ...props }) {
|
|
21
20
|
return (_jsx("div", { "data-slot": "dialog-header", className: cn("flex flex-col gap-1.5", className), ...props }));
|
|
22
21
|
}
|
|
23
22
|
function DialogTitle({ className, ...props }) {
|
|
24
|
-
return (_jsx(DialogPrimitive.Title, { "data-slot": "dialog-title", className: cn("text-
|
|
23
|
+
return (_jsx(DialogPrimitive.Title, { "data-slot": "dialog-title", className: cn("text-zinc-900 text-base font-semibold", className), ...props }));
|
|
25
24
|
}
|
|
26
25
|
function DialogDescription({ className, ...props }) {
|
|
27
|
-
return (_jsx(DialogPrimitive.Description, { "data-slot": "dialog-description", className: cn("text-
|
|
26
|
+
return (_jsx(DialogPrimitive.Description, { "data-slot": "dialog-description", className: cn("text-zinc-600 text-sm", className), ...props }));
|
|
28
27
|
}
|
|
29
28
|
export { Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription };
|
|
30
29
|
//# sourceMappingURL=dialog.js.map
|
package/dist/ui/dialog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog.js","sourceRoot":"","sources":["../../src/ui/dialog.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAE3B,
|
|
1
|
+
{"version":3,"file":"dialog.js","sourceRoot":"","sources":["../../src/ui/dialog.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAE3B,iFAAiF;AACjF,gFAAgF;AAChF,gFAAgF;AAChF,4DAA4D;AAE5D,SAAS,MAAM,CAAC,KAAwD;IACtE,OAAO,KAAC,eAAe,CAAC,IAAI,iBAAW,QAAQ,KAAK,KAAK,GAAI,CAAC;AAChE,CAAC;AAED,SAAS,aAAa,CAAC,EACrB,SAAS,EACT,GAAG,KAAK,EAC6C;IACrD,OAAO,CACL,KAAC,eAAe,CAAC,OAAO,iBACZ,gBAAgB,EAC1B,SAAS,EAAE,EAAE,CACX,+GAA+G,EAC/G,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,SAAS,GAAG,IAAI,EAChB,GAAG,KAAK,EAGT;IACC,OAAO,CACL,MAAC,eAAe,CAAC,MAAM,iBAAW,eAAe,aAC/C,KAAC,aAAa,KAAG,EACjB,MAAC,eAAe,CAAC,OAAO,iBACZ,gBAAgB,EAC1B,SAAS,EAAE,EAAE,CACX,+KAA+K,EAC/K,SAAS,CACV,KACG,KAAK,aAER,QAAQ,EACR,SAAS,IAAI,CACZ,KAAC,eAAe,CAAC,KAAK,kBACT,OAAO,EAClB,SAAS,EAAC,wLAAwL,YAElM,cACE,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,SAAS,EAAC,QAAQ,iBACN,MAAM,YAElB,eAAM,CAAC,EAAC,sBAAsB,GAAG,GAC7B,GACgB,CACzB,IACuB,IACH,CAC1B,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA+B;IACxE,OAAO,CACL,2BACY,eAAe,EACzB,SAAS,EAAE,EAAE,CAAC,uBAAuB,EAAE,SAAS,CAAC,KAC7C,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EAC2C;IACnD,OAAO,CACL,KAAC,eAAe,CAAC,KAAK,iBACV,cAAc,EACxB,SAAS,EAAE,EAAE,CAAC,uCAAuC,EAAE,SAAS,CAAC,KAC7D,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACiD;IACzD,OAAO,CACL,KAAC,eAAe,CAAC,WAAW,iBAChB,oBAAoB,EAC9B,SAAS,EAAE,EAAE,CAAC,uBAAuB,EAAE,SAAS,CAAC,KAC7C,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC"}
|
package/dist/ui/switch.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../src/ui/switch.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../src/ui/switch.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAQ1D,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,qBAgBnD;AAED,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
package/dist/ui/switch.js
CHANGED
|
@@ -3,12 +3,11 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
import * as SwitchPrimitive from "@radix-ui/react-switch";
|
|
5
5
|
import { cn } from "../cn";
|
|
6
|
-
//
|
|
7
|
-
//
|
|
8
|
-
//
|
|
9
|
-
// override with a `className`.
|
|
6
|
+
// Switch on Tailwind's default palette: checked track is zinc-900, unchecked is
|
|
7
|
+
// zinc-200, thumb is white. The data-state colors are applied via Tailwind's
|
|
8
|
+
// `data-[state=…]` variants so a consumer can still override with a `className`.
|
|
10
9
|
function Switch({ className, ...props }) {
|
|
11
|
-
return (_jsx(SwitchPrimitive.Root, { "data-slot": "switch", className: cn("peer focus-visible:ring-
|
|
10
|
+
return (_jsx(SwitchPrimitive.Root, { "data-slot": "switch", className: cn("peer focus-visible:ring-zinc-400 data-[state=checked]:bg-zinc-900 data-[state=unchecked]:bg-zinc-200 inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border border-transparent transition-colors outline-none focus-visible:ring-2 disabled:cursor-not-allowed disabled:opacity-50", className), ...props, children: _jsx(SwitchPrimitive.Thumb, { "data-slot": "switch-thumb", className: "bg-white pointer-events-none block size-4 translate-x-0.5 rounded-full shadow-sm transition-transform data-[state=checked]:translate-x-[1.125rem]" }) }));
|
|
12
11
|
}
|
|
13
12
|
export { Switch };
|
|
14
13
|
//# sourceMappingURL=switch.js.map
|
package/dist/ui/switch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch.js","sourceRoot":"","sources":["../../src/ui/switch.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAE3B,
|
|
1
|
+
{"version":3,"file":"switch.js","sourceRoot":"","sources":["../../src/ui/switch.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAE3B,gFAAgF;AAChF,6EAA6E;AAC7E,iFAAiF;AAEjF,SAAS,MAAM,CAAC,EACd,SAAS,EACT,GAAG,KAAK,EAC0C;IAClD,OAAO,CACL,KAAC,eAAe,CAAC,IAAI,iBACT,QAAQ,EAClB,SAAS,EAAE,EAAE,CACX,0SAA0S,EAC1S,SAAS,CACV,KACG,KAAK,YAET,KAAC,eAAe,CAAC,KAAK,iBACV,cAAc,EACxB,SAAS,EAAC,mJAAmJ,GAC7J,GACmB,CACxB,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
package/package.json
CHANGED