Merge branch 'claude/sweet-keller-9c933e' into artifacts
This commit is contained in:
commit
c0897645ae
1 file changed
+38
-24
+38
-24
@@ -4,6 +4,7 @@ import androidx.compose.foundation.layout.fillMaxSize
|
|||||||
import androidx.compose.material3.Surface
|
import androidx.compose.material3.Surface
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.runtime.LaunchedEffect
|
import androidx.compose.runtime.LaunchedEffect
|
||||||
|
import androidx.compose.runtime.remember
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.lifecycle.compose.LocalLifecycleOwner
|
import androidx.lifecycle.compose.LocalLifecycleOwner
|
||||||
@@ -112,40 +113,53 @@ fun MantraNavHost(
|
|||||||
) {
|
) {
|
||||||
val logger = Logger.withTag("MantraNavHost")
|
val logger = Logger.withTag("MantraNavHost")
|
||||||
|
|
||||||
val exceptionHandler = CoroutineExceptionHandler { _, throwable ->
|
val exceptionHandler = remember {
|
||||||
logger.e("Caught exception: ${throwable.message}", throwable)
|
CoroutineExceptionHandler { _, throwable ->
|
||||||
|
logger.e("Caught exception: ${throwable.message}", throwable)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
val applicationIOScope = CoroutineScope(Dispatchers.IO + SupervisorJob() + exceptionHandler)
|
val applicationIOScope = remember { CoroutineScope(Dispatchers.IO + SupervisorJob() + exceptionHandler) }
|
||||||
val applicationMainScope = CoroutineScope(Dispatchers.Main)
|
val applicationMainScope = remember { CoroutineScope(Dispatchers.Main) }
|
||||||
|
|
||||||
val lifecycleOwner = LocalLifecycleOwner.current
|
val lifecycleOwner = LocalLifecycleOwner.current
|
||||||
|
|
||||||
val auxDatabaseManager =
|
val auxDatabaseManager = remember {
|
||||||
AuxDatabaseManager(mantraGlobal)
|
AuxDatabaseManager(mantraGlobal)
|
||||||
|
}
|
||||||
|
|
||||||
val databaseNostrRepository = DatabaseNostrRepository(
|
val databaseNostrRepository = remember {
|
||||||
database = auxDatabaseManager.auxDatabase,
|
DatabaseNostrRepository(
|
||||||
applicationIOScope
|
database = auxDatabaseManager.auxDatabase,
|
||||||
)
|
applicationIOScope
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
val databaseChatRepository = DatabaseChatRepository(
|
val databaseChatRepository = remember {
|
||||||
database = auxDatabaseManager.auxDatabase,
|
DatabaseChatRepository(
|
||||||
applicationIOScope
|
database = auxDatabaseManager.auxDatabase,
|
||||||
)
|
applicationIOScope
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
val databaseMarmotRepository = DatabaseMarmotRepository(
|
val databaseMarmotRepository = remember {
|
||||||
database = auxDatabaseManager.auxDatabase,
|
DatabaseMarmotRepository(
|
||||||
applicationIOScope
|
database = auxDatabaseManager.auxDatabase,
|
||||||
)
|
applicationIOScope
|
||||||
val databaseMantraRepository = DatabaseMantraRepository(
|
)
|
||||||
database = auxDatabaseManager.auxDatabase,
|
}
|
||||||
applicationIOScope
|
val databaseMantraRepository = remember {
|
||||||
)
|
DatabaseMantraRepository(
|
||||||
|
database = auxDatabaseManager.auxDatabase,
|
||||||
|
applicationIOScope
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
val searchRepository = DatabaseSearchRepository(
|
val searchRepository = remember {
|
||||||
database = auxDatabaseManager.auxDatabase
|
DatabaseSearchRepository(
|
||||||
)
|
database = auxDatabaseManager.auxDatabase
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
val sovereignWalletViewModel: SovereignWalletViewModel = viewModel(
|
val sovereignWalletViewModel: SovereignWalletViewModel = viewModel(
|
||||||
factory = SovereignWalletViewModel.factory(
|
factory = SovereignWalletViewModel.factory(
|
||||||
|
|||||||
Reference in new issue
Block a user