@dcl/sdk 7.0.6-4086929545.commit-0292186 → 7.0.6-4087611163.commit-4735f5b
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cli/commands/build/helpers.d.ts +1 -5
- package/cli/commands/build/helpers.js +10 -10
- package/cli/commands/build/helpers.ts +9 -15
- package/cli/commands/build/index.d.ts +1 -1
- package/cli/commands/build/index.js +22 -17
- package/cli/commands/build/index.ts +19 -19
- package/cli/commands/init/index.d.ts +1 -1
- package/cli/commands/init/index.js +4 -4
- package/cli/commands/init/index.ts +2 -3
- package/cli/commands/preview/index.d.ts +1 -1
- package/cli/commands/preview/index.js +5 -4
- package/cli/commands/preview/index.ts +5 -3
- package/cli/commands/start/index.d.ts +1 -1
- package/cli/commands/start/index.js +12 -8
- package/cli/commands/start/index.ts +17 -7
- package/cli/index.js +38 -13
- package/cli/index.ts +20 -10
- package/cli/utils/exec.d.ts +1 -1
- package/cli/utils/exec.js +5 -6
- package/cli/utils/exec.ts +9 -5
- package/cli/utils/log.d.ts +1 -9
- package/cli/utils/log.js +14 -16
- package/cli/utils/log.ts +26 -14
- package/package.json +9 -7
- package/cli/utils/handler.d.ts +0 -6
- package/cli/utils/handler.js +0 -19
- package/cli/utils/handler.ts +0 -23
@@ -18,8 +18,4 @@ export declare const needsDependencies: (components: {
|
|
18
18
|
}, dir: string) => Promise<boolean>;
|
19
19
|
export declare const npm: string;
|
20
20
|
export declare function installDependencies(dir: string): Promise<void>;
|
21
|
-
export declare
|
22
|
-
dir: string;
|
23
|
-
watch: boolean;
|
24
|
-
production: boolean;
|
25
|
-
}) => Promise<void>;
|
21
|
+
export declare function npmRun(cwd: string, command: string, ...args: string[]): Promise<void>;
|
@@ -1,8 +1,9 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.
|
3
|
+
exports.npmRun = exports.installDependencies = exports.npm = exports.needsDependencies = exports.validatePackageJson = exports.validateProjectStructure = exports.getProjectStructure = exports.REQUIRED_PACKAGE_JSON = exports.REQUIRED_FILES = void 0;
|
4
4
|
const path_1 = require("path");
|
5
5
|
const exec_1 = require("../../utils/exec");
|
6
|
+
const log_1 = require("../../utils/log");
|
6
7
|
const object_1 = require("../../utils/object");
|
7
8
|
exports.REQUIRED_FILES = {
|
8
9
|
PACKAGE_JSON: 'package.json',
|
@@ -37,14 +38,13 @@ const needsDependencies = async (components, dir) => {
|
|
37
38
|
exports.needsDependencies = needsDependencies;
|
38
39
|
exports.npm = /^win/.test(process.platform) ? 'npm.cmd' : 'npm';
|
39
40
|
async function installDependencies(dir) {
|
40
|
-
|
41
|
+
(0, log_1.info)('Installing dependencies...');
|
42
|
+
await (0, exec_1.exec)(dir, exports.npm, ['install']);
|
43
|
+
(0, log_1.succeed)('Dependencies installed');
|
41
44
|
}
|
42
45
|
exports.installDependencies = installDependencies;
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
};
|
49
|
-
exports.buildTypescript = buildTypescript;
|
50
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0JBQThCO0FBRzlCLDJDQUF1QztBQUN2QywrQ0FBMkQ7QUFLOUMsUUFBQSxjQUFjLEdBQUc7SUFDNUIsWUFBWSxFQUFFLGNBQWM7SUFDNUIsY0FBYyxFQUFFLGVBQWU7SUFDL0IsVUFBVSxFQUFFLFlBQVk7Q0FDekIsQ0FBQTtBQUtZLFFBQUEscUJBQXFCLEdBQUcsRUFBRSxDQUFBO0FBS2hDLE1BQU0sbUJBQW1CLEdBQUcsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxzQkFBYyxDQUFDLENBQUE7QUFBekQsUUFBQSxtQkFBbUIsdUJBQXNDO0FBSy9ELE1BQU0sd0JBQXdCLEdBQUcsS0FBSyxFQUMzQyxVQUF3QyxFQUN4QyxHQUFXLEVBQ1gsUUFBa0IsRUFDQSxFQUFFO0lBQ3BCLE1BQU0sS0FBSyxHQUFHLE1BQU0sVUFBVSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDOUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUE7SUFFdkMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLElBQUksYUFBYSxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDL0QsSUFBSSxhQUFhLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQy9CLGFBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7U0FDL0I7S0FDRjtJQUVELE9BQU8sYUFBYSxDQUFDLElBQUksS0FBSyxDQUFDLENBQUE7QUFDakMsQ0FBQyxDQUFBO0FBZlksUUFBQSx3QkFBd0IsNEJBZXBDO0FBS00sTUFBTSxtQkFBbUIsR0FBRyxLQUFLLEVBQ3RDLFVBQXdDLEVBQ3hDLEdBQVcsRUFDWCxJQUFVLEVBQ1EsRUFBRTtJQUNwQixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sVUFBVSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBQSxjQUFPLEVBQUMsR0FBRyxFQUFFLHNCQUFjLENBQUMsWUFBWSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQTtJQUNoSCxPQUFPLElBQUEseUJBQWdCLEVBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFBO0FBQzVDLENBQUMsQ0FBQTtBQVBZLFFBQUEsbUJBQW1CLHVCQU8vQjtBQUtNLE1BQU0saUJBQWlCLEdBQUcsS0FBSyxFQUFFLFVBQXdDLEVBQUUsR0FBVyxFQUFvQixFQUFFO0lBQ2pILE1BQU0sZUFBZSxHQUFHLElBQUEsY0FBTyxFQUFDLEdBQUcsRUFBRSxjQUFjLENBQUMsQ0FBQTtJQUNwRCxNQUFNLG9CQUFvQixHQUFHLE1BQU0sVUFBVSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLENBQUE7SUFDM0UsTUFBTSxrQkFBa0IsR0FBRyxvQkFBb0IsSUFBSSxDQUFDLE1BQU0sVUFBVSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFBO0lBRTlHLE9BQU8sQ0FBQyxvQkFBb0IsSUFBSSxrQkFBa0IsQ0FBQTtBQUNwRCxDQUFDLENBQUE7QUFOWSxRQUFBLGlCQUFpQixxQkFNN0I7QUFHWSxRQUFBLEdBQUcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUE7QUFLN0QsS0FBSyxVQUFVLG1CQUFtQixDQUFDLEdBQVc7SUFDbkQsTUFBTSxJQUFBLFdBQUksRUFBQyxHQUFHLEVBQUUsR0FBRyxXQUFHLFVBQVUsQ0FBQyxDQUFBO0FBQ25DLENBQUM7QUFGRCxrREFFQztBQUtNLE1BQU0sZUFBZSxHQUFHLEtBQUssRUFBRSxFQUNwQyxHQUFHLEVBQ0gsS0FBSyxFQUNMLFVBQVUsRUFLWCxFQUFpQixFQUFFO0lBQ2xCLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUE7SUFDekMsTUFBTSxJQUFBLFdBQUksRUFBQyxHQUFHLEVBQUUsR0FBRyxXQUFHLFFBQVEsT0FBTyxFQUFFLEVBQUU7UUFDdkMsR0FBRyxFQUFFLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7S0FDbEQsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBYlksUUFBQSxlQUFlLG1CQWEzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlc29sdmUgfSBmcm9tICdwYXRoJ1xuXG5pbXBvcnQgeyBJRmlsZVN5c3RlbUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvZnMnXG5pbXBvcnQgeyBleGVjIH0gZnJvbSAnLi4vLi4vdXRpbHMvZXhlYydcbmltcG9ydCB7IERpY3QsIGhhc1ByaW1pdGl2ZUtleXMgfSBmcm9tICcuLi8uLi91dGlscy9vYmplY3QnXG5cbi8qKlxuICogUmVxdWlyZWQgcHJvamVjdCBkaXJzL2ZpbGVzXG4gKi9cbmV4cG9ydCBjb25zdCBSRVFVSVJFRF9GSUxFUyA9IHtcbiAgUEFDS0FHRV9KU09OOiAncGFja2FnZS5qc29uJyxcbiAgVFNfQ09ORklHX0pTT046ICd0c2NvbmZpZy5qc29uJyxcbiAgU0NFTkVfSlNPTjogJ3NjZW5lLmpzb24nXG59XG5cbi8qKlxuICogUmVxdWlyZWQgXCJwYWNrYWdlLmpzb25cIiBzdHJ1Y3R1cmVcbiAqL1xuZXhwb3J0IGNvbnN0IFJFUVVJUkVEX1BBQ0tBR0VfSlNPTiA9IHt9XG5cbi8qKlxuICogUmV0dXJucyB0aGUgcmVxdWlyZWQgZmlsZXMgZm9yIGEgcHJvamVjdFxuICovXG5leHBvcnQgY29uc3QgZ2V0UHJvamVjdFN0cnVjdHVyZSA9ICgpID0+IE9iamVjdC52YWx1ZXMoUkVRVUlSRURfRklMRVMpXG5cbi8qKlxuICogUmV0dXJucyB0cnVlIGlmIHRoZSBwcm9qZWN0IGZvbGxvd3MgYSB2YWxpZCBzY2VuZSBzdHJ1Y3R1cmVcbiAqL1xuZXhwb3J0IGNvbnN0IHZhbGlkYXRlUHJvamVjdFN0cnVjdHVyZSA9IGFzeW5jIChcbiAgY29tcG9uZW50czogeyBmczogSUZpbGVTeXN0ZW1Db21wb25lbnQgfSxcbiAgZGlyOiBzdHJpbmcsXG4gIGZpbGVMaXN0OiBzdHJpbmdbXVxuKTogUHJvbWlzZTxib29sZWFuPiA9PiB7XG4gIGNvbnN0IGZpbGVzID0gYXdhaXQgY29tcG9uZW50cy5mcy5yZWFkZGlyKGRpcilcbiAgY29uc3QgcmVxdWlyZWRGaWxlcyA9IG5ldyBTZXQoZmlsZUxpc3QpXG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaWxlcy5sZW5ndGggJiYgcmVxdWlyZWRGaWxlcy5zaXplID4gMDsgaSsrKSB7XG4gICAgaWYgKHJlcXVpcmVkRmlsZXMuaGFzKGZpbGVzW2ldKSkge1xuICAgICAgcmVxdWlyZWRGaWxlcy5kZWxldGUoZmlsZXNbaV0pXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHJlcXVpcmVkRmlsZXMuc2l6ZSA9PT0gMFxufVxuXG4vKipcbiAqIFJldHVybnMgdHJ1ZSBpZiB0aGUgcHJvamVjdCdzIFwicGFja2FnZS5qc29uXCIgaXMgdmFsaWRcbiAqL1xuZXhwb3J0IGNvbnN0IHZhbGlkYXRlUGFja2FnZUpzb24gPSBhc3luYyAoXG4gIGNvbXBvbmVudHM6IHsgZnM6IElGaWxlU3lzdGVtQ29tcG9uZW50IH0sXG4gIGRpcjogc3RyaW5nLFxuICBkZXBzOiBEaWN0XG4pOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgY29uc3QgcGFja2FnZUpzb24gPSBKU09OLnBhcnNlKGF3YWl0IGNvbXBvbmVudHMuZnMucmVhZEZpbGUocmVzb2x2ZShkaXIsIFJFUVVJUkVEX0ZJTEVTLlBBQ0tBR0VfSlNPTiksICd1dGYtOCcpKVxuICByZXR1cm4gaGFzUHJpbWl0aXZlS2V5cyhwYWNrYWdlSnNvbiwgZGVwcylcbn1cblxuLypcbiAqIFJldHVybnMgdHJ1ZSBpZiB0aGUgcHJvamVjdCBjb250YWlucyBhbiBlbXB0eSBub2RlX21vZHVsZXMgZm9sZGVyXG4gKi9cbmV4cG9ydCBjb25zdCBuZWVkc0RlcGVuZGVuY2llcyA9IGFzeW5jIChjb21wb25lbnRzOiB7IGZzOiBJRmlsZVN5c3RlbUNvbXBvbmVudCB9LCBkaXI6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4gPT4ge1xuICBjb25zdCBub2RlTW9kdWxlc1BhdGggPSByZXNvbHZlKGRpciwgJ25vZGVfbW9kdWxlcycpXG4gIGNvbnN0IGhhc05vZGVNb2R1bGVzRm9sZGVyID0gYXdhaXQgY29tcG9uZW50cy5mcy5leGlzdFBhdGgobm9kZU1vZHVsZXNQYXRoKVxuICBjb25zdCBpc05vZGVNb2R1bGVzRW1wdHkgPSBoYXNOb2RlTW9kdWxlc0ZvbGRlciAmJiAoYXdhaXQgY29tcG9uZW50cy5mcy5yZWFkZGlyKG5vZGVNb2R1bGVzUGF0aCkpLmxlbmd0aCA9PT0gMFxuXG4gIHJldHVybiAhaGFzTm9kZU1vZHVsZXNGb2xkZXIgfHwgaXNOb2RlTW9kdWxlc0VtcHR5XG59XG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5leHBvcnQgY29uc3QgbnBtID0gL153aW4vLnRlc3QocHJvY2Vzcy5wbGF0Zm9ybSkgPyAnbnBtLmNtZCcgOiAnbnBtJ1xuXG4vKlxuICogUnVucyBcIm5wbSBpbnN0YWxsXCIgZm9yIGRlc2lyZWQgcHJvamVjdFxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaW5zdGFsbERlcGVuZGVuY2llcyhkaXI6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBleGVjKGRpciwgYCR7bnBtfSBpbnN0YWxsYClcbn1cblxuLyoqXG4gKiBCdWlsZCdzIFR5cGVzY3JpcHQgdXNpbmcgXCJ0c2NvbmZpZy5qc29uXCIgZmlsZVxuICovXG5leHBvcnQgY29uc3QgYnVpbGRUeXBlc2NyaXB0ID0gYXN5bmMgKHtcbiAgZGlyLFxuICB3YXRjaCxcbiAgcHJvZHVjdGlvblxufToge1xuICBkaXI6IHN0cmluZ1xuICB3YXRjaDogYm9vbGVhblxuICBwcm9kdWN0aW9uOiBib29sZWFuXG59KTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGNvbnN0IGNvbW1hbmQgPSB3YXRjaCA/ICd3YXRjaCcgOiAnYnVpbGQnXG4gIGF3YWl0IGV4ZWMoZGlyLCBgJHtucG19IHJ1biAke2NvbW1hbmR9YCwge1xuICAgIGVudjogeyBOT0RFX0VOVjogcHJvZHVjdGlvbiA/ICdwcm9kdWN0aW9uJyA6ICcnIH1cbiAgfSlcbn1cbiJdfQ==
|
46
|
+
async function npmRun(cwd, command, ...args) {
|
47
|
+
await (0, exec_1.exec)(cwd, exports.npm, ['run', command, '--silent', '--', ...args], { env: process.env });
|
48
|
+
}
|
49
|
+
exports.npmRun = npmRun;
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0JBQThCO0FBRzlCLDJDQUF1QztBQUN2Qyx5Q0FBK0M7QUFDL0MsK0NBQTJEO0FBSzlDLFFBQUEsY0FBYyxHQUFHO0lBQzVCLFlBQVksRUFBRSxjQUFjO0lBQzVCLGNBQWMsRUFBRSxlQUFlO0lBQy9CLFVBQVUsRUFBRSxZQUFZO0NBQ3pCLENBQUE7QUFLWSxRQUFBLHFCQUFxQixHQUFHLEVBQUUsQ0FBQTtBQUtoQyxNQUFNLG1CQUFtQixHQUFHLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsc0JBQWMsQ0FBQyxDQUFBO0FBQXpELFFBQUEsbUJBQW1CLHVCQUFzQztBQUsvRCxNQUFNLHdCQUF3QixHQUFHLEtBQUssRUFDM0MsVUFBd0MsRUFDeEMsR0FBVyxFQUNYLFFBQWtCLEVBQ0EsRUFBRTtJQUNwQixNQUFNLEtBQUssR0FBRyxNQUFNLFVBQVUsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQzlDLE1BQU0sYUFBYSxHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBRXZDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxJQUFJLGFBQWEsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQy9ELElBQUksYUFBYSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUMvQixhQUFhLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1NBQy9CO0tBQ0Y7SUFFRCxPQUFPLGFBQWEsQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFBO0FBQ2pDLENBQUMsQ0FBQTtBQWZZLFFBQUEsd0JBQXdCLDRCQWVwQztBQUtNLE1BQU0sbUJBQW1CLEdBQUcsS0FBSyxFQUN0QyxVQUF3QyxFQUN4QyxHQUFXLEVBQ1gsSUFBVSxFQUNRLEVBQUU7SUFDcEIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLFVBQVUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUEsY0FBTyxFQUFDLEdBQUcsRUFBRSxzQkFBYyxDQUFDLFlBQVksQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUE7SUFDaEgsT0FBTyxJQUFBLHlCQUFnQixFQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQTtBQUM1QyxDQUFDLENBQUE7QUFQWSxRQUFBLG1CQUFtQix1QkFPL0I7QUFLTSxNQUFNLGlCQUFpQixHQUFHLEtBQUssRUFBRSxVQUF3QyxFQUFFLEdBQVcsRUFBb0IsRUFBRTtJQUNqSCxNQUFNLGVBQWUsR0FBRyxJQUFBLGNBQU8sRUFBQyxHQUFHLEVBQUUsY0FBYyxDQUFDLENBQUE7SUFDcEQsTUFBTSxvQkFBb0IsR0FBRyxNQUFNLFVBQVUsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxDQUFBO0lBQzNFLE1BQU0sa0JBQWtCLEdBQUcsb0JBQW9CLElBQUksQ0FBQyxNQUFNLFVBQVUsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQTtJQUU5RyxPQUFPLENBQUMsb0JBQW9CLElBQUksa0JBQWtCLENBQUE7QUFDcEQsQ0FBQyxDQUFBO0FBTlksUUFBQSxpQkFBaUIscUJBTTdCO0FBR1ksUUFBQSxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFBO0FBSzdELEtBQUssVUFBVSxtQkFBbUIsQ0FBQyxHQUFXO0lBQ25ELElBQUEsVUFBSSxFQUFDLDRCQUE0QixDQUFDLENBQUE7SUFFbEMsTUFBTSxJQUFBLFdBQUksRUFBQyxHQUFHLEVBQUUsV0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQTtJQUNqQyxJQUFBLGFBQU8sRUFBQyx3QkFBd0IsQ0FBQyxDQUFBO0FBQ25DLENBQUM7QUFMRCxrREFLQztBQUtNLEtBQUssVUFBVSxNQUFNLENBQUMsR0FBVyxFQUFFLE9BQWUsRUFBRSxHQUFHLElBQWM7SUFFMUUsTUFBTSxJQUFBLFdBQUksRUFBQyxHQUFHLEVBQUUsV0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQVUsRUFBRSxDQUFDLENBQUE7QUFDaEcsQ0FBQztBQUhELHdCQUdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVzb2x2ZSB9IGZyb20gJ3BhdGgnXG5cbmltcG9ydCB7IElGaWxlU3lzdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9mcydcbmltcG9ydCB7IGV4ZWMgfSBmcm9tICcuLi8uLi91dGlscy9leGVjJ1xuaW1wb3J0IHsgaW5mbywgc3VjY2VlZCB9IGZyb20gJy4uLy4uL3V0aWxzL2xvZydcbmltcG9ydCB7IERpY3QsIGhhc1ByaW1pdGl2ZUtleXMgfSBmcm9tICcuLi8uLi91dGlscy9vYmplY3QnXG5cbi8qKlxuICogUmVxdWlyZWQgcHJvamVjdCBkaXJzL2ZpbGVzXG4gKi9cbmV4cG9ydCBjb25zdCBSRVFVSVJFRF9GSUxFUyA9IHtcbiAgUEFDS0FHRV9KU09OOiAncGFja2FnZS5qc29uJyxcbiAgVFNfQ09ORklHX0pTT046ICd0c2NvbmZpZy5qc29uJyxcbiAgU0NFTkVfSlNPTjogJ3NjZW5lLmpzb24nXG59XG5cbi8qKlxuICogUmVxdWlyZWQgXCJwYWNrYWdlLmpzb25cIiBzdHJ1Y3R1cmVcbiAqL1xuZXhwb3J0IGNvbnN0IFJFUVVJUkVEX1BBQ0tBR0VfSlNPTiA9IHt9XG5cbi8qKlxuICogUmV0dXJucyB0aGUgcmVxdWlyZWQgZmlsZXMgZm9yIGEgcHJvamVjdFxuICovXG5leHBvcnQgY29uc3QgZ2V0UHJvamVjdFN0cnVjdHVyZSA9ICgpID0+IE9iamVjdC52YWx1ZXMoUkVRVUlSRURfRklMRVMpXG5cbi8qKlxuICogUmV0dXJucyB0cnVlIGlmIHRoZSBwcm9qZWN0IGZvbGxvd3MgYSB2YWxpZCBzY2VuZSBzdHJ1Y3R1cmVcbiAqL1xuZXhwb3J0IGNvbnN0IHZhbGlkYXRlUHJvamVjdFN0cnVjdHVyZSA9IGFzeW5jIChcbiAgY29tcG9uZW50czogeyBmczogSUZpbGVTeXN0ZW1Db21wb25lbnQgfSxcbiAgZGlyOiBzdHJpbmcsXG4gIGZpbGVMaXN0OiBzdHJpbmdbXVxuKTogUHJvbWlzZTxib29sZWFuPiA9PiB7XG4gIGNvbnN0IGZpbGVzID0gYXdhaXQgY29tcG9uZW50cy5mcy5yZWFkZGlyKGRpcilcbiAgY29uc3QgcmVxdWlyZWRGaWxlcyA9IG5ldyBTZXQoZmlsZUxpc3QpXG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaWxlcy5sZW5ndGggJiYgcmVxdWlyZWRGaWxlcy5zaXplID4gMDsgaSsrKSB7XG4gICAgaWYgKHJlcXVpcmVkRmlsZXMuaGFzKGZpbGVzW2ldKSkge1xuICAgICAgcmVxdWlyZWRGaWxlcy5kZWxldGUoZmlsZXNbaV0pXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHJlcXVpcmVkRmlsZXMuc2l6ZSA9PT0gMFxufVxuXG4vKipcbiAqIFJldHVybnMgdHJ1ZSBpZiB0aGUgcHJvamVjdCdzIFwicGFja2FnZS5qc29uXCIgaXMgdmFsaWRcbiAqL1xuZXhwb3J0IGNvbnN0IHZhbGlkYXRlUGFja2FnZUpzb24gPSBhc3luYyAoXG4gIGNvbXBvbmVudHM6IHsgZnM6IElGaWxlU3lzdGVtQ29tcG9uZW50IH0sXG4gIGRpcjogc3RyaW5nLFxuICBkZXBzOiBEaWN0XG4pOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgY29uc3QgcGFja2FnZUpzb24gPSBKU09OLnBhcnNlKGF3YWl0IGNvbXBvbmVudHMuZnMucmVhZEZpbGUocmVzb2x2ZShkaXIsIFJFUVVJUkVEX0ZJTEVTLlBBQ0tBR0VfSlNPTiksICd1dGYtOCcpKVxuICByZXR1cm4gaGFzUHJpbWl0aXZlS2V5cyhwYWNrYWdlSnNvbiwgZGVwcylcbn1cblxuLypcbiAqIFJldHVybnMgdHJ1ZSBpZiB0aGUgcHJvamVjdCBjb250YWlucyBhbiBlbXB0eSBub2RlX21vZHVsZXMgZm9sZGVyXG4gKi9cbmV4cG9ydCBjb25zdCBuZWVkc0RlcGVuZGVuY2llcyA9IGFzeW5jIChjb21wb25lbnRzOiB7IGZzOiBJRmlsZVN5c3RlbUNvbXBvbmVudCB9LCBkaXI6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4gPT4ge1xuICBjb25zdCBub2RlTW9kdWxlc1BhdGggPSByZXNvbHZlKGRpciwgJ25vZGVfbW9kdWxlcycpXG4gIGNvbnN0IGhhc05vZGVNb2R1bGVzRm9sZGVyID0gYXdhaXQgY29tcG9uZW50cy5mcy5leGlzdFBhdGgobm9kZU1vZHVsZXNQYXRoKVxuICBjb25zdCBpc05vZGVNb2R1bGVzRW1wdHkgPSBoYXNOb2RlTW9kdWxlc0ZvbGRlciAmJiAoYXdhaXQgY29tcG9uZW50cy5mcy5yZWFkZGlyKG5vZGVNb2R1bGVzUGF0aCkpLmxlbmd0aCA9PT0gMFxuXG4gIHJldHVybiAhaGFzTm9kZU1vZHVsZXNGb2xkZXIgfHwgaXNOb2RlTW9kdWxlc0VtcHR5XG59XG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5leHBvcnQgY29uc3QgbnBtID0gL153aW4vLnRlc3QocHJvY2Vzcy5wbGF0Zm9ybSkgPyAnbnBtLmNtZCcgOiAnbnBtJ1xuXG4vKlxuICogUnVucyBcIm5wbSBpbnN0YWxsXCIgZm9yIGRlc2lyZWQgcHJvamVjdFxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaW5zdGFsbERlcGVuZGVuY2llcyhkaXI6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICBpbmZvKCdJbnN0YWxsaW5nIGRlcGVuZGVuY2llcy4uLicpXG4gIC8vIFRPRE86IHRlc3QgaW4gd2luZG93c1xuICBhd2FpdCBleGVjKGRpciwgbnBtLCBbJ2luc3RhbGwnXSlcbiAgc3VjY2VlZCgnRGVwZW5kZW5jaWVzIGluc3RhbGxlZCcpXG59XG5cbi8qKlxuICogUnVuIE5QTSBjb21tYW5kc1xuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbnBtUnVuKGN3ZDogc3RyaW5nLCBjb21tYW5kOiBzdHJpbmcsIC4uLmFyZ3M6IHN0cmluZ1tdKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vIFRPRE86IHRlc3QgaW4gd2luZG93c1xuICBhd2FpdCBleGVjKGN3ZCwgbnBtLCBbJ3J1bicsIGNvbW1hbmQsICctLXNpbGVudCcsICctLScsIC4uLmFyZ3NdLCB7IGVudjogcHJvY2Vzcy5lbnYgYXMgYW55IH0pXG59XG4iXX0=
|
@@ -2,6 +2,7 @@ import { resolve } from 'path'
|
|
2
2
|
|
3
3
|
import { IFileSystemComponent } from '../../components/fs'
|
4
4
|
import { exec } from '../../utils/exec'
|
5
|
+
import { info, succeed } from '../../utils/log'
|
5
6
|
import { Dict, hasPrimitiveKeys } from '../../utils/object'
|
6
7
|
|
7
8
|
/**
|
@@ -73,23 +74,16 @@ export const npm = /^win/.test(process.platform) ? 'npm.cmd' : 'npm'
|
|
73
74
|
* Runs "npm install" for desired project
|
74
75
|
*/
|
75
76
|
export async function installDependencies(dir: string): Promise<void> {
|
76
|
-
|
77
|
+
info('Installing dependencies...')
|
78
|
+
// TODO: test in windows
|
79
|
+
await exec(dir, npm, ['install'])
|
80
|
+
succeed('Dependencies installed')
|
77
81
|
}
|
78
82
|
|
79
83
|
/**
|
80
|
-
*
|
84
|
+
* Run NPM commands
|
81
85
|
*/
|
82
|
-
export
|
83
|
-
|
84
|
-
|
85
|
-
production
|
86
|
-
}: {
|
87
|
-
dir: string
|
88
|
-
watch: boolean
|
89
|
-
production: boolean
|
90
|
-
}): Promise<void> => {
|
91
|
-
const command = watch ? 'watch' : 'build'
|
92
|
-
await exec(dir, `${npm} run ${command}`, {
|
93
|
-
env: { NODE_ENV: production ? 'production' : '' }
|
94
|
-
})
|
86
|
+
export async function npmRun(cwd: string, command: string, ...args: string[]): Promise<void> {
|
87
|
+
// TODO: test in windows
|
88
|
+
await exec(cwd, npm, ['run', command, '--silent', '--', ...args], { env: process.env as any })
|
95
89
|
}
|
@@ -15,5 +15,5 @@ export declare const args: import("arg").Result<{
|
|
15
15
|
'--dir': StringConstructor;
|
16
16
|
}>;
|
17
17
|
export declare function help(): string;
|
18
|
-
export declare
|
18
|
+
export declare function main(options: Options): Promise<void>;
|
19
19
|
export {};
|
@@ -1,14 +1,16 @@
|
|
1
1
|
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
6
|
exports.main = exports.help = exports.args = void 0;
|
4
7
|
const path_1 = require("path");
|
5
8
|
const out_messages_1 = require("../../utils/out-messages");
|
6
|
-
const log_1 = require("../../utils/log");
|
7
9
|
const args_1 = require("../../utils/args");
|
8
10
|
const error_1 = require("../../utils/error");
|
11
|
+
const compile_1 = require("@dcl/dcl-rollup/compile");
|
12
|
+
const fp_future_1 = __importDefault(require("fp-future"));
|
9
13
|
const helpers_1 = require("./helpers");
|
10
|
-
const handler_1 = require("../../utils/handler");
|
11
|
-
const console_1 = require("console");
|
12
14
|
exports.args = (0, args_1.getArgs)({
|
13
15
|
'--watch': Boolean,
|
14
16
|
'-w': '--watch',
|
@@ -19,7 +21,7 @@ exports.args = (0, args_1.getArgs)({
|
|
19
21
|
});
|
20
22
|
function help() {
|
21
23
|
return `
|
22
|
-
Usage: 'dcl build [options]'
|
24
|
+
Usage: 'dcl-commands build [options]'
|
23
25
|
Options:'
|
24
26
|
-h, --help Displays complete help
|
25
27
|
-w, --watch Watch for file changes and build on change
|
@@ -29,11 +31,11 @@ function help() {
|
|
29
31
|
|
30
32
|
Example:
|
31
33
|
- Build your scene:
|
32
|
-
'$ dcl build'
|
34
|
+
'$ dcl-commands build'
|
33
35
|
`;
|
34
36
|
}
|
35
37
|
exports.help = help;
|
36
|
-
|
38
|
+
async function main(options) {
|
37
39
|
const dir = (0, path_1.resolve)(process.cwd(), options.args['--dir'] || '.');
|
38
40
|
const projectStructure = (0, helpers_1.getProjectStructure)();
|
39
41
|
const hasValidProjectStructure = await (0, helpers_1.validateProjectStructure)(options.components, dir, projectStructure);
|
@@ -41,24 +43,27 @@ exports.main = (0, handler_1.main)(async function main(options) {
|
|
41
43
|
throw new error_1.CliError(`Invalid scene structure found. Required files:
|
42
44
|
${(0, out_messages_1.toStringList)(projectStructure)}`);
|
43
45
|
}
|
44
|
-
(0, log_1.succeed)('Project has a valid structure');
|
45
46
|
const hasValidPackageJson = await (0, helpers_1.validatePackageJson)(options.components, dir, helpers_1.REQUIRED_PACKAGE_JSON);
|
46
47
|
if (!hasValidPackageJson) {
|
47
48
|
throw new error_1.CliError(`Invalid "package.json" file. Structure required:
|
48
49
|
${JSON.stringify(helpers_1.REQUIRED_PACKAGE_JSON, null, 2)}`);
|
49
50
|
}
|
50
|
-
(0, log_1.succeed)('Project has a valid "package.json"');
|
51
51
|
const shouldInstallDeps = await (0, helpers_1.needsDependencies)(options.components, dir);
|
52
52
|
if (shouldInstallDeps && !options.args['--skip-install']) {
|
53
|
-
(0, console_1.info)('Installing dependencies...');
|
54
53
|
await (0, helpers_1.installDependencies)(dir);
|
55
54
|
}
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
55
|
+
const watch = !!options.args['--watch'];
|
56
|
+
const watchingFuture = (0, fp_future_1.default)();
|
57
|
+
await (0, compile_1.compile)({
|
58
|
+
project: dir,
|
59
|
+
watch,
|
60
|
+
production: !!options.args['--production'],
|
61
|
+
watchingFuture
|
61
62
|
});
|
62
|
-
|
63
|
-
|
64
|
-
|
63
|
+
if (!watch) {
|
64
|
+
watchingFuture.resolve(null);
|
65
|
+
}
|
66
|
+
await watchingFuture;
|
67
|
+
}
|
68
|
+
exports.main = main;
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSwrQkFBOEI7QUFHOUIsMkRBQXVEO0FBQ3ZELDJDQUEwQztBQUMxQyw2Q0FBNEM7QUFDNUMscURBQWlEO0FBQ2pELDBEQUE4QjtBQUM5Qix1Q0FPa0I7QUFPTCxRQUFBLElBQUksR0FBRyxJQUFBLGNBQU8sRUFBQztJQUMxQixTQUFTLEVBQUUsT0FBTztJQUNsQixJQUFJLEVBQUUsU0FBUztJQUNmLGNBQWMsRUFBRSxPQUFPO0lBQ3ZCLElBQUksRUFBRSxjQUFjO0lBQ3BCLGdCQUFnQixFQUFFLE9BQU87SUFDekIsT0FBTyxFQUFFLE1BQU07Q0FDaEIsQ0FBQyxDQUFBO0FBRUYsU0FBZ0IsSUFBSTtJQUNsQixPQUFPOzs7Ozs7Ozs7Ozs7R0FZTixDQUFBO0FBQ0gsQ0FBQztBQWRELG9CQWNDO0FBRU0sS0FBSyxVQUFVLElBQUksQ0FBQyxPQUFnQjtJQUN6QyxNQUFNLEdBQUcsR0FBRyxJQUFBLGNBQU8sRUFBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQTtJQUNoRSxNQUFNLGdCQUFnQixHQUFHLElBQUEsNkJBQW1CLEdBQUUsQ0FBQTtJQUU5QyxNQUFNLHdCQUF3QixHQUFHLE1BQU0sSUFBQSxrQ0FBd0IsRUFBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFBO0lBRTFHLElBQUksQ0FBQyx3QkFBd0IsRUFBRTtRQUM3QixNQUFNLElBQUksZ0JBQVEsQ0FBQztRQUNmLElBQUEsMkJBQVksRUFBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQTtLQUN0QztJQUVELE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxJQUFBLDZCQUFtQixFQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsR0FBRyxFQUFFLCtCQUFxQixDQUFDLENBQUE7SUFFckcsSUFBSSxDQUFDLG1CQUFtQixFQUFFO1FBQ3hCLE1BQU0sSUFBSSxnQkFBUSxDQUFDO1FBQ2YsSUFBSSxDQUFDLFNBQVMsQ0FBQywrQkFBcUIsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFBO0tBQ3REO0lBRUQsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLElBQUEsMkJBQWlCLEVBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQTtJQUUxRSxJQUFJLGlCQUFpQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO1FBQ3hELE1BQU0sSUFBQSw2QkFBbUIsRUFBQyxHQUFHLENBQUMsQ0FBQTtLQUMvQjtJQUVELE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBRXZDLE1BQU0sY0FBYyxHQUFHLElBQUEsbUJBQU0sR0FBTyxDQUFBO0lBRXBDLE1BQU0sSUFBQSxpQkFBTyxFQUFDO1FBQ1osT0FBTyxFQUFFLEdBQUc7UUFDWixLQUFLO1FBQ0wsVUFBVSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUMxQyxjQUFjO0tBQ2YsQ0FBQyxDQUFBO0lBRUYsSUFBSSxDQUFDLEtBQUssRUFBRTtRQUNWLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7S0FDN0I7SUFFRCxNQUFNLGNBQWMsQ0FBQTtBQUl0QixDQUFDO0FBM0NELG9CQTJDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlc29sdmUgfSBmcm9tICdwYXRoJ1xuXG5pbXBvcnQgeyBDbGlDb21wb25lbnRzIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cydcbmltcG9ydCB7IHRvU3RyaW5nTGlzdCB9IGZyb20gJy4uLy4uL3V0aWxzL291dC1tZXNzYWdlcydcbmltcG9ydCB7IGdldEFyZ3MgfSBmcm9tICcuLi8uLi91dGlscy9hcmdzJ1xuaW1wb3J0IHsgQ2xpRXJyb3IgfSBmcm9tICcuLi8uLi91dGlscy9lcnJvcidcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICdAZGNsL2RjbC1yb2xsdXAvY29tcGlsZSdcbmltcG9ydCBmdXR1cmUgZnJvbSAnZnAtZnV0dXJlJ1xuaW1wb3J0IHtcbiAgZ2V0UHJvamVjdFN0cnVjdHVyZSxcbiAgaW5zdGFsbERlcGVuZGVuY2llcyxcbiAgbmVlZHNEZXBlbmRlbmNpZXMsXG4gIHZhbGlkYXRlUHJvamVjdFN0cnVjdHVyZSxcbiAgdmFsaWRhdGVQYWNrYWdlSnNvbixcbiAgUkVRVUlSRURfUEFDS0FHRV9KU09OXG59IGZyb20gJy4vaGVscGVycydcblxuaW50ZXJmYWNlIE9wdGlvbnMge1xuICBhcmdzOiBPbWl0PHR5cGVvZiBhcmdzLCAnXyc+XG4gIGNvbXBvbmVudHM6IFBpY2s8Q2xpQ29tcG9uZW50cywgJ2ZzJz5cbn1cblxuZXhwb3J0IGNvbnN0IGFyZ3MgPSBnZXRBcmdzKHtcbiAgJy0td2F0Y2gnOiBCb29sZWFuLFxuICAnLXcnOiAnLS13YXRjaCcsXG4gICctLXByb2R1Y3Rpb24nOiBCb29sZWFuLFxuICAnLXAnOiAnLS1wcm9kdWN0aW9uJyxcbiAgJy0tc2tpcC1pbnN0YWxsJzogQm9vbGVhbixcbiAgJy0tZGlyJzogU3RyaW5nXG59KVxuXG5leHBvcnQgZnVuY3Rpb24gaGVscCgpIHtcbiAgcmV0dXJuIGBcbiAgVXNhZ2U6ICdkY2wtY29tbWFuZHMgYnVpbGQgW29wdGlvbnNdJ1xuICAgIE9wdGlvbnM6J1xuICAgICAgLWgsIC0taGVscCAgICAgICAgICAgICAgICBEaXNwbGF5cyBjb21wbGV0ZSBoZWxwXG4gICAgICAtdywgLS13YXRjaCAgICAgICAgICAgICAgIFdhdGNoIGZvciBmaWxlIGNoYW5nZXMgYW5kIGJ1aWxkIG9uIGNoYW5nZVxuICAgICAgLXAsIC0tcHJvZHVjdGlvbiAgICAgICAgICBCdWlsZCB3aXRob3V0IHNvdXJjZW1hcHNcbiAgICAgIC0tc2tpcC1pbnN0YWxsICAgICAgICAgICAgU2tpcCBpbnN0YWxsaW5nIGRlcGVuZGVuY2llc1xuICAgICAgLS1kaXIgICAgICAgICAgICAgICAgICAgICBQYXRoIHRvIGRpcmVjdG9yeSB0byBidWlsZFxuXG4gICAgRXhhbXBsZTpcbiAgICAtIEJ1aWxkIHlvdXIgc2NlbmU6XG4gICAgICAnJCBkY2wtY29tbWFuZHMgYnVpbGQnXG4gIGBcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG1haW4ob3B0aW9uczogT3B0aW9ucykge1xuICBjb25zdCBkaXIgPSByZXNvbHZlKHByb2Nlc3MuY3dkKCksIG9wdGlvbnMuYXJnc1snLS1kaXInXSB8fCAnLicpXG4gIGNvbnN0IHByb2plY3RTdHJ1Y3R1cmUgPSBnZXRQcm9qZWN0U3RydWN0dXJlKClcblxuICBjb25zdCBoYXNWYWxpZFByb2plY3RTdHJ1Y3R1cmUgPSBhd2FpdCB2YWxpZGF0ZVByb2plY3RTdHJ1Y3R1cmUob3B0aW9ucy5jb21wb25lbnRzLCBkaXIsIHByb2plY3RTdHJ1Y3R1cmUpXG5cbiAgaWYgKCFoYXNWYWxpZFByb2plY3RTdHJ1Y3R1cmUpIHtcbiAgICB0aHJvdyBuZXcgQ2xpRXJyb3IoYEludmFsaWQgc2NlbmUgc3RydWN0dXJlIGZvdW5kLiBSZXF1aXJlZCBmaWxlczpcbiAgICAgICR7dG9TdHJpbmdMaXN0KHByb2plY3RTdHJ1Y3R1cmUpfWApXG4gIH1cblxuICBjb25zdCBoYXNWYWxpZFBhY2thZ2VKc29uID0gYXdhaXQgdmFsaWRhdGVQYWNrYWdlSnNvbihvcHRpb25zLmNvbXBvbmVudHMsIGRpciwgUkVRVUlSRURfUEFDS0FHRV9KU09OKVxuXG4gIGlmICghaGFzVmFsaWRQYWNrYWdlSnNvbikge1xuICAgIHRocm93IG5ldyBDbGlFcnJvcihgSW52YWxpZCBcInBhY2thZ2UuanNvblwiIGZpbGUuIFN0cnVjdHVyZSByZXF1aXJlZDpcbiAgICAgICR7SlNPTi5zdHJpbmdpZnkoUkVRVUlSRURfUEFDS0FHRV9KU09OLCBudWxsLCAyKX1gKVxuICB9XG5cbiAgY29uc3Qgc2hvdWxkSW5zdGFsbERlcHMgPSBhd2FpdCBuZWVkc0RlcGVuZGVuY2llcyhvcHRpb25zLmNvbXBvbmVudHMsIGRpcilcblxuICBpZiAoc2hvdWxkSW5zdGFsbERlcHMgJiYgIW9wdGlvbnMuYXJnc1snLS1za2lwLWluc3RhbGwnXSkge1xuICAgIGF3YWl0IGluc3RhbGxEZXBlbmRlbmNpZXMoZGlyKVxuICB9XG5cbiAgY29uc3Qgd2F0Y2ggPSAhIW9wdGlvbnMuYXJnc1snLS13YXRjaCddXG5cbiAgY29uc3Qgd2F0Y2hpbmdGdXR1cmUgPSBmdXR1cmU8YW55PigpXG5cbiAgYXdhaXQgY29tcGlsZSh7XG4gICAgcHJvamVjdDogZGlyLFxuICAgIHdhdGNoLFxuICAgIHByb2R1Y3Rpb246ICEhb3B0aW9ucy5hcmdzWyctLXByb2R1Y3Rpb24nXSxcbiAgICB3YXRjaGluZ0Z1dHVyZVxuICB9KVxuXG4gIGlmICghd2F0Y2gpIHtcbiAgICB3YXRjaGluZ0Z1dHVyZS5yZXNvbHZlKG51bGwpXG4gIH1cblxuICBhd2FpdCB3YXRjaGluZ0Z1dHVyZVxuXG4gIC8vIHRyYWNrIHN0dWZmLi4uXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9kZWNlbnRyYWxhbmQvY2xpL2Jsb2IvbWFpbi9zcmMvY29tbWFuZHMvYnVpbGQudHNcbn1cbiJdfQ==
|
@@ -2,20 +2,18 @@ import { resolve } from 'path'
|
|
2
2
|
|
3
3
|
import { CliComponents } from '../../components'
|
4
4
|
import { toStringList } from '../../utils/out-messages'
|
5
|
-
import { succeed } from '../../utils/log'
|
6
5
|
import { getArgs } from '../../utils/args'
|
7
6
|
import { CliError } from '../../utils/error'
|
7
|
+
import { compile } from '@dcl/dcl-rollup/compile'
|
8
|
+
import future from 'fp-future'
|
8
9
|
import {
|
9
10
|
getProjectStructure,
|
10
|
-
buildTypescript,
|
11
11
|
installDependencies,
|
12
12
|
needsDependencies,
|
13
13
|
validateProjectStructure,
|
14
14
|
validatePackageJson,
|
15
15
|
REQUIRED_PACKAGE_JSON
|
16
16
|
} from './helpers'
|
17
|
-
import { main as handler } from '../../utils/handler'
|
18
|
-
import { info } from 'console'
|
19
17
|
|
20
18
|
interface Options {
|
21
19
|
args: Omit<typeof args, '_'>
|
@@ -33,7 +31,7 @@ export const args = getArgs({
|
|
33
31
|
|
34
32
|
export function help() {
|
35
33
|
return `
|
36
|
-
Usage: 'dcl build [options]'
|
34
|
+
Usage: 'dcl-commands build [options]'
|
37
35
|
Options:'
|
38
36
|
-h, --help Displays complete help
|
39
37
|
-w, --watch Watch for file changes and build on change
|
@@ -43,11 +41,11 @@ export function help() {
|
|
43
41
|
|
44
42
|
Example:
|
45
43
|
- Build your scene:
|
46
|
-
'$ dcl build'
|
44
|
+
'$ dcl-commands build'
|
47
45
|
`
|
48
46
|
}
|
49
47
|
|
50
|
-
export
|
48
|
+
export async function main(options: Options) {
|
51
49
|
const dir = resolve(process.cwd(), options.args['--dir'] || '.')
|
52
50
|
const projectStructure = getProjectStructure()
|
53
51
|
|
@@ -58,8 +56,6 @@ export const main = handler(async function main(options: Options) {
|
|
58
56
|
${toStringList(projectStructure)}`)
|
59
57
|
}
|
60
58
|
|
61
|
-
succeed('Project has a valid structure')
|
62
|
-
|
63
59
|
const hasValidPackageJson = await validatePackageJson(options.components, dir, REQUIRED_PACKAGE_JSON)
|
64
60
|
|
65
61
|
if (!hasValidPackageJson) {
|
@@ -67,25 +63,29 @@ export const main = handler(async function main(options: Options) {
|
|
67
63
|
${JSON.stringify(REQUIRED_PACKAGE_JSON, null, 2)}`)
|
68
64
|
}
|
69
65
|
|
70
|
-
succeed('Project has a valid "package.json"')
|
71
|
-
|
72
66
|
const shouldInstallDeps = await needsDependencies(options.components, dir)
|
73
67
|
|
74
68
|
if (shouldInstallDeps && !options.args['--skip-install']) {
|
75
|
-
info('Installing dependencies...')
|
76
69
|
await installDependencies(dir)
|
77
70
|
}
|
78
71
|
|
79
|
-
|
72
|
+
const watch = !!options.args['--watch']
|
80
73
|
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
74
|
+
const watchingFuture = future<any>()
|
75
|
+
|
76
|
+
await compile({
|
77
|
+
project: dir,
|
78
|
+
watch,
|
79
|
+
production: !!options.args['--production'],
|
80
|
+
watchingFuture
|
85
81
|
})
|
86
82
|
|
87
|
-
|
83
|
+
if (!watch) {
|
84
|
+
watchingFuture.resolve(null)
|
85
|
+
}
|
86
|
+
|
87
|
+
await watchingFuture
|
88
88
|
|
89
89
|
// track stuff...
|
90
90
|
// https://github.com/decentraland/cli/blob/main/src/commands/build.ts
|
91
|
-
}
|
91
|
+
}
|
@@ -12,5 +12,5 @@ export declare const args: import("arg").Result<{
|
|
12
12
|
'--dir': StringConstructor;
|
13
13
|
}>;
|
14
14
|
export declare function help(): Promise<void>;
|
15
|
-
export declare
|
15
|
+
export declare function main(options: Options): Promise<void>;
|
16
16
|
export {};
|
@@ -6,7 +6,6 @@ const args_1 = require("../../utils/args");
|
|
6
6
|
const prompt_1 = require("../../utils/prompt");
|
7
7
|
const fs_1 = require("../../utils/fs");
|
8
8
|
const repos_1 = require("./repos");
|
9
|
-
const handler_1 = require("../../utils/handler");
|
10
9
|
exports.args = (0, args_1.getArgs)({
|
11
10
|
'--yes': Boolean,
|
12
11
|
'-y': '--yes',
|
@@ -14,7 +13,7 @@ exports.args = (0, args_1.getArgs)({
|
|
14
13
|
});
|
15
14
|
async function help() { }
|
16
15
|
exports.help = help;
|
17
|
-
|
16
|
+
async function main(options) {
|
18
17
|
const dir = (0, path_1.resolve)(process.cwd(), options.args['--dir'] || '.');
|
19
18
|
const isEmpty = await (0, fs_1.isDirectoryEmpty)(options.components, dir);
|
20
19
|
const yes = options.args['--yes'];
|
@@ -29,7 +28,8 @@ exports.main = (0, handler_1.main)(async function main(options) {
|
|
29
28
|
await (0, fs_1.extract)(zip, dir);
|
30
29
|
await options.components.fs.unlink(zip);
|
31
30
|
await moveFilesFromDirs(options.components, dir, contentFolders);
|
32
|
-
}
|
31
|
+
}
|
32
|
+
exports.main = main;
|
33
33
|
const moveFilesFromDir = async (components, dir, folder) => {
|
34
34
|
const files = await components.fs.readdir(folder);
|
35
35
|
await Promise.all(files.map(($) => {
|
@@ -44,4 +44,4 @@ const moveFilesFromDirs = async (components, dir, folders) => {
|
|
44
44
|
return moveFilesFromDir(components, dir, folderPath);
|
45
45
|
}));
|
46
46
|
};
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQkFBb0M7QUFFcEMsMkNBQTBDO0FBQzFDLCtDQUE0QztBQUU1Qyx1Q0FBb0U7QUFFcEUsbUNBQXdDO0FBTzNCLFFBQUEsSUFBSSxHQUFHLElBQUEsY0FBTyxFQUFDO0lBQzFCLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLElBQUksRUFBRSxPQUFPO0lBQ2IsT0FBTyxFQUFFLE1BQU07Q0FDaEIsQ0FBQyxDQUFBO0FBRUssS0FBSyxVQUFVLElBQUksS0FBSSxDQUFDO0FBQS9CLG9CQUErQjtBQUV4QixLQUFLLFVBQVUsSUFBSSxDQUFDLE9BQWdCO0lBQ3pDLE1BQU0sR0FBRyxHQUFHLElBQUEsY0FBTyxFQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFBO0lBQ2hFLE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBQSxxQkFBZ0IsRUFBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFBO0lBQy9ELE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7SUFFakMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLEdBQUcsRUFBRTtRQUNwQixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUEsZ0JBQU8sRUFBQyxxREFBcUQsQ0FBQyxDQUFBO1FBRW5GLElBQUksQ0FBQyxNQUFNO1lBQUUsT0FBTTtLQUNwQjtJQUVELE1BQU0sS0FBSyxHQUFHLGdCQUFnQixDQUFBO0lBQzlCLE1BQU0sRUFBRSxHQUFHLEVBQUUsY0FBYyxFQUFFLEdBQUcsSUFBQSxXQUFPLEVBQUMsS0FBSyxDQUFDLENBQUE7SUFDOUMsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFBLGFBQVEsRUFBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRSxJQUFBLFdBQUksRUFBQyxHQUFHLEVBQUUsR0FBRyxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUE7SUFDOUUsTUFBTSxJQUFBLFlBQU8sRUFBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUE7SUFDdkIsTUFBTSxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDdkMsTUFBTSxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRSxjQUFjLENBQUMsQ0FBQTtBQUNsRSxDQUFDO0FBakJELG9CQWlCQztBQUVELE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxFQUFFLFVBQXFDLEVBQUUsR0FBVyxFQUFFLE1BQWMsRUFBRSxFQUFFO0lBQ3BHLE1BQU0sS0FBSyxHQUFHLE1BQU0sVUFBVSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDakQsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUNmLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUNkLE1BQU0sUUFBUSxHQUFHLElBQUEsY0FBTyxFQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQTtRQUNuQyxPQUFPLFVBQVUsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxJQUFBLGNBQU8sRUFBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUN4RCxDQUFDLENBQUMsQ0FDSCxDQUFBO0lBQ0QsTUFBTSxVQUFVLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQTtBQUNuQyxDQUFDLENBQUE7QUFFRCxNQUFNLGlCQUFpQixHQUFHLEtBQUssRUFBRSxVQUFxQyxFQUFFLEdBQVcsRUFBRSxPQUFpQixFQUFFLEVBQUU7SUFDeEcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUNmLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUNoQixNQUFNLFVBQVUsR0FBRyxJQUFBLGNBQU8sRUFBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFDbEMsT0FBTyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxDQUFBO0lBQ3RELENBQUMsQ0FBQyxDQUNILENBQUE7QUFDSCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqb2luLCByZXNvbHZlIH0gZnJvbSAncGF0aCdcblxuaW1wb3J0IHsgZ2V0QXJncyB9IGZyb20gJy4uLy4uL3V0aWxzL2FyZ3MnXG5pbXBvcnQgeyBjb25maXJtIH0gZnJvbSAnLi4vLi4vdXRpbHMvcHJvbXB0J1xuaW1wb3J0IHsgQ2xpQ29tcG9uZW50cyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMnXG5pbXBvcnQgeyBpc0RpcmVjdG9yeUVtcHR5LCBkb3dubG9hZCwgZXh0cmFjdCB9IGZyb20gJy4uLy4uL3V0aWxzL2ZzJ1xuXG5pbXBvcnQgeyBnZXQgYXMgZ2V0UmVwbyB9IGZyb20gJy4vcmVwb3MnXG5cbmludGVyZmFjZSBPcHRpb25zIHtcbiAgYXJnczogdHlwZW9mIGFyZ3NcbiAgY29tcG9uZW50czogUGljazxDbGlDb21wb25lbnRzLCAnZmV0Y2gnIHwgJ2ZzJz5cbn1cblxuZXhwb3J0IGNvbnN0IGFyZ3MgPSBnZXRBcmdzKHtcbiAgJy0teWVzJzogQm9vbGVhbixcbiAgJy15JzogJy0teWVzJyxcbiAgJy0tZGlyJzogU3RyaW5nXG59KVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaGVscCgpIHt9XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBtYWluKG9wdGlvbnM6IE9wdGlvbnMpIHtcbiAgY29uc3QgZGlyID0gcmVzb2x2ZShwcm9jZXNzLmN3ZCgpLCBvcHRpb25zLmFyZ3NbJy0tZGlyJ10gfHwgJy4nKVxuICBjb25zdCBpc0VtcHR5ID0gYXdhaXQgaXNEaXJlY3RvcnlFbXB0eShvcHRpb25zLmNvbXBvbmVudHMsIGRpcilcbiAgY29uc3QgeWVzID0gb3B0aW9ucy5hcmdzWyctLXllcyddXG5cbiAgaWYgKCFpc0VtcHR5ICYmICF5ZXMpIHtcbiAgICBjb25zdCBhbnN3ZXIgPSBhd2FpdCBjb25maXJtKCdUaGUgZm9sZGVyIHNwZWNpZmllZCBpcyBub3QgZW1wdHksIGNvbnRpbnVlIGFueXdheT8nKVxuXG4gICAgaWYgKCFhbnN3ZXIpIHJldHVyblxuICB9XG5cbiAgY29uc3Qgc2NlbmUgPSAnc2NlbmUtdGVtcGxhdGUnXG4gIGNvbnN0IHsgdXJsLCBjb250ZW50Rm9sZGVycyB9ID0gZ2V0UmVwbyhzY2VuZSlcbiAgY29uc3QgemlwID0gYXdhaXQgZG93bmxvYWQob3B0aW9ucy5jb21wb25lbnRzLCB1cmwsIGpvaW4oZGlyLCBgJHtzY2VuZX0uemlwYCkpXG4gIGF3YWl0IGV4dHJhY3QoemlwLCBkaXIpXG4gIGF3YWl0IG9wdGlvbnMuY29tcG9uZW50cy5mcy51bmxpbmsoemlwKVxuICBhd2FpdCBtb3ZlRmlsZXNGcm9tRGlycyhvcHRpb25zLmNvbXBvbmVudHMsIGRpciwgY29udGVudEZvbGRlcnMpXG59XG5cbmNvbnN0IG1vdmVGaWxlc0Zyb21EaXIgPSBhc3luYyAoY29tcG9uZW50czogUGljazxDbGlDb21wb25lbnRzLCAnZnMnPiwgZGlyOiBzdHJpbmcsIGZvbGRlcjogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IGZpbGVzID0gYXdhaXQgY29tcG9uZW50cy5mcy5yZWFkZGlyKGZvbGRlcilcbiAgYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgZmlsZXMubWFwKCgkKSA9PiB7XG4gICAgICBjb25zdCBmaWxlUGF0aCA9IHJlc29sdmUoZm9sZGVyLCAkKVxuICAgICAgcmV0dXJuIGNvbXBvbmVudHMuZnMucmVuYW1lKGZpbGVQYXRoLCByZXNvbHZlKGRpciwgJCkpXG4gICAgfSlcbiAgKVxuICBhd2FpdCBjb21wb25lbnRzLmZzLnJtZGlyKGZvbGRlcilcbn1cblxuY29uc3QgbW92ZUZpbGVzRnJvbURpcnMgPSBhc3luYyAoY29tcG9uZW50czogUGljazxDbGlDb21wb25lbnRzLCAnZnMnPiwgZGlyOiBzdHJpbmcsIGZvbGRlcnM6IHN0cmluZ1tdKSA9PiB7XG4gIGF3YWl0IFByb21pc2UuYWxsKFxuICAgIGZvbGRlcnMubWFwKCgkKSA9PiB7XG4gICAgICBjb25zdCBmb2xkZXJQYXRoID0gcmVzb2x2ZShkaXIsICQpXG4gICAgICByZXR1cm4gbW92ZUZpbGVzRnJvbURpcihjb21wb25lbnRzLCBkaXIsIGZvbGRlclBhdGgpXG4gICAgfSlcbiAgKVxufVxuIl19
|
@@ -6,7 +6,6 @@ import { CliComponents } from '../../components'
|
|
6
6
|
import { isDirectoryEmpty, download, extract } from '../../utils/fs'
|
7
7
|
|
8
8
|
import { get as getRepo } from './repos'
|
9
|
-
import { main as handler } from '../../utils/handler'
|
10
9
|
|
11
10
|
interface Options {
|
12
11
|
args: typeof args
|
@@ -21,7 +20,7 @@ export const args = getArgs({
|
|
21
20
|
|
22
21
|
export async function help() {}
|
23
22
|
|
24
|
-
export
|
23
|
+
export async function main(options: Options) {
|
25
24
|
const dir = resolve(process.cwd(), options.args['--dir'] || '.')
|
26
25
|
const isEmpty = await isDirectoryEmpty(options.components, dir)
|
27
26
|
const yes = options.args['--yes']
|
@@ -38,7 +37,7 @@ export const main = handler(async function main(options: Options) {
|
|
38
37
|
await extract(zip, dir)
|
39
38
|
await options.components.fs.unlink(zip)
|
40
39
|
await moveFilesFromDirs(options.components, dir, contentFolders)
|
41
|
-
}
|
40
|
+
}
|
42
41
|
|
43
42
|
const moveFilesFromDir = async (components: Pick<CliComponents, 'fs'>, dir: string, folder: string) => {
|
44
43
|
const files = await components.fs.readdir(folder)
|
@@ -14,7 +14,6 @@ const metrics_1 = require("@well-known-components/metrics");
|
|
14
14
|
const ws_1 = require("./ws");
|
15
15
|
const fp_future_1 = __importDefault(require("fp-future"));
|
16
16
|
const args_1 = require("../../utils/args");
|
17
|
-
const handler_1 = require("../../utils/handler");
|
18
17
|
const project_1 = require("./project");
|
19
18
|
const port_1 = require("./port");
|
20
19
|
const eth_1 = require("./eth");
|
@@ -30,7 +29,7 @@ exports.args = (0, args_1.getArgs)({
|
|
30
29
|
'--port': Number,
|
31
30
|
'-p': '--port'
|
32
31
|
});
|
33
|
-
|
32
|
+
async function main(options) {
|
34
33
|
const dir = (0, path_1.resolve)(process.cwd(), options.args['--dir'] || '.');
|
35
34
|
await (0, project_1.validateExistingProject)(options.components, dir);
|
36
35
|
await (0, project_1.validateSceneOptions)(options.components, dir);
|
@@ -70,6 +69,8 @@ exports.main = (0, handler_1.main)(async function main(options) {
|
|
70
69
|
}
|
71
70
|
}
|
72
71
|
});
|
72
|
+
await startedFuture;
|
73
73
|
return;
|
74
|
-
}
|
75
|
-
|
74
|
+
}
|
75
|
+
exports.main = main;
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSwrQkFBOEI7QUFDOUIsa0VBQTZEO0FBQzdELCtEQUF3RjtBQUN4RixvRkFBd0Y7QUFDeEYsb0VBQTBFO0FBQzFFLDBEQUF5RTtBQUN6RSw0REFBMkU7QUFDM0UsNkJBQXdDO0FBQ3hDLDBEQUE4QjtBQUc5QiwyQ0FBMEM7QUFFMUMsdUNBQXlFO0FBQ3pFLGlDQUFvQztBQUNwQywrQkFBd0M7QUFDeEMsaUNBQTZCO0FBRTdCLFNBQWdCLElBQUk7SUFDbEIsT0FBTyxFQUFFLENBQUE7QUFDWCxDQUFDO0FBRkQsb0JBRUM7QUFPWSxRQUFBLElBQUksR0FBRyxJQUFBLGNBQU8sRUFBQztJQUMxQixTQUFTLEVBQUUsT0FBTztJQUNsQixJQUFJLEVBQUUsU0FBUztJQUNmLE9BQU8sRUFBRSxNQUFNO0lBQ2YsUUFBUSxFQUFFLE1BQU07SUFDaEIsSUFBSSxFQUFFLFFBQVE7Q0FDZixDQUFDLENBQUE7QUFJSyxLQUFLLFVBQVUsSUFBSSxDQUFDLE9BQWdCO0lBQ3pDLE1BQU0sR0FBRyxHQUFHLElBQUEsY0FBTyxFQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFBO0lBQ2hFLE1BQU0sSUFBQSxpQ0FBdUIsRUFBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFBO0lBQ3RELE1BQU0sSUFBQSw4QkFBb0IsRUFBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFBO0lBRW5ELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUEsa0JBQVcsR0FBRSxDQUFDLENBQUE7SUFDNUQsTUFBTSxhQUFhLEdBQUcsSUFBQSxtQkFBTSxHQUFRLENBQUE7SUFFcEMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsK0JBQStCLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFBO0lBRXhGLE1BQU0sc0JBQVMsQ0FBQyxHQUFHLENBQW9CO1FBQ3JDLEtBQUssQ0FBQyxjQUFjO1lBQ2xCLE1BQU0sT0FBTyxHQUFHLElBQUEsb0NBQTBCLEVBQUMsb0JBQVksQ0FBQyxDQUFBO1lBQ3hELE1BQU0sTUFBTSxHQUFHLElBQUEsaURBQTJCLGtCQUN4QyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQ2pDLGdCQUFnQixFQUFFLFNBQVMsSUFDeEIsT0FBTyxDQUFDLEdBQUcsRUFDZCxDQUFBO1lBQ0YsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFBLGtDQUF5QixFQUFDLEVBQUUsQ0FBQyxDQUFBO1lBQ2hELE1BQU0sRUFBRSxHQUFHLE1BQU0sSUFBQSxzQkFBaUIsRUFBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7WUFDNUMsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFBLG1DQUFxQixFQUFvQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFBO1lBQ3hHLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBQSw0QkFBb0IsRUFBQztnQkFDdkMsT0FBTztnQkFDUCxJQUFJO2dCQUNKLE1BQU07YUFDUCxDQUFDLENBQUE7WUFFRixPQUFPO2dCQUNMLElBQUk7Z0JBQ0osZ0JBQWdCLEVBQUUsc0JBQWdCO2dCQUNsQyxLQUFLO2dCQUNMLE1BQU07Z0JBQ04sT0FBTztnQkFDUCxNQUFNO2dCQUNOLEVBQUU7YUFDSCxDQUFBO1FBQ0gsQ0FBQztRQUNELEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFO1lBQ3hDLElBQUk7Z0JBQ0YsTUFBTSxJQUFBLFdBQUksRUFBQyxHQUFHLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUE7Z0JBQ3RELE1BQU0sZUFBZSxFQUFFLENBQUE7Z0JBQ3ZCLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQTthQUN4QjtZQUFDLE9BQU8sR0FBUSxFQUFFO2dCQUNqQixhQUFhLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO2FBQzFCO1FBQ0gsQ0FBQztLQUNGLENBQUMsQ0FBQTtJQUdGLE1BQU0sYUFBYSxDQUFBO0lBRW5CLE9BQU07QUFDUixDQUFDO0FBcERELG9CQW9EQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlc29sdmUgfSBmcm9tICdwYXRoJ1xuaW1wb3J0IHsgTGlmZWN5Y2xlIH0gZnJvbSAnQHdlbGwta25vd24tY29tcG9uZW50cy9pbnRlcmZhY2VzJ1xuaW1wb3J0IHsgcm9vbXNNZXRyaWNzLCBjcmVhdGVSb29tc0NvbXBvbmVudCB9IGZyb20gJ0BkY2wvbWluaS1jb21tcy9kaXN0L2FkYXB0ZXJzL3Jvb21zJ1xuaW1wb3J0IHsgY3JlYXRlUmVjb3JkQ29uZmlnQ29tcG9uZW50IH0gZnJvbSAnQHdlbGwta25vd24tY29tcG9uZW50cy9lbnYtY29uZmlnLXByb3ZpZGVyJ1xuaW1wb3J0IHsgY3JlYXRlU2VydmVyQ29tcG9uZW50IH0gZnJvbSAnQHdlbGwta25vd24tY29tcG9uZW50cy9odHRwLXNlcnZlcidcbmltcG9ydCB7IGNyZWF0ZUNvbnNvbGVMb2dDb21wb25lbnQgfSBmcm9tICdAd2VsbC1rbm93bi1jb21wb25lbnRzL2xvZ2dlcidcbmltcG9ydCB7IGNyZWF0ZVRlc3RNZXRyaWNzQ29tcG9uZW50IH0gZnJvbSAnQHdlbGwta25vd24tY29tcG9uZW50cy9tZXRyaWNzJ1xuaW1wb3J0IHsgY3JlYXRlV3NDb21wb25lbnQgfSBmcm9tICcuL3dzJ1xuaW1wb3J0IGZ1dHVyZSBmcm9tICdmcC1mdXR1cmUnXG5cbmltcG9ydCB7IENsaUNvbXBvbmVudHMgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzJ1xuaW1wb3J0IHsgZ2V0QXJncyB9IGZyb20gJy4uLy4uL3V0aWxzL2FyZ3MnXG5pbXBvcnQgeyBQcmV2aWV3Q29tcG9uZW50cyB9IGZyb20gJy4vdHlwZXMnXG5pbXBvcnQgeyB2YWxpZGF0ZUV4aXN0aW5nUHJvamVjdCwgdmFsaWRhdGVTY2VuZU9wdGlvbnMgfSBmcm9tICcuL3Byb2plY3QnXG5pbXBvcnQgeyBwcmV2aWV3UG9ydCB9IGZyb20gJy4vcG9ydCdcbmltcG9ydCB7IHByb3ZpZGVySW5zdGFuY2UgfSBmcm9tICcuL2V0aCdcbmltcG9ydCB7IHdpcmUgfSBmcm9tICcuL3dpcmUnXG5cbmV4cG9ydCBmdW5jdGlvbiBoZWxwKCkge1xuICByZXR1cm4gYGBcbn1cblxuaW50ZXJmYWNlIE9wdGlvbnMge1xuICBhcmdzOiBPbWl0PHR5cGVvZiBhcmdzLCAnXyc+XG4gIGNvbXBvbmVudHM6IFBpY2s8Q2xpQ29tcG9uZW50cywgJ2ZldGNoJyB8ICdmcyc+XG59XG5cbmV4cG9ydCBjb25zdCBhcmdzID0gZ2V0QXJncyh7XG4gICctLXdhdGNoJzogQm9vbGVhbixcbiAgJy13JzogJy0td2F0Y2gnLFxuICAnLS1kaXInOiBTdHJpbmcsXG4gICctLXBvcnQnOiBOdW1iZXIsXG4gICctcCc6ICctLXBvcnQnXG59KVxuXG4vLyBjb3B5L3Bhc3RlIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL2RlY2VudHJhbGFuZC9jbGkvYmxvYi8zMmRlOTZiY2ZjNGVmMWMyNmM1NTgwYzc3NjdhZDZjOGNhYzNiMzY3L3NyYy9saWIvRGVjZW50cmFsYW5kLnRzXG4vLyBUT0RPOiByZWZhY3RvciB0aGlzIHN0dWZmIGNvbXBsZXRlbHlcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBtYWluKG9wdGlvbnM6IE9wdGlvbnMpIHtcbiAgY29uc3QgZGlyID0gcmVzb2x2ZShwcm9jZXNzLmN3ZCgpLCBvcHRpb25zLmFyZ3NbJy0tZGlyJ10gfHwgJy4nKVxuICBhd2FpdCB2YWxpZGF0ZUV4aXN0aW5nUHJvamVjdChvcHRpb25zLmNvbXBvbmVudHMsIGRpcilcbiAgYXdhaXQgdmFsaWRhdGVTY2VuZU9wdGlvbnMob3B0aW9ucy5jb21wb25lbnRzLCBkaXIpXG5cbiAgY29uc3QgcG9ydCA9IG9wdGlvbnMuYXJnc1snLS1wb3J0J10gfHwgKGF3YWl0IHByZXZpZXdQb3J0KCkpXG4gIGNvbnN0IHN0YXJ0ZWRGdXR1cmUgPSBmdXR1cmU8dm9pZD4oKVxuXG4gIHNldFRpbWVvdXQoKCkgPT4gc3RhcnRlZEZ1dHVyZS5yZWplY3QobmV3IEVycm9yKCdUaW1lZCBvdXQgc3RhcnRpbmcgdGhlIHNlcnZlcicpKSwgMzAwMClcblxuICBhd2FpdCBMaWZlY3ljbGUucnVuPFByZXZpZXdDb21wb25lbnRzPih7XG4gICAgYXN5bmMgaW5pdENvbXBvbmVudHMoKSB7XG4gICAgICBjb25zdCBtZXRyaWNzID0gY3JlYXRlVGVzdE1ldHJpY3NDb21wb25lbnQocm9vbXNNZXRyaWNzKVxuICAgICAgY29uc3QgY29uZmlnID0gY3JlYXRlUmVjb3JkQ29uZmlnQ29tcG9uZW50KHtcbiAgICAgICAgSFRUUF9TRVJWRVJfUE9SVDogcG9ydC50b1N0cmluZygpLFxuICAgICAgICBIVFRQX1NFUlZFUl9IT1NUOiAnMC4wLjAuMCcsXG4gICAgICAgIC4uLnByb2Nlc3MuZW52XG4gICAgICB9KVxuICAgICAgY29uc3QgbG9ncyA9IGF3YWl0IGNyZWF0ZUNvbnNvbGVMb2dDb21wb25lbnQoe30pXG4gICAgICBjb25zdCB3cyA9IGF3YWl0IGNyZWF0ZVdzQ29tcG9uZW50KHsgbG9ncyB9KVxuICAgICAgY29uc3Qgc2VydmVyID0gYXdhaXQgY3JlYXRlU2VydmVyQ29tcG9uZW50PFByZXZpZXdDb21wb25lbnRzPih7IGNvbmZpZywgbG9ncywgd3M6IHdzLndzIH0sIHsgY29yczoge30gfSlcbiAgICAgIGNvbnN0IHJvb21zID0gYXdhaXQgY3JlYXRlUm9vbXNDb21wb25lbnQoe1xuICAgICAgICBtZXRyaWNzLFxuICAgICAgICBsb2dzLFxuICAgICAgICBjb25maWdcbiAgICAgIH0pXG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGxvZ3MsXG4gICAgICAgIGV0aGVyZXVtUHJvdmlkZXI6IHByb3ZpZGVySW5zdGFuY2UsXG4gICAgICAgIHJvb21zLFxuICAgICAgICBjb25maWcsXG4gICAgICAgIG1ldHJpY3MsXG4gICAgICAgIHNlcnZlcixcbiAgICAgICAgd3NcbiAgICAgIH1cbiAgICB9LFxuICAgIGFzeW5jIG1haW4oeyBjb21wb25lbnRzLCBzdGFydENvbXBvbmVudHMgfSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgd2lyZShkaXIsIGNvbXBvbmVudHMsICEhb3B0aW9ucy5hcmdzWyctLXdhdGNoJ10pXG4gICAgICAgIGF3YWl0IHN0YXJ0Q29tcG9uZW50cygpXG4gICAgICAgIHN0YXJ0ZWRGdXR1cmUucmVzb2x2ZSgpXG4gICAgICB9IGNhdGNoIChlcnI6IGFueSkge1xuICAgICAgICBzdGFydGVkRnV0dXJlLnJlamVjdChlcnIpXG4gICAgICB9XG4gICAgfVxuICB9KVxuXG4gIC8vIGJ1YmJsZSB1cCB0aGUgZXhjZXB0aW9uIGlmIHN0YXJ0ZWRGdXR1cmUgd2FzIHJlamVjdGVkXG4gIGF3YWl0IHN0YXJ0ZWRGdXR1cmVcblxuICByZXR1cm5cbn1cbiJdfQ==
|
@@ -10,7 +10,6 @@ import future from 'fp-future'
|
|
10
10
|
|
11
11
|
import { CliComponents } from '../../components'
|
12
12
|
import { getArgs } from '../../utils/args'
|
13
|
-
import { main as handler } from '../../utils/handler'
|
14
13
|
import { PreviewComponents } from './types'
|
15
14
|
import { validateExistingProject, validateSceneOptions } from './project'
|
16
15
|
import { previewPort } from './port'
|
@@ -36,7 +35,7 @@ export const args = getArgs({
|
|
36
35
|
|
37
36
|
// copy/paste from https://github.com/decentraland/cli/blob/32de96bcfc4ef1c26c5580c7767ad6c8cac3b367/src/lib/Decentraland.ts
|
38
37
|
// TODO: refactor this stuff completely
|
39
|
-
export
|
38
|
+
export async function main(options: Options) {
|
40
39
|
const dir = resolve(process.cwd(), options.args['--dir'] || '.')
|
41
40
|
await validateExistingProject(options.components, dir)
|
42
41
|
await validateSceneOptions(options.components, dir)
|
@@ -84,5 +83,8 @@ export const main = handler(async function main(options: Options) {
|
|
84
83
|
}
|
85
84
|
})
|
86
85
|
|
86
|
+
// bubble up the exception if startedFuture was rejected
|
87
|
+
await startedFuture
|
88
|
+
|
87
89
|
return
|
88
|
-
}
|
90
|
+
}
|
@@ -25,5 +25,5 @@ export declare const args: import("arg").Result<{
|
|
25
25
|
'--desktop-client': BooleanConstructor;
|
26
26
|
}>;
|
27
27
|
export declare function help(): string;
|
28
|
-
export declare
|
28
|
+
export declare function main(options: Options): Promise<void>;
|
29
29
|
export {};
|
@@ -11,7 +11,7 @@ const build_1 = require("../build");
|
|
11
11
|
const preview_1 = require("../preview");
|
12
12
|
const port_1 = require("../preview/port");
|
13
13
|
const args_1 = require("../../utils/args");
|
14
|
-
const
|
14
|
+
const helpers_1 = require("../build/helpers");
|
15
15
|
exports.args = (0, args_1.getArgs)({
|
16
16
|
'--dir': String,
|
17
17
|
'--help': Boolean,
|
@@ -58,29 +58,32 @@ function help() {
|
|
58
58
|
`;
|
59
59
|
}
|
60
60
|
exports.help = help;
|
61
|
-
|
61
|
+
async function main(options) {
|
62
62
|
const dir = (0, path_1.resolve)(process.cwd(), options.args['--dir'] || '.');
|
63
63
|
const isCi = exports.args['--ci'] || process.env.CI || false;
|
64
64
|
const debug = !exports.args['--no-debug'] && !isCi;
|
65
65
|
const openBrowser = !exports.args['--no-browser'] && !isCi;
|
66
66
|
const skipBuild = exports.args['--skip-build'];
|
67
|
-
const watch = !exports.args['--no-watch']
|
67
|
+
const watch = !exports.args['--no-watch'];
|
68
68
|
const enableWeb3 = exports.args['--web3'];
|
69
69
|
const port = parseInt(exports.args['--port'], 10) || (await (0, port_1.previewPort)());
|
70
70
|
const baseCoords = { x: 0, y: 0 };
|
71
71
|
const hasPortableExperience = false;
|
72
72
|
const comps = { components: options.components };
|
73
73
|
if (!skipBuild) {
|
74
|
+
await (0, helpers_1.npmRun)(dir, 'build');
|
75
|
+
}
|
76
|
+
if (watch) {
|
74
77
|
await (0, build_1.main)(Object.assign({ args: { '--dir': dir, '--watch': watch } }, comps));
|
75
78
|
}
|
76
79
|
await (0, preview_1.main)(Object.assign({ args: { '--dir': dir, '--port': port } }, comps));
|
77
|
-
const
|
80
|
+
const networkInterfaces = os_1.default.networkInterfaces();
|
78
81
|
const availableURLs = [];
|
79
82
|
console.log(`\nPreview server is now running!`);
|
80
83
|
console.log('Available on:\n');
|
81
|
-
Object.keys(
|
84
|
+
Object.keys(networkInterfaces).forEach((dev) => {
|
82
85
|
;
|
83
|
-
(
|
86
|
+
(networkInterfaces[dev] || []).forEach((details) => {
|
84
87
|
if (details.family === 'IPv4') {
|
85
88
|
let addr = `http://${details.address}:${port}?position=${baseCoords.x}%2C${baseCoords.y}&ENABLE_ECS7`;
|
86
89
|
if (debug) {
|
@@ -117,5 +120,6 @@ exports.main = (0, handler_1.main)(async function main(options) {
|
|
117
120
|
console.log('Unable to open browser automatically.');
|
118
121
|
}
|
119
122
|
}
|
120
|
-
}
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSw0Q0FBbUI7QUFDbkIsK0JBQThCO0FBQzlCLGdEQUF1QjtBQUd2QixvQ0FBd0M7QUFDeEMsd0NBQTRDO0FBQzVDLDBDQUE2QztBQUM3QywyQ0FBMEM7QUFDMUMsaURBQXFEO0FBTXhDLFFBQUEsSUFBSSxHQUFHLElBQUEsY0FBTyxFQUFDO0lBQzFCLE9BQU8sRUFBRSxNQUFNO0lBQ2YsUUFBUSxFQUFFLE9BQU87SUFDakIsUUFBUSxFQUFFLE1BQU07SUFDaEIsWUFBWSxFQUFFLE9BQU87SUFDckIsY0FBYyxFQUFFLE9BQU87SUFDdkIsWUFBWSxFQUFFLE9BQU87SUFDckIsTUFBTSxFQUFFLE9BQU87SUFDZixnQkFBZ0IsRUFBRSxPQUFPO0lBQ3pCLFFBQVEsRUFBRSxPQUFPO0lBQ2pCLElBQUksRUFBRSxRQUFRO0lBQ2QsSUFBSSxFQUFFLFFBQVE7SUFDZCxJQUFJLEVBQUUsWUFBWTtJQUNsQixJQUFJLEVBQUUsY0FBYztJQUNwQixJQUFJLEVBQUUsWUFBWTtJQUNsQixjQUFjLEVBQUUsT0FBTztJQUN2QixrQkFBa0IsRUFBRSxPQUFPO0NBQzVCLENBQUMsQ0FBQTtBQUVGLFNBQWdCLElBQUk7SUFDbEIsT0FBTzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBd0JSLENBQUE7QUFDRCxDQUFDO0FBMUJELG9CQTBCQztBQUVZLFFBQUEsSUFBSSxHQUFHLElBQUEsY0FBTyxFQUFDLEtBQUssVUFBVSxJQUFJLENBQUMsT0FBZ0I7SUFDOUQsTUFBTSxHQUFHLEdBQUcsSUFBQSxjQUFPLEVBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUE7SUFDaEUsTUFBTSxJQUFJLEdBQUcsWUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLE9BQU8sQ0FB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LENBQUMsQ0FBQTtJQUVGLEtBQUssTUFBTSxJQUFJLElBQUksVUFBVSxFQUFFO1FBQzdCLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxDQUFBO0tBQzNCO0lBRUQsSUFBSSxZQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRTtRQUM1QixPQUFPLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLENBQUE7UUFDcEMsS0FBSyxNQUFNLElBQUksSUFBSSxVQUFVLEVBQUU7WUFDN0IsTUFBTSxZQUFZLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQTtZQUMxQyxZQUFZLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsQ0FBQTtZQUN6QyxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsWUFBWSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQTtTQUNyRDtLQUNGO0lBRUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO0lBQzdCLE9BQU8sQ0FBQyxHQUFHLENBQUMsMEJBQTBCLENBQUMsQ0FBQTtJQUd2QyxJQUFJLFdBQVcsSUFBSSxVQUFVLENBQUMsTUFBTSxJQUFJLENBQUMsWUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUU7UUFDakUsSUFBSTtZQUNGLE1BQU0sSUFBQSxjQUFJLEVBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7U0FDMUI7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE9BQU8sQ0FBQyxHQUFHLENBQUMsdUNBQXVDLENBQUMsQ0FBQTtTQUNyRDtLQUNGO0FBQ0gsQ0FBQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgb3MgZnJvbSAnb3MnXG5pbXBvcnQgeyByZXNvbHZlIH0gZnJvbSAncGF0aCdcbmltcG9ydCBvcGVuIGZyb20gJ29wZW4nXG5cbmltcG9ydCB7IENsaUNvbXBvbmVudHMgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzJ1xuaW1wb3J0IHsgbWFpbiBhcyBidWlsZCB9IGZyb20gJy4uL2J1aWxkJ1xuaW1wb3J0IHsgbWFpbiBhcyBwcmV2aWV3IH0gZnJvbSAnLi4vcHJldmlldydcbmltcG9ydCB7IHByZXZpZXdQb3J0IH0gZnJvbSAnLi4vcHJldmlldy9wb3J0J1xuaW1wb3J0IHsgZ2V0QXJncyB9IGZyb20gJy4uLy4uL3V0aWxzL2FyZ3MnXG5pbXBvcnQgeyBtYWluIGFzIGhhbmRsZXIgfSBmcm9tICcuLi8uLi91dGlscy9oYW5kbGVyJ1xuaW50ZXJmYWNlIE9wdGlvbnMge1xuICBhcmdzOiB0eXBlb2YgYXJnc1xuICBjb21wb25lbnRzOiBQaWNrPENsaUNvbXBvbmVudHMsICdmZXRjaCcgfCAnZnMnPlxufVxuXG5leHBvcnQgY29uc3QgYXJncyA9IGdldEFyZ3Moe1xuICAnLS1kaXInOiBTdHJpbmcsXG4gICctLWhlbHAnOiBCb29sZWFuLFxuICAnLS1wb3J0JzogU3RyaW5nLFxuICAnLS1uby1kZWJ1Zyc6IEJvb2xlYW4sXG4gICctLW5vLWJyb3dzZXInOiBCb29sZWFuLFxuICAnLS1uby13YXRjaCc6IEJvb2xlYW4sXG4gICctLWNpJzogQm9vbGVhbixcbiAgJy0tc2tpcC1pbnN0YWxsJzogQm9vbGVhbixcbiAgJy0td2ViMyc6IEJvb2xlYW4sXG4gICctaCc6ICctLWhlbHAnLFxuICAnLXAnOiAnLS1wb3J0JyxcbiAgJy1kJzogJy0tbm8tZGVidWcnLFxuICAnLWInOiAnLS1uby1icm93c2VyJyxcbiAgJy13JzogJy0tbm8td2F0Y2gnLFxuICAnLS1za2lwLWJ1aWxkJzogQm9vbGVhbixcbiAgJy0tZGVza3RvcC1jbGllbnQnOiBCb29sZWFuXG59KVxuXG5leHBvcnQgZnVuY3Rpb24gaGVscCgpIHtcbiAgcmV0dXJuIGBcbiAgVXNhZ2U6IGRjbCBzdGFydCBbb3B0aW9uc11cblxuICAgIE9wdGlvbnM6XG5cbiAgICAgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICAgRGlzcGxheXMgY29tcGxldGUgaGVscFxuICAgICAgLXAsIC0tcG9ydCAgICAgICAgW3BvcnRdICBTZWxlY3QgYSBjdXN0b20gcG9ydCBmb3IgdGhlIGRldmVsb3BtZW50IHNlcnZlclxuICAgICAgLWQsIC0tbm8tZGVidWcgICAgICAgICAgICBEaXNhYmxlIGRlYnVnZ2luZyBwYW5lbFxuICAgICAgLWIsIC0tbm8tYnJvd3NlciAgICAgICAgICBEbyBub3Qgb3BlbiBhIG5ldyBicm93c2VyIHdpbmRvd1xuICAgICAgLXcsIC0tbm8td2F0Y2ggICAgICAgICAgICBEbyBub3Qgb3BlbiB3YXRjaCBmb3IgZmlsZXN5c3RlbSBjaGFuZ2VzXG4gICAgICAtYywgLS1jaSAgICAgICAgICAgICAgICAgIFJ1biB0aGUgcGFyY2VsIHByZXZpZXdlciBvbiBhIHJlbW90ZSB1bml4IHNlcnZlclxuICAgICAgLS13ZWIzICAgICAgICAgICAgICAgICAgICBDb25uZWN0cyBwcmV2aWV3IHRvIGJyb3dzZXIgd2FsbGV0IHRvIHVzZSB0aGUgYXNzb2NpYXRlZCBhdmF0YXIgYW5kIGFjY291bnRcbiAgICAgIC0tc2tpcC1idWlsZCAgICAgICAgICAgICAgU2tpcCBidWlsZCBhbmQgb25seSBzZXJ2ZSB0aGUgZmlsZXMgaW4gcHJldmlldyBtb2RlXG4gICAgICAtLWRlc2t0b3AtY2xpZW50ICAgICAgICAgIFNob3cgVVJMIHRvIGxhdW5jaCBwcmV2aWV3IGluIHRoZSBkZXNrdG9wIGNsaWVudCAoQkVUQSlcblxuICAgIEV4YW1wbGVzOlxuXG4gICAgLSBTdGFydCBhIGxvY2FsIGRldmVsb3BtZW50IHNlcnZlciBmb3IgYSBEZWNlbnRyYWxhbmQgU2NlbmUgYXQgcG9ydCAzNTAwXG5cbiAgICAgICQgZGNsIHN0YXJ0IC1wIDM1MDBcblxuICAgIC0gU3RhcnQgYSBsb2NhbCBkZXZlbG9wbWVudCBzZXJ2ZXIgZm9yIGEgRGVjZW50cmFsYW5kIFNjZW5lIGF0IGEgZG9ja2VyIGNvbnRhaW5lclxuXG4gICAgICAkIGRjbCBzdGFydCAtLWNpXG5gXG59XG5cbmV4cG9ydCBjb25zdCBtYWluID0gaGFuZGxlcihhc3luYyBmdW5jdGlvbiBtYWluKG9wdGlvbnM6IE9wdGlvbnMpIHtcbiAgY29uc3QgZGlyID0gcmVzb2x2ZShwcm9jZXNzLmN3ZCgpLCBvcHRpb25zLmFyZ3NbJy0tZGlyJ10gfHwgJy4nKVxuICBjb25zdCBpc0NpID0gYXJnc1snLS1jaSddIHx8IHByb2Nlc3MuZW52LkNJIHx8IGZhbHNlXG4gIGNvbnN0IGRlYnVnID0gIWFyZ3NbJy0tbm8tZGVidWcnXSAmJiAhaXNDaVxuICBjb25zdCBvcGVuQnJvd3NlciA9ICFhcmdzWyctLW5vLWJyb3dzZXInXSAmJiAhaXNDaVxuICBjb25zdCBza2lwQnVpbGQgPSBhcmdzWyctLXNraXAtYnVpbGQnXVxuICBjb25zdCB3YXRjaCA9ICFhcmdzWyctLW5vLXdhdGNoJ10gJiYgIWlzQ2kgJiYgIXNraXBCdWlsZFxuICBjb25zdCBlbmFibGVXZWIzID0gYXJnc1snLS13ZWIzJ11cbiAgY29uc3QgcG9ydCA9IHBhcnNlSW50KGFyZ3NbJy0tcG9ydCddISwgMTApIHx8IChhd2FpdCBwcmV2aWV3UG9ydCgpKVxuICBjb25zdCBiYXNlQ29vcmRzID0geyB4OiAwLCB5OiAwIH1cbiAgY29uc3QgaGFzUG9ydGFibGVFeHBlcmllbmNlID0gZmFsc2VcblxuICBjb25zdCBjb21wcyA9IHsgY29tcG9uZW50czogb3B0aW9ucy5jb21wb25lbnRzIH1cbiAgaWYgKCFza2lwQnVpbGQpIHtcbiAgICBhd2FpdCBidWlsZCh7IGFyZ3M6IHsgJy0tZGlyJzogZGlyLCAnLS13YXRjaCc6IHdhdGNoIH0sIC4uLmNvbXBzIH0pXG4gIH1cbiAgYXdhaXQgcHJldmlldyh7IGFyZ3M6IHsgJy0tZGlyJzogZGlyLCAnLS1wb3J0JzogcG9ydCB9LCAuLi5jb21wcyB9KVxuXG4gIGNvbnN0IGlmYWNlcyA9IG9zLm5ldHdvcmtJbnRlcmZhY2VzKClcbiAgY29uc3QgYXZhaWxhYmxlVVJMczogc3RyaW5nW10gPSBbXVxuXG4gIGNvbnNvbGUubG9nKGBcXG5QcmV2aWV3IHNlcnZlciBpcyBub3cgcnVubmluZyFgKVxuICBjb25zb2xlLmxvZygnQXZhaWxhYmxlIG9uOlxcbicpXG5cbiAgT2JqZWN0LmtleXMoaWZhY2VzKS5mb3JFYWNoKChkZXYpID0+IHtcbiAgICA7KGlmYWNlc1tkZXZdIHx8IFtdKS5mb3JFYWNoKChkZXRhaWxzKSA9PiB7XG4gICAgICBpZiAoZGV0YWlscy5mYW1pbHkgPT09ICdJUHY0Jykge1xuICAgICAgICBsZXQgYWRkciA9IGBodHRwOi8vJHtkZXRhaWxzLmFkZHJlc3N9OiR7cG9ydH0/cG9zaXRpb249JHtiYXNlQ29vcmRzLnh9JTJDJHtiYXNlQ29vcmRzLnl9JkVOQUJMRV9FQ1M3YFxuICAgICAgICBpZiAoZGVidWcpIHtcbiAgICAgICAgICBhZGRyID0gYCR7YWRkcn0mU0NFTkVfREVCVUdfUEFORUxgXG4gICAgICAgIH1cbiAgICAgICAgaWYgKGVuYWJsZVdlYjMgfHwgaGFzUG9ydGFibGVFeHBlcmllbmNlKSB7XG4gICAgICAgICAgYWRkciA9IGAke2FkZHJ9JkVOQUJMRV9XRUIzYFxuICAgICAgICB9XG5cbiAgICAgICAgYXZhaWxhYmxlVVJMcy5wdXNoKGFkZHIpXG4gICAgICB9XG4gICAgfSlcbiAgfSlcblxuICAvLyBQdXNoIGxvY2FsaG9zdCBhbmQgMTI3LjAuMC4xIGF0IHRvcFxuICBjb25zdCBzb3J0ZWRVUkxzID0gYXZhaWxhYmxlVVJMcy5zb3J0KChhLCBfYikgPT4ge1xuICAgIHJldHVybiBhLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ2xvY2FsaG9zdCcpIHx8IGEuaW5jbHVkZXMoJzEyNy4wLjAuMScpIHx8IGEuaW5jbHVkZXMoJzAuMC4wLjAnKSA/IC0xIDogMVxuICB9KVxuXG4gIGZvciAoY29uc3QgYWRkciBvZiBzb3J0ZWRVUkxzKSB7XG4gICAgY29uc29sZS5sb2coYCAgICAke2FkZHJ9YClcbiAgfVxuXG4gIGlmIChhcmdzWyctLWRlc2t0b3AtY2xpZW50J10pIHtcbiAgICBjb25zb2xlLmxvZygnXFxuICBEZXNrdG9wIGNsaWVudDpcXG4nKVxuICAgIGZvciAoY29uc3QgYWRkciBvZiBzb3J0ZWRVUkxzKSB7XG4gICAgICBjb25zdCBzZWFyY2hQYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKClcbiAgICAgIHNlYXJjaFBhcmFtcy5hcHBlbmQoJ1BSRVZJRVctTU9ERScsIGFkZHIpXG4gICAgICBjb25zb2xlLmxvZyhgICAgIGRjbDovLyR7c2VhcmNoUGFyYW1zLnRvU3RyaW5nKCl9JmApXG4gICAgfVxuICB9XG5cbiAgY29uc29sZS5sb2coJ1xcbiAgRGV0YWlsczpcXG4nKVxuICBjb25zb2xlLmxvZygnXFxuUHJlc3MgQ1RSTCtDIHRvIGV4aXRcXG4nKVxuXG4gIC8vIE9wZW4gcHJlZmVyYWJseSBsb2NhbGhvc3QvMTI3LjAuMC4xXG4gIGlmIChvcGVuQnJvd3NlciAmJiBzb3J0ZWRVUkxzLmxlbmd0aCAmJiAhYXJnc1snLS1kZXNrdG9wLWNsaWVudCddKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IG9wZW4oc29ydGVkVVJMc1swXSlcbiAgICB9IGNhdGNoIChfKSB7XG4gICAgICBjb25zb2xlLmxvZygnVW5hYmxlIHRvIG9wZW4gYnJvd3NlciBhdXRvbWF0aWNhbGx5LicpXG4gICAgfVxuICB9XG59KVxuIl19
|
123
|
+
}
|
124
|
+
exports.main = main;
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSw0Q0FBbUI7QUFDbkIsK0JBQThCO0FBQzlCLGdEQUF1QjtBQUd2QixvQ0FBd0M7QUFDeEMsd0NBQTRDO0FBQzVDLDBDQUE2QztBQUM3QywyQ0FBMEM7QUFDMUMsOENBQXlDO0FBTzVCLFFBQUEsSUFBSSxHQUFHLElBQUEsY0FBTyxFQUFDO0lBQzFCLE9BQU8sRUFBRSxNQUFNO0lBQ2YsUUFBUSxFQUFFLE9BQU87SUFDakIsUUFBUSxFQUFFLE1BQU07SUFDaEIsWUFBWSxFQUFFLE9BQU87SUFDckIsY0FBYyxFQUFFLE9BQU87SUFDdkIsWUFBWSxFQUFFLE9BQU87SUFDckIsTUFBTSxFQUFFLE9BQU87SUFDZixnQkFBZ0IsRUFBRSxPQUFPO0lBQ3pCLFFBQVEsRUFBRSxPQUFPO0lBQ2pCLElBQUksRUFBRSxRQUFRO0lBQ2QsSUFBSSxFQUFFLFFBQVE7SUFDZCxJQUFJLEVBQUUsWUFBWTtJQUNsQixJQUFJLEVBQUUsY0FBYztJQUNwQixJQUFJLEVBQUUsWUFBWTtJQUNsQixjQUFjLEVBQUUsT0FBTztJQUN2QixrQkFBa0IsRUFBRSxPQUFPO0NBQzVCLENBQUMsQ0FBQTtBQUVGLFNBQWdCLElBQUk7SUFDbEIsT0FBTzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBd0JSLENBQUE7QUFDRCxDQUFDO0FBMUJELG9CQTBCQztBQUVNLEtBQUssVUFBVSxJQUFJLENBQUMsT0FBZ0I7SUFDekMsTUFBTSxHQUFHLEdBQUcsSUFBQSxjQUFPLEVBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUE7SUFDaEUsTUFBTSxJQUFJLEdBQUcsWUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLEtBQUssQ0FB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QUMsQ0FBQyxDQUFBO0lBQzNHLENBQUMsQ0FBQyxDQUFBO0lBRUYsS0FBSyxNQUFNLElBQUksSUFBSSxVQUFVLEVBQUU7UUFDN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUE7S0FDM0I7SUFFRCxJQUFJLFlBQUksQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFO1FBQzVCLE9BQU8sQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsQ0FBQTtRQUNwQyxLQUFLLE1BQU0sSUFBSSxJQUFJLFVBQVUsRUFBRTtZQUM3QixNQUFNLFlBQVksR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFBO1lBQzFDLFlBQVksQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxDQUFBO1lBQ3pDLE9BQU8sQ0FBQyxHQUFHLENBQUMsYUFBYSxZQUFZLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFBO1NBQ3JEO0tBQ0Y7SUFFRCxPQUFPLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUE7SUFDN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0lBR3ZDLElBQUksV0FBVyxJQUFJLFVBQVUsQ0FBQyxNQUFNLElBQUksQ0FBQyxZQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRTtRQUNqRSxJQUFJO1lBQ0YsTUFBTSxJQUFBLGNBQUksRUFBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtTQUMxQjtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsT0FBTyxDQUFDLEdBQUcsQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFBO1NBQ3JEO0tBQ0Y7QUFDSCxDQUFDO0FBOUVELG9CQThFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBvcyBmcm9tICdvcydcbmltcG9ydCB7IHJlc29sdmUgfSBmcm9tICdwYXRoJ1xuaW1wb3J0IG9wZW4gZnJvbSAnb3BlbidcblxuaW1wb3J0IHsgQ2xpQ29tcG9uZW50cyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMnXG5pbXBvcnQgeyBtYWluIGFzIGJ1aWxkIH0gZnJvbSAnLi4vYnVpbGQnXG5pbXBvcnQgeyBtYWluIGFzIHByZXZpZXcgfSBmcm9tICcuLi9wcmV2aWV3J1xuaW1wb3J0IHsgcHJldmlld1BvcnQgfSBmcm9tICcuLi9wcmV2aWV3L3BvcnQnXG5pbXBvcnQgeyBnZXRBcmdzIH0gZnJvbSAnLi4vLi4vdXRpbHMvYXJncydcbmltcG9ydCB7IG5wbVJ1biB9IGZyb20gJy4uL2J1aWxkL2hlbHBlcnMnXG5cbmludGVyZmFjZSBPcHRpb25zIHtcbiAgYXJnczogdHlwZW9mIGFyZ3NcbiAgY29tcG9uZW50czogUGljazxDbGlDb21wb25lbnRzLCAnZmV0Y2gnIHwgJ2ZzJz5cbn1cblxuZXhwb3J0IGNvbnN0IGFyZ3MgPSBnZXRBcmdzKHtcbiAgJy0tZGlyJzogU3RyaW5nLFxuICAnLS1oZWxwJzogQm9vbGVhbixcbiAgJy0tcG9ydCc6IFN0cmluZyxcbiAgJy0tbm8tZGVidWcnOiBCb29sZWFuLFxuICAnLS1uby1icm93c2VyJzogQm9vbGVhbixcbiAgJy0tbm8td2F0Y2gnOiBCb29sZWFuLFxuICAnLS1jaSc6IEJvb2xlYW4sXG4gICctLXNraXAtaW5zdGFsbCc6IEJvb2xlYW4sXG4gICctLXdlYjMnOiBCb29sZWFuLFxuICAnLWgnOiAnLS1oZWxwJyxcbiAgJy1wJzogJy0tcG9ydCcsXG4gICctZCc6ICctLW5vLWRlYnVnJyxcbiAgJy1iJzogJy0tbm8tYnJvd3NlcicsXG4gICctdyc6ICctLW5vLXdhdGNoJyxcbiAgJy0tc2tpcC1idWlsZCc6IEJvb2xlYW4sXG4gICctLWRlc2t0b3AtY2xpZW50JzogQm9vbGVhblxufSlcblxuZXhwb3J0IGZ1bmN0aW9uIGhlbHAoKSB7XG4gIHJldHVybiBgXG4gIFVzYWdlOiBkY2wgc3RhcnQgW29wdGlvbnNdXG5cbiAgICBPcHRpb25zOlxuXG4gICAgICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgIERpc3BsYXlzIGNvbXBsZXRlIGhlbHBcbiAgICAgIC1wLCAtLXBvcnQgICAgICAgIFtwb3J0XSAgU2VsZWN0IGEgY3VzdG9tIHBvcnQgZm9yIHRoZSBkZXZlbG9wbWVudCBzZXJ2ZXJcbiAgICAgIC1kLCAtLW5vLWRlYnVnICAgICAgICAgICAgRGlzYWJsZSBkZWJ1Z2dpbmcgcGFuZWxcbiAgICAgIC1iLCAtLW5vLWJyb3dzZXIgICAgICAgICAgRG8gbm90IG9wZW4gYSBuZXcgYnJvd3NlciB3aW5kb3dcbiAgICAgIC13LCAtLW5vLXdhdGNoICAgICAgICAgICAgRG8gbm90IG9wZW4gd2F0Y2ggZm9yIGZpbGVzeXN0ZW0gY2hhbmdlc1xuICAgICAgLWMsIC0tY2kgICAgICAgICAgICAgICAgICBSdW4gdGhlIHBhcmNlbCBwcmV2aWV3ZXIgb24gYSByZW1vdGUgdW5peCBzZXJ2ZXJcbiAgICAgIC0td2ViMyAgICAgICAgICAgICAgICAgICAgQ29ubmVjdHMgcHJldmlldyB0byBicm93c2VyIHdhbGxldCB0byB1c2UgdGhlIGFzc29jaWF0ZWQgYXZhdGFyIGFuZCBhY2NvdW50XG4gICAgICAtLXNraXAtYnVpbGQgICAgICAgICAgICAgIFNraXAgYnVpbGQgYW5kIG9ubHkgc2VydmUgdGhlIGZpbGVzIGluIHByZXZpZXcgbW9kZVxuICAgICAgLS1kZXNrdG9wLWNsaWVudCAgICAgICAgICBTaG93IFVSTCB0byBsYXVuY2ggcHJldmlldyBpbiB0aGUgZGVza3RvcCBjbGllbnQgKEJFVEEpXG5cbiAgICBFeGFtcGxlczpcblxuICAgIC0gU3RhcnQgYSBsb2NhbCBkZXZlbG9wbWVudCBzZXJ2ZXIgZm9yIGEgRGVjZW50cmFsYW5kIFNjZW5lIGF0IHBvcnQgMzUwMFxuXG4gICAgICAkIGRjbCBzdGFydCAtcCAzNTAwXG5cbiAgICAtIFN0YXJ0IGEgbG9jYWwgZGV2ZWxvcG1lbnQgc2VydmVyIGZvciBhIERlY2VudHJhbGFuZCBTY2VuZSBhdCBhIGRvY2tlciBjb250YWluZXJcblxuICAgICAgJCBkY2wgc3RhcnQgLS1jaVxuYFxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbWFpbihvcHRpb25zOiBPcHRpb25zKSB7XG4gIGNvbnN0IGRpciA9IHJlc29sdmUocHJvY2Vzcy5jd2QoKSwgb3B0aW9ucy5hcmdzWyctLWRpciddIHx8ICcuJylcbiAgY29uc3QgaXNDaSA9IGFyZ3NbJy0tY2knXSB8fCBwcm9jZXNzLmVudi5DSSB8fCBmYWxzZVxuICBjb25zdCBkZWJ1ZyA9ICFhcmdzWyctLW5vLWRlYnVnJ10gJiYgIWlzQ2lcbiAgY29uc3Qgb3BlbkJyb3dzZXIgPSAhYXJnc1snLS1uby1icm93c2VyJ10gJiYgIWlzQ2lcbiAgY29uc3Qgc2tpcEJ1aWxkID0gYXJnc1snLS1za2lwLWJ1aWxkJ11cbiAgY29uc3Qgd2F0Y2ggPSAhYXJnc1snLS1uby13YXRjaCddXG4gIGNvbnN0IGVuYWJsZVdlYjMgPSBhcmdzWyctLXdlYjMnXVxuICBjb25zdCBwb3J0ID0gcGFyc2VJbnQoYXJnc1snLS1wb3J0J10hLCAxMCkgfHwgKGF3YWl0IHByZXZpZXdQb3J0KCkpXG4gIGNvbnN0IGJhc2VDb29yZHMgPSB7IHg6IDAsIHk6IDAgfVxuICBjb25zdCBoYXNQb3J0YWJsZUV4cGVyaWVuY2UgPSBmYWxzZVxuXG4gIGNvbnN0IGNvbXBzID0geyBjb21wb25lbnRzOiBvcHRpb25zLmNvbXBvbmVudHMgfVxuXG4gIC8vIGZpcnN0IHJ1biBgbnBtIHJ1biBidWlsZGAsIHRoaXMgY2FuIGJlIGRpc2FibGVkIHdpdGggLS1za2lwLWJ1aWxkXG4gIGlmICghc2tpcEJ1aWxkKSB7XG4gICAgYXdhaXQgbnBtUnVuKGRpciwgJ2J1aWxkJylcbiAgfVxuXG4gIC8vIHRoZW4gc3RhcnQgdGhlIGVtYmVkZGVkIGNvbXBpbGVyLCB0aGlzIGNhbiBiZSBkaXNhYmxlZCB3aXRoIC0tbm8td2F0Y2hcbiAgaWYgKHdhdGNoKSB7XG4gICAgYXdhaXQgYnVpbGQoeyBhcmdzOiB7ICctLWRpcic6IGRpciwgJy0td2F0Y2gnOiB3YXRjaCB9LCAuLi5jb21wcyB9KVxuICB9XG5cbiAgLy8gYWZ0ZXIgdGhlIHdhdGNoZXIgaXMgcnVubmluZywgc3RhcnQgdGhlIHNlcnZlclxuICBhd2FpdCBwcmV2aWV3KHsgYXJnczogeyAnLS1kaXInOiBkaXIsICctLXBvcnQnOiBwb3J0IH0sIC4uLmNvbXBzIH0pXG5cbiAgY29uc3QgbmV0d29ya0ludGVyZmFjZXMgPSBvcy5uZXR3b3JrSW50ZXJmYWNlcygpXG4gIGNvbnN0IGF2YWlsYWJsZVVSTHM6IHN0cmluZ1tdID0gW11cblxuICBjb25zb2xlLmxvZyhgXFxuUHJldmlldyBzZXJ2ZXIgaXMgbm93IHJ1bm5pbmchYClcbiAgY29uc29sZS5sb2coJ0F2YWlsYWJsZSBvbjpcXG4nKVxuXG4gIE9iamVjdC5rZXlzKG5ldHdvcmtJbnRlcmZhY2VzKS5mb3JFYWNoKChkZXYpID0+IHtcbiAgICA7KG5ldHdvcmtJbnRlcmZhY2VzW2Rldl0gfHwgW10pLmZvckVhY2goKGRldGFpbHMpID0+IHtcbiAgICAgIGlmIChkZXRhaWxzLmZhbWlseSA9PT0gJ0lQdjQnKSB7XG4gICAgICAgIGxldCBhZGRyID0gYGh0dHA6Ly8ke2RldGFpbHMuYWRkcmVzc306JHtwb3J0fT9wb3NpdGlvbj0ke2Jhc2VDb29yZHMueH0lMkMke2Jhc2VDb29yZHMueX0mRU5BQkxFX0VDUzdgXG4gICAgICAgIGlmIChkZWJ1Zykge1xuICAgICAgICAgIGFkZHIgPSBgJHthZGRyfSZTQ0VORV9ERUJVR19QQU5FTGBcbiAgICAgICAgfVxuICAgICAgICBpZiAoZW5hYmxlV2ViMyB8fCBoYXNQb3J0YWJsZUV4cGVyaWVuY2UpIHtcbiAgICAgICAgICBhZGRyID0gYCR7YWRkcn0mRU5BQkxFX1dFQjNgXG4gICAgICAgIH1cblxuICAgICAgICBhdmFpbGFibGVVUkxzLnB1c2goYWRkcilcbiAgICAgIH1cbiAgICB9KVxuICB9KVxuXG4gIC8vIFB1c2ggbG9jYWxob3N0IGFuZCAxMjcuMC4wLjEgYXQgdG9wXG4gIGNvbnN0IHNvcnRlZFVSTHMgPSBhdmFpbGFibGVVUkxzLnNvcnQoKGEsIF9iKSA9PiB7XG4gICAgcmV0dXJuIGEudG9Mb3dlckNhc2UoKS5pbmNsdWRlcygnbG9jYWxob3N0JykgfHwgYS5pbmNsdWRlcygnMTI3LjAuMC4xJykgfHwgYS5pbmNsdWRlcygnMC4wLjAuMCcpID8gLTEgOiAxXG4gIH0pXG5cbiAgZm9yIChjb25zdCBhZGRyIG9mIHNvcnRlZFVSTHMpIHtcbiAgICBjb25zb2xlLmxvZyhgICAgICR7YWRkcn1gKVxuICB9XG5cbiAgaWYgKGFyZ3NbJy0tZGVza3RvcC1jbGllbnQnXSkge1xuICAgIGNvbnNvbGUubG9nKCdcXG4gIERlc2t0b3AgY2xpZW50OlxcbicpXG4gICAgZm9yIChjb25zdCBhZGRyIG9mIHNvcnRlZFVSTHMpIHtcbiAgICAgIGNvbnN0IHNlYXJjaFBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMoKVxuICAgICAgc2VhcmNoUGFyYW1zLmFwcGVuZCgnUFJFVklFVy1NT0RFJywgYWRkcilcbiAgICAgIGNvbnNvbGUubG9nKGAgICAgZGNsOi8vJHtzZWFyY2hQYXJhbXMudG9TdHJpbmcoKX0mYClcbiAgICB9XG4gIH1cblxuICBjb25zb2xlLmxvZygnXFxuICBEZXRhaWxzOlxcbicpXG4gIGNvbnNvbGUubG9nKCdcXG5QcmVzcyBDVFJMK0MgdG8gZXhpdFxcbicpXG5cbiAgLy8gT3BlbiBwcmVmZXJhYmx5IGxvY2FsaG9zdC8xMjcuMC4wLjFcbiAgaWYgKG9wZW5Ccm93c2VyICYmIHNvcnRlZFVSTHMubGVuZ3RoICYmICFhcmdzWyctLWRlc2t0b3AtY2xpZW50J10pIHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgb3Blbihzb3J0ZWRVUkxzWzBdKVxuICAgIH0gY2F0Y2ggKF8pIHtcbiAgICAgIGNvbnNvbGUubG9nKCdVbmFibGUgdG8gb3BlbiBicm93c2VyIGF1dG9tYXRpY2FsbHkuJylcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
@@ -7,7 +7,8 @@ import { main as build } from '../build'
|
|
7
7
|
import { main as preview } from '../preview'
|
8
8
|
import { previewPort } from '../preview/port'
|
9
9
|
import { getArgs } from '../../utils/args'
|
10
|
-
import {
|
10
|
+
import { npmRun } from '../build/helpers'
|
11
|
+
|
11
12
|
interface Options {
|
12
13
|
args: typeof args
|
13
14
|
components: Pick<CliComponents, 'fetch' | 'fs'>
|
@@ -60,32 +61,41 @@ export function help() {
|
|
60
61
|
`
|
61
62
|
}
|
62
63
|
|
63
|
-
export
|
64
|
+
export async function main(options: Options) {
|
64
65
|
const dir = resolve(process.cwd(), options.args['--dir'] || '.')
|
65
66
|
const isCi = args['--ci'] || process.env.CI || false
|
66
67
|
const debug = !args['--no-debug'] && !isCi
|
67
68
|
const openBrowser = !args['--no-browser'] && !isCi
|
68
69
|
const skipBuild = args['--skip-build']
|
69
|
-
const watch = !args['--no-watch']
|
70
|
+
const watch = !args['--no-watch']
|
70
71
|
const enableWeb3 = args['--web3']
|
71
72
|
const port = parseInt(args['--port']!, 10) || (await previewPort())
|
72
73
|
const baseCoords = { x: 0, y: 0 }
|
73
74
|
const hasPortableExperience = false
|
74
75
|
|
75
76
|
const comps = { components: options.components }
|
77
|
+
|
78
|
+
// first run `npm run build`, this can be disabled with --skip-build
|
76
79
|
if (!skipBuild) {
|
80
|
+
await npmRun(dir, 'build')
|
81
|
+
}
|
82
|
+
|
83
|
+
// then start the embedded compiler, this can be disabled with --no-watch
|
84
|
+
if (watch) {
|
77
85
|
await build({ args: { '--dir': dir, '--watch': watch }, ...comps })
|
78
86
|
}
|
87
|
+
|
88
|
+
// after the watcher is running, start the server
|
79
89
|
await preview({ args: { '--dir': dir, '--port': port }, ...comps })
|
80
90
|
|
81
|
-
const
|
91
|
+
const networkInterfaces = os.networkInterfaces()
|
82
92
|
const availableURLs: string[] = []
|
83
93
|
|
84
94
|
console.log(`\nPreview server is now running!`)
|
85
95
|
console.log('Available on:\n')
|
86
96
|
|
87
|
-
Object.keys(
|
88
|
-
;(
|
97
|
+
Object.keys(networkInterfaces).forEach((dev) => {
|
98
|
+
;(networkInterfaces[dev] || []).forEach((details) => {
|
89
99
|
if (details.family === 'IPv4') {
|
90
100
|
let addr = `http://${details.address}:${port}?position=${baseCoords.x}%2C${baseCoords.y}&ENABLE_ECS7`
|
91
101
|
if (debug) {
|
@@ -129,4 +139,4 @@ export const main = handler(async function main(options: Options) {
|
|
129
139
|
console.log('Unable to open browser automatically.')
|
130
140
|
}
|
131
141
|
}
|
132
|
-
}
|
142
|
+
}
|
package/cli/index.js
CHANGED
@@ -1,22 +1,45 @@
|
|
1
1
|
#!/usr/bin/env node
|
2
2
|
"use strict";
|
3
|
-
var
|
4
|
-
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
4
|
+
if (k2 === undefined) k2 = k;
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
8
|
+
}
|
9
|
+
Object.defineProperty(o, k2, desc);
|
10
|
+
}) : (function(o, m, k, k2) {
|
11
|
+
if (k2 === undefined) k2 = k;
|
12
|
+
o[k2] = m[k];
|
13
|
+
}));
|
14
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
15
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
16
|
+
}) : function(o, v) {
|
17
|
+
o["default"] = v;
|
18
|
+
});
|
19
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
20
|
+
if (mod && mod.__esModule) return mod;
|
21
|
+
var result = {};
|
22
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
23
|
+
__setModuleDefault(result, mod);
|
24
|
+
return result;
|
5
25
|
};
|
6
26
|
Object.defineProperty(exports, "__esModule", { value: true });
|
7
27
|
const args_1 = require("./utils/args");
|
8
28
|
const out_messages_1 = require("./utils/out-messages");
|
9
|
-
const
|
29
|
+
const log = __importStar(require("./utils/log"));
|
10
30
|
const error_1 = require("./utils/error");
|
11
31
|
const commands_1 = require("./utils/commands");
|
12
32
|
const components_1 = require("./components");
|
13
33
|
const listCommandsStr = (commands) => (0, out_messages_1.toStringList)(commands.map(($) => `npx @dcl/sdk ${$}`));
|
14
34
|
const handleError = (err) => {
|
15
|
-
if (
|
16
|
-
|
35
|
+
if (err instanceof error_1.CliError) {
|
36
|
+
log.fail(err.message);
|
37
|
+
}
|
38
|
+
else {
|
39
|
+
console.error(err);
|
40
|
+
log.warn(`Developer: All errors thrown must be an instance of "CliError"`);
|
17
41
|
}
|
18
|
-
|
19
|
-
process.exit(1);
|
42
|
+
process.exitCode = 1;
|
20
43
|
};
|
21
44
|
const commandFnsAreValid = (fns) => {
|
22
45
|
const { help, main } = fns;
|
@@ -28,16 +51,16 @@ const commandFnsAreValid = (fns) => {
|
|
28
51
|
}
|
29
52
|
return true;
|
30
53
|
};
|
31
|
-
|
32
|
-
const helpMessage = (commands) => `Here is the list of commands:\n${listCommandsStr(commands)}`;
|
33
|
-
(
|
54
|
+
async function main() {
|
55
|
+
const helpMessage = (commands) => `Here is the list of commands:\n${listCommandsStr(commands)}`;
|
56
|
+
const args = (0, args_1.getArgs)();
|
34
57
|
const command = process.argv[2];
|
35
58
|
const needsHelp = args['--help'];
|
36
59
|
const components = (0, components_1.initComponents)();
|
37
60
|
const commands = await (0, commands_1.getCommands)(components);
|
38
61
|
if (!commands.includes(command)) {
|
39
62
|
if (needsHelp) {
|
40
|
-
|
63
|
+
log.info(helpMessage(commands));
|
41
64
|
return;
|
42
65
|
}
|
43
66
|
throw new error_1.CliError(`Command ${command} is invalid. ${helpMessage(commands)}`);
|
@@ -47,5 +70,7 @@ const helpMessage = (commands) => `Here is the list of commands:\n${listCommands
|
|
47
70
|
const options = { args: cmd.args, components };
|
48
71
|
needsHelp ? await cmd.help(options) : await cmd.main(options);
|
49
72
|
}
|
50
|
-
|
51
|
-
|
73
|
+
process.exit(process.exitCode || 0);
|
74
|
+
}
|
75
|
+
main().catch(handleError);
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU9BLHVDQUFzQztBQUN0Qyx1REFBbUQ7QUFDbkQsaURBQWtDO0FBQ2xDLHlDQUF3QztBQUN4QywrQ0FBNkQ7QUFDN0QsNkNBQTREO0FBZ0I1RCxNQUFNLGVBQWUsR0FBRyxDQUFDLFFBQWtCLEVBQUUsRUFBRSxDQUFDLElBQUEsMkJBQVksRUFBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO0FBRXRHLE1BQU0sV0FBVyxHQUFHLENBQUMsR0FBVSxFQUFFLEVBQUU7SUFDakMsSUFBSSxHQUFHLFlBQVksZ0JBQVEsRUFBRTtRQUMzQixHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQTtLQUN0QjtTQUFNO1FBRUwsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNsQixHQUFHLENBQUMsSUFBSSxDQUFDLGdFQUFnRSxDQUFDLENBQUE7S0FDM0U7SUFHRCxPQUFPLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQTtBQUN0QixDQUFDLENBQUE7QUFFRCxNQUFNLGtCQUFrQixHQUFHLENBQUMsR0FBZ0IsRUFBZ0MsRUFBRTtJQUM1RSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLEdBQUcsQ0FBQTtJQUMxQixJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ2xCLE1BQU0sSUFBSSxnQkFBUSxDQUFDOzs7S0FHbEIsQ0FBQyxDQUFBO0tBQ0g7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUMsQ0FBQTtBQUVELEtBQUssVUFBVSxJQUFJO0lBQ2pCLE1BQU0sV0FBVyxHQUFHLENBQUMsUUFBa0IsRUFBRSxFQUFFLENBQUMsa0NBQWtDLGVBQWUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFBO0lBQ3pHLE1BQU0sSUFBSSxHQUFHLElBQUEsY0FBTyxHQUFFLENBQUE7SUFDdEIsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUMvQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDaEMsTUFBTSxVQUFVLEdBQWtCLElBQUEsMkJBQWMsR0FBRSxDQUFBO0lBRWxELE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBQSxzQkFBVyxFQUFDLFVBQVUsQ0FBQyxDQUFBO0lBRTlDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQy9CLElBQUksU0FBUyxFQUFFO1lBQ2IsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQTtZQUMvQixPQUFNO1NBQ1A7UUFDRCxNQUFNLElBQUksZ0JBQVEsQ0FBQyxXQUFXLE9BQU8sZ0JBQWdCLFdBQVcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUE7S0FDOUU7SUFHRCxNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyx3QkFBYSxJQUFJLE9BQU8sRUFBRSxDQUFDLENBQUE7SUFFbEQsSUFBSSxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUMzQixNQUFNLE9BQU8sR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFBO1FBQzlDLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7S0FDOUQ7SUFJRCxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLENBQUE7QUFDckMsQ0FBQztBQUVELElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcblxuLypcbiAgaXN0YW5idWwgaWdub3JlIGZpbGVcbiAgRG9lc24ndCBtYWtlIHNlbnNlIHRvIHRlc3QgdGhpcyBmaWxlXG4qL1xuXG5pbXBvcnQgeyBnZXRBcmdzIH0gZnJvbSAnLi91dGlscy9hcmdzJ1xuaW1wb3J0IHsgdG9TdHJpbmdMaXN0IH0gZnJvbSAnLi91dGlscy9vdXQtbWVzc2FnZXMnXG5pbXBvcnQgKiBhcyBsb2cgZnJvbSAnLi91dGlscy9sb2cnXG5pbXBvcnQgeyBDbGlFcnJvciB9IGZyb20gJy4vdXRpbHMvZXJyb3InXG5pbXBvcnQgeyBDT01NQU5EU19QQVRILCBnZXRDb21tYW5kcyB9IGZyb20gJy4vdXRpbHMvY29tbWFuZHMnXG5pbXBvcnQgeyBDbGlDb21wb25lbnRzLCBpbml0Q29tcG9uZW50cyB9IGZyb20gJy4vY29tcG9uZW50cydcblxuZXhwb3J0IGludGVyZmFjZSBPcHRpb25zIHtcbiAgYXJnczogUmV0dXJuVHlwZTx0eXBlb2YgZ2V0QXJncz5cbiAgY29tcG9uZW50czogQ2xpQ29tcG9uZW50c1xufVxuXG4vLyBsZWF2aW5nIGFyZ3MgYXMgXCJhbnlcIiBzaW5jZSB3ZSBkb24ndCBrbm93IHlldCBpZiB3ZSB3aWxsIHVzZSB0aGVtXG50eXBlIEZpbGVGbiA9IChvcHRpb25zOiBPcHRpb25zKSA9PiBQcm9taXNlPHZvaWQ+XG5cbmludGVyZmFjZSBGaWxlRXhwb3J0cyB7XG4gIGhlbHA/OiBGaWxlRm5cbiAgbWFpbj86IEZpbGVGblxuICBhcmdzPzogUmV0dXJuVHlwZTx0eXBlb2YgZ2V0QXJncz5cbn1cblxuY29uc3QgbGlzdENvbW1hbmRzU3RyID0gKGNvbW1hbmRzOiBzdHJpbmdbXSkgPT4gdG9TdHJpbmdMaXN0KGNvbW1hbmRzLm1hcCgoJCkgPT4gYG5weCBAZGNsL3NkayAkeyR9YCkpXG5cbmNvbnN0IGhhbmRsZUVycm9yID0gKGVycjogRXJyb3IpID0+IHtcbiAgaWYgKGVyciBpbnN0YW5jZW9mIENsaUVycm9yKSB7XG4gICAgbG9nLmZhaWwoZXJyLm1lc3NhZ2UpXG4gIH0gZWxzZSB7XG4gICAgLy8gbG9nIHdpdGggY29uc29sZSB0byBzaG93IHN0YWNrdHJhY2UgYW5kIGRlYnVnIGluZm9ybWF0aW9uXG4gICAgY29uc29sZS5lcnJvcihlcnIpXG4gICAgbG9nLndhcm4oYERldmVsb3BlcjogQWxsIGVycm9ycyB0aHJvd24gbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBcIkNsaUVycm9yXCJgKVxuICB9XG5cbiAgLy8gc2V0IGFuIGV4aXQgY29kZSBidXQgbm90IGZpbmlzaCB0aGUgcHJvZ3JhbSBpbW1lZGlhdGVseSB0byBjbG9zZSBhbnkgcGVuZGluZyB3b3JrXG4gIHByb2Nlc3MuZXhpdENvZGUgPSAxXG59XG5cbmNvbnN0IGNvbW1hbmRGbnNBcmVWYWxpZCA9IChmbnM6IEZpbGVFeHBvcnRzKTogZm5zIGlzIFJlcXVpcmVkPEZpbGVFeHBvcnRzPiA9PiB7XG4gIGNvbnN0IHsgaGVscCwgbWFpbiB9ID0gZm5zXG4gIGlmICghaGVscCB8fCAhbWFpbikge1xuICAgIHRocm93IG5ldyBDbGlFcnJvcihgQ29tbWFuZCBkb2VzIG5vdCBmb2xsb3cgaW1wbGVtZW50YXRpb24gcnVsZXM6XG4gICAgICAqIFJlcXVpcmVzIGEgXCJoZWxwXCIgZnVuY3Rpb25cbiAgICAgICogUmVxdWlyZXMgYSBcIm1haW5cIiBmdW5jdGlvblxuICAgIGApXG4gIH1cbiAgcmV0dXJuIHRydWVcbn1cblxuYXN5bmMgZnVuY3Rpb24gbWFpbigpIHtcbiAgY29uc3QgaGVscE1lc3NhZ2UgPSAoY29tbWFuZHM6IHN0cmluZ1tdKSA9PiBgSGVyZSBpcyB0aGUgbGlzdCBvZiBjb21tYW5kczpcXG4ke2xpc3RDb21tYW5kc1N0cihjb21tYW5kcyl9YFxuICBjb25zdCBhcmdzID0gZ2V0QXJncygpXG4gIGNvbnN0IGNvbW1hbmQgPSBwcm9jZXNzLmFyZ3ZbMl1cbiAgY29uc3QgbmVlZHNIZWxwID0gYXJnc1snLS1oZWxwJ11cbiAgY29uc3QgY29tcG9uZW50czogQ2xpQ29tcG9uZW50cyA9IGluaXRDb21wb25lbnRzKClcblxuICBjb25zdCBjb21tYW5kcyA9IGF3YWl0IGdldENvbW1hbmRzKGNvbXBvbmVudHMpXG5cbiAgaWYgKCFjb21tYW5kcy5pbmNsdWRlcyhjb21tYW5kKSkge1xuICAgIGlmIChuZWVkc0hlbHApIHtcbiAgICAgIGxvZy5pbmZvKGhlbHBNZXNzYWdlKGNvbW1hbmRzKSlcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0aHJvdyBuZXcgQ2xpRXJyb3IoYENvbW1hbmQgJHtjb21tYW5kfSBpcyBpbnZhbGlkLiAke2hlbHBNZXNzYWdlKGNvbW1hbmRzKX1gKVxuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby12YXItcmVxdWlyZXNcbiAgY29uc3QgY21kID0gcmVxdWlyZShgJHtDT01NQU5EU19QQVRIfS8ke2NvbW1hbmR9YClcblxuICBpZiAoY29tbWFuZEZuc0FyZVZhbGlkKGNtZCkpIHtcbiAgICBjb25zdCBvcHRpb25zID0geyBhcmdzOiBjbWQuYXJncywgY29tcG9uZW50cyB9XG4gICAgbmVlZHNIZWxwID8gYXdhaXQgY21kLmhlbHAob3B0aW9ucykgOiBhd2FpdCBjbWQubWFpbihvcHRpb25zKVxuICB9XG5cbiAgLy8gcm9sbHVwIHdhdGNoZXIgbGVhdmVzIG1hbnkgb3BlbiBGU1dhdGNoZXIgZXZlbiBpbiBidWlsZCBtb2RlLiB3ZSBtdXN0IGNhbGxcbiAgLy8gcHJvY2Vzcy5leGl0IGF0IHRoaXMgcG9pbnQgdG8gcHJldmVudCB0aGUgcHJvZ3JhbSBoYWx0aW5nIGZvcmV2ZXJcbiAgcHJvY2Vzcy5leGl0KHByb2Nlc3MuZXhpdENvZGUgfHwgMClcbn1cblxubWFpbigpLmNhdGNoKGhhbmRsZUVycm9yKVxuIl19
|
package/cli/index.ts
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
|
8
8
|
import { getArgs } from './utils/args'
|
9
9
|
import { toStringList } from './utils/out-messages'
|
10
|
-
import log from './utils/log'
|
10
|
+
import * as log from './utils/log'
|
11
11
|
import { CliError } from './utils/error'
|
12
12
|
import { COMMANDS_PATH, getCommands } from './utils/commands'
|
13
13
|
import { CliComponents, initComponents } from './components'
|
@@ -28,12 +28,17 @@ interface FileExports {
|
|
28
28
|
|
29
29
|
const listCommandsStr = (commands: string[]) => toStringList(commands.map(($) => `npx @dcl/sdk ${$}`))
|
30
30
|
|
31
|
-
const handleError = (err:
|
32
|
-
if (
|
31
|
+
const handleError = (err: Error) => {
|
32
|
+
if (err instanceof CliError) {
|
33
|
+
log.fail(err.message)
|
34
|
+
} else {
|
35
|
+
// log with console to show stacktrace and debug information
|
36
|
+
console.error(err)
|
33
37
|
log.warn(`Developer: All errors thrown must be an instance of "CliError"`)
|
34
38
|
}
|
35
|
-
|
36
|
-
|
39
|
+
|
40
|
+
// set an exit code but not finish the program immediately to close any pending work
|
41
|
+
process.exitCode = 1
|
37
42
|
}
|
38
43
|
|
39
44
|
const commandFnsAreValid = (fns: FileExports): fns is Required<FileExports> => {
|
@@ -47,10 +52,9 @@ const commandFnsAreValid = (fns: FileExports): fns is Required<FileExports> => {
|
|
47
52
|
return true
|
48
53
|
}
|
49
54
|
|
50
|
-
|
51
|
-
const helpMessage = (commands: string[]) => `Here is the list of commands:\n${listCommandsStr(commands)}`
|
52
|
-
|
53
|
-
;(async () => {
|
55
|
+
async function main() {
|
56
|
+
const helpMessage = (commands: string[]) => `Here is the list of commands:\n${listCommandsStr(commands)}`
|
57
|
+
const args = getArgs()
|
54
58
|
const command = process.argv[2]
|
55
59
|
const needsHelp = args['--help']
|
56
60
|
const components: CliComponents = initComponents()
|
@@ -72,4 +76,10 @@ const helpMessage = (commands: string[]) => `Here is the list of commands:\n${li
|
|
72
76
|
const options = { args: cmd.args, components }
|
73
77
|
needsHelp ? await cmd.help(options) : await cmd.main(options)
|
74
78
|
}
|
75
|
-
|
79
|
+
|
80
|
+
// rollup watcher leaves many open FSWatcher even in build mode. we must call
|
81
|
+
// process.exit at this point to prevent the program halting forever
|
82
|
+
process.exit(process.exitCode || 0)
|
83
|
+
}
|
84
|
+
|
85
|
+
main().catch(handleError)
|
package/cli/utils/exec.d.ts
CHANGED
@@ -4,5 +4,5 @@ interface Options {
|
|
4
4
|
};
|
5
5
|
silent: boolean;
|
6
6
|
}
|
7
|
-
export declare function exec(cwd: string, command: string, { env, silent }?: Partial<Options>): Promise<void>;
|
7
|
+
export declare function exec(cwd: string, command: string, args: string[], { env, silent }?: Partial<Options>): Promise<void>;
|
8
8
|
export {};
|
package/cli/utils/exec.js
CHANGED
@@ -2,10 +2,9 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.exec = void 0;
|
4
4
|
const child_process_1 = require("child_process");
|
5
|
-
function exec(cwd, command, { env, silent } = {}) {
|
5
|
+
function exec(cwd, command, args, { env, silent } = {}) {
|
6
6
|
return new Promise((resolve, reject) => {
|
7
|
-
const
|
8
|
-
const child = (0, child_process_1.spawn)(cmd, rest, {
|
7
|
+
const child = (0, child_process_1.spawn)(command, args, {
|
9
8
|
shell: true,
|
10
9
|
cwd,
|
11
10
|
env: Object.assign(Object.assign(Object.assign({}, process.env), { NODE_ENV: '' }), env)
|
@@ -21,8 +20,8 @@ function exec(cwd, command, { env, silent } = {}) {
|
|
21
20
|
});
|
22
21
|
child.on('close', (code) => {
|
23
22
|
if (code !== 0) {
|
24
|
-
const
|
25
|
-
reject(new Error(`Command "${
|
23
|
+
const _ = `${command} ${args.join(' ')}`;
|
24
|
+
reject(new Error(`Command "${_}" exited with code ${code}. Please try running the command manually`));
|
26
25
|
return;
|
27
26
|
}
|
28
27
|
resolve(undefined);
|
@@ -30,4 +29,4 @@ function exec(cwd, command, { env, silent } = {}) {
|
|
30
29
|
});
|
31
30
|
}
|
32
31
|
exports.exec = exec;
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImV4ZWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaURBQXFDO0FBT3JDLFNBQWdCLElBQUksQ0FDbEIsR0FBVyxFQUNYLE9BQWUsRUFDZixJQUFjLEVBQ2QsRUFBRSxHQUFHLEVBQUUsTUFBTSxLQUF1QixFQUFFO0lBRXRDLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7UUFDckMsTUFBTSxLQUFLLEdBQUcsSUFBQSxxQkFBSyxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUU7WUFDakMsS0FBSyxFQUFFLElBQUk7WUFDWCxHQUFHO1lBQ0gsR0FBRyxnREFBTyxPQUFPLENBQUMsR0FBRyxLQUFFLFFBQVEsRUFBRSxFQUFFLEtBQUssR0FBRyxDQUFFO1NBQzlDLENBQUMsQ0FBQTtRQUVGLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUE7WUFDakMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1NBQ2xDO1FBRUQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDL0IsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLDBDQUEwQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7Z0JBQzlFLE9BQU8sT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFBO2FBQzFCO1FBQ0gsQ0FBQyxDQUFDLENBQUE7UUFFRixLQUFLLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQVksRUFBRSxFQUFFO1lBQ2pDLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRTtnQkFDZCxNQUFNLENBQUMsR0FBRyxHQUFHLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUE7Z0JBQ3hDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsc0JBQXNCLElBQUksMkNBQTJDLENBQUMsQ0FBQyxDQUFBO2dCQUNyRyxPQUFNO2FBQ1A7WUFFRCxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDcEIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUM7QUFsQ0Qsb0JBa0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3Bhd24gfSBmcm9tICdjaGlsZF9wcm9jZXNzJ1xuXG5pbnRlcmZhY2UgT3B0aW9ucyB7XG4gIGVudjogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfVxuICBzaWxlbnQ6IGJvb2xlYW5cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGV4ZWMoXG4gIGN3ZDogc3RyaW5nLFxuICBjb21tYW5kOiBzdHJpbmcsXG4gIGFyZ3M6IHN0cmluZ1tdLFxuICB7IGVudiwgc2lsZW50IH06IFBhcnRpYWw8T3B0aW9ucz4gPSB7fVxuKTogUHJvbWlzZTx2b2lkPiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3QgY2hpbGQgPSBzcGF3bihjb21tYW5kLCBhcmdzLCB7XG4gICAgICBzaGVsbDogdHJ1ZSxcbiAgICAgIGN3ZCxcbiAgICAgIGVudjogeyAuLi5wcm9jZXNzLmVudiwgTk9ERV9FTlY6ICcnLCAuLi5lbnYgfVxuICAgIH0pXG5cbiAgICBpZiAoIXNpbGVudCkge1xuICAgICAgY2hpbGQuc3Rkb3V0LnBpcGUocHJvY2Vzcy5zdGRvdXQpXG4gICAgICBjaGlsZC5zdGRlcnIucGlwZShwcm9jZXNzLnN0ZGVycilcbiAgICB9XG5cbiAgICBjaGlsZC5zdGRvdXQub24oJ2RhdGEnLCAoZGF0YSkgPT4ge1xuICAgICAgaWYgKGRhdGEudG9TdHJpbmcoKS5pbmRleE9mKCdUaGUgY29tcGlsZXIgaXMgd2F0Y2hpbmcgZmlsZSBjaGFuZ2VzLi4uJykgIT09IC0xKSB7XG4gICAgICAgIHJldHVybiByZXNvbHZlKHVuZGVmaW5lZClcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgY2hpbGQub24oJ2Nsb3NlJywgKGNvZGU6IG51bWJlcikgPT4ge1xuICAgICAgaWYgKGNvZGUgIT09IDApIHtcbiAgICAgICAgY29uc3QgXyA9IGAke2NvbW1hbmR9ICR7YXJncy5qb2luKCcgJyl9YFxuICAgICAgICByZWplY3QobmV3IEVycm9yKGBDb21tYW5kIFwiJHtffVwiIGV4aXRlZCB3aXRoIGNvZGUgJHtjb2RlfS4gUGxlYXNlIHRyeSBydW5uaW5nIHRoZSBjb21tYW5kIG1hbnVhbGx5YCkpXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICByZXNvbHZlKHVuZGVmaW5lZClcbiAgICB9KVxuICB9KVxufVxuIl19
|
package/cli/utils/exec.ts
CHANGED
@@ -5,10 +5,14 @@ interface Options {
|
|
5
5
|
silent: boolean
|
6
6
|
}
|
7
7
|
|
8
|
-
export function exec(
|
8
|
+
export function exec(
|
9
|
+
cwd: string,
|
10
|
+
command: string,
|
11
|
+
args: string[],
|
12
|
+
{ env, silent }: Partial<Options> = {}
|
13
|
+
): Promise<void> {
|
9
14
|
return new Promise((resolve, reject) => {
|
10
|
-
const
|
11
|
-
const child = spawn(cmd, rest, {
|
15
|
+
const child = spawn(command, args, {
|
12
16
|
shell: true,
|
13
17
|
cwd,
|
14
18
|
env: { ...process.env, NODE_ENV: '', ...env }
|
@@ -27,8 +31,8 @@ export function exec(cwd: string, command: string, { env, silent }: Partial<Opti
|
|
27
31
|
|
28
32
|
child.on('close', (code: number) => {
|
29
33
|
if (code !== 0) {
|
30
|
-
const
|
31
|
-
reject(new Error(`Command "${
|
34
|
+
const _ = `${command} ${args.join(' ')}`
|
35
|
+
reject(new Error(`Command "${_}" exited with code ${code}. Please try running the command manually`))
|
32
36
|
return
|
33
37
|
}
|
34
38
|
|
package/cli/utils/log.d.ts
CHANGED
@@ -1,13 +1,5 @@
|
|
1
|
-
export declare function
|
1
|
+
export declare function log(message: string): void;
|
2
2
|
export declare function fail(message: string): void;
|
3
3
|
export declare function warn(message: string): void;
|
4
4
|
export declare function info(message: string): void;
|
5
5
|
export declare function succeed(message: string): void;
|
6
|
-
declare const _default: {
|
7
|
-
raw: typeof raw;
|
8
|
-
fail: typeof fail;
|
9
|
-
warn: typeof warn;
|
10
|
-
info: typeof info;
|
11
|
-
succeed: typeof succeed;
|
12
|
-
};
|
13
|
-
export default _default;
|
package/cli/utils/log.js
CHANGED
@@ -1,31 +1,29 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.succeed = exports.info = exports.warn = exports.fail = exports.
|
4
|
-
|
5
|
-
|
3
|
+
exports.succeed = exports.info = exports.warn = exports.fail = exports.log = void 0;
|
4
|
+
const colorette_1 = require("colorette");
|
5
|
+
const stderr = (...parameters) => process.stderr.write(`${parameters.join('')}\n`);
|
6
|
+
const colors = (0, colorette_1.createColors)({
|
7
|
+
useColor: process.env.FORCE_COLOR !== '0' && !process.env.NO_COLOR
|
8
|
+
});
|
9
|
+
function log(message) {
|
10
|
+
stderr(message);
|
6
11
|
}
|
7
|
-
exports.
|
12
|
+
exports.log = log;
|
8
13
|
function fail(message) {
|
9
|
-
|
14
|
+
stderr(colors.redBright(' Error: '), message);
|
10
15
|
}
|
11
16
|
exports.fail = fail;
|
12
17
|
function warn(message) {
|
13
|
-
|
18
|
+
stderr(colors.yellow('Warning: '), message);
|
14
19
|
}
|
15
20
|
exports.warn = warn;
|
16
21
|
function info(message) {
|
17
|
-
|
22
|
+
stderr(colors.blueBright(' Info: '), message);
|
18
23
|
}
|
19
24
|
exports.info = info;
|
20
25
|
function succeed(message) {
|
21
|
-
|
26
|
+
stderr(colors.green('Success: '), message);
|
22
27
|
}
|
23
28
|
exports.succeed = succeed;
|
24
|
-
|
25
|
-
raw,
|
26
|
-
fail,
|
27
|
-
warn,
|
28
|
-
info,
|
29
|
-
succeed
|
30
|
-
};
|
31
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibG9nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLFNBQWdCLEdBQUcsQ0FBQyxPQUFlO0lBQ2pDLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUE7QUFDdEIsQ0FBQztBQUZELGtCQUVDO0FBRUQsU0FBZ0IsSUFBSSxDQUFDLE9BQWU7SUFDbEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLE9BQU8sRUFBRSxDQUFDLENBQUE7QUFDOUIsQ0FBQztBQUZELG9CQUVDO0FBRUQsU0FBZ0IsSUFBSSxDQUFDLE9BQWU7SUFDbEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLE9BQU8sRUFBRSxDQUFDLENBQUE7QUFDOUIsQ0FBQztBQUZELG9CQUVDO0FBRUQsU0FBZ0IsSUFBSSxDQUFDLE9BQWU7SUFDbEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLE9BQU8sRUFBRSxDQUFDLENBQUE7QUFDOUIsQ0FBQztBQUZELG9CQUVDO0FBRUQsU0FBZ0IsT0FBTyxDQUFDLE9BQWU7SUFDckMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLE9BQU8sRUFBRSxDQUFDLENBQUE7QUFDOUIsQ0FBQztBQUZELDBCQUVDO0FBRUQsa0JBQWU7SUFDYixHQUFHO0lBQ0gsSUFBSTtJQUNKLElBQUk7SUFDSixJQUFJO0lBQ0osT0FBTztDQUNSLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gcmF3KG1lc3NhZ2U6IHN0cmluZykge1xuICBjb25zb2xlLmxvZyhtZXNzYWdlKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZmFpbChtZXNzYWdlOiBzdHJpbmcpIHtcbiAgY29uc29sZS5sb2coYPCflLQgJHttZXNzYWdlfWApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3YXJuKG1lc3NhZ2U6IHN0cmluZykge1xuICBjb25zb2xlLmxvZyhg8J+foCAke21lc3NhZ2V9YClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluZm8obWVzc2FnZTogc3RyaW5nKSB7XG4gIGNvbnNvbGUubG9nKGDwn5S1ICR7bWVzc2FnZX1gKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gc3VjY2VlZChtZXNzYWdlOiBzdHJpbmcpIHtcbiAgY29uc29sZS5sb2coYPCfn6IgJHttZXNzYWdlfWApXG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgcmF3LFxuICBmYWlsLFxuICB3YXJuLFxuICBpbmZvLFxuICBzdWNjZWVkXG59XG4iXX0=
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibG9nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlDQUF3QztBQVl4QyxNQUFNLE1BQU0sR0FBRyxDQUFDLEdBQUcsVUFBOEIsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtBQUl0RyxNQUFNLE1BQU0sR0FBRyxJQUFBLHdCQUFZLEVBQUM7SUFDMUIsUUFBUSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUTtDQUNuRSxDQUFDLENBQUE7QUFFRixTQUFnQixHQUFHLENBQUMsT0FBZTtJQUNqQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUE7QUFDakIsQ0FBQztBQUZELGtCQUVDO0FBRUQsU0FBZ0IsSUFBSSxDQUFDLE9BQWU7SUFDbEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUE7QUFDaEQsQ0FBQztBQUZELG9CQUVDO0FBRUQsU0FBZ0IsSUFBSSxDQUFDLE9BQWU7SUFDbEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUE7QUFDN0MsQ0FBQztBQUZELG9CQUVDO0FBRUQsU0FBZ0IsSUFBSSxDQUFDLE9BQWU7SUFDbEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUE7QUFDakQsQ0FBQztBQUZELG9CQUVDO0FBRUQsU0FBZ0IsT0FBTyxDQUFDLE9BQWU7SUFDckMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUE7QUFDNUMsQ0FBQztBQUZELDBCQUVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQ29sb3JzIH0gZnJvbSAnY29sb3JldHRlJ1xuXG4vKipcbiAqIFRoaXMgZmlsZSBpbWl0YXRlcyBcImNhcmdvXCIgbG9ncy4gVGhlIHdvcmRzIGFyZSBhbGlnbmVkIHdpdGggdGhlIGNvbG9uIGxpa2UgdGhpczpcbiAqICAgICAgICBWXG4gKiAgIEVycm9yOiBzb21lIHRleHQgcHJvdmlkZWQgYXMgYXJndW1lblxuICogICAgSW5mbzogc29tZSB0ZXh0IHByb3ZpZGVkIGFzIGFyZ3VtZW5cbiAqIFN1Y2Nlc3M6IHNvbWUgdGV4dCBwcm92aWRlZCBhcyBhcmd1bWVuXG4gKiBXYXJuaW5nOiBzb21lIHRleHQgcHJvdmlkZWQgYXMgYXJndW1lblxuICogICAgICAgIF5cbiAqL1xuXG5jb25zdCBzdGRlcnIgPSAoLi4ucGFyYW1ldGVyczogcmVhZG9ubHkgdW5rbm93bltdKSA9PiBwcm9jZXNzLnN0ZGVyci53cml0ZShgJHtwYXJhbWV0ZXJzLmpvaW4oJycpfVxcbmApXG5cbi8vIEBzZWUgaHR0cHM6Ly9uby1jb2xvci5vcmdcbi8vIEBzZWUgaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvY2hhbGtcbmNvbnN0IGNvbG9ycyA9IGNyZWF0ZUNvbG9ycyh7XG4gIHVzZUNvbG9yOiBwcm9jZXNzLmVudi5GT1JDRV9DT0xPUiAhPT0gJzAnICYmICFwcm9jZXNzLmVudi5OT19DT0xPUlxufSlcblxuZXhwb3J0IGZ1bmN0aW9uIGxvZyhtZXNzYWdlOiBzdHJpbmcpIHtcbiAgc3RkZXJyKG1lc3NhZ2UpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmYWlsKG1lc3NhZ2U6IHN0cmluZykge1xuICBzdGRlcnIoY29sb3JzLnJlZEJyaWdodCgnICBFcnJvcjogJyksIG1lc3NhZ2UpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3YXJuKG1lc3NhZ2U6IHN0cmluZykge1xuICBzdGRlcnIoY29sb3JzLnllbGxvdygnV2FybmluZzogJyksIG1lc3NhZ2UpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbmZvKG1lc3NhZ2U6IHN0cmluZykge1xuICBzdGRlcnIoY29sb3JzLmJsdWVCcmlnaHQoJyAgIEluZm86ICcpLCBtZXNzYWdlKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gc3VjY2VlZChtZXNzYWdlOiBzdHJpbmcpIHtcbiAgc3RkZXJyKGNvbG9ycy5ncmVlbignU3VjY2VzczogJyksIG1lc3NhZ2UpXG59XG4iXX0=
|
package/cli/utils/log.ts
CHANGED
@@ -1,27 +1,39 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
import { createColors } from 'colorette'
|
2
|
+
|
3
|
+
/**
|
4
|
+
* This file imitates "cargo" logs. The words are aligned with the colon like this:
|
5
|
+
* V
|
6
|
+
* Error: some text provided as argumen
|
7
|
+
* Info: some text provided as argumen
|
8
|
+
* Success: some text provided as argumen
|
9
|
+
* Warning: some text provided as argumen
|
10
|
+
* ^
|
11
|
+
*/
|
12
|
+
|
13
|
+
const stderr = (...parameters: readonly unknown[]) => process.stderr.write(`${parameters.join('')}\n`)
|
14
|
+
|
15
|
+
// @see https://no-color.org
|
16
|
+
// @see https://www.npmjs.com/package/chalk
|
17
|
+
const colors = createColors({
|
18
|
+
useColor: process.env.FORCE_COLOR !== '0' && !process.env.NO_COLOR
|
19
|
+
})
|
20
|
+
|
21
|
+
export function log(message: string) {
|
22
|
+
stderr(message)
|
3
23
|
}
|
4
24
|
|
5
25
|
export function fail(message: string) {
|
6
|
-
|
26
|
+
stderr(colors.redBright(' Error: '), message)
|
7
27
|
}
|
8
28
|
|
9
29
|
export function warn(message: string) {
|
10
|
-
|
30
|
+
stderr(colors.yellow('Warning: '), message)
|
11
31
|
}
|
12
32
|
|
13
33
|
export function info(message: string) {
|
14
|
-
|
34
|
+
stderr(colors.blueBright(' Info: '), message)
|
15
35
|
}
|
16
36
|
|
17
37
|
export function succeed(message: string) {
|
18
|
-
|
19
|
-
}
|
20
|
-
|
21
|
-
export default {
|
22
|
-
raw,
|
23
|
-
fail,
|
24
|
-
warn,
|
25
|
-
info,
|
26
|
-
succeed
|
38
|
+
stderr(colors.green('Success: '), message)
|
27
39
|
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@dcl/sdk",
|
3
|
-
"version": "7.0.6-
|
3
|
+
"version": "7.0.6-4087611163.commit-4735f5b",
|
4
4
|
"description": "",
|
5
5
|
"main": "./index.js",
|
6
6
|
"typings": "./index.d.ts",
|
@@ -20,13 +20,13 @@
|
|
20
20
|
"author": "Decentraland",
|
21
21
|
"license": "Apache-2.0",
|
22
22
|
"dependencies": {
|
23
|
-
"@dcl/dcl-rollup": "7.0.6-
|
24
|
-
"@dcl/ecs": "7.0.6-
|
23
|
+
"@dcl/dcl-rollup": "7.0.6-4087611163.commit-4735f5b",
|
24
|
+
"@dcl/ecs": "7.0.6-4087611163.commit-4735f5b",
|
25
25
|
"@dcl/ecs-math": "2.0.1-20221129185242.commit-40495c1",
|
26
|
-
"@dcl/explorer": "1.0.
|
27
|
-
"@dcl/js-runtime": "7.0.6-
|
26
|
+
"@dcl/explorer": "1.0.76945-20230203192753.commit-55553af",
|
27
|
+
"@dcl/js-runtime": "7.0.6-4087611163.commit-4735f5b",
|
28
28
|
"@dcl/mini-comms": "1.0.0",
|
29
|
-
"@dcl/react-ecs": "7.0.6-
|
29
|
+
"@dcl/react-ecs": "7.0.6-4087611163.commit-4735f5b",
|
30
30
|
"@dcl/schemas": "6.6.0",
|
31
31
|
"@types/inquirer": "^8.2.5",
|
32
32
|
"@well-known-components/env-config-provider": "^1.1.2-20220801195549.commit-101c273",
|
@@ -34,7 +34,9 @@
|
|
34
34
|
"@well-known-components/logger": "^3.0.0",
|
35
35
|
"@well-known-components/metrics": "^2.0.1-20220909150423.commit-8f7e5bc",
|
36
36
|
"arg": "5.0.2",
|
37
|
+
"colorette": "^2.0.19",
|
37
38
|
"extract-zip": "2.0.1",
|
39
|
+
"ignore": "^5.2.4",
|
38
40
|
"inquirer": "^8.2.5",
|
39
41
|
"node-fetch": "^2.6.8",
|
40
42
|
"open": "^8.4.0",
|
@@ -53,5 +55,5 @@
|
|
53
55
|
"displayName": "SDK",
|
54
56
|
"tsconfig": "./tsconfig.json"
|
55
57
|
},
|
56
|
-
"commit": "
|
58
|
+
"commit": "4735f5b60e904595e174bab3edec3a5fd117f838"
|
57
59
|
}
|
package/cli/utils/handler.d.ts
DELETED
package/cli/utils/handler.js
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.main = void 0;
|
4
|
-
const error_1 = require("./error");
|
5
|
-
function main(handlerFn, errorFn) {
|
6
|
-
return async function handler(args) {
|
7
|
-
try {
|
8
|
-
await handlerFn(args);
|
9
|
-
}
|
10
|
-
catch (e) {
|
11
|
-
if (typeof errorFn === 'function') {
|
12
|
-
await errorFn(e);
|
13
|
-
}
|
14
|
-
throw new error_1.CliError(e.message);
|
15
|
-
}
|
16
|
-
};
|
17
|
-
}
|
18
|
-
exports.main = main;
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQWtDO0FBSWxDLFNBQWdCLElBQUksQ0FDbEIsU0FBcUMsRUFDckMsT0FBNEM7SUFFNUMsT0FBTyxLQUFLLFVBQVUsT0FBTyxDQUFDLElBQU87UUFDbkMsSUFBSTtZQUNGLE1BQU0sU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFBO1NBQ3RCO1FBQUMsT0FBTyxDQUFNLEVBQUU7WUFFZixJQUFJLE9BQU8sT0FBTyxLQUFLLFVBQVUsRUFBRTtnQkFDakMsTUFBTSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUE7YUFDakI7WUFJRCxNQUFNLElBQUksZ0JBQVEsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUE7U0FDOUI7SUFDSCxDQUFDLENBQUE7QUFDSCxDQUFDO0FBbEJELG9CQWtCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsaUVycm9yIH0gZnJvbSAnLi9lcnJvcidcblxudHlwZSBBcmdzID0geyBba2V5OiBzdHJpbmddOiBhbnkgfVxuXG5leHBvcnQgZnVuY3Rpb24gbWFpbjxUIGV4dGVuZHMgQXJncz4oXG4gIGhhbmRsZXJGbjogKGFyZ3M6IFQpID0+IFByb21pc2U8dm9pZD4sXG4gIGVycm9yRm4/OiAoZXJyb3I6IENsaUVycm9yKSA9PiBQcm9taXNlPHZvaWQ+XG4pIHtcbiAgcmV0dXJuIGFzeW5jIGZ1bmN0aW9uIGhhbmRsZXIoYXJnczogVCkge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCBoYW5kbGVyRm4oYXJncylcbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIC8vIGRvIHNvbWUgc3R1ZmYgd2l0aCB0aGUgQ2xpRXJyb3IgY2xhc3MuLi5cbiAgICAgIGlmICh0eXBlb2YgZXJyb3JGbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBhd2FpdCBlcnJvckZuKGUpXG4gICAgICB9XG5cbiAgICAgIC8vIHRyYWNrIHNvbWV0aGluZz9cblxuICAgICAgdGhyb3cgbmV3IENsaUVycm9yKGUubWVzc2FnZSlcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
package/cli/utils/handler.ts
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
import { CliError } from './error'
|
2
|
-
|
3
|
-
type Args = { [key: string]: any }
|
4
|
-
|
5
|
-
export function main<T extends Args>(
|
6
|
-
handlerFn: (args: T) => Promise<void>,
|
7
|
-
errorFn?: (error: CliError) => Promise<void>
|
8
|
-
) {
|
9
|
-
return async function handler(args: T) {
|
10
|
-
try {
|
11
|
-
await handlerFn(args)
|
12
|
-
} catch (e: any) {
|
13
|
-
// do some stuff with the CliError class...
|
14
|
-
if (typeof errorFn === 'function') {
|
15
|
-
await errorFn(e)
|
16
|
-
}
|
17
|
-
|
18
|
-
// track something?
|
19
|
-
|
20
|
-
throw new CliError(e.message)
|
21
|
-
}
|
22
|
-
}
|
23
|
-
}
|