Skip to content

Commit 1e9a758

Browse files
committed
Refactor: Use Gradle type-safe project accessors
- Enable the `TYPESAFE_PROJECT_ACCESSORS` feature preview in `settings.gradle.kts`. - Replace string-based project dependencies, like `project(":core:domain")`, with type-safe accessors, such as `projects.core.domain`. - Update all `build.gradle.kts` files across modules to use the new type-safe syntax for improved maintainability and compile-time safety.
1 parent d9c848c commit 1e9a758

File tree

12 files changed

+32
-31
lines changed

12 files changed

+32
-31
lines changed

app/android/build.gradle.kts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,10 +67,10 @@ android {
6767
}
6868

6969
dependencies {
70-
implementation(project(":core:domain"))
70+
implementation(projects.core.domain)
7171
implementation(project(project.property("CORE_DATA_DB_MODULE").toString()))
72-
implementation(project(":core:presentation"))
73-
implementation(project(":ui:shared"))
72+
implementation(projects.core.presentation)
73+
implementation(projects.ui.shared)
7474
implementation(kotlin("reflect"))
7575
implementation(libs.androidx.core.splashscreen)
7676
implementation(libs.androidx.appcompat)
@@ -97,7 +97,7 @@ dependencies {
9797
coreLibraryDesugaring(libs.desugar)
9898
testImplementation(libs.junit)
9999
testImplementation(libs.bundles.mockito)
100-
androidTestImplementation(project(":ui:test-jvm")) {
100+
androidTestImplementation(projects.ui.testJvm) {
101101
exclude(group = "org.jetbrains.runtime", module = "jbr-api")
102102
}
103103
androidTestImplementation(libs.commonsware.saferoom)

app/desktop/build.gradle.kts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,9 @@ kotlin {
1919
languageSettings.optIn("kotlin.RequiresOptIn")
2020
}
2121
jvmMain.dependencies {
22-
implementation(project(":core:domain"))
23-
implementation(project(":core:presentation"))
24-
implementation(project(":ui:shared"))
22+
implementation(projects.core.domain)
23+
implementation(projects.core.presentation)
24+
implementation(projects.ui.shared)
2525
implementation(libs.androidx.navigation.compose)
2626
implementation(project.dependencies.platform(libs.coroutines.bom))
2727
implementation(libs.coroutines.swing)
@@ -34,7 +34,7 @@ kotlin {
3434
implementation(libs.kermit)
3535
}
3636
jvmTest.dependencies {
37-
implementation(project(":ui:test-jvm"))
37+
implementation(projects.ui.testJvm)
3838
implementation(kotlin("test"))
3939
implementation(compose.desktop.uiTestJUnit4)
4040
implementation(compose.desktop.currentOs)

app/ios-kit/build.gradle.kts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,16 @@ kotlin {
2222
framework {
2323
baseName = "iosComposeKit"
2424
isStatic = false
25-
export(project(":core:domain"))
25+
export(projects.core.domain)
2626
export(project.dependencies.platform(libs.koin.bom))
2727
export(libs.koin.core)
2828
}
2929
if (!OperatingSystem.current().isMacOsX) noPodspec()
3030
}
3131
sourceSets {
3232
commonMain.dependencies {
33-
api(project(":core:domain"))
34-
api(project(":ui:shared"))
33+
api(projects.core.domain)
34+
api(projects.ui.shared)
3535
implementation(compose.ui)
3636
implementation(compose.foundation)
3737
implementation(compose.material3)

app/web/build.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,8 @@ kotlin {
3434
sourceSets {
3535
val wasmJsMain by getting {
3636
dependencies {
37-
implementation(project(":core:presentation"))
38-
implementation(project(":ui:shared"))
37+
implementation(projects.core.presentation)
38+
implementation(projects.ui.shared)
3939
implementation(compose.ui)
4040
implementation(project.dependencies.platform(libs.koin.bom))
4141
implementation(libs.koin.core)

core/data/db-room/build.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ kotlin {
1818

1919
sourceSets {
2020
commonMain.dependencies {
21-
implementation(project(":core:domain"))
21+
implementation(projects.core.domain)
2222
implementation(libs.room.runtime)
2323
implementation(libs.room.paging)
2424
implementation(libs.androidx.sqlite.bundled)
@@ -27,7 +27,7 @@ kotlin {
2727
}
2828
commonTest.dependencies {
2929
implementation(kotlin("test"))
30-
implementation(project(":core:test"))
30+
implementation(projects.core.test)
3131
implementation(libs.room.testing)
3232
implementation(project.dependencies.platform(libs.coroutines.bom))
3333
implementation(libs.coroutines.test)

core/data/db-sqldelight/build.gradle.kts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,18 +22,18 @@ kotlin {
2222
}
2323
sourceSets {
2424
commonMain.dependencies {
25-
implementation(project(":core:domain"))
25+
implementation(projects.core.domain)
2626
implementation(libs.sqlDelight.runtime)
2727
implementation(libs.sqlDelight.coroutinesExt)
28-
implementation(project(":thirdparty:app:cash:sqldelight:paging3"))
28+
implementation(projects.thirdparty.app.cash.sqldelight.paging3)
2929
implementation(libs.androidx.paging.common)
3030
implementation(libs.kotlinx.datetime)
3131
implementation(libs.coroutines.core)
3232
implementation(libs.kermit)
3333
}
3434
commonTest.dependencies {
3535
implementation(kotlin("test"))
36-
implementation(project(":core:test"))
36+
implementation(projects.core.test)
3737
implementation(project.dependencies.platform(libs.coroutines.bom))
3838
implementation(libs.coroutines.test)
3939
implementation(libs.kermit)

core/data/file-explorer/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ kotlin {
2424
}
2525
sourceSets {
2626
commonMain.dependencies {
27-
implementation(project(":core:domain"))
27+
implementation(projects.core.domain)
2828
implementation(libs.coroutines.core)
2929
implementation(libs.kermit)
3030
implementation(libs.okio)

core/presentation/build.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,15 @@ kotlin {
2222
}
2323
sourceSets {
2424
commonMain.dependencies {
25-
implementation(project(":core:domain"))
25+
implementation(projects.core.domain)
2626
implementation(libs.androidx.lifecycle.viewmodel.compose)
2727
implementation(libs.kotlinx.serialization.json)
2828
implementation(libs.kermit)
2929
implementation(libs.androidx.paging.common)
3030
implementation(libs.kotlinx.datetime)
3131
}
3232
commonTest.dependencies {
33-
implementation(project(":core:test"))
33+
implementation(projects.core.test)
3434
implementation(project.dependencies.platform(libs.coroutines.bom))
3535
implementation(libs.coroutines.test)
3636
implementation(libs.turbine)

core/test/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ kotlin {
1919
}
2020
sourceSets {
2121
commonMain.dependencies {
22-
implementation(project(":core:domain"))
22+
implementation(projects.core.domain)
2323
implementation(project.dependencies.platform(libs.coroutines.bom))
2424
implementation(libs.coroutines.test)
2525
implementation(libs.kermit)

settings.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
rootProject.name = "NoteDelight"
2+
enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
23

34
include(":core:domain")
45
//include(":core:data:db-room")

0 commit comments

Comments
 (0)