ci: format
This commit is contained in:
parent
693d3bf172
commit
1dcce37f51
3 changed files with 73 additions and 61 deletions
|
|
@ -428,7 +428,10 @@ function M.handle_command(opts)
|
||||||
elseif cmd.action == 'login' then
|
elseif cmd.action == 'login' then
|
||||||
local p = cmd.platform or state.get_platform()
|
local p = cmd.platform or state.get_platform()
|
||||||
if not p then
|
if not p then
|
||||||
logger.log('No platform active. Usage: :CP <platform> login', { level = vim.log.levels.ERROR })
|
logger.log(
|
||||||
|
'No platform active. Usage: :CP <platform> login',
|
||||||
|
{ level = vim.log.levels.ERROR }
|
||||||
|
)
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
if not check_platform_enabled(p) then
|
if not check_platform_enabled(p) then
|
||||||
|
|
@ -438,7 +441,10 @@ function M.handle_command(opts)
|
||||||
elseif cmd.action == 'logout' then
|
elseif cmd.action == 'logout' then
|
||||||
local p = cmd.platform or state.get_platform()
|
local p = cmd.platform or state.get_platform()
|
||||||
if not p then
|
if not p then
|
||||||
logger.log('No platform active. Usage: :CP <platform> logout', { level = vim.log.levels.ERROR })
|
logger.log(
|
||||||
|
'No platform active. Usage: :CP <platform> logout',
|
||||||
|
{ level = vim.log.levels.ERROR }
|
||||||
|
)
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
if not check_platform_enabled(p) then
|
if not check_platform_enabled(p) then
|
||||||
|
|
@ -448,15 +454,15 @@ function M.handle_command(opts)
|
||||||
elseif cmd.action == 'signup' then
|
elseif cmd.action == 'signup' then
|
||||||
local p = cmd.platform or state.get_platform()
|
local p = cmd.platform or state.get_platform()
|
||||||
if not p then
|
if not p then
|
||||||
logger.log('No platform active. Usage: :CP <platform> signup', { level = vim.log.levels.ERROR })
|
logger.log(
|
||||||
|
'No platform active. Usage: :CP <platform> signup',
|
||||||
|
{ level = vim.log.levels.ERROR }
|
||||||
|
)
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
local url = constants.SIGNUP_URLS[p]
|
local url = constants.SIGNUP_URLS[p]
|
||||||
if not url then
|
if not url then
|
||||||
logger.log(
|
logger.log(("No signup URL available for '%s'"):format(p), { level = vim.log.levels.WARN })
|
||||||
("No signup URL available for '%s'"):format(p),
|
|
||||||
{ level = vim.log.levels.WARN }
|
|
||||||
)
|
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
vim.ui.open(url)
|
vim.ui.open(url)
|
||||||
|
|
|
||||||
|
|
@ -14,47 +14,50 @@ local STATUS_MESSAGES = {
|
||||||
---@param platform string
|
---@param platform string
|
||||||
---@param display string
|
---@param display string
|
||||||
local function prompt_and_login(platform, display)
|
local function prompt_and_login(platform, display)
|
||||||
vim.ui.input({ prompt = '[cp.nvim]: ' .. display .. ' username (<Esc> to cancel): ' }, function(username)
|
vim.ui.input(
|
||||||
if not username or username == '' then
|
{ prompt = '[cp.nvim]: ' .. display .. ' username (<Esc> to cancel): ' },
|
||||||
logger.log(display .. ' login cancelled', { level = vim.log.levels.WARN })
|
function(username)
|
||||||
return
|
if not username or username == '' then
|
||||||
end
|
logger.log(display .. ' login cancelled', { level = vim.log.levels.WARN })
|
||||||
vim.fn.inputsave()
|
return
|
||||||
local password = vim.fn.inputsecret('[cp.nvim]: ' .. display .. ' password: ')
|
end
|
||||||
vim.fn.inputrestore()
|
vim.fn.inputsave()
|
||||||
if not password or password == '' then
|
local password = vim.fn.inputsecret('[cp.nvim]: ' .. display .. ' password: ')
|
||||||
logger.log(display .. ' login cancelled', { level = vim.log.levels.WARN })
|
vim.fn.inputrestore()
|
||||||
return
|
if not password or password == '' then
|
||||||
end
|
logger.log(display .. ' login cancelled', { level = vim.log.levels.WARN })
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
local credentials = { username = username, password = password }
|
local credentials = { username = username, password = password }
|
||||||
|
|
||||||
local scraper = require('cp.scraper')
|
local scraper = require('cp.scraper')
|
||||||
scraper.login(platform, credentials, function(ev)
|
scraper.login(platform, credentials, function(ev)
|
||||||
vim.schedule(function()
|
vim.schedule(function()
|
||||||
local msg = STATUS_MESSAGES[ev.status] or ev.status
|
local msg = STATUS_MESSAGES[ev.status] or ev.status
|
||||||
logger.log(display .. ': ' .. msg, { level = vim.log.levels.INFO, override = true })
|
logger.log(display .. ': ' .. msg, { level = vim.log.levels.INFO, override = true })
|
||||||
|
end)
|
||||||
|
end, function(result)
|
||||||
|
vim.schedule(function()
|
||||||
|
if result.success then
|
||||||
|
cache.set_credentials(platform, credentials)
|
||||||
|
logger.log(
|
||||||
|
display .. ' login successful',
|
||||||
|
{ level = vim.log.levels.INFO, override = true }
|
||||||
|
)
|
||||||
|
else
|
||||||
|
local err = result.error or 'unknown error'
|
||||||
|
cache.clear_credentials(platform)
|
||||||
|
logger.log(
|
||||||
|
display .. ' login failed: ' .. (constants.LOGIN_ERRORS[err] or err),
|
||||||
|
{ level = vim.log.levels.ERROR }
|
||||||
|
)
|
||||||
|
prompt_and_login(platform, display)
|
||||||
|
end
|
||||||
|
end)
|
||||||
end)
|
end)
|
||||||
end, function(result)
|
end
|
||||||
vim.schedule(function()
|
)
|
||||||
if result.success then
|
|
||||||
cache.set_credentials(platform, credentials)
|
|
||||||
logger.log(
|
|
||||||
display .. ' login successful',
|
|
||||||
{ level = vim.log.levels.INFO, override = true }
|
|
||||||
)
|
|
||||||
else
|
|
||||||
local err = result.error or 'unknown error'
|
|
||||||
cache.clear_credentials(platform)
|
|
||||||
logger.log(
|
|
||||||
display .. ' login failed: ' .. (constants.LOGIN_ERRORS[err] or err),
|
|
||||||
{ level = vim.log.levels.ERROR }
|
|
||||||
)
|
|
||||||
prompt_and_login(platform, display)
|
|
||||||
end
|
|
||||||
end)
|
|
||||||
end)
|
|
||||||
end)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
---@param platform string?
|
---@param platform string?
|
||||||
|
|
|
||||||
|
|
@ -20,23 +20,26 @@ local function prompt_credentials(platform, callback)
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
local display = constants.PLATFORM_DISPLAY_NAMES[platform] or platform
|
local display = constants.PLATFORM_DISPLAY_NAMES[platform] or platform
|
||||||
vim.ui.input({ prompt = '[cp.nvim]: ' .. display .. ' username (<Esc> to cancel): ' }, function(username)
|
vim.ui.input(
|
||||||
if not username or username == '' then
|
{ prompt = '[cp.nvim]: ' .. display .. ' username (<Esc> to cancel): ' },
|
||||||
logger.log('Submit cancelled', { level = vim.log.levels.WARN })
|
function(username)
|
||||||
return
|
if not username or username == '' then
|
||||||
|
logger.log('Submit cancelled', { level = vim.log.levels.WARN })
|
||||||
|
return
|
||||||
|
end
|
||||||
|
vim.fn.inputsave()
|
||||||
|
local password = vim.fn.inputsecret('[cp.nvim]: ' .. display .. ' password: ')
|
||||||
|
vim.fn.inputrestore()
|
||||||
|
vim.cmd.redraw()
|
||||||
|
if not password or password == '' then
|
||||||
|
logger.log('Submit cancelled', { level = vim.log.levels.WARN })
|
||||||
|
return
|
||||||
|
end
|
||||||
|
local creds = { username = username, password = password }
|
||||||
|
cache.set_credentials(platform, creds)
|
||||||
|
callback(creds)
|
||||||
end
|
end
|
||||||
vim.fn.inputsave()
|
)
|
||||||
local password = vim.fn.inputsecret('[cp.nvim]: ' .. display .. ' password: ')
|
|
||||||
vim.fn.inputrestore()
|
|
||||||
vim.cmd.redraw()
|
|
||||||
if not password or password == '' then
|
|
||||||
logger.log('Submit cancelled', { level = vim.log.levels.WARN })
|
|
||||||
return
|
|
||||||
end
|
|
||||||
local creds = { username = username, password = password }
|
|
||||||
cache.set_credentials(platform, creds)
|
|
||||||
callback(creds)
|
|
||||||
end)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
---@param opts { language?: string }?
|
---@param opts { language?: string }?
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue