@dcl/sdk 7.0.6-4197661608.commit-41efaad → 7.0.6-4197739270.commit-db87ed8
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 +2 -2
- package/cli/commands/build/helpers.js +4 -4
- package/cli/commands/build/helpers.ts +2 -2
- package/cli/commands/init/index.js +3 -5
- package/cli/commands/init/index.ts +2 -4
- package/cli/commands/preview/endpoints.d.ts +4 -4
- package/cli/commands/preview/endpoints.js +49 -79
- package/cli/commands/preview/endpoints.ts +106 -116
- package/cli/commands/preview/eth.js +2 -2
- package/cli/commands/preview/eth.ts +1 -1
- package/cli/commands/preview/index.js +32 -3
- package/cli/commands/preview/index.ts +9 -2
- package/cli/commands/preview/project.js +2 -2
- package/cli/commands/preview/project.ts +1 -1
- package/cli/commands/preview/wire.js +7 -33
- package/cli/commands/preview/wire.ts +8 -45
- package/cli/components/fs.d.ts +2 -1
- package/cli/components/fs.js +12 -3
- package/cli/components/fs.ts +12 -3
- package/cli/utils/dcl-ignore.d.ts +4 -0
- package/cli/utils/dcl-ignore.js +44 -0
- package/cli/utils/dcl-ignore.ts +45 -0
- package/package.json +13 -16
- package/cli/utils/prompt.d.ts +0 -1
- package/cli/utils/prompt.js +0 -17
- package/cli/utils/prompt.ts +0 -11
@@ -13,9 +13,9 @@ export declare const validateProjectStructure: (components: {
|
|
13
13
|
export declare const validatePackageJson: (components: {
|
14
14
|
fs: IFileSystemComponent;
|
15
15
|
}, dir: string, deps: Dict) => Promise<boolean>;
|
16
|
-
export declare
|
16
|
+
export declare function needsDependencies(components: {
|
17
17
|
fs: IFileSystemComponent;
|
18
|
-
}, dir: string)
|
18
|
+
}, dir: string): Promise<boolean>;
|
19
19
|
export declare const npm: string;
|
20
20
|
export declare function installDependencies(dir: string): Promise<void>;
|
21
21
|
export declare function npmRun(cwd: string, command: string, ...args: string[]): Promise<void>;
|
@@ -29,12 +29,12 @@ const validatePackageJson = async (components, dir, deps) => {
|
|
29
29
|
return (0, object_1.hasPrimitiveKeys)(packageJson, deps);
|
30
30
|
};
|
31
31
|
exports.validatePackageJson = validatePackageJson;
|
32
|
-
|
32
|
+
async function needsDependencies(components, dir) {
|
33
33
|
const nodeModulesPath = (0, path_1.resolve)(dir, 'node_modules');
|
34
|
-
const hasNodeModulesFolder = await components.fs.
|
34
|
+
const hasNodeModulesFolder = await components.fs.directoryExists(nodeModulesPath);
|
35
35
|
const isNodeModulesEmpty = hasNodeModulesFolder && (await components.fs.readdir(nodeModulesPath)).length === 0;
|
36
36
|
return !hasNodeModulesFolder || isNodeModulesEmpty;
|
37
|
-
}
|
37
|
+
}
|
38
38
|
exports.needsDependencies = needsDependencies;
|
39
39
|
exports.npm = /^win/.test(process.platform) ? 'npm.cmd' : 'npm';
|
40
40
|
async function installDependencies(dir) {
|
@@ -47,4 +47,4 @@ async function npmRun(cwd, command, ...args) {
|
|
47
47
|
await (0, exec_1.exec)(cwd, exports.npm, ['run', command, '--silent', '--', ...args], { env: process.env });
|
48
48
|
}
|
49
49
|
exports.npmRun = npmRun;
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0JBQThCO0FBRzlCLDJDQUF1QztBQUN2Qyx5Q0FBK0M7QUFDL0MsK0NBQTJEO0FBSzlDLFFBQUEsY0FBYyxHQUFHO0lBQzVCLFlBQVksRUFBRSxjQUFjO0lBQzVCLGNBQWMsRUFBRSxlQUFlO0lBQy9CLFVBQVUsRUFBRSxZQUFZO0NBQ3pCLENBQUE7QUFLWSxRQUFBLHFCQUFxQixHQUFHLEVBQUUsQ0FBQTtBQUtoQyxNQUFNLG1CQUFtQixHQUFHLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsc0JBQWMsQ0FBQyxDQUFBO0FBQXpELFFBQUEsbUJBQW1CLHVCQUFzQztBQUsvRCxNQUFNLHdCQUF3QixHQUFHLEtBQUssRUFDM0MsVUFBd0MsRUFDeEMsR0FBVyxFQUNYLFFBQWtCLEVBQ0EsRUFBRTtJQUNwQixNQUFNLEtBQUssR0FBRyxNQUFNLFVBQVUsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQzlDLE1BQU0sYUFBYSxHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBRXZDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxJQUFJLGFBQWEsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQy9ELElBQUksYUFBYSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUMvQixhQUFhLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1NBQy9CO0tBQ0Y7SUFFRCxPQUFPLGFBQWEsQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFBO0FBQ2pDLENBQUMsQ0FBQTtBQWZZLFFBQUEsd0JBQXdCLDRCQWVwQztBQUtNLE1BQU0sbUJBQW1CLEdBQUcsS0FBSyxFQUN0QyxVQUF3QyxFQUN4QyxHQUFXLEVBQ1gsSUFBVSxFQUNRLEVBQUU7SUFDcEIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLFVBQVUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUEsY0FBTyxFQUFDLEdBQUcsRUFBRSxzQkFBYyxDQUFDLFlBQVksQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUE7SUFDaEgsT0FBTyxJQUFBLHlCQUFnQixFQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQTtBQUM1QyxDQUFDLENBQUE7QUFQWSxRQUFBLG1CQUFtQix1QkFPL0I7QUFLTSxLQUFLLFVBQVUsaUJBQWlCLENBQUMsVUFBd0MsRUFBRSxHQUFXO0lBQzNGLE1BQU0sZUFBZSxHQUFHLElBQUEsY0FBTyxFQUFDLEdBQUcsRUFBRSxjQUFjLENBQUMsQ0FBQTtJQUNwRCxNQUFNLG9CQUFvQixHQUFHLE1BQU0sVUFBVSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLENBQUE7SUFDakYsTUFBTSxrQkFBa0IsR0FBRyxvQkFBb0IsSUFBSSxDQUFDLE1BQU0sVUFBVSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFBO0lBRTlHLE9BQU8sQ0FBQyxvQkFBb0IsSUFBSSxrQkFBa0IsQ0FBQTtBQUNwRCxDQUFDO0FBTkQsOENBTUM7QUFHWSxRQUFBLEdBQUcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUE7QUFLN0QsS0FBSyxVQUFVLG1CQUFtQixDQUFDLEdBQVc7SUFDbkQsSUFBQSxVQUFJLEVBQUMsNEJBQTRCLENBQUMsQ0FBQTtJQUVsQyxNQUFNLElBQUEsV0FBSSxFQUFDLEdBQUcsRUFBRSxXQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFBO0lBQ2pDLElBQUEsYUFBTyxFQUFDLHdCQUF3QixDQUFDLENBQUE7QUFDbkMsQ0FBQztBQUxELGtEQUtDO0FBS00sS0FBSyxVQUFVLE1BQU0sQ0FBQyxHQUFXLEVBQUUsT0FBZSxFQUFFLEdBQUcsSUFBYztJQUUxRSxNQUFNLElBQUEsV0FBSSxFQUFDLEdBQUcsRUFBRSxXQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBVSxFQUFFLENBQUMsQ0FBQTtBQUNoRyxDQUFDO0FBSEQsd0JBR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZXNvbHZlIH0gZnJvbSAncGF0aCdcblxuaW1wb3J0IHsgSUZpbGVTeXN0ZW1Db21wb25lbnQgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2ZzJ1xuaW1wb3J0IHsgZXhlYyB9IGZyb20gJy4uLy4uL3V0aWxzL2V4ZWMnXG5pbXBvcnQgeyBpbmZvLCBzdWNjZWVkIH0gZnJvbSAnLi4vLi4vdXRpbHMvbG9nJ1xuaW1wb3J0IHsgRGljdCwgaGFzUHJpbWl0aXZlS2V5cyB9IGZyb20gJy4uLy4uL3V0aWxzL29iamVjdCdcblxuLyoqXG4gKiBSZXF1aXJlZCBwcm9qZWN0IGRpcnMvZmlsZXNcbiAqL1xuZXhwb3J0IGNvbnN0IFJFUVVJUkVEX0ZJTEVTID0ge1xuICBQQUNLQUdFX0pTT046ICdwYWNrYWdlLmpzb24nLFxuICBUU19DT05GSUdfSlNPTjogJ3RzY29uZmlnLmpzb24nLFxuICBTQ0VORV9KU09OOiAnc2NlbmUuanNvbidcbn1cblxuLyoqXG4gKiBSZXF1aXJlZCBcInBhY2thZ2UuanNvblwiIHN0cnVjdHVyZVxuICovXG5leHBvcnQgY29uc3QgUkVRVUlSRURfUEFDS0FHRV9KU09OID0ge31cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSByZXF1aXJlZCBmaWxlcyBmb3IgYSBwcm9qZWN0XG4gKi9cbmV4cG9ydCBjb25zdCBnZXRQcm9qZWN0U3RydWN0dXJlID0gKCkgPT4gT2JqZWN0LnZhbHVlcyhSRVFVSVJFRF9GSUxFUylcblxuLyoqXG4gKiBSZXR1cm5zIHRydWUgaWYgdGhlIHByb2plY3QgZm9sbG93cyBhIHZhbGlkIHNjZW5lIHN0cnVjdHVyZVxuICovXG5leHBvcnQgY29uc3QgdmFsaWRhdGVQcm9qZWN0U3RydWN0dXJlID0gYXN5bmMgKFxuICBjb21wb25lbnRzOiB7IGZzOiBJRmlsZVN5c3RlbUNvbXBvbmVudCB9LFxuICBkaXI6IHN0cmluZyxcbiAgZmlsZUxpc3Q6IHN0cmluZ1tdXG4pOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgY29uc3QgZmlsZXMgPSBhd2FpdCBjb21wb25lbnRzLmZzLnJlYWRkaXIoZGlyKVxuICBjb25zdCByZXF1aXJlZEZpbGVzID0gbmV3IFNldChmaWxlTGlzdClcblxuICBmb3IgKGxldCBpID0gMDsgaSA8IGZpbGVzLmxlbmd0aCAmJiByZXF1aXJlZEZpbGVzLnNpemUgPiAwOyBpKyspIHtcbiAgICBpZiAocmVxdWlyZWRGaWxlcy5oYXMoZmlsZXNbaV0pKSB7XG4gICAgICByZXF1aXJlZEZpbGVzLmRlbGV0ZShmaWxlc1tpXSlcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcmVxdWlyZWRGaWxlcy5zaXplID09PSAwXG59XG5cbi8qKlxuICogUmV0dXJucyB0cnVlIGlmIHRoZSBwcm9qZWN0J3MgXCJwYWNrYWdlLmpzb25cIiBpcyB2YWxpZFxuICovXG5leHBvcnQgY29uc3QgdmFsaWRhdGVQYWNrYWdlSnNvbiA9IGFzeW5jIChcbiAgY29tcG9uZW50czogeyBmczogSUZpbGVTeXN0ZW1Db21wb25lbnQgfSxcbiAgZGlyOiBzdHJpbmcsXG4gIGRlcHM6IERpY3Rcbik6IFByb21pc2U8Ym9vbGVhbj4gPT4ge1xuICBjb25zdCBwYWNrYWdlSnNvbiA9IEpTT04ucGFyc2UoYXdhaXQgY29tcG9uZW50cy5mcy5yZWFkRmlsZShyZXNvbHZlKGRpciwgUkVRVUlSRURfRklMRVMuUEFDS0FHRV9KU09OKSwgJ3V0Zi04JykpXG4gIHJldHVybiBoYXNQcmltaXRpdmVLZXlzKHBhY2thZ2VKc29uLCBkZXBzKVxufVxuXG4vKlxuICogUmV0dXJucyB0cnVlIGlmIHRoZSBwcm9qZWN0IGNvbnRhaW5zIGFuIGVtcHR5IG5vZGVfbW9kdWxlcyBmb2xkZXJcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG5lZWRzRGVwZW5kZW5jaWVzKGNvbXBvbmVudHM6IHsgZnM6IElGaWxlU3lzdGVtQ29tcG9uZW50IH0sIGRpcjogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gIGNvbnN0IG5vZGVNb2R1bGVzUGF0aCA9IHJlc29sdmUoZGlyLCAnbm9kZV9tb2R1bGVzJylcbiAgY29uc3QgaGFzTm9kZU1vZHVsZXNGb2xkZXIgPSBhd2FpdCBjb21wb25lbnRzLmZzLmRpcmVjdG9yeUV4aXN0cyhub2RlTW9kdWxlc1BhdGgpXG4gIGNvbnN0IGlzTm9kZU1vZHVsZXNFbXB0eSA9IGhhc05vZGVNb2R1bGVzRm9sZGVyICYmIChhd2FpdCBjb21wb25lbnRzLmZzLnJlYWRkaXIobm9kZU1vZHVsZXNQYXRoKSkubGVuZ3RoID09PSAwXG5cbiAgcmV0dXJuICFoYXNOb2RlTW9kdWxlc0ZvbGRlciB8fCBpc05vZGVNb2R1bGVzRW1wdHlcbn1cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbmV4cG9ydCBjb25zdCBucG0gPSAvXndpbi8udGVzdChwcm9jZXNzLnBsYXRmb3JtKSA/ICducG0uY21kJyA6ICducG0nXG5cbi8qXG4gKiBSdW5zIFwibnBtIGluc3RhbGxcIiBmb3IgZGVzaXJlZCBwcm9qZWN0XG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpbnN0YWxsRGVwZW5kZW5jaWVzKGRpcjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGluZm8oJ0luc3RhbGxpbmcgZGVwZW5kZW5jaWVzLi4uJylcbiAgLy8gVE9ETzogdGVzdCBpbiB3aW5kb3dzXG4gIGF3YWl0IGV4ZWMoZGlyLCBucG0sIFsnaW5zdGFsbCddKVxuICBzdWNjZWVkKCdEZXBlbmRlbmNpZXMgaW5zdGFsbGVkJylcbn1cblxuLyoqXG4gKiBSdW4gTlBNIGNvbW1hbmRzXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBucG1SdW4oY3dkOiBzdHJpbmcsIGNvbW1hbmQ6IHN0cmluZywgLi4uYXJnczogc3RyaW5nW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgLy8gVE9ETzogdGVzdCBpbiB3aW5kb3dzXG4gIGF3YWl0IGV4ZWMoY3dkLCBucG0sIFsncnVuJywgY29tbWFuZCwgJy0tc2lsZW50JywgJy0tJywgLi4uYXJnc10sIHsgZW52OiBwcm9jZXNzLmVudiBhcyBhbnkgfSlcbn1cbiJdfQ==
|
@@ -59,9 +59,9 @@ export const validatePackageJson = async (
|
|
59
59
|
/*
|
60
60
|
* Returns true if the project contains an empty node_modules folder
|
61
61
|
*/
|
62
|
-
export
|
62
|
+
export async function needsDependencies(components: { fs: IFileSystemComponent }, dir: string): Promise<boolean> {
|
63
63
|
const nodeModulesPath = resolve(dir, 'node_modules')
|
64
|
-
const hasNodeModulesFolder = await components.fs.
|
64
|
+
const hasNodeModulesFolder = await components.fs.directoryExists(nodeModulesPath)
|
65
65
|
const isNodeModulesEmpty = hasNodeModulesFolder && (await components.fs.readdir(nodeModulesPath)).length === 0
|
66
66
|
|
67
67
|
return !hasNodeModulesFolder || isNodeModulesEmpty
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.main = exports.help = exports.args = void 0;
|
4
4
|
const path_1 = require("path");
|
5
5
|
const args_1 = require("../../utils/args");
|
6
|
-
const
|
6
|
+
const error_1 = require("../../utils/error");
|
7
7
|
const fs_1 = require("../../utils/fs");
|
8
8
|
const repos_1 = require("./repos");
|
9
9
|
const helpers_1 = require("../build/helpers");
|
@@ -20,9 +20,7 @@ async function main(options) {
|
|
20
20
|
const isEmpty = await (0, fs_1.isDirectoryEmpty)(options.components, dir);
|
21
21
|
const yes = options.args['--yes'];
|
22
22
|
if (!isEmpty && !yes) {
|
23
|
-
|
24
|
-
if (!answer)
|
25
|
-
return;
|
23
|
+
throw new error_1.CliError('The target directory specified is not empty. Run this command with --yes to override.');
|
26
24
|
}
|
27
25
|
const scene = 'scene-template';
|
28
26
|
const { url, contentFolders } = (0, repos_1.get)(scene);
|
@@ -50,4 +48,4 @@ const moveFilesFromDirs = async (components, dir, folders) => {
|
|
50
48
|
return moveFilesFromDir(components, dir, folderPath);
|
51
49
|
}));
|
52
50
|
};
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQkFBb0M7QUFFcEMsMkNBQTBDO0FBQzFDLDZDQUE0QztBQUU1Qyx1Q0FBb0U7QUFFcEUsbUNBQXdDO0FBQ3hDLDhDQUF5RTtBQU81RCxRQUFBLElBQUksR0FBRyxJQUFBLGNBQU8sRUFBQztJQUMxQixPQUFPLEVBQUUsT0FBTztJQUNoQixJQUFJLEVBQUUsT0FBTztJQUNiLE9BQU8sRUFBRSxNQUFNO0lBQ2YsZ0JBQWdCLEVBQUUsT0FBTztDQUMxQixDQUFDLENBQUE7QUFFSyxLQUFLLFVBQVUsSUFBSSxLQUFJLENBQUM7QUFBL0Isb0JBQStCO0FBRXhCLEtBQUssVUFBVSxJQUFJLENBQUMsT0FBZ0I7SUFDekMsTUFBTSxHQUFHLEdBQUcsSUFBQSxjQUFPLEVBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUE7SUFDaEUsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFBLHFCQUFnQixFQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUE7SUFDL0QsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUVqQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ3BCLE1BQU0sSUFBSSxnQkFBUSxDQUFDLHVGQUF1RixDQUFDLENBQUE7S0FDNUc7SUFHRCxNQUFNLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQTtJQUM5QixNQUFNLEVBQUUsR0FBRyxFQUFFLGNBQWMsRUFBRSxHQUFHLElBQUEsV0FBTyxFQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzlDLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBQSxhQUFRLEVBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsSUFBQSxXQUFJLEVBQUMsR0FBRyxFQUFFLEdBQUcsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFBO0lBQzlFLE1BQU0sSUFBQSxZQUFPLEVBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFBO0lBQ3ZCLE1BQU0sT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ3ZDLE1BQU0saUJBQWlCLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsY0FBYyxDQUFDLENBQUE7SUFHaEUsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLElBQUEsMkJBQWlCLEVBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQTtJQUMxRSxJQUFJLGlCQUFpQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO1FBQ3hELE1BQU0sSUFBQSw2QkFBbUIsRUFBQyxHQUFHLENBQUMsQ0FBQTtLQUMvQjtBQUNILENBQUM7QUF0QkQsb0JBc0JDO0FBRUQsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLEVBQUUsVUFBcUMsRUFBRSxHQUFXLEVBQUUsTUFBYyxFQUFFLEVBQUU7SUFDcEcsTUFBTSxLQUFLLEdBQUcsTUFBTSxVQUFVLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUNqRCxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQ2YsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1FBQ2QsTUFBTSxRQUFRLEdBQUcsSUFBQSxjQUFPLEVBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFBO1FBQ25DLE9BQU8sVUFBVSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLElBQUEsY0FBTyxFQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ3hELENBQUMsQ0FBQyxDQUNILENBQUE7SUFDRCxNQUFNLFVBQVUsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0FBQ25DLENBQUMsQ0FBQTtBQUVELE1BQU0saUJBQWlCLEdBQUcsS0FBSyxFQUFFLFVBQXFDLEVBQUUsR0FBVyxFQUFFLE9BQWlCLEVBQUUsRUFBRTtJQUN4RyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQ2YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1FBQ2hCLE1BQU0sVUFBVSxHQUFHLElBQUEsY0FBTyxFQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQTtRQUNsQyxPQUFPLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsVUFBVSxDQUFDLENBQUE7SUFDdEQsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpvaW4sIHJlc29sdmUgfSBmcm9tICdwYXRoJ1xuXG5pbXBvcnQgeyBnZXRBcmdzIH0gZnJvbSAnLi4vLi4vdXRpbHMvYXJncydcbmltcG9ydCB7IENsaUVycm9yIH0gZnJvbSAnLi4vLi4vdXRpbHMvZXJyb3InXG5pbXBvcnQgeyBDbGlDb21wb25lbnRzIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cydcbmltcG9ydCB7IGlzRGlyZWN0b3J5RW1wdHksIGRvd25sb2FkLCBleHRyYWN0IH0gZnJvbSAnLi4vLi4vdXRpbHMvZnMnXG5cbmltcG9ydCB7IGdldCBhcyBnZXRSZXBvIH0gZnJvbSAnLi9yZXBvcydcbmltcG9ydCB7IGluc3RhbGxEZXBlbmRlbmNpZXMsIG5lZWRzRGVwZW5kZW5jaWVzIH0gZnJvbSAnLi4vYnVpbGQvaGVscGVycydcblxuaW50ZXJmYWNlIE9wdGlvbnMge1xuICBhcmdzOiB0eXBlb2YgYXJnc1xuICBjb21wb25lbnRzOiBQaWNrPENsaUNvbXBvbmVudHMsICdmZXRjaCcgfCAnZnMnPlxufVxuXG5leHBvcnQgY29uc3QgYXJncyA9IGdldEFyZ3Moe1xuICAnLS15ZXMnOiBCb29sZWFuLFxuICAnLXknOiAnLS15ZXMnLFxuICAnLS1kaXInOiBTdHJpbmcsXG4gICctLXNraXAtaW5zdGFsbCc6IEJvb2xlYW5cbn0pXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBoZWxwKCkge31cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG1haW4ob3B0aW9uczogT3B0aW9ucykge1xuICBjb25zdCBkaXIgPSByZXNvbHZlKHByb2Nlc3MuY3dkKCksIG9wdGlvbnMuYXJnc1snLS1kaXInXSB8fCAnLicpXG4gIGNvbnN0IGlzRW1wdHkgPSBhd2FpdCBpc0RpcmVjdG9yeUVtcHR5KG9wdGlvbnMuY29tcG9uZW50cywgZGlyKVxuICBjb25zdCB5ZXMgPSBvcHRpb25zLmFyZ3NbJy0teWVzJ11cblxuICBpZiAoIWlzRW1wdHkgJiYgIXllcykge1xuICAgIHRocm93IG5ldyBDbGlFcnJvcignVGhlIHRhcmdldCBkaXJlY3Rvcnkgc3BlY2lmaWVkIGlzIG5vdCBlbXB0eS4gUnVuIHRoaXMgY29tbWFuZCB3aXRoIC0teWVzIHRvIG92ZXJyaWRlLicpXG4gIH1cblxuICAvLyBkb3dubG9hZCBhbmQgZXh0cmFjdCB0ZW1wbGF0ZSBwcm9qZWN0XG4gIGNvbnN0IHNjZW5lID0gJ3NjZW5lLXRlbXBsYXRlJ1xuICBjb25zdCB7IHVybCwgY29udGVudEZvbGRlcnMgfSA9IGdldFJlcG8oc2NlbmUpXG4gIGNvbnN0IHppcCA9IGF3YWl0IGRvd25sb2FkKG9wdGlvbnMuY29tcG9uZW50cywgdXJsLCBqb2luKGRpciwgYCR7c2NlbmV9LnppcGApKVxuICBhd2FpdCBleHRyYWN0KHppcCwgZGlyKVxuICBhd2FpdCBvcHRpb25zLmNvbXBvbmVudHMuZnMudW5saW5rKHppcClcbiAgYXdhaXQgbW92ZUZpbGVzRnJvbURpcnMob3B0aW9ucy5jb21wb25lbnRzLCBkaXIsIGNvbnRlbnRGb2xkZXJzKVxuXG4gIC8vIG5wbSBpbnN0YWxsXG4gIGNvbnN0IHNob3VsZEluc3RhbGxEZXBzID0gYXdhaXQgbmVlZHNEZXBlbmRlbmNpZXMob3B0aW9ucy5jb21wb25lbnRzLCBkaXIpXG4gIGlmIChzaG91bGRJbnN0YWxsRGVwcyAmJiAhb3B0aW9ucy5hcmdzWyctLXNraXAtaW5zdGFsbCddKSB7XG4gICAgYXdhaXQgaW5zdGFsbERlcGVuZGVuY2llcyhkaXIpXG4gIH1cbn1cblxuY29uc3QgbW92ZUZpbGVzRnJvbURpciA9IGFzeW5jIChjb21wb25lbnRzOiBQaWNrPENsaUNvbXBvbmVudHMsICdmcyc+LCBkaXI6IHN0cmluZywgZm9sZGVyOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgZmlsZXMgPSBhd2FpdCBjb21wb25lbnRzLmZzLnJlYWRkaXIoZm9sZGVyKVxuICBhd2FpdCBQcm9taXNlLmFsbChcbiAgICBmaWxlcy5tYXAoKCQpID0+IHtcbiAgICAgIGNvbnN0IGZpbGVQYXRoID0gcmVzb2x2ZShmb2xkZXIsICQpXG4gICAgICByZXR1cm4gY29tcG9uZW50cy5mcy5yZW5hbWUoZmlsZVBhdGgsIHJlc29sdmUoZGlyLCAkKSlcbiAgICB9KVxuICApXG4gIGF3YWl0IGNvbXBvbmVudHMuZnMucm1kaXIoZm9sZGVyKVxufVxuXG5jb25zdCBtb3ZlRmlsZXNGcm9tRGlycyA9IGFzeW5jIChjb21wb25lbnRzOiBQaWNrPENsaUNvbXBvbmVudHMsICdmcyc+LCBkaXI6IHN0cmluZywgZm9sZGVyczogc3RyaW5nW10pID0+IHtcbiAgYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgZm9sZGVycy5tYXAoKCQpID0+IHtcbiAgICAgIGNvbnN0IGZvbGRlclBhdGggPSByZXNvbHZlKGRpciwgJClcbiAgICAgIHJldHVybiBtb3ZlRmlsZXNGcm9tRGlyKGNvbXBvbmVudHMsIGRpciwgZm9sZGVyUGF0aClcbiAgICB9KVxuICApXG59XG4iXX0=
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { join, resolve } from 'path'
|
2
2
|
|
3
3
|
import { getArgs } from '../../utils/args'
|
4
|
-
import {
|
4
|
+
import { CliError } from '../../utils/error'
|
5
5
|
import { CliComponents } from '../../components'
|
6
6
|
import { isDirectoryEmpty, download, extract } from '../../utils/fs'
|
7
7
|
|
@@ -28,9 +28,7 @@ export async function main(options: Options) {
|
|
28
28
|
const yes = options.args['--yes']
|
29
29
|
|
30
30
|
if (!isEmpty && !yes) {
|
31
|
-
|
32
|
-
|
33
|
-
if (!answer) return
|
31
|
+
throw new CliError('The target directory specified is not empty. Run this command with --yes to override.')
|
34
32
|
}
|
35
33
|
|
36
34
|
// download and extract template project
|
@@ -1,10 +1,10 @@
|
|
1
1
|
import { Router } from '@well-known-components/http-server';
|
2
2
|
import { PreviewComponents } from './types';
|
3
3
|
import { ContentMapping } from '@dcl/schemas';
|
4
|
-
|
5
|
-
export declare function
|
4
|
+
import { CliComponents } from '../../components';
|
5
|
+
export declare function setupEcs6Endpoints(components: CliComponents, dir: string, router: Router<PreviewComponents>): void;
|
6
|
+
export declare function getFilesFromFolder(components: Pick<CliComponents, 'fs'>, { folder, addOriginalPath, customHashMaker }: {
|
6
7
|
folder: string;
|
7
8
|
addOriginalPath?: boolean;
|
8
|
-
ignorePattern?: string;
|
9
9
|
customHashMaker?: (str: string) => string;
|
10
|
-
}): ContentMapping[]
|
10
|
+
}): Promise<ContentMapping[]>;
|