ProtectedconstructorCreate an Adapter.
The blueprint to create the adapter.
Protected ReadonlyblueprintProtected ReadonlyhooksProtected ReadonlymiddlewareProtected ReadonlyresolvedProtectedbuildBuild the raw response.
The event context.
OptionaleventHandler: AdapterEventHandlerType<IncomingBrowserEvent, OutgoingBrowserResponse>
The event handler to be run.
The raw response wrapper.
ProtectedeventProcess one navigation intent through the kernel.
The resolved event handler.
The navigation intent.
The navigation source.
The platform response.
ProtectedexecuteExecute the event handler lifecycle hooks.
The hook to execute.
The event handler to be run.
ProtectedexecuteExecute adapter lifecycle hooks.
The hook's name.
Optionalcontext: ReactNativeAdapterContext
The event context.
Optionalerror: any
The error to handle.
ProtectedhandleHandle error.
The error to handle.
The event context.
The raw response.
ProtectedhandleHandle the event.
The event context.
The event handler to be run.
The raw response wrapper.
ProtectedmakeCreate pipeline options for the Adapter.
The pipeline options for transforming the event.
ProtectedresolveGet the error handler for the given error.
The error to get the handler for.
The error handler.
ProtectedresolveRun the adapter.
Order matters here. The event handler is initialized before any listener is live, so a
deep link arriving during startup cannot reach a handler that has not run its onInit
hooks. Then the platform is bound (which yields the launch URL), then listeners are
attached, and only then is the launch intent dispatched: the application always
resolves exactly one route on startup, the one it was opened with or the base path.
Idempotent: running again tears down the previous listeners first, so a hot reload never leaves two adapters answering the same intent.
ProtectedsendSend the raw event through the destination.
The event context.
The event handler to be run.
Platform-specific response.
Tear the adapter down: stop listening to the platform and to the application, then run
the onStop hooks. Safe to call when never started.
ProtectedvalidateValidate the context and event handler.
The context to validate.
The event handler to validate.
StaticcreateCreate the adapter.
The application blueprint.
A new adapter instance.
React Native adapter for Stone.js.
The Integration dimension for a native mobile application: it captures the platform's causes (the launch URL, deep links, in-app navigation), turns each into an
IncomingBrowserEvent, hands it to the kernel, and runs the effect the view layer deferred. The domain it serves is unchanged from the one behind an HTTP adapter, which is the point of the whole exercise.It is the exact native counterpart of
BrowserAdapter, with a NavigationSource where the browser haswindow.Example