plugins {
  id 'com.android.application'
  id 'kotlin-android'
  id 'kotlin-android-extensions'
  id 'kotlin-kapt'
}

android {
  compileSdkVersion 30
  buildToolsVersion "30.0.2"

  defaultConfig {
    applicationId "com.airbnb.lottie.sample.compose"
    minSdkVersion 21
    targetSdkVersion 30
    versionCode 1
    versionName VERSION_NAME

    testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
  }

  buildTypes {
    release {
      minifyEnabled false
    }
  }
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
  kotlinOptions {
    jvmTarget = '1.8'
    freeCompilerArgs += [
        "-Xallow-jvm-ir-dependencies",
        "-Xskip-prerelease-check",
        "-Xuse-experimental=kotlinx.coroutines.ExperimentalCoroutinesApi",
        "-Xopt-in=androidx.compose.material.ExperimentalMaterialApi",
        "-Xopt-in=com.airbnb.mvrx.InternalMavericksApi"
    ]
  }
  buildFeatures {
    compose true
  }
  composeOptions {
    kotlinCompilerExtensionVersion composeVersion
    kotlinCompilerVersion kotlinVersion
  }
}

kapt {
  correctErrorTypes = true
}

androidExtensions {
  features = ["parcelize"]
}

dependencies {
  implementation project(':lottie-compose')
  implementation 'androidx.core:core-ktx:1.3.2'
  implementation 'androidx.multidex:multidex:2.0.1'
  implementation 'androidx.appcompat:appcompat:1.2.0'
  implementation 'com.google.android.material:material:1.2.1'
  implementation "androidx.compose.ui:ui:$composeVersion"
  implementation "androidx.compose.material:material:$composeVersion"
  implementation "androidx.compose.material:material-icons-extended:$composeVersion"
  implementation "androidx.compose.ui:ui-tooling:$composeVersion"
  implementation "androidx.navigation:navigation-compose:1.0.0-alpha04"
  implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.3.0-beta01'
  implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.0-beta01'

  implementation "androidx.navigation:navigation-fragment-ktx:2.3.2"
  implementation "androidx.navigation:navigation-ui-ktx:2.3.2"

  implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.4.2'
  implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.2'

  implementation "com.google.dagger:dagger:$daggerVersion"
  kapt "com.google.dagger:dagger-compiler:$daggerVersion"

  compileOnly 'com.squareup.inject:assisted-inject-annotations-dagger2:0.6.0'
  kapt 'com.squareup.inject:assisted-inject-processor-dagger2:0.6.0'

  implementation 'com.squareup.retrofit2:retrofit:2.9.0'
  implementation 'com.squareup.retrofit2:converter-moshi:2.9.0'
  implementation "dev.chrisbanes.accompanist:accompanist-coil:0.4.0"
  implementation 'com.airbnb.android:mvrx:2.0.0-beta3'

  testImplementation 'junit:junit:4.13.1'
  androidTestImplementation 'androidx.test.ext:junit:1.1.2'
  androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
}