/*
 * This file was generated by the Gradle 'init' task.
 *
 * This generated file contains a sample Kotlin application project to get you started.
 */

plugins {
    id("org.jetbrains.kotlin.jvm") version "1.4.0"
    id("org.openjfx.javafxplugin") version "0.0.9"
    id("org.jetbrains.dokka") version "1.4.0-rc"

    application
}

repositories {
    // Use jcenter for resolving dependencies.
    // You can declare any Maven/Ivy/file repository here.
    jcenter()
    mavenCentral()
}

dependencies {
    implementation(platform("org.jetbrains.kotlin:kotlin-bom"))
    implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
    implementation("org.kodein.di:kodein-di:7.1.0")
    implementation("org.kodein.di:kodein-di-generic-jvm:6.5.5")
    implementation("org.kodein.di:kodein-di-framework-tornadofx-jvm:7.1.0")
    implementation("io.github.microutils:kotlin-logging-jvm:2.0.3")
    implementation("org.slf4j:slf4j-simple:1.7.26")
//    implementation("org.dizitart:potassium-nitrite:3.4.2")
    implementation("no.tornado:tornadofx:1.7.20")
    implementation("com.jfoenix:jfoenix:9.0.10")
    implementation("com.github.bkenn:kfoenix:0.1.3") {
        exclude("com.jfoenix:jfoenix")
    }
    implementation("com.beust:klaxon:5.0.1")

    testImplementation("org.jetbrains.kotlin:kotlin-test")
    testImplementation("org.jetbrains.kotlin:kotlin-test-junit")
    testImplementation("org.junit.jupiter:junit-jupiter:5.6.2")
    testImplementation("io.mockk:mockk:1.10.0")
}

javafx {
    version = "14"
    modules = listOf("javafx.controls", "javafx.graphics", "javafx.fxml")
}

application {
    // Define the main class for the application.
    mainClassName = "dev.fyloz.plannervio.ui.PlannervioKt"
}

tasks.test {
    useJUnitPlatform()
    testLogging {
        events("passed", "skipped", "failed")
    }
}

tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
    kotlinOptions.jvmTarget = "11"
}

tasks.dokkaHtml {
    outputDirectory = "$buildDir/dokka"
}
