-
-
Notifications
You must be signed in to change notification settings - Fork 27
Add cookie banner for opt-in analytics #1418
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Analytics are now opt-in with a cookie consent banner to ensure compliance with GDPR guidelines.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR implements a cookie consent banner to comply with privacy regulations (GDPR/CCPA). The implementation adds user consent management for analytics tracking with opt-in/opt-out functionality.
- Adds a new shared library
@jetstream/ui/cookie-consent-bannerwith consent management utilities - Integrates consent-based analytics initialization for both Amplitude and Google Analytics
- Updates privacy documentation to reflect the new opt-in consent mechanism
Reviewed Changes
Copilot reviewed 27 out of 27 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| tsconfig.base.json | Adds path mapping for new cookie consent banner library |
| libs/shared/ui-core/src/analytics.tsx | Updates Amplitude initialization to respect consent opt-out flag |
| libs/shared/ui-app-state/src/lib/ui-app-state.ts | Adds global analytics consent state atom |
| libs/shared/cookie-consent-banner/* | New library providing cookie consent UI, storage, and analytics integration |
| apps/landing/pages/_document.js | Integrates conditional Google Analytics loading |
| apps/landing/pages/_app.js | Adds cookie consent banner to landing app |
| apps/jetstream/src/app/components/core/AppInitializer.tsx | Integrates consent banner and conditional GA in main app |
| apps/jetstream/src/app/components/settings/AnalyticsTrackingSetting.tsx | New settings component for managing analytics preferences |
| apps/landing/pages/privacy/index.tsx | Updates privacy policy removing "Do Not Track" section |
| apps/landing/pages/subprocessors/index.tsx | Updates data processor information with consent details |
| apps/api/src/app/controllers/auth.controller.ts | Adds OAuth validation and error handling improvements |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
libs/shared/cookie-consent-banner/src/lib/useConditionalGoogleAnalytics.ts
Outdated
Show resolved
Hide resolved
libs/shared/cookie-consent-banner/src/lib/useConditionalGoogleAnalytics.ts
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 29 out of 29 changed files in this pull request and generated 5 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
libs/shared/cookie-consent-banner/src/lib/useConditionalGoogleAnalytics.ts
Show resolved
Hide resolved
Escape regex string - even though this is a hard-coded string passed in, it is better to be safe
Analytics are now opt-in with a cookie consent banner to ensure compliance with GDPR guidelines.