From 99d1b27ef3c3ffb8204b1debfe3a302426528310 Mon Sep 17 00:00:00 2001 From: Svetlozar Iliev Date: Wed, 7 Dec 2022 11:51:52 +0200 Subject: feat(registry): add dart-debug-adapter (#733) --- lua/mason-registry/dart-debug-adapter/init.lua | 27 ++++++++++++++++++++++++++ lua/mason-registry/index.lua | 1 + lua/mason/mappings/language.lua | 1 + 3 files changed, 29 insertions(+) create mode 100644 lua/mason-registry/dart-debug-adapter/init.lua (limited to 'lua') diff --git a/lua/mason-registry/dart-debug-adapter/init.lua b/lua/mason-registry/dart-debug-adapter/init.lua new file mode 100644 index 00000000..402a82cc --- /dev/null +++ b/lua/mason-registry/dart-debug-adapter/init.lua @@ -0,0 +1,27 @@ +local Pkg = require "mason-core.package" +local github = require "mason-core.managers.github" +local _ = require "mason-core.functional" +local path = require "mason-core.path" + +return Pkg.new { + name = "dart-debug-adapter", + desc = [[Dart debug adapter sourced from the Dart VSCode extension.]], + homepage = "https://github.com/Dart-Code/Dart-Code", + languages = { Pkg.Lang.Dart }, + categories = { Pkg.Cat.DAP }, + ---@async + ---@param ctx InstallContext + install = function(ctx) + github + .unzip_release_file({ + repo = "Dart-Code/Dart-Code", + asset_file = _.compose(_.format "dart-code-%s.vsix", _.gsub("^v", "")), + }) + .with_receipt() + ctx.fs:rmrf(path.concat { "extension", "media" }) + ctx:link_bin( + "dart-debug-adapter", + ctx:write_node_exec_wrapper("dart-debug-adapter", path.concat { "extension", "out", "dist", "debug.js" }) + ) + end, +} diff --git a/lua/mason-registry/index.lua b/lua/mason-registry/index.lua index acbecd91..b507ebc3 100644 --- a/lua/mason-registry/index.lua +++ b/lua/mason-registry/index.lua @@ -50,6 +50,7 @@ return { ["cucumber-language-server"] = "mason-registry.cucumber-language-server", cuelsp = "mason-registry.cuelsp", curlylint = "mason-registry.curlylint", + ["dart-debug-adapter"] = "mason-registry.dart-debug-adapter", debugpy = "mason-registry.debugpy", delve = "mason-registry.delve", deno = "mason-registry.deno", diff --git a/lua/mason/mappings/language.lua b/lua/mason/mappings/language.lua index a23f5dd6..53512833 100644 --- a/lua/mason/mappings/language.lua +++ b/lua/mason/mappings/language.lua @@ -30,6 +30,7 @@ return { cucumber = { "cucumber-language-server" }, cue = { "cuelsp" }, d = { "serve-d" }, + dart = { "dart-debug-adapter" }, dhall = { "dhall-lsp" }, django = { "curlylint", "djlint" }, dockerfile = { "dockerfile-language-server", "hadolint" }, -- cgit v1.2.3-70-g09d2