feat(01-04): wire JVM + Wasm main + Swift iOSApp to bootstrap Koin + Kermit
- JVM main: configureLogging() + initKoin() before application { Window }
- Wasm main: configureLogging() + initKoin() before ComposeViewport (PITFALL #8)
- iOSApp.swift: import ComposeApp + init { KoinIosKt.doInitKoin() } (PITFALL #4)
This commit is contained in:
@@ -2,12 +2,18 @@ package dev.ulfrx.recipe
|
|||||||
|
|
||||||
import androidx.compose.ui.window.Window
|
import androidx.compose.ui.window.Window
|
||||||
import androidx.compose.ui.window.application
|
import androidx.compose.ui.window.application
|
||||||
|
import dev.ulfrx.recipe.di.initKoin
|
||||||
|
import dev.ulfrx.recipe.logging.configureLogging
|
||||||
|
|
||||||
fun main() = application {
|
fun main() {
|
||||||
Window(
|
configureLogging()
|
||||||
onCloseRequest = ::exitApplication,
|
initKoin()
|
||||||
title = "recipe",
|
application {
|
||||||
) {
|
Window(
|
||||||
App()
|
onCloseRequest = ::exitApplication,
|
||||||
|
title = "recipe",
|
||||||
|
) {
|
||||||
|
App()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2,9 +2,13 @@ package dev.ulfrx.recipe
|
|||||||
|
|
||||||
import androidx.compose.ui.ExperimentalComposeUiApi
|
import androidx.compose.ui.ExperimentalComposeUiApi
|
||||||
import androidx.compose.ui.window.ComposeViewport
|
import androidx.compose.ui.window.ComposeViewport
|
||||||
|
import dev.ulfrx.recipe.di.initKoin
|
||||||
|
import dev.ulfrx.recipe.logging.configureLogging
|
||||||
|
|
||||||
@OptIn(ExperimentalComposeUiApi::class)
|
@OptIn(ExperimentalComposeUiApi::class)
|
||||||
fun main() {
|
fun main() {
|
||||||
|
configureLogging()
|
||||||
|
initKoin()
|
||||||
ComposeViewport {
|
ComposeViewport {
|
||||||
App()
|
App()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,12 @@
|
|||||||
import SwiftUI
|
import SwiftUI
|
||||||
|
import ComposeApp
|
||||||
|
|
||||||
@main
|
@main
|
||||||
struct iOSApp: App {
|
struct iOSApp: App {
|
||||||
|
init() {
|
||||||
|
KoinIosKt.doInitKoin()
|
||||||
|
}
|
||||||
|
|
||||||
var body: some Scene {
|
var body: some Scene {
|
||||||
WindowGroup {
|
WindowGroup {
|
||||||
ContentView()
|
ContentView()
|
||||||
|
|||||||
Reference in New Issue
Block a user