aboutsummaryrefslogtreecommitdiffstats
path: root/lua/mason-registry/docker-compose-language-service/init.lua
blob: 1a8d2c0f53eb5c67e0c99af722dd4d43c78de300 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
local Pkg = require "mason-core.package"
local path = require "mason-core.path"
local npm = require "mason-core.managers.npm"

return Pkg.new {
    name = "docker-compose-language-service",
    desc = [[A language server for Docker Compose.]],
    homepage = "https://github.com/microsoft/compose-language-service",
    languages = { Pkg.Lang.Docker },
    categories = { Pkg.Cat.LSP },
    ---@async
    ---@param ctx InstallContext
    install = function(ctx)
        npm.install({ "@microsoft/compose-language-service" }).with_receipt()
        ctx:link_bin(
            "docker-compose-language-service",
            ctx:write_node_exec_wrapper(
                "docker-compose-language-service",
                path.concat {
                    "node_modules",
                    "@microsoft",
                    "compose-language-service",
                    "lib",
                    "server.js",
                }
            )
        )
    end,
}