def safeExtGet(prop, fallback) {
    rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback
}

buildscript {
  repositories {
    google()
    mavenCentral()
    jcenter()
  }

  dependencies {
    classpath 'com.android.tools.build:gradle:3.3.1'
  }
}

apply plugin: 'com.android.library'

android {
  compileSdkVersion safeExtGet('compileSdkVersion', 28)
  buildToolsVersion safeExtGet('buildToolsVersion', '28.0.3')
  defaultConfig {
    minSdkVersion safeExtGet('minSdkVersion', 16)
    targetSdkVersion safeExtGet('targetSdkVersion', 28)
  }
  lintOptions {
    abortOnError false
    warning 'InvalidPackage'
  }
}

repositories {
  google()
  mavenCentral()
  jcenter()
  maven { url "https://jitpack.io" }
  maven {
    // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
    url "$rootDir/../node_modules/react-native/android"
  }
}

dependencies {
  implementation fileTree(include: ['*.jar'], dir: 'libs1')
  implementation fileTree(dir: 'libs2', include: ['*.jar'])
  implementation 'com.facebook.react:react-native:+'
  implementation "androidx.appcompat:appcompat:${safeExtGet('supportLibVersion', '1.1.0')}"
  annotationProcessor 'com.example:annotation-processor:1.0.0'
  api 'com.example:api:1.0.0'
  compileOnly 'com.example:compile-only:1.0.0'
  implementation('com.example:aar-dep:1.0.0@aar') { transitive = true }
  implementation fileTree(dir: 'libs', include: ['*.jar'])
  testImplementation 'com.example:test:1.0.0'
  testCompile 'com.example:test:1.0.0'
}
