/*
 * Copyright (c) Huawei Technologies Co., Ltd. 2021-2021. All rights reserved.
 */

def pluginMinSdk = 19
def needAGC = true;

try {
    // Use try-catch to check that project's runtime is Cordova
    if (rootProject.ext.minSdkVersion < pluginMinSdk) {
        rootProject.ext.minSdkVersion = pluginMinSdk
    }
    if (needAGC) {
        rootProject.subprojects {
            if (name == "app") {
                if (!plugins.hasPlugin('com.huawei.agconnect')) {
                    rootProject.ext.postBuildExtras = {
                        apply plugin: 'com.huawei.agconnect'
                    }
                }
            }
        }
    }
} catch (e1) {
    // Project runtime is Capacitor
    try {
        if (defaultMinSdkVersion < pluginMinSdk) {
            cdvMinSdkVersion = pluginMinSdk
        }
        if (needAGC) {
            cdvPluginPostBuildExtras.add({
                afterEvaluate {
                    rootProject.subprojects {
                        if (name == "app") {
                            if (!plugins.hasPlugin('com.huawei.agconnect')) {
                                apply plugin: 'com.huawei.agconnect'
                            }
                        }
                    }
                }
            })
        }
    } catch (e2) {
        println("WARNING: Huawei AgConnect is not set")
    }
}
