Package-level declarations

Types

Link copied to clipboard

App-wide pub/sub channel — the mechanism behind BroadcastToSystem and SystemBroadcastListener's OnSystemBroadcast(broadcastId) trigger. A single Koin single instance backs the whole app, so a value published from any screen's event chain reaches every SystemBroadcastListener mounted anywhere, on any screen — unlike dev.catbit.mosaic.client.ui.sdui.foundation.screen_tiles_broadcast.ScreenTilesBroadcastChannel, which is scoped to one screen. Backed by a MutableSharedFlow with no replay, so a subscriber only sees values published after it started collecting — nothing sent before it existed.

Link copied to clipboard
data class SystemBroadcastData(val broadcastId: String, val data: AnySerializable)

One value published on SystemBroadcastChannel — carries its own broadcastId alongside data so a single shared flow can multiplex every channel id, and a SystemBroadcastListener (or observeSystemBroadcastChannel) filters by comparing broadcastId against the one it's listening for.