-- colorschemes.lua: Manages and switches between visual themes for the editor interface.

return {
  {
    "catppuccin/nvim",
    lazy = false,
    name = "catppuccin",
    config = function()
      vim.cmd("colorscheme catppuccin-mocha")
    end,
  },
  {
    "sainnhe/everforest",
    lazy = false,
    config = function()
      vim.g.everforest_enable_italic = true
      vim.cmd.colorscheme("everforest")
    end,
  },
  {
    "folke/tokyonight.nvim",
    lazy = false,
    opts = {},
    name = "tokyonight",
    config = function()
      vim.cmd("colorscheme tokyonight-moon")
    end,
  },
  {
    "rose-pine/neovim",
    lazy = false,
    name = "rose-pine",
    config = function()
      vim.cmd("colorscheme rose-pine-moon")
    end,
  },
  {
    "Mofiqul/dracula.nvim",
    lazy = false,
    config = function()
      vim.cmd("colorscheme dracula")
    end,
  },
  {
    "sainnhe/gruvbox-material",
    lazy = false,
    name = "gruvbox-mat", --medium
    config = function()
      vim.g.gruvbox_material_enable_italic = true
      vim.cmd.colorscheme("gruvbox-material")
    end,
  },
  {
    "navarasu/onedark.nvim",
    lazy = false,
    name = "onedark-warm",
    config = function()
      require("onedark").setup({
        style = "warm",
      })
      require("onedark").load()
    end,
  },
  {
    "EdenEast/nightfox.nvim",
    lazy = false,
    config = function()
      vim.cmd.colorscheme("nordfox")
    end,
  },
  {
    "sainnhe/sonokai",
    lazy = false,                    -- Load during startup since it's a colorscheme
    config = function()
      vim.g.sonokai_style = "shusia" -- default, atlantis, shusia, espresso

      -- Optional: Additional configuration
      vim.g.sonokai_better_performance = 1
      vim.g.sonokai_enable_italic = 1
      vim.g.sonokai_disable_italic_comment = 0
      vim.g.sonokai_transparent_background = 0

      -- Apply the colorscheme
      vim.cmd.colorscheme("sonokai")
    end,
  },
  {
    "rebelot/kanagawa.nvim",
    lazy = false,
    config = function()
      require("kanagawa").setup({
        -- Optional: customize the theme
        compile = false, -- Enable for faster load times
        undercurl = true,
        commentStyle = { italic = true },
        functionStyle = {},
        keywordStyle = { italic = true },
        statementStyle = { bold = true },
        typeStyle = {},
        transparent = false,
        dimInactive = false,
        terminalColors = true,

        -- Available themes: "wave" (default), "dragon", "lotus"
        theme = "wave", -- or "dragon" for darker, "lotus" for light
        background = {
          dark = "wave",
        },
      })

      vim.cmd.colorscheme("kanagawa")
    end,
  },
}
