refactor(build, dependencies): introduce SQLDelight WebWorker setup, update Spring Boot dependencies, and align versions
Configured `sqlite.worker.js` for OPFS-backed SQLite WASM operations in the frontend build pipeline. Added new Spring Boot dependency bundles including secure service configurations. Integrated updated database utilities with enhanced error handling. Removed outdated circuit breaker tests and replaced them with modern unit and integration test setups.
This commit is contained in:
@@ -74,6 +74,7 @@ kotlin {
|
||||
commonMain.dependencies {
|
||||
// Shared modules
|
||||
implementation(projects.frontend.shared)
|
||||
implementation(projects.frontend.core.domain)
|
||||
implementation(projects.frontend.core.designSystem)
|
||||
implementation(projects.frontend.core.navigation)
|
||||
implementation(projects.frontend.core.network)
|
||||
@@ -127,6 +128,28 @@ kotlin {
|
||||
}
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// SQLDelight WebWorker (OPFS) resource
|
||||
// ---------------------------------------------------------------------------
|
||||
// `:frontend:core:local-db` ships `sqlite.worker.js` as a JS resource.
|
||||
// When bundling the final JS app, webpack resolves `new URL("sqlite.worker.js", import.meta.url)`
|
||||
// relative to the Kotlin JS package folder (root build dir). We therefore copy the worker into
|
||||
// that folder before webpack runs.
|
||||
|
||||
val copySqliteWorkerJs by tasks.registering(Copy::class) {
|
||||
val localDb = project(":frontend:core:local-db")
|
||||
dependsOn(localDb.tasks.named("jsProcessResources"))
|
||||
|
||||
from(localDb.layout.buildDirectory.file("processedResources/js/main/sqlite.worker.js"))
|
||||
|
||||
// Root build directory where Kotlin JS packages are assembled.
|
||||
into(rootProject.layout.buildDirectory.dir("js/packages/${rootProject.name}-frontend-shells-meldestelle-portal/kotlin"))
|
||||
}
|
||||
|
||||
tasks.matching { it.name == "jsBrowserProductionWebpack" }.configureEach {
|
||||
dependsOn(copySqliteWorkerJs)
|
||||
}
|
||||
|
||||
// KMP Compile-Optionen
|
||||
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
|
||||
compilerOptions {
|
||||
|
||||
Reference in New Issue
Block a user