Cookie consent widget component for GDPR/CCPA compliance.
A refined glass-morphic consent interface with floating icon, preferences modal, and first-visit banner.
Features
- Floating cookie icon with position options (4 corners)
- Glass-morphic preferences modal with category toggles
- First-visit banner for opt-in frameworks
- Google Consent Mode v2 integration
- Cross-tab synchronization via localStorage
- Dark mode support
- Fully accessible (ARIA compliant)
Examples
<.cookie_consent
frameworks={["gdpr"]}
icon_position="bottom-right"
policy_version="1.0"
google_consent_mode={true}
/>
Summary
Functions
Attributes
frameworks(:list) - Selected compliance frameworks. Defaults to[].consent_mode(:string) - Consent mode: strict (full compliance) or notice (simple notice). Defaults to"strict". Must be one of"strict", or"notice".icon_position(:string) - Position of floating icon. Defaults to"bottom-right". Must be one of"bottom-left","bottom-right","top-left", or"top-right".policy_version(:string) - Policy version for consent tracking. Defaults to"1.0".legal_index_url(:string) - URL to legal pages index. Defaults to"/legal".cookie_policy_url(:string) - Defaults tonil.privacy_policy_url(:string) - Defaults tonil.legal_links(:list) - Defaults to[].google_consent_mode(:boolean) - Enable Google Consent Mode v2. Defaults tofalse.class(:string) - Defaults to"".phoenix_kit_current_scope(:any) - PhoenixKit scope for auth-based visibility check. Defaults tonil.