apply from: rootProject.file('buildscript/relocations.gradle')
apply plugin: 'maven-publish'

dependencies {
    // Annotations
    compileOnlyApi(libs.jetbrains.annotations)
    compileOnlyApi(libs.findbugs.annotations)

    // JDA
    api(libs.jda) {
        // Annotations are suppose to be compile time only
        exclude group: 'org.jetbrains', module: 'annotations'
        exclude group: 'com.google.code.findbugs', module: 'jsr305'

        // Downgrade okhttp (due to kotlin)
        exclude group: 'com.squareup.okhttp3', module: 'okhttp'

        // We don't use audio
        exclude module: 'opus-java'
    }
    api(libs.okhttp)
}

// Relocations are in buildscript/api.gradle

sourceSets {
    ap {
        java {
            compileClasspath += sourceSets.main.compileClasspath + sourceSets.main.output
        }
    }
}

java {
    withSourcesJar()
    withJavadocJar()
}

jar {
    from sourceSets.ap.output
}

//license {
//    // Overwrite the default
//    header = rootProject.file('buildscript/license/API_LICENSE_HEADER')
//}

publishing {
    publications {
        maven(MavenPublication) {
            // Shaded & relocated jar...
            artifact source: shadowJar, classifier: null
            artifact sourcesJar
            artifact javadocJar

            // ...and a pom with no dependencies
            pom {
                licenses {
                    license {
                        name = 'The MIT License'
                        url = 'https://opensource.org/licenses/MIT'
                    }
                }
            }
        }
    }
}