InspectorState

data class InspectorState(val available: Boolean = false, val serverControlSupported: Boolean = false, val transactions: List<InspectorTransactionUi> = emptyList(), val capabilities: InspectorEditingUi = InspectorEditingUi(), val mocksEnabled: Boolean = false, val mockRules: List<InspectorMockRuleUi> = emptyList(), val captureRules: List<InspectorCaptureRuleUi> = emptyList(), val lastCommandResult: InspectorCommandResult? = null, val sockets: List<InspectorSocketUi> = emptyList(), val pushEvents: List<InspectorPushUi> = emptyList(), val logs: List<InspectorLogUi> = emptyList(), val crashes: List<InspectorCrashUi> = emptyList(), val flaggedTransactionIds: Set<String> = emptySet(), val flaggedCrashIds: Set<String> = emptySet(), val observeTab: ObserveTab = ObserveTab.TRAFFIC, val selectedTransactionIds: Set<String> = emptySet(), val featureFlags: List<InspectorFeatureFlagUi> = emptyList(), val stateProviders: List<InspectorStateProviderUi> = emptyList(), val preferenceFiles: List<InspectorPreferenceFileUi> = emptyList(), val fileRoots: List<String> = emptyList(), val fileListing: InspectorFileListingUi? = null, val filePreview: InspectorFilePreviewUi? = null, val pendingShareFilePath: String? = null, val databases: List<String> = emptyList(), val databaseListing: InspectorDatabaseListingUi? = null, val queryResult: InspectorQueryResultUi? = null, val sqlResult: InspectorSqlResultUi? = null, val sessions: List<InspectorSessionUi> = emptyList(), val selectedSessionId: String? = null, val sessionLogsLoading: Boolean = false, val health: InspectorHealthUi? = null, val browser: InspectorBrowserUi? = null, val retention: InspectorRetentionUi? = null, val lastScreenshotResult: ScreenshotResult? = null, val keepAlivePromptNeeded: Boolean = false, val captureCategories: Set<CaptureCategory> = CaptureCategory.all())

Presentation state for the Observe and Control surfaces. Both surfaces read the same InspectorViewModel since they are two views over one polled snapshot.

Constructors

Link copied to clipboard
constructor(available: Boolean = false, serverControlSupported: Boolean = false, transactions: List<InspectorTransactionUi> = emptyList(), capabilities: InspectorEditingUi = InspectorEditingUi(), mocksEnabled: Boolean = false, mockRules: List<InspectorMockRuleUi> = emptyList(), captureRules: List<InspectorCaptureRuleUi> = emptyList(), lastCommandResult: InspectorCommandResult? = null, sockets: List<InspectorSocketUi> = emptyList(), pushEvents: List<InspectorPushUi> = emptyList(), logs: List<InspectorLogUi> = emptyList(), crashes: List<InspectorCrashUi> = emptyList(), flaggedTransactionIds: Set<String> = emptySet(), flaggedCrashIds: Set<String> = emptySet(), observeTab: ObserveTab = ObserveTab.TRAFFIC, selectedTransactionIds: Set<String> = emptySet(), featureFlags: List<InspectorFeatureFlagUi> = emptyList(), stateProviders: List<InspectorStateProviderUi> = emptyList(), preferenceFiles: List<InspectorPreferenceFileUi> = emptyList(), fileRoots: List<String> = emptyList(), fileListing: InspectorFileListingUi? = null, filePreview: InspectorFilePreviewUi? = null, pendingShareFilePath: String? = null, databases: List<String> = emptyList(), databaseListing: InspectorDatabaseListingUi? = null, queryResult: InspectorQueryResultUi? = null, sqlResult: InspectorSqlResultUi? = null, sessions: List<InspectorSessionUi> = emptyList(), selectedSessionId: String? = null, sessionLogsLoading: Boolean = false, health: InspectorHealthUi? = null, browser: InspectorBrowserUi? = null, retention: InspectorRetentionUi? = null, lastScreenshotResult: ScreenshotResult? = null, keepAlivePromptNeeded: Boolean = false, captureCategories: Set<CaptureCategory> = CaptureCategory.all())

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val captureCategories: Set<CaptureCategory>

Mirrors InspectorSnapshot.captureCategories -- the set of capture categories the host enabled at DevConsole.initialize(). InspectorDataSource already empties out the lists a disabled category would otherwise populate (e.g. an empty sockets when neither SOCKET nor MQTT is enabled), but that alone only produces an empty state, not a hidden surface -- the helpers below (captures, visibleObserveTabs, visibleDestinations) are the one place that turns "this category is off" into "this tab/destination does not exist right now", so every caller (tab row, bottom nav, section gating) reads the same gate instead of re-deriving it.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Evidence-tray flag state read through InspectorDataSource.flaggedCrashIds; see its own doc.

Link copied to clipboard

Evidence-tray flag state read through InspectorDataSource.flaggedTransactionIds; see its own doc.

Link copied to clipboard
Link copied to clipboard

Mirrors InspectorSnapshot.keepAlivePromptNeeded; consumed by the Control surface's snackbar.

Link copied to clipboard
val lastScreenshotResult: ScreenshotResult?

One-shot: the More screen's last screenshot capture attempt, consumed into a flash message.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

One-shot: a resolved path awaiting the Share sheet; consumed by InspectorAction.ConsumeShareFile.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard