diff --git a/build.gradle b/build.gradle deleted file mode 100644 index db8d703..0000000 --- a/build.gradle +++ /dev/null @@ -1,14 +0,0 @@ -buildscript { - ext { - compose_version = '1.0.5' - } -}// Top-level build file where you can add configuration options common to all sub-projects/modules. -plugins { - id 'com.android.application' version '7.1.2' apply false - id 'com.android.library' version '7.1.2' apply false - id 'org.jetbrains.kotlin.android' version '1.5.31' apply false -} - -task clean(type: Delete) { - delete rootProject.buildDir -} \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 0000000..f5fb6aa --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,24 @@ +buildscript { + repositories { + google() + mavenCentral() + } + + dependencies { + classpath(Dependency.GradlePlugin.android) + classpath(Dependency.GradlePlugin.kotlin) + classpath(Dependency.GradlePlugin.hilt) + classpath(Dependency.GradlePlugin.service) + } +} + +allprojects { + repositories { + google() + mavenCentral() + } +} + +task("clean", Delete::class) { + delete(rootProject.buildDir) +} \ No newline at end of file diff --git a/data/build.gradle b/data/build.gradle deleted file mode 100644 index ae9ced3..0000000 --- a/data/build.gradle +++ /dev/null @@ -1,40 +0,0 @@ -plugins { - id 'com.android.library' - id 'org.jetbrains.kotlin.android' -} - -android { - compileSdk 32 - - defaultConfig { - minSdk 21 - targetSdk 32 - - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles "consumer-rules.pro" - } - - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' - } - } - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - kotlinOptions { - jvmTarget = '1.8' - } -} - -dependencies { - - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.appcompat:appcompat:1.3.0' - implementation 'com.google.android.material:material:1.4.0' - testImplementation 'junit:junit:4.13.2' - androidTestImplementation 'androidx.test.ext:junit:1.1.3' - androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' -} \ No newline at end of file diff --git a/data/build.gradle.kts b/data/build.gradle.kts new file mode 100644 index 0000000..1ce4470 --- /dev/null +++ b/data/build.gradle.kts @@ -0,0 +1,38 @@ +plugins { + id("com.android.library") + kotlin("android") +} + +android { + compileSdk = Project.compileSdk + + defaultConfig { + minSdk = Project.minSdk + targetSdk = Project.targetSdk + consumerProguardFiles("consumer-rules.pro") + } + + buildTypes { + getByName("release") { + isMinifyEnabled = false + proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro") + } + } + compileOptions { + sourceCompatibility = Project.javaVersion + targetCompatibility = Project.javaVersion + } + kotlinOptions { + jvmTarget = "1.8" + } +} + +dependencies { + testImplementation(Dependency.Test.junit) + testImplementation(Dependency.Test.mockito) + androidTestImplementation(Dependency.Test.androidJunit) + testImplementation(Dependency.Test.mockitoKotlin) + testImplementation(Dependency.Test.mockitoInline) + + implementation(Dependency.Coroutine.core) +} \ No newline at end of file diff --git a/data/proguard-rules.pro b/data/proguard-rules.pro index 481bb43..ff59496 100644 --- a/data/proguard-rules.pro +++ b/data/proguard-rules.pro @@ -1,6 +1,6 @@ # Add project specific ProGuard rules here. # You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. +# proguardFiles setting in build.gradle.kts. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html diff --git a/di/build.gradle b/di/build.gradle deleted file mode 100644 index ae9ced3..0000000 --- a/di/build.gradle +++ /dev/null @@ -1,40 +0,0 @@ -plugins { - id 'com.android.library' - id 'org.jetbrains.kotlin.android' -} - -android { - compileSdk 32 - - defaultConfig { - minSdk 21 - targetSdk 32 - - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles "consumer-rules.pro" - } - - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' - } - } - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - kotlinOptions { - jvmTarget = '1.8' - } -} - -dependencies { - - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.appcompat:appcompat:1.3.0' - implementation 'com.google.android.material:material:1.4.0' - testImplementation 'junit:junit:4.13.2' - androidTestImplementation 'androidx.test.ext:junit:1.1.3' - androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' -} \ No newline at end of file diff --git a/di/build.gradle.kts b/di/build.gradle.kts new file mode 100644 index 0000000..1ce4470 --- /dev/null +++ b/di/build.gradle.kts @@ -0,0 +1,38 @@ +plugins { + id("com.android.library") + kotlin("android") +} + +android { + compileSdk = Project.compileSdk + + defaultConfig { + minSdk = Project.minSdk + targetSdk = Project.targetSdk + consumerProguardFiles("consumer-rules.pro") + } + + buildTypes { + getByName("release") { + isMinifyEnabled = false + proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro") + } + } + compileOptions { + sourceCompatibility = Project.javaVersion + targetCompatibility = Project.javaVersion + } + kotlinOptions { + jvmTarget = "1.8" + } +} + +dependencies { + testImplementation(Dependency.Test.junit) + testImplementation(Dependency.Test.mockito) + androidTestImplementation(Dependency.Test.androidJunit) + testImplementation(Dependency.Test.mockitoKotlin) + testImplementation(Dependency.Test.mockitoInline) + + implementation(Dependency.Coroutine.core) +} \ No newline at end of file diff --git a/di/proguard-rules.pro b/di/proguard-rules.pro index 481bb43..ff59496 100644 --- a/di/proguard-rules.pro +++ b/di/proguard-rules.pro @@ -1,6 +1,6 @@ # Add project specific ProGuard rules here. # You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. +# proguardFiles setting in build.gradle.kts. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html diff --git a/domain/build.gradle b/domain/build.gradle deleted file mode 100644 index ae9ced3..0000000 --- a/domain/build.gradle +++ /dev/null @@ -1,40 +0,0 @@ -plugins { - id 'com.android.library' - id 'org.jetbrains.kotlin.android' -} - -android { - compileSdk 32 - - defaultConfig { - minSdk 21 - targetSdk 32 - - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles "consumer-rules.pro" - } - - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' - } - } - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - kotlinOptions { - jvmTarget = '1.8' - } -} - -dependencies { - - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.appcompat:appcompat:1.3.0' - implementation 'com.google.android.material:material:1.4.0' - testImplementation 'junit:junit:4.13.2' - androidTestImplementation 'androidx.test.ext:junit:1.1.3' - androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' -} \ No newline at end of file diff --git a/domain/build.gradle.kts b/domain/build.gradle.kts new file mode 100644 index 0000000..1ce4470 --- /dev/null +++ b/domain/build.gradle.kts @@ -0,0 +1,38 @@ +plugins { + id("com.android.library") + kotlin("android") +} + +android { + compileSdk = Project.compileSdk + + defaultConfig { + minSdk = Project.minSdk + targetSdk = Project.targetSdk + consumerProguardFiles("consumer-rules.pro") + } + + buildTypes { + getByName("release") { + isMinifyEnabled = false + proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro") + } + } + compileOptions { + sourceCompatibility = Project.javaVersion + targetCompatibility = Project.javaVersion + } + kotlinOptions { + jvmTarget = "1.8" + } +} + +dependencies { + testImplementation(Dependency.Test.junit) + testImplementation(Dependency.Test.mockito) + androidTestImplementation(Dependency.Test.androidJunit) + testImplementation(Dependency.Test.mockitoKotlin) + testImplementation(Dependency.Test.mockitoInline) + + implementation(Dependency.Coroutine.core) +} \ No newline at end of file diff --git a/domain/proguard-rules.pro b/domain/proguard-rules.pro index 481bb43..ff59496 100644 --- a/domain/proguard-rules.pro +++ b/domain/proguard-rules.pro @@ -1,6 +1,6 @@ # Add project specific ProGuard rules here. # You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. +# proguardFiles setting in build.gradle.kts. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html diff --git a/settings.gradle b/settings.gradle deleted file mode 100644 index 2aab734..0000000 --- a/settings.gradle +++ /dev/null @@ -1,20 +0,0 @@ -pluginManagement { - repositories { - gradlePluginPortal() - google() - mavenCentral() - } -} -dependencyResolutionManagement { - repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) - repositories { - google() - mavenCentral() - } -} -rootProject.name = "shakeit" -include ':ui' -include ':domain' -include ':data' -include ':webrtc' -include ':di' diff --git a/settings.gradle.kts b/settings.gradle.kts new file mode 100644 index 0000000..a21ff3e --- /dev/null +++ b/settings.gradle.kts @@ -0,0 +1,2 @@ +rootProject.name = "shakeit" +include(":ui", ":domain", ":data", ":webrtc", ":di") \ No newline at end of file diff --git a/ui/build.gradle b/ui/build.gradle deleted file mode 100644 index fcfac5f..0000000 --- a/ui/build.gradle +++ /dev/null @@ -1,61 +0,0 @@ -plugins { - id 'com.android.application' - id 'org.jetbrains.kotlin.android' -} - -android { - compileSdk 32 - - defaultConfig { - applicationId "com.semicolon.shakeit" - minSdk 21 - targetSdk 32 - versionCode 1 - versionName "1.0" - - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - vectorDrawables { - useSupportLibrary true - } - } - - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' - } - } - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - kotlinOptions { - jvmTarget = '1.8' - } - buildFeatures { - compose true - } - composeOptions { - kotlinCompilerExtensionVersion compose_version - } - packagingOptions { - resources { - excludes += '/META-INF/{AL2.0,LGPL2.1}' - } - } -} - -dependencies { - - implementation 'androidx.core:core-ktx:1.7.0' - implementation "androidx.compose.ui:ui:$compose_version" - implementation "androidx.compose.material:material:$compose_version" - implementation "androidx.compose.ui:ui-tooling-preview:$compose_version" - implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.3.1' - implementation 'androidx.activity:activity-compose:1.3.1' - testImplementation 'junit:junit:4.13.2' - androidTestImplementation 'androidx.test.ext:junit:1.1.3' - androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' - androidTestImplementation "androidx.compose.ui:ui-test-junit4:$compose_version" - debugImplementation "androidx.compose.ui:ui-tooling:$compose_version" -} \ No newline at end of file diff --git a/ui/build.gradle.kts b/ui/build.gradle.kts new file mode 100644 index 0000000..02f39cf --- /dev/null +++ b/ui/build.gradle.kts @@ -0,0 +1,62 @@ +plugins { + id("com.android.application") + kotlin("android") +} + +android { + compileSdk = Project.compileSdk + + defaultConfig { + applicationId = "com.semicolon.shakeit" + minSdk = Project.minSdk + targetSdk = Project.targetSdk + versionCode = 1 + versionName = "1.0" + testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" + } + buildTypes { + getByName("release") { + isMinifyEnabled = false + proguardFiles( + getDefaultProguardFile("proguard-android-optimize.txt"), + "proguard-rules.pro" + ) + } + } + compileOptions { + sourceCompatibility = Project.javaVersion + targetCompatibility = Project.javaVersion + } + composeOptions { + kotlinCompilerExtensionVersion = Version.jetpackCompose + } + kotlinOptions { + jvmTarget = "1.8" + } + buildFeatures { + dataBinding = true + compose = true + } +} + +dependencies { + implementation(Dependency.coreKtx) + implementation(Dependency.appcompat) + implementation(Dependency.androidKtx) + implementation(Dependency.fragmentKtx) + + implementation(Dependency.UI.material) + implementation(Dependency.UI.constraintLayout) + implementation(Dependency.UI.compose) + implementation(Dependency.UI.composeTooling) + implementation(Dependency.UI.composePreview) + implementation(Dependency.UI.composeMaterial) + implementation(Dependency.UI.composeCompiler) + implementation(Dependency.UI.activityCompose) + implementation(Dependency.UI.coilCompose) + + testImplementation(Dependency.Test.junit) + testImplementation(Dependency.Test.mockito) + androidTestImplementation(Dependency.Test.androidJunit) + androidTestImplementation(Dependency.Test.espresso) +} \ No newline at end of file diff --git a/ui/proguard-rules.pro b/ui/proguard-rules.pro index 481bb43..ff59496 100644 --- a/ui/proguard-rules.pro +++ b/ui/proguard-rules.pro @@ -1,6 +1,6 @@ # Add project specific ProGuard rules here. # You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. +# proguardFiles setting in build.gradle.kts. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html diff --git a/webrtc/build.gradle b/webrtc/build.gradle deleted file mode 100644 index ae9ced3..0000000 --- a/webrtc/build.gradle +++ /dev/null @@ -1,40 +0,0 @@ -plugins { - id 'com.android.library' - id 'org.jetbrains.kotlin.android' -} - -android { - compileSdk 32 - - defaultConfig { - minSdk 21 - targetSdk 32 - - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles "consumer-rules.pro" - } - - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' - } - } - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - kotlinOptions { - jvmTarget = '1.8' - } -} - -dependencies { - - implementation 'androidx.core:core-ktx:1.7.0' - implementation 'androidx.appcompat:appcompat:1.3.0' - implementation 'com.google.android.material:material:1.4.0' - testImplementation 'junit:junit:4.13.2' - androidTestImplementation 'androidx.test.ext:junit:1.1.3' - androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' -} \ No newline at end of file diff --git a/webrtc/build.gradle.kts b/webrtc/build.gradle.kts new file mode 100644 index 0000000..1ce4470 --- /dev/null +++ b/webrtc/build.gradle.kts @@ -0,0 +1,38 @@ +plugins { + id("com.android.library") + kotlin("android") +} + +android { + compileSdk = Project.compileSdk + + defaultConfig { + minSdk = Project.minSdk + targetSdk = Project.targetSdk + consumerProguardFiles("consumer-rules.pro") + } + + buildTypes { + getByName("release") { + isMinifyEnabled = false + proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro") + } + } + compileOptions { + sourceCompatibility = Project.javaVersion + targetCompatibility = Project.javaVersion + } + kotlinOptions { + jvmTarget = "1.8" + } +} + +dependencies { + testImplementation(Dependency.Test.junit) + testImplementation(Dependency.Test.mockito) + androidTestImplementation(Dependency.Test.androidJunit) + testImplementation(Dependency.Test.mockitoKotlin) + testImplementation(Dependency.Test.mockitoInline) + + implementation(Dependency.Coroutine.core) +} \ No newline at end of file diff --git a/webrtc/proguard-rules.pro b/webrtc/proguard-rules.pro index 481bb43..ff59496 100644 --- a/webrtc/proguard-rules.pro +++ b/webrtc/proguard-rules.pro @@ -1,6 +1,6 @@ # Add project specific ProGuard rules here. # You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. +# proguardFiles setting in build.gradle.kts. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html