47 lines
1.9 KiB
Kotlin
47 lines
1.9 KiB
Kotlin
package com.anytypeio.anytype.presentation.relations.value.tagstatus
|
|
|
|
import androidx.lifecycle.ViewModel
|
|
import androidx.lifecycle.ViewModelProvider
|
|
import com.anytypeio.anytype.analytics.base.Analytics
|
|
import com.anytypeio.anytype.core_models.Payload
|
|
import com.anytypeio.anytype.domain.misc.UrlBuilder
|
|
import com.anytypeio.anytype.domain.`object`.UpdateDetail
|
|
import com.anytypeio.anytype.domain.objects.StoreOfObjectTypes
|
|
import com.anytypeio.anytype.domain.objects.options.GetOptions
|
|
import com.anytypeio.anytype.domain.workspace.SpaceManager
|
|
import com.anytypeio.anytype.presentation.editor.Editor
|
|
import com.anytypeio.anytype.presentation.relations.providers.ObjectRelationProvider
|
|
import com.anytypeio.anytype.presentation.relations.providers.ObjectValueProvider
|
|
import com.anytypeio.anytype.presentation.util.Dispatcher
|
|
import javax.inject.Inject
|
|
|
|
class TagStatusViewModelFactory @Inject constructor(
|
|
private val params: TagStatusViewModel.Params,
|
|
private val relations: ObjectRelationProvider,
|
|
private val values: ObjectValueProvider,
|
|
private val storage: Editor.Storage,
|
|
private val storeOfObjectTypes: StoreOfObjectTypes,
|
|
private val urlBuilder: UrlBuilder,
|
|
private val dispatcher: Dispatcher<Payload>,
|
|
private val setObjectDetails: UpdateDetail,
|
|
private val analytics: Analytics,
|
|
private val getOptions: GetOptions,
|
|
private val spaceManager: SpaceManager
|
|
) : ViewModelProvider.Factory {
|
|
@Suppress("UNCHECKED_CAST")
|
|
override fun <T : ViewModel> create(
|
|
modelClass: Class<T>
|
|
) = TagStatusViewModel(
|
|
params = params,
|
|
relations = relations,
|
|
values = values,
|
|
storage = storage,
|
|
storeOfObjectTypes = storeOfObjectTypes,
|
|
dispatcher = dispatcher,
|
|
setObjectDetails = setObjectDetails,
|
|
urlBuilder = urlBuilder,
|
|
analytics = analytics,
|
|
getOptions = getOptions,
|
|
spaceManager = spaceManager,
|
|
) as T
|
|
} |