feat(sample): Visual Inbox demo screen in the RN example app - #622
Merged
Conversation
Contributor
Sample app builds 📱Below you will find the list of the latest versions of the sample apps. It's recommended to always download the latest builds of the sample apps to accurately test the pull request.
|
mahmoud-elmorabea
force-pushed
the
visual-inbox-wrappers
branch
from
July 29, 2026 09:24
bca7e67 to
d2d148f
Compare
mahmoud-elmorabea
force-pushed
the
rn-inbox-sample
branch
from
July 29, 2026 09:25
bc7ec79 to
285ce9a
Compare
mahmoud-elmorabea
marked this pull request as ready for review
July 29, 2026 10:18
mahmoud-elmorabea
force-pushed
the
rn-inbox-sample
branch
2 times, most recently
from
July 29, 2026 10:37
cb755fa to
b851d1b
Compare
Adds a Visual Inbox screen exercising all three components — the drop-in overlay, the standalone bell driving a modal, and the embedded message list — plus an on-screen readout of the InboxEventListener callbacks (action / shown / opened / dismissed) so the listener bridge can be checked by hand. Stacked on the SDK branch: this only adds demo UI. The build wiring the sample needs to resolve the unreleased native inbox (example Podfile branch pins, core library desugaring) lives in the SDK commit, so that PR stands on its own in CI. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Follows the SDK change to two components: the branded bell (which opens the SDK's own panel) and the message list. The screen no longer presents any inbox UI of its own — the hand-rolled modal it used to open from the bell is gone, since that was demonstrating a "host presents its own UI" path the wrappers no longer expose. - No ScrollView wrapper. NotificationInboxView scrolls its own list, and a parent ScrollView intercepts the drag before the native list sees it. - Bell sized 88 square: the native composition insets its 56 bell by 16 per side, so a 56 box squeezes the circle onto the glyph. - messageActionTaken now routes actionValue through Linking.openURL, as the SDK would. While a host listener is registered the SDK suppresses its own deep-link handling, so previously a CTA only produced a toast and never navigated. - App.tsx registers the inbox screens for deep links (signed-in map only, so an anonymous link lands on Login rather than an empty inbox). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
mahmoud-elmorabea
force-pushed
the
rn-inbox-sample
branch
from
July 29, 2026 16:42
b851d1b to
c3e6432
Compare
mrehan27
approved these changes
Jul 30, 2026
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.
Stacked on #615 (SDK). Adds only the demo UI — no SDK changes.
A Visual Inbox screen exercising all three components (drop-in overlay, standalone bell driving a modal, embedded message list) plus an on-screen readout of the
InboxEventListenercallbacks so the listener bridge can be checked by hand.Build wiring the sample needs to resolve the unreleased native inbox — the example Podfile branch pins and core library desugaring — deliberately lives in the SDK PR so that one stands on its own in CI.
Merge #615 first.
Note
Low Risk
Example-app-only UI and navigation changes with no production SDK or auth logic in this diff.
Overview
Adds a Visual Inbox example screen that exercises
NotificationInboxBellView(SDK-owned panel on tap) and an embeddedNotificationInboxViewmessage list, with layout notes to avoid nesting the list in aScrollView.While that screen is mounted, it registers
registerInboxEventListenerto surface inbox lifecycle and action events via flash toasts, opens action URLs throughLinkingwhen the host owns navigation, and cleans up the subscription on unmount.Navigation and deep links: new stack route and home entry point; signed-in users get
visual-inbox/inbox-messageslinking paths so anonymous deep links do not hit an empty inbox.The example lockfile bumps the local
customerio-reactnativetarball from 6.4.0 to 6.5.2.Reviewed by Cursor Bugbot for commit c3e6432. Bugbot is set up for automated code reviews on this repo. Configure here.