From 287f81729fa9833e15f3e95240314fe5bfd0879b Mon Sep 17 00:00:00 2001
From: Matthew Leong <mattleong91@gmail.com>
Date: Wed, 30 Aug 2023 21:26:37 -0700
Subject: [PATCH] feat: move to utils

---
 lua/cosmic/lsp/mappings.lua | 11 +----------
 lua/cosmic/utils/lsp.lua    |  8 ++++++++
 2 files changed, 9 insertions(+), 10 deletions(-)

diff --git a/lua/cosmic/lsp/mappings.lua b/lua/cosmic/lsp/mappings.lua
index 150aced..1ae2a03 100644
--- a/lua/cosmic/lsp/mappings.lua
+++ b/lua/cosmic/lsp/mappings.lua
@@ -1,16 +1,7 @@
 local utils = require('cosmic.utils')
 local lsp_utils = require('cosmic.utils.lsp')
-local user_config = require('cosmic.core.user')
 local M = {}
 
-local function toggle_inlay_hints(bufnr)
-  local enabled = user_config.lsp.inlay_hint
-  return function()
-    enabled = not enabled
-    vim.lsp.inlay_hint(bufnr, enabled)
-  end
-end
-
 -- Mappings.
 function M.init(client, bufnr)
   local buf_map = utils.create_buf_map(bufnr, {
@@ -44,7 +35,7 @@ function M.init(client, bufnr)
 
   -- inlay hints
   if client.supports_method('textDocument/inlayHint') then
-    buf_map('n', '<leader>lh', toggle_inlay_hints(bufnr), { desc = 'Toggle inlay hints for buffer' })
+    buf_map('n', '<leader>lh', lsp_utils.toggle_inlay_hints(bufnr), { desc = 'Toggle inlay hints for buffer' })
   end
 
   -- code actions
diff --git a/lua/cosmic/utils/lsp.lua b/lua/cosmic/utils/lsp.lua
index 5a1c08b..7729d96 100644
--- a/lua/cosmic/utils/lsp.lua
+++ b/lua/cosmic/utils/lsp.lua
@@ -69,4 +69,12 @@ function M.get_lsp_status_str()
   return client_str
 end
 
+function M.toggle_inlay_hints(bufnr)
+  local enabled = user_config.lsp.inlay_hint
+  return function()
+    enabled = not enabled
+    vim.lsp.inlay_hint(bufnr, enabled)
+  end
+end
+
 return M