Repository navigation
Conversation
|
@gbolly122 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds the Web Push claim-notification coordinator for issue #299: user-initiated
permission prompting, persisted opt-out handling, event-id claiming to suppress
duplicate notifications while a tab is open, and lock-screen-safe payload
building that strips wallet addresses, exact payout amounts, and other claim
detail.
Closes #299
Type of change
What changed
src/lib/realtime/webPushClaims.tsWebPushClaimNotificationCoordinatorwith explicit prompt reasons(
post_purchase,notification_settings) and a hard refusal to prompt onpage load.
notify the same event twice.
buildLockScreenSafePushNotificationstrips sensitive fields and falls backto a generic title/body/deep link.
validateVapidPublicKeyfor the fail-fastNEXT_PUBLIC_*configurationpattern.
src/lib/realtime/webPushClaims.test.tsValidation
Checklist
CONTRIBUTING.mdmainissues: 16 tracked filesare 0 bytes and
src/app/cover/page.tsxis truncated, sotsc/vitestfailon
mainbefore this change.Notes for reviewers
The backend push sender/VAPID provisioning remains the documented out-of-scope
dependency. Service-worker registration and UI wiring depend on the missing
layout/notification-shell files; this PR provides the coordinator and tests so
it can land independently of that restoration work.