Notifications: deep-link on tap + swipe-to-dismiss
Each notification now navigates to its related screen when tapped (toast or list): friend_request/invite -> Friends, achievement/reward -> Achievements, daily -> opens the daily-reward modal, coin-purchase success -> Shop. An explicit per-notification 'route' overrides the kind default. List rows are swipeable (drag aside) and have an X to dismiss individually, plus a Clear-all button; the toast can be flicked up to dismiss or tapped to open. New store actions: markRead/remove/clearAll + openNotification navigator. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -95,6 +95,7 @@ export default function Page() {
|
||||
bodyFa: coins ? `${coins} سکه به حساب شما اضافه شد` : undefined,
|
||||
bodyEn: coins ? `${coins} coins added` : undefined,
|
||||
icon: "💰",
|
||||
route: "shop",
|
||||
});
|
||||
useSessionStore.getState().refreshProfile();
|
||||
} else {
|
||||
@@ -118,6 +119,7 @@ export default function Page() {
|
||||
bodyFa: v.coins ? `${v.coins.toLocaleString()} سکه اضافه شد` : undefined,
|
||||
bodyEn: v.coins ? `${v.coins.toLocaleString()} coins added` : undefined,
|
||||
icon: "💰",
|
||||
route: "shop",
|
||||
});
|
||||
} else {
|
||||
pushNotification({ kind: "system", titleFa: "پرداخت ناموفق بود", titleEn: "Payment failed", icon: "⚠️" });
|
||||
|
||||
Reference in New Issue
Block a user