|
1 | | -const fs = require('fs'); |
2 | | -const download = require('download'); |
3 | | -const decompress = require('decompress') |
4 | | -const decompressTargz = require('decompress-targz') |
5 | | -const fc = require('filecopy'); |
6 | | -const config = require('./config').default; |
7 | | -const args = process.argv; |
| 1 | +import { existsSync, mkdirSync } from "fs"; |
| 2 | +import decompress from "decompress"; |
| 3 | +import decompressTarGz from "decompress-targz"; |
| 4 | +import config from "./config.json" with { type: "json" }; |
| 5 | +import { downloadTo } from "./util.js"; |
8 | 6 |
|
9 | | -async function downloadTo(url, path) { |
10 | | - return new Promise((r, e) => { |
11 | | - const d = download(url); |
12 | | - d.then(r).catch(err => e(err)); |
13 | | - d.pipe(fs.createWriteStream(path)); |
14 | | - }); |
15 | | -} |
| 7 | +const args = process.argv; |
16 | 8 |
|
17 | 9 | async function downloadDepends() { |
18 | 10 | await Promise.all([ |
19 | | - downloadTo(`${config.emmyDebuggerUrl}/${config.emmyDebuggerVersion}/linux-x64.zip`, 'temp/linux-x64.zip'), |
20 | | - downloadTo(`${config.emmyDebuggerUrl}/${config.emmyDebuggerVersion}/darwin-arm64.zip`, 'temp/darwin-arm64.zip'), |
21 | | - downloadTo(`${config.emmyDebuggerUrl}/${config.emmyDebuggerVersion}/darwin-x64.zip`, 'temp/darwin-x64.zip'), |
22 | | - downloadTo(`${config.emmyDebuggerUrl}/${config.emmyDebuggerVersion}/win32-x86.zip`, 'temp/win32-x86.zip'), |
23 | | - downloadTo(`${config.emmyDebuggerUrl}/${config.emmyDebuggerVersion}/win32-x64.zip`, 'temp/win32-x64.zip'), |
24 | | - downloadTo(`${config.newLanguageServerUrl}/${config.newLanguageServerVersion}/${args[2]}`, `temp/${args[2]}`) |
| 11 | + downloadTo( |
| 12 | + `${config.emmyDebuggerUrl}/${config.emmyDebuggerVersion}/linux-x64.zip`, |
| 13 | + "temp/linux-x64.zip" |
| 14 | + ), |
| 15 | + downloadTo( |
| 16 | + `${config.emmyDebuggerUrl}/${config.emmyDebuggerVersion}/darwin-arm64.zip`, |
| 17 | + "temp/darwin-arm64.zip" |
| 18 | + ), |
| 19 | + downloadTo( |
| 20 | + `${config.emmyDebuggerUrl}/${config.emmyDebuggerVersion}/darwin-x64.zip`, |
| 21 | + "temp/darwin-x64.zip" |
| 22 | + ), |
| 23 | + downloadTo( |
| 24 | + `${config.emmyDebuggerUrl}/${config.emmyDebuggerVersion}/win32-x86.zip`, |
| 25 | + "temp/win32-x86.zip" |
| 26 | + ), |
| 27 | + downloadTo( |
| 28 | + `${config.emmyDebuggerUrl}/${config.emmyDebuggerVersion}/win32-x64.zip`, |
| 29 | + "temp/win32-x64.zip" |
| 30 | + ), |
| 31 | + downloadTo( |
| 32 | + `${config.newLanguageServerUrl}/${config.newLanguageServerVersion}/${args[2]}`, |
| 33 | + `temp/${args[2]}` |
| 34 | + ), |
| 35 | + downloadTo(`${newLanguageServerSchemaUrl}`, schemaPath), |
25 | 36 | ]); |
26 | 37 | } |
27 | 38 |
|
28 | 39 | async function build() { |
29 | | - if (!fs.existsSync('temp')) { |
30 | | - fs.mkdirSync('temp') |
| 40 | + if (!existsSync("temp")) { |
| 41 | + mkdirSync("temp"); |
31 | 42 | } |
32 | 43 |
|
33 | 44 | await downloadDepends(); |
34 | 45 |
|
35 | 46 | // linux |
36 | | - await decompress('temp/linux-x64.zip', 'debugger/emmy/linux/'); |
| 47 | + await decompress("temp/linux-x64.zip", "debugger/emmy/linux/"); |
37 | 48 | // mac |
38 | | - await decompress('temp/darwin-x64.zip', 'debugger/emmy/mac/x64/'); |
39 | | - await decompress('temp/darwin-arm64.zip', 'debugger/emmy/mac/arm64/'); |
| 49 | + await decompress("temp/darwin-x64.zip", "debugger/emmy/mac/x64/"); |
| 50 | + await decompress("temp/darwin-arm64.zip", "debugger/emmy/mac/arm64/"); |
40 | 51 | // win |
41 | | - await decompress('temp/win32-x86.zip', 'debugger/emmy/windows/x86/'); |
42 | | - await decompress('temp/win32-x64.zip', 'debugger/emmy/windows/x64/'); |
| 52 | + await decompress("temp/win32-x86.zip", "debugger/emmy/windows/x86/"); |
| 53 | + await decompress("temp/win32-x64.zip", "debugger/emmy/windows/x64/"); |
43 | 54 |
|
44 | 55 | // new ls |
45 | | - if (args[2].endsWith('.tar.gz')) { |
46 | | - await decompress(`temp/${args[2]}`, `server/`, { plugins: [decompressTargz()] }); |
47 | | - } else if (args[2].endsWith('.zip')) { |
| 56 | + if (args[2].endsWith(".tar.gz")) { |
| 57 | + await decompress(`temp/${args[2]}`, `server/`, { |
| 58 | + plugins: [decompressTarGz()], |
| 59 | + }); |
| 60 | + } else if (args[2].endsWith(".zip")) { |
48 | 61 | await decompress(`temp/${args[2]}`, `server/`); |
49 | 62 | } |
50 | 63 | } |
|
0 commit comments