🤬
  • ■ ■ ■ ■ ■ ■
    app/build.gradle
    1  -plugins {
    2  - id 'com.android.application'
    3  - id 'org.jetbrains.kotlin.android'
    4  - id 'kotlin-parcelize'
    5  - id 'kotlin-kapt'
    6  - id 'dagger.hilt.android.plugin'
    7  -}
    8  - 
    9  -android {
    10  - namespace 'io.getstream.whatsappclone'
    11  - compileSdk Configurations.compileSdk
    12  - 
    13  - defaultConfig {
    14  - applicationId "io.getstream.whatsappclone"
    15  - minSdk Configurations.minSdk
    16  - targetSdk Configurations.targetSdk
    17  - versionCode Configurations.versionCode
    18  - versionName Configurations.versionName
    19  - }
    20  - 
    21  - compileOptions {
    22  - sourceCompatibility JavaVersion.VERSION_1_8
    23  - targetCompatibility JavaVersion.VERSION_1_8
    24  - }
    25  - 
    26  - lintOptions {
    27  - abortOnError false
    28  - }
    29  - 
    30  - kotlinOptions {
    31  - jvmTarget = '1.8'
    32  - }
    33  - 
    34  - buildFeatures {
    35  - compose true
    36  - }
    37  - 
    38  - composeOptions {
    39  - kotlinCompilerExtensionVersion Versions.COMPOSE_COMPILER
    40  - }
    41  - 
    42  - packagingOptions {
    43  - resources {
    44  - excludes += '/META-INF/{AL2.0,LGPL2.1}'
    45  - }
    46  - }
    47  - buildTypes {
    48  - benchmark {
    49  - signingConfig signingConfigs.debug
    50  - matchingFallbacks = ['release']
    51  - debuggable false
    52  - }
    53  - }
    54  -}
    55  - 
    56  -dependencies {
    57  - // core modules
    58  - implementation project(":core-designsystem")
    59  - implementation project(":core-navigation")
    60  - implementation project(":core-data")
    61  - 
    62  - // feature modules
    63  - implementation project(":feature-camera")
    64  - implementation project(":feature-chats")
    65  - implementation project(":feature-status")
    66  - implementation project(":feature-calls")
    67  - 
    68  - // material
    69  - implementation Dependencies.material
    70  - 
    71  - // compose
    72  - implementation Dependencies.composeActivity
    73  - implementation Dependencies.composeAnimation
    74  - implementation Dependencies.composeRuntime
    75  - implementation Dependencies.composeTooling
    76  - implementation Dependencies.composeConstraintLayout
    77  - 
    78  - // jetpack
    79  - implementation Dependencies.appStartUp
    80  - implementation Dependencies.hiltAndroid
    81  - implementation Dependencies.hiltNavigation
    82  - kapt Dependencies.hiltCompiler
    83  - 
    84  - // image loading
    85  - implementation Dependencies.landscapistGlide
    86  - 
    87  - // pager
    88  - implementation Dependencies.accompanistPager
    89  - implementation Dependencies.accompanistIndicator
    90  - 
    91  - implementation Dependencies.timber
    92  -}
    93  - 
  • ■ ■ ■ ■ ■ ■
    app/build.gradle.kts
     1 +plugins {
     2 + id("com.android.application")
     3 + id("org.jetbrains.kotlin.android")
     4 + id("kotlin-parcelize")
     5 + id("kotlin-kapt")
     6 + id("dagger.hilt.android.plugin")
     7 +}
     8 + 
     9 +android {
     10 + namespace = "io.getstream.whatsappclone"
     11 + compileSdk = Configurations.compileSdk
     12 + 
     13 + defaultConfig {
     14 + applicationId = "io.getstream.whatsappclone"
     15 + minSdk = Configurations.minSdk
     16 + targetSdk = Configurations.targetSdk
     17 + versionCode = Configurations.versionCode
     18 + versionName = Configurations.versionName
     19 + }
     20 + 
     21 + compileOptions {
     22 + sourceCompatibility = JavaVersion.VERSION_1_8
     23 + targetCompatibility = JavaVersion.VERSION_1_8
     24 + }
     25 + 
     26 + lint {
     27 + abortOnError = false
     28 + }
     29 + 
     30 + buildFeatures {
     31 + compose = true
     32 + }
     33 + 
     34 + composeOptions {
     35 + kotlinCompilerExtensionVersion = Versions.COMPOSE_COMPILER
     36 + }
     37 + 
     38 + packagingOptions {
     39 + resources.excludes.add("META-INF/LICENSE.txt")
     40 + resources.excludes.add("META-INF/NOTICE.txt")
     41 + resources.excludes.add("LICENSE.txt")
     42 + resources.excludes.add("/META-INF/{AL2.0,LGPL2.1}")
     43 + }
     44 + 
     45 + buildTypes {
     46 + create("benchmark") {
     47 + isDebuggable = true
     48 + signingConfig = getByName("debug").signingConfig
     49 + matchingFallbacks += listOf("release")
     50 + }
     51 + }
     52 +}
     53 + 
     54 +dependencies {
     55 + // core modules
     56 + implementation(project(":core-designsystem"))
     57 + implementation(project(":core-navigation"))
     58 + implementation(project(":core-data"))
     59 + 
     60 + // feature modules
     61 + implementation(project(":feature-camera"))
     62 + implementation(project(":feature-chats"))
     63 + implementation(project(":feature-status"))
     64 + implementation(project(":feature-calls"))
     65 + 
     66 + // material
     67 + implementation(Dependencies.material)
     68 + 
     69 + // compose
     70 + implementation(Dependencies.composeActivity)
     71 + implementation(Dependencies.composeAnimation)
     72 + implementation(Dependencies.composeRuntime)
     73 + implementation(Dependencies.composeTooling)
     74 + implementation(Dependencies.composeConstraintLayout)
     75 + 
     76 + // jetpack
     77 + implementation(Dependencies.appStartUp)
     78 + implementation(Dependencies.hiltAndroid)
     79 + implementation(Dependencies.hiltNavigation)
     80 + kapt(Dependencies.hiltCompiler)
     81 + 
     82 + // image loading
     83 + implementation(Dependencies.landscapistGlide)
     84 + 
     85 + // pager
     86 + implementation(Dependencies.accompanistPager)
     87 + implementation(Dependencies.accompanistIndicator)
     88 + 
     89 + implementation(Dependencies.timber)
     90 +}
     91 + 
  • ■ ■ ■ ■
    app/src/main/kotlin/io/getstream/whatsappclone/MainActivity.kt
    skipped 27 lines
    28 28  class MainActivity : ComponentActivity() {
    29 29   
    30 30   @Inject
    31  - lateinit var appComposeNavigator: AppComposeNavigator
     31 + internal lateinit var appComposeNavigator: AppComposeNavigator
    32 32   
    33 33   override fun onCreate(savedInstanceState: Bundle?) {
    34 34   super.onCreate(savedInstanceState)
    skipped 5 lines
  • ■ ■ ■ ■ ■ ■
    benchmark/build.gradle.kts
    skipped 10 lines
    11 11   targetCompatibility = JavaVersion.VERSION_1_8
    12 12   }
    13 13   
    14  - kotlinOptions {
    15  - jvmTarget = "1.8"
    16  - }
    17  - 
    18 14   defaultConfig {
    19 15   minSdk = 23
    20 16   targetSdk = Configurations.targetSdk
    skipped 31 lines
  • ■ ■ ■ ■ ■ ■
    build.gradle
    1  -buildscript {
    2  - repositories {
    3  - google()
    4  - mavenCentral()
    5  - maven { url "https://plugins.gradle.org/m2/" }
    6  - maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
    7  - }
    8  - dependencies {
    9  - classpath Dependencies.androidGradlePlugin
    10  - classpath Dependencies.kotlinGradlePlugin
    11  - classpath Dependencies.kotlinSerializationPlugin
    12  - classpath Dependencies.ksp
    13  - classpath Dependencies.spotlessGradlePlugin
    14  - classpath Dependencies.hiltPlugin
    15  - }
    16  -}
    17  - 
    18  -subprojects {
    19  - apply from: "$rootDir/spotless/spotless.gradle"
    20  - 
    21  - tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach { compile ->
    22  - kotlinOptions {
    23  - // set compiler options
    24  - freeCompilerArgs += "-Xskip-prerelease-check"
    25  - freeCompilerArgs += "-Xopt-in=kotlin.RequiresOptIn"
    26  - freeCompilerArgs += "-Xopt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
    27  - freeCompilerArgs += "-Xopt-in=com.google.accompanist.pager.ExperimentalPagerApi"
    28  - freeCompilerArgs += "-Xopt-in=androidx.compose.material3.ExperimentalMaterial3Api"
    29  - freeCompilerArgs += "-Xopt-in=androidx.lifecycle.compose.ExperimentalLifecycleComposeApi"
    30  - }
    31  - }
    32  -}
    33  - 
    34  -task clean(type: Delete) {
    35  - delete rootProject.buildDir
    36  -}
    37  - 
  • ■ ■ ■ ■ ■ ■
    build.gradle.kts
     1 +buildscript {
     2 + repositories {
     3 + google()
     4 + maven("https://plugins.gradle.org/m2/")
     5 + }
     6 + dependencies {
     7 + classpath(Dependencies.androidGradlePlugin)
     8 + classpath(Dependencies.kotlinGradlePlugin)
     9 + classpath(Dependencies.kotlinSerializationPlugin)
     10 + classpath(Dependencies.ksp)
     11 + classpath(Dependencies.spotlessGradlePlugin)
     12 + classpath(Dependencies.hiltPlugin)
     13 + }
     14 +}
     15 + 
     16 +subprojects {
     17 + apply(from = "$rootDir/spotless/spotless.gradle")
     18 + 
     19 + tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile>().all {
     20 + kotlinOptions.freeCompilerArgs += listOf(
     21 + "-Xskip-prerelease-check",
     22 + "-Xopt-in=kotlin.RequiresOptIn",
     23 + "-Xopt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
     24 + "-Xopt-in=com.google.accompanist.pager.ExperimentalPagerApi",
     25 + "-Xopt-in=androidx.compose.material3.ExperimentalMaterial3Api",
     26 + "-Xopt-in=androidx.lifecycle.compose.ExperimentalLifecycleComposeApi"
     27 + )
     28 + kotlinOptions.jvmTarget = JavaVersion.VERSION_1_8.toString()
     29 + }
     30 +}
     31 + 
  • ■ ■ ■ ■ ■ ■
    core-data/build.gradle.kts
    skipped 18 lines
    19 19   sourceCompatibility = JavaVersion.VERSION_1_8
    20 20   targetCompatibility = JavaVersion.VERSION_1_8
    21 21   }
    22  - 
    23  - kotlinOptions {
    24  - jvmTarget = "1.8"
    25  - }
    26 22  }
    27 23   
    28 24  kotlin {
    skipped 21 lines
  • ■ ■ ■ ■ ■ ■
    core-database/build.gradle.kts
    skipped 24 lines
    25 25   sourceCompatibility = JavaVersion.VERSION_1_8
    26 26   targetCompatibility = JavaVersion.VERSION_1_8
    27 27   }
    28  - 
    29  - kotlinOptions {
    30  - jvmTarget = "1.8"
    31  - }
    32 28  }
    33 29   
    34 30  dependencies {
    skipped 10 lines
  • ■ ■ ■ ■ ■ ■
    core-designsystem/build.gradle.kts
    skipped 24 lines
    25 25   kotlinCompilerExtensionVersion = Versions.COMPOSE_COMPILER
    26 26   }
    27 27   
    28  - kotlinOptions {
    29  - jvmTarget = "1.8"
    30  - }
    31  - 
    32 28   packagingOptions {
    33 29   resources.excludes.add("META-INF/LICENSE.txt")
    34 30   resources.excludes.add("META-INF/NOTICE.txt")
    skipped 18 lines
  • ■ ■ ■ ■ ■ ■
    core-model/build.gradle.kts
    skipped 16 lines
    17 17   sourceCompatibility = JavaVersion.VERSION_1_8
    18 18   targetCompatibility = JavaVersion.VERSION_1_8
    19 19   }
    20  - 
    21  - kotlinOptions {
    22  - jvmTarget = "1.8"
    23  - }
    24 20  }
    25 21   
    26 22  dependencies {
    skipped 3 lines
  • ■ ■ ■ ■ ■ ■
    core-navigation/build.gradle.kts
    skipped 27 lines
    28 28   kotlinCompilerExtensionVersion = Versions.COMPOSE_COMPILER
    29 29   }
    30 30   
    31  - kotlinOptions {
    32  - jvmTarget = "1.8"
    33  - }
    34  - 
    35 31   packagingOptions {
    36 32   resources.excludes.add("META-INF/LICENSE.txt")
    37 33   resources.excludes.add("META-INF/NOTICE.txt")
    skipped 15 lines
  • ■ ■ ■ ■ ■ ■
    core-network/build.gradle.kts
    skipped 17 lines
    18 18   sourceCompatibility = JavaVersion.VERSION_1_8
    19 19   targetCompatibility = JavaVersion.VERSION_1_8
    20 20   }
    21  - 
    22  - kotlinOptions {
    23  - jvmTarget = "1.8"
    24  - }
    25 21  }
    26 22   
    27 23  dependencies {
    skipped 14 lines
  • ■ ■ ■ ■ ■ ■
    feature-calls/build.gradle.kts
    skipped 26 lines
    27 27   kotlinCompilerExtensionVersion = Versions.COMPOSE_COMPILER
    28 28   }
    29 29   
    30  - kotlinOptions {
    31  - jvmTarget = "1.8"
    32  - }
    33  - 
    34 30   lint {
    35 31   abortOnError = false
    36 32   }
    skipped 22 lines
  • ■ ■ ■ ■ ■ ■
    feature-camera/build.gradle.kts
    skipped 23 lines
    24 24   kotlinCompilerExtensionVersion = Versions.COMPOSE_COMPILER
    25 25   }
    26 26   
    27  - kotlinOptions {
    28  - jvmTarget = "1.8"
    29  - }
    30  - 
    31 27   lint {
    32 28   abortOnError = false
    33 29   }
    skipped 17 lines
  • ■ ■ ■ ■ ■ ■
    feature-chats/build.gradle.kts
    skipped 25 lines
    26 26   kotlinCompilerExtensionVersion = Versions.COMPOSE_COMPILER
    27 27   }
    28 28   
    29  - kotlinOptions {
    30  - jvmTarget = "1.8"
    31  - }
    32  - 
    33 29   lint {
    34 30   abortOnError = false
    35 31   }
    skipped 28 lines
  • ■ ■ ■ ■ ■ ■
    feature-status/build.gradle.kts
    skipped 23 lines
    24 24   kotlinCompilerExtensionVersion = Versions.COMPOSE_COMPILER
    25 25   }
    26 26   
    27  - kotlinOptions {
    28  - jvmTarget = "1.8"
    29  - }
    30  - 
    31 27   lint {
    32 28   abortOnError = false
    33 29   }
    skipped 17 lines
  • ■ ■ ■ ■ ■ ■
    settings.gradle
    1  -pluginManagement {
    2  - repositories {
    3  - gradlePluginPortal()
    4  - google()
    5  - mavenCentral()
    6  - maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
    7  - }
    8  -}
    9  -dependencyResolutionManagement {
    10  - repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    11  - repositories {
    12  - google()
    13  - mavenCentral()
    14  - maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
    15  - }
    16  -}
    17  -rootProject.name = "WhatsAppCloneCompose"
    18  -include ':app'
    19  -include ':core-designsystem'
    20  -include ':core-navigation'
    21  -include ':core-model'
    22  -include ':core-network'
    23  -include ':core-database'
    24  -include ':core-data'
    25  -include ':feature-camera'
    26  -include ':feature-chats'
    27  -include ':feature-status'
    28  -include ':feature-calls'
    29  -include ':benchmark'
    30  - 
  • ■ ■ ■ ■ ■ ■
    settings.gradle.kts
     1 +@file:Suppress("UnstableApiUsage")
     2 + 
     3 +pluginManagement {
     4 + repositories {
     5 + gradlePluginPortal()
     6 + google()
     7 + mavenCentral()
     8 + maven(url = "https://oss.sonatype.org/content/repositories/snapshots/")
     9 + }
     10 +}
     11 +dependencyResolutionManagement {
     12 + repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
     13 + repositories {
     14 + google()
     15 + mavenCentral()
     16 + maven(url = "https://oss.sonatype.org/content/repositories/snapshots/")
     17 + }
     18 +}
     19 +rootProject.name = "WhatsAppCloneCompose"
     20 +include(":app")
     21 +include(":core-designsystem")
     22 +include(":core-navigation")
     23 +include(":core-model")
     24 +include(":core-network")
     25 +include(":core-database")
     26 +include(":core-data")
     27 +include(":feature-camera")
     28 +include(":feature-chats")
     29 +include(":feature-status")
     30 +include(":feature-calls")
     31 +include(":benchmark")
     32 + 
Please wait...
Page is in error, reload to recover