StylishContentStateHost

fun <T> StylishContentStateHost(state: StylishContentState<T>, modifier: Modifier = Modifier, loadingContent: @Composable () -> Unit = { Box(Modifier.fillMaxWidth().padding(24.dp), contentAlignment = Alignment.Center) { CircularProgressIndicator() } }, emptyContent: @Composable (String?) -> Unit = { message -> Box(Modifier.fillMaxWidth().padding(24.dp), contentAlignment = Alignment.Center) { Text(message ?: StylishTheme.strings.empty, color = MaterialTheme.colorScheme.onSurfaceVariant) } }, errorContent: @Composable (StylishContentState.Error) -> Unit = { error -> Box(Modifier.fillMaxWidth().padding(24.dp), contentAlignment = Alignment.Center) { Text(error.message, color = MaterialTheme.colorScheme.error) } }, content: @Composable (T) -> Unit)

Renders the shared Loading/Empty/Error/Content state machine.

Use this at the boundary between a screen's state holder and its visual content. The default branches are deliberately modest and localization-aware; production screens can replace each branch with a slot without changing their state model or introducing boolean combinations.