Package-level declarations

Properties

Link copied to clipboard
val LocalMetroViewModelFactory: ProvidableCompositionLocal<MetroViewModelFactory>

CompositionLocal for providing the MetroViewModelFactory in Compose. This allows metroViewModel and assistedMetroViewModel overloads to access a factory.

Functions

Link copied to clipboard
@Composable
inline fun <VM : ViewModel> assistedMetroViewModel(viewModelStoreOwner: ViewModelStoreOwner = requireViewModelStoreOwner(), key: String? = null, extras: CreationExtras = if (viewModelStoreOwner is HasDefaultViewModelProviderFactory) { viewModelStoreOwner.defaultViewModelCreationExtras } else { CreationExtras.Empty }): VM

Retrieves a Metro-injected ViewModel using the LocalMetroViewModelFactory.

@Composable
inline fun <VM : ViewModel, FactoryType : ManualViewModelAssistedFactory> assistedMetroViewModel(viewModelStoreOwner: ViewModelStoreOwner = requireViewModelStoreOwner(), key: String? = null, extras: CreationExtras = if (viewModelStoreOwner is HasDefaultViewModelProviderFactory) { viewModelStoreOwner.defaultViewModelCreationExtras } else { CreationExtras.Empty }, crossinline createViewModel: FactoryType.() -> VM): VM

Retrieves a Metro-injected ManualViewModelAssistedFactory using the LocalMetroViewModelFactory.

Link copied to clipboard
@Composable
inline fun <VM : ViewModel> metroViewModel(viewModelStoreOwner: ViewModelStoreOwner = requireViewModelStoreOwner(), key: String? = null): VM

Retrieves a Metro-injected ViewModel using the LocalMetroViewModelFactory.