load("@rules_jvm_external//:defs.bzl", "artifact")
load("@rules_java//java:java_library.bzl", "java_library")

shared_deps = [
        artifact("com.leakyabstractions:result-api"),
        artifact("com.leakyabstractions:result"),
        artifact("org.jetbrains:annotations"),
        artifact("com.google.guava:guava"),
        artifact("org.slf4j.slf4j:api"),
        artifact("de.kentoj.scrow:kencommandapi-core"),
        artifact("net.kyori:adventure-api"),
        artifact("net.kyori:adventure-text-minimessage"),
        artifact("org.jdbi:jdbi3-core"),
        artifact("org.mongodb:bson"),
]

java_library(
    name = "core",
    srcs = glob(["src/main/**/*.java"]),
    visibility = ["//visibility:public"],
    deps = shared_deps + [
        artifact("org.jdbi:jdbi3-postgres"),
        artifact("io.nats:jnats"),
    ],
    exports = shared_deps,
)