OudsSkeletonProvider

fun OudsSkeletonProvider(skeleton: OudsSkeleton?, content: @Composable () -> Unit)

Provides an OudsSkeleton to all OUDS components within the content hierarchy.

This approach is convenient for displaying multiple skeletons, as it avoids passing the skeleton parameter to each component individually. Components within this provider automatically use the provided skeleton unless explicitly overridden with their own skeleton parameter.

There are several ways to display skeletons:

Atomic skeleton component - Standalone skeleton rectangle:

OudsSkeleton(modifier = Modifier.size(200.dp, 62.dp))

Component skeleton parameter - Individual component skeletons:

OudsButton(
label = "Click me",
onClick = {},
skeleton = OudsSkeleton(rememberOudsSkeletonState())
)

Skeleton provider (this approach) - Convenient for displaying multiple skeletons:

OudsSkeletonProvider(skeleton = OudsSkeleton(rememberOudsSkeletonState())) {
OudsButton(label = "Click me", onClick = {})
OudsTag(label = "Tag")
// All OUDS components automatically become skeletons
}

Parameters

skeleton

The skeleton state to provide to child components, or null to disable skeletons.

content

The composable content hierarchy that will have access to the skeleton state.

See also

The skeleton class used with this provider

The composition local used internally to provide skeleton state