/*
 * Copyright (C) 2018 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */


/*
 * Experimental gradle configuration.  This file may not be up to date.
 */

apply plugin: 'com.android.library'
apply plugin: 'com.google.protobuf'

android {
    compileSdkVersion 29
    buildToolsVersion '29.0.2'

    compileOptions() {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    lintOptions {
        abortOnError false
    }

    defaultConfig {
        minSdkVersion 23
        resConfigs "en"
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
    }

    buildTypes {
        debug {
            minifyEnabled false
        }
        release {
            minifyEnabled true
        }
    }

    sourceSets {
        main {
            res.srcDirs = ['res']
            java.srcDirs = ['src']
            manifest.srcFile 'AndroidManifest.xml'
            proto {
                srcDir 'proto'
            }
        }
    }
}

dependencies {
    implementation      'androidx.annotation:annotation:1.1.0'
    implementation      'androidx.appcompat:appcompat:1.1.0'
    implementation      'androidx.leanback:leanback:1.1.0-alpha02'
    implementation      'androidx.recyclerview:recyclerview:1.1.0'
    implementation      'androidx.recyclerview:recyclerview-selection:1.0.0'
    implementation      'androidx.tvprovider:tvprovider:1.0.0'

    implementation      'com.google.android.exoplayer:exoplayer:r1.5.16'
    api                 'com.google.android.exoplayer:exoplayer-core:2.10.1'
    implementation      'com.google.android.exoplayer:exoplayer-ui:2.10.1'
    annotationProcessor 'com.google.auto.factory:auto-factory:1.0-beta7'
    implementation      'com.google.auto.factory:auto-factory:1.0-beta7'
    implementation      'com.google.dagger:dagger:2.23'
    implementation      'com.google.dagger:dagger-android:2.23'
    annotationProcessor 'com.google.dagger:dagger-android-processor:2.23'
    annotationProcessor 'com.google.dagger:dagger-compiler:2.23'
    implementation      'com.google.guava:guava:28.1-jre'
    implementation      'com.google.protobuf:protobuf-javalite:3.11.0'

    implementation      project(':common')
}

protobuf {
    protoc {
        artifact = 'com.google.protobuf:protoc:3.11.0'
    }
    generateProtoTasks {
        all().each { task ->
            task.builtins {
                java {
                    option "lite"
                }
            }
        }
    }
}