local config = require 'solarized.config'
if vim.o.background == 'dark' then
  local palette = require 'solarized.palette'
  local c = palette[config.palette]
  return {
    normal = {},
    ellipsis = { fg = c.base0 },
    separator = { link = 'Keyword' },
    modified = { fg = c.diag_warning },
    dirname = { link = 'Directory' },
    basename = { fg = c.base0, bold = true },
    context = { fg = c.base0 },
    context_file = { fg = c.base0 },
    context_module = { link = 'Type' },
    context_namespace = { link = 'Type' },
    context_package = { link = 'Directory' },
    context_class = { link = 'Type' },
    context_method = { link = 'Function' },
    context_property = { link = 'Identifier' },
    context_field = { link = 'Identifier' },
    context_constructor = { link = 'Type' },
    context_enum = { link = 'Type' },
    context_interface = { link = 'Type' },
    context_function = { link = 'Function' },
    context_variable = { link = 'Identifier' },
    context_constant = { link = 'Constant' },
    context_string = { link = 'String' },
    context_number = { link = 'Number' },
    context_boolean = { link = 'Boolean' },
    context_array = { link = 'Delimiter' },
    context_object = { link = 'Identifier' },
    context_key = { link = 'Delimiter' },
    context_null = { link = 'Constant' },
    context_enum_member = { link = 'Constant' },
    context_struct = { link = 'Structure' },
    context_event = { fg = c.yellow },
    context_operator = { link = 'Operator' },
    context_type_parameter = { link = 'Type' },
  }
else
  local palette = require 'solarized.palette.solarized-light'
  local c = palette[config.palette]
  return {
    normal = {},
    ellipsis = { fg = c.base00 },
    separator = { link = 'Keyword' },
    modified = { fg = c.diag_warning },
    dirname = { link = 'Directory' },
    basename = { fg = c.base00, bold = true },
    context = { fg = c.base00 },
    context_file = { fg = c.base00 },
    context_module = { link = 'Type' },
    context_namespace = { link = 'Type' },
    context_package = { link = 'Directory' },
    context_class = { link = 'Type' },
    context_method = { link = 'Function' },
    context_property = { link = 'Identifier' },
    context_field = { link = 'Identifier' },
    context_constructor = { link = 'Type' },
    context_enum = { link = 'Type' },
    context_interface = { link = 'Type' },
    context_function = { link = 'Function' },
    context_variable = { link = 'Identifier' },
    context_constant = { link = 'Constant' },
    context_string = { link = 'String' },
    context_number = { link = 'Number' },
    context_boolean = { link = 'Boolean' },
    context_array = { link = 'Delimiter' },
    context_object = { link = 'Identifier' },
    context_key = { link = 'Delimiter' },
    context_null = { link = 'Constant' },
    context_enum_member = { link = 'Constant' },
    context_struct = { link = 'Structure' },
    context_event = { fg = c.yellow },
    context_operator = { link = 'Operator' },
    context_type_parameter = { link = 'Type' },
  }
end
