if vim.g.did_load_overseer_plugin then
  return
end
vim.g.did_load_overseer_plugin = true

local file_exists = require("user.file_exists").file_exists

require("which-key").add({
  { "<leader>o", group = "[o]verseer", icon = "" },
  { "<leader>ot", "<Cmd>OverseerToggle<CR>", desc = "[o]verseer: [t]oggle " },
  { "<leader>oc", "<Cmd>OverseerRunCmd<CR>", desc = "[o]verseer: run [c]ommand" },
  { "<leader>or", "<Cmd>OverseerRun<CR>", desc = "[o]verseer: [r]un task" },
  { "<leader>oq", "<Cmd>OverseerQuickAction<CR>", desc = "[o]verseer: [q]uick action" },
  { "<leader>oa", "<Cmd>OverseerTaskAction<CR>", desc = "[o]verseer: task [a]ction" },
  { "<leader>oi", "<Cmd>OverseerInfo<CR>", desc = "[o]verseer: [i]nfo" },
})

local root_files = {
  '.vscode',
  '.git',
}

local root = vim.fs.dirname(vim.fs.find(root_files, { upward = true })[1])

if root then
  if file_exists(root .. "/.vscode/tasks.json") then
    require('overseer').setup({
      strategy = {
        "toggleterm",
        quit_on_exit = "success",
      },
    })
  end
end