Merged in feat/LOY-486-consent-prompt-date (pull request #3221)

Feat/LOY-486 consent prompt date

* chore(LOY-486): update name on date

* chore(LOY-486): open links in new tab

* chore(LOY-486): send prompt date + refactor modal

* chore(LOY-486): update README


Approved-by: Chuma Mcphoy (We Ahead)
This commit is contained in:
Matilda Landström
2025-11-26 12:11:57 +00:00
parent f70c431a5e
commit 086319e8b1
9 changed files with 119 additions and 37 deletions

View File

@@ -1,6 +1,8 @@
# Profiling Consent
A full-page modal shown when a user first visits a My Pages route.
A full-page modal shown when a user first visits a My Pages route. If the modal is dimissed, a banner is shown on the overview page.
On `/profile`, the user can navigate to `/profile/consent` to update the consent.
On signup, it's also possible to opt in.
## Usage
@@ -25,7 +27,7 @@ A read-only version (`Modal/ReadOnly.tsx`) is integrated into the signup form (`
- Shows Scandic logo, title, lead text, benefit cards and an accordion
- Close via "X" button only (no overlay click or ESC key)
- Dismissal persisted in `localStorage` per member
- Includes Accept/Decline action buttons (currently non-functional)
- Includes Accept/Decline action buttons
### Read-Only Version (Signup)
@@ -52,7 +54,7 @@ A read-only version (`Modal/ReadOnly.tsx`) is integrated into the signup form (`
- Key: `profiling-consent:dismissed:<memberKey>`
- Set when the modal is closed via the header close button.
- This flag only controls auto-open behavior; it does not reflect Accept/Decline (those will be handled via API and used server-side to decide banner visibility).
- This flag only controls auto-open behavior; it does not reflect Accept/Decline (those are handled via API and used server-side to decide banner visibility).
## Utilities
@@ -83,8 +85,13 @@ window.dispatchEvent(new CustomEvent("profiling-consent:open"))
Replace `<memberKey>` with the actual `membershipNumber` or `profileId`.
## Future Work
## Contentstack
- Wire up Antavo/API integration for Accept/Decline actions
- Consider default-open Accordion items support in DS and open relevant items by default here
- Connect signup form personalization checkbox with profiling consent acceptance
Profiling Consent setup in Contentstack:
- Profiling Consent (config)
Config needs to be created and published in respective language.
- /consent (account page)
Page needs to be created and published in respective language.
- /overview (account page)
Need to add Dynamic content: Profiling Consent Banner to respective language, and re-publish the page.