remember Retained Value
fun <T> rememberRetainedValue(key: String? = null, viewModelStoreOwner: ViewModelStoreOwner = checkNotNull(LocalViewModelStoreOwner.current) {
"No ViewModelStoreOwner was provided via LocalViewModelStoreOwner"
}, onDispose: T.() -> Unit? = null, calculation: () -> T): T
Remember the value produced by calculation. It behaves similarly to rememberSaveable, but uses ViewModel to store the value.
You must have a ViewModelStoreOwner provided via a composition local to use this function