plugins {
    id 'com.android.application' version '8.1.3' apply false
    id 'com.android.library' version '8.1.3' apply false
    id 'org.jetbrains.kotlin.android' version '1.9.22' apply false
    id 'org.ec4j.editorconfig' version "0.1.0" apply false
    id "org.jetbrains.gradle.plugin.idea-ext" version "1.1.7" apply true
}

// External project configuration start

// Configure and automatically generate AAR of the below mentioned external
// projects using a custom task  in order to let Android Studio work properly.
// MUST BE RUN MANUALLY ON CLI COMPILATION
def external_projects = [
        project(':external:calendar'),
        project(':external:chips'),
        project(':external:colorpicker'),
        project(':external:timezonepicker')
]

configure(external_projects) {
    apply {
        from '../configuration/common.gradle'
    }
}

tasks.register('aarGen') {
    description "Generates AAR from the external projects for Etar-Calendar"
    def aarTasks = [
            ':external:calendar:copyAAR',
            ':external:chips:copyAAR',
            ':external:colorpicker:copyAAR',
            ':external:timezonepicker:copyAAR'
    ]
    dependsOn aarTasks
}

idea.project.settings {
    taskTriggers {
        afterSync tasks.named('aarGen')
    }
}
// External project configuration end

tasks.register('clean', Delete) {
    delete rootProject.buildDir
    delete 'app/libs'
}
