Package-level declarations

Types

Link copied to clipboard
@Serializable
data class ActionStateEvent(val clientId: String, val timestamp: Long, val actionType: String, val actionData: String, val stateDeltaJson: String, val moduleName: String = "")

Represents an action dispatched by a client with its resulting state.

Link copied to clipboard
@Serializable
data class CrashEventInfo(val timestamp: Long, val clientId: String, val exception: CrashException)

Represents crash information displayed in the timeline.

Link copied to clipboard

Actions for the DevTools UI.

Link copied to clipboard

DevTools color scheme optimized for debugging and state inspection.

Link copied to clipboard
class DevToolsLogic(storeAccessor: StoreAccessor) : ModuleLogic

Logic for handling DevTools UI side effects.

Link copied to clipboard

Reaktiv module for DevTools UI state management.

Link copied to clipboard
@Serializable
data class DevToolsState(val connectionState: ConnectionState = ConnectionState.DISCONNECTED, val connectedClients: List<ClientInfo> = emptyList(), val actionStateHistory: List<ActionStateEvent> = emptyList(), val logicMethodEvents: List<LogicMethodEvent> = emptyList(), val selectedPublisher: String? = null, val selectedListener: String? = null, val showStateAsDiff: Boolean = false, val selectedActionIndex: Int? = null, val devicePanelExpanded: Boolean = false, val autoSelectLatest: Boolean = true, val excludedActionTypes: Set<String> = emptySet(), val timeTravelEnabled: Boolean = false, val timeTravelPosition: Int = 0, val showActions: Boolean = true, val showLogicMethods: Boolean = true, val selectedLogicMethodCallId: String? = null, val excludedLogicMethods: Set<String> = emptySet(), val callIdToMethodIdentifier: Map<String, String> = emptyMap(), val showImportGhostDialog: Boolean = false, val crashEvent: CrashEventInfo? = null, val crashSelected: Boolean = false, val publisherSessionStart: Long? = null, val canExportSession: Boolean = false, val activeGhostId: String? = null, val initialStateJson: String = "{}") : ModuleState

State for the DevTools WASM UI.

Link copied to clipboard
data class DiffColors(val added: Color = Color(0xFF4EC9B0), val addedContainer: Color = Color(0xFF1E4D40), val onAddedContainer: Color = Color(0xFF4EC9B0), val modified: Color = Color(0xFFDCDCAA), val modifiedContainer: Color = Color(0xFF4D4D1E), val onModifiedContainer: Color = Color(0xFFDCDCAA), val removed: Color = DevToolsColors.error, val removedContainer: Color = DevToolsColors.errorContainer, val onRemovedContainer: Color = DevToolsColors.onErrorContainer)

Extended colors for diff visualization that don't fit Material 3's standard scheme. These provide clear semantic meaning for state changes in debugging.

Link copied to clipboard
@Serializable
sealed class LogicMethodEvent

Represents a logic method tracing event from a client.

Link copied to clipboard
data class SyntaxColors(val key: Color = DevToolsColors.primary, val string: Color = DevToolsColors.secondary, val boolean: Color = DevToolsColors.tertiary, val number: Color = Color(0xFFB5CEA8), val nullValue: Color = DevToolsColors.onSurfaceVariant, val bracket: Color = DevToolsColors.onSurfaceVariant, val oldValue: Color = DevToolsColors.error)

Syntax highlighting colors for JSON/code visualization.

Properties

Functions

Link copied to clipboard
fun DevToolsApp(store: Store, serverUrl: String = "ws://localhost:8080/ws")

Main DevTools WASM application.

Link copied to clipboard
fun DevToolsTheme(content: @Composable () -> Unit)

DevTools theme wrapper that applies the debugging-optimized color scheme.

Link copied to clipboard

Converts ActionStateEvent to CapturedAction. Eliminates the intermediate DevToolsMessage.ActionDispatched conversion step.

Converts LogicMethodEvent.Completed to CapturedLogicComplete. Eliminates the intermediate DevToolsMessage.LogicMethodCompleted conversion step.

Converts LogicMethodEvent.Failed to CapturedLogicFailed. Eliminates the intermediate DevToolsMessage.LogicMethodFailed conversion step.

Converts LogicMethodEvent.Started to CapturedLogicStart. Eliminates the intermediate DevToolsMessage.LogicMethodStarted conversion step.