routed_hotwire library

Classes

TurboRequestInfo
Parsed view of the headers Turbo adds to requests.
TurboResponse
Helpers for sending Turbo-compatible responses from routed controllers.
TurboStreamConnection
Minimal contract representing a client connection that can receive Turbo Streams.
TurboStreamHub
Topic-based broadcaster for Turbo Stream fragments.
TurboStreamIdentifiable
Contract for types that can provide a stable identifier for Turbo streams.
TurboStreamSocketHandler
Skeleton WebSocket handler that wires routed's built-in support to TurboStreamHub.
WebSocketTurboConnection

Enums

TurboRequestKind
Classification for incoming Turbo-driven requests.
TurboStreamAction
Turbo Stream builders for HTML fragments and payload helpers.

Extensions

TurboContextExtensions on EngineContext
Shortcut for retrieving TurboRequestInfo directly from the context.
TurboResponseContext on EngineContext
Mixin helpers onto EngineContext for concise usage.

Properties

turboStreamSigningSecret String
Configures the shared secret used to sign stream names.
no getter

Functions

buildTurboStreamName(Iterable<Object?> streamables) String
Builds a canonical stream name from the provided streamables.
joinTurboStreams(Iterable<String> fragments) String
Combine stream fragments into a single payload.
normalizeTurboStreamBody(dynamic body) String
Normalise body input for Turbo Stream responses.
signTurboStreamName(Iterable<Object?> streamables) String
Signs the Turbo stream name derived from streamables.
turboStream({required TurboStreamAction action, String? target, String? targets, String? html, Map<String, String>? attributes}) String
Build a <turbo-stream> fragment.
turboStreamAfter({required String target, required String html, Map<String, String>? attributes}) String
turboStreamAppend({required String target, required String html, Map<String, String>? attributes}) String
turboStreamBefore({required String target, required String html, Map<String, String>? attributes}) String
turboStreamPrepend({required String target, required String html, Map<String, String>? attributes}) String
turboStreamRefresh({String? requestId, Map<String, String>? attributes}) String
turboStreamRemove({required String target, Map<String, String>? attributes}) String
turboStreamReplace({required String target, required String html, Map<String, String>? attributes}) String
turboStreamSourceTag({required Iterable<Object?> streamables, String channel = 'Turbo::StreamsChannel', Map<String, String>? dataAttributes}) String
Generates the markup for a <turbo-cable-stream-source> subscription tag.
turboStreamUpdate({required String target, required String html, Map<String, String>? attributes}) String
verifyTurboStreamName(String? name) String?
Verifies a signed stream name and returns the original stream name if valid.

Typedefs

TurboTopicResolver = Iterable<String> Function(WebSocketContext context)