plugins {
    id 'com.android.application'
    id 'org.jetbrains.kotlin.android'
    id 'com.google.devtools.ksp' version '1.7.10-1.0.6'
}

android {
    signingConfigs {
        debug {
            storeFile file('../keystore/public')
            storePassword '123456'
            keyAlias 'public'
            keyPassword '123456'
            v1SigningEnabled true
            v2SigningEnabled true
        }
    }

    compileSdk 33

    defaultConfig {
        applicationId "com.highcapable.yukihookapi.demo_module"
        minSdk 21
        targetSdk 33
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            signingConfig signingConfigs.debug
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_11
        targetCompatibility JavaVersion.VERSION_11
    }
    kotlinOptions {
        jvmTarget = '11'
        freeCompilerArgs = [
                '-Xno-param-assertions',
                '-Xno-call-assertions',
                '-Xno-receiver-assertions'
        ]
    }
    buildFeatures {
        viewBinding true
    }
    aaptOptions.additionalParameters '--allow-reserved-package-id', '--package-id', '0x64'
}

dependencies {
    // Used 82 API Version
    compileOnly 'de.robv.android.xposed:api:82'
    // Implementation API
    implementation project(':yukihookapi')
    // Implementation Processor
    ksp project(':yukihookapi-ksp-xposed')
    implementation 'androidx.preference:preference-ktx:1.2.0'
    implementation 'androidx.core:core-ktx:1.9.0'
    implementation 'androidx.appcompat:appcompat:1.5.1'
    implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1'
    implementation 'com.google.android.material:material:1.6.1'
    implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
    testImplementation 'junit:junit:4.13.2'
    androidTestImplementation 'androidx.test.ext:junit:1.1.3'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}