aboutsummaryrefslogtreecommitdiff
path: root/editors
diff options
context:
space:
mode:
Diffstat (limited to 'editors')
-rw-r--r--editors/code/.vscodeignore4
-rw-r--r--editors/code/package-lock.json726
-rw-r--r--editors/code/package.json19
-rw-r--r--editors/code/rollup.config.js25
-rw-r--r--editors/code/src/server.ts12
5 files changed, 751 insertions, 35 deletions
diff --git a/editors/code/.vscodeignore b/editors/code/.vscodeignore
new file mode 100644
index 000000000..eeb047098
--- /dev/null
+++ b/editors/code/.vscodeignore
@@ -0,0 +1,4 @@
1**
2!out/extension.ts
3!package.json
4!package-lock.json
diff --git a/editors/code/package-lock.json b/editors/code/package-lock.json
index 767eec3b1..982238fa4 100644
--- a/editors/code/package-lock.json
+++ b/editors/code/package-lock.json
@@ -4,12 +4,72 @@
4 "lockfileVersion": 1, 4 "lockfileVersion": 1,
5 "requires": true, 5 "requires": true,
6 "dependencies": { 6 "dependencies": {
7 "@rollup/plugin-commonjs": {
8 "version": "11.0.0",
9 "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-11.0.0.tgz",
10 "integrity": "sha512-jnm//T5ZWOZ6zmJ61fReSCBOif+Ax8dHVoVggA+d2NA7T4qCWgQ3KYr+zN2faGEYLpe1wa03IzvhR+sqVLxUWg==",
11 "dev": true,
12 "requires": {
13 "@rollup/pluginutils": "^3.0.0",
14 "estree-walker": "^0.6.1",
15 "is-reference": "^1.1.2",
16 "magic-string": "^0.25.2",
17 "resolve": "^1.11.0"
18 }
19 },
20 "@rollup/plugin-node-resolve": {
21 "version": "6.0.0",
22 "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-6.0.0.tgz",
23 "integrity": "sha512-GqWz1CfXOsqpeVMcoM315+O7zMxpRsmhWyhJoxLFHVSp9S64/u02i7len/FnbTNbmgYs+sZyilasijH8UiuboQ==",
24 "dev": true,
25 "requires": {
26 "@rollup/pluginutils": "^3.0.0",
27 "@types/resolve": "0.0.8",
28 "builtin-modules": "^3.1.0",
29 "is-module": "^1.0.0",
30 "resolve": "^1.11.1"
31 }
32 },
33 "@rollup/plugin-typescript": {
34 "version": "2.0.1",
35 "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-2.0.1.tgz",
36 "integrity": "sha512-UA/bN/DlHN19xdOllXmp7G7pM2ac9dQMg0q2T1rg4Bogzb7oHXj2WGafpiNpEm54PivcJdzGRJvRnI6zCISW3w==",
37 "dev": true,
38 "requires": {
39 "@rollup/pluginutils": "^3.0.0",
40 "resolve": "^1.12.2"
41 }
42 },
43 "@rollup/pluginutils": {
44 "version": "3.0.1",
45 "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.0.1.tgz",
46 "integrity": "sha512-PmNurkecagFimv7ZdKCVOfQuqKDPkrcpLFxRBcQ00LYr4HAjJwhCFxBiY2Xoletll2htTIiXBg6g0Yg21h2M3w==",
47 "dev": true,
48 "requires": {
49 "estree-walker": "^0.6.1"
50 }
51 },
52 "@types/estree": {
53 "version": "0.0.41",
54 "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.41.tgz",
55 "integrity": "sha512-rIAmXyJlqw4KEBO7+u9gxZZSQHaCNnIzYrnNmYVpgfJhxTqO0brCX0SYpqUTkVI5mwwUwzmtspLBGBKroMeynA==",
56 "dev": true
57 },
7 "@types/node": { 58 "@types/node": {
8 "version": "12.12.21", 59 "version": "12.12.22",
9 "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.21.tgz", 60 "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.22.tgz",
10 "integrity": "sha512-8sRGhbpU+ck1n0PGAUgVrWrWdjSW2aqNeyC15W88GRsMpSwzv6RJGlLhE7s2RhVSOdyDmxbqlWSeThq4/7xqlA==", 61 "integrity": "sha512-r5i93jqbPWGXYXxianGATOxTelkp6ih/U0WVnvaqAvTqM+0U6J3kw6Xk6uq/dWNRkEVw/0SLcO5ORXbVNz4FMQ==",
11 "dev": true 62 "dev": true
12 }, 63 },
64 "@types/resolve": {
65 "version": "0.0.8",
66 "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-0.0.8.tgz",
67 "integrity": "sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ==",
68 "dev": true,
69 "requires": {
70 "@types/node": "*"
71 }
72 },
13 "@types/seedrandom": { 73 "@types/seedrandom": {
14 "version": "2.4.28", 74 "version": "2.4.28",
15 "resolved": "https://registry.npmjs.org/@types/seedrandom/-/seedrandom-2.4.28.tgz", 75 "resolved": "https://registry.npmjs.org/@types/seedrandom/-/seedrandom-2.4.28.tgz",
@@ -22,27 +82,641 @@
22 "integrity": "sha512-7SfeY5u9jgiELwxyLB3z7l6l/GbN9CqpCQGkcRlB7tKRFBxzbz2PoBfGrLxI1vRfUCIq5+hg5vtDHExwq5j3+A==", 82 "integrity": "sha512-7SfeY5u9jgiELwxyLB3z7l6l/GbN9CqpCQGkcRlB7tKRFBxzbz2PoBfGrLxI1vRfUCIq5+hg5vtDHExwq5j3+A==",
23 "dev": true 83 "dev": true
24 }, 84 },
85 "acorn": {
86 "version": "7.1.0",
87 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.0.tgz",
88 "integrity": "sha512-kL5CuoXA/dgxlBbVrflsflzQ3PAas7RYZB52NOm/6839iVYJgKMJ3cQJD+t2i5+qFa8h3MDpEOJiS64E8JLnSQ==",
89 "dev": true
90 },
91 "ansi-styles": {
92 "version": "3.2.1",
93 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
94 "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
95 "dev": true,
96 "requires": {
97 "color-convert": "^1.9.0"
98 }
99 },
100 "argparse": {
101 "version": "1.0.10",
102 "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
103 "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
104 "dev": true,
105 "requires": {
106 "sprintf-js": "~1.0.2"
107 }
108 },
109 "azure-devops-node-api": {
110 "version": "7.2.0",
111 "resolved": "https://registry.npmjs.org/azure-devops-node-api/-/azure-devops-node-api-7.2.0.tgz",
112 "integrity": "sha512-pMfGJ6gAQ7LRKTHgiRF+8iaUUeGAI0c8puLaqHLc7B8AR7W6GJLozK9RFeUHFjEGybC9/EB3r67WPd7e46zQ8w==",
113 "dev": true,
114 "requires": {
115 "os": "0.1.1",
116 "tunnel": "0.0.4",
117 "typed-rest-client": "1.2.0",
118 "underscore": "1.8.3"
119 }
120 },
121 "balanced-match": {
122 "version": "1.0.0",
123 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
124 "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
125 "dev": true
126 },
127 "boolbase": {
128 "version": "1.0.0",
129 "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
130 "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=",
131 "dev": true
132 },
133 "brace-expansion": {
134 "version": "1.1.11",
135 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
136 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
137 "dev": true,
138 "requires": {
139 "balanced-match": "^1.0.0",
140 "concat-map": "0.0.1"
141 }
142 },
143 "buffer-crc32": {
144 "version": "0.2.13",
145 "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
146 "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
147 "dev": true
148 },
149 "builtin-modules": {
150 "version": "3.1.0",
151 "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.1.0.tgz",
152 "integrity": "sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw==",
153 "dev": true
154 },
155 "chalk": {
156 "version": "2.4.2",
157 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
158 "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
159 "dev": true,
160 "requires": {
161 "ansi-styles": "^3.2.1",
162 "escape-string-regexp": "^1.0.5",
163 "supports-color": "^5.3.0"
164 }
165 },
166 "cheerio": {
167 "version": "1.0.0-rc.3",
168 "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.3.tgz",
169 "integrity": "sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA==",
170 "dev": true,
171 "requires": {
172 "css-select": "~1.2.0",
173 "dom-serializer": "~0.1.1",
174 "entities": "~1.1.1",
175 "htmlparser2": "^3.9.1",
176 "lodash": "^4.15.0",
177 "parse5": "^3.0.1"
178 }
179 },
180 "color-convert": {
181 "version": "1.9.3",
182 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
183 "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
184 "dev": true,
185 "requires": {
186 "color-name": "1.1.3"
187 }
188 },
189 "color-name": {
190 "version": "1.1.3",
191 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
192 "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
193 "dev": true
194 },
195 "commander": {
196 "version": "2.20.3",
197 "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
198 "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
199 "dev": true
200 },
201 "concat-map": {
202 "version": "0.0.1",
203 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
204 "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
205 "dev": true
206 },
207 "css-select": {
208 "version": "1.2.0",
209 "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
210 "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=",
211 "dev": true,
212 "requires": {
213 "boolbase": "~1.0.0",
214 "css-what": "2.1",
215 "domutils": "1.5.1",
216 "nth-check": "~1.0.1"
217 }
218 },
219 "css-what": {
220 "version": "2.1.3",
221 "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz",
222 "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==",
223 "dev": true
224 },
225 "denodeify": {
226 "version": "1.2.1",
227 "resolved": "https://registry.npmjs.org/denodeify/-/denodeify-1.2.1.tgz",
228 "integrity": "sha1-OjYof1A05pnnV3kBBSwubJQlFjE=",
229 "dev": true
230 },
231 "didyoumean": {
232 "version": "1.2.1",
233 "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.1.tgz",
234 "integrity": "sha1-6S7f2tplN9SE1zwBcv0eugxJdv8=",
235 "dev": true
236 },
237 "dom-serializer": {
238 "version": "0.1.1",
239 "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz",
240 "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==",
241 "dev": true,
242 "requires": {
243 "domelementtype": "^1.3.0",
244 "entities": "^1.1.1"
245 }
246 },
247 "domelementtype": {
248 "version": "1.3.1",
249 "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
250 "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==",
251 "dev": true
252 },
253 "domhandler": {
254 "version": "2.4.2",
255 "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz",
256 "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==",
257 "dev": true,
258 "requires": {
259 "domelementtype": "1"
260 }
261 },
262 "domutils": {
263 "version": "1.5.1",
264 "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
265 "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
266 "dev": true,
267 "requires": {
268 "dom-serializer": "0",
269 "domelementtype": "1"
270 }
271 },
272 "entities": {
273 "version": "1.1.2",
274 "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
275 "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==",
276 "dev": true
277 },
278 "escape-string-regexp": {
279 "version": "1.0.5",
280 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
281 "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
282 "dev": true
283 },
284 "estree-walker": {
285 "version": "0.6.1",
286 "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz",
287 "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==",
288 "dev": true
289 },
290 "fd-slicer": {
291 "version": "1.1.0",
292 "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
293 "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=",
294 "dev": true,
295 "requires": {
296 "pend": "~1.2.0"
297 }
298 },
299 "fs.realpath": {
300 "version": "1.0.0",
301 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
302 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
303 "dev": true
304 },
305 "glob": {
306 "version": "7.1.6",
307 "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
308 "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
309 "dev": true,
310 "requires": {
311 "fs.realpath": "^1.0.0",
312 "inflight": "^1.0.4",
313 "inherits": "2",
314 "minimatch": "^3.0.4",
315 "once": "^1.3.0",
316 "path-is-absolute": "^1.0.0"
317 }
318 },
319 "has-flag": {
320 "version": "3.0.0",
321 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
322 "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
323 "dev": true
324 },
325 "htmlparser2": {
326 "version": "3.10.1",
327 "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz",
328 "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==",
329 "dev": true,
330 "requires": {
331 "domelementtype": "^1.3.1",
332 "domhandler": "^2.3.0",
333 "domutils": "^1.5.1",
334 "entities": "^1.1.1",
335 "inherits": "^2.0.1",
336 "readable-stream": "^3.1.1"
337 }
338 },
339 "inflight": {
340 "version": "1.0.6",
341 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
342 "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
343 "dev": true,
344 "requires": {
345 "once": "^1.3.0",
346 "wrappy": "1"
347 }
348 },
349 "inherits": {
350 "version": "2.0.4",
351 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
352 "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
353 "dev": true
354 },
355 "is-module": {
356 "version": "1.0.0",
357 "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz",
358 "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=",
359 "dev": true
360 },
361 "is-reference": {
362 "version": "1.1.4",
363 "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.1.4.tgz",
364 "integrity": "sha512-uJA/CDPO3Tao3GTrxYn6AwkM4nUPJiGGYu5+cB8qbC7WGFlrKZbiRo7SFKxUAEpFUfiHofWCXBUNhvYJMh+6zw==",
365 "dev": true,
366 "requires": {
367 "@types/estree": "0.0.39"
368 },
369 "dependencies": {
370 "@types/estree": {
371 "version": "0.0.39",
372 "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz",
373 "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==",
374 "dev": true
375 }
376 }
377 },
25 "jsonc-parser": { 378 "jsonc-parser": {
26 "version": "2.2.0", 379 "version": "2.2.0",
27 "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.0.tgz", 380 "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.0.tgz",
28 "integrity": "sha512-4fLQxW1j/5fWj6p78vAlAafoCKtuBm6ghv+Ij5W2DrDx0qE+ZdEl2c6Ko1mgJNF5ftX1iEWQQ4Ap7+3GlhjkOA==" 381 "integrity": "sha512-4fLQxW1j/5fWj6p78vAlAafoCKtuBm6ghv+Ij5W2DrDx0qE+ZdEl2c6Ko1mgJNF5ftX1iEWQQ4Ap7+3GlhjkOA=="
29 }, 382 },
30 "lookpath": { 383 "linkify-it": {
31 "version": "1.0.4", 384 "version": "2.2.0",
32 "resolved": "https://registry.npmjs.org/lookpath/-/lookpath-1.0.4.tgz", 385 "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz",
33 "integrity": "sha512-xVFrWlfo7n8VZs1YjBWKkbSIJU7DKE/0Mep62KeT94V1Ui1IY9w5fXfgiCsDIDZkakIYSXSeaW2FLbCqfw9/Cw==" 386 "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==",
387 "dev": true,
388 "requires": {
389 "uc.micro": "^1.0.1"
390 }
391 },
392 "lodash": {
393 "version": "4.17.15",
394 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
395 "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==",
396 "dev": true
397 },
398 "magic-string": {
399 "version": "0.25.4",
400 "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.4.tgz",
401 "integrity": "sha512-oycWO9nEVAP2RVPbIoDoA4Y7LFIJ3xRYov93gAyJhZkET1tNuB0u7uWkZS2LpBWTJUWnmau/To8ECWRC+jKNfw==",
402 "dev": true,
403 "requires": {
404 "sourcemap-codec": "^1.4.4"
405 }
406 },
407 "markdown-it": {
408 "version": "8.4.2",
409 "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz",
410 "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==",
411 "dev": true,
412 "requires": {
413 "argparse": "^1.0.7",
414 "entities": "~1.1.1",
415 "linkify-it": "^2.0.0",
416 "mdurl": "^1.0.1",
417 "uc.micro": "^1.0.5"
418 }
419 },
420 "mdurl": {
421 "version": "1.0.1",
422 "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz",
423 "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=",
424 "dev": true
425 },
426 "mime": {
427 "version": "1.6.0",
428 "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
429 "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
430 "dev": true
431 },
432 "minimatch": {
433 "version": "3.0.4",
434 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
435 "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
436 "dev": true,
437 "requires": {
438 "brace-expansion": "^1.1.7"
439 }
440 },
441 "mute-stream": {
442 "version": "0.0.8",
443 "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
444 "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
445 "dev": true
446 },
447 "nth-check": {
448 "version": "1.0.2",
449 "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
450 "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==",
451 "dev": true,
452 "requires": {
453 "boolbase": "~1.0.0"
454 }
455 },
456 "once": {
457 "version": "1.4.0",
458 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
459 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
460 "dev": true,
461 "requires": {
462 "wrappy": "1"
463 }
464 },
465 "os": {
466 "version": "0.1.1",
467 "resolved": "https://registry.npmjs.org/os/-/os-0.1.1.tgz",
468 "integrity": "sha1-IIhF6J4ZOtTZcUdLk5R3NqVtE/M=",
469 "dev": true
470 },
471 "os-homedir": {
472 "version": "1.0.2",
473 "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
474 "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
475 "dev": true
476 },
477 "os-tmpdir": {
478 "version": "1.0.2",
479 "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
480 "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
481 "dev": true
482 },
483 "osenv": {
484 "version": "0.1.5",
485 "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
486 "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
487 "dev": true,
488 "requires": {
489 "os-homedir": "^1.0.0",
490 "os-tmpdir": "^1.0.0"
491 }
492 },
493 "parse-semver": {
494 "version": "1.1.1",
495 "resolved": "https://registry.npmjs.org/parse-semver/-/parse-semver-1.1.1.tgz",
496 "integrity": "sha1-mkr9bfBj3Egm+T+6SpnPIj9mbLg=",
497 "dev": true,
498 "requires": {
499 "semver": "^5.1.0"
500 },
501 "dependencies": {
502 "semver": {
503 "version": "5.7.1",
504 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
505 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
506 "dev": true
507 }
508 }
509 },
510 "parse5": {
511 "version": "3.0.3",
512 "resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz",
513 "integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==",
514 "dev": true,
515 "requires": {
516 "@types/node": "*"
517 }
518 },
519 "path-is-absolute": {
520 "version": "1.0.1",
521 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
522 "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
523 "dev": true
524 },
525 "path-parse": {
526 "version": "1.0.6",
527 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
528 "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
529 "dev": true
530 },
531 "pend": {
532 "version": "1.2.0",
533 "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
534 "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=",
535 "dev": true
536 },
537 "read": {
538 "version": "1.0.7",
539 "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz",
540 "integrity": "sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=",
541 "dev": true,
542 "requires": {
543 "mute-stream": "~0.0.4"
544 }
545 },
546 "readable-stream": {
547 "version": "3.4.0",
548 "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz",
549 "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==",
550 "dev": true,
551 "requires": {
552 "inherits": "^2.0.3",
553 "string_decoder": "^1.1.1",
554 "util-deprecate": "^1.0.1"
555 }
556 },
557 "resolve": {
558 "version": "1.14.1",
559 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.14.1.tgz",
560 "integrity": "sha512-fn5Wobh4cxbLzuHaE+nphztHy43/b++4M6SsGFC2gB8uYwf0C8LcarfCz1un7UTW8OFQg9iNjZ4xpcFVGebDPg==",
561 "dev": true,
562 "requires": {
563 "path-parse": "^1.0.6"
564 }
565 },
566 "rollup": {
567 "version": "1.27.14",
568 "resolved": "https://registry.npmjs.org/rollup/-/rollup-1.27.14.tgz",
569 "integrity": "sha512-DuDjEyn8Y79ALYXMt+nH/EI58L5pEw5HU9K38xXdRnxQhvzUTI/nxAawhkAHUQeudANQ//8iyrhVRHJBuR6DSQ==",
570 "dev": true,
571 "requires": {
572 "@types/estree": "*",
573 "@types/node": "*",
574 "acorn": "^7.1.0"
575 }
576 },
577 "safe-buffer": {
578 "version": "5.2.0",
579 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz",
580 "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==",
581 "dev": true
34 }, 582 },
35 "seedrandom": { 583 "seedrandom": {
36 "version": "3.0.5", 584 "version": "3.0.5",
37 "resolved": "https://registry.npmjs.org/seedrandom/-/seedrandom-3.0.5.tgz", 585 "resolved": "https://registry.npmjs.org/seedrandom/-/seedrandom-3.0.5.tgz",
38 "integrity": "sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg==" 586 "integrity": "sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg=="
39 }, 587 },
588 "semver": {
589 "version": "6.3.0",
590 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
591 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
592 },
593 "sourcemap-codec": {
594 "version": "1.4.6",
595 "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.6.tgz",
596 "integrity": "sha512-1ZooVLYFxC448piVLBbtOxFcXwnymH9oUF8nRd3CuYDVvkRBxRl6pB4Mtas5a4drtL+E8LDgFkQNcgIw6tc8Hg==",
597 "dev": true
598 },
599 "sprintf-js": {
600 "version": "1.0.3",
601 "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
602 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
603 "dev": true
604 },
605 "string_decoder": {
606 "version": "1.3.0",
607 "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
608 "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
609 "dev": true,
610 "requires": {
611 "safe-buffer": "~5.2.0"
612 }
613 },
614 "supports-color": {
615 "version": "5.5.0",
616 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
617 "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
618 "dev": true,
619 "requires": {
620 "has-flag": "^3.0.0"
621 }
622 },
623 "tmp": {
624 "version": "0.0.29",
625 "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.29.tgz",
626 "integrity": "sha1-8lEl/w3Z2jzLDC3Tce4SiLuRKMA=",
627 "dev": true,
628 "requires": {
629 "os-tmpdir": "~1.0.1"
630 }
631 },
632 "tslib": {
633 "version": "1.10.0",
634 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz",
635 "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==",
636 "dev": true
637 },
638 "tunnel": {
639 "version": "0.0.4",
640 "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.4.tgz",
641 "integrity": "sha1-LTeFoVjBdMmhbcLARuxfxfF0IhM=",
642 "dev": true
643 },
644 "typed-rest-client": {
645 "version": "1.2.0",
646 "resolved": "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.2.0.tgz",
647 "integrity": "sha512-FrUshzZ1yxH8YwGR29PWWnfksLEILbWJydU7zfIRkyH7kAEzB62uMAl2WY6EyolWpLpVHeJGgQm45/MaruaHpw==",
648 "dev": true,
649 "requires": {
650 "tunnel": "0.0.4",
651 "underscore": "1.8.3"
652 }
653 },
40 "typescript": { 654 "typescript": {
41 "version": "3.7.3", 655 "version": "3.7.4",
42 "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.7.3.tgz", 656 "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.7.4.tgz",
43 "integrity": "sha512-Mcr/Qk7hXqFBXMN7p7Lusj1ktCBydylfQM/FZCk5glCNQJrCUKPkMHdo9R0MTFWsC/4kPFvDS0fDPvukfCkFsw==", 657 "integrity": "sha512-A25xv5XCtarLwXpcDNZzCGvW2D1S3/bACratYBx2sax8PefsFhlYmkQicKHvpYflFS8if4zne5zT5kpJ7pzuvw==",
44 "dev": true 658 "dev": true
45 }, 659 },
660 "uc.micro": {
661 "version": "1.0.6",
662 "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz",
663 "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==",
664 "dev": true
665 },
666 "underscore": {
667 "version": "1.8.3",
668 "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz",
669 "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=",
670 "dev": true
671 },
672 "url-join": {
673 "version": "1.1.0",
674 "resolved": "https://registry.npmjs.org/url-join/-/url-join-1.1.0.tgz",
675 "integrity": "sha1-dBxsL0WWxIMNZxhGCSDQySIC3Hg=",
676 "dev": true
677 },
678 "util-deprecate": {
679 "version": "1.0.2",
680 "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
681 "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
682 "dev": true
683 },
684 "vsce": {
685 "version": "1.71.0",
686 "resolved": "https://registry.npmjs.org/vsce/-/vsce-1.71.0.tgz",
687 "integrity": "sha512-7k+LPC4oJYPyyxs0a5nh4A8CleQ6+2EMPiAiX/bDyN+PmwJFm2FFPqLRxdIsIWfFnkW4ZMQBf10+W62dCRd9kQ==",
688 "dev": true,
689 "requires": {
690 "azure-devops-node-api": "^7.2.0",
691 "chalk": "^2.4.2",
692 "cheerio": "^1.0.0-rc.1",
693 "commander": "^2.8.1",
694 "denodeify": "^1.2.1",
695 "didyoumean": "^1.2.1",
696 "glob": "^7.0.6",
697 "lodash": "^4.17.10",
698 "markdown-it": "^8.3.1",
699 "mime": "^1.3.4",
700 "minimatch": "^3.0.3",
701 "osenv": "^0.1.3",
702 "parse-semver": "^1.1.1",
703 "read": "^1.0.7",
704 "semver": "^5.1.0",
705 "tmp": "0.0.29",
706 "typed-rest-client": "1.2.0",
707 "url-join": "^1.1.0",
708 "yauzl": "^2.3.1",
709 "yazl": "^2.2.2"
710 },
711 "dependencies": {
712 "semver": {
713 "version": "5.7.1",
714 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
715 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
716 "dev": true
717 }
718 }
719 },
46 "vscode-jsonrpc": { 720 "vscode-jsonrpc": {
47 "version": "5.0.0-next.5", 721 "version": "5.0.0-next.5",
48 "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-5.0.0-next.5.tgz", 722 "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-5.0.0-next.5.tgz",
@@ -55,13 +729,6 @@
55 "requires": { 729 "requires": {
56 "semver": "^6.3.0", 730 "semver": "^6.3.0",
57 "vscode-languageserver-protocol": "^3.15.0-next.14" 731 "vscode-languageserver-protocol": "^3.15.0-next.14"
58 },
59 "dependencies": {
60 "semver": {
61 "version": "6.3.0",
62 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
63 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
64 }
65 } 732 }
66 }, 733 },
67 "vscode-languageserver-protocol": { 734 "vscode-languageserver-protocol": {
@@ -77,6 +744,31 @@
77 "version": "3.15.0-next.9", 744 "version": "3.15.0-next.9",
78 "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.0-next.9.tgz", 745 "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.0-next.9.tgz",
79 "integrity": "sha512-Rl/8qJ6932nrHCdPn+9y0x08uLVQaSLRG+U4JzhyKpWU4eJbVaDRoAcz1Llj7CErJGbPr6kdBvShPy5fRfR+Uw==" 746 "integrity": "sha512-Rl/8qJ6932nrHCdPn+9y0x08uLVQaSLRG+U4JzhyKpWU4eJbVaDRoAcz1Llj7CErJGbPr6kdBvShPy5fRfR+Uw=="
747 },
748 "wrappy": {
749 "version": "1.0.2",
750 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
751 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
752 "dev": true
753 },
754 "yauzl": {
755 "version": "2.10.0",
756 "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
757 "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=",
758 "dev": true,
759 "requires": {
760 "buffer-crc32": "~0.2.3",
761 "fd-slicer": "~1.1.0"
762 }
763 },
764 "yazl": {
765 "version": "2.5.1",
766 "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz",
767 "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==",
768 "dev": true,
769 "requires": {
770 "buffer-crc32": "~0.2.3"
771 }
80 } 772 }
81 } 773 }
82} 774}
diff --git a/editors/code/package.json b/editors/code/package.json
index a113af4d4..8c480cc3f 100644
--- a/editors/code/package.json
+++ b/editors/code/package.json
@@ -16,21 +16,26 @@
16 "vscode": "^1.41.0" 16 "vscode": "^1.41.0"
17 }, 17 },
18 "scripts": { 18 "scripts": {
19 "vscode:prepublish": "npm run compile", 19 "vscode:prepublish": "rollup -c",
20 "compile": "tsc -p ./", 20 "package": "vsce package",
21 "watch": "tsc -watch -p ./" 21 "watch": "tsc -watch -p ./"
22 }, 22 },
23 "dependencies": { 23 "dependencies": {
24 "vscode-languageclient": "^6.0.0-next.9",
25 "jsonc-parser": "^2.1.0", 24 "jsonc-parser": "^2.1.0",
26 "lookpath": "^1.0.4", 25 "seedrandom": "^3.0.5",
27 "seedrandom": "^3.0.5" 26 "vscode-languageclient": "^6.0.0-next.9"
28 }, 27 },
29 "devDependencies": { 28 "devDependencies": {
29 "rollup": "^1.27.14",
30 "@rollup/plugin-commonjs": "^11.0.0",
31 "@rollup/plugin-node-resolve": "^6.0.0",
32 "@rollup/plugin-typescript": "^2.0.1",
33 "typescript": "^3.7.3",
34 "tslib": "^1.10.0",
35 "vsce": "^1.71.0",
30 "@types/node": "^12.12.21", 36 "@types/node": "^12.12.21",
31 "@types/vscode": "^1.41.0",
32 "@types/seedrandom": "^2.4.28", 37 "@types/seedrandom": "^2.4.28",
33 "typescript": "^3.7.3" 38 "@types/vscode": "^1.41.0"
34 }, 39 },
35 "activationEvents": [ 40 "activationEvents": [
36 "onLanguage:rust", 41 "onLanguage:rust",
diff --git a/editors/code/rollup.config.js b/editors/code/rollup.config.js
new file mode 100644
index 000000000..e4b21afbd
--- /dev/null
+++ b/editors/code/rollup.config.js
@@ -0,0 +1,25 @@
1import typescript from '@rollup/plugin-typescript';
2import resolve from '@rollup/plugin-node-resolve';
3import commonjs from '@rollup/plugin-commonjs';
4import nodeBuiltins from 'builtin-modules';
5
6export default {
7 input: 'src/extension.ts',
8 plugins: [
9 typescript(),
10 resolve({
11 preferBuiltins: true
12 }),
13 commonjs({
14 namedExports: {
15 // squelch missing import warnings
16 'vscode-languageclient': ['CreateFile', 'RenameFile']
17 }
18 })
19 ],
20 external: [...nodeBuiltins, 'vscode'],
21 output: {
22 file: './out/extension.js',
23 format: 'cjs'
24 }
25};
diff --git a/editors/code/src/server.ts b/editors/code/src/server.ts
index ae81af848..e1ad0520b 100644
--- a/editors/code/src/server.ts
+++ b/editors/code/src/server.ts
@@ -1,5 +1,4 @@
1import { lookpath } from 'lookpath'; 1import { homedir } from 'os';
2import { homedir, platform } from 'os';
3import * as lc from 'vscode-languageclient'; 2import * as lc from 'vscode-languageclient';
4 3
5import { window, workspace } from 'vscode'; 4import { window, workspace } from 'vscode';
@@ -29,15 +28,6 @@ export class Server {
29 } 28 }
30 29
31 const command = expandPathResolving(this.config.raLspServerPath); 30 const command = expandPathResolving(this.config.raLspServerPath);
32 // FIXME: remove check when the following issue is fixed:
33 // https://github.com/otiai10/lookpath/issues/4
34 if (platform() !== 'win32') {
35 if (!(await lookpath(command))) {
36 throw new Error(
37 `Cannot find rust-analyzer server \`${command}\` in PATH.`,
38 );
39 }
40 }
41 const run: lc.Executable = { 31 const run: lc.Executable = {
42 command, 32 command,
43 options: { cwd: folder }, 33 options: { cwd: folder },