@c15t/react 3.0.0-alpha.3 → 3.0.0-alpha.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/AGENTS.md +91 -72
- package/README.md +21 -17
- package/SKILL.md +34 -0
- package/dist/component-hooks/use-headless-consent-ui.js +1 -1
- package/dist/components/consent-gate/atoms.js +1 -1
- package/dist/components/consent-gate/consent-gate.js +1 -1
- package/dist/components/iab-panel/atoms/card.js +1 -1
- package/dist/components/iab-panel/atoms/feature-item.js +2 -0
- package/dist/components/iab-panel/atoms/header.js +1 -1
- package/dist/components/iab-panel/iab-panel.js +1 -1
- package/dist/components/iab-panel/index.js +1 -1
- package/dist/components/iab-prompt/atoms/overlay.js +1 -1
- package/dist/components/iab-prompt/atoms/root.js +1 -1
- package/dist/components/panel/atoms/card.js +1 -1
- package/dist/components/panel/atoms/root.js +1 -1
- package/dist/components/panel-trigger/atoms/button.js +1 -1
- package/dist/components/panel-trigger/atoms/toolbar.js +1 -1
- package/dist/components/preferences/atoms/accordion.js +1 -1
- package/dist/components/prompt/atoms/overlay.js +1 -1
- package/dist/components/prompt/atoms/root.js +1 -1
- package/dist/components/prompt/components.js +1 -1
- package/dist/components/shared/libs/compose-refs.js +1 -0
- package/dist/components/shared/libs/slot.js +1 -1
- package/dist/components/shared/primitives/button.js +1 -1
- package/dist/components/shared/ui/dialog/dialog.js +1 -1
- package/dist/components/shared/ui/icon.js +1 -1
- package/dist/context/consent-tracking-context.js +1 -1
- package/dist/devtools.js +1 -1
- package/dist/draft.js +1 -1
- package/dist/hooks/use-focus-trap.js +1 -1
- package/dist/hooks.js +1 -1
- package/dist/iab/styles.tw3.css +4 -4
- package/dist/index.js +1 -1
- package/dist/module-hooks/iframe-blocker.js +1 -1
- package/dist/postcss-tailwind3.js +1 -0
- package/dist/provider.js +1 -1
- package/dist/server/fetch-ssr-data.js +1 -1
- package/dist/server/headers.js +1 -1
- package/dist/server/normalize-url.js +1 -1
- package/dist/styles.tw3.css +16 -16
- package/dist/transports/offline.js +1 -1
- package/dist/ui-save.js +1 -1
- package/dist/utils/merge-slot-props.js +1 -1
- package/dist/utils/theme-utils.js +1 -1
- package/dist/version.js +1 -1
- package/dist-types/component-hooks/use-headless-consent-ui.d.ts +1 -1
- package/dist-types/components/iab-panel/atoms/feature-item.d.ts +28 -0
- package/dist-types/components/iab-panel/iab-panel.d.ts +2 -2
- package/dist-types/components/iab-panel/index.d.ts +5 -2
- package/dist-types/components/iab-panel/use-iab-translations.d.ts +4 -0
- package/dist-types/components/iab-prompt/iab-prompt.d.ts +2 -2
- package/dist-types/components/iab-prompt/index.d.ts +2 -2
- package/dist-types/components/panel/atoms/card.d.ts +1 -0
- package/dist-types/components/prompt/components.d.ts +6 -0
- package/dist-types/components/shared/libs/compose-refs.d.ts +20 -0
- package/dist-types/components/shared/ui/icon.d.ts +2 -1
- package/dist-types/context/consent-tracking-context.d.ts +10 -0
- package/dist-types/context/theme-context.d.ts +2 -2
- package/dist-types/context.d.ts +6 -0
- package/dist-types/devtools.d.ts +13 -2
- package/dist-types/draft.d.ts +10 -4
- package/dist-types/hooks/use-focus-trap.d.ts +3 -1
- package/dist-types/hooks.d.ts +54 -13
- package/dist-types/iab.d.ts +1 -1
- package/dist-types/index.d.ts +2 -2
- package/dist-types/postcss-tailwind3.d.ts +21 -0
- package/dist-types/provider.d.ts +22 -5
- package/dist-types/server/headers.d.ts +14 -4
- package/dist-types/server/normalize-url.d.ts +14 -7
- package/dist-types/server/types.d.ts +12 -1
- package/dist-types/transports/offline.d.ts +7 -16
- package/dist-types/ui-config-context.d.ts +7 -1
- package/dist-types/utils/merge-slot-props.d.ts +15 -1
- package/dist-types/utils/theme-utils.d.ts +17 -2
- package/dist-types/version.d.ts +1 -1
- package/docs/README.md +91 -72
- package/docs/assets/v3/bottom-bar.png +0 -0
- package/docs/assets/v3/brand-card.png +0 -0
- package/docs/assets/v3/brand-preferences.png +0 -0
- package/docs/assets/v3/choice-wall.png +0 -0
- package/docs/assets/v3/headless-bar-html.png +0 -0
- package/docs/assets/v3/headless-bar-mobile.png +0 -0
- package/docs/assets/v3/headless-bar.png +0 -0
- package/docs/assets/v3/slim-bar.png +0 -0
- package/docs/concepts/choose-your-setup.md +87 -0
- package/docs/{frameworks/react/concepts → concepts}/consent-categories.md +22 -7
- package/docs/{guides → concepts}/consent-state.md +71 -101
- package/docs/{guides → concepts}/data-fetching.md +31 -27
- package/docs/concepts/how-consent-works.md +123 -0
- package/docs/{frameworks/react/concepts/policy-presets.md → concepts/policies.md} +7 -59
- package/docs/customization/class-names.md +202 -0
- package/docs/customization/dark-mode.md +157 -0
- package/docs/customization/motion.md +119 -0
- package/docs/customization/overview.md +67 -34
- package/docs/customization/recipes.md +839 -49
- package/docs/customization/slots.md +216 -35
- package/docs/customization/stylesheets.md +147 -0
- package/docs/customization/tailwind.md +842 -0
- package/docs/customization/tokens.md +163 -96
- package/docs/customization/translations.md +61 -3
- package/docs/frameworks/react/callbacks.md +118 -0
- package/docs/frameworks/react/clear-on-revocation.md +106 -0
- package/docs/frameworks/react/components/consent-banner.md +42 -28
- package/docs/frameworks/react/components/consent-dialog-link.md +13 -11
- package/docs/frameworks/react/components/consent-dialog-trigger.md +81 -76
- package/docs/frameworks/react/components/consent-dialog.md +56 -50
- package/docs/frameworks/react/components/consent-gate.md +37 -20
- package/docs/frameworks/react/components/consent-provider.md +126 -0
- package/docs/frameworks/react/components/consent-widget.md +23 -20
- package/docs/frameworks/react/components/dev-tools.md +52 -84
- package/docs/frameworks/react/components.md +105 -0
- package/docs/frameworks/react/compose.md +354 -0
- package/docs/frameworks/react/content-security-policy.md +126 -0
- package/docs/frameworks/react/customize.md +250 -0
- package/docs/frameworks/react/embeds.md +89 -0
- package/docs/frameworks/react/{hooks/overview.md → hooks.md} +21 -16
- package/docs/frameworks/react/{iab/overview.md → iab.md} +80 -31
- package/docs/frameworks/react/network-blocker.md +35 -41
- package/docs/frameworks/react/quickstart.md +139 -101
- package/docs/frameworks/react/rendering.md +128 -0
- package/docs/frameworks/react/scripts.md +115 -0
- package/docs/frameworks/react/translations.md +155 -0
- package/docs/frameworks/react/troubleshooting.md +92 -47
- package/docs/frameworks/react/vendor-consent.md +170 -0
- package/docs/guides/banner-experiments.md +654 -0
- package/docs/guides/troubleshooting.md +120 -47
- package/docs/guides/verify-consent.md +81 -49
- package/docs/integrations/adobe-analytics.md +167 -159
- package/docs/integrations/ahrefs-analytics.md +152 -154
- package/docs/integrations/amplitude.md +162 -156
- package/docs/integrations/building-integrations.md +136 -37
- package/docs/integrations/clearbit.md +154 -154
- package/docs/integrations/cloudflare-web-analytics.md +156 -156
- package/docs/integrations/cloudflare-zaraz.md +209 -261
- package/docs/integrations/crisp.md +164 -158
- package/docs/integrations/databuddy.md +157 -173
- package/docs/integrations/fathom-analytics.md +158 -156
- package/docs/integrations/front-chat.md +167 -167
- package/docs/integrations/google-maps.md +118 -83
- package/docs/integrations/google-tag-manager.md +178 -163
- package/docs/integrations/google-tag.md +163 -160
- package/docs/integrations/heap.md +163 -155
- package/docs/integrations/hightouch.md +161 -157
- package/docs/integrations/hotjar.md +159 -155
- package/docs/integrations/intercom.md +183 -153
- package/docs/integrations/klaviyo.md +486 -0
- package/docs/integrations/linkedin-insights.md +174 -150
- package/docs/integrations/logrocket.md +160 -156
- package/docs/integrations/matomo-analytics.md +188 -178
- package/docs/integrations/meta-pixel.md +188 -150
- package/docs/integrations/microsoft-clarity.md +163 -155
- package/docs/integrations/microsoft-uet.md +148 -154
- package/docs/integrations/mixpanel-analytics.md +155 -160
- package/docs/integrations/one-dollar-stats.md +166 -165
- package/docs/integrations/openai-pixel.md +204 -301
- package/docs/integrations/overview.md +137 -80
- package/docs/integrations/pinterest-tag.md +191 -183
- package/docs/integrations/pirsch.md +169 -159
- package/docs/integrations/plausible-analytics.md +172 -158
- package/docs/integrations/posthog.md +226 -241
- package/docs/integrations/promptwatch.md +154 -154
- package/docs/integrations/reddit-pixel.md +185 -157
- package/docs/integrations/rudderstack.md +201 -186
- package/docs/integrations/rybbit-analytics.md +171 -160
- package/docs/integrations/segment.md +182 -154
- package/docs/integrations/snapchat-pixel.md +186 -156
- package/docs/integrations/tiktok-pixel.md +171 -150
- package/docs/integrations/umami-analytics.md +163 -158
- package/docs/integrations/vercel-analytics.md +166 -157
- package/docs/integrations/x-pixel.md +176 -150
- package/docs/integrations/youtube.md +121 -86
- package/docs/upgrade-v3.md +475 -467
- package/package.json +15 -9
- package/docs/assets/v3/brand-bar.png +0 -0
- package/docs/assets/v3/mobile-card.png +0 -0
- package/docs/assets/v3/preferences.png +0 -0
- package/docs/frameworks/react/components/consent-manager-provider.md +0 -95
- package/docs/frameworks/react/script-loader.md +0 -69
- package/docs/frameworks/react/styling/overview.md +0 -266
- package/docs/guides/deployment-modes.md +0 -75
- package/docs/guides/shared-consent-controls.md +0 -158
- package/docs/integrations/clear-on-revocation.md +0 -167
- package/docs/integrations/granular-consent.md +0 -210
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{createConsentKernel,custom,hosted}from"@c15t/core";export{offline}from"./transports/offline.js";export{ConsentDialog,ConsentWidget}from"./aggregate-components.js";export{ConsentBanner,useConsentBannerSurface}from"./components/prompt/index.js";export{ConsentDialogLink}from"./components/panel-link/index.js";export{ConsentDialogTrigger,ConsentDialogTriggerToolbar}from"./components/panel-trigger/index.js";export{ConsentGate,Frame}from"./components/consent-gate/index.js";export{ConsentDraftProvider,useConsentDraft,useVendorDraft}from"./draft.js";export{useTranslations}from"./component-hooks/use-translations.js";export{useActiveUI,useBranding,useConsent,useConsents,useDeclaredVendors,useDismissNotice,useEffectivePermissions,useExplicitChoice,useHasConsentPolicy,useHasConsentPreferences,useHasConsentUI,useIABEnabled,useIABSnapshot,useIdentify,useInit,useLocation,useModel,useNoticeDismissal,
|
|
1
|
+
export{createConsentKernel,custom,hosted}from"@c15t/core";export{offline}from"./transports/offline.js";export{ConsentDialog,ConsentWidget}from"./aggregate-components.js";export{ConsentBanner,useConsentBannerSurface}from"./components/prompt/index.js";export{ConsentDialogLink}from"./components/panel-link/index.js";export{ConsentDialogTrigger,ConsentDialogTriggerToolbar}from"./components/panel-trigger/index.js";export{ConsentGate,Frame}from"./components/consent-gate/index.js";export{ConsentDraftProvider,useConsentDraft,useVendorDraft}from"./draft.js";export{useTranslations}from"./component-hooks/use-translations.js";export{useActiveUI,useBranding,useConsent,useConsents,useDeclaredVendors,useDismissNotice,useEffectivePermissions,useExperiment,useExplicitChoice,useHasConsentPolicy,useHasConsentPreferences,useHasConsentUI,useIABEnabled,useIABSnapshot,useIdentify,useInit,useLocation,useModel,useNoticeDismissal,useOverrides,usePolicyCategories,usePolicyResolution,usePolicyRule,usePolicyScopeMode,usePreferencesPresentation,usePrivacySignals,usePromptPresentation,usePromptRequirement,usePurposeConsent,useRegisterConsentCategories,useResolvedPresentation,useResolvedTheme,useRestrictions,useSaveConsents,useSetActiveUI,useSetLanguage,useSetOverrides,useSnapshot,useSpecialFeatureOptIn,useSubscribeToConsentChanges,useTCString,useUser,useVendorAllowed,useVendorChoice,useVendorConsent}from"./hooks.js";export{useIframeBlocker,useNetworkBlocker,usePersistence,useScriptLoader}from"./module-hooks.js";export{ConsentProvider}from"./provider.js";export{ConsentTheme}from"./consent-theme.js";export{defineTheme}from"./types/theme/index.js";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import{allConsentNames as e,getEffectiveGateState as t,has as r,isVendorDenied as a}from"@c15t/core";import{useEffect as o,useRef as c,useState as n}from"react";import{useRequiredKernel as
|
|
2
|
+
import{allConsentNames as e,getEffectiveGateState as t,has as r,isVendorDenied as a}from"@c15t/core";import{useEffect as o,useRef as c,useState as n}from"react";import{useRequiredKernel as u}from"./shared.js";let i=()=>import("@c15t/core/modules/iframe-blocker"),l=function(e={}){let t=u(),r=c(null),[a,l]=n(()=>({dispose(){r.current?.dispose(),r.current=null},processAllIframes(){r.current?.processAllIframes()}}));return o(()=>{let a=!1;return(async()=>{let{createIframeBlocker:o}=await i();a||(r.current=o({disableAutomaticBlocking:e.disableAutomaticBlocking,kernel:t}))})(),()=>{a=!0,r.current?.dispose(),r.current=null}},[t,e.disableAutomaticBlocking]),a},d="iframe[data-category], iframe[data-vendor]",s=function(e){try{return 1===e.nodeType&&"IFRAME"===e.tagName.toUpperCase()}catch{return!1}},f=function(o,c){let n=c.getSnapshot(),u=o.getAttribute("data-category");if(null!==u){if(!e.includes(u))return!1;let{effectivePermissions:a}=t(n);if(!r(u,a))return!1}let i=o.getAttribute("data-vendor");return!i||"iab"===n.model||!(n.vendorChoice?.denied.includes(i)&&(!n.vendors?.declared.some(e=>e.id===i)||a(n,i)))},m=function(e,t){let r=e.getAttribute("src");!(r&&e.matches(d))||f(e,t)||(e.hasAttribute("data-src")||e.setAttribute("data-src",r),e.removeAttribute("src"),e.setAttribute("data-c15t-paused",""))},b=function(e){try{return e.matches(d)}catch{return!1}},y=function(e){let t=new Set;for(let r of e)for(let e of("attributes"===r.type&&s(r.target)&&t.add(r.target),Array.from(r.addedNodes))){if(s(e)){t.add(e);continue}try{if(1===e.nodeType)for(let r of Array.from(e.querySelectorAll("iframe")))t.add(r)}catch{}}return[...t].filter(b)},p=function(e,t){if("u"<typeof document||!document.body)return t(),()=>{};document.querySelector(d)&&t();let r=new MutationObserver(r=>{let a=y(r);if(0!==a.length){for(let t of a)try{m(t,e)}catch{}t()}});return r.observe(document.body,{attributeFilter:["data-category","data-vendor","src"],attributes:!0,childList:!0,subtree:!0}),()=>r.disconnect()},A=function(e={}){let t=u(),{disableAutomaticBlocking:r}=e;o(()=>{let e=!1,a=null,o=!1,c=()=>{},n=()=>{o||(o=!0,(async()=>{let n;try{n=await i()}catch{o=!1;return}e||(c(),a=n.createIframeBlocker({disableAutomaticBlocking:r,kernel:t}))})())};return r?n():c=p(t,n),()=>{e=!0,c(),a?.dispose(),a=null}},[t,r])};export{l as useIframeBlocker,A as useIframeBlockerOnDemand,p as watchGatedIframes};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export*from"@c15t/ui/postcss-tailwind3";export{default}from"@c15t/ui/postcss-tailwind3";
|
package/dist/provider.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import{Fragment as e,jsx as r,jsxs as n}from"react/jsx-runtime";import{createConsentKernel as t,declareOwnedVendors as o,disabledPolicyResolution as i,extractConsentNamesFromCondition as l,forgetOwnedVendors as s,kernelConfigToInitResponse as c,resolveVendors as a,watchRevocationReload as u}from"@c15t/core";import{createWindowDebug as d,resolveWindowDebugMode as f}from"@c15t/core/modules/window-debug";import{connectConsentSource as g}from"@c15t/core/runtime/controls";import{deepMergeTranslations as p}from"@c15t/translations";import{useContext as m,useEffect as v,useMemo as h,useRef as y,useState as k}from"react";import{KernelContext as S,ProviderServicesContext as C}from"./context.js";import{ExternalIABProvider as b}from"./external-iab-context.js";import{useColorScheme as R}from"./hooks/use-color-scheme.js";import{useIframeBlockerOnDemand as w}from"./module-hooks/iframe-blocker.js";import{useEarlyNetworkHold as O}from"./module-hooks/network-hold.js";import{usePersistence as P}from"./module-hooks/persistence.js";import{V3ThemeProvider as x}from"./theme-provider.js";import{defaultTranslationConfig as E}from"./utils/default-translation-config.js";let B={language:"en",translations:E.translations.en},N=function(e){if(e)return"externalId"in e?e:{externalId:e.id,identityProvider:e.identityProvider}},j=function(e){if(!e?.messages)return;let r=e.locale??E.defaultLanguage??"en",n=E.translations.en,t=e.messages[r]??e.messages.en??n,o=E.translations[r]??n;return{language:r,translations:p(o,t)}},D=function(e){return e.enabled??!0},L=function(e,r){let n=!1;return{...e,async init(t){if(n)return e.init?.(t)??{};n=!0;let o=await r(t);return o.response?o.response:e.init?.(o.context??t)??{}}}},M=function(e){return"function"==typeof e?.then},T=function(e){let{prefetch:r}=e;return!r||M(r)?{}:r},V=function(e){return void 0!==e&&Object.keys(e).length>0},_=function(e){"production"!==globalThis.process?.env?.NODE_ENV&&console.warn("c15t ConsentProvider: prefetch rejected; using transport init.",e)},q=function(e,r,n,t){let o={...r.initialOverrides??{},...n??{}};V(o)&&e.set.overrides(o),r.initialRecords&&e.getRecordsGeneration()===t&&e.hydrate(r.initialRecords)},J=function(e,r,n){var t,o;let{prefetch:i}=r;return M(i)?L(e,(t=Promise.resolve(i),o=r.overrides,async e=>{let r,i=n()?.getRecordsGeneration();try{r=await t??{}}catch(e){return _(e),{}}let l=c(r);if(l){let e={...l.resolvedOverrides??{},...o??{}};return V(e)&&(l.resolvedOverrides=e),{response:l}}let s=n();return s&&q(s,r,o,i),{context:{overrides:{...e.overrides,...r.initialOverrides??{},...o??{}},user:e.user}}})):e},K=function(e){if("function"!=typeof e.mode)throw Error("c15t ConsentProvider: set mode to hosted(), offline(), or custom().");return e.mode},A=function(e){"production"!==globalThis.process?.env?.NODE_ENV&&console.warn(e)},I=function(e,r,n){let t=a({config:e.vendors,existing:n.initialVendors?.declared,onWarn:A,owners:r}),o=n.initialVendors?.listVersion??null;return t.length>0||null!==o?{declared:t,listVersion:o}:void 0},F=function(e){let r=D(e),n=T(e),o=j(e.i18n)??B,s={consentCategories:e.consentCategories,prefetch:n,translations:o},c=K(e)(s),a={current:null},u=J(c,e,()=>a.current),d=[...e.scripts??[],...e.networkBlocker?e.networkBlocker.rules??[]:[]],f=I(e,d,n),g=t({...n,consentCategories:e.consentCategories,inferredConsentCategories:[...d.flatMap(e=>l(e.category)),...(f?.declared??[]).flatMap(e=>l(e.category))],initialVendors:f,initialExternalPermissions:r&&e.consentSource?{}:void 0,initialRecords:r&&!e.consentSource?n.initialRecords:void 0,initialPrivacySignals:r?n.initialPrivacySignals:void 0,now:n.now??n.initialRecords?.now??(n.initialRecords?void 0:0),transport:u,initialPolicyResolution:r?n.initialPolicyResolution:i(),initialOverrides:{...n.initialOverrides??{},...e.overrides??{}},initialUser:N(e.user)??n.initialUser,initialTranslations:n.initialTranslations??o,initialPolicyPending:!e.consentSource&&(n.initialPolicyPending??(r&&!n.initialPolicyResolution))});return a.current=g,g},H=function(e){if(e instanceof Error)return e.message;if("string"==typeof e)return e;try{return JSON.stringify(e)}catch{return String(e)}},U=function(e,r,n){let t=y(r),o=y(n);v(()=>{t.current=r,o.current=n},[r,n]),v(()=>u({getOnBeforeReload:()=>t.current?.onBeforeConsentRevocationReload,isEnabled:()=>!1!==o.current,kernel:e}),[e]),v(()=>{let r=[e.events.on("init:applied",({snapshot:r})=>{let n=r.vendors?.declared??[];n.length>0&&e.set.registerConsentCategories(n.flatMap(e=>l(e.category)))}),e.events.on("choice:recorded",({snapshot:e,confirmed:r,actionAt:n})=>{t.current?.onChoiceRecorded?.({actionAt:n,confirmed:r,snapshot:e})}),e.events.on("permissions:changed",({snapshot:e,previous:r})=>{t.current?.onPermissionsChanged?.({previous:r,snapshot:e})}),e.events.on("command:error",e=>{t.current?.onError?.({error:H(e.error)})})];return()=>{for(let e of r)e()}},[e])},G=function(e,r,n,t){let i=y(n),c=y(null),u=y(null),d=y(null);v(()=>{if(!t)return;let n=N(r.user),o=JSON.stringify(n??null);if(null===c.current){c.current=o;return}c.current!==o&&(c.current=o,n&&(async()=>{try{await e.commands.identify(n)}catch{}})())},[e,r.user,t]),v(()=>{if(!t)return;let o=JSON.stringify(r.overrides??{});if(null===u.current){u.current=o;return}u.current!==o&&(u.current=o,e.set.overrides(r.overrides??{}),n&&e.commands.init())},[n,e,r.overrides,t]),v(()=>{!t||i.current===n||(i.current=n,n||e.set.activeUI("none"))},[n,e,t]);let f=y(null),g=y(Symbol("consent-provider"));v(()=>{if(!t)return;let n=[...r.scripts??[],...r.networkBlocker?r.networkBlocker.rules??[]:[]],i=JSON.stringify([r.vendors??[],n.map(e=>[e.vendor??null,e.category])]);if(null===f.current){f.current=i,o(e,n,g.current);return}if(f.current===i)return;f.current=i;let s=e.getSnapshot().vendors?.declared??[],c=a({config:r.vendors,existing:s.flatMap(e=>{let r="manifest"===e.source?e:e.shadowed;if(r?.source!=="manifest")return[];let{ownerCategory:n,...t}=r;return[t]}),onWarn:A});e.set.vendors({declared:c},{replaceSource:"config"}),o(e,n,g.current);let u=[...c.flatMap(e=>l(e.category)),...n.flatMap(e=>l(e.category))];u.length>0&&e.set.registerConsentCategories(u)},[e,r.networkBlocker,r.scripts,r.vendors,t]),v(()=>()=>{s(e,g.current),f.current=null},[e]),v(()=>{if("production"===globalThis.process?.env?.NODE_ENV)return;let e=JSON.stringify({i18n:r.i18n,mode:r.mode?.kind});if(null===d.current){d.current=e;return}d.current!==e&&(d.current=e,console.warn("c15t ConsentProvider: remount to change mode or i18n."))},[r])},W=({kernel:e,callbacks:r,reloadOnConsentRevoked:n})=>(U(e,r,n),null),z=({enabled:e,kernel:r,prepared:n})=>{let t=y(!1),o=y(!1);return v(()=>{if(!e){t.current=!1;return}if(!t.current)if(t.current=!0,n){r.hydrate({now:o.current?Date.now():r.getServerSnapshot().evaluatedAt}),o.current=!0;let{gpc:e}=r.getSnapshot().privacySignals;e.detected&&e.active&&r.set.privacySignals({gpc:!0})}else r.commands.init()},[e,r,n]),null},Q=[],X=({clearOnRevocation:e,storageConfig:r,nonce:n,options:t,scripts:o=Q})=>{let i=m(S),l=y(null),s=y(null),c=y(null),a=y({config:e,storageConfig:r}),[u,d]=k(o.length>0),f=y(o),g=y(t),p=y(n);o.length>0&&!u&&d(!0),v(()=>{a.current={config:e,storageConfig:r},f.current=o,g.current=t,p.current=n},[e,r,n,t,o]),v(()=>{if(!i)return;let e=!1;return(async()=>{if(u){let{createScriptLoader:r}=await import("@c15t/core/modules/script-loader");if(e)return;l.current=r({kernel:i,nonce:p.current,onDebug:g.current?.onDebug,scripts:f.current})}let{config:r}=a.current;if(r){let{createClearOnRevocation:n}=await import("@c15t/core/modules/clear-on-revocation");if(e)return;c.current={config:r,create:n},s.current=n({config:r,kernel:i,storageConfig:a.current.storageConfig})}})(),()=>{e=!0,s.current?.dispose(),s.current=null,c.current=null,l.current?.dispose(),l.current=null}},[i,u]);let h=r?.storageKey;return v(()=>{let e=c.current;i&&e&&(s.current?.dispose(),s.current=e.create({config:e.config,kernel:i,storageConfig:{storageKey:h}}))},[i,h]),v(()=>{l.current?.updateScripts(o)},[o]),null},Y=({options:e})=>(w(e),null),Z=({options:e})=>{let r=m(S),n=y(null),t=y(e),o=O(e.rules,e.enabled);return v(()=>{t.current=e},[e]),v(()=>{if(!r)return;let e=!1,i=o.claim(t.current.rules,t.current.enabled);return(async()=>{let{createNetworkBlocker:o}=await import("@c15t/core/modules/network-blocker");if(e)return;let l=t.current;n.current=o({enabled:l.enabled,hold:i,kernel:r,logBlockedRequests:l.logBlockedRequests,onRequestBlocked:l.onRequestBlocked,rules:l.rules})})(),()=>{e=!0,n.current?.dispose(),n.current=null,o.unmount()}},[o,r]),v(()=>{n.current?.updateRules(e.rules)},[e.rules]),v(()=>{void 0!==e.enabled&&n.current?.setEnabled(e.enabled)},[e.enabled]),null},$=({options:e,clearRef:r})=>{let n=P(e);return v(()=>(r.current=n.clear,()=>{r.current=null}),[n,r]),null},ee=({pkg:e,mode:r})=>(v(()=>{let n=d({mode:r,pkg:e});return()=>n.dispose()},[r,e]),null),er=function(e){if(!1===e.persistence)return!1;let{storageConfig:r}=e,n=!!T(e).initialRecords;return!0===e.persistence||void 0===e.persistence?{skipHydration:n,storageConfig:r}:{...e.persistence,skipHydration:e.persistence.skipHydration??n,storageConfig:e.persistence.storageConfig??r}},en=function(e,r,n){let t=e.external?r??e.external:void 0,o=t?.kernel??e.kernel;return{active:o,external:t,rendered:n?o:e.disabledKernel??o}},et=t=>{let{children:o}=t,i=t.options??{},l=D(i),[s,c]=k(()=>({clearOnRevocation:i.clearOnRevocation,consentSource:i.consentSource,disabledKernel:t.runtime?void 0:F({...i,enabled:!1}),external:t.runtime,kernel:t.runtime?.kernel??F({...i,enabled:!0})})),{clearOnRevocation:a}=s,{active:u,external:d,rendered:p}=en(s,t.runtime,l),m=void 0===d;v(()=>{(m||void 0!==i.consentCategories)&&p.set.consentCategories(i.consentCategories)},[p,m,i.consentCategories]);let w=y(null),O=h(()=>({clearRecords:()=>{d?d.clearRecords():w.current?w.current():(p.hydrate({choice:null,noticeDismissal:null,optOutDirectives:[],subject:null,vendorChoice:null}),p.events.emit({type:"records:cleared"}))},getConsentCategories:()=>{let e=p.getSnapshot();return["necessary",...e.evaluationPolicy.choiceScope??e.policyRule.scope]},getPresentation:()=>i.presentation}),[p,i.presentation,d]),P=s.consentSource?void 0:er(i),{scripts:E,networkBlocker:B}=i;v(()=>{if(m&&s.consentSource&&l)return g(p,s.consentSource)},[l,p,s,m]);let N=i.__debugPkg??"@c15t/react",j=m?f(i.mode):"hosted";G(u,i,l,m);let L=y(0);v(()=>{if(!m)return;L.current+=1;let e=L.current;return()=>{queueMicrotask(()=>{L.current===e&&(s.kernel.dispose(),s.disabledKernel?.dispose())})}},[s,m]);let M=i.theme;v(()=>{"production"===process.env.NODE_ENV||!M||!["colors","dark","motion","radius","shadows","spacing","typography"].some(e=>e in M)||document.getElementById("c15t-theme")||console.warn("c15t: `theme` tokens are no longer turned into CSS in the browser. Render <ConsentTheme theme={theme} /> on the server, or put the CSS from generateThemeCSS() in your stylesheet. See https://c15t.com/docs/frameworks/react/styling/overview")},[M]);let V=h(()=>({colorScheme:i.colorScheme,disableAnimation:i.disableAnimation,noStyle:i.noStyle,scrollLock:i.scrollLock,theme:M,trapFocus:i.trapFocus}),[M,i.noStyle,i.disableAnimation,i.scrollLock,i.trapFocus,i.colorScheme]),_=h(()=>({components:i.components,legalLinks:i.legalLinks,preloadDialog:i.preloadDialog,presentation:i.presentation}),[i.components,i.legalLinks,i.preloadDialog,i.presentation]);R(i.colorScheme);let q=n(e,{children:[m?n(e,{children:[r(W,{kernel:p,callbacks:i.callbacks,reloadOnConsentRevoked:i.reloadOnConsentRevoked}),r(ee,{pkg:N,mode:j}),l&&P?r($,{options:P,clearRef:w}):null,r(z,{enabled:l&&!s.consentSource,prepared:!!T(i).initialPolicyResolution,kernel:p}),E&&E.length>0||l&&a?r(X,{clearOnRevocation:l?a:void 0,storageConfig:P?P.storageConfig:i.storageConfig,nonce:i.nonce,options:i.scriptLoader,scripts:E}):null,l&&!1!==i.iframeBlocker?r(Y,{options:i.iframeBlocker}):null,l&&B?r(Z,{options:B}):null]}):null,d?r(b,{runtime:d,children:o}):o]});return r(S.Provider,{value:p,children:r(C.Provider,{value:O,children:r(x,{themeConfig:V,uiConfig:_,children:q})})})};export{et as ConsentProvider};
|
|
2
|
+
import{Fragment as e,jsx as r,jsxs as n}from"react/jsx-runtime";import{applyExperimentAssignment as t,applyExperimentTheme as o,createConsentKernel as i,declareOwnedVendors as s,disabledPolicyResolution as l,extractConsentNamesFromCondition as c,forgetOwnedVendors as a,hostExperiment as u,kernelConfigToInitResponse as d,resolveLocalTranslations as p,resolveVendors as m,seedExperiment as g,startExperiment as f,watchRevocationReload as v}from"@c15t/core";import{createWindowDebug as h,resolveWindowDebugMode as y}from"@c15t/core/modules/window-debug";import{connectConsentSource as k}from"@c15t/core/runtime/controls";import{deepMergeTranslations as S}from"@c15t/translations";import{applyThemeSlots as C}from"@c15t/ui/utils";import{useContext as b,useEffect as w,useMemo as x,useRef as R,useState as P,useSyncExternalStore as O}from"react";import{KernelContext as E,ProviderServicesContext as N}from"./context.js";import{ExternalIABProvider as B}from"./external-iab-context.js";import{useColorScheme as D}from"./hooks/use-color-scheme.js";import{useIframeBlockerOnDemand as j}from"./module-hooks/iframe-blocker.js";import{useEarlyNetworkHold as L}from"./module-hooks/network-hold.js";import{usePersistence as V}from"./module-hooks/persistence.js";import{V3ThemeProvider as T}from"./theme-provider.js";import{defaultTranslationConfig as _}from"./utils/default-translation-config.js";let M={language:"en",translations:_.translations.en},q=function(e){if(e)return"externalId"in e?e:{externalId:e.id,identityProvider:e.identityProvider}},A=function(e){if(!e?.messages)return;let r=e.locale??_.defaultLanguage??"en",n=_.translations.en,t=e.messages[r]??e.messages.en??n,o=_.translations[r]??n;return{language:r,translations:S(o,t)}},J=function(e){return e.enabled??!0},K=function(e,r){let n=!1;return{...e,async init(t){if(n)return e.init?.(t)??{};n=!0;let o=await r(t);return o.response?o.response:e.init?.(o.context??t)??{}}}},F=function(e){return"function"==typeof e?.then},I=function(e){let{prefetch:r}=e;return!r||F(r)?{}:r},H=function(e){let{prefetch:r}=e;return u(e.experiment,F(r)?void 0:r)},U=function(){"production"!==globalThis.process?.env?.NODE_ENV&&console.warn("c15t ConsentProvider: the streamed consent state carries an experiment, but the provider mounted before it arrived and runs none. Await resolveConsent(), or also pass `experiment` to the provider options.")},G=function(e){return void 0!==e&&Object.keys(e).length>0},W=function(e){"production"!==globalThis.process?.env?.NODE_ENV&&console.warn("c15t ConsentProvider: prefetch rejected; using transport init.",e)},z=function(e,r,n,t){let o={...r.initialOverrides??{},...n??{}};G(o)&&e.set.overrides(o),r.initialRecords&&e.getRecordsGeneration()===t&&e.hydrate(r.initialRecords)},Q=function(e,r,n,t){var o,i,s;let{prefetch:l}=r;return F(l)?K(e,(o=Promise.resolve(l),i=r.overrides,s=void 0!==r.experiment,async e=>{let r,l=n()?.getRecordsGeneration();try{r=await o??{}}catch(e){return W(e),{}}r.experiment&&!s&&U(),t(r);let c=d(r);if(c){let e={...c.resolvedOverrides??{},...i??{}};return G(e)&&(c.resolvedOverrides=e),{response:c}}let a=n();return a&&z(a,r,i,l),{context:{overrides:{...e.overrides,...r.initialOverrides??{},...i??{}},user:e.user}}})):e},X=function(e){if("function"!=typeof e.mode)throw Error("c15t ConsentProvider: set mode to hosted(), offline(), or custom().");return e.mode},Y=function(e){"production"!==globalThis.process?.env?.NODE_ENV&&console.warn(e)},Z=function(e,r,n){let t=m({config:e.vendors,existing:n.initialVendors?.declared,onWarn:Y,owners:r}),o=n.initialVendors?.listVersion??null;return t.length>0||null!==o?{declared:t,listVersion:o}:void 0},$=function(e){let r=J(e),n=I(e),t=A(e.i18n)??M,o=n,s={consentCategories:e.consentCategories,get prefetch(){return o},translations:t,translationsFor:r=>p(r,e.i18n?.messages)},a=X(e)(s),u={current:null},d=Q(a,e,()=>u.current,e=>{o=e}),m=[...e.scripts??[],...e.networkBlocker?e.networkBlocker.rules??[]:[]],f=Z(e,m,n),v=r?g(H(e),n.initialExperiment,!!n.initialPolicyResolution&&!n.initialPolicyPending):{},h=i({...n,consentCategories:e.consentCategories,inferredConsentCategories:[...m.flatMap(e=>c(e.category)),...(f?.declared??[]).flatMap(e=>c(e.category))],initialExperiment:v.initialExperiment,initialExperimentPending:v.initialExperimentPending,initialVendors:f,initialExternalPermissions:r&&e.consentSource?{}:void 0,initialRecords:r&&!e.consentSource?n.initialRecords:void 0,initialPrivacySignals:r?n.initialPrivacySignals:void 0,now:n.now??n.initialRecords?.now??(n.initialRecords?void 0:0),transport:d,initialPolicyResolution:r?n.initialPolicyResolution:l(),initialOverrides:{...n.initialOverrides??{},...e.overrides??{}},initialUser:q(e.user)??n.initialUser,initialTranslations:n.initialTranslations??t,translationOverrides:e.i18n?.messages,initialPolicyPending:!e.consentSource&&(n.initialPolicyPending??(r&&!n.initialPolicyResolution))});return u.current=h,h},ee=function(e){if(e instanceof Error)return e.message;if("string"==typeof e)return e;try{return JSON.stringify(e)}catch{return String(e)}},er=function(e,r,n){let t=R(r),o=R(n);w(()=>{t.current=r,o.current=n},[r,n]),w(()=>v({getOnBeforeReload:()=>t.current?.onBeforeConsentRevocationReload,isEnabled:()=>!1!==o.current,kernel:e}),[e]),w(()=>{let r=[e.events.on("init:applied",({snapshot:r})=>{let n=r.vendors?.declared??[];n.length>0&&e.set.registerConsentCategories(n.flatMap(e=>c(e.category)))}),e.events.on("choice:recorded",({type:e,...r})=>{t.current?.onChoiceRecorded?.(r)}),e.events.on("permissions:changed",({snapshot:e,previous:r})=>{t.current?.onPermissionsChanged?.({previous:r,snapshot:e})}),e.events.on("surface:shown",({type:e,...r})=>{t.current?.onSurfaceShown?.(r)}),e.events.on("command:error",e=>{t.current?.onError?.({error:ee(e.error)})})];return()=>{for(let e of r)e()}},[e])},en=function(e,r,n,t){let o=R(n),i=R(null),l=R(null),u=R(null);w(()=>{if(!t)return;let n=q(r.user),o=JSON.stringify(n??null);if(null===i.current){i.current=o;return}i.current!==o&&(i.current=o,n&&(async()=>{try{await e.commands.identify(n)}catch{}})())},[e,r.user,t]),w(()=>{if(!t)return;let o=JSON.stringify(r.overrides??{});if(null===l.current){l.current=o;return}l.current!==o&&(l.current=o,e.set.overrides(r.overrides??{}),n&&e.commands.init())},[n,e,r.overrides,t]),w(()=>{!t||o.current===n||(o.current=n,n||e.set.activeUI("none"))},[n,e,t]);let d=R(null),p=R(Symbol("consent-provider"));w(()=>{if(!t)return;let n=[...r.scripts??[],...r.networkBlocker?r.networkBlocker.rules??[]:[]],o=JSON.stringify([r.vendors??[],n.map(e=>[e.vendor??null,e.category])]);if(null===d.current){d.current=o,s(e,n,p.current);return}if(d.current===o)return;d.current=o;let i=e.getSnapshot().vendors?.declared??[],l=m({config:r.vendors,existing:i.flatMap(e=>{let r="manifest"===e.source?e:e.shadowed;if(r?.source!=="manifest")return[];let{ownerCategory:n,...t}=r;return[t]}),onWarn:Y});e.set.vendors({declared:l},{replaceSource:"config"}),s(e,n,p.current);let a=[...l.flatMap(e=>c(e.category)),...n.flatMap(e=>c(e.category))];a.length>0&&e.set.registerConsentCategories(a)},[e,r.networkBlocker,r.scripts,r.vendors,t]),w(()=>()=>{a(e,p.current),d.current=null},[e]),w(()=>{if("production"===globalThis.process?.env?.NODE_ENV)return;let e=JSON.stringify({experiment:H(r),i18n:r.i18n,mode:r.mode?.kind});if(null===u.current){u.current=e;return}u.current!==e&&(u.current=e,console.warn("c15t ConsentProvider: remount to change mode, i18n or experiment."))},[r])},et=({kernel:e,callbacks:r,reloadOnConsentRevoked:n})=>(er(e,r,n),null),eo=({enabled:e,kernel:r,prepared:n})=>{let t=R(!1),o=R(!1);return w(()=>{if(!e){t.current=!1;return}if(!t.current)if(t.current=!0,n){r.hydrate({now:o.current?Date.now():r.getServerSnapshot().evaluatedAt}),o.current=!0,r.markLive();let{gpc:e}=r.getSnapshot().privacySignals;e.detected&&e.active&&r.set.privacySignals({gpc:!0})}else r.commands.init()},[e,r,n]),null},ei=[],es=({clearOnRevocation:e,storageConfig:r,nonce:n,options:t,scripts:o=ei})=>{let i=b(E),s=R(null),l=R(null),c=R(null),a=R({config:e,storageConfig:r}),[u,d]=P(o.length>0),p=R(o),m=R(t),g=R(n);o.length>0&&!u&&d(!0),w(()=>{a.current={config:e,storageConfig:r},p.current=o,m.current=t,g.current=n},[e,r,n,t,o]),w(()=>{if(!i)return;let e=!1;return(async()=>{if(u){let{createScriptLoader:r}=await import("@c15t/core/modules/script-loader");if(e)return;s.current=r({kernel:i,nonce:g.current,onDebug:m.current?.onDebug,scripts:p.current})}let{config:r}=a.current;if(r){let{createClearOnRevocation:n}=await import("@c15t/core/modules/clear-on-revocation");if(e)return;c.current={config:r,create:n},l.current=n({config:r,kernel:i,storageConfig:a.current.storageConfig})}})(),()=>{e=!0,l.current?.dispose(),l.current=null,c.current=null,s.current?.dispose(),s.current=null}},[i,u]);let f=r?.storageKey;return w(()=>{let e=c.current;i&&e&&(l.current?.dispose(),l.current=e.create({config:e.config,kernel:i,storageConfig:{storageKey:f}}))},[i,f]),w(()=>{s.current?.updateScripts(o)},[o]),null},el=({options:e})=>(j(e),null),ec=({options:e})=>{let r=b(E),n=R(null),t=R(e),o=L(e.rules,e.enabled);return w(()=>{t.current=e},[e]),w(()=>{if(!r)return;let e=!1,i=o.claim(t.current.rules,t.current.enabled);return(async()=>{let{createNetworkBlocker:o}=await import("@c15t/core/modules/network-blocker");if(e)return;let s=t.current;n.current=o({enabled:s.enabled,hold:i,kernel:r,logBlockedRequests:s.logBlockedRequests,onRequestBlocked:s.onRequestBlocked,rules:s.rules})})(),()=>{e=!0,n.current?.dispose(),n.current=null,o.unmount()}},[o,r]),w(()=>{n.current?.updateRules(e.rules)},[e.rules]),w(()=>{void 0!==e.enabled&&n.current?.setEnabled(e.enabled)},[e.enabled]),null},ea=({options:e,clearRef:r})=>{let n=V(e);return w(()=>(r.current=n.clear,()=>{r.current=null}),[n,r]),null},eu=({experiment:e,kernel:r,options:n})=>(w(()=>f({...n,experiment:e,kernel:r}),[e,r,n]),null),ed=({pkg:e,mode:r})=>(w(()=>{let n=h({mode:r,pkg:e});return()=>n.dispose()},[r,e]),null),ep=function(e){if(!1===e.persistence)return!1;let{storageConfig:r}=e,n=!!I(e).initialRecords;return!0===e.persistence||void 0===e.persistence?{skipHydration:n,storageConfig:r}:{...e.persistence,skipHydration:e.persistence.skipHydration??n,storageConfig:e.persistence.storageConfig??r}},em=function(e,r,n){let t=e.external?r??e.external:void 0,o=t?.kernel??e.kernel;return{active:o,external:t,rendered:n?o:e.disabledKernel??o}},eg=i=>{let{children:s}=i,l=i.options??{},c=J(l),[a,u]=P(()=>({clearOnRevocation:l.clearOnRevocation,consentSource:l.consentSource,disabledKernel:i.runtime?void 0:$({...l,enabled:!1}),experiment:H(l),experimentOptions:{presentation:l.presentation,storageConfig:l.storageConfig,theme:l.theme},external:i.runtime,kernel:i.runtime?.kernel??$({...l,enabled:!0})})),{clearOnRevocation:d,experiment:p}=a,{active:m,external:g,rendered:f}=em(a,i.runtime,c),v=void 0===g;w(()=>{(v||void 0!==l.consentCategories)&&f.set.consentCategories(l.consentCategories)},[f,v,l.consentCategories]);let h=R(null),S=function({clearRef:e,consentSource:r,enabled:n,experiment:o,externalRuntime:i,kernel:s,presentation:l}){return x(()=>({clearRecords:()=>{i?i.clearRecords():e.current?e.current():(s.hydrate({choice:null,noticeDismissal:null,subject:null,vendorChoice:null}),s.events.emit({type:"records:cleared"}))},getConsentCategories:()=>{let e=s.getSnapshot();return["necessary",...e.evaluationPolicy.choiceScope??e.policyRule.scope]},getPresentation:()=>t(l,o,s.getSnapshot().experiment),setLanguage:e=>{if(e!==s.getSnapshot().overrides.language){if(s.set.language(e),i)return void i.reinit();n&&!r&&s.commands.init()}}}),[e,s,l,o,i,n,r])}({clearRef:h,consentSource:a.consentSource,enabled:c,experiment:p,externalRuntime:g,kernel:f,presentation:l.presentation}),b=a.consentSource?void 0:ep(l),{scripts:j,networkBlocker:L}=l;w(()=>{if(v&&a.consentSource&&c)return k(f,a.consentSource)},[c,f,a,v]);let V=l.__debugPkg??"@c15t/react",_=v?y(l.mode):"hosted";en(m,l,c,v);let M=R(0);w(()=>{if(!v)return;M.current+=1;let e=M.current;return()=>{queueMicrotask(()=>{M.current===e&&(a.kernel.dispose(),a.disabledKernel?.dispose())})}},[a,v]);let q=!v&&void 0!==l.callbacks;w(()=>{"production"!==process.env.NODE_ENV&&q&&console.warn("c15t ConsentProvider: `options.callbacks` is ignored when you pass `runtime`. Pass them to createConsentRuntime({ callbacks }) instead.")},[q]);let A=O(e=>f.subscribe(e),()=>f.getSnapshot().experiment,()=>f.getServerSnapshot().experiment),K=x(()=>o(l.theme,p,A),[l.theme,p,A]);w(()=>{"production"===process.env.NODE_ENV||!K||!["colors","dark","motion","radius","shadows","spacing","typography"].some(e=>e in K)||document.getElementById("c15t-theme")||console.warn("c15t: `theme` tokens are no longer turned into CSS in the browser. Render <ConsentTheme theme={theme} /> on the server, or put the CSS from generateThemeCSS() in your stylesheet. See https://c15t.com/docs/frameworks/react/customize")},[K]);let F=x(()=>({colorScheme:l.colorScheme,disableAnimation:l.disableAnimation,noStyle:l.noStyle,scrollLock:l.scrollLock,theme:K,trapFocus:l.trapFocus}),[K,l.noStyle,l.disableAnimation,l.scrollLock,l.trapFocus,l.colorScheme]),U=x(()=>({components:C(K?.slots,l.components,"className"),experiment:p,legalLinks:l.legalLinks,preloadDialog:l.preloadDialog,presentation:l.presentation,theme:l.theme}),[K?.slots,l.components,p,l.legalLinks,l.preloadDialog,l.presentation,l.theme]);D(l.colorScheme);let G=n(e,{children:[v?n(e,{children:[r(et,{kernel:f,callbacks:l.callbacks,reloadOnConsentRevoked:l.reloadOnConsentRevoked}),r(ed,{pkg:V,mode:_}),c&&b?r(ea,{options:b,clearRef:h}):null,c&&p&&!g&&!a.consentSource?r(eu,{experiment:p,kernel:f,options:a.experimentOptions}):null,r(eo,{enabled:c&&!a.consentSource,prepared:!!I(l).initialPolicyResolution,kernel:f}),j&&j.length>0||c&&d?r(es,{clearOnRevocation:c?d:void 0,storageConfig:b?b.storageConfig:l.storageConfig,nonce:l.nonce,options:l.scriptLoader,scripts:j}):null,c&&!1!==l.iframeBlocker?r(el,{options:l.iframeBlocker}):null,c&&L?r(ec,{options:L}):null]}):null,g?r(B,{runtime:g,children:s}):s]});return r(E.Provider,{value:f,children:r(N.Provider,{value:S,children:r(T,{themeConfig:F,uiConfig:U,children:G})})})};export{eg as ConsentProvider};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{C15T_VERSION_HEADER as e}from"@c15t/core";import{version as
|
|
1
|
+
import{C15T_VERSION_HEADER as e}from"@c15t/core";import{version as r}from"../version.js";import{CLIENT_FORWARDING_HEADERS as t,extractRelevantHeaders as o}from"./headers.js";import{normalizeBackendURL as a}from"./normalize-url.js";let c=function(){return"u">typeof performance&&"function"==typeof performance.now?performance.now():Date.now()},n=function(e){let r=null,t=!1;for(let o of["x-vercel-cache","cf-cache-status","x-cache","cache-status"]){let a=e.get(o);if(a){r=`${o}=${a}`,t=/\b(?:hit|stale|revalidated|updating)\b/iu.test(a);break}}let o=e.get("age"),a=o?Number.parseInt(o,10):NaN,c=Number.isFinite(a)&&a>0,n=c?`age=${a}`:null;return{detail:r&&n?`${r}, ${n}`:r??n,isHit:t||c}},s=function(e,r){if(!r)return;let t=Object.keys(e);console.log(`[c15t/server] Detected headers: [${t.join(", ")}]`);let o=e["cf-ipcountry"],a=e["x-vercel-ip-country"];o?console.log(`[c15t/server] Country from cf-ipcountry: ${o}`):a&&console.log(`[c15t/server] Country from x-vercel-ip-country: ${a}`)},l=async function(e,r,t,o){let a=c();try{let s=await fetch(`${e}/init`,{cache:"no-store",headers:r,method:"GET"}),l=Math.max(0,Math.round(c()-a)),i=n(s.headers),u={cache:i,requestContext:t,requestDurationMs:l};if(s.ok){let e={init:await s.json(),metadata:u};return o&&(console.log(`[c15t/server] SSR fetch succeeded in ${e.metadata?.requestDurationMs??0}ms`),e.metadata?.cache?.detail&&console.log(`[c15t/server] SSR cache status: ${e.metadata.cache.detail}`)),e}return o&&(console.log(`[c15t/server] SSR fetch failed with status: ${s.status}`),i.detail&&console.log(`[c15t/server] SSR cache status: ${i.detail}`)),{metadata:u}}catch(e){if(o){let r=e instanceof Error?e.message:"Unknown error";console.log(`[c15t/server] SSR fetch error: ${r}`)}return{}}},i=async function(c){var n;let{backendURL:i,headers:u,overrides:d,debug:g}=c;g&&console.log("[c15t/server] SSR fetch starting...");let f=o(u,{trustForwardedHeaders:c.trustForwardedHeaders});if(s(f,g),!(Object.keys(f).length>0||t.some(e=>u.has(e)))){g&&console.log("[c15t/server] No relevant headers found, skipping SSR fetch");return}let h=a(i,u,{trustForwardedHeaders:c.trustForwardedHeaders});if(!h){g&&console.log("[c15t/server] Failed to normalize URL, skipping SSR fetch");return}g&&console.log(`[c15t/server] Fetching from: ${h}/init`);let v={[e]:r,...f};d?.country&&(v["x-c15t-country"]=d.country,g&&console.log(`[c15t/server] Country override: ${d.country}`)),d?.region&&(v["x-c15t-region"]=d.region,g&&console.log(`[c15t/server] Region override: ${d.region}`)),d?.language&&(v["accept-language"]=d.language,g&&console.log(`[c15t/server] Language override: ${d.language}`));let m=await l(h,v,{backendURL:(n={backendURL:h,headers:v,overrides:d}).backendURL,country:n.overrides?.country??n.headers["x-c15t-country"]??null,gpc:"1"===n.headers["sec-gpc"],language:n.overrides?.language??n.headers["accept-language"]??null,region:n.overrides?.region??n.headers["x-c15t-region"]??null},g),{init:p}=m;if(!p){g&&console.log("[c15t/server] SSR fetch returned no data");return}return{gvl:p.gvl,init:p,metadata:m.metadata}};export{i as fetchSSRData};
|
package/dist/server/headers.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{CONSENT_REQUEST_HEADER_NAMES as e,extractConsentRequestInputs as r}from"@c15t/schema/types";let t=[...e,"x-c15t-version","user-agent","x-forwarded-
|
|
1
|
+
import{CONSENT_REQUEST_HEADER_NAMES as e,extractConsentRequestInputs as r}from"@c15t/schema/types";let t=[...e,"x-c15t-version","user-agent","x-forwarded-for","purpose","sec-purpose","next-router-prefetch","x-middleware-prefetch"],o=["forwarded","x-forwarded-host","x-forwarded-proto"],a=function(e,a={}){let d={};for(let r of a.trustForwardedHeaders?[...t,...o]:t){let t=e.get(r);t&&(d[r]=t)}let c=r(e);return c.country&&(d["x-c15t-country"]=c.country),c.region&&(d["x-c15t-region"]=c.region),d};export{o as CLIENT_FORWARDING_HEADERS,a as extractRelevantHeaders};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{resolveRequestBackendURL as r}from"@c15t/core/server";let e=/^https?:\/\//u,t=function(r){return"/"===r?r:r.endsWith("/")?r.slice(0,-1):r},a=function(r){if(e.test(r))return String(new URL(r)),{isAbsolute:!0,normalizedURL:t(r)};if(r.startsWith("/"))return{isAbsolute:!1,normalizedURL:t(r)};throw Error(`Invalid URL format: ${r}. URL must be absolute (https://...) or relative starting with (/)`)},n=function(e,t,a={}){return r(e,{headers:t,trustForwardedHeaders:a.trustForwardedHeaders})};export{n as normalizeBackendURL,a as validateBackendURL};
|
package/dist/styles.tw3.css
CHANGED
|
@@ -17,53 +17,53 @@
|
|
|
17
17
|
:root, :host{--collapsible-duration:var(--c15t-duration-normal);--collapsible-ease:var(--c15t-easing);--collapsible-content-color:var(--c15t-text-muted);--collapsible-gap:0}
|
|
18
18
|
|
|
19
19
|
/* primitives/legal-links vars */
|
|
20
|
-
:root, :host{--legal-links-gap:.75rem;--legal-links-font-size
|
|
20
|
+
:root, :host{--legal-links-gap:.75rem;--legal-links-font-size:var(--c15t-font-size-sm);--legal-links-transition:text-decoration var(--c15t-duration-slow) var(--c15t-easing);--legal-links-text-decoration:none;--legal-links-text-decoration-hover:underline;--legal-links-outline:2px solid currentColor;--legal-links-outline-offset:2px;--legal-links-color:var(--c15t-primary);--legal-links-focus-color:var(--c15t-primary);--legal-links-focus-color-dark:var(--c15t-primary)}
|
|
21
21
|
|
|
22
22
|
/* primitives/preference-item vars */
|
|
23
|
-
:root, :host{--preference-item-gap:.75rem;--preference-item-leading-gap
|
|
23
|
+
:root, :host{--preference-item-gap:.75rem;--preference-item-leading-gap:var(--c15t-space-sm);--preference-item-content-color:var(--c15t-text-muted);--preference-item-duration:var(--c15t-duration-normal);--preference-item-ease:var(--c15t-easing);--preference-item-focus-ring:var(--c15t-primary)}
|
|
24
24
|
|
|
25
25
|
/* primitives/tabs vars */
|
|
26
26
|
:root, :host{--tabs-list-background:var(--c15t-surface);--tabs-list-border:var(--c15t-border);--tabs-trigger-color:var(--c15t-text-muted);--tabs-trigger-active-color:var(--c15t-text);--tabs-trigger-active-background:var(--c15t-surface-hover);--tabs-focus-ring:var(--c15t-primary)}
|
|
27
27
|
|
|
28
28
|
/* components/branding vars */
|
|
29
|
-
:root, :host{--consent-dialog-branding-font-size:var(--c15t-font-size-base);--consent-dialog-branding-font-weight:var(--c15t-font-weight-medium);--consent-dialog-branding-line-height:var(--c15t-line-height-relaxed);--consent-dialog-branding-letter-spacing:-.01em;--consent-dialog-branding-focus-color:var(--c15t-primary);--consent-dialog-branding-focus-color-dark:var(--c15t-primary);--consent-dialog-foreground-color:var(--c15t-text);--consent-dialog-foreground-color-dark:var(--c15t-text);--consent-dialog-card-padding:var(--c15t-space-lg);--consent-dialog-card-padding-mobile:var(--c15t-space-md);--consent-dialog-branding-gap
|
|
29
|
+
:root, :host{--consent-dialog-branding-font-size:var(--c15t-font-size-base);--consent-dialog-branding-font-weight:var(--c15t-font-weight-medium);--consent-dialog-branding-line-height:var(--c15t-line-height-relaxed);--consent-dialog-branding-letter-spacing:-.01em;--consent-dialog-branding-focus-color:var(--c15t-primary);--consent-dialog-branding-focus-color-dark:var(--c15t-primary);--consent-dialog-foreground-color:var(--c15t-text);--consent-dialog-foreground-color-dark:var(--c15t-text);--consent-dialog-card-padding:var(--c15t-space-lg);--consent-dialog-card-padding-mobile:var(--c15t-space-md);--consent-dialog-branding-gap:var(--c15t-space-sm);--consent-dialog-branding-icon-height:1.25rem;--consent-dialog-branding-icon-width:auto;--consent-dialog-branding-label-size:.6875rem}
|
|
30
30
|
|
|
31
|
-
/* components/
|
|
31
|
+
/* components/consent-gate vars */
|
|
32
32
|
@keyframes fadeIn{to{opacity:1}}
|
|
33
|
-
:root, :host{--c15t-fade-in-animation:fadeIn
|
|
34
|
-
:root, :host{--
|
|
33
|
+
:root, :host{--c15t-fade-in-animation:fadeIn var(--c15t-duration-normal) var(--c15t-easing-out) forwards}
|
|
34
|
+
:root, :host{--consent-gate-font-family:var(--c15t-font-family);--consent-gate-line-height:var(--c15t-line-height-normal);--consent-gate-placeholder-gap:var(--c15t-space-md);--consent-gate-placeholder-border-radius:calc(var(--c15t-radius-lg) * 5 / 3);--consent-gate-placeholder-border-width:1px;--consent-gate-placeholder-border-color:var(--c15t-border);--consent-gate-placeholder-border-color-dark:var(--c15t-border);--consent-gate-placeholder-background-color:var(--c15t-surface);--consent-gate-placeholder-background-color-dark:var(--c15t-surface);--consent-gate-placeholder-text-color:var(--c15t-text);--consent-gate-placeholder-text-color-dark:var(--c15t-text);--consent-gate-placeholder-title-color:var(--c15t-text);--consent-gate-placeholder-title-color-dark:var(--c15t-text);--consent-gate-placeholder-shadow:var(--c15t-shadow-lg);--consent-gate-placeholder-shadow-dark:var(--c15t-shadow-lg);--consent-gate-placeholder-opacity:1;--consent-gate-placeholder-animation:none}
|
|
35
35
|
|
|
36
36
|
/* components/manager vars */
|
|
37
37
|
@keyframes enter{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}
|
|
38
38
|
@keyframes exit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}
|
|
39
39
|
:root, :host{--c15t-enter-animation:enter var(--c15t-duration-fast) var(--c15t-easing);--c15t-exit-animation:exit var(--c15t-duration-fast) var(--c15t-easing)}
|
|
40
|
-
:root, :host{--consent-manager-background-color:var(--c15t-surface);--consent-manager-background-color-dark:var(--c15t-surface);--consent-manager-border-color:var(--c15t-border);--consent-manager-border-color-dark:var(--c15t-border);--consent-manager-text-color:var(--c15t-text);--consent-manager-text-color-dark:var(--c15t-text);--consent-manager-text-muted-color:var(--c15t-text-muted);--consent-manager-text-muted-color-dark:var(--c15t-text-muted);--consent-manager-footer-background-color:transparent;--consent-manager-footer-background-color-dark:transparent;--consent-manager-link-text-color:var(--c15t-text);--consent-manager-link-text-color-dark:var(--c15t-text);--consent-manager-branding-link-color:var(--c15t-primary);--consent-manager-padding:0;--consent-manager-radius:0;--consent-manager-gap:var(--c15t-space-xs);--consent-manager-border-width:0;--consent-manager-max-width:32rem;--consent-manager-z-index:50;--consent-manager-footer-padding:var(--c15t-space-lg) 0 0 0;--consent-manager-title-size:var(--c15t-font-size-sm);--consent-manager-title-line-height:var(--c15t-line-height-tight);--consent-manager-title-tracking:-.006em;--consent-manager-title-weight:var(--c15t-font-weight-semibold);--consent-manager-entry-animation:var(--c15t-enter-animation);--consent-manager-exit-animation:var(--c15t-exit-animation);--consent-manager-font-family:
|
|
40
|
+
:root, :host{--consent-manager-background-color:var(--c15t-surface);--consent-manager-background-color-dark:var(--c15t-surface);--consent-manager-border-color:var(--c15t-border);--consent-manager-border-color-dark:var(--c15t-border);--consent-manager-text-color:var(--c15t-text);--consent-manager-text-color-dark:var(--c15t-text);--consent-manager-text-muted-color:var(--c15t-text-muted);--consent-manager-text-muted-color-dark:var(--c15t-text-muted);--consent-manager-footer-background-color:transparent;--consent-manager-footer-background-color-dark:transparent;--consent-manager-link-text-color:var(--c15t-text);--consent-manager-link-text-color-dark:var(--c15t-text);--consent-manager-branding-link-color:var(--c15t-primary);--consent-manager-padding:0;--consent-manager-radius:0;--consent-manager-gap:var(--c15t-space-xs);--consent-manager-border-width:0;--consent-manager-max-width:32rem;--consent-manager-z-index:50;--consent-manager-footer-padding:var(--c15t-space-lg) 0 0 0;--consent-manager-title-size:var(--c15t-font-size-sm);--consent-manager-title-line-height:var(--c15t-line-height-tight);--consent-manager-title-tracking:-.006em;--consent-manager-title-weight:var(--c15t-font-weight-semibold);--consent-manager-entry-animation:var(--c15t-enter-animation);--consent-manager-exit-animation:var(--c15t-exit-animation);--consent-manager-font-family:var(--c15t-font-family);--consent-manager-line-height:1.15}
|
|
41
41
|
|
|
42
42
|
/* components/panel vars */
|
|
43
|
-
:root, :host{--consent-dialog-font-family:var(--c15t-font-family);--consent-dialog-line-height:var(--c15t-line-height-tight);--consent-dialog-title-font-size:var(--c15t-font-size-sm);--consent-dialog-title-font-weight:var(--c15t-font-weight-semibold);--consent-dialog-title-letter-spacing:-.025em;--consent-dialog-description-font-size:var(--c15t-font-size-base);--consent-dialog-description-font-weight:var(--c15t-font-weight-normal);--consent-dialog-description-line-height:var(--c15t-line-height-normal);--consent-dialog-footer-gap:var(--c15t-space-sm);--consent-dialog-footer-font-size:
|
|
43
|
+
:root, :host{--consent-dialog-font-family:var(--c15t-font-family);--consent-dialog-line-height:var(--c15t-line-height-tight);--consent-dialog-title-font-size:var(--c15t-font-size-sm);--consent-dialog-title-font-weight:var(--c15t-font-weight-semibold);--consent-dialog-title-letter-spacing:-.025em;--consent-dialog-description-font-size:var(--c15t-font-size-base);--consent-dialog-description-font-weight:var(--c15t-font-weight-normal);--consent-dialog-description-line-height:var(--c15t-line-height-normal);--consent-dialog-footer-gap:var(--c15t-space-sm);--consent-dialog-footer-font-size:var(--c15t-font-size-sm);--consent-dialog-stroke-color:var(--c15t-border);--consent-dialog-stroke-color-dark:var(--c15t-border);--consent-dialog-link-text-color:var(--c15t-text);--consent-dialog-link-text-color-dark:var(--c15t-text);--consent-dialog-border-color:var(--c15t-border);--consent-dialog-border-color-dark:var(--c15t-border);--consent-dialog-background-color:var(--c15t-surface);--consent-dialog-background-color-dark:var(--c15t-surface);--consent-dialog-foreground-color:var(--c15t-text);--consent-dialog-foreground-color-dark:var(--c15t-text);--consent-dialog-muted-color:var(--c15t-text-muted);--consent-dialog-muted-color-dark:var(--c15t-text-muted);--consent-dialog-overlay-background-color:var(--c15t-overlay);--consent-dialog-overlay-background-color-dark:var(--c15t-overlay);--consent-dialog-card-padding:var(--c15t-space-lg);--consent-dialog-card-padding-mobile:var(--c15t-space-md);--consent-dialog-card-gap:var(--c15t-space-xs);--consent-dialog-header-gap:var(--c15t-space-xs);--consent-dialog-content-gap:var(--c15t-space-md);--consent-dialog-footer-padding-y:var(--c15t-space-md);--consent-dialog-card-radius:var(--c15t-radius-lg);--consent-dialog-max-width:28rem;--consent-dialog-height:100%;--consent-dialog-max-height:calc(100dvh - 2 * var(--consent-dialog-card-padding-mobile));--consent-dialog-z-index:999999;--consent-dialog-overlay-z-index:999998;--consent-dialog-card-shadow:var(--c15t-shadow-sm);--consent-dialog-border-width:1px;--consent-dialog-border-width-hairline:1px;--consent-dialog-border-style:solid;--consent-dialog-animation-duration:var(--c15t-duration-normal);--consent-dialog-animation-timing:var(--c15t-easing-out)}
|
|
44
44
|
@media only screen and (resolution>=192dpi){:root, :host{--consent-dialog-border-width-hairline:.5px}}
|
|
45
45
|
|
|
46
46
|
/* components/prompt vars */
|
|
47
|
-
:root, :host{--consent-banner-font-family:var(--c15t-font-family);--consent-banner-line-height:var(--c15t-line-height-normal);--consent-banner-text-size-adjust:100%;--consent-banner-tab-size:4;--consent-banner-border-radius-sm:var(--c15t-radius-sm);--consent-banner-border-radius:var(--c15t-radius-lg);--consent-banner-max-width:440px;--consent-banner-widget-max-width:20rem;--consent-banner-wall-max-width:30rem;--consent-banner-branding-tag-offset:2rem;--consent-banner-animation-duration:var(--c15t-duration-fast);--consent-banner-animation-timing:var(--c15t-easing);--consent-banner-
|
|
47
|
+
:root, :host{--consent-banner-font-family:var(--c15t-font-family);--consent-banner-line-height:var(--c15t-line-height-normal);--consent-banner-text-size-adjust:100%;--consent-banner-tab-size:4;--consent-banner-border-radius-sm:var(--c15t-radius-sm);--consent-banner-border-radius:var(--c15t-radius-lg);--consent-banner-max-width:440px;--consent-banner-widget-max-width:20rem;--consent-banner-wall-max-width:30rem;--consent-banner-branding-tag-offset:2rem;--consent-banner-animation-duration:var(--c15t-duration-fast);--consent-banner-animation-timing:var(--c15t-easing);--consent-banner-border-width:1px;--consent-banner-border-width-hairline:1px;--consent-banner-shadow:var(--c15t-shadow-lg);--consent-banner-shadow-dark:var(--c15t-shadow-lg);--consent-banner-background-color:var(--c15t-surface);--consent-banner-background-color-dark:var(--c15t-surface);--consent-banner-footer-background-color:var(--c15t-surface-hover);--consent-banner-footer-background-color-dark:var(--c15t-surface-hover);--consent-banner-text-color:var(--c15t-text);--consent-banner-text-color-dark:var(--c15t-text);--consent-banner-border-color:var(--c15t-border);--consent-banner-border-color-dark:var(--c15t-border);--consent-banner-title-color:var(--c15t-text);--consent-banner-title-color-dark:var(--c15t-text);--consent-banner-description-color:var(--c15t-text-muted);--consent-banner-description-color-dark:var(--c15t-text-muted);--consent-banner-overlay-background-color:var(--c15t-overlay);--consent-banner-overlay-background-color-dark:var(--c15t-overlay)}
|
|
48
48
|
@media only screen and (resolution>=192dpi){:root, :host{--consent-banner-border-width-hairline:.5px}}
|
|
49
49
|
|
|
50
50
|
/* components/branding */
|
|
51
|
-
.c15t-ui-branding-yf52E:not(.headless){justify-content:center;align-items:center;gap:var(--consent-dialog-branding-gap);font-size:var(--consent-dialog-branding-font-size);font-weight:var(--consent-dialog-branding-font-weight);line-height:var(--consent-dialog-branding-line-height);letter-spacing:var(--consent-dialog-branding-letter-spacing);color:var(--consent-dialog-foreground-color);border-radius:.25rem;margin:auto 0;padding:0 .5rem;text-decoration:none;display:flex}.c15t-ui-brandingCopy-ktA4u:not(.headless){white-space:nowrap;align-items:baseline;gap:.25rem;min-width:0;display:inline-flex}.c15t-ui-brandingText-ls0cn:not(.headless){font-weight:var(--c15t-font-weight-medium)}.c15t-ui-brandingBy-CWN3T:not(.headless){font-weight:var(--c15t-font-weight-normal)}.c15t-ui-brandingWordmarkLabel-FxCKX:not(.headless){white-space:nowrap;letter-spacing:-.03em}.c15t-ui-branding-yf52E:not(.headless):focus-visible{box-shadow:0 0 0 2px var(--consent-dialog-branding-focus-color);outline:none}.c15t-dark .c15t-ui-branding-yf52E:not(.headless):focus-visible{box-shadow:0 0 0 2px var(--consent-dialog-branding-focus-color-dark)}.c15t-dark .c15t-ui-branding-yf52E:not(.headless){color:var(--consent-dialog-foreground-color-dark)}.c15t-ui-brandingC15T-GVCPl:not(.headless){flex:none;align-items:center;width:auto;max-width:100%;height:auto;display:inline-flex}.c15t-ui-brandingWordmark-yqSW2:not(.headless){white-space:nowrap;flex:none;align-items:center;gap:.25rem;min-width:0;max-width:100%;display:inline-flex}.c15t-ui-brandingC15TMark-VvBd_:not(.headless){width:auto;max-width:100%;height:var(--consent-dialog-branding-icon-height);flex:none;align-items:center;display:inline-flex}.c15t-ui-brandingC15TMark-VvBd_:not(.headless)>svg{aspect-ratio:446/445;flex:none;width:auto;max-width:100%;height:100%;display:block}.c15t-ui-brandingInth-bviD3:not(.headless){max-width:100%;width:var(--consent-dialog-branding-icon-width);height:var(--consent-dialog-branding-icon-height);flex:none;align-items:center;display:inline-flex}.c15t-ui-brandingInth-bviD3:not(.headless)>svg{aspect-ratio:88/90;flex:none;width:auto;max-width:100%;height:100%;display:block}.c15t-ui-brandingTag-V3N0M:not(.headless){border:1px solid color-mix(in srgb, var(--c15t-primary), black 14%);max-width:calc(100% - 1.5rem);min-height:1.75rem;color:var(--c15t-text-on-primary,#fff);background-color:var(--c15t-primary);z-index:2;border-radius:.75rem .75rem .1875rem .1875rem;align-items:center;gap:.375rem;padding:.28125rem .625rem;text-decoration:none;display:inline-flex;position:absolute
|
|
51
|
+
.c15t-ui-branding-yf52E:not(.headless){justify-content:center;align-items:center;gap:var(--consent-dialog-branding-gap);font-size:var(--consent-dialog-branding-font-size);font-weight:var(--consent-dialog-branding-font-weight);line-height:var(--consent-dialog-branding-line-height);letter-spacing:var(--consent-dialog-branding-letter-spacing);color:var(--consent-dialog-foreground-color);border-radius:.25rem;margin:auto 0;padding:0 .5rem;text-decoration:none;display:flex}.c15t-ui-brandingCopy-ktA4u:not(.headless){white-space:nowrap;align-items:baseline;gap:.25rem;min-width:0;display:inline-flex}.c15t-ui-brandingText-ls0cn:not(.headless){font-weight:var(--c15t-font-weight-medium)}.c15t-ui-brandingBy-CWN3T:not(.headless){font-weight:var(--c15t-font-weight-normal)}.c15t-ui-brandingWordmarkLabel-FxCKX:not(.headless){white-space:nowrap;letter-spacing:-.03em}.c15t-ui-branding-yf52E:not(.headless):focus-visible{box-shadow:0 0 0 2px var(--consent-dialog-branding-focus-color);outline:none}.c15t-dark .c15t-ui-branding-yf52E:not(.headless):focus-visible{box-shadow:0 0 0 2px var(--consent-dialog-branding-focus-color-dark)}.c15t-dark .c15t-ui-branding-yf52E:not(.headless){color:var(--consent-dialog-foreground-color-dark)}.c15t-ui-brandingC15T-GVCPl:not(.headless){flex:none;align-items:center;width:auto;max-width:100%;height:auto;display:inline-flex}.c15t-ui-brandingWordmark-yqSW2:not(.headless){white-space:nowrap;flex:none;align-items:center;gap:.25rem;min-width:0;max-width:100%;display:inline-flex}.c15t-ui-brandingC15TMark-VvBd_:not(.headless){width:auto;max-width:100%;height:var(--consent-dialog-branding-icon-height);flex:none;align-items:center;display:inline-flex}.c15t-ui-brandingC15TMark-VvBd_:not(.headless)>svg{aspect-ratio:446/445;flex:none;width:auto;max-width:100%;height:100%;display:block}.c15t-ui-brandingInth-bviD3:not(.headless){max-width:100%;width:var(--consent-dialog-branding-icon-width);height:var(--consent-dialog-branding-icon-height);flex:none;align-items:center;display:inline-flex}.c15t-ui-brandingInth-bviD3:not(.headless)>svg{aspect-ratio:88/90;flex:none;width:auto;max-width:100%;height:100%;display:block}.c15t-ui-brandingTag-V3N0M:not(.headless){border:1px solid var(--consent-branding-tag-border-color,color-mix(in srgb, var(--c15t-primary), black 14%));max-width:calc(100% - 1.5rem);min-height:1.75rem;color:var(--consent-branding-tag-text-color,var(--c15t-text-on-primary,#fff));background-color:var(--consent-branding-tag-background-color,var(--c15t-primary));box-shadow:var(--consent-branding-tag-shadow,inset 0 1px 0 #ffffff29, 0 1px 2px #0f172a1f);z-index:2;border-radius:.75rem .75rem .1875rem .1875rem;align-items:center;gap:.375rem;padding:.28125rem .625rem;text-decoration:none;display:inline-flex;position:absolute}.c15t-ui-brandingContent-Z9PVI:not(.headless){align-items:center;gap:.375rem;min-width:0;display:inline-flex}.c15t-ui-brandingTag-V3N0M:not(.headless) .c15t-ui-brandingCopy-ktA4u{font-size:var(--consent-dialog-branding-label-size);letter-spacing:.01em;color:var(--consent-branding-tag-text-color,var(--c15t-text-on-primary,#fff));text-decoration:none}.c15t-ui-brandingTag-V3N0M .c15t-ui-brandingText-ls0cn,.c15t-ui-brandingTag-V3N0M:not(.headless) .c15t-ui-brandingBy-CWN3T{line-height:1}.c15t-ui-brandingTag-V3N0M:not(.headless) .c15t-ui-brandingWordmarkLabel-FxCKX{font-size:var(--consent-dialog-branding-label-size);line-height:1}.c15t-ui-brandingTag-V3N0M:not(.headless) .c15t-ui-brandingWordmark-yqSW2{color:var(--consent-branding-tag-text-color,var(--c15t-text-on-primary,#fff));gap:.3125rem;text-decoration:none}.c15t-ui-brandingTag-V3N0M:not(.headless) .c15t-ui-brandingC15TMark-VvBd_,.c15t-ui-brandingTag-V3N0M:not(.headless) .c15t-ui-brandingInth-bviD3{height:.9375rem;color:var(--consent-branding-tag-mark-color,var(--consent-branding-tag-text-color,var(--c15t-text-on-primary,#fff)))}:is(.c15t-ui-brandingTag-V3N0M[data-context=banner]:not(.headless),.c15t-ui-brandingTag-V3N0M[data-context=iab-banner]:not(.headless)){border-bottom-width:var(--consent-branding-tag-attached-edge-width,0px);border-radius:.75rem .75rem 0 0;align-self:flex-end;margin-block-end:-1px;margin-inline-end:.75rem;position:relative;top:auto;right:auto;transform:none}:is(.c15t-ui-brandingTag-V3N0M[data-context=dialog]:not(.headless),.c15t-ui-brandingTag-V3N0M[data-context=iab-dialog]:not(.headless)){right:var(--consent-dialog-card-padding-mobile);transform:translateY(calc(100% + 1px - var(--consent-branding-tag-attached-edge-width,0px)));border-top-width:var(--consent-branding-tag-attached-edge-width,0px);border-radius:0 0 .75rem .75rem;bottom:0}.c15t-ui-brandingTag-V3N0M[data-context=manager]:not(.headless){max-width:none;min-height:auto;color:var(--consent-manager-link-text-color);box-shadow:none;z-index:auto;text-align:center;background-color:#0000;border:none;border-radius:0;flex-direction:row;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:0;text-decoration:none;display:flex;position:static}.c15t-dark .c15t-ui-brandingTag-V3N0M[data-context=manager]:not(.headless){color:var(--consent-manager-link-text-color-dark)}.c15t-ui-brandingTag-V3N0M[data-context=manager]:not(.headless) svg{height:1.2rem}@media (width>=640px){:is(.c15t-ui-brandingTag-V3N0M[data-context=dialog]:not(.headless),.c15t-ui-brandingTag-V3N0M[data-context=iab-dialog]:not(.headless)){right:var(--consent-dialog-card-padding)}}.c15t-ui-brandingTagBanner-zFtcX:not(.headless){border-bottom-width:var(--consent-branding-tag-attached-edge-width,0px);border-radius:.75rem .75rem 0 0;align-self:flex-end;margin-block-end:-1px;margin-inline-end:.75rem;position:relative;top:auto;right:auto;transform:none}.c15t-ui-brandingTagDialog-Iv_a_:not(.headless){right:var(--consent-dialog-card-padding-mobile);transform:translateY(calc(100% + 1px - var(--consent-branding-tag-attached-edge-width,0px)));border-top-width:var(--consent-branding-tag-attached-edge-width,0px);border-radius:0 0 .75rem .75rem;bottom:0}@media (width>=640px){.c15t-ui-brandingTagDialog-Iv_a_:not(.headless){right:var(--consent-dialog-card-padding)}}@media (width<=480px){.c15t-ui-brandingTag-V3N0M:not(.headless){gap:.375rem;max-width:calc(100% - 1rem);padding:.3125rem .625rem}.c15t-ui-brandingTag-V3N0M .c15t-ui-brandingCopy-ktA4u,.c15t-ui-brandingTag-V3N0M:not(.headless) .c15t-ui-brandingWordmarkLabel-FxCKX{font-size:.625rem}.c15t-ui-brandingTag-V3N0M .c15t-ui-brandingC15TMark-VvBd_,.c15t-ui-brandingTag-V3N0M:not(.headless) .c15t-ui-brandingInth-bviD3{height:.8125rem}}.c15t-ui-brandingFooter-QIudR.c15t-ui-brandingFooter-QIudR:not(.headless){border-top:0;height:0;min-height:0;padding:0;position:relative;overflow:visible}.c15t-ui-brandingFooter-QIudR.c15t-ui-brandingFooter-QIudR:not(.headless):empty{display:none}
|
|
52
52
|
|
|
53
53
|
/* components/button */
|
|
54
|
-
.c15t-ui-button-IiSDl:not(.headless){text-wrap:nowrap;white-space:nowrap;border-radius:var(--button-border-radius);font-weight:var(--button-font-weight);transition:var(--button-transition);cursor:var(--button-cursor);border:var(--button-border-width) var(--button-border-style) var(--button-border-color);font-size:var(--button-font-size);line-height:var(--button-line-height);color:var(--button-text);font-family:var(--button-font);touch-action:manipulation;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1rem;display:inline-flex}.c15t-dark .c15t-ui-button-IiSDl:not(.headless){color:var(--button-text-dark)}.c15t-ui-button-IiSDl:not(.headless):disabled{opacity:.5;cursor:not-allowed}.c15t-ui-button-IiSDl:not(.headless):active:not(:disabled){transform:scale(.97)}.c15t-ui-button-IiSDl:not(.headless)[data-size=small]{font-size:var(--button-font-size);line-height:var(--button-line-height);padding:.5rem .75rem}.c15t-ui-button-IiSDl:not(.headless)[data-size=xsmall]{font-size:var(--button-font-size);line-height:var(--button-line-height);padding:.375rem .625rem}.c15t-ui-button-IiSDl:not(.headless)[data-size=xxsmall]{font-size:var(--button-font-size);line-height:var(--button-line-height);padding:.25rem .5rem}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]{background-color:var(--button-primary);color:var(--button-background-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]:focus-visible{box-shadow:var(--button-shadow-primary-focus)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]{background-color:var(--button-primary-dark);color:var(--button-background-color-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]:hover:not(:disabled){background-color:var(--button-primary-hover);transition:var(--button-hover-transition-color)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]:hover:not(:disabled){background-color:var(--button-primary-hover-dark);transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=stroke]{background-color:var(--button-background-color);color:var(--button-primary);box-shadow:var(--button-shadow-primary)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=stroke]{background-color:var(--button-background-color-dark);color:var(--button-primary-dark);box-shadow:var(--button-shadow-primary-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-primary-hover-tint);box-shadow:var(--button-shadow-primary-hover);transition:var(--button-hover-transition-full)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-primary-hover-tint);box-shadow:var(--button-shadow-primary-hover-dark);transition:var(--button-hover-transition-full)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=lighter]{background-color:color-mix(in srgb, var(--button-primary) 10%, transparent);color:color-mix(in srgb, var(--button-primary) 85%, black)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=lighter]{background-color:color-mix(in srgb, var(--button-primary-dark) 10%, transparent);color:var(--button-primary-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-primary) 20%, transparent);transition:var(--button-hover-transition-color)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-primary-dark) 20%, transparent);transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=ghost]{color:var(--button-primary)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=ghost]{color:var(--button-primary-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=ghost]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=ghost]:hover:not(:disabled){background-color:var(--button-primary-hover-tint);transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]{background-color:var(--button-neutral);color:var(--button-background-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]:focus-visible{box-shadow:var(--button-shadow-neutral-focus)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]{background-color:var(--button-neutral-dark);color:var(--button-background-color-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]:hover:not(:disabled){background-color:var(--button-neutral-hover);box-shadow:none;transition:var(--button-hover-transition-color)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]:hover:not(:disabled){background-color:var(--button-neutral-hover-dark);box-shadow:none;transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=stroke]{background-color:var(--button-background-color);box-shadow:var(--button-shadow-neutral)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=stroke]{background-color:var(--button-background-color-dark);box-shadow:var(--button-shadow-neutral-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-neutral-hover-tint);box-shadow:none;color:var(--button-text-hover);transition:var(--button-hover-transition-full)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-neutral-hover-tint);box-shadow:none;color:var(--button-text-hover-dark);transition:var(--button-hover-transition-full)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=lighter]{background-color:color-mix(in srgb, var(--button-neutral) 10%, transparent);color:var(--button-neutral)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=lighter]{background-color:color-mix(in srgb, var(--button-neutral-dark) 10%, transparent);color:var(--button-neutral-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-neutral) 20%, transparent);transition:var(--button-hover-transition-color)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-neutral-dark) 20%, transparent);transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=ghost]{color:var(--button-neutral)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=ghost]{color:var(--button-neutral-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=ghost]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=ghost]:hover:not(:disabled){background-color:var(--button-neutral-hover-tint);box-shadow:none;transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=filled]{background-color:var(--button-neutral);color:var(--button-background-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=filled]:focus-visible{box-shadow:var(--button-shadow-neutral-focus)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=filled]{background-color:var(--button-neutral-dark);color:var(--button-background-color-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=filled]:hover:not(:disabled){background-color:var(--button-neutral-hover);box-shadow:none;transition:var(--button-hover-transition-color)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=filled]:hover:not(:disabled){background-color:var(--button-neutral-hover-dark);box-shadow:none;transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=stroke]{background-color:var(--button-background-color);box-shadow:var(--button-shadow-neutral)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=stroke]{background-color:var(--button-background-color-dark);box-shadow:var(--button-shadow-neutral-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-neutral-hover-tint);box-shadow:none;color:var(--button-text-hover);transition:var(--button-hover-transition-full)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-neutral-hover-tint);box-shadow:none;color:var(--button-text-hover-dark);transition:var(--button-hover-transition-full)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=lighter]{background-color:color-mix(in srgb, var(--button-neutral) 10%, transparent);color:var(--button-neutral)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=lighter]{background-color:color-mix(in srgb, var(--button-neutral-dark) 10%, transparent);color:var(--button-neutral-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-neutral) 20%, transparent);transition:var(--button-hover-transition-color)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-neutral-dark) 20%, transparent);transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=ghost]{color:var(--button-neutral)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=ghost]{color:var(--button-neutral-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=ghost]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=ghost]:hover:not(:disabled){background-color:var(--button-neutral-hover-tint);box-shadow:none;transition:var(--button-hover-transition-color)}.c15t-ui-buttonIcon-QgScm:not(.headless){justify-content:center;align-items:center;display:inline-flex}@media (prefers-reduced-motion:reduce){.c15t-ui-button-IiSDl:not(.headless),.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=stroke]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=lighter]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=ghost]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=stroke]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=lighter]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=ghost]:hover:not(:disabled){transition:none}}@media (hover:none){.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]:hover:not(:disabled){background-color:var(--button-primary)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-background-color);box-shadow:var(--button-shadow-primary)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-primary) 10%, transparent)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=ghost]:hover:not(:disabled){background-color:#0000}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]:hover:not(:disabled){background-color:var(--button-neutral)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-background-color);box-shadow:var(--button-shadow-neutral)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-neutral) 10%, transparent)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=ghost]:hover:not(:disabled){background-color:#0000}}.c15t-ui-button-IiSDl:not(.headless):focus-visible,.c15t-ui-button-IiSDl:not(.headless)[data-variant][data-mode]:focus-visible,.c15t-ui-button-IiSDl:not(.headless)[data-variant][data-mode]:focus-visible:hover:not(:disabled){box-shadow:var(--button-shadow-primary-focus);outline:none}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode]:focus-visible,.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode]:focus-visible:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode]:focus-visible,.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode]:focus-visible:hover:not(:disabled){box-shadow:var(--button-shadow-neutral-focus)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless):focus-visible,.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant][data-mode]:focus-visible,.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant][data-mode]:focus-visible:hover:not(:disabled){box-shadow:var(--button-shadow-primary-focus-dark)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode]:focus-visible,.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode]:focus-visible:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode]:focus-visible,.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode]:focus-visible:hover:not(:disabled){box-shadow:var(--button-shadow-neutral-focus-dark)}
|
|
54
|
+
.c15t-ui-button-IiSDl:not(.headless){text-wrap:nowrap;white-space:nowrap;border-radius:var(--button-border-radius);font-weight:var(--button-font-weight);transition:var(--button-transition);cursor:var(--button-cursor);border:var(--button-border-width) var(--button-border-style) var(--button-border-color);font-size:var(--button-font-size);line-height:var(--button-line-height);color:var(--button-text);font-family:var(--button-font);touch-action:manipulation;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1rem;display:inline-flex}.c15t-dark .c15t-ui-button-IiSDl:not(.headless){color:var(--button-text-dark)}.c15t-ui-button-IiSDl:not(.headless):disabled{opacity:.5;cursor:not-allowed}.c15t-ui-button-IiSDl:not(.headless):active:not(:disabled){transform:scale(.97)}.c15t-ui-button-IiSDl:not(.headless)[data-size=small]{font-size:var(--button-font-size);line-height:var(--button-line-height);padding:.5rem .75rem}.c15t-ui-button-IiSDl:not(.headless)[data-size=xsmall]{font-size:var(--button-font-size);line-height:var(--button-line-height);padding:.375rem .625rem}.c15t-ui-button-IiSDl:not(.headless)[data-size=xxsmall]{font-size:var(--button-font-size);line-height:var(--button-line-height);padding:.25rem .5rem}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]{background-color:var(--button-primary);color:var(--button-background-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]:focus-visible{box-shadow:var(--button-shadow-primary-focus)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]{background-color:var(--button-primary-dark);color:var(--button-background-color-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]:hover:not(:disabled){background-color:var(--button-primary-hover);transition:var(--button-hover-transition-color)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]:hover:not(:disabled){background-color:var(--button-primary-hover-dark);transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=stroke]{background-color:var(--button-background-color);color:var(--button-primary);box-shadow:var(--button-shadow-primary)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=stroke]{background-color:var(--button-background-color-dark);color:var(--button-primary-dark);box-shadow:var(--button-shadow-primary-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-primary-hover-tint);box-shadow:var(--button-shadow-primary-hover);transition:var(--button-hover-transition-full)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-primary-hover-tint);box-shadow:var(--button-shadow-primary-hover-dark);transition:var(--button-hover-transition-full)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=lighter]{background-color:color-mix(in srgb, var(--button-primary) 10%, transparent);color:color-mix(in srgb, var(--button-primary) 85%, black)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=lighter]{background-color:color-mix(in srgb, var(--button-primary-dark) 10%, transparent);color:var(--button-primary-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-primary) 20%, transparent);transition:var(--button-hover-transition-color)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-primary-dark) 20%, transparent);transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=ghost]{color:var(--button-primary)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=ghost]{color:var(--button-primary-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=ghost]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=ghost]:hover:not(:disabled){background-color:var(--button-primary-hover-tint);transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]{background-color:var(--button-neutral);color:var(--button-background-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]:focus-visible{box-shadow:var(--button-shadow-neutral-focus)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]{background-color:var(--button-neutral-dark);color:var(--button-background-color-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]:hover:not(:disabled){background-color:var(--button-neutral-hover);box-shadow:none;transition:var(--button-hover-transition-color)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]:hover:not(:disabled){background-color:var(--button-neutral-hover-dark);box-shadow:none;transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=stroke]{background-color:var(--button-background-color);box-shadow:var(--button-shadow-neutral)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=stroke]{background-color:var(--button-background-color-dark);box-shadow:var(--button-shadow-neutral-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-neutral-hover-tint);box-shadow:none;color:var(--button-text-hover);transition:var(--button-hover-transition-full)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-neutral-hover-tint);box-shadow:none;color:var(--button-text-hover-dark);transition:var(--button-hover-transition-full)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=lighter]{background-color:color-mix(in srgb, var(--button-neutral) 10%, transparent);color:var(--button-neutral)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=lighter]{background-color:color-mix(in srgb, var(--button-neutral-dark) 10%, transparent);color:var(--button-neutral-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-neutral) 20%, transparent);transition:var(--button-hover-transition-color)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-neutral-dark) 20%, transparent);transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=ghost]{color:var(--button-neutral)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=ghost]{color:var(--button-neutral-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=ghost]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=ghost]:hover:not(:disabled){background-color:var(--button-neutral-hover-tint);box-shadow:none;transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=filled]{background-color:var(--button-neutral);color:var(--button-background-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=filled]:focus-visible{box-shadow:var(--button-shadow-neutral-focus)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=filled]{background-color:var(--button-neutral-dark);color:var(--button-background-color-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=filled]:hover:not(:disabled){background-color:var(--button-neutral-hover);box-shadow:none;transition:var(--button-hover-transition-color)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=filled]:hover:not(:disabled){background-color:var(--button-neutral-hover-dark);box-shadow:none;transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=stroke]{background-color:var(--button-background-color);box-shadow:var(--button-shadow-neutral)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=stroke]{background-color:var(--button-background-color-dark);box-shadow:var(--button-shadow-neutral-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-neutral-hover-tint);box-shadow:none;color:var(--button-text-hover);transition:var(--button-hover-transition-full)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-neutral-hover-tint);box-shadow:none;color:var(--button-text-hover-dark);transition:var(--button-hover-transition-full)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=lighter]{background-color:color-mix(in srgb, var(--button-neutral) 10%, transparent);color:var(--button-neutral)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=lighter]{background-color:color-mix(in srgb, var(--button-neutral-dark) 10%, transparent);color:var(--button-neutral-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-neutral) 20%, transparent);transition:var(--button-hover-transition-color)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-neutral-dark) 20%, transparent);transition:var(--button-hover-transition-color)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=ghost]{color:var(--button-neutral)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=ghost]{color:var(--button-neutral-dark)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=ghost]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=ghost]:hover:not(:disabled){background-color:var(--button-neutral-hover-tint);box-shadow:none;transition:var(--button-hover-transition-color)}.c15t-ui-buttonIcon-QgScm:not(.headless){justify-content:center;align-items:center;display:inline-flex}@media (prefers-reduced-motion:reduce){.c15t-ui-button-IiSDl:not(.headless),.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=stroke]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=lighter]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=ghost]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=stroke]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=lighter]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=ghost]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=filled]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=stroke]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=lighter]:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=ghost]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=stroke]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=lighter]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=ghost]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=stroke]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=lighter]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=ghost]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=filled]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=stroke]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=lighter]:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode=ghost]:hover:not(:disabled){transition:none}}@media (hover:none){.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=filled]:hover:not(:disabled){background-color:var(--button-primary)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-background-color);box-shadow:var(--button-shadow-primary)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-primary) 10%, transparent)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=primary][data-mode=ghost]:hover:not(:disabled){background-color:#0000}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=filled]:hover:not(:disabled){background-color:var(--button-neutral)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=stroke]:hover:not(:disabled){background-color:var(--button-background-color);box-shadow:var(--button-shadow-neutral)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=lighter]:hover:not(:disabled){background-color:color-mix(in srgb, var(--button-neutral) 10%, transparent)}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode=ghost]:hover:not(:disabled){background-color:#0000}}.c15t-ui-button-IiSDl:not(.headless):focus-visible,.c15t-ui-button-IiSDl:not(.headless)[data-variant][data-mode]:focus-visible,.c15t-ui-button-IiSDl:not(.headless)[data-variant][data-mode]:focus-visible:hover:not(:disabled){box-shadow:var(--button-shadow-primary-focus);outline:none}.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode]:focus-visible,.c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode]:focus-visible:hover:not(:disabled),.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode]:focus-visible,.c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode]:focus-visible:hover:not(:disabled){box-shadow:var(--button-shadow-neutral-focus)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless):focus-visible,.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant][data-mode]:focus-visible,.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant][data-mode]:focus-visible:hover:not(:disabled){box-shadow:var(--button-shadow-primary-focus-dark)}.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode]:focus-visible,.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=neutral][data-mode]:focus-visible:hover:not(:disabled),.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode]:focus-visible,.c15t-dark .c15t-ui-button-IiSDl:not(.headless)[data-variant=secondary][data-mode]:focus-visible:hover:not(:disabled){box-shadow:var(--button-shadow-neutral-focus-dark)}
|
|
55
55
|
|
|
56
56
|
/* components/consent-actions */
|
|
57
|
-
.c15t-ui-actionRoot-hYTak:not(.headless){box-sizing:border-box;flex-direction:column;gap:1rem;width:100%;display:flex}.c15t-ui-actionGroup-GmX6v:not(.headless){flex-direction:row;gap:1rem;width:100%;display:flex}.c15t-ui-actionGroup-GmX6v:not(.headless) button[data-action]{flex:1;width:100%;min-width:0}:is(.c15t-ui-actionRoot-hYTak:not(.headless)[data-fill],.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=column]){flex-direction:column}.c15t-ui-actionRoot-hYTak:not(.headless)[data-fill] .c15t-ui-actionGroup-GmX6v,.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=column] .c15t-ui-actionGroup-GmX6v,.c15t-ui-actionGroup-GmX6v:not(.headless)[data-direction=column]{flex-direction:column;width:100%}.c15t-ui-actionRoot-hYTak:not(.headless)[data-split]{gap:.5rem}@media (width>=640px){.c15t-ui-actionRoot-hYTak:not(.headless)[data-split]{flex-direction:row;justify-content:space-between;align-items:center}.c15t-ui-actionRoot-hYTak:not(.headless)[data-split] .c15t-ui-actionGroup-GmX6v{width:auto}.c15t-ui-actionRoot-hYTak:not(.headless)[data-split] .c15t-ui-actionGroup-GmX6v button[data-action]{flex:none;width:auto}.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=row]:not([data-fill]){flex-direction:row}.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=row]:not([data-fill]) .c15t-ui-actionGroup-GmX6v{width:auto}.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=row]:not([data-fill]) .c15t-ui-actionGroup-GmX6v button[data-action]{flex:none;width:auto}:is(.c15t-ui-actionRoot-hYTak:not(.headless)[data-fill] .c15t-ui-actionGroup-GmX6v button[data-action],.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=column] .c15t-ui-actionGroup-GmX6v button[data-action]){width:100%}}
|
|
57
|
+
.c15t-ui-actionRoot-hYTak:not(.headless){box-sizing:border-box;flex-direction:column;gap:1rem;width:100%;display:flex}.c15t-ui-actionGroup-GmX6v:not(.headless){flex-direction:row;gap:1rem;width:100%;display:flex}.c15t-ui-actionGroup-GmX6v:not(.headless) button[data-action]{flex:1;width:100%;min-width:0}:is(.c15t-ui-actionRoot-hYTak:not(.headless)[data-fill],.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=column]){flex-direction:column}.c15t-ui-actionRoot-hYTak:not(.headless)[data-fill] .c15t-ui-actionGroup-GmX6v,.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=column] .c15t-ui-actionGroup-GmX6v,.c15t-ui-actionGroup-GmX6v:not(.headless)[data-direction=column]{flex-direction:column;width:100%}.c15t-ui-actionRoot-hYTak:not(.headless)[data-split]{gap:.5rem}@media (width>=640px){.c15t-ui-actionRoot-hYTak:not(.headless)[data-split]{flex-direction:row;justify-content:space-between;align-items:center}.c15t-ui-actionRoot-hYTak:not(.headless)[data-split] .c15t-ui-actionGroup-GmX6v{width:auto}.c15t-ui-actionRoot-hYTak:not(.headless)[data-split] .c15t-ui-actionGroup-GmX6v button[data-action]{flex:none;width:auto}.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=row]:not([data-fill]){flex-direction:row}.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=row]:not([data-fill]) .c15t-ui-actionGroup-GmX6v{width:auto}.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=row]:not([data-fill]) .c15t-ui-actionGroup-GmX6v button[data-action]{flex:none;width:auto}:is(.c15t-ui-actionRoot-hYTak:not(.headless)[data-fill] .c15t-ui-actionGroup-GmX6v button[data-action],.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=column] .c15t-ui-actionGroup-GmX6v button[data-action]){width:100%}}@container c15t-banner (width<22rem){.c15t-ui-actionRoot-hYTak:not(.headless)[data-split],.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=row]:not([data-fill]){flex-direction:column;align-items:stretch}.c15t-ui-actionRoot-hYTak:not(.headless)[data-split] .c15t-ui-actionGroup-GmX6v,.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=row]:not([data-fill]) .c15t-ui-actionGroup-GmX6v{width:100%}.c15t-ui-actionRoot-hYTak:not(.headless)[data-split] .c15t-ui-actionGroup-GmX6v button[data-action],.c15t-ui-actionRoot-hYTak:not(.headless)[data-direction=row]:not([data-fill]) .c15t-ui-actionGroup-GmX6v button[data-action]{flex:1;width:100%}}
|
|
58
58
|
|
|
59
|
-
/* components/
|
|
60
|
-
.c15t-ui-placeholder-
|
|
59
|
+
/* components/consent-gate */
|
|
60
|
+
.c15t-ui-placeholder-az0yh{font-family:var(--consent-gate-font-family);line-height:var(--consent-gate-line-height);-webkit-font-smoothing:antialiased;text-align:center;border-radius:var(--consent-gate-placeholder-border-radius);border-width:var(--consent-gate-placeholder-border-width);border-style:solid;border-color:var(--consent-gate-placeholder-border-color);background-color:var(--consent-gate-placeholder-background-color);width:100%;height:100%;opacity:var(--consent-gate-placeholder-opacity);pointer-events:auto;justify-content:center;align-items:center;gap:var(--consent-gate-placeholder-gap);animation:var(--consent-gate-placeholder-animation);flex-direction:column;padding:1rem;display:flex;transform:scale(1)}.c15t-dark .c15t-ui-placeholder-az0yh{background-color:var(--consent-gate-placeholder-background-color-dark);border-color:var(--consent-gate-placeholder-border-color-dark);box-shadow:var(--consent-gate-placeholder-shadow-dark)}.c15t-ui-title-oswPZ{font-size:var(--c15t-font-size-base);line-height:var(--c15t-line-height-normal);letter-spacing:-.011em;font-weight:var(--c15t-font-weight-medium);color:var(--consent-gate-placeholder-title-color);margin:0}.c15t-dark .c15t-ui-title-oswPZ{color:var(--consent-gate-placeholder-title-color-dark)}@media (prefers-reduced-motion:reduce){.c15t-ui-placeholder-az0yh{opacity:1;animation:none}}
|
|
61
61
|
|
|
62
62
|
/* components/legal-links */
|
|
63
63
|
.c15t-ui-legalLinks-h6W20:not(.headless){gap:var(--legal-links-gap);flex-wrap:wrap;align-items:center;display:flex}.c15t-ui-legalLink-bBp6b:not(.headless){color:var(--legal-links-color);-webkit-text-decoration:var(--legal-links-text-decoration);-webkit-text-decoration:var(--legal-links-text-decoration);text-decoration:var(--legal-links-text-decoration);font-size:var(--legal-links-font-size);transition:var(--legal-links-transition)}.c15t-dark .c15t-ui-legalLink-bBp6b:not(.headless){color:var(--legal-links-focus-color-dark)}.c15t-ui-legalLink-bBp6b:not(.headless):hover{-webkit-text-decoration:var(--legal-links-text-decoration-hover);-webkit-text-decoration:var(--legal-links-text-decoration-hover);text-decoration:var(--legal-links-text-decoration-hover)}.c15t-ui-legalLink-bBp6b:not(.headless):focus{outline:none;text-decoration:underline}@media (prefers-reduced-motion:reduce){.c15t-ui-legalLink-bBp6b:not(.headless){transition:none}}
|
|
64
64
|
|
|
65
65
|
/* components/panel-trigger */
|
|
66
|
-
.c15t-ui-trigger-Hjg5y{--cdt-size-sm:32px;--cdt-size-md:40px;--cdt-size-lg:48px;--cdt-bg:var(--c15t-surface,#fff);--cdt-bg-hover:var(--c15t-surface-hover,var(--cdt-bg));--cdt-border:var(--c15t-border,#e5e5e5);--cdt-shadow:var(--c15t-shadow-lg,0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a);--cdt-shadow-hover:var(--c15t-shadow-xl,0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a);--cdt-radius:var(--c15t-radius-full,9999px);--cdt-offset:var(--c15t-space-md,20px);--cdt-transition-duration:var(--c15t-motion-duration,.2s);--cdt-transition-easing:var(--c15t-motion-easing,ease-out);--cdt-snap-duration:var(--c15t-motion-duration-slow,.2s);--cdt-snap-easing:var(--c15t-motion-easing-smooth,cubic-bezier(.77, 0, .175, 1));--cdt-icon-color:var(--c15t-text,#171717);--cdt-focus-ring:var(--c15t-primary,#3b82f6);z-index:9999;width:var(--cdt-size-md);height:var(--cdt-size-md);border:1px solid var(--cdt-border);border-radius:var(--cdt-radius);background:var(--cdt-bg);box-shadow:var(--cdt-shadow);cursor:grab;transition:transform var(--cdt-transition-duration) var(--cdt-transition-easing), box-shadow var(--cdt-transition-duration) var(--cdt-transition-easing), background var(--cdt-transition-duration) var(--cdt-transition-easing);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;will-change:transform;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:fixed}@media (hover:hover) and (pointer:fine){.c15t-ui-trigger-Hjg5y:hover{background:var(--cdt-bg-hover);box-shadow:var(--cdt-shadow-hover)}}.c15t-ui-trigger-Hjg5y:active,.c15t-ui-trigger-Hjg5y.c15t-ui-dragging-R4Cm2,.c15t-ui-trigger-Hjg5y[data-dragging]{cursor:grabbing;transform:scale(1.02)}.c15t-ui-trigger-Hjg5y:focus{outline:none}.c15t-ui-trigger-Hjg5y:focus-visible{outline:2px solid var(--cdt-focus-ring);outline-offset:2px}.c15t-ui-trigger-Hjg5y[data-size=sm],.c15t-ui-sm-sud0y{width:var(--cdt-size-sm);height:var(--cdt-size-sm)}.c15t-ui-trigger-Hjg5y[data-size=md],.c15t-ui-md-CZrWA{width:var(--cdt-size-md);height:var(--cdt-size-md)}.c15t-ui-trigger-Hjg5y[data-size=lg],.c15t-ui-lg-fGzix{width:var(--cdt-size-lg);height:var(--cdt-size-lg)}.c15t-ui-icon-dD5R6{width:50%;height:50%;color:var(--cdt-icon-color);pointer-events:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.c15t-ui-icon-dD5R6 svg{width:100%;height:100%}.c15t-ui-text-Garil{margin-left:var(--c15t-space-xs,6px);font-family:var(--c15t-font-family,system-ui, sans-serif);font-size:var(--c15t-font-size-sm,14px);font-weight:var(--c15t-font-weight-medium,500);color:var(--cdt-icon-color);white-space:nowrap;pointer-events:none;line-height:1}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil){width:auto;height:auto;padding:var(--c15t-space-sm,8px) var(--c15t-space-md,16px);border-radius:var(--c15t-radius-lg,12px);gap:var(--c15t-space-xs,6px)}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil) .c15t-ui-icon-dD5R6{width:16px;height:16px}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil)[data-size=sm],.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil).c15t-ui-sm-sud0y{padding:var(--c15t-space-xs,6px) var(--c15t-space-sm,10px)}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil)[data-size=sm] .c15t-ui-icon-dD5R6,.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil).c15t-ui-sm-sud0y .c15t-ui-icon-dD5R6{width:14px;height:14px}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil)[data-size=sm] .c15t-ui-text-Garil,.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil).c15t-ui-sm-sud0y .c15t-ui-text-Garil{font-size:var(--c15t-font-size-xs,12px)}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil)[data-size=lg],.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil).c15t-ui-lg-fGzix{padding:var(--c15t-space-md,12px) var(--c15t-space-lg,20px)}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil)[data-size=lg] .c15t-ui-icon-dD5R6,.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil).c15t-ui-lg-fGzix .c15t-ui-icon-dD5R6{width:20px;height:20px}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil)[data-size=lg] .c15t-ui-text-Garil,.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil).c15t-ui-lg-fGzix .c15t-ui-text-Garil{font-size:var(--c15t-font-size-md,16px)}.c15t-ui-bottomRight-RqjMF{right:var(--cdt-offset);bottom:var(--cdt-offset)}.c15t-ui-bottomLeft-J3DsX{bottom:var(--cdt-offset);left:var(--cdt-offset)}.c15t-ui-topRight-Ln04J{top:var(--cdt-offset);right:var(--cdt-offset)}.c15t-ui-topLeft-tpeaf{top:var(--cdt-offset);left:var(--cdt-offset)}.c15t-ui-snapping-YupfG{transition:top var(--cdt-snap-duration) var(--cdt-snap-easing), right var(--cdt-snap-duration) var(--cdt-snap-easing), bottom var(--cdt-snap-duration) var(--cdt-snap-easing), left var(--cdt-snap-duration) var(--cdt-snap-easing), transform var(--cdt-snap-duration) var(--cdt-snap-easing)}.c15t-ui-hidden-tV2GK{display:none}.c15t-dark .c15t-ui-trigger-Hjg5y{--cdt-bg:var(--c15t-surface,#262626);--cdt-bg-hover:var(--c15t-surface-hover,#404040);--cdt-border:var(--c15t-border,#404040);--cdt-icon-color:var(--c15t-text,#fafafa);--cdt-shadow:0 10px 15px -3px #0000004d, 0 4px 6px -4px #0000004d;--cdt-shadow-hover:0 20px 25px -5px #0006, 0 8px 10px -6px #0006}.c15t-ui-toolbar-gCKkL{--cdtt-size-sm:32px;--cdtt-size-md:40px;--cdtt-size-lg:48px;--cdtt-bg:var(--c15t-surface,#fff);--cdtt-bg-hover:var(--c15t-surface-hover,#f5f5f5);--cdtt-border:var(--c15t-border,#d4d4d4);--cdtt-primary:var(--c15t-primary,#16a779);--cdtt-primary-hover:var(--c15t-primary-hover,#128866);--cdtt-primary-text:var(--c15t-text-on-primary,#fff);--cdtt-icon-color:var(--c15t-text,#262626);--cdtt-focus-ring:var(--c15t-primary,#16a779);--cdtt-offset:var(--c15t-space-md,20px);--cdtt-transition-duration:var(--c15t-duration-fast,.16s);--cdtt-transition-easing:var(--c15t-easing-out,ease-out);--cdtt-shadow:var(--c15t-shadow-md,0 4px 10px #00000014, 0 1px 2px #0000000f);z-index:9999;width:max-content;color:var(--cdtt-icon-color);background:var(--cdtt-bg);border:1px solid var(--cdtt-border);border-radius:var(--c15t-radius-md,6px);box-shadow:var(--cdtt-shadow);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;will-change:transform;transition:transform var(--cdtt-transition-duration) var(--cdtt-transition-easing), box-shadow var(--cdtt-transition-duration) var(--cdtt-transition-easing), background var(--cdtt-transition-duration) var(--cdtt-transition-easing);align-items:stretch;margin:0;padding:0;display:inline-flex;position:fixed;overflow:hidden}.c15t-ui-toolbar-gCKkL.c15t-ui-bottomRight-RqjMF{right:max(var(--cdtt-offset), env(safe-area-inset-right,0px));bottom:max(var(--cdtt-offset), env(safe-area-inset-bottom,0px))}.c15t-ui-toolbar-gCKkL.c15t-ui-bottomLeft-J3DsX{bottom:max(var(--cdtt-offset), env(safe-area-inset-bottom,0px));left:max(var(--cdtt-offset), env(safe-area-inset-left,0px))}.c15t-ui-toolbar-gCKkL.c15t-ui-topRight-Ln04J{top:max(var(--cdtt-offset), env(safe-area-inset-top,0px));right:max(var(--cdtt-offset), env(safe-area-inset-right,0px))}.c15t-ui-toolbar-gCKkL.c15t-ui-topLeft-tpeaf{top:max(var(--cdtt-offset), env(safe-area-inset-top,0px));left:max(var(--cdtt-offset), env(safe-area-inset-left,0px))}.c15t-ui-toolbar-gCKkL.c15t-ui-dragging-R4Cm2{cursor:grabbing;box-shadow:var(--c15t-shadow-lg,0 10px 20px #00000024, 0 3px 6px #00000014)}.c15t-ui-toolbarVertical-MQ8bT{flex-direction:column}.c15t-ui-toolbarItem-OO8Dy{width:var(--cdtt-size-md);height:var(--cdtt-size-md);color:var(--cdtt-icon-color);border:0;border-inline-start:1px solid var(--cdtt-border);cursor:inherit;transition:color var(--cdtt-transition-duration) var(--cdtt-transition-easing), background var(--cdtt-transition-duration) var(--cdtt-transition-easing);background:0 0;border-radius:0;flex:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:relative}.c15t-ui-toolbarItem-OO8Dy:first-child{border-inline-start:0}.c15t-ui-toolbarVertical-MQ8bT .c15t-ui-toolbarItem-OO8Dy{border-top:1px solid var(--cdtt-border);border-inline-start:0}.c15t-ui-toolbarVertical-MQ8bT .c15t-ui-toolbarItem-OO8Dy:first-child{border-top:0}.c15t-ui-toolbar-gCKkL .c15t-ui-toolbarItem-OO8Dy.c15t-ui-sm-sud0y{width:var(--cdtt-size-sm);height:var(--cdtt-size-sm)}.c15t-ui-toolbar-gCKkL .c15t-ui-toolbarItem-OO8Dy.c15t-ui-md-CZrWA{width:var(--cdtt-size-md);height:var(--cdtt-size-md)}.c15t-ui-toolbar-gCKkL .c15t-ui-toolbarItem-OO8Dy.c15t-ui-lg-fGzix{width:var(--cdtt-size-lg);height:var(--cdtt-size-lg)}.c15t-ui-toolbarItem-OO8Dy[data-c15t-trigger-action=preferences]{color:var(--cdtt-primary-text);background:var(--cdtt-primary)}.c15t-ui-toolbarItem-OO8Dy:focus{outline:none}.c15t-ui-toolbarItem-OO8Dy:focus-visible{z-index:1;outline:2px solid var(--cdtt-focus-ring);outline-offset:-3px}.c15t-ui-toolbarItem-OO8Dy:disabled{cursor:not-allowed;opacity:.45}.c15t-ui-toolbarIcon-FpHKR{pointer-events:none;flex-shrink:0;justify-content:center;align-items:center;width:50%;height:50%;display:flex}.c15t-ui-toolbarIcon-FpHKR>span,.c15t-ui-toolbarIcon-FpHKR svg{width:100%;height:100%;display:flex}@media (hover:hover) and (pointer:fine){.c15t-ui-toolbarItem-OO8Dy:hover:not(:disabled){background:var(--cdtt-bg-hover)}.c15t-ui-toolbarItem-OO8Dy[data-c15t-trigger-action=preferences]:hover:not(:disabled){background:var(--cdtt-primary-hover)}}.c15t-ui-toolbarItem-OO8Dy:active:not(:disabled){box-shadow:inset 0 1px 3px #00000029}:is(.c15t-dark .c15t-ui-toolbar-gCKkL,.dark .c15t-ui-toolbar-gCKkL){--cdtt-bg:var(--c15t-surface,#262626);--cdtt-bg-hover:var(--c15t-surface-hover,#343434);--cdtt-border:var(--c15t-border,#525252);--cdtt-icon-color:var(--c15t-text,#fafafa);--cdtt-shadow:0 8px 18px #00000052, 0 2px 5px #00000038}@media (prefers-reduced-motion:reduce){.c15t-ui-trigger-Hjg5y,.c15t-ui-toolbar-gCKkL,.c15t-ui-toolbarItem-OO8Dy,.c15t-ui-snapping-YupfG{transition:none}}
|
|
66
|
+
.c15t-ui-trigger-Hjg5y{--cdt-size-sm:32px;--cdt-size-md:40px;--cdt-size-lg:48px;--cdt-bg:var(--c15t-surface,#fff);--cdt-bg-hover:var(--c15t-surface-hover,var(--cdt-bg));--cdt-border:var(--c15t-border,#e5e5e5);--cdt-shadow:var(--c15t-shadow-lg,0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a);--cdt-shadow-hover:var(--c15t-shadow-xl,0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a);--cdt-radius:var(--c15t-radius-full,9999px);--cdt-offset:var(--c15t-space-md,20px);--cdt-transition-duration:var(--c15t-duration-slow);--cdt-transition-easing:var(--c15t-easing-out);--cdt-snap-duration:var(--c15t-duration-slow);--cdt-snap-easing:var(--c15t-easing-in-out);--cdt-icon-color:var(--c15t-text,#171717);--cdt-focus-ring:var(--c15t-primary,#3b82f6);z-index:9999;width:var(--cdt-size-md);height:var(--cdt-size-md);border:1px solid var(--cdt-border);border-radius:var(--cdt-radius);background:var(--cdt-bg);box-shadow:var(--cdt-shadow);cursor:grab;transition:transform var(--cdt-transition-duration) var(--cdt-transition-easing), box-shadow var(--cdt-transition-duration) var(--cdt-transition-easing), background var(--cdt-transition-duration) var(--cdt-transition-easing);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;will-change:transform;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:fixed}@media (hover:hover) and (pointer:fine){.c15t-ui-trigger-Hjg5y:hover{background:var(--cdt-bg-hover);box-shadow:var(--cdt-shadow-hover)}}.c15t-ui-trigger-Hjg5y:active,.c15t-ui-trigger-Hjg5y.c15t-ui-dragging-R4Cm2,.c15t-ui-trigger-Hjg5y[data-dragging]{cursor:grabbing;transform:scale(1.02)}.c15t-ui-trigger-Hjg5y:focus{outline:none}.c15t-ui-trigger-Hjg5y:focus-visible{outline:2px solid var(--cdt-focus-ring);outline-offset:2px}.c15t-ui-trigger-Hjg5y[data-size=sm],.c15t-ui-sm-sud0y{width:var(--cdt-size-sm);height:var(--cdt-size-sm)}.c15t-ui-trigger-Hjg5y[data-size=md],.c15t-ui-md-CZrWA{width:var(--cdt-size-md);height:var(--cdt-size-md)}.c15t-ui-trigger-Hjg5y[data-size=lg],.c15t-ui-lg-fGzix{width:var(--cdt-size-lg);height:var(--cdt-size-lg)}.c15t-ui-icon-dD5R6{width:50%;height:50%;color:var(--cdt-icon-color);pointer-events:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.c15t-ui-icon-dD5R6 svg{width:100%;height:100%}.c15t-ui-text-Garil{margin-left:var(--c15t-space-xs,6px);font-family:var(--c15t-font-family,system-ui, sans-serif);font-size:var(--c15t-font-size-sm,14px);font-weight:var(--c15t-font-weight-medium,500);color:var(--cdt-icon-color);white-space:nowrap;pointer-events:none;line-height:1}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil){width:auto;height:auto;padding:var(--c15t-space-sm,8px) var(--c15t-space-md,16px);border-radius:var(--c15t-radius-lg,12px);gap:var(--c15t-space-xs,6px)}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil) .c15t-ui-icon-dD5R6{width:16px;height:16px}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil)[data-size=sm],.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil).c15t-ui-sm-sud0y{padding:var(--c15t-space-xs,6px) var(--c15t-space-sm,10px)}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil)[data-size=sm] .c15t-ui-icon-dD5R6,.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil).c15t-ui-sm-sud0y .c15t-ui-icon-dD5R6{width:14px;height:14px}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil)[data-size=sm] .c15t-ui-text-Garil,.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil).c15t-ui-sm-sud0y .c15t-ui-text-Garil{font-size:var(--c15t-font-size-xs,12px)}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil)[data-size=lg],.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil).c15t-ui-lg-fGzix{padding:var(--c15t-space-md,12px) var(--c15t-space-lg,20px)}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil)[data-size=lg] .c15t-ui-icon-dD5R6,.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil).c15t-ui-lg-fGzix .c15t-ui-icon-dD5R6{width:20px;height:20px}.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil)[data-size=lg] .c15t-ui-text-Garil,.c15t-ui-trigger-Hjg5y:has(.c15t-ui-text-Garil).c15t-ui-lg-fGzix .c15t-ui-text-Garil{font-size:var(--c15t-font-size-md,16px)}.c15t-ui-bottomRight-RqjMF{right:var(--cdt-offset);bottom:var(--cdt-offset)}.c15t-ui-bottomLeft-J3DsX{bottom:var(--cdt-offset);left:var(--cdt-offset)}.c15t-ui-topRight-Ln04J{top:var(--cdt-offset);right:var(--cdt-offset)}.c15t-ui-topLeft-tpeaf{top:var(--cdt-offset);left:var(--cdt-offset)}.c15t-ui-snapping-YupfG{transition:top var(--cdt-snap-duration) var(--cdt-snap-easing), right var(--cdt-snap-duration) var(--cdt-snap-easing), bottom var(--cdt-snap-duration) var(--cdt-snap-easing), left var(--cdt-snap-duration) var(--cdt-snap-easing), transform var(--cdt-snap-duration) var(--cdt-snap-easing)}.c15t-ui-hidden-tV2GK{display:none}.c15t-dark .c15t-ui-trigger-Hjg5y{--cdt-bg:var(--c15t-surface,#262626);--cdt-bg-hover:var(--c15t-surface-hover,#404040);--cdt-border:var(--c15t-border,#404040);--cdt-icon-color:var(--c15t-text,#fafafa);--cdt-shadow:0 10px 15px -3px #0000004d, 0 4px 6px -4px #0000004d;--cdt-shadow-hover:0 20px 25px -5px #0006, 0 8px 10px -6px #0006}.c15t-ui-toolbar-gCKkL{--cdtt-size-sm:32px;--cdtt-size-md:40px;--cdtt-size-lg:48px;--cdtt-bg:var(--c15t-surface,#fff);--cdtt-bg-hover:var(--c15t-surface-hover,#f5f5f5);--cdtt-border:var(--c15t-border,#d4d4d4);--cdtt-primary:var(--c15t-primary,#16a779);--cdtt-primary-hover:var(--c15t-primary-hover,#128866);--cdtt-primary-text:var(--c15t-text-on-primary,#fff);--cdtt-icon-color:var(--c15t-text,#262626);--cdtt-focus-ring:var(--c15t-primary,#16a779);--cdtt-offset:var(--c15t-space-md,20px);--cdtt-transition-duration:var(--c15t-duration-fast,.16s);--cdtt-transition-easing:var(--c15t-easing-out,ease-out);--cdtt-shadow:var(--c15t-shadow-md,0 4px 10px #00000014, 0 1px 2px #0000000f);z-index:9999;width:max-content;color:var(--cdtt-icon-color);background:var(--cdtt-bg);border:1px solid var(--cdtt-border);border-radius:var(--c15t-radius-md,6px);box-shadow:var(--cdtt-shadow);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;will-change:transform;transition:transform var(--cdtt-transition-duration) var(--cdtt-transition-easing), box-shadow var(--cdtt-transition-duration) var(--cdtt-transition-easing), background var(--cdtt-transition-duration) var(--cdtt-transition-easing);align-items:stretch;margin:0;padding:0;display:inline-flex;position:fixed;overflow:hidden}.c15t-ui-toolbar-gCKkL.c15t-ui-bottomRight-RqjMF{right:max(var(--cdtt-offset), env(safe-area-inset-right,0px));bottom:max(var(--cdtt-offset), env(safe-area-inset-bottom,0px))}.c15t-ui-toolbar-gCKkL.c15t-ui-bottomLeft-J3DsX{bottom:max(var(--cdtt-offset), env(safe-area-inset-bottom,0px));left:max(var(--cdtt-offset), env(safe-area-inset-left,0px))}.c15t-ui-toolbar-gCKkL.c15t-ui-topRight-Ln04J{top:max(var(--cdtt-offset), env(safe-area-inset-top,0px));right:max(var(--cdtt-offset), env(safe-area-inset-right,0px))}.c15t-ui-toolbar-gCKkL.c15t-ui-topLeft-tpeaf{top:max(var(--cdtt-offset), env(safe-area-inset-top,0px));left:max(var(--cdtt-offset), env(safe-area-inset-left,0px))}.c15t-ui-toolbar-gCKkL.c15t-ui-dragging-R4Cm2{cursor:grabbing;box-shadow:var(--c15t-shadow-lg,0 10px 20px #00000024, 0 3px 6px #00000014)}.c15t-ui-toolbarVertical-MQ8bT{flex-direction:column}.c15t-ui-toolbarItem-OO8Dy{width:var(--cdtt-size-md);height:var(--cdtt-size-md);color:var(--cdtt-icon-color);border:0;border-inline-start:1px solid var(--cdtt-border);cursor:inherit;transition:color var(--cdtt-transition-duration) var(--cdtt-transition-easing), background var(--cdtt-transition-duration) var(--cdtt-transition-easing);background:0 0;border-radius:0;flex:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:relative}.c15t-ui-toolbarItem-OO8Dy:first-child{border-inline-start:0}.c15t-ui-toolbarVertical-MQ8bT .c15t-ui-toolbarItem-OO8Dy{border-top:1px solid var(--cdtt-border);border-inline-start:0}.c15t-ui-toolbarVertical-MQ8bT .c15t-ui-toolbarItem-OO8Dy:first-child{border-top:0}.c15t-ui-toolbar-gCKkL .c15t-ui-toolbarItem-OO8Dy.c15t-ui-sm-sud0y{width:var(--cdtt-size-sm);height:var(--cdtt-size-sm)}.c15t-ui-toolbar-gCKkL .c15t-ui-toolbarItem-OO8Dy.c15t-ui-md-CZrWA{width:var(--cdtt-size-md);height:var(--cdtt-size-md)}.c15t-ui-toolbar-gCKkL .c15t-ui-toolbarItem-OO8Dy.c15t-ui-lg-fGzix{width:var(--cdtt-size-lg);height:var(--cdtt-size-lg)}.c15t-ui-toolbarItem-OO8Dy[data-c15t-trigger-action=preferences]{color:var(--cdtt-primary-text);background:var(--cdtt-primary)}.c15t-ui-toolbarItem-OO8Dy:focus{outline:none}.c15t-ui-toolbarItem-OO8Dy:focus-visible{z-index:1;outline:2px solid var(--cdtt-focus-ring);outline-offset:-3px}.c15t-ui-toolbarItem-OO8Dy:disabled{cursor:not-allowed;opacity:.45}.c15t-ui-toolbarIcon-FpHKR{pointer-events:none;flex-shrink:0;justify-content:center;align-items:center;width:50%;height:50%;display:flex}.c15t-ui-toolbarIcon-FpHKR>span,.c15t-ui-toolbarIcon-FpHKR svg{width:100%;height:100%;display:flex}@media (hover:hover) and (pointer:fine){.c15t-ui-toolbarItem-OO8Dy:hover:not(:disabled){background:var(--cdtt-bg-hover)}.c15t-ui-toolbarItem-OO8Dy[data-c15t-trigger-action=preferences]:hover:not(:disabled){background:var(--cdtt-primary-hover)}}.c15t-ui-toolbarItem-OO8Dy:active:not(:disabled){box-shadow:inset 0 1px 3px #00000029}:is(.c15t-dark .c15t-ui-toolbar-gCKkL,.dark .c15t-ui-toolbar-gCKkL){--cdtt-bg:var(--c15t-surface,#262626);--cdtt-bg-hover:var(--c15t-surface-hover,#343434);--cdtt-border:var(--c15t-border,#525252);--cdtt-icon-color:var(--c15t-text,#fafafa);--cdtt-shadow:0 8px 18px #00000052, 0 2px 5px #00000038}.c15t-ui-trigger-Hjg5y[data-disable-animation],.c15t-ui-trigger-Hjg5y[data-disable-animation].c15t-ui-snapping-YupfG,.c15t-ui-toolbar-gCKkL[data-disable-animation],.c15t-ui-toolbar-gCKkL[data-disable-animation].c15t-ui-snapping-YupfG,.c15t-ui-toolbar-gCKkL[data-disable-animation] .c15t-ui-toolbarItem-OO8Dy{transition:none}@media (prefers-reduced-motion:reduce){.c15t-ui-trigger-Hjg5y,.c15t-ui-toolbar-gCKkL,.c15t-ui-toolbarItem-OO8Dy,.c15t-ui-snapping-YupfG{transition:none}}
|
|
67
67
|
|
|
68
68
|
/* components/prompt */
|
|
69
|
-
.c15t-ui-root-p7SV0:not(.headless){box-sizing:border-box;z-index:999998;width:100%;font-family:var(--consent-banner-font-family);line-height:var(--consent-banner-line-height);-webkit-text-size-adjust:var(--consent-banner-text-size-adjust);-webkit-font-smoothing:antialiased;tab-size:var(--consent-banner-tab-size);flex-direction:column;padding:1rem;display:flex;position:fixed}.c15t-ui-bannerEnterActive-IytGL:not(.headless){transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing), transform var(--consent-banner-animation-duration) cubic-bezier(.34, 1.56, .64, 1)}.c15t-ui-bannerLeaveActive-C7qrk:not(.headless){transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing), transform var(--consent-banner-animation-duration) var(--consent-banner-animation-timing)}:is(.c15t-ui-bannerEnterFrom-BJMc7:not(.headless),.c15t-ui-bannerLeaveTo-dXNcB:not(.headless)){opacity:0;transform:translateY(50px)}:is(.c15t-ui-bannerEnterTo-yatsy:not(.headless),.c15t-ui-bannerLeaveFrom-RVGoD:not(.headless)){opacity:1;transform:translateY(0)}.c15t-ui-bannerVisible-AFth0:not(.headless){opacity:1;transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing), transform var(--consent-banner-animation-duration) cubic-bezier(.34, 1.56, .64, 1);transform:translateY(0)}.c15t-ui-bannerHidden-R0_3M:not(.headless){opacity:0;transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing), transform var(--consent-banner-animation-duration) var(--consent-banner-animation-timing);transform:translateY(50px)}@media (width>=640px){.c15t-ui-root-p7SV0:not(.headless){width:auto;padding:1.5rem}}.c15t-ui-root-p7SV0[data-position=bottom-left]:not(.headless){bottom:0;left:0}.c15t-ui-root-p7SV0[data-position=bottom-right]:not(.headless){bottom:0;right:0}.c15t-ui-root-p7SV0[data-position=top-left]:not(.headless){top:0;left:0}.c15t-ui-root-p7SV0[data-position=top-right]:not(.headless){top:0;right:0}.c15t-ui-root-p7SV0[data-variant=floating][data-position=bottom-center]:not(.headless){inset-inline:0;width:fit-content;margin-inline:auto;bottom:0}.c15t-ui-root-p7SV0[data-variant=floating][data-position=top-center]:not(.headless){inset-inline:0;width:fit-content;margin-inline:auto;top:0}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless){width:100%;padding:0;left:0;right:0}.c15t-ui-root-p7SV0[data-variant=bar][data-position=bottom]:not(.headless){top:auto;bottom:0}.c15t-ui-root-p7SV0[data-variant=bar][data-position=top]:not(.headless){top:0;bottom:auto}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-cardShell-djyPy{width:100%;max-width:none}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-card-lgjVq{box-shadow:var(--consent-banner-shadow);border-width:0;border-radius:0}.c15t-ui-root-p7SV0[data-variant=bar][data-position=bottom]:not(.headless) .c15t-ui-card-lgjVq{border-top-width:var(--consent-banner-border-width);padding-bottom:env(safe-area-inset-bottom);border-top-style:solid}.c15t-ui-root-p7SV0[data-variant=bar][data-position=top]:not(.headless) .c15t-ui-card-lgjVq{border-bottom-width:var(--consent-banner-border-width);border-bottom-style:solid}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-cardShell-djyPy>[data-variant=banner-tag]{margin-inline-end:1.5rem}.c15t-ui-root-p7SV0[data-variant=bar][data-position=top]:not(.headless) .c15t-ui-cardShell-djyPy>[data-variant=banner-tag]{border-top-width:0;border-bottom-width:1px;border-radius:0 0 .75rem .75rem;order:1;margin-block:-1px 0}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe{flex-direction:column;align-items:stretch;gap:.75rem}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rights-wZg5K{flex-direction:column;align-items:flex-start}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe button[data-action]:not(.c15t-ui-rightLink-IXsSJ){flex:auto;width:100%;min-width:0}@media (width>=640px){.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe{flex-direction:row;justify-content:space-between;align-items:center}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rights-wZg5K{flex-flow:wrap;align-items:center;margin-inline-end:auto}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe>*{width:auto}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe button[data-action]:not(.c15t-ui-rightLink-IXsSJ){flex:none;width:auto}}@media (width>=1024px){.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-card-lgjVq{flex-direction:row;align-items:center;display:flex}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-header-S6GiJ{flex:auto;min-width:0}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe{background-color:#0000;width:auto;min-width:0}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-card-lgjVq>:not([hidden])~:not([hidden]){border-top-width:0}}:is(.c15t-ui-root-p7SV0[data-variant=floating][data-position$=-right]:not(.headless) .c15t-ui-cardShell-djyPy,.c15t-ui-root-p7SV0[data-variant=widget][data-position$=-right]:not(.headless) .c15t-ui-cardShell-djyPy){margin-left:auto;margin-right:0}:is(.c15t-ui-root-p7SV0[data-variant=floating][data-position$=-left]:not(.headless) .c15t-ui-cardShell-djyPy,.c15t-ui-root-p7SV0[data-variant=widget][data-position$=-left]:not(.headless) .c15t-ui-cardShell-djyPy){margin-left:0;margin-right:auto}.c15t-ui-root-p7SV0[data-variant=floating][data-position$=-center]:not(.headless) .c15t-ui-cardShell-djyPy{margin-left:auto;margin-right:auto}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless){padding:.75rem}@media (width>=640px){.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless){padding:1rem}}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-cardShell-djyPy{width:min(calc(100vw - 1.5rem), var(--consent-banner-widget-max-width))}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-header-S6GiJ{padding:.75rem}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-title-vm8nL{font-size:.875rem;line-height:1.25rem}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-description-s8Qhg{font-size:.8125rem;line-height:1.125rem}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-footer-JhJAe{gap:.5rem;padding:.75rem}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-footer-JhJAe button[data-action]:not(.c15t-ui-rightLink-IXsSJ){padding:.5rem .75rem}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rightLink-IXsSJ{font-size:.8125rem;line-height:1.125rem}.c15t-ui-root-p7SV0[data-variant=wall]:not(.headless){place-items:center;width:auto;padding:1rem;display:grid;inset:0}.c15t-ui-root-p7SV0[data-variant=wall]:not(.headless) .c15t-ui-cardShell-djyPy{width:min(calc(100vw - 2rem), var(--consent-banner-wall-max-width))}.c15t-ui-card-lgjVq:not(.headless){border-radius:var(--consent-banner-border-radius);border-width:var(--consent-banner-border-width);border-style:solid;border-color:var(--consent-banner-border-color);background-color:var(--consent-banner-background-color);width:100%;box-shadow:var(--consent-banner-shadow);position:relative;overflow:hidden}.c15t-ui-cardShell-djyPy:not(.headless){width:min(calc(100vw - 2rem), var(--consent-banner-max-width));flex-direction:column;display:flex}@media (width>=640px){.c15t-ui-cardShell-djyPy:not(.headless){width:min(calc(100vw - 3rem), var(--consent-banner-max-width))}}.c15t-dark .c15t-ui-card-lgjVq:not(.headless){background-color:var(--consent-banner-background-color-dark);border-color:var(--consent-banner-border-color-dark);box-shadow:var(--consent-banner-shadow-dark)}.c15t-dark .c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-card-lgjVq{box-shadow:var(--consent-banner-shadow-dark)}.c15t-ui-card-lgjVq:not(.headless)[data-state=open]{animation:var(--consent-banner-entry-animation)}.c15t-ui-card-lgjVq:not(.headless)[data-state=closed]{animation:var(--consent-banner-exit-animation)}.c15t-ui-card-lgjVq:not(.headless)>:not([hidden])~:not([hidden]){border-top-width:var(--consent-banner-border-width);border-top-style:solid;border-color:var(--consent-banner-border-color)}.c15t-dark .c15t-ui-card-lgjVq:not(.headless)>:not([hidden])~:not([hidden]){border-color:var(--consent-banner-border-color-dark)}.c15t-ui-card-lgjVq:not(.headless):focus{outline:none}.c15t-ui-header-S6GiJ:not(.headless){color:var(--consent-banner-text-color);flex-direction:column;padding:1rem;display:flex}.c15t-dark .c15t-ui-header-S6GiJ:not(.headless){color:var(--consent-banner-text-color-dark)}@media (width>=640px){.c15t-ui-header-S6GiJ:not(.headless){padding:1.5rem}}.c15t-ui-header-S6GiJ:not(.headless)>:not([hidden])~:not([hidden]){--consent-banner-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--consent-banner-space-y-reverse)));margin-bottom:calc(.5rem * var(--consent-banner-space-y-reverse))}.c15t-ui-footer-JhJAe:not(.headless){background-color:var(--consent-banner-footer-background-color);flex-direction:column;justify-content:space-between;gap:.75rem;padding:1rem 1.25rem;display:flex}.c15t-dark .c15t-ui-footer-JhJAe:not(.headless){background-color:var(--consent-banner-footer-background-color-dark)}@media (width>=640px){.c15t-ui-footer-JhJAe:not(.headless){flex-direction:row}}.c15t-ui-rights-wZg5K:not(.headless){flex-flow:wrap;align-items:center;gap:.75rem;min-width:0;display:flex}.c15t-ui-rightLink-IXsSJ:not(.headless){width:auto;font:inherit;font-family:var(--consent-banner-font-family);letter-spacing:-.006em;color:var(--consent-banner-description-color);text-underline-offset:.15em;text-align:start;cursor:pointer;border-radius:var(--consent-banner-border-radius-sm);touch-action:manipulation;background:0 0;border:0;flex:none;align-self:center;margin:0;padding:0;font-size:.875rem;font-weight:400;line-height:1.25rem;text-decoration:underline;display:inline-block}.c15t-ui-rightLink-IXsSJ:not(.headless):hover{color:var(--consent-banner-text-color)}.c15t-ui-rightLink-IXsSJ:not(.headless):focus-visible{box-shadow:var(--button-shadow-primary-focus,0 0 0 2px var(--c15t-primary));outline:none}.c15t-dark .c15t-ui-rightLink-IXsSJ:not(.headless){color:var(--consent-banner-description-color-dark)}.c15t-dark .c15t-ui-rightLink-IXsSJ:not(.headless):hover{color:var(--consent-banner-text-color-dark)}.c15t-dark .c15t-ui-rightLink-IXsSJ:not(.headless):focus-visible{box-shadow:var(--button-shadow-primary-focus-dark,0 0 0 2px var(--c15t-primary))}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe{flex-direction:column;align-items:stretch;gap:.75rem}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rights-wZg5K{flex-direction:column;align-items:flex-start;gap:.5rem}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe button[data-action]:not(.c15t-ui-rightLink-IXsSJ){flex:auto;width:100%;min-width:0}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rightLink-IXsSJ{flex:none;align-self:flex-start;width:auto}@media (width>=640px){.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe{flex-direction:row;justify-content:space-between;align-items:center;gap:.75rem}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rights-wZg5K{flex-flow:wrap;flex:auto;align-items:center;gap:.75rem;min-width:0}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe>*{width:auto}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe button[data-action]:not(.c15t-ui-rightLink-IXsSJ){flex:none;width:auto}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rightLink-IXsSJ{align-self:center}}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-header-S6GiJ,.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe{padding:.75rem 1rem}@media (width>=640px){.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-header-S6GiJ{padding:1rem 1.5rem}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe{padding:.75rem 1.5rem}}@media (width>=1024px){.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-header-S6GiJ{padding:.75rem 1.5rem}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-header-S6GiJ>:not([hidden])~:not([hidden]){margin-top:.25rem}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-title-vm8nL{line-height:1.25rem}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe{flex:none;gap:.75rem}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rights-wZg5K{flex-flow:row;flex:none;align-items:center;gap:.75rem;margin-inline-end:0}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rightLink-IXsSJ{white-space:nowrap;font-size:.8125rem;line-height:1.125rem}}.c15t-ui-description-s8Qhg:not(.headless){letter-spacing:-.006em;color:var(--consent-banner-description-color);font-size:.875rem;font-weight:400;line-height:1.25rem}.c15t-dark .c15t-ui-description-s8Qhg:not(.headless){color:var(--consent-banner-description-color-dark)}.c15t-ui-description-s8Qhg[data-context=banner]:not(.headless){letter-spacing:-.006em;color:var(--consent-banner-description-color);font-size:.875rem;font-weight:400;line-height:1.25rem}.c15t-dark .c15t-ui-description-s8Qhg[data-context=banner]:not(.headless){color:var(--consent-banner-description-color-dark)}.c15t-ui-description-s8Qhg[data-context=dialog]:not(.headless){color:var(--consent-dialog-muted-color);font-size:var(--consent-dialog-description-font-size);font-weight:var(--consent-dialog-description-font-weight);line-height:var(--consent-dialog-description-line-height)}.c15t-dark .c15t-ui-description-s8Qhg[data-context=dialog]:not(.headless){color:var(--consent-dialog-muted-color-dark)}.c15t-ui-description-s8Qhg[data-context=manager]:not(.headless){color:var(--consent-manager-text-muted-color)}.c15t-dark .c15t-ui-description-s8Qhg[data-context=manager]:not(.headless){color:var(--consent-manager-text-muted-color-dark)}.c15t-ui-title-vm8nL:not(.headless){letter-spacing:-.011em;color:var(--consent-banner-title-color);margin:0;font-size:1rem;font-weight:500;line-height:1.5rem}.c15t-dark .c15t-ui-title-vm8nL:not(.headless){color:var(--consent-banner-title-color-dark)}.c15t-ui-overlay-DoHh4:not(.headless){background-color:var(--consent-banner-overlay-background-color);z-index:999997;position:fixed;inset:0}:is(.c15t-ui-overlayEnterActive-YGn_8:not(.headless),.c15t-ui-overlayLeaveActive-FvP5W:not(.headless)){transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing)}:is(.c15t-ui-overlayEnterFrom-OtDqj:not(.headless),.c15t-ui-overlayLeaveTo-V7aI7:not(.headless)){opacity:0}:is(.c15t-ui-overlayEnterTo-jcvNq:not(.headless),.c15t-ui-overlayLeaveFrom-EYTMT:not(.headless)){opacity:1}.c15t-ui-overlayVisible-ywHQp:not(.headless){opacity:1;transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing)}.c15t-ui-overlayHidden-WgrJC:not(.headless){opacity:0;transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing)}.c15t-dark .c15t-ui-overlay-DoHh4:not(.headless){background-color:var(--consent-banner-overlay-background-color-dark)}@media (prefers-reduced-motion:reduce){.c15t-ui-bannerEnterActive-IytGL,.c15t-ui-bannerLeaveActive-C7qrk,.c15t-ui-bannerEnterFrom-BJMc7,.c15t-ui-bannerEnterTo-yatsy,.c15t-ui-bannerLeaveFrom-RVGoD,.c15t-ui-bannerLeaveTo-dXNcB,.c15t-ui-overlayEnterActive-YGn_8,.c15t-ui-overlayLeaveActive-FvP5W,.c15t-ui-overlayEnterFrom-OtDqj,.c15t-ui-overlayEnterTo-jcvNq,.c15t-ui-overlayLeaveFrom-EYTMT,.c15t-ui-overlayLeaveTo-V7aI7,.c15t-ui-bannerVisible-AFth0,.c15t-ui-bannerHidden-R0_3M,.c15t-ui-overlayVisible-ywHQp,.c15t-ui-overlayHidden-WgrJC:not(.headless),.c15t-ui-card-lgjVq:not(.headless)[data-state=open],.c15t-ui-card-lgjVq:not(.headless)[data-state=closed]{transition:none;animation:none}}
|
|
69
|
+
.c15t-ui-root-p7SV0:not(.headless){box-sizing:border-box;z-index:999998;width:100%;font-family:var(--consent-banner-font-family);line-height:var(--consent-banner-line-height);-webkit-text-size-adjust:var(--consent-banner-text-size-adjust);-webkit-font-smoothing:antialiased;tab-size:var(--consent-banner-tab-size);flex-direction:column;padding:1rem;display:flex;position:fixed}.c15t-ui-bannerEnterActive-IytGL:not(.headless){transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing), transform var(--consent-banner-animation-duration) var(--c15t-easing-spring)}.c15t-ui-bannerLeaveActive-C7qrk:not(.headless){transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing), transform var(--consent-banner-animation-duration) var(--consent-banner-animation-timing)}:is(.c15t-ui-bannerEnterFrom-BJMc7:not(.headless),.c15t-ui-bannerLeaveTo-dXNcB:not(.headless)){opacity:0;transform:translateY(50px)}:is(.c15t-ui-bannerEnterTo-yatsy:not(.headless),.c15t-ui-bannerLeaveFrom-RVGoD:not(.headless)){opacity:1;transform:translateY(0)}.c15t-ui-bannerVisible-AFth0:not(.headless){opacity:1;transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing), transform var(--consent-banner-animation-duration) var(--c15t-easing-spring);transform:translateY(0)}.c15t-ui-bannerHidden-R0_3M:not(.headless){opacity:0;transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing), transform var(--consent-banner-animation-duration) var(--consent-banner-animation-timing);transform:translateY(50px)}@starting-style{.c15t-ui-bannerEntering-Cqrwl:not(.headless){opacity:0;transform:translateY(50px)}}@media (width>=640px){.c15t-ui-root-p7SV0:not(.headless){width:auto;padding:1.5rem}}.c15t-ui-root-p7SV0[data-position=bottom-left]:not(.headless){bottom:0;left:0}.c15t-ui-root-p7SV0[data-position=bottom-right]:not(.headless){bottom:0;right:0}.c15t-ui-root-p7SV0[data-position=top-left]:not(.headless){top:0;left:0}.c15t-ui-root-p7SV0[data-position=top-right]:not(.headless){top:0;right:0}.c15t-ui-root-p7SV0[data-variant=floating][data-position=bottom-center]:not(.headless){inset-inline:0;width:fit-content;margin-inline:auto;bottom:0}.c15t-ui-root-p7SV0[data-variant=floating][data-position=top-center]:not(.headless){inset-inline:0;width:fit-content;margin-inline:auto;top:0}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless){width:100%;padding:0;left:0;right:0}.c15t-ui-root-p7SV0[data-variant=bar][data-position=bottom]:not(.headless){top:auto;bottom:0}.c15t-ui-root-p7SV0[data-variant=bar][data-position=top]:not(.headless){top:0;bottom:auto}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-cardShell-djyPy{width:100%;max-width:none}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-card-lgjVq{box-shadow:var(--consent-banner-shadow);border-width:0;border-radius:0}.c15t-ui-root-p7SV0[data-variant=bar][data-position=bottom]:not(.headless) .c15t-ui-card-lgjVq{border-top-width:var(--consent-banner-border-width);padding-bottom:env(safe-area-inset-bottom);border-top-style:solid}.c15t-ui-root-p7SV0[data-variant=bar][data-position=top]:not(.headless) .c15t-ui-card-lgjVq{border-bottom-width:var(--consent-banner-border-width);border-bottom-style:solid}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-cardShell-djyPy>[data-variant=banner-tag]{margin-inline-end:1.5rem}.c15t-ui-root-p7SV0[data-variant=bar][data-position=top]:not(.headless) .c15t-ui-cardShell-djyPy>[data-variant=banner-tag]{border-top-width:0;border-bottom-width:1px;border-radius:0 0 .75rem .75rem;order:1;margin-block:-1px 0}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe{flex-direction:column;align-items:stretch;gap:.75rem}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rights-wZg5K{flex-direction:column;align-items:flex-start}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe button[data-action]:not(.c15t-ui-rightLink-IXsSJ){flex:auto;width:100%;min-width:0}@media (width>=640px){.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe{flex-direction:row;justify-content:space-between;align-items:center}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rights-wZg5K{flex-flow:wrap;align-items:center;margin-inline-end:auto}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe>*{width:auto}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe button[data-action]:not(.c15t-ui-rightLink-IXsSJ){flex:none;width:auto}}@media (width>=1024px){.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-card-lgjVq{flex-direction:row;align-items:center;display:flex}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-header-S6GiJ{flex:auto;min-width:0}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe{background-color:#0000;width:auto;min-width:0}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-card-lgjVq>:not([hidden])~:not([hidden]){border-top-width:0}}:is(.c15t-ui-root-p7SV0[data-variant=floating][data-position$=-right]:not(.headless) .c15t-ui-cardShell-djyPy,.c15t-ui-root-p7SV0[data-variant=widget][data-position$=-right]:not(.headless) .c15t-ui-cardShell-djyPy){margin-left:auto;margin-right:0}:is(.c15t-ui-root-p7SV0[data-variant=floating][data-position$=-left]:not(.headless) .c15t-ui-cardShell-djyPy,.c15t-ui-root-p7SV0[data-variant=widget][data-position$=-left]:not(.headless) .c15t-ui-cardShell-djyPy){margin-left:0;margin-right:auto}.c15t-ui-root-p7SV0[data-variant=floating][data-position$=-center]:not(.headless) .c15t-ui-cardShell-djyPy{margin-left:auto;margin-right:auto}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless){padding:.75rem}@media (width>=640px){.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless){padding:1rem}}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-cardShell-djyPy{width:min(calc(100vw - 1.5rem), var(--consent-banner-widget-max-width))}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-header-S6GiJ{padding:.75rem}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-title-vm8nL{font-size:.875rem;line-height:1.25rem}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-description-s8Qhg{font-size:.8125rem;line-height:1.125rem}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-footer-JhJAe{gap:.5rem;padding:.75rem}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-footer-JhJAe button[data-action]:not(.c15t-ui-rightLink-IXsSJ){padding:.5rem .75rem}.c15t-ui-root-p7SV0[data-variant=widget]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rightLink-IXsSJ{font-size:.8125rem;line-height:1.125rem}.c15t-ui-root-p7SV0[data-variant=wall]:not(.headless){place-items:center;width:auto;padding:1rem;display:grid;inset:0}.c15t-ui-root-p7SV0[data-variant=wall]:not(.headless) .c15t-ui-cardShell-djyPy{width:min(calc(100vw - 2rem), var(--consent-banner-wall-max-width))}.c15t-ui-card-lgjVq:not(.headless){border-radius:var(--consent-banner-border-radius);border-width:var(--consent-banner-border-width);border-style:solid;border-color:var(--consent-banner-border-color);background-color:var(--consent-banner-background-color);width:100%;box-shadow:var(--consent-banner-shadow);position:relative;overflow:hidden}.c15t-ui-cardShell-djyPy:not(.headless){width:min(calc(100vw - 2rem), var(--consent-banner-max-width));flex-direction:column;display:flex;container:c15t-banner/inline-size}@media (width>=640px){.c15t-ui-cardShell-djyPy:not(.headless){width:min(calc(100vw - 3rem), var(--consent-banner-max-width))}}.c15t-dark .c15t-ui-card-lgjVq:not(.headless){background-color:var(--consent-banner-background-color-dark);border-color:var(--consent-banner-border-color-dark);box-shadow:var(--consent-banner-shadow-dark)}.c15t-dark .c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-card-lgjVq{box-shadow:var(--consent-banner-shadow-dark)}.c15t-ui-card-lgjVq:not(.headless)>:not([hidden])~:not([hidden]){border-top-width:var(--consent-banner-border-width);border-top-style:solid;border-color:var(--consent-banner-border-color)}.c15t-dark .c15t-ui-card-lgjVq:not(.headless)>:not([hidden])~:not([hidden]){border-color:var(--consent-banner-border-color-dark)}.c15t-ui-card-lgjVq:not(.headless):focus{outline:none}.c15t-ui-header-S6GiJ:not(.headless){color:var(--consent-banner-text-color);flex-direction:column;padding:1rem;display:flex}.c15t-dark .c15t-ui-header-S6GiJ:not(.headless){color:var(--consent-banner-text-color-dark)}@media (width>=640px){.c15t-ui-header-S6GiJ:not(.headless){padding:1.5rem}}.c15t-ui-header-S6GiJ:not(.headless)>:not([hidden])~:not([hidden]){--consent-banner-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--consent-banner-space-y-reverse)));margin-bottom:calc(.5rem * var(--consent-banner-space-y-reverse))}.c15t-ui-footer-JhJAe:not(.headless){background-color:var(--consent-banner-footer-background-color);flex-direction:column;justify-content:space-between;gap:.75rem;padding:1rem 1.25rem;display:flex}.c15t-dark .c15t-ui-footer-JhJAe:not(.headless){background-color:var(--consent-banner-footer-background-color-dark)}@media (width>=640px){.c15t-ui-footer-JhJAe:not(.headless){flex-direction:row}}.c15t-ui-rights-wZg5K:not(.headless){flex-flow:wrap;align-items:center;gap:.75rem;min-width:0;display:flex}.c15t-ui-rightLink-IXsSJ:not(.headless){width:auto;font:inherit;font-family:var(--consent-banner-font-family);letter-spacing:-.006em;color:var(--consent-banner-description-color);text-underline-offset:.15em;text-align:start;cursor:pointer;border-radius:var(--consent-banner-border-radius-sm);touch-action:manipulation;background:0 0;border:0;flex:none;align-self:center;margin:0;padding:0;font-size:.875rem;font-weight:400;line-height:1.25rem;text-decoration:underline;display:inline-block}.c15t-ui-rightLink-IXsSJ:not(.headless):hover{color:var(--consent-banner-text-color)}.c15t-ui-rightLink-IXsSJ:not(.headless):focus-visible{box-shadow:var(--button-shadow-primary-focus,0 0 0 2px var(--c15t-primary));outline:none}.c15t-dark .c15t-ui-rightLink-IXsSJ:not(.headless){color:var(--consent-banner-description-color-dark)}.c15t-dark .c15t-ui-rightLink-IXsSJ:not(.headless):hover{color:var(--consent-banner-text-color-dark)}.c15t-dark .c15t-ui-rightLink-IXsSJ:not(.headless):focus-visible{box-shadow:var(--button-shadow-primary-focus-dark,0 0 0 2px var(--c15t-primary))}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe{flex-direction:column;align-items:stretch;gap:.75rem}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rights-wZg5K{flex-direction:column;align-items:flex-start;gap:.5rem}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe button[data-action]:not(.c15t-ui-rightLink-IXsSJ){flex:auto;width:100%;min-width:0}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rightLink-IXsSJ{flex:none;align-self:flex-start;width:auto}@media (width>=640px){.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe{flex-direction:row;justify-content:space-between;align-items:center;gap:.75rem}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rights-wZg5K{flex-flow:wrap;flex:auto;align-items:center;gap:.75rem;min-width:0}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe>*{width:auto}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe button[data-action]:not(.c15t-ui-rightLink-IXsSJ){flex:none;width:auto}.c15t-ui-root-p7SV0[data-prompt=notice]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rightLink-IXsSJ{align-self:center}}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-header-S6GiJ,.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe{padding:.75rem 1rem}@media (width>=640px){.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-header-S6GiJ{padding:1rem 1.5rem}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe{padding:.75rem 1.5rem}}@media (width>=1024px){.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-header-S6GiJ{padding:.75rem 1.5rem}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-header-S6GiJ>:not([hidden])~:not([hidden]){margin-top:.25rem}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-title-vm8nL{line-height:1.25rem}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe{flex:none;gap:.75rem}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rights-wZg5K{flex-flow:row;flex:none;align-items:center;gap:.75rem;margin-inline-end:0}.c15t-ui-root-p7SV0[data-variant=bar]:not(.headless) .c15t-ui-footer-JhJAe .c15t-ui-rightLink-IXsSJ{white-space:nowrap;font-size:.8125rem;line-height:1.125rem}}.c15t-ui-description-s8Qhg:not(.headless){letter-spacing:-.006em;color:var(--consent-banner-description-color);font-size:.875rem;font-weight:400;line-height:1.25rem}.c15t-dark .c15t-ui-description-s8Qhg:not(.headless){color:var(--consent-banner-description-color-dark)}.c15t-ui-description-s8Qhg[data-context=banner]:not(.headless){letter-spacing:-.006em;color:var(--consent-banner-description-color);font-size:.875rem;font-weight:400;line-height:1.25rem}.c15t-dark .c15t-ui-description-s8Qhg[data-context=banner]:not(.headless){color:var(--consent-banner-description-color-dark)}.c15t-ui-description-s8Qhg[data-context=dialog]:not(.headless){color:var(--consent-dialog-muted-color);font-size:var(--consent-dialog-description-font-size);font-weight:var(--consent-dialog-description-font-weight);line-height:var(--consent-dialog-description-line-height)}.c15t-dark .c15t-ui-description-s8Qhg[data-context=dialog]:not(.headless){color:var(--consent-dialog-muted-color-dark)}.c15t-ui-description-s8Qhg[data-context=manager]:not(.headless){color:var(--consent-manager-text-muted-color)}.c15t-dark .c15t-ui-description-s8Qhg[data-context=manager]:not(.headless){color:var(--consent-manager-text-muted-color-dark)}.c15t-ui-title-vm8nL:not(.headless){letter-spacing:-.011em;color:var(--consent-banner-title-color);margin:0;font-size:1rem;font-weight:500;line-height:1.5rem}.c15t-dark .c15t-ui-title-vm8nL:not(.headless){color:var(--consent-banner-title-color-dark)}.c15t-ui-overlay-DoHh4:not(.headless){background-color:var(--consent-banner-overlay-background-color);z-index:999997;position:fixed;inset:0}:is(.c15t-ui-overlayEnterActive-YGn_8:not(.headless),.c15t-ui-overlayLeaveActive-FvP5W:not(.headless)){transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing)}:is(.c15t-ui-overlayEnterFrom-OtDqj:not(.headless),.c15t-ui-overlayLeaveTo-V7aI7:not(.headless)){opacity:0}:is(.c15t-ui-overlayEnterTo-jcvNq:not(.headless),.c15t-ui-overlayLeaveFrom-EYTMT:not(.headless)){opacity:1}.c15t-ui-overlayVisible-ywHQp:not(.headless){opacity:1;transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing)}.c15t-ui-overlayHidden-WgrJC:not(.headless){opacity:0;transition:opacity var(--consent-banner-animation-duration) var(--consent-banner-animation-timing)}@starting-style{.c15t-ui-overlayEntering-p5Z3U:not(.headless){opacity:0}}.c15t-dark .c15t-ui-overlay-DoHh4:not(.headless){background-color:var(--consent-banner-overlay-background-color-dark)}@media (prefers-reduced-motion:reduce){:is(.c15t-ui-bannerEnterActive-IytGL:not(.headless),.c15t-ui-bannerLeaveActive-C7qrk:not(.headless),.c15t-ui-bannerVisible-AFth0:not(.headless),.c15t-ui-bannerHidden-R0_3M:not(.headless),.c15t-ui-overlayEnterActive-YGn_8:not(.headless),.c15t-ui-overlayLeaveActive-FvP5W:not(.headless),.c15t-ui-overlayVisible-ywHQp:not(.headless),.c15t-ui-overlayHidden-WgrJC:not(.headless)){transition:none;animation:none}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export{offline}from"@c15t/core";
|
package/dist/ui-save.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
let e=new WeakMap,t=t=>{e.set(t,{})},n=e=>e.policyPending||"failed"===e.resolution.status||"none"===e.promptRequirement.kind?"none":"banner",i=(t,i,a)=>{let o={};e.set(t,o);let s=t.getSnapshot(),c="dialog"===s.activeUI,l=i();if(!c)return l;let r=t.getSnapshot();return r.explicitChoice!==s.explicitChoice||r.vendorChoice!==s.vendorChoice?(e.get(t)===o&&t.set.activeUI(n(r)),l):l.then(i=>(i.ok&&a()&&e.get(t)===o&&"dialog"===t.getSnapshot().activeUI&&t.set.activeUI(n(t.getSnapshot())),i))},a=async(t,n)=>{let i={};e.set(t,i);let a=t.getSnapshot(),o=a.activeUI;"none"!==o&&t.set.activeUI("none");try{await n()}finally{let n=t.getSnapshot();"none"!==o&&n.iab?.authority===a.iab?.authority&&"none"===n.activeUI&&e.get(t)===i&&t.set.activeUI(o)}};export{t as invalidateConsentUIAction,i as saveConsentUI,a as saveIABConsentUI};
|
|
1
|
+
let e=new WeakMap,t=t=>{e.set(t,{})},n=e=>e.policyPending||"failed"===e.resolution.status||"none"===e.promptRequirement.kind?"none":"banner",i=(t,i,a)=>{let o={};e.set(t,o);let s=t.getSnapshot(),c="dialog"===s.activeUI,l=i();if(!c)return l;let r=t.getSnapshot();return r.explicitChoice!==s.explicitChoice||r.vendorChoice!==s.vendorChoice||r.noticeDismissal!==s.noticeDismissal?(e.get(t)===o&&t.set.activeUI(n(r)),l):l.then(i=>(i.ok&&a()&&e.get(t)===o&&"dialog"===t.getSnapshot().activeUI&&t.set.activeUI(n(t.getSnapshot())),i))},a=async(t,n)=>{let i={};e.set(t,i);let a=t.getSnapshot(),o=a.activeUI;"none"!==o&&t.set.activeUI("none");try{await n()}finally{let n=t.getSnapshot();"none"!==o&&n.iab?.authority===a.iab?.authority&&"none"===n.activeUI&&e.get(t)===i&&t.set.activeUI(o)}};export{t as invalidateConsentUIAction,i as saveConsentUI,a as saveIABConsentUI};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{cnExt as e}from"./cn.js";let t=function(e,t){if(!t)return;let[o,r]=t.split(".");return e?.[o]?.[r]},o=function(t,{baseClassName:o,className:r,noStyle:s,style:l,...p}){let
|
|
1
|
+
import{cnExt as e}from"./cn.js";let t=function(e,t){if(!t)return;let[o,r]=t.split(".");return e?.[o]?.[r]},o=function(t,{baseClassName:o,className:r,noStyle:s,style:l,...p}){let{noStyle:n,...i}=t??{},m=i.style||l?{...i.style,...l}:void 0,a=e(s||n?void 0:o,i.className,r);return{...i,...p,className:a||void 0,style:m}};export{t as getSlotProps,o as mergeSlotProps};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{defaultTheme as e,generateThemeCSS as t,themeToVars as m}from"@c15t/ui/theme";let a=e,r=function(e,t=!1){return m(e,t)},h=function(e){return t(e)};export{a as defaultTheme,h as generateThemeCSS,r as themeToVars};
|
|
1
|
+
import{defaultTheme as e,generateThemeCSS as t,themeToVars as m}from"@c15t/ui/theme";let a=e,r=function(e,t=!1){return m(e,t)},h=function(e,m){return t(e,m)};export{a as defaultTheme,h as generateThemeCSS,r as themeToVars};
|
package/dist/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
let e="3.0.0-alpha.
|
|
1
|
+
let e="3.0.0-alpha.4";export{e as version};
|
|
@@ -64,5 +64,5 @@ export declare const useHeadlessConsentUI: (overrides?: ConsentPresentation) =>
|
|
|
64
64
|
performAction: (action: PresentationAction) => void | Promise<import("@c15t/core").SaveResult> | Promise<import("@c15t/core").NoticeDismissResult>;
|
|
65
65
|
performBannerAction: (action: PresentationAction) => void | Promise<import("@c15t/core").SaveResult> | Promise<import("@c15t/core").NoticeDismissResult>;
|
|
66
66
|
performDialogAction: (action: PresentationAction) => void | Promise<import("@c15t/core").SaveResult> | Promise<import("@c15t/core").NoticeDismissResult>;
|
|
67
|
-
saveCustomPreferences: (input?: import("@c15t/core").SaveInput) => Promise<import("@c15t/core").SaveResult>;
|
|
67
|
+
saveCustomPreferences: (input?: import("@c15t/core").SaveInput, uiSource?: import("@c15t/core").SaveUISource) => Promise<import("@c15t/core").SaveResult>;
|
|
68
68
|
};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { FC } from 'react';
|
|
2
|
+
import type { ProcessedFeature } from '../types.js';
|
|
3
|
+
/** Props for {@link FeatureItem}. */
|
|
4
|
+
export interface FeatureItemProps {
|
|
5
|
+
/** The feature, as a display-model row or processed GVL feature. */
|
|
6
|
+
feature: ProcessedFeature;
|
|
7
|
+
/**
|
|
8
|
+
* The row's `data-testid`. Comes from the shared display model, which
|
|
9
|
+
* namespaces it by row kind.
|
|
10
|
+
*/
|
|
11
|
+
testId?: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* One informational IAB Feature row.
|
|
15
|
+
*
|
|
16
|
+
* TCF Policies v5.0.b forbid showing Features next to a control that
|
|
17
|
+
* cannot be disabled, so this row has no switch, no lock and no per-vendor
|
|
18
|
+
* toggles. It shows the name, the description, the illustrations and the
|
|
19
|
+
* names of the vendors that use the feature.
|
|
20
|
+
*
|
|
21
|
+
* @param props - The feature and its test id.
|
|
22
|
+
* @returns The collapsible feature row.
|
|
23
|
+
* @example
|
|
24
|
+
* ```tsx
|
|
25
|
+
* <FeatureItem feature={row} testId={row.testId} />
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
export declare const FeatureItem: FC<FeatureItemProps>;
|
|
@@ -64,10 +64,10 @@ export interface IABConsentDialogProps {
|
|
|
64
64
|
uiSource?: string;
|
|
65
65
|
}
|
|
66
66
|
/**
|
|
67
|
-
* IAB TCF 2.
|
|
67
|
+
* IAB TCF 2.4 compliant consent dialog dialog.
|
|
68
68
|
*
|
|
69
69
|
* @remarks
|
|
70
|
-
* This component implements the required IAB TCF 2.
|
|
70
|
+
* This component implements the required IAB TCF 2.4 UI elements:
|
|
71
71
|
* - Tabbed interface for Purposes and Vendors
|
|
72
72
|
* - Purpose grouping with stacks
|
|
73
73
|
* - Individual purpose and vendor consent toggles
|