From a3eb3f0874ee7500915dbcce0beba22d112b15e6 Mon Sep 17 00:00:00 2001 From: William Boman Date: Fri, 14 Oct 2022 18:09:36 +0200 Subject: feat(api): add typed client interface (#556) --- lua/mason-core/managers/github/client.lua | 6 ++---- lua/mason-core/managers/npm/init.lua | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) (limited to 'lua/mason-core') diff --git a/lua/mason-core/managers/github/client.lua b/lua/mason-core/managers/github/client.lua index 9583ab6d..3ef307c1 100644 --- a/lua/mason-core/managers/github/client.lua +++ b/lua/mason-core/managers/github/client.lua @@ -66,8 +66,7 @@ end ---@return Result # Result function M.fetch_latest_release(repo, opts) opts = opts or { include_prerelease = false } - local path = ("/api/repo/%s/releases/latest"):format(repo) - return api.get(path, { + return api.repo.releases.latest({ repo = repo }, { params = { include_prerelease = opts.include_prerelease and "true" or "false", }, @@ -88,8 +87,7 @@ end ---@param repo string The GitHub repo ("username/repo"). ---@return Result # Result The latest tag name. function M.fetch_latest_tag(repo) - local path = ("/api/repo/%s/tags/latest"):format(repo) - return api.get(path):map(_.prop "tag") + return api.repo.tags.latest({ repo = repo }):map(_.prop "tag") end ---@async diff --git a/lua/mason-core/managers/npm/init.lua b/lua/mason-core/managers/npm/init.lua index 9cfa2be7..61ee4042 100644 --- a/lua/mason-core/managers/npm/init.lua +++ b/lua/mason-core/managers/npm/init.lua @@ -112,7 +112,7 @@ function M.check_outdated_primary_package(receipt, install_dir) local primary_package = receipt.primary_source.package return M.get_installed_primary_package_version(receipt, install_dir) :and_then(function(installed_version) - return api.get(("/api/npm/%s/versions/latest"):format(primary_package)):map(function(response) + return api.npm.versions.latest({ package = primary_package }):map(function(response) return { installed = installed_version, latest = response.version, -- cgit v1.2.3-70-g09d2