smalltalk-matrix/dependencies.gradle

176 lines
7.0 KiB
Groovy

ext.Dependencies = new DependenciesContainer()
ext.Dependencies.with {
_repositories = { repositories ->
repositories.google {
content {
includeGroupByRegex "com\\.android.*"
includeGroupByRegex "com\\.google.*"
includeGroupByRegex "androidx\\..*"
}
}
repositories.maven {
url 'https://jitpack.io'
content {
includeGroup "com.github.UnifiedPush"
}
}
repositories.mavenCentral {
content {
includeGroupByRegex "org\\.jetbrains.*"
includeGroupByRegex "com\\.google.*"
includeGroupByRegex "com\\.squareup.*"
includeGroupByRegex "com\\.android.*"
includeGroupByRegex "org\\.apache.*"
includeGroupByRegex "org\\.json.*"
includeGroupByRegex "org\\.codehaus.*"
includeGroupByRegex "org\\.jdom.*"
includeGroupByRegex "com\\.fasterxml.*"
includeGroupByRegex "com\\.sun.*"
includeGroupByRegex "org\\.ow2.*"
includeGroupByRegex "org\\.eclipse.*"
includeGroup "app.cash.turbine"
includeGroup "de.undercouch"
includeGroup "de.danielbechler"
includeGroup "com.github.gundy"
includeGroup "com.sun.activation"
includeGroup "com.thoughtworks.qdox"
includeGroup "com.annimon"
includeGroup "com.github.javaparser"
includeGroup "com.beust"
includeGroup "org.bouncycastle"
includeGroup "org.bitbucket.b_c"
includeGroup "org.checkerframework"
includeGroup "org.amshove.kluent"
includeGroup "org.jvnet.staxex"
includeGroup "org.glassfish"
includeGroup "org.glassfish.jaxb"
includeGroup "org.antlr"
includeGroup "org.tensorflow"
includeGroup "org.xerial"
includeGroup "org.slf4j"
includeGroup "org.freemarker"
includeGroup "org.threeten"
includeGroup "org.hamcrest"
includeGroup "org.matrix.android"
includeGroup "org.sonatype.oss"
includeGroup "org.junit.jupiter"
includeGroup "org.junit.platform"
includeGroup "org.junit"
includeGroup "org.junit.jupiter"
includeGroup "org.jsoup"
includeGroup "org.jacoco"
includeGroup "org.testng"
includeGroup "org.opentest4j"
includeGroup "org.apiguardian"
includeGroup "org.webjars"
includeGroup "org.objenesis"
includeGroup "commons-io"
includeGroup "commons-logging"
includeGroup "commons-codec"
includeGroup "net.java.dev.jna"
includeGroup "net.sf.jopt-simple"
includeGroup "net.sf.kxml"
includeGroup "net.bytebuddy"
includeGroup "net.java"
includeGroup "it.unimi.dsi"
includeGroup "io.grpc"
includeGroup "io.netty"
includeGroup "io.opencensus"
includeGroup "io.ktor"
includeGroup "io.coil-kt"
includeGroup "io.mockk"
includeGroup "io.perfmark"
includeGroup "info.picocli"
includeGroup "us.fatehi"
includeGroup "jakarta.xml.bind"
includeGroup "jakarta.activation"
includeGroup "javax.annotation"
includeGroup "javax.inject"
includeGroup "junit"
includeGroup "jline"
includeGroup "xerces"
includeGroup "xml-apis"
}
}
}
def kotlinVer = "1.7.10"
def sqldelightVer = "1.5.4"
def composeVer = "1.2.1"
def ktorVer = "2.1.2"
google = new DependenciesContainer()
google.with {
androidGradlePlugin = "com.android.tools.build:gradle:7.3.0"
androidxComposeUi = "androidx.compose.ui:ui:${composeVer}"
androidxComposeFoundation = "androidx.compose.foundation:foundation:${composeVer}"
androidxComposeMaterial = "androidx.compose.material3:material3:1.0.0-beta03"
androidxComposeIconsExtended = "androidx.compose.material:material-icons-extended:${composeVer}"
androidxActivityCompose = "androidx.activity:activity-compose:1.4.0"
kotlinCompilerExtensionVersion = "1.3.1"
firebaseCrashlyticsPlugin = "com.google.firebase:firebase-crashlytics-gradle:2.9.1"
jdkLibs = "com.android.tools:desugar_jdk_libs:1.1.5"
}
mavenCentral = new DependenciesContainer()
mavenCentral.with {
kotlinGradlePlugin = "org.jetbrains.kotlin:kotlin-gradle-plugin:${kotlinVer}"
kotlinSerializationGradlePlugin = "org.jetbrains.kotlin:kotlin-serialization:${kotlinVer}"
kotlinSerializationJson = "org.jetbrains.kotlinx:kotlinx-serialization-json:1.4.0"
kotlinCoroutinesCore = "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4"
kotlinCoroutinesTest = 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.4'
kotlinTest = "org.jetbrains.kotlin:kotlin-test-junit:${kotlinVer}"
sqldelightGradlePlugin = "com.squareup.sqldelight:gradle-plugin:${sqldelightVer}"
sqldelightAndroid = "com.squareup.sqldelight:android-driver:${sqldelightVer}"
sqldelightInMemory = "com.squareup.sqldelight:sqlite-driver:${sqldelightVer}"
leakCanary = 'com.squareup.leakcanary:leakcanary-android:2.9.1'
ktorAndroid = "io.ktor:ktor-client-android:${ktorVer}"
ktorCore = "io.ktor:ktor-client-core:${ktorVer}"
ktorSerialization = "io.ktor:ktor-client-serialization:${ktorVer}"
ktorJson = "io.ktor:ktor-serialization-kotlinx-json:${ktorVer}"
ktorLogging = "io.ktor:ktor-client-logging-jvm:${ktorVer}"
ktorJava = "io.ktor:ktor-client-java:${ktorVer}"
ktorContentNegotiation = "io.ktor:ktor-client-content-negotiation:${ktorVer}"
coil = "io.coil-kt:coil-compose:2.2.2"
accompanistSystemuicontroller = "com.google.accompanist:accompanist-systemuicontroller:0.25.1"
junit = "junit:junit:4.13.2"
kluent = "org.amshove.kluent:kluent:1.68"
mockk = 'io.mockk:mockk:1.13.2'
matrixOlm = "org.matrix.android:olm-sdk:3.2.12"
}
jitPack = new DependenciesContainer()
jitPack.with {
unifiedPush = "com.github.UnifiedPush:android-connector:2.0.1"
}
}
class DependenciesContainer extends GroovyObjectSupport {
private final Map<String, Object> storage = new HashMap<String, Object>();
@Override
Object getProperty(String name) {
return storage.get(name);
}
@Override
void setProperty(String name, Object newValue) {
storage.put(name, newValue);
}
}