Skip to content

Commit 99dee0d

Browse files
feat(dapp): update cookie policy page (#1025)
* feat(dapp): update cookie policy page * chore: cover fully necessary cookies section
1 parent 1936607 commit 99dee0d

File tree

4 files changed

+35
-139
lines changed

4 files changed

+35
-139
lines changed

dapp/src/app/cookie-policy/page.tsx

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,28 @@ export default function CookiePolicy() {
2929
necessaryCookies={[
3030
{
3131
name: AMP_COOKIES_KEY,
32-
purpose: 'Session management cookie for IOTA applications',
32+
purpose:
33+
"Stores the user's Amplitude cookies consent state for the current domain",
3334
provider: 'IOTA',
34-
category: 'Necessary',
35+
expiration: '1 year',
3536
},
37+
]}
38+
additionalCookies={[
3639
{
3740
name: 'AMP_*',
38-
purpose: 'Amplitude analytics cookies',
41+
purpose:
42+
'Stores anonymous session and device identifiers used by Amplitude to track user interactions and analytics data across your visits.',
43+
provider: 'Amplitude',
44+
category: 'Analytics',
45+
expiration: '1 year',
46+
},
47+
{
48+
name: 'AMP_MKTG_*',
49+
purpose:
50+
'Stores marketing attribution data including UTM parameters, referrer information, and click IDs to track campaign effectiveness.',
3951
provider: 'Amplitude',
4052
category: 'Analytics',
53+
expiration: '1 year',
4154
},
4255
]}
4356
onAccept={handleConsentAccepted}

dapp/src/components/cookie-policy/CookiePolicyContent.tsx

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,14 @@ import { useEffect, useState } from 'react';
1414

1515
import { getAmplitudeConsentStatus } from '@/lib/utils/analytics/amplitude';
1616

17-
import { categorizeCookies } from './helpers';
1817
import { CookiePolicyContentProps, DescribedCookie } from './types';
1918

2019
export function CookiePolicyContent({
2120
necessaryCookies,
21+
additionalCookies,
2222
onAccept,
2323
onReject,
2424
}: CookiePolicyContentProps): React.ReactElement {
25-
const { necessary, additional } = categorizeCookies(necessaryCookies || [], []);
2625
const [consentStatus, setConsentStatus] = useState<'pending' | 'accepted' | 'declined'>(
2726
'pending',
2827
);
@@ -64,18 +63,20 @@ export function CookiePolicyContent({
6463
</>
6564
</CookiePolicyContentDescription>
6665
</CookiePolicyContentSection>
67-
<CookiePolicyContentSection>
68-
<CookiePolicyContentTitle>Necessary Cookies</CookiePolicyContentTitle>
69-
<CookiePolicyContentDescription>
70-
<p>
71-
Necessary cookies help make a website usable by enabling basic functions
72-
like page navigation and access to secure areas of the website. The website
73-
cannot function properly without these cookies.
74-
</p>
75-
</CookiePolicyContentDescription>
76-
{necessary.length > 0 && <CookiesTable cookies={necessary} />}
77-
</CookiePolicyContentSection>
78-
{additional.length > 0 && (
66+
{necessaryCookies && necessaryCookies.length > 0 && (
67+
<CookiePolicyContentSection>
68+
<CookiePolicyContentTitle>Necessary Cookies</CookiePolicyContentTitle>
69+
<CookiePolicyContentDescription>
70+
<p>
71+
Necessary cookies help make a website usable by enabling basic functions
72+
like page navigation and access to secure areas of the website. The
73+
website cannot function properly without these cookies.
74+
</p>
75+
</CookiePolicyContentDescription>
76+
<CookiesTable cookies={necessaryCookies} />
77+
</CookiePolicyContentSection>
78+
)}
79+
{additionalCookies && additionalCookies.length > 0 && (
7980
<CookiePolicyContentSection>
8081
<CookiePolicyContentTitle>Additional Cookies</CookiePolicyContentTitle>
8182
<CookiePolicyContentDescription>
@@ -85,7 +86,7 @@ export function CookiePolicyContent({
8586
or by third party providers whose services we have added to our pages.
8687
</p>
8788
</CookiePolicyContentDescription>
88-
<CookiesTable cookies={additional} />
89+
<CookiesTable cookies={additionalCookies} />
8990
</CookiePolicyContentSection>
9091
)}
9192
<CookiePolicyContentSection>

dapp/src/components/cookie-policy/helpers.ts

Lines changed: 0 additions & 120 deletions
This file was deleted.

dapp/src/lib/utils/analytics/amplitude.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,11 +75,13 @@ export function setAmpliConsentAccepted() {
7575

7676
/**
7777
* Call this function when user declines cookies/tracking.
78-
* This will disable event tracking.
78+
* This will disable event tracking and clear all Amplitude data.
7979
*/
8080
export function onAmplitudeConsentDeclined() {
8181
// First, opt out to prevent Amplitude from creating new cookies
8282
ampli.client.setOptOut(true);
83+
// Clear all Amplitude storage (localStorage and cookies)
84+
ampli.client.reset();
8385
cleanAmplitudeCookies();
8486
document.cookie = `${AMP_COOKIES_KEY}=false; max-age=31536000; path=/; SameSite=Strict`;
8587
}

0 commit comments

Comments
 (0)