---@type ChadrcConfig
local M = {}

-- Path to overriding theme and highlights files
local highlights = require "custom.highlights"

M.ui = {
  theme = "oceanic-next",
  theme_toggle = { "oceanic-next", "ayu_light" },

  hl_override = highlights.override,
  hl_add = highlights.add,
  lsp_semantic_tokens = true,
  statusline = {
    theme = "default", -- default/vscode/vscode_colored/minimal
    -- default/round/block/arrow separators work only for default statusline theme
    -- round and block will work for minimal theme only
    separator_style = "default",
    overriden_modules = nil,
  },
  -- lazyload it when there are 1+ buffers
  tabufline = {
    show_numbers = true,
    enabled = true,
    lazyload = true,
    overriden_modules = nil,
  },
  -- nvdash (dashboard)
  nvdash = {
    load_on_startup = true,
    header = {
      "                                                                               ",
      "          █ ████████           █████    ███████    ████          ",
      "         ███ ██████             █████  █████████  ██████         ",
      "        █████ ██████████████████████ ████ ███████████████        ",
      "       ██ ██ █████     █████████████ ████ ████████████████       ",
      "      ████ ███████████████ █████████ ████ █████ ██████ ████      ",
      "     ██████ ██████     ███ █████████ ████ █████  █████  ████     ",
      "    ████████ ███████████████████ ████ ████ █████   ████   ████    ",
      "                                                                               ",
      "                      🛠️ Sharp tools make good work 🖥️                         ",
    },
  },
}

M.plugins = "custom.plugins"

-- check core.mappings for table structure
M.mappings = require "custom.mappings"

local get_info = function()
  local buf = {
    { "  Find File", ";ff", "Telescope find_files" },
    { "󰈚  Recent Files", ";fo", "Telescope oldfiles" },
    { "󰈭  Find Word", ";fw", "Telescope live_grep" },
    { "  Bookmarks", ";fm", "Telescope marks" },
    { "  Theme: " .. M.ui.theme, ";th", "Telescope themes" },
    {
      "  Toggle Theme",
      "<space>th",
      function()
        require("base46").toggle_theme()
      end,
    },
    { "  Mappings", "<space>ch", "NvCheatsheet" },
    { "  Git", "<space>gg", "LazyGit" },
    { "  Files", "<F5>", "NvimTreeToggle" },
    { "  Change Directory", ";cd", "Telescope zoxide list" },
    { "  Terminal", "<A-i>", "ToggleTerm direction=float" },
  }
  return buf
end
M.ui.nvdash.buttons = get_info()
return M
