Changelog

fun Changelog(state: ChangelogState, setup: Changelog.Setup, modifier: Modifier, lazyListState: LazyListState = rememberLazyListState(), releaseContainer: @Composable (content: @Composable () -> Unit) -> Unit = { OutlinedCard { Column( modifier = Modifier.padding(8.dp), verticalArrangement = Arrangement.spacedBy(8.dp) ) { it() } } }, loading: @Composable () -> Unit = { LinearProgressIndicator() })

Main entry point for the changelog. It will read the changelog data and display it. You can customize the release container and the loading state.

Parameters

state

the state of the changelog, which contains the minimum visible release version and a function to hide the changelog if there are no releases to show

setup

the setup for the changelog, which contains the log file reader, text formatter, version formatter, and other settings

modifier

the modifier for the changelog

lazyListState

the state for the lazy list, which can be used to control the scroll position

releaseContainer

a composable function that wraps the release content, which can be used to customize the appearance of the release (default is an outlined card with padding)


fun Changelog(releases: List<ChangelogReleaseItem>, setup: Changelog.Setup, modifier: Modifier, lazyListState: LazyListState = rememberLazyListState(), releaseContainer: @Composable (content: @Composable () -> Unit) -> Unit = { it() })

Displays the list of releases and their items. It uses the release renderer to display the release information and the item renderers to display the items.

Parameters

releases

the list of releases to display

setup

the setup for the changelog, which contains the text formatter and other settings

modifier

the modifier for the changelog

lazyListState

the state for the lazy list, which can be used to control the scroll position

releaseContainer

a composable function that wraps the release content, which can be used to customize the appearance of the release (default is an outlined card with padding)