buildscript {
  def kotlinVersion = rootProject.ext.has('kotlinVersion')
    ? rootProject.ext.get('kotlinVersion')
    : '1.8.22'

  repositories {
    mavenCentral()
    google()
  }
  dependencies {
    classpath 'com.android.tools.build:gradle:7.3.1'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${kotlinVersion}"
  }
}

apply plugin: 'com.android.library'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'

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

android {
  compileSdkVersion safeExtGet('compileSdkVersion', 32)
  defaultConfig {
    minSdkVersion safeExtGet('minSdkVersion', 27)
    targetSdkVersion safeExtGet('targetSdkVersion', 32)
  }
  lintOptions {
    abortOnError false
  }
}

repositories {
  flatDir {
    dirs("libs")
  }

  maven {
    url('../node_modules/react-native/android')
  }
  google()
  mavenCentral()
}

dependencies {
  implementation 'com.facebook.react:react-native:+'

  // Compiler plugin for Room annotation support:
  kapt 'androidx.room:room-compiler:2.3.0'

  implementation("io.github.piratenetwork:pirate-lightwallet-client:1.19.0-beta05")
  implementation("io.github.piratenetwork:pirate-android-sdk:1.19.0-beta05") {
    exclude group: "io.github.piratenetwork", module: "pirate-lightwallet-client"
  }
  implementation("io.github.piratenetwork:pirate-android-sdk-incubator:1.19.0-beta05") {
    exclude group: "io.github.piratenetwork", module: "pirate-lightwallet-client"
  }
  implementation 'androidx.appcompat:appcompat:1.4.1'
  implementation 'androidx.paging:paging-runtime-ktx:2.1.2'
  implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4"
  implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4"
}
