Pass through the marmot repository
This commit is contained in:
@@ -8,9 +8,11 @@ import com.vitorpamplona.quartz.marmot.mls.codec.TlsWriter
|
||||
import com.vitorpamplona.quartz.marmot.mls.messages.KeyPackageBundle
|
||||
import com.vitorpamplona.quartz.nip01Core.core.HexKey
|
||||
import com.vitorpamplona.quartz.nip49PrivKeyEnc.Nip49
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
|
||||
class DatabaseMarmotRepository(
|
||||
val database: TorchDatabase
|
||||
val database: TorchDatabase,
|
||||
val scope: CoroutineScope
|
||||
): MarmotRepository {
|
||||
override suspend fun saveMarmotKeyPackageBundle(
|
||||
publicKey: HexKey,
|
||||
|
||||
@@ -12,7 +12,7 @@ interface MarmotRepository {
|
||||
)
|
||||
|
||||
companion object {
|
||||
private val NO_OP_MARMOT_KEY_PACKAGE_BUNDLE = object: MarmotRepository {
|
||||
val NO_OP_MARMOT_KEY_PACKAGE_BUNDLE = object: MarmotRepository {
|
||||
override suspend fun saveMarmotKeyPackageBundle(
|
||||
publicKey: HexKey,
|
||||
keyPackageBundle: KeyPackageBundle,
|
||||
|
||||
@@ -35,20 +35,23 @@ import androidx.compose.ui.text.style.TextAlign
|
||||
import androidx.compose.ui.tooling.preview.Preview
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.lifecycle.viewmodel.compose.viewModel
|
||||
import at.torch.compose.repository.MarmotRepository
|
||||
import at.torch.compose.ui.view.state.CreateProfileUIState
|
||||
|
||||
@OptIn(ExperimentalMaterial3ExpressiveApi::class)
|
||||
@Composable
|
||||
fun CreateProfileScreen(
|
||||
initialCreateProfileUIState: at.torch.compose.ui.view.state.CreateProfileUIState = _root_ide_package_.at.torch.compose.ui.view.state.CreateProfileUIState.Declaration,
|
||||
initialCreateProfileUIState: CreateProfileUIState = CreateProfileUIState.Declaration,
|
||||
onNavigateToEndThis: () -> Unit,
|
||||
nostrRepository: at.torch.compose.repository.NostrRepository,
|
||||
marmotRepository: MarmotRepository,
|
||||
writeSeed: (List<String>) -> Unit
|
||||
) {
|
||||
val createProfileViewModel: CreateProfileViewModel = viewModel (
|
||||
factory = CreateProfileViewModel.factory(
|
||||
initialCreateProfileUIState,
|
||||
nostrRepository
|
||||
nostrRepository,
|
||||
marmotRepository = marmotRepository
|
||||
)
|
||||
)
|
||||
Scaffold { innerPadding ->
|
||||
@@ -396,7 +399,8 @@ fun CreateAccountScreenPreview() {
|
||||
// ),
|
||||
onNavigateToEndThis = {},
|
||||
writeSeed = {},
|
||||
nostrRepository = _root_ide_package_.at.torch.compose.repository.NostrRepository.Companion.NO_OP_NOSTR_REPOSITORY
|
||||
nostrRepository = at.torch.compose.repository.NostrRepository.NO_OP_NOSTR_REPOSITORY,
|
||||
marmotRepository = MarmotRepository.NO_OP_MARMOT_KEY_PACKAGE_BUNDLE
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@ import androidx.compose.ui.graphics.Color
|
||||
import androidx.lifecycle.compose.LocalLifecycleOwner
|
||||
import androidx.lifecycle.viewmodel.compose.viewModel
|
||||
import androidx.navigation.compose.composable
|
||||
import at.torch.compose.database.repository.DatabaseMarmotRepository
|
||||
import at.torch.compose.ui.composable.ChatRoomCreationScreen
|
||||
import at.torch.compose.ui.composable.ChatRoomDetailScreen
|
||||
import at.torch.compose.ui.composable.HomeScreen
|
||||
@@ -59,6 +60,11 @@ fun TorchNavHost(
|
||||
applicationIOScope
|
||||
)
|
||||
|
||||
val databaseMarmotRepository = DatabaseMarmotRepository(
|
||||
database = auxDatabaseManager.auxDatabase,
|
||||
applicationIOScope
|
||||
)
|
||||
|
||||
val searchRepository =
|
||||
_root_ide_package_.at.torch.compose.database.repository.DatabaseSearchRepository(
|
||||
database = auxDatabaseManager.auxDatabase
|
||||
@@ -275,6 +281,7 @@ fun TorchNavHost(
|
||||
}
|
||||
},
|
||||
nostrRepository = databaseNostrRepository,
|
||||
marmotRepository = databaseMarmotRepository,
|
||||
writeSeed = { words ->
|
||||
sovereignWalletViewModel.writeSeed(
|
||||
words,
|
||||
|
||||
Reference in New Issue
Block a user