@decohere/create 0.0.1-dev.47 → 0.0.1-dev.49
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/commonjs/src/cli.js +3 -3
- package/commonjs/src/resolve-launch.js +53 -0
- package/commonjs/src/runner.js +5 -45
- package/commonjs/src/version.js +1 -1
- package/es6/src/cli.js +3 -3
- package/es6/src/resolve-launch.js +46 -0
- package/es6/src/runner.js +8 -57
- package/es6/src/version.js +3 -3
- package/pack-builder-tgz.mjs +19 -35
- package/package.json +4 -11
- package/types/src/resolve-launch.d.ts +10 -0
- package/types/src/runner.d.ts +3 -13
- package/types/src/version.d.ts +0 -2
- package/commonjs/src/domain/prompt.js +0 -64
- package/commonjs/src/models/compose.model.js +0 -138
- package/commonjs/src/models/config-yaml.model.js +0 -88
- package/commonjs/src/models/const.js +0 -31
- package/commonjs/src/models/dev-container.model.js +0 -100
- package/commonjs/src/models/docker-image.model.js +0 -221
- package/commonjs/src/models/env-file.model.js +0 -47
- package/commonjs/src/models/gitignore.model.js +0 -31
- package/commonjs/src/models/launch-json.model.js +0 -74
- package/commonjs/src/models/package-json.model.js +0 -133
- package/commonjs/src/models/project.model.js +0 -134
- package/commonjs/src/models/source-file.js +0 -6
- package/commonjs/src/models/tsconfig.model.js +0 -34
- package/commonjs/src/models/vscode-settings.model.js +0 -31
- package/commonjs/src/program.js +0 -135
- package/commonjs/src/resolve-target-dir.js +0 -19
- package/commonjs/src/services/scaffold.service.js +0 -62
- package/commonjs/src/webapi/api-name.js +0 -95
- package/commonjs/src/webapi/const.js +0 -50
- package/commonjs/src/webapi/create-api.js +0 -285
- package/commonjs/src/webapi/features/auth.feature.js +0 -463
- package/commonjs/src/webapi/features/auth0-cli.js +0 -406
- package/commonjs/src/webapi/features/biome-format.js +0 -49
- package/commonjs/src/webapi/features/database.feature.js +0 -273
- package/commonjs/src/webapi/features/finalize.feature.js +0 -91
- package/commonjs/src/webapi/features/postman.feature.js +0 -319
- package/commonjs/src/webapi/models/api-package-json.model.js +0 -63
- package/commonjs/src/webapi/models/auth-config.model.js +0 -26
- package/commonjs/src/webapi/models/controller-source-file.model.js +0 -188
- package/commonjs/src/webapi/models/github-ci.model.js +0 -193
- package/commonjs/src/webapi/models/main-source-file.model.js +0 -165
- package/commonjs/src/webapi/models/production-dockerfile.model.js +0 -138
- package/commonjs/src/webapi/models/sample-files.model.js +0 -60
- package/commonjs/src/webapi/models/webapi-image.model.js +0 -22
- package/commonjs/src/webapi/postman/hello-openapi.js +0 -175
- package/commonjs/src/webapi/postman/local-view.js +0 -184
- package/commonjs/src/webapi/postman/openapi-to-postman.js +0 -202
- package/es6/src/domain/prompt.js +0 -43
- package/es6/src/models/compose.model.js +0 -132
- package/es6/src/models/config-yaml.model.js +0 -76
- package/es6/src/models/const.js +0 -21
- package/es6/src/models/dev-container.model.js +0 -90
- package/es6/src/models/docker-image.model.js +0 -185
- package/es6/src/models/env-file.model.js +0 -43
- package/es6/src/models/gitignore.model.js +0 -21
- package/es6/src/models/launch-json.model.js +0 -64
- package/es6/src/models/package-json.model.js +0 -129
- package/es6/src/models/project.model.js +0 -119
- package/es6/src/models/source-file.js +0 -3
- package/es6/src/models/tsconfig.model.js +0 -24
- package/es6/src/models/vscode-settings.model.js +0 -21
- package/es6/src/program.js +0 -76
- package/es6/src/resolve-target-dir.js +0 -9
- package/es6/src/services/scaffold.service.js +0 -52
- package/es6/src/webapi/api-name.js +0 -59
- package/es6/src/webapi/const.js +0 -20
- package/es6/src/webapi/create-api.js +0 -265
- package/es6/src/webapi/features/auth.feature.js +0 -412
- package/es6/src/webapi/features/auth0-cli.js +0 -348
- package/es6/src/webapi/features/biome-format.js +0 -42
- package/es6/src/webapi/features/database.feature.js +0 -263
- package/es6/src/webapi/features/finalize.feature.js +0 -81
- package/es6/src/webapi/features/postman.feature.js +0 -253
- package/es6/src/webapi/models/api-package-json.model.js +0 -58
- package/es6/src/webapi/models/auth-config.model.js +0 -22
- package/es6/src/webapi/models/controller-source-file.model.js +0 -179
- package/es6/src/webapi/models/github-ci.model.js +0 -186
- package/es6/src/webapi/models/main-source-file.model.js +0 -161
- package/es6/src/webapi/models/production-dockerfile.model.js +0 -126
- package/es6/src/webapi/models/sample-files.model.js +0 -42
- package/es6/src/webapi/models/webapi-image.model.js +0 -12
- package/es6/src/webapi/postman/hello-openapi.js +0 -168
- package/es6/src/webapi/postman/local-view.js +0 -169
- package/es6/src/webapi/postman/openapi-to-postman.js +0 -179
- package/types/src/domain/prompt.d.ts +0 -4
- package/types/src/models/compose.model.d.ts +0 -59
- package/types/src/models/config-yaml.model.d.ts +0 -27
- package/types/src/models/const.d.ts +0 -19
- package/types/src/models/dev-container.model.d.ts +0 -33
- package/types/src/models/docker-image.model.d.ts +0 -56
- package/types/src/models/env-file.model.d.ts +0 -15
- package/types/src/models/gitignore.model.d.ts +0 -6
- package/types/src/models/launch-json.model.d.ts +0 -7
- package/types/src/models/package-json.model.d.ts +0 -32
- package/types/src/models/project.model.d.ts +0 -60
- package/types/src/models/source-file.d.ts +0 -11
- package/types/src/models/tsconfig.model.d.ts +0 -5
- package/types/src/models/vscode-settings.model.d.ts +0 -7
- package/types/src/program.d.ts +0 -3
- package/types/src/resolve-target-dir.d.ts +0 -5
- package/types/src/services/scaffold.service.d.ts +0 -22
- package/types/src/webapi/api-name.d.ts +0 -14
- package/types/src/webapi/const.d.ts +0 -17
- package/types/src/webapi/create-api.d.ts +0 -15
- package/types/src/webapi/features/auth.feature.d.ts +0 -10
- package/types/src/webapi/features/auth0-cli.d.ts +0 -72
- package/types/src/webapi/features/biome-format.d.ts +0 -5
- package/types/src/webapi/features/database.feature.d.ts +0 -5
- package/types/src/webapi/features/finalize.feature.d.ts +0 -2
- package/types/src/webapi/features/postman.feature.d.ts +0 -16
- package/types/src/webapi/models/api-package-json.model.d.ts +0 -18
- package/types/src/webapi/models/auth-config.model.d.ts +0 -26
- package/types/src/webapi/models/controller-source-file.model.d.ts +0 -45
- package/types/src/webapi/models/github-ci.model.d.ts +0 -9
- package/types/src/webapi/models/main-source-file.model.d.ts +0 -54
- package/types/src/webapi/models/production-dockerfile.model.d.ts +0 -20
- package/types/src/webapi/models/sample-files.model.d.ts +0 -7
- package/types/src/webapi/models/webapi-image.model.d.ts +0 -5
- package/types/src/webapi/postman/hello-openapi.d.ts +0 -19
- package/types/src/webapi/postman/local-view.d.ts +0 -17
- package/types/src/webapi/postman/openapi-to-postman.d.ts +0 -62
package/commonjs/src/cli.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
const
|
|
7
|
-
|
|
6
|
+
const _runner = require("./runner.js");
|
|
7
|
+
(0, _runner.runInBuilder)(process.argv.slice(2));
|
|
8
8
|
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvY2xpLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcbmltcG9ydCB7IHJ1bkluQnVpbGRlciB9IGZyb20gXCIuL3J1bm5lci5qc1wiO1xuXG5ydW5JbkJ1aWxkZXIocHJvY2Vzcy5hcmd2LnNsaWNlKDIpKTtcbiJdLCJuYW1lcyI6WyJydW5JbkJ1aWxkZXIiLCJwcm9jZXNzIiwiYXJndiIsInNsaWNlIl0sIm1hcHBpbmdzIjoiOzs7Ozt3QkFDNkI7QUFFN0JBLElBQUFBLG9CQUFZLEVBQUNDLFFBQVFDLElBQUksQ0FBQ0MsS0FBSyxDQUFDIn0=
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "resolveLaunch", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return resolveLaunch;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _nodepath = require("node:path");
|
|
12
|
+
function resolveLaunch(argv, cwd = process.cwd()) {
|
|
13
|
+
if (argv.length === 1 && (argv[0] === "--help" || argv[0] === "-h" || argv[0] === "--version")) {
|
|
14
|
+
return {
|
|
15
|
+
targetDir: cwd,
|
|
16
|
+
containerArgv: argv,
|
|
17
|
+
projectName: (0, _nodepath.basename)(cwd)
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
let directoryFlag;
|
|
21
|
+
const withoutD = [];
|
|
22
|
+
for(let i = 0; i < argv.length; i++){
|
|
23
|
+
const arg = argv[i];
|
|
24
|
+
if (arg === "-d") {
|
|
25
|
+
directoryFlag = argv[i + 1];
|
|
26
|
+
i++;
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
if (arg != null) withoutD.push(arg);
|
|
30
|
+
}
|
|
31
|
+
const isAdd = withoutD[0] === "webapi" && withoutD[1] === "add";
|
|
32
|
+
let positional;
|
|
33
|
+
let withoutPositional = withoutD;
|
|
34
|
+
if (!isAdd && withoutD[0] === "webapi" && withoutD[1] != null && !withoutD[1].startsWith("-")) {
|
|
35
|
+
positional = withoutD[1];
|
|
36
|
+
withoutPositional = [
|
|
37
|
+
withoutD[0],
|
|
38
|
+
...withoutD.slice(2)
|
|
39
|
+
];
|
|
40
|
+
}
|
|
41
|
+
const targetDir = (0, _nodepath.resolve)(cwd, positional?.trim() || directoryFlag?.trim() || ".");
|
|
42
|
+
return {
|
|
43
|
+
targetDir,
|
|
44
|
+
containerArgv: [
|
|
45
|
+
...withoutPositional,
|
|
46
|
+
"-d",
|
|
47
|
+
"."
|
|
48
|
+
],
|
|
49
|
+
projectName: (0, _nodepath.basename)(targetDir)
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvcmVzb2x2ZS1sYXVuY2gudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYmFzZW5hbWUsIHJlc29sdmUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5cbmV4cG9ydCB0eXBlIExhdW5jaFBsYW4gPSB7XG5cdHRhcmdldERpcjogc3RyaW5nO1xuXHRjb250YWluZXJBcmd2OiBzdHJpbmdbXTtcblx0cHJvamVjdE5hbWU6IHN0cmluZztcbn07XG5cbi8qKlxuICogSG9zdCBgbnBtIGNyZWF0ZWAgYXJndiDihpIgZGlyZWN0b3J5IHRvIG1vdW50IGFuZCBhcmd2IGZvciB0aGUgaW4taW1hZ2UgQ0xJLlxuICogUG9zaXRpb25hbCBgd2ViYXBpIG15LWFwcGAgd2lucyBvdmVyIGAtZGAgKG5wbSB0cmVhdHMgYC1kYCBhcyBpdHMgb3duIGxvZ2xldmVsKS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVMYXVuY2goYXJndjogc3RyaW5nW10sIGN3ZCA9IHByb2Nlc3MuY3dkKCkpOiBMYXVuY2hQbGFuIHtcblx0aWYgKFxuXHRcdGFyZ3YubGVuZ3RoID09PSAxICYmXG5cdFx0KGFyZ3ZbMF0gPT09IFwiLS1oZWxwXCIgfHwgYXJndlswXSA9PT0gXCItaFwiIHx8IGFyZ3ZbMF0gPT09IFwiLS12ZXJzaW9uXCIpXG5cdCkge1xuXHRcdHJldHVybiB7XG5cdFx0XHR0YXJnZXREaXI6IGN3ZCxcblx0XHRcdGNvbnRhaW5lckFyZ3Y6IGFyZ3YsXG5cdFx0XHRwcm9qZWN0TmFtZTogYmFzZW5hbWUoY3dkKSxcblx0XHR9O1xuXHR9XG5cdGxldCBkaXJlY3RvcnlGbGFnOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cdGNvbnN0IHdpdGhvdXREOiBzdHJpbmdbXSA9IFtdO1xuXHRmb3IgKGxldCBpID0gMDsgaSA8IGFyZ3YubGVuZ3RoOyBpKyspIHtcblx0XHRjb25zdCBhcmcgPSBhcmd2W2ldO1xuXHRcdGlmIChhcmcgPT09IFwiLWRcIikge1xuXHRcdFx0ZGlyZWN0b3J5RmxhZyA9IGFyZ3ZbaSArIDFdO1xuXHRcdFx0aSsrO1xuXHRcdFx0Y29udGludWU7XG5cdFx0fVxuXHRcdGlmIChhcmcgIT0gbnVsbCkgd2l0aG91dEQucHVzaChhcmcpO1xuXHR9XG5cblx0Y29uc3QgaXNBZGQgPSB3aXRob3V0RFswXSA9PT0gXCJ3ZWJhcGlcIiAmJiB3aXRob3V0RFsxXSA9PT0gXCJhZGRcIjtcblx0bGV0IHBvc2l0aW9uYWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcblx0bGV0IHdpdGhvdXRQb3NpdGlvbmFsID0gd2l0aG91dEQ7XG5cdGlmIChcblx0XHQhaXNBZGQgJiZcblx0XHR3aXRob3V0RFswXSA9PT0gXCJ3ZWJhcGlcIiAmJlxuXHRcdHdpdGhvdXREWzFdICE9IG51bGwgJiZcblx0XHQhd2l0aG91dERbMV0uc3RhcnRzV2l0aChcIi1cIilcblx0KSB7XG5cdFx0cG9zaXRpb25hbCA9IHdpdGhvdXREWzFdO1xuXHRcdHdpdGhvdXRQb3NpdGlvbmFsID0gW3dpdGhvdXREWzBdLCAuLi53aXRob3V0RC5zbGljZSgyKV07XG5cdH1cblxuXHRjb25zdCB0YXJnZXREaXIgPSByZXNvbHZlKGN3ZCwgcG9zaXRpb25hbD8udHJpbSgpIHx8IGRpcmVjdG9yeUZsYWc/LnRyaW0oKSB8fCBcIi5cIik7XG5cdHJldHVybiB7XG5cdFx0dGFyZ2V0RGlyLFxuXHRcdGNvbnRhaW5lckFyZ3Y6IFsuLi53aXRob3V0UG9zaXRpb25hbCwgXCItZFwiLCBcIi5cIl0sXG5cdFx0cHJvamVjdE5hbWU6IGJhc2VuYW1lKHRhcmdldERpciksXG5cdH07XG59XG4iXSwibmFtZXMiOlsicmVzb2x2ZUxhdW5jaCIsImFyZ3YiLCJjd2QiLCJwcm9jZXNzIiwibGVuZ3RoIiwidGFyZ2V0RGlyIiwiY29udGFpbmVyQXJndiIsInByb2plY3ROYW1lIiwiYmFzZW5hbWUiLCJkaXJlY3RvcnlGbGFnIiwid2l0aG91dEQiLCJpIiwiYXJnIiwicHVzaCIsImlzQWRkIiwicG9zaXRpb25hbCIsIndpdGhvdXRQb3NpdGlvbmFsIiwic3RhcnRzV2l0aCIsInNsaWNlIiwicmVzb2x2ZSIsInRyaW0iXSwibWFwcGluZ3MiOiI7Ozs7K0JBWWdCQTs7O2VBQUFBOzs7MEJBWmtCO0FBWTNCLFNBQVNBLGNBQWNDLElBQWMsRUFBRUMsTUFBTUMsUUFBUUQsR0FBRyxFQUFFO0lBQ2hFLElBQ0NELEtBQUtHLE1BQU0sS0FBSyxLQUNmSCxDQUFBQSxJQUFJLENBQUMsRUFBRSxLQUFLLFlBQVlBLElBQUksQ0FBQyxFQUFFLEtBQUssUUFBUUEsSUFBSSxDQUFDLEVBQUUsS0FBSyxXQUFVLEdBQ2xFO1FBQ0QsT0FBTztZQUNOSSxXQUFXSDtZQUNYSSxlQUFlTDtZQUNmTSxhQUFhQyxJQUFBQSxrQkFBUSxFQUFDTjtRQUN2QjtJQUNEO0lBQ0EsSUFBSU87SUFDSixNQUFNQyxXQUFxQixFQUFFO0lBQzdCLElBQUssSUFBSUMsSUFBSSxHQUFHQSxJQUFJVixLQUFLRyxNQUFNLEVBQUVPLElBQUs7UUFDckMsTUFBTUMsTUFBTVgsSUFBSSxDQUFDVSxFQUFFO1FBQ25CLElBQUlDLFFBQVEsTUFBTTtZQUNqQkgsZ0JBQWdCUixJQUFJLENBQUNVLElBQUksRUFBRTtZQUMzQkE7WUFDQTtRQUNEO1FBQ0EsSUFBSUMsT0FBTyxNQUFNRixTQUFTRyxJQUFJLENBQUNEO0lBQ2hDO0lBRUEsTUFBTUUsUUFBUUosUUFBUSxDQUFDLEVBQUUsS0FBSyxZQUFZQSxRQUFRLENBQUMsRUFBRSxLQUFLO0lBQzFELElBQUlLO0lBQ0osSUFBSUMsb0JBQW9CTjtJQUN4QixJQUNDLENBQUNJLFNBQ0RKLFFBQVEsQ0FBQyxFQUFFLEtBQUssWUFDaEJBLFFBQVEsQ0FBQyxFQUFFLElBQUksUUFDZixDQUFDQSxRQUFRLENBQUMsRUFBRSxDQUFDTyxVQUFVLENBQUMsTUFDdkI7UUFDREYsYUFBYUwsUUFBUSxDQUFDLEVBQUU7UUFDeEJNLG9CQUFvQjtZQUFDTixRQUFRLENBQUMsRUFBRTtlQUFLQSxTQUFTUSxLQUFLLENBQUM7U0FBRztJQUN4RDtJQUVBLE1BQU1iLFlBQVljLElBQUFBLGlCQUFPLEVBQUNqQixLQUFLYSxZQUFZSyxVQUFVWCxlQUFlVyxVQUFVO0lBQzlFLE9BQU87UUFDTmY7UUFDQUMsZUFBZTtlQUFJVTtZQUFtQjtZQUFNO1NBQUk7UUFDaERULGFBQWFDLElBQUFBLGtCQUFRLEVBQUNIO0lBQ3ZCO0FBQ0QifQ==
|
package/commonjs/src/runner.js
CHANGED
|
@@ -12,20 +12,17 @@ const _nodechild_process = require("node:child_process");
|
|
|
12
12
|
const _nodefs = require("node:fs");
|
|
13
13
|
const _nodeos = require("node:os");
|
|
14
14
|
const _nodepath = require("node:path");
|
|
15
|
+
const _resolvelaunch = require("./resolve-launch.js");
|
|
15
16
|
const _version = require("./version.js");
|
|
16
17
|
const BUILDER_IMAGE = `${_version.CREATE_IMAGE_REPOSITORY}:${_version.CREATE_VERSION}`;
|
|
17
|
-
function runInBuilder(
|
|
18
|
-
const targetDir = (0,
|
|
19
|
-
const projectName = (0, _nodepath.basename)(targetDir);
|
|
18
|
+
function runInBuilder(argv) {
|
|
19
|
+
const { targetDir, containerArgv, projectName } = (0, _resolvelaunch.resolveLaunch)(argv);
|
|
20
20
|
(0, _nodefs.mkdirSync)(targetDir, {
|
|
21
21
|
recursive: true
|
|
22
22
|
});
|
|
23
|
-
// Host-owned so initializeCommand can always write here even if something
|
|
24
|
-
// else in .devcontainer ends up oddly owned.
|
|
25
23
|
(0, _nodefs.mkdirSync)((0, _nodepath.resolve)(targetDir, ".devcontainer", "npm-auth"), {
|
|
26
24
|
recursive: true
|
|
27
25
|
});
|
|
28
|
-
// Ensure Docker is available.
|
|
29
26
|
try {
|
|
30
27
|
(0, _nodechild_process.execFileSync)("docker", [
|
|
31
28
|
"info"
|
|
@@ -39,12 +36,10 @@ function runInBuilder(opts) {
|
|
|
39
36
|
const hostUid = process.getuid?.();
|
|
40
37
|
const hostGid = process.getgid?.() ?? hostUid;
|
|
41
38
|
const runAsHostUser = hostUid != null && hostGid != null;
|
|
42
|
-
// Anonymous root-owned volumes are not writable when we drop privileges.
|
|
43
39
|
const npmCacheDir = (0, _nodepath.resolve)((0, _nodeos.homedir)(), ".cache/decohere-create/npm");
|
|
44
40
|
(0, _nodefs.mkdirSync)(npmCacheDir, {
|
|
45
41
|
recursive: true
|
|
46
42
|
});
|
|
47
|
-
// Isolated HOME so --user host-uid can write without a matching /etc/passwd entry.
|
|
48
43
|
const builderHome = "/tmp/decohere-create-home";
|
|
49
44
|
const volumes = [
|
|
50
45
|
"-v",
|
|
@@ -55,7 +50,6 @@ function runInBuilder(opts) {
|
|
|
55
50
|
const envArgs = [
|
|
56
51
|
"-e",
|
|
57
52
|
"DECOHERE_BUILDER=1",
|
|
58
|
-
// Host dir basename — container cwd is /workspace so basename would be wrong.
|
|
59
53
|
"-e",
|
|
60
54
|
`DECOHERE_PROJECT_NAME=${projectName}`,
|
|
61
55
|
"-e",
|
|
@@ -65,14 +59,11 @@ function runInBuilder(opts) {
|
|
|
65
59
|
"-e",
|
|
66
60
|
`HOME=${builderHome}`
|
|
67
61
|
];
|
|
68
|
-
// Mount host .npmrc where the non-root process can read it.
|
|
69
62
|
const npmrcPath = (0, _nodepath.resolve)((0, _nodeos.homedir)(), ".npmrc");
|
|
70
63
|
if ((0, _nodefs.existsSync)(npmrcPath)) {
|
|
71
64
|
volumes.push("-v", `${npmrcPath}:/tmp/host-npmrc:ro`);
|
|
72
65
|
envArgs.push("-e", "NPM_CONFIG_USERCONFIG=/tmp/host-npmrc");
|
|
73
66
|
}
|
|
74
|
-
// Auth0 CLI reads credentials from $HOME/.config/auth0 — without this mount,
|
|
75
|
-
// ensureSpaApp fails and Postman gets an empty auth0ClientId.
|
|
76
67
|
const auth0ConfigDir = (0, _nodepath.resolve)((0, _nodeos.homedir)(), ".config/auth0");
|
|
77
68
|
if ((0, _nodefs.existsSync)(auth0ConfigDir)) {
|
|
78
69
|
volumes.push("-v", `${auth0ConfigDir}:${builderHome}/.config/auth0`);
|
|
@@ -81,41 +72,10 @@ function runInBuilder(opts) {
|
|
|
81
72
|
if (runAsHostUser) {
|
|
82
73
|
userArgs.push("--user", `${hostUid}:${hostGid}`);
|
|
83
74
|
} else if (hostUid != null) {
|
|
84
|
-
// Fallback for environments without getgid: keep legacy chown path.
|
|
85
75
|
envArgs.push("-e", `HOST_UID=${hostUid}`);
|
|
86
76
|
if (hostGid != null) envArgs.push("-e", `HOST_GID=${hostGid}`);
|
|
87
77
|
}
|
|
88
|
-
const commandArgs = opts.add ? [
|
|
89
|
-
"webapi",
|
|
90
|
-
"add",
|
|
91
|
-
opts.names?.[0] ?? "",
|
|
92
|
-
"-d",
|
|
93
|
-
"."
|
|
94
|
-
] : [
|
|
95
|
-
"webapi",
|
|
96
|
-
"-d",
|
|
97
|
-
"."
|
|
98
|
-
];
|
|
99
|
-
if (!opts.add) {
|
|
100
|
-
for (const name of opts.names ?? []){
|
|
101
|
-
commandArgs.push("--name", name);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
if (opts.databaseProvider != null) {
|
|
105
|
-
commandArgs.push("--database", opts.databaseProvider);
|
|
106
|
-
}
|
|
107
|
-
if (opts.authProvider != null) {
|
|
108
|
-
commandArgs.push("--auth", opts.authProvider);
|
|
109
|
-
}
|
|
110
|
-
if (opts.postmanProvider != null) {
|
|
111
|
-
commandArgs.push("--postman", opts.postmanProvider);
|
|
112
|
-
}
|
|
113
|
-
if (opts.installDependencies != null) {
|
|
114
|
-
commandArgs.push("--install", opts.installDependencies);
|
|
115
|
-
}
|
|
116
78
|
console.log(" Running scaffolding in a sandboxed container...\n");
|
|
117
|
-
// Only allocate a TTY when stdin is itself a TTY — avoids a hung process
|
|
118
|
-
// in non-interactive environments (pipes, CI, scripts).
|
|
119
79
|
const ttyFlags = process.stdin.isTTY ? [
|
|
120
80
|
"-it"
|
|
121
81
|
] : [
|
|
@@ -131,7 +91,7 @@ function runInBuilder(opts) {
|
|
|
131
91
|
"-w",
|
|
132
92
|
"/workspace",
|
|
133
93
|
BUILDER_IMAGE,
|
|
134
|
-
...
|
|
94
|
+
...containerArgv
|
|
135
95
|
], {
|
|
136
96
|
stdio: "inherit"
|
|
137
97
|
});
|
|
@@ -141,4 +101,4 @@ function runInBuilder(opts) {
|
|
|
141
101
|
process.exit(result.status ?? 0);
|
|
142
102
|
}
|
|
143
103
|
|
|
144
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvcnVubmVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4ZWNGaWxlU3luYywgc3Bhd25TeW5jIH0gZnJvbSBcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiO1xuaW1wb3J0IHsgZXhpc3RzU3luYywgbWtkaXJTeW5jIH0gZnJvbSBcIm5vZGU6ZnNcIjtcbmltcG9ydCB7IGhvbWVkaXIgfSBmcm9tIFwibm9kZTpvc1wiO1xuaW1wb3J0IHsgYmFzZW5hbWUsIHJlc29sdmUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgeyBDUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSwgQ1JFQVRFX1ZFUlNJT04gfSBmcm9tIFwiLi92ZXJzaW9uLmpzXCI7XG5pbXBvcnQgdHlwZSB7IEFwaU9wdGlvbnMgfSBmcm9tIFwiLi93ZWJhcGkvY3JlYXRlLWFwaS5qc1wiO1xuXG5jb25zdCBCVUlMREVSX0lNQUdFID0gYCR7Q1JFQVRFX0lNQUdFX1JFUE9TSVRPUll9OiR7Q1JFQVRFX1ZFUlNJT059YDtcblxuLyoqXG4gKiBSdW4gdGhlIHNjYWZmb2xkIGluc2lkZSBhIHByZS1idWlsdCBEb2NrZXIgYnVpbGRlciBpbWFnZS5cbiAqXG4gKiBDYWxsZWQgd2hlbiBgREVDT0hFUkVfQlVJTERFUmAgaXMgbm90IHNldCDigJQgaS5lLiB0aGUgQ0xJIGlzIHJ1bm5pbmcgb24gdGhlXG4gKiBob3N0LCBvdXRzaWRlIHRoZSBjb250YWluZXIuIE1vdW50cyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBhcyBgL3dvcmtzcGFjZWAgc29cbiAqIHRoZSBzY2FmZm9sZGVkIGZpbGVzIGFyZSB3cml0dGVuIGJhY2sgdG8gdGhlIGhvc3QgZmlsZXN5c3RlbS5cbiAqXG4gKiBUaGUgY29udGFpbmVyIHJ1bnMgYXMgdGhlIGhvc3QgdWlkL2dpZCB3aGVuZXZlciBwb3NzaWJsZSBzbyBzY2FmZm9sZGVkIGZpbGVzXG4gKiBhcmUgbmV2ZXIgcm9vdC1vd25lZCAocG9zdC1ob2MgYGNob3duYCBpcyB1bnJlbGlhYmxlIGFjcm9zcyBEb2NrZXIgc2V0dXBzKS5cbiAqXG4gKiBIb3N0IGB+Ly5jb25maWcvYXV0aDBgIGlzIG1vdW50ZWQgd2hlbiBwcmVzZW50IHNvIHRoZSBBdXRoMCBDTEkgY2FuIHJldXNlXG4gKiBjcmVkZW50aWFscyAocmVxdWlyZWQgZm9yIFBvc3RtYW4gU1BBIC8gYXV0aDBDbGllbnRJZCkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBydW5JbkJ1aWxkZXIob3B0czogQXBpT3B0aW9ucyk6IG5ldmVyIHtcblx0Y29uc3QgdGFyZ2V0RGlyID0gcmVzb2x2ZShvcHRzLmQgPz8gXCIuXCIpO1xuXHRjb25zdCBwcm9qZWN0TmFtZSA9IGJhc2VuYW1lKHRhcmdldERpcik7XG5cdG1rZGlyU3luYyh0YXJnZXREaXIsIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuXHQvLyBIb3N0LW93bmVkIHNvIGluaXRpYWxpemVDb21tYW5kIGNhbiBhbHdheXMgd3JpdGUgaGVyZSBldmVuIGlmIHNvbWV0aGluZ1xuXHQvLyBlbHNlIGluIC5kZXZjb250YWluZXIgZW5kcyB1cCBvZGRseSBvd25lZC5cblx0bWtkaXJTeW5jKHJlc29sdmUodGFyZ2V0RGlyLCBcIi5kZXZjb250YWluZXJcIiwgXCJucG0tYXV0aFwiKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG5cblx0Ly8gRW5zdXJlIERvY2tlciBpcyBhdmFpbGFibGUuXG5cdHRyeSB7XG5cdFx0ZXhlY0ZpbGVTeW5jKFwiZG9ja2VyXCIsIFtcImluZm9cIl0sIHsgc3RkaW86IFwicGlwZVwiIH0pO1xuXHR9IGNhdGNoIHtcblx0XHRjb25zb2xlLmVycm9yKFxuXHRcdFx0XCJcXG4gIERvY2tlciBpcyByZXF1aXJlZCB0byBzY2FmZm9sZCBhIERlY29oZXJlIHByb2plY3QuXFxuXCIgK1xuXHRcdFx0XHRcIiAgSW5zdGFsbCBEb2NrZXIgRGVza3RvcDogaHR0cHM6Ly93d3cuZG9ja2VyLmNvbS9wcm9kdWN0cy9kb2NrZXItZGVza3RvcFxcblwiLFxuXHRcdCk7XG5cdFx0cHJvY2Vzcy5leGl0KDEpO1xuXHR9XG5cblx0Y29uc3QgaG9zdFVpZCA9IHByb2Nlc3MuZ2V0dWlkPy4oKTtcblx0Y29uc3QgaG9zdEdpZCA9IHByb2Nlc3MuZ2V0Z2lkPy4oKSA/PyBob3N0VWlkO1xuXHRjb25zdCBydW5Bc0hvc3RVc2VyID0gaG9zdFVpZCAhPSBudWxsICYmIGhvc3RHaWQgIT0gbnVsbDtcblxuXHQvLyBBbm9ueW1vdXMgcm9vdC1vd25lZCB2b2x1bWVzIGFyZSBub3Qgd3JpdGFibGUgd2hlbiB3ZSBkcm9wIHByaXZpbGVnZXMuXG5cdGNvbnN0IG5wbUNhY2hlRGlyID0gcmVzb2x2ZShob21lZGlyKCksIFwiLmNhY2hlL2RlY29oZXJlLWNyZWF0ZS9ucG1cIik7XG5cdG1rZGlyU3luYyhucG1DYWNoZURpciwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG5cblx0Ly8gSXNvbGF0ZWQgSE9NRSBzbyAtLXVzZXIgaG9zdC11aWQgY2FuIHdyaXRlIHdpdGhvdXQgYSBtYXRjaGluZyAvZXRjL3Bhc3N3ZCBlbnRyeS5cblx0Y29uc3QgYnVpbGRlckhvbWUgPSBcIi90bXAvZGVjb2hlcmUtY3JlYXRlLWhvbWVcIjtcblxuXHRjb25zdCB2b2x1bWVzOiBzdHJpbmdbXSA9IFtcblx0XHRcIi12XCIsXG5cdFx0YCR7dGFyZ2V0RGlyfTovd29ya3NwYWNlYCxcblx0XHRcIi12XCIsXG5cdFx0YCR7bnBtQ2FjaGVEaXJ9Oi9ucG0tY2FjaGVgLFxuXHRdO1xuXG5cdGNvbnN0IGVudkFyZ3M6IHN0cmluZ1tdID0gW1xuXHRcdFwiLWVcIixcblx0XHRcIkRFQ09IRVJFX0JVSUxERVI9MVwiLFxuXHRcdC8vIEhvc3QgZGlyIGJhc2VuYW1lIOKAlCBjb250YWluZXIgY3dkIGlzIC93b3Jrc3BhY2Ugc28gYmFzZW5hbWUgd291bGQgYmUgd3JvbmcuXG5cdFx0XCItZVwiLFxuXHRcdGBERUNPSEVSRV9QUk9KRUNUX05BTUU9JHtwcm9qZWN0TmFtZX1gLFxuXHRcdFwiLWVcIixcblx0XHRcIk5QTV9DT05GSUdfQ0FDSEU9L25wbS1jYWNoZVwiLFxuXHRcdFwiLWVcIixcblx0XHRcIk5QTV9DT05GSUdfUFJFRkVSX09GRkxJTkU9dHJ1ZVwiLFxuXHRcdFwiLWVcIixcblx0XHRgSE9NRT0ke2J1aWxkZXJIb21lfWAsXG5cdF07XG5cblx0Ly8gTW91bnQgaG9zdCAubnBtcmMgd2hlcmUgdGhlIG5vbi1yb290IHByb2Nlc3MgY2FuIHJlYWQgaXQuXG5cdGNvbnN0IG5wbXJjUGF0aCA9IHJlc29sdmUoaG9tZWRpcigpLCBcIi5ucG1yY1wiKTtcblx0aWYgKGV4aXN0c1N5bmMobnBtcmNQYXRoKSkge1xuXHRcdHZvbHVtZXMucHVzaChcIi12XCIsIGAke25wbXJjUGF0aH06L3RtcC9ob3N0LW5wbXJjOnJvYCk7XG5cdFx0ZW52QXJncy5wdXNoKFwiLWVcIiwgXCJOUE1fQ09ORklHX1VTRVJDT05GSUc9L3RtcC9ob3N0LW5wbXJjXCIpO1xuXHR9XG5cblx0Ly8gQXV0aDAgQ0xJIHJlYWRzIGNyZWRlbnRpYWxzIGZyb20gJEhPTUUvLmNvbmZpZy9hdXRoMCDigJQgd2l0aG91dCB0aGlzIG1vdW50LFxuXHQvLyBlbnN1cmVTcGFBcHAgZmFpbHMgYW5kIFBvc3RtYW4gZ2V0cyBhbiBlbXB0eSBhdXRoMENsaWVudElkLlxuXHRjb25zdCBhdXRoMENvbmZpZ0RpciA9IHJlc29sdmUoaG9tZWRpcigpLCBcIi5jb25maWcvYXV0aDBcIik7XG5cdGlmIChleGlzdHNTeW5jKGF1dGgwQ29uZmlnRGlyKSkge1xuXHRcdHZvbHVtZXMucHVzaChcIi12XCIsIGAke2F1dGgwQ29uZmlnRGlyfToke2J1aWxkZXJIb21lfS8uY29uZmlnL2F1dGgwYCk7XG5cdH1cblxuXHRjb25zdCB1c2VyQXJnczogc3RyaW5nW10gPSBbXTtcblx0aWYgKHJ1bkFzSG9zdFVzZXIpIHtcblx0XHR1c2VyQXJncy5wdXNoKFwiLS11c2VyXCIsIGAke2hvc3RVaWR9OiR7aG9zdEdpZH1gKTtcblx0fSBlbHNlIGlmIChob3N0VWlkICE9IG51bGwpIHtcblx0XHQvLyBGYWxsYmFjayBmb3IgZW52aXJvbm1lbnRzIHdpdGhvdXQgZ2V0Z2lkOiBrZWVwIGxlZ2FjeSBjaG93biBwYXRoLlxuXHRcdGVudkFyZ3MucHVzaChcIi1lXCIsIGBIT1NUX1VJRD0ke2hvc3RVaWR9YCk7XG5cdFx0aWYgKGhvc3RHaWQgIT0gbnVsbCkgZW52QXJncy5wdXNoKFwiLWVcIiwgYEhPU1RfR0lEPSR7aG9zdEdpZH1gKTtcblx0fVxuXG5cdGNvbnN0IGNvbW1hbmRBcmdzOiBzdHJpbmdbXSA9IG9wdHMuYWRkXG5cdFx0PyBbXCJ3ZWJhcGlcIiwgXCJhZGRcIiwgb3B0cy5uYW1lcz8uWzBdID8/IFwiXCIsIFwiLWRcIiwgXCIuXCJdXG5cdFx0OiBbXCJ3ZWJhcGlcIiwgXCItZFwiLCBcIi5cIl07XG5cdGlmICghb3B0cy5hZGQpIHtcblx0XHRmb3IgKGNvbnN0IG5hbWUgb2Ygb3B0cy5uYW1lcyA/PyBbXSkge1xuXHRcdFx0Y29tbWFuZEFyZ3MucHVzaChcIi0tbmFtZVwiLCBuYW1lKTtcblx0XHR9XG5cdH1cblx0aWYgKG9wdHMuZGF0YWJhc2VQcm92aWRlciAhPSBudWxsKSB7XG5cdFx0Y29tbWFuZEFyZ3MucHVzaChcIi0tZGF0YWJhc2VcIiwgb3B0cy5kYXRhYmFzZVByb3ZpZGVyKTtcblx0fVxuXHRpZiAob3B0cy5hdXRoUHJvdmlkZXIgIT0gbnVsbCkge1xuXHRcdGNvbW1hbmRBcmdzLnB1c2goXCItLWF1dGhcIiwgb3B0cy5hdXRoUHJvdmlkZXIpO1xuXHR9XG5cdGlmIChvcHRzLnBvc3RtYW5Qcm92aWRlciAhPSBudWxsKSB7XG5cdFx0Y29tbWFuZEFyZ3MucHVzaChcIi0tcG9zdG1hblwiLCBvcHRzLnBvc3RtYW5Qcm92aWRlcik7XG5cdH1cblx0aWYgKG9wdHMuaW5zdGFsbERlcGVuZGVuY2llcyAhPSBudWxsKSB7XG5cdFx0Y29tbWFuZEFyZ3MucHVzaChcIi0taW5zdGFsbFwiLCBvcHRzLmluc3RhbGxEZXBlbmRlbmNpZXMpO1xuXHR9XG5cblx0Y29uc29sZS5sb2coXCIgIFJ1bm5pbmcgc2NhZmZvbGRpbmcgaW4gYSBzYW5kYm94ZWQgY29udGFpbmVyLi4uXFxuXCIpO1xuXG5cdC8vIE9ubHkgYWxsb2NhdGUgYSBUVFkgd2hlbiBzdGRpbiBpcyBpdHNlbGYgYSBUVFkg4oCUIGF2b2lkcyBhIGh1bmcgcHJvY2Vzc1xuXHQvLyBpbiBub24taW50ZXJhY3RpdmUgZW52aXJvbm1lbnRzIChwaXBlcywgQ0ksIHNjcmlwdHMpLlxuXHRjb25zdCB0dHlGbGFncyA9IHByb2Nlc3Muc3RkaW4uaXNUVFkgPyBbXCItaXRcIl0gOiBbXCItaVwiXTtcblxuXHRjb25zdCByZXN1bHQgPSBzcGF3blN5bmMoXG5cdFx0XCJkb2NrZXJcIixcblx0XHRbXG5cdFx0XHRcInJ1blwiLFxuXHRcdFx0XCItLXJtXCIsXG5cdFx0XHQuLi50dHlGbGFncyxcblx0XHRcdC4uLnVzZXJBcmdzLFxuXHRcdFx0Li4udm9sdW1lcyxcblx0XHRcdC4uLmVudkFyZ3MsXG5cdFx0XHRcIi13XCIsXG5cdFx0XHRcIi93b3Jrc3BhY2VcIixcblx0XHRcdEJVSUxERVJfSU1BR0UsXG5cdFx0XHQuLi5jb21tYW5kQXJncyxcblx0XHRdLFxuXHRcdHsgc3RkaW86IFwiaW5oZXJpdFwiIH0sXG5cdCk7XG5cblx0aWYgKHJlc3VsdC5zdGF0dXMgPT09IDApIHtcblx0XHRjb25zb2xlLmxvZyhgXFxuICBTY2FmZm9sZCBjb21wbGV0ZSFcXG5cXG4gIE9wZW4geW91ciBwcm9qZWN0OlxcblxcbiAgICBjb2RlICR7dGFyZ2V0RGlyfVxcbmApO1xuXHR9XG5cblx0cHJvY2Vzcy5leGl0KHJlc3VsdC5zdGF0dXMgPz8gMCk7XG59XG4iXSwibmFtZXMiOlsicnVuSW5CdWlsZGVyIiwiQlVJTERFUl9JTUFHRSIsIkNSRUFURV9JTUFHRV9SRVBPU0lUT1JZIiwiQ1JFQVRFX1ZFUlNJT04iLCJvcHRzIiwidGFyZ2V0RGlyIiwicmVzb2x2ZSIsImQiLCJwcm9qZWN0TmFtZSIsImJhc2VuYW1lIiwibWtkaXJTeW5jIiwicmVjdXJzaXZlIiwiZXhlY0ZpbGVTeW5jIiwic3RkaW8iLCJjb25zb2xlIiwiZXJyb3IiLCJwcm9jZXNzIiwiZXhpdCIsImhvc3RVaWQiLCJnZXR1aWQiLCJob3N0R2lkIiwiZ2V0Z2lkIiwicnVuQXNIb3N0VXNlciIsIm5wbUNhY2hlRGlyIiwiaG9tZWRpciIsImJ1aWxkZXJIb21lIiwidm9sdW1lcyIsImVudkFyZ3MiLCJucG1yY1BhdGgiLCJleGlzdHNTeW5jIiwicHVzaCIsImF1dGgwQ29uZmlnRGlyIiwidXNlckFyZ3MiLCJjb21tYW5kQXJncyIsImFkZCIsIm5hbWVzIiwibmFtZSIsImRhdGFiYXNlUHJvdmlkZXIiLCJhdXRoUHJvdmlkZXIiLCJwb3N0bWFuUHJvdmlkZXIiLCJpbnN0YWxsRGVwZW5kZW5jaWVzIiwibG9nIiwidHR5RmxhZ3MiLCJzdGRpbiIsImlzVFRZIiwicmVzdWx0Iiwic3Bhd25TeW5jIiwic3RhdHVzIl0sIm1hcHBpbmdzIjoiOzs7OytCQXNCZ0JBOzs7ZUFBQUE7OzttQ0F0QndCO3dCQUNGO3dCQUNkOzBCQUNVO3lCQUNzQjtBQUd4RCxNQUFNQyxnQkFBZ0IsR0FBR0MsZ0NBQXVCLENBQUMsQ0FBQyxFQUFFQyx1QkFBYyxFQUFFO0FBZTdELFNBQVNILGFBQWFJLElBQWdCO0lBQzVDLE1BQU1DLFlBQVlDLElBQUFBLGlCQUFPLEVBQUNGLEtBQUtHLENBQUMsSUFBSTtJQUNwQyxNQUFNQyxjQUFjQyxJQUFBQSxrQkFBUSxFQUFDSjtJQUM3QkssSUFBQUEsaUJBQVMsRUFBQ0wsV0FBVztRQUFFTSxXQUFXO0lBQUs7SUFDdkMsMEVBQTBFO0lBQzFFLDZDQUE2QztJQUM3Q0QsSUFBQUEsaUJBQVMsRUFBQ0osSUFBQUEsaUJBQU8sRUFBQ0QsV0FBVyxpQkFBaUIsYUFBYTtRQUFFTSxXQUFXO0lBQUs7SUFFN0UsOEJBQThCO0lBQzlCLElBQUk7UUFDSEMsSUFBQUEsK0JBQVksRUFB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
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvcnVubmVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4ZWNGaWxlU3luYywgc3Bhd25TeW5jIH0gZnJvbSBcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiO1xuaW1wb3J0IHsgZXhpc3RzU3luYywgbWtkaXJTeW5jIH0gZnJvbSBcIm5vZGU6ZnNcIjtcbmltcG9ydCB7IGhvbWVkaXIgfSBmcm9tIFwibm9kZTpvc1wiO1xuaW1wb3J0IHsgcmVzb2x2ZSB9IGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB7IHJlc29sdmVMYXVuY2ggfSBmcm9tIFwiLi9yZXNvbHZlLWxhdW5jaC5qc1wiO1xuaW1wb3J0IHsgQ1JFQVRFX0lNQUdFX1JFUE9TSVRPUlksIENSRUFURV9WRVJTSU9OIH0gZnJvbSBcIi4vdmVyc2lvbi5qc1wiO1xuXG5jb25zdCBCVUlMREVSX0lNQUdFID0gYCR7Q1JFQVRFX0lNQUdFX1JFUE9TSVRPUll9OiR7Q1JFQVRFX1ZFUlNJT059YDtcblxuLyoqXG4gKiBQdWxsL3J1biB0aGUgRGVjb2hlcmUgQ0xJIGltYWdlLiBIb3N0IGBAZGVjb2hlcmUvY3JlYXRlYCBkb2VzIG5vdCBsb2FkIHRoZVxuICogYEBkZWNvaGVyZS9jbGlgIGRlcGVuZGVuY3kgdHJlZSDigJQgdGhhdCBsaXZlcyBpbiB0aGUgaW1hZ2Ugb25seS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJ1bkluQnVpbGRlcihhcmd2OiBzdHJpbmdbXSk6IG5ldmVyIHtcblx0Y29uc3QgeyB0YXJnZXREaXIsIGNvbnRhaW5lckFyZ3YsIHByb2plY3ROYW1lIH0gPSByZXNvbHZlTGF1bmNoKGFyZ3YpO1xuXHRta2RpclN5bmModGFyZ2V0RGlyLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcblx0bWtkaXJTeW5jKHJlc29sdmUodGFyZ2V0RGlyLCBcIi5kZXZjb250YWluZXJcIiwgXCJucG0tYXV0aFwiKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG5cblx0dHJ5IHtcblx0XHRleGVjRmlsZVN5bmMoXCJkb2NrZXJcIiwgW1wiaW5mb1wiXSwgeyBzdGRpbzogXCJwaXBlXCIgfSk7XG5cdH0gY2F0Y2gge1xuXHRcdGNvbnNvbGUuZXJyb3IoXG5cdFx0XHRcIlxcbiAgRG9ja2VyIGlzIHJlcXVpcmVkIHRvIHNjYWZmb2xkIGEgRGVjb2hlcmUgcHJvamVjdC5cXG5cIiArXG5cdFx0XHRcdFwiICBJbnN0YWxsIERvY2tlciBEZXNrdG9wOiBodHRwczovL3d3dy5kb2NrZXIuY29tL3Byb2R1Y3RzL2RvY2tlci1kZXNrdG9wXFxuXCIsXG5cdFx0KTtcblx0XHRwcm9jZXNzLmV4aXQoMSk7XG5cdH1cblxuXHRjb25zdCBob3N0VWlkID0gcHJvY2Vzcy5nZXR1aWQ/LigpO1xuXHRjb25zdCBob3N0R2lkID0gcHJvY2Vzcy5nZXRnaWQ/LigpID8/IGhvc3RVaWQ7XG5cdGNvbnN0IHJ1bkFzSG9zdFVzZXIgPSBob3N0VWlkICE9IG51bGwgJiYgaG9zdEdpZCAhPSBudWxsO1xuXG5cdGNvbnN0IG5wbUNhY2hlRGlyID0gcmVzb2x2ZShob21lZGlyKCksIFwiLmNhY2hlL2RlY29oZXJlLWNyZWF0ZS9ucG1cIik7XG5cdG1rZGlyU3luYyhucG1DYWNoZURpciwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG5cblx0Y29uc3QgYnVpbGRlckhvbWUgPSBcIi90bXAvZGVjb2hlcmUtY3JlYXRlLWhvbWVcIjtcblxuXHRjb25zdCB2b2x1bWVzOiBzdHJpbmdbXSA9IFtcblx0XHRcIi12XCIsXG5cdFx0YCR7dGFyZ2V0RGlyfTovd29ya3NwYWNlYCxcblx0XHRcIi12XCIsXG5cdFx0YCR7bnBtQ2FjaGVEaXJ9Oi9ucG0tY2FjaGVgLFxuXHRdO1xuXG5cdGNvbnN0IGVudkFyZ3M6IHN0cmluZ1tdID0gW1xuXHRcdFwiLWVcIixcblx0XHRcIkRFQ09IRVJFX0JVSUxERVI9MVwiLFxuXHRcdFwiLWVcIixcblx0XHRgREVDT0hFUkVfUFJPSkVDVF9OQU1FPSR7cHJvamVjdE5hbWV9YCxcblx0XHRcIi1lXCIsXG5cdFx0XCJOUE1fQ09ORklHX0NBQ0hFPS9ucG0tY2FjaGVcIixcblx0XHRcIi1lXCIsXG5cdFx0XCJOUE1fQ09ORklHX1BSRUZFUl9PRkZMSU5FPXRydWVcIixcblx0XHRcIi1lXCIsXG5cdFx0YEhPTUU9JHtidWlsZGVySG9tZX1gLFxuXHRdO1xuXG5cdGNvbnN0IG5wbXJjUGF0aCA9IHJlc29sdmUoaG9tZWRpcigpLCBcIi5ucG1yY1wiKTtcblx0aWYgKGV4aXN0c1N5bmMobnBtcmNQYXRoKSkge1xuXHRcdHZvbHVtZXMucHVzaChcIi12XCIsIGAke25wbXJjUGF0aH06L3RtcC9ob3N0LW5wbXJjOnJvYCk7XG5cdFx0ZW52QXJncy5wdXNoKFwiLWVcIiwgXCJOUE1fQ09ORklHX1VTRVJDT05GSUc9L3RtcC9ob3N0LW5wbXJjXCIpO1xuXHR9XG5cblx0Y29uc3QgYXV0aDBDb25maWdEaXIgPSByZXNvbHZlKGhvbWVkaXIoKSwgXCIuY29uZmlnL2F1dGgwXCIpO1xuXHRpZiAoZXhpc3RzU3luYyhhdXRoMENvbmZpZ0RpcikpIHtcblx0XHR2b2x1bWVzLnB1c2goXCItdlwiLCBgJHthdXRoMENvbmZpZ0Rpcn06JHtidWlsZGVySG9tZX0vLmNvbmZpZy9hdXRoMGApO1xuXHR9XG5cblx0Y29uc3QgdXNlckFyZ3M6IHN0cmluZ1tdID0gW107XG5cdGlmIChydW5Bc0hvc3RVc2VyKSB7XG5cdFx0dXNlckFyZ3MucHVzaChcIi0tdXNlclwiLCBgJHtob3N0VWlkfToke2hvc3RHaWR9YCk7XG5cdH0gZWxzZSBpZiAoaG9zdFVpZCAhPSBudWxsKSB7XG5cdFx0ZW52QXJncy5wdXNoKFwiLWVcIiwgYEhPU1RfVUlEPSR7aG9zdFVpZH1gKTtcblx0XHRpZiAoaG9zdEdpZCAhPSBudWxsKSBlbnZBcmdzLnB1c2goXCItZVwiLCBgSE9TVF9HSUQ9JHtob3N0R2lkfWApO1xuXHR9XG5cblx0Y29uc29sZS5sb2coXCIgIFJ1bm5pbmcgc2NhZmZvbGRpbmcgaW4gYSBzYW5kYm94ZWQgY29udGFpbmVyLi4uXFxuXCIpO1xuXG5cdGNvbnN0IHR0eUZsYWdzID0gcHJvY2Vzcy5zdGRpbi5pc1RUWSA/IFtcIi1pdFwiXSA6IFtcIi1pXCJdO1xuXG5cdGNvbnN0IHJlc3VsdCA9IHNwYXduU3luYyhcblx0XHRcImRvY2tlclwiLFxuXHRcdFtcblx0XHRcdFwicnVuXCIsXG5cdFx0XHRcIi0tcm1cIixcblx0XHRcdC4uLnR0eUZsYWdzLFxuXHRcdFx0Li4udXNlckFyZ3MsXG5cdFx0XHQuLi52b2x1bWVzLFxuXHRcdFx0Li4uZW52QXJncyxcblx0XHRcdFwiLXdcIixcblx0XHRcdFwiL3dvcmtzcGFjZVwiLFxuXHRcdFx0QlVJTERFUl9JTUFHRSxcblx0XHRcdC4uLmNvbnRhaW5lckFyZ3YsXG5cdFx0XSxcblx0XHR7IHN0ZGlvOiBcImluaGVyaXRcIiB9LFxuXHQpO1xuXG5cdGlmIChyZXN1bHQuc3RhdHVzID09PSAwKSB7XG5cdFx0Y29uc29sZS5sb2coYFxcbiAgU2NhZmZvbGQgY29tcGxldGUhXFxuXFxuICBPcGVuIHlvdXIgcHJvamVjdDpcXG5cXG4gICAgY29kZSAke3RhcmdldERpcn1cXG5gKTtcblx0fVxuXG5cdHByb2Nlc3MuZXhpdChyZXN1bHQuc3RhdHVzID8/IDApO1xufVxuIl0sIm5hbWVzIjpbInJ1bkluQnVpbGRlciIsIkJVSUxERVJfSU1BR0UiLCJDUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSIsIkNSRUFURV9WRVJTSU9OIiwiYXJndiIsInRhcmdldERpciIsImNvbnRhaW5lckFyZ3YiLCJwcm9qZWN0TmFtZSIsInJlc29sdmVMYXVuY2giLCJta2RpclN5bmMiLCJyZWN1cnNpdmUiLCJyZXNvbHZlIiwiZXhlY0ZpbGVTeW5jIiwic3RkaW8iLCJjb25zb2xlIiwiZXJyb3IiLCJwcm9jZXNzIiwiZXhpdCIsImhvc3RVaWQiLCJnZXR1aWQiLCJob3N0R2lkIiwiZ2V0Z2lkIiwicnVuQXNIb3N0VXNlciIsIm5wbUNhY2hlRGlyIiwiaG9tZWRpciIsImJ1aWxkZXJIb21lIiwidm9sdW1lcyIsImVudkFyZ3MiLCJucG1yY1BhdGgiLCJleGlzdHNTeW5jIiwicHVzaCIsImF1dGgwQ29uZmlnRGlyIiwidXNlckFyZ3MiLCJsb2ciLCJ0dHlGbGFncyIsInN0ZGluIiwiaXNUVFkiLCJyZXN1bHQiLCJzcGF3blN5bmMiLCJzdGF0dXMiXSwibWFwcGluZ3MiOiI7Ozs7K0JBYWdCQTs7O2VBQUFBOzs7bUNBYndCO3dCQUNGO3dCQUNkOzBCQUNBOytCQUNNO3lCQUMwQjtBQUV4RCxNQUFNQyxnQkFBZ0IsR0FBR0MsZ0NBQXVCLENBQUMsQ0FBQyxFQUFFQyx1QkFBYyxFQUFFO0FBTTdELFNBQVNILGFBQWFJLElBQWM7SUFDMUMsTUFBTSxFQUFFQyxTQUFTLEVBQUVDLGFBQWEsRUFBRUMsV0FBVyxFQUFFLEdBQUdDLElBQUFBLDRCQUFhLEVBQUNKO0lBQ2hFSyxJQUFBQSxpQkFBUyxFQUFDSixXQUFXO1FBQUVLLFdBQVc7SUFBSztJQUN2Q0QsSUFBQUEsaUJBQVMsRUFBQ0UsSUFBQUEsaUJBQU8sRUFBQ04sV0FBVyxpQkFBaUIsYUFBYTtRQUFFSyxXQUFXO0lBQUs7SUFFN0UsSUFBSTtRQUNIRSxJQUFBQSwrQkFBWSxFQUFDLFVBQVU7WUFBQztTQUFPLEVBQUU7WUFBRUMsT0FBTztRQUFPO0lBQ2xELEVBQUUsT0FBTTtRQUNQQyxRQUFRQyxLQUFLLENBQ1osNkRBQ0M7UUFFRkMsUUFBUUMsSUFBSSxDQUFDO0lBQ2Q7SUFFQSxNQUFNQyxVQUFVRixRQUFRRyxNQUFNO0lBQzlCLE1BQU1DLFVBQVVKLFFBQVFLLE1BQU0sUUFBUUg7SUFDdEMsTUFBTUksZ0JBQWdCSixXQUFXLFFBQVFFLFdBQVc7SUFFcEQsTUFBTUcsY0FBY1osSUFBQUEsaUJBQU8sRUFBQ2EsSUFBQUEsZUFBTyxLQUFJO0lBQ3ZDZixJQUFBQSxpQkFBUyxFQUFDYyxhQUFhO1FBQUViLFdBQVc7SUFBSztJQUV6QyxNQUFNZSxjQUFjO0lBRXBCLE1BQU1DLFVBQW9CO1FBQ3pCO1FBQ0EsR0FBR3JCLFVBQVUsV0FBVyxDQUFDO1FBQ3pCO1FBQ0EsR0FBR2tCLFlBQVksV0FBVyxDQUFDO0tBQzNCO0lBRUQsTUFBTUksVUFBb0I7UUFDekI7UUFDQTtRQUNBO1FBQ0EsQ0FBQyxzQkFBc0IsRUFBRXBCLGFBQWE7UUFDdEM7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLENBQUMsS0FBSyxFQUFFa0IsYUFBYTtLQUNyQjtJQUVELE1BQU1HLFlBQVlqQixJQUFBQSxpQkFBTyxFQUFDYSxJQUFBQSxlQUFPLEtBQUk7SUFDckMsSUFBSUssSUFBQUEsa0JBQVUsRUFBQ0QsWUFBWTtRQUMxQkYsUUFBUUksSUFBSSxDQUFDLE1BQU0sR0FBR0YsVUFBVSxtQkFBbUIsQ0FBQztRQUNwREQsUUFBUUcsSUFBSSxDQUFDLE1BQU07SUFDcEI7SUFFQSxNQUFNQyxpQkFBaUJwQixJQUFBQSxpQkFBTyxFQUFDYSxJQUFBQSxlQUFPLEtBQUk7SUFDMUMsSUFBSUssSUFBQUEsa0JBQVUsRUFBQ0UsaUJBQWlCO1FBQy9CTCxRQUFRSSxJQUFJLENBQUMsTUFBTSxHQUFHQyxlQUFlLENBQUMsRUFBRU4sWUFBWSxjQUFjLENBQUM7SUFDcEU7SUFFQSxNQUFNTyxXQUFxQixFQUFFO0lBQzdCLElBQUlWLGVBQWU7UUFDbEJVLFNBQVNGLElBQUksQ0FBQyxVQUFVLEdBQUdaLFFBQVEsQ0FBQyxFQUFFRSxTQUFTO0lBQ2hELE9BQU8sSUFBSUYsV0FBVyxNQUFNO1FBQzNCUyxRQUFRRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRVosU0FBUztRQUN4QyxJQUFJRSxXQUFXLE1BQU1PLFFBQVFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFVixTQUFTO0lBQzlEO0lBRUFOLFFBQVFtQixHQUFHLENBQUM7SUFFWixNQUFNQyxXQUFXbEIsUUFBUW1CLEtBQUssQ0FBQ0MsS0FBSyxHQUFHO1FBQUM7S0FBTSxHQUFHO1FBQUM7S0FBSztJQUV2RCxNQUFNQyxTQUFTQyxJQUFBQSw0QkFBUyxFQUN2QixVQUNBO1FBQ0M7UUFDQTtXQUNHSjtXQUNBRjtXQUNBTjtXQUNBQztRQUNIO1FBQ0E7UUFDQTFCO1dBQ0dLO0tBQ0gsRUFDRDtRQUFFTyxPQUFPO0lBQVU7SUFHcEIsSUFBSXdCLE9BQU9FLE1BQU0sS0FBSyxHQUFHO1FBQ3hCekIsUUFBUW1CLEdBQUcsQ0FBQyxDQUFDLDJEQUEyRCxFQUFFNUIsVUFBVSxFQUFFLENBQUM7SUFDeEY7SUFFQVcsUUFBUUMsSUFBSSxDQUFDb0IsT0FBT0UsTUFBTSxJQUFJO0FBQy9CIn0=
|
package/commonjs/src/version.js
CHANGED
|
@@ -47,4 +47,4 @@ const createMetadata = resolveCreateMetadata();
|
|
|
47
47
|
const CREATE_VERSION = createMetadata.version;
|
|
48
48
|
const CREATE_IMAGE_REPOSITORY = createMetadata.imageRepository;
|
|
49
49
|
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvdmVyc2lvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVSZXF1aXJlIH0gZnJvbSBcIm5vZGU6bW9kdWxlXCI7XG5pbXBvcnQgeyBkaXJuYW1lLCBqb2luIH0gZnJvbSBcIm5vZGU6cGF0aFwiO1xuaW1wb3J0IHsgZmlsZVVSTFRvUGF0aCB9IGZyb20gXCJub2RlOnVybFwiO1xuXG5jb25zdCBfcmVxdWlyZSA9IGNyZWF0ZVJlcXVpcmUoaW1wb3J0Lm1ldGEudXJsKTtcblxudHlwZSBDcmVhdGVQYWNrYWdlTWV0YWRhdGEgPSB7XG5cdG5hbWU/OiBzdHJpbmc7XG5cdHZlcnNpb24/OiBzdHJpbmc7XG5cdGRlY29oZXJlPzoge1xuXHRcdGRvY2tlckltYWdlUmVwb3NpdG9yeT86IHN0cmluZztcblx0fTtcbn07XG5cbmNvbnN0IERFRkFVTFRfQ1JFQVRFX1ZFUlNJT04gPSBcIjAuMC4xLWRldlwiO1xuY29uc3QgREVGQVVMVF9DUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSA9IFwiZ2hjci5pby90eXBlc21pdGhzL2RlY29oZXJlL2NyZWF0ZVwiO1xuXG5mdW5jdGlvbiByZXNvbHZlQ3JlYXRlTWV0YWRhdGEoKSB7XG5cdGxldCBkaXIgPSBkaXJuYW1lKGZpbGVVUkxUb1BhdGgoaW1wb3J0Lm1ldGEudXJsKSk7XG5cdGZvciAobGV0IGkgPSAwOyBpIDwgNTsgaSsrKSB7XG5cdFx0dHJ5IHtcblx0XHRcdGNvbnN0IHBrZyA9IF9yZXF1aXJlKGpvaW4oZGlyLCBcInBhY2thZ2UuanNvblwiKSkgYXMgQ3JlYXRlUGFja2FnZU1ldGFkYXRhO1xuXHRcdFx0aWYgKHBrZy5uYW1lID09PSBcIkBkZWNvaGVyZS9jcmVhdGVcIikge1xuXHRcdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRcdHZlcnNpb246IHBrZy52ZXJzaW9uID8/
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvdmVyc2lvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVSZXF1aXJlIH0gZnJvbSBcIm5vZGU6bW9kdWxlXCI7XG5pbXBvcnQgeyBkaXJuYW1lLCBqb2luIH0gZnJvbSBcIm5vZGU6cGF0aFwiO1xuaW1wb3J0IHsgZmlsZVVSTFRvUGF0aCB9IGZyb20gXCJub2RlOnVybFwiO1xuXG5jb25zdCBfcmVxdWlyZSA9IGNyZWF0ZVJlcXVpcmUoaW1wb3J0Lm1ldGEudXJsKTtcblxudHlwZSBDcmVhdGVQYWNrYWdlTWV0YWRhdGEgPSB7XG5cdG5hbWU/OiBzdHJpbmc7XG5cdHZlcnNpb24/OiBzdHJpbmc7XG5cdGRlY29oZXJlPzoge1xuXHRcdGRvY2tlckltYWdlUmVwb3NpdG9yeT86IHN0cmluZztcblx0fTtcbn07XG5cbmNvbnN0IERFRkFVTFRfQ1JFQVRFX1ZFUlNJT04gPSBcIjAuMC4xLWRldlwiO1xuY29uc3QgREVGQVVMVF9DUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSA9IFwiZ2hjci5pby90eXBlc21pdGhzL2RlY29oZXJlL2NyZWF0ZVwiO1xuXG5mdW5jdGlvbiByZXNvbHZlQ3JlYXRlTWV0YWRhdGEoKSB7XG5cdGxldCBkaXIgPSBkaXJuYW1lKGZpbGVVUkxUb1BhdGgoaW1wb3J0Lm1ldGEudXJsKSk7XG5cdGZvciAobGV0IGkgPSAwOyBpIDwgNTsgaSsrKSB7XG5cdFx0dHJ5IHtcblx0XHRcdGNvbnN0IHBrZyA9IF9yZXF1aXJlKGpvaW4oZGlyLCBcInBhY2thZ2UuanNvblwiKSkgYXMgQ3JlYXRlUGFja2FnZU1ldGFkYXRhO1xuXHRcdFx0aWYgKHBrZy5uYW1lID09PSBcIkBkZWNvaGVyZS9jcmVhdGVcIikge1xuXHRcdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRcdHZlcnNpb246IHBrZy52ZXJzaW9uID8/IERFRkFVTFRfQ1JFQVRFX1ZFUlNJT04sXG5cdFx0XHRcdFx0aW1hZ2VSZXBvc2l0b3J5OlxuXHRcdFx0XHRcdFx0cGtnLmRlY29oZXJlPy5kb2NrZXJJbWFnZVJlcG9zaXRvcnkgPz8gREVGQVVMVF9DUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSxcblx0XHRcdFx0fTtcblx0XHRcdH1cblx0XHR9IGNhdGNoIHt9XG5cdFx0Y29uc3QgcGFyZW50ID0gZGlybmFtZShkaXIpO1xuXHRcdGlmIChwYXJlbnQgPT09IGRpcikgYnJlYWs7XG5cdFx0ZGlyID0gcGFyZW50O1xuXHR9XG5cblx0cmV0dXJuIHtcblx0XHR2ZXJzaW9uOiBERUZBVUxUX0NSRUFURV9WRVJTSU9OLFxuXHRcdGltYWdlUmVwb3NpdG9yeTogREVGQVVMVF9DUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSxcblx0fTtcbn1cblxuY29uc3QgY3JlYXRlTWV0YWRhdGEgPSByZXNvbHZlQ3JlYXRlTWV0YWRhdGEoKTtcblxuZXhwb3J0IGNvbnN0IENSRUFURV9WRVJTSU9OID0gY3JlYXRlTWV0YWRhdGEudmVyc2lvbjtcblxuZXhwb3J0IGNvbnN0IENSRUFURV9JTUFHRV9SRVBPU0lUT1JZID0gY3JlYXRlTWV0YWRhdGEuaW1hZ2VSZXBvc2l0b3J5O1xuIl0sIm5hbWVzIjpbIkNSRUFURV9JTUFHRV9SRVBPU0lUT1JZIiwiQ1JFQVRFX1ZFUlNJT04iLCJfcmVxdWlyZSIsImNyZWF0ZVJlcXVpcmUiLCJERUZBVUxUX0NSRUFURV9WRVJTSU9OIiwiREVGQVVMVF9DUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSIsInJlc29sdmVDcmVhdGVNZXRhZGF0YSIsImRpciIsImRpcm5hbWUiLCJmaWxlVVJMVG9QYXRoIiwiaSIsInBrZyIsImpvaW4iLCJuYW1lIiwidmVyc2lvbiIsImltYWdlUmVwb3NpdG9yeSIsImRlY29oZXJlIiwiZG9ja2VySW1hZ2VSZXBvc2l0b3J5IiwicGFyZW50IiwiY3JlYXRlTWV0YWRhdGEiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O1FBNkNhQTtlQUFBQTs7UUFGQUM7ZUFBQUE7Ozs0QkEzQ2lCOzBCQUNBO3lCQUNBO0FBRTlCLE1BQU1DLFdBQVdDLElBQUFBLHlCQUFhLEVBQUM7QUFVL0IsTUFBTUMseUJBQXlCO0FBQy9CLE1BQU1DLGtDQUFrQztBQUV4QyxTQUFTQztJQUNSLElBQUlDLE1BQU1DLElBQUFBLGlCQUFPLEVBQUNDLElBQUFBLHNCQUFhLEVBQUM7SUFDaEMsSUFBSyxJQUFJQyxJQUFJLEdBQUdBLElBQUksR0FBR0EsSUFBSztRQUMzQixJQUFJO1lBQ0gsTUFBTUMsTUFBTVQsU0FBU1UsSUFBQUEsY0FBSSxFQUFDTCxLQUFLO1lBQy9CLElBQUlJLElBQUlFLElBQUksS0FBSyxvQkFBb0I7Z0JBQ3BDLE9BQU87b0JBQ05DLFNBQVNILElBQUlHLE9BQU8sSUFBSVY7b0JBQ3hCVyxpQkFDQ0osSUFBSUssUUFBUSxFQUFFQyx5QkFBeUJaO2dCQUN6QztZQUNEO1FBQ0QsRUFBRSxPQUFNLENBQUM7UUFDVCxNQUFNYSxTQUFTVixJQUFBQSxpQkFBTyxFQUFDRDtRQUN2QixJQUFJVyxXQUFXWCxLQUFLO1FBQ3BCQSxNQUFNVztJQUNQO0lBRUEsT0FBTztRQUNOSixTQUFTVjtRQUNUVyxpQkFBaUJWO0lBQ2xCO0FBQ0Q7QUFFQSxNQUFNYyxpQkFBaUJiO0FBRWhCLE1BQU1MLGlCQUFpQmtCLGVBQWVMLE9BQU87QUFFN0MsTUFBTWQsMEJBQTBCbUIsZUFBZUosZUFBZSJ9
|
package/es6/src/cli.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import { runInBuilder } from "./runner.js";
|
|
3
|
+
runInBuilder(process.argv.slice(2));
|
|
4
4
|
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvY2xpLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcbmltcG9ydCB7IHJ1bkluQnVpbGRlciB9IGZyb20gXCIuL3J1bm5lci5qc1wiO1xuXG5ydW5JbkJ1aWxkZXIocHJvY2Vzcy5hcmd2LnNsaWNlKDIpKTtcbiJdLCJuYW1lcyI6WyJydW5JbkJ1aWxkZXIiLCJwcm9jZXNzIiwiYXJndiIsInNsaWNlIl0sIm1hcHBpbmdzIjoiO0FBQ0EsU0FBU0EsWUFBWSxRQUFRLGNBQWM7QUFFM0NBLGFBQWFDLFFBQVFDLElBQUksQ0FBQ0MsS0FBSyxDQUFDIn0=
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { basename, resolve } from "node:path";
|
|
2
|
+
/**
|
|
3
|
+
* Host `npm create` argv → directory to mount and argv for the in-image CLI.
|
|
4
|
+
* Positional `webapi my-app` wins over `-d` (npm treats `-d` as its own loglevel).
|
|
5
|
+
*/ export function resolveLaunch(argv, cwd = process.cwd()) {
|
|
6
|
+
if (argv.length === 1 && (argv[0] === "--help" || argv[0] === "-h" || argv[0] === "--version")) {
|
|
7
|
+
return {
|
|
8
|
+
targetDir: cwd,
|
|
9
|
+
containerArgv: argv,
|
|
10
|
+
projectName: basename(cwd)
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
let directoryFlag;
|
|
14
|
+
const withoutD = [];
|
|
15
|
+
for(let i = 0; i < argv.length; i++){
|
|
16
|
+
const arg = argv[i];
|
|
17
|
+
if (arg === "-d") {
|
|
18
|
+
directoryFlag = argv[i + 1];
|
|
19
|
+
i++;
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
if (arg != null) withoutD.push(arg);
|
|
23
|
+
}
|
|
24
|
+
const isAdd = withoutD[0] === "webapi" && withoutD[1] === "add";
|
|
25
|
+
let positional;
|
|
26
|
+
let withoutPositional = withoutD;
|
|
27
|
+
if (!isAdd && withoutD[0] === "webapi" && withoutD[1] != null && !withoutD[1].startsWith("-")) {
|
|
28
|
+
positional = withoutD[1];
|
|
29
|
+
withoutPositional = [
|
|
30
|
+
withoutD[0],
|
|
31
|
+
...withoutD.slice(2)
|
|
32
|
+
];
|
|
33
|
+
}
|
|
34
|
+
const targetDir = resolve(cwd, positional?.trim() || directoryFlag?.trim() || ".");
|
|
35
|
+
return {
|
|
36
|
+
targetDir,
|
|
37
|
+
containerArgv: [
|
|
38
|
+
...withoutPositional,
|
|
39
|
+
"-d",
|
|
40
|
+
"."
|
|
41
|
+
],
|
|
42
|
+
projectName: basename(targetDir)
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvcmVzb2x2ZS1sYXVuY2gudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYmFzZW5hbWUsIHJlc29sdmUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5cbmV4cG9ydCB0eXBlIExhdW5jaFBsYW4gPSB7XG5cdHRhcmdldERpcjogc3RyaW5nO1xuXHRjb250YWluZXJBcmd2OiBzdHJpbmdbXTtcblx0cHJvamVjdE5hbWU6IHN0cmluZztcbn07XG5cbi8qKlxuICogSG9zdCBgbnBtIGNyZWF0ZWAgYXJndiDihpIgZGlyZWN0b3J5IHRvIG1vdW50IGFuZCBhcmd2IGZvciB0aGUgaW4taW1hZ2UgQ0xJLlxuICogUG9zaXRpb25hbCBgd2ViYXBpIG15LWFwcGAgd2lucyBvdmVyIGAtZGAgKG5wbSB0cmVhdHMgYC1kYCBhcyBpdHMgb3duIGxvZ2xldmVsKS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVMYXVuY2goYXJndjogc3RyaW5nW10sIGN3ZCA9IHByb2Nlc3MuY3dkKCkpOiBMYXVuY2hQbGFuIHtcblx0aWYgKFxuXHRcdGFyZ3YubGVuZ3RoID09PSAxICYmXG5cdFx0KGFyZ3ZbMF0gPT09IFwiLS1oZWxwXCIgfHwgYXJndlswXSA9PT0gXCItaFwiIHx8IGFyZ3ZbMF0gPT09IFwiLS12ZXJzaW9uXCIpXG5cdCkge1xuXHRcdHJldHVybiB7XG5cdFx0XHR0YXJnZXREaXI6IGN3ZCxcblx0XHRcdGNvbnRhaW5lckFyZ3Y6IGFyZ3YsXG5cdFx0XHRwcm9qZWN0TmFtZTogYmFzZW5hbWUoY3dkKSxcblx0XHR9O1xuXHR9XG5cdGxldCBkaXJlY3RvcnlGbGFnOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cdGNvbnN0IHdpdGhvdXREOiBzdHJpbmdbXSA9IFtdO1xuXHRmb3IgKGxldCBpID0gMDsgaSA8IGFyZ3YubGVuZ3RoOyBpKyspIHtcblx0XHRjb25zdCBhcmcgPSBhcmd2W2ldO1xuXHRcdGlmIChhcmcgPT09IFwiLWRcIikge1xuXHRcdFx0ZGlyZWN0b3J5RmxhZyA9IGFyZ3ZbaSArIDFdO1xuXHRcdFx0aSsrO1xuXHRcdFx0Y29udGludWU7XG5cdFx0fVxuXHRcdGlmIChhcmcgIT0gbnVsbCkgd2l0aG91dEQucHVzaChhcmcpO1xuXHR9XG5cblx0Y29uc3QgaXNBZGQgPSB3aXRob3V0RFswXSA9PT0gXCJ3ZWJhcGlcIiAmJiB3aXRob3V0RFsxXSA9PT0gXCJhZGRcIjtcblx0bGV0IHBvc2l0aW9uYWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcblx0bGV0IHdpdGhvdXRQb3NpdGlvbmFsID0gd2l0aG91dEQ7XG5cdGlmIChcblx0XHQhaXNBZGQgJiZcblx0XHR3aXRob3V0RFswXSA9PT0gXCJ3ZWJhcGlcIiAmJlxuXHRcdHdpdGhvdXREWzFdICE9IG51bGwgJiZcblx0XHQhd2l0aG91dERbMV0uc3RhcnRzV2l0aChcIi1cIilcblx0KSB7XG5cdFx0cG9zaXRpb25hbCA9IHdpdGhvdXREWzFdO1xuXHRcdHdpdGhvdXRQb3NpdGlvbmFsID0gW3dpdGhvdXREWzBdLCAuLi53aXRob3V0RC5zbGljZSgyKV07XG5cdH1cblxuXHRjb25zdCB0YXJnZXREaXIgPSByZXNvbHZlKGN3ZCwgcG9zaXRpb25hbD8udHJpbSgpIHx8IGRpcmVjdG9yeUZsYWc/LnRyaW0oKSB8fCBcIi5cIik7XG5cdHJldHVybiB7XG5cdFx0dGFyZ2V0RGlyLFxuXHRcdGNvbnRhaW5lckFyZ3Y6IFsuLi53aXRob3V0UG9zaXRpb25hbCwgXCItZFwiLCBcIi5cIl0sXG5cdFx0cHJvamVjdE5hbWU6IGJhc2VuYW1lKHRhcmdldERpciksXG5cdH07XG59XG4iXSwibmFtZXMiOlsiYmFzZW5hbWUiLCJyZXNvbHZlIiwicmVzb2x2ZUxhdW5jaCIsImFyZ3YiLCJjd2QiLCJwcm9jZXNzIiwibGVuZ3RoIiwidGFyZ2V0RGlyIiwiY29udGFpbmVyQXJndiIsInByb2plY3ROYW1lIiwiZGlyZWN0b3J5RmxhZyIsIndpdGhvdXREIiwiaSIsImFyZyIsInB1c2giLCJpc0FkZCIsInBvc2l0aW9uYWwiLCJ3aXRob3V0UG9zaXRpb25hbCIsInN0YXJ0c1dpdGgiLCJzbGljZSIsInRyaW0iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLFFBQVEsRUFBRUMsT0FBTyxRQUFRLFlBQVk7QUFROUM7OztDQUdDLEdBQ0QsT0FBTyxTQUFTQyxjQUFjQyxJQUFjLEVBQUVDLE1BQU1DLFFBQVFELEdBQUcsRUFBRTtJQUNoRSxJQUNDRCxLQUFLRyxNQUFNLEtBQUssS0FDZkgsQ0FBQUEsSUFBSSxDQUFDLEVBQUUsS0FBSyxZQUFZQSxJQUFJLENBQUMsRUFBRSxLQUFLLFFBQVFBLElBQUksQ0FBQyxFQUFFLEtBQUssV0FBVSxHQUNsRTtRQUNELE9BQU87WUFDTkksV0FBV0g7WUFDWEksZUFBZUw7WUFDZk0sYUFBYVQsU0FBU0k7UUFDdkI7SUFDRDtJQUNBLElBQUlNO0lBQ0osTUFBTUMsV0FBcUIsRUFBRTtJQUM3QixJQUFLLElBQUlDLElBQUksR0FBR0EsSUFBSVQsS0FBS0csTUFBTSxFQUFFTSxJQUFLO1FBQ3JDLE1BQU1DLE1BQU1WLElBQUksQ0FBQ1MsRUFBRTtRQUNuQixJQUFJQyxRQUFRLE1BQU07WUFDakJILGdCQUFnQlAsSUFBSSxDQUFDUyxJQUFJLEVBQUU7WUFDM0JBO1lBQ0E7UUFDRDtRQUNBLElBQUlDLE9BQU8sTUFBTUYsU0FBU0csSUFBSSxDQUFDRDtJQUNoQztJQUVBLE1BQU1FLFFBQVFKLFFBQVEsQ0FBQyxFQUFFLEtBQUssWUFBWUEsUUFBUSxDQUFDLEVBQUUsS0FBSztJQUMxRCxJQUFJSztJQUNKLElBQUlDLG9CQUFvQk47SUFDeEIsSUFDQyxDQUFDSSxTQUNESixRQUFRLENBQUMsRUFBRSxLQUFLLFlBQ2hCQSxRQUFRLENBQUMsRUFBRSxJQUFJLFFBQ2YsQ0FBQ0EsUUFBUSxDQUFDLEVBQUUsQ0FBQ08sVUFBVSxDQUFDLE1BQ3ZCO1FBQ0RGLGFBQWFMLFFBQVEsQ0FBQyxFQUFFO1FBQ3hCTSxvQkFBb0I7WUFBQ04sUUFBUSxDQUFDLEVBQUU7ZUFBS0EsU0FBU1EsS0FBSyxDQUFDO1NBQUc7SUFDeEQ7SUFFQSxNQUFNWixZQUFZTixRQUFRRyxLQUFLWSxZQUFZSSxVQUFVVixlQUFlVSxVQUFVO0lBQzlFLE9BQU87UUFDTmI7UUFDQUMsZUFBZTtlQUFJUztZQUFtQjtZQUFNO1NBQUk7UUFDaERSLGFBQWFULFNBQVNPO0lBQ3ZCO0FBQ0QifQ==
|
package/es6/src/runner.js
CHANGED
|
@@ -1,33 +1,21 @@
|
|
|
1
1
|
import { execFileSync, spawnSync } from "node:child_process";
|
|
2
2
|
import { existsSync, mkdirSync } from "node:fs";
|
|
3
3
|
import { homedir } from "node:os";
|
|
4
|
-
import {
|
|
4
|
+
import { resolve } from "node:path";
|
|
5
|
+
import { resolveLaunch } from "./resolve-launch.js";
|
|
5
6
|
import { CREATE_IMAGE_REPOSITORY, CREATE_VERSION } from "./version.js";
|
|
6
7
|
const BUILDER_IMAGE = `${CREATE_IMAGE_REPOSITORY}:${CREATE_VERSION}`;
|
|
7
8
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
* the scaffolded files are written back to the host filesystem.
|
|
13
|
-
*
|
|
14
|
-
* The container runs as the host uid/gid whenever possible so scaffolded files
|
|
15
|
-
* are never root-owned (post-hoc `chown` is unreliable across Docker setups).
|
|
16
|
-
*
|
|
17
|
-
* Host `~/.config/auth0` is mounted when present so the Auth0 CLI can reuse
|
|
18
|
-
* credentials (required for Postman SPA / auth0ClientId).
|
|
19
|
-
*/ export function runInBuilder(opts) {
|
|
20
|
-
const targetDir = resolve(opts.d ?? ".");
|
|
21
|
-
const projectName = basename(targetDir);
|
|
9
|
+
* Pull/run the Decohere CLI image. Host `@decohere/create` does not load the
|
|
10
|
+
* `@decohere/cli` dependency tree — that lives in the image only.
|
|
11
|
+
*/ export function runInBuilder(argv) {
|
|
12
|
+
const { targetDir, containerArgv, projectName } = resolveLaunch(argv);
|
|
22
13
|
mkdirSync(targetDir, {
|
|
23
14
|
recursive: true
|
|
24
15
|
});
|
|
25
|
-
// Host-owned so initializeCommand can always write here even if something
|
|
26
|
-
// else in .devcontainer ends up oddly owned.
|
|
27
16
|
mkdirSync(resolve(targetDir, ".devcontainer", "npm-auth"), {
|
|
28
17
|
recursive: true
|
|
29
18
|
});
|
|
30
|
-
// Ensure Docker is available.
|
|
31
19
|
try {
|
|
32
20
|
execFileSync("docker", [
|
|
33
21
|
"info"
|
|
@@ -41,12 +29,10 @@ const BUILDER_IMAGE = `${CREATE_IMAGE_REPOSITORY}:${CREATE_VERSION}`;
|
|
|
41
29
|
const hostUid = process.getuid?.();
|
|
42
30
|
const hostGid = process.getgid?.() ?? hostUid;
|
|
43
31
|
const runAsHostUser = hostUid != null && hostGid != null;
|
|
44
|
-
// Anonymous root-owned volumes are not writable when we drop privileges.
|
|
45
32
|
const npmCacheDir = resolve(homedir(), ".cache/decohere-create/npm");
|
|
46
33
|
mkdirSync(npmCacheDir, {
|
|
47
34
|
recursive: true
|
|
48
35
|
});
|
|
49
|
-
// Isolated HOME so --user host-uid can write without a matching /etc/passwd entry.
|
|
50
36
|
const builderHome = "/tmp/decohere-create-home";
|
|
51
37
|
const volumes = [
|
|
52
38
|
"-v",
|
|
@@ -57,7 +43,6 @@ const BUILDER_IMAGE = `${CREATE_IMAGE_REPOSITORY}:${CREATE_VERSION}`;
|
|
|
57
43
|
const envArgs = [
|
|
58
44
|
"-e",
|
|
59
45
|
"DECOHERE_BUILDER=1",
|
|
60
|
-
// Host dir basename — container cwd is /workspace so basename would be wrong.
|
|
61
46
|
"-e",
|
|
62
47
|
`DECOHERE_PROJECT_NAME=${projectName}`,
|
|
63
48
|
"-e",
|
|
@@ -67,14 +52,11 @@ const BUILDER_IMAGE = `${CREATE_IMAGE_REPOSITORY}:${CREATE_VERSION}`;
|
|
|
67
52
|
"-e",
|
|
68
53
|
`HOME=${builderHome}`
|
|
69
54
|
];
|
|
70
|
-
// Mount host .npmrc where the non-root process can read it.
|
|
71
55
|
const npmrcPath = resolve(homedir(), ".npmrc");
|
|
72
56
|
if (existsSync(npmrcPath)) {
|
|
73
57
|
volumes.push("-v", `${npmrcPath}:/tmp/host-npmrc:ro`);
|
|
74
58
|
envArgs.push("-e", "NPM_CONFIG_USERCONFIG=/tmp/host-npmrc");
|
|
75
59
|
}
|
|
76
|
-
// Auth0 CLI reads credentials from $HOME/.config/auth0 — without this mount,
|
|
77
|
-
// ensureSpaApp fails and Postman gets an empty auth0ClientId.
|
|
78
60
|
const auth0ConfigDir = resolve(homedir(), ".config/auth0");
|
|
79
61
|
if (existsSync(auth0ConfigDir)) {
|
|
80
62
|
volumes.push("-v", `${auth0ConfigDir}:${builderHome}/.config/auth0`);
|
|
@@ -83,41 +65,10 @@ const BUILDER_IMAGE = `${CREATE_IMAGE_REPOSITORY}:${CREATE_VERSION}`;
|
|
|
83
65
|
if (runAsHostUser) {
|
|
84
66
|
userArgs.push("--user", `${hostUid}:${hostGid}`);
|
|
85
67
|
} else if (hostUid != null) {
|
|
86
|
-
// Fallback for environments without getgid: keep legacy chown path.
|
|
87
68
|
envArgs.push("-e", `HOST_UID=${hostUid}`);
|
|
88
69
|
if (hostGid != null) envArgs.push("-e", `HOST_GID=${hostGid}`);
|
|
89
70
|
}
|
|
90
|
-
const commandArgs = opts.add ? [
|
|
91
|
-
"webapi",
|
|
92
|
-
"add",
|
|
93
|
-
opts.names?.[0] ?? "",
|
|
94
|
-
"-d",
|
|
95
|
-
"."
|
|
96
|
-
] : [
|
|
97
|
-
"webapi",
|
|
98
|
-
"-d",
|
|
99
|
-
"."
|
|
100
|
-
];
|
|
101
|
-
if (!opts.add) {
|
|
102
|
-
for (const name of opts.names ?? []){
|
|
103
|
-
commandArgs.push("--name", name);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
if (opts.databaseProvider != null) {
|
|
107
|
-
commandArgs.push("--database", opts.databaseProvider);
|
|
108
|
-
}
|
|
109
|
-
if (opts.authProvider != null) {
|
|
110
|
-
commandArgs.push("--auth", opts.authProvider);
|
|
111
|
-
}
|
|
112
|
-
if (opts.postmanProvider != null) {
|
|
113
|
-
commandArgs.push("--postman", opts.postmanProvider);
|
|
114
|
-
}
|
|
115
|
-
if (opts.installDependencies != null) {
|
|
116
|
-
commandArgs.push("--install", opts.installDependencies);
|
|
117
|
-
}
|
|
118
71
|
console.log(" Running scaffolding in a sandboxed container...\n");
|
|
119
|
-
// Only allocate a TTY when stdin is itself a TTY — avoids a hung process
|
|
120
|
-
// in non-interactive environments (pipes, CI, scripts).
|
|
121
72
|
const ttyFlags = process.stdin.isTTY ? [
|
|
122
73
|
"-it"
|
|
123
74
|
] : [
|
|
@@ -133,7 +84,7 @@ const BUILDER_IMAGE = `${CREATE_IMAGE_REPOSITORY}:${CREATE_VERSION}`;
|
|
|
133
84
|
"-w",
|
|
134
85
|
"/workspace",
|
|
135
86
|
BUILDER_IMAGE,
|
|
136
|
-
...
|
|
87
|
+
...containerArgv
|
|
137
88
|
], {
|
|
138
89
|
stdio: "inherit"
|
|
139
90
|
});
|
|
@@ -143,4 +94,4 @@ const BUILDER_IMAGE = `${CREATE_IMAGE_REPOSITORY}:${CREATE_VERSION}`;
|
|
|
143
94
|
process.exit(result.status ?? 0);
|
|
144
95
|
}
|
|
145
96
|
|
|
146
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvcnVubmVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4ZWNGaWxlU3luYywgc3Bhd25TeW5jIH0gZnJvbSBcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiO1xuaW1wb3J0IHsgZXhpc3RzU3luYywgbWtkaXJTeW5jIH0gZnJvbSBcIm5vZGU6ZnNcIjtcbmltcG9ydCB7IGhvbWVkaXIgfSBmcm9tIFwibm9kZTpvc1wiO1xuaW1wb3J0IHsgYmFzZW5hbWUsIHJlc29sdmUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgeyBDUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSwgQ1JFQVRFX1ZFUlNJT04gfSBmcm9tIFwiLi92ZXJzaW9uLmpzXCI7XG5pbXBvcnQgdHlwZSB7IEFwaU9wdGlvbnMgfSBmcm9tIFwiLi93ZWJhcGkvY3JlYXRlLWFwaS5qc1wiO1xuXG5jb25zdCBCVUlMREVSX0lNQUdFID0gYCR7Q1JFQVRFX0lNQUdFX1JFUE9TSVRPUll9OiR7Q1JFQVRFX1ZFUlNJT059YDtcblxuLyoqXG4gKiBSdW4gdGhlIHNjYWZmb2xkIGluc2lkZSBhIHByZS1idWlsdCBEb2NrZXIgYnVpbGRlciBpbWFnZS5cbiAqXG4gKiBDYWxsZWQgd2hlbiBgREVDT0hFUkVfQlVJTERFUmAgaXMgbm90IHNldCDigJQgaS5lLiB0aGUgQ0xJIGlzIHJ1bm5pbmcgb24gdGhlXG4gKiBob3N0LCBvdXRzaWRlIHRoZSBjb250YWluZXIuIE1vdW50cyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBhcyBgL3dvcmtzcGFjZWAgc29cbiAqIHRoZSBzY2FmZm9sZGVkIGZpbGVzIGFyZSB3cml0dGVuIGJhY2sgdG8gdGhlIGhvc3QgZmlsZXN5c3RlbS5cbiAqXG4gKiBUaGUgY29udGFpbmVyIHJ1bnMgYXMgdGhlIGhvc3QgdWlkL2dpZCB3aGVuZXZlciBwb3NzaWJsZSBzbyBzY2FmZm9sZGVkIGZpbGVzXG4gKiBhcmUgbmV2ZXIgcm9vdC1vd25lZCAocG9zdC1ob2MgYGNob3duYCBpcyB1bnJlbGlhYmxlIGFjcm9zcyBEb2NrZXIgc2V0dXBzKS5cbiAqXG4gKiBIb3N0IGB+Ly5jb25maWcvYXV0aDBgIGlzIG1vdW50ZWQgd2hlbiBwcmVzZW50IHNvIHRoZSBBdXRoMCBDTEkgY2FuIHJldXNlXG4gKiBjcmVkZW50aWFscyAocmVxdWlyZWQgZm9yIFBvc3RtYW4gU1BBIC8gYXV0aDBDbGllbnRJZCkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBydW5JbkJ1aWxkZXIob3B0czogQXBpT3B0aW9ucyk6IG5ldmVyIHtcblx0Y29uc3QgdGFyZ2V0RGlyID0gcmVzb2x2ZShvcHRzLmQgPz8gXCIuXCIpO1xuXHRjb25zdCBwcm9qZWN0TmFtZSA9IGJhc2VuYW1lKHRhcmdldERpcik7XG5cdG1rZGlyU3luYyh0YXJnZXREaXIsIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuXHQvLyBIb3N0LW93bmVkIHNvIGluaXRpYWxpemVDb21tYW5kIGNhbiBhbHdheXMgd3JpdGUgaGVyZSBldmVuIGlmIHNvbWV0aGluZ1xuXHQvLyBlbHNlIGluIC5kZXZjb250YWluZXIgZW5kcyB1cCBvZGRseSBvd25lZC5cblx0bWtkaXJTeW5jKHJlc29sdmUodGFyZ2V0RGlyLCBcIi5kZXZjb250YWluZXJcIiwgXCJucG0tYXV0aFwiKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG5cblx0Ly8gRW5zdXJlIERvY2tlciBpcyBhdmFpbGFibGUuXG5cdHRyeSB7XG5cdFx0ZXhlY0ZpbGVTeW5jKFwiZG9ja2VyXCIsIFtcImluZm9cIl0sIHsgc3RkaW86IFwicGlwZVwiIH0pO1xuXHR9IGNhdGNoIHtcblx0XHRjb25zb2xlLmVycm9yKFxuXHRcdFx0XCJcXG4gIERvY2tlciBpcyByZXF1aXJlZCB0byBzY2FmZm9sZCBhIERlY29oZXJlIHByb2plY3QuXFxuXCIgK1xuXHRcdFx0XHRcIiAgSW5zdGFsbCBEb2NrZXIgRGVza3RvcDogaHR0cHM6Ly93d3cuZG9ja2VyLmNvbS9wcm9kdWN0cy9kb2NrZXItZGVza3RvcFxcblwiLFxuXHRcdCk7XG5cdFx0cHJvY2Vzcy5leGl0KDEpO1xuXHR9XG5cblx0Y29uc3QgaG9zdFVpZCA9IHByb2Nlc3MuZ2V0dWlkPy4oKTtcblx0Y29uc3QgaG9zdEdpZCA9IHByb2Nlc3MuZ2V0Z2lkPy4oKSA/PyBob3N0VWlkO1xuXHRjb25zdCBydW5Bc0hvc3RVc2VyID0gaG9zdFVpZCAhPSBudWxsICYmIGhvc3RHaWQgIT0gbnVsbDtcblxuXHQvLyBBbm9ueW1vdXMgcm9vdC1vd25lZCB2b2x1bWVzIGFyZSBub3Qgd3JpdGFibGUgd2hlbiB3ZSBkcm9wIHByaXZpbGVnZXMuXG5cdGNvbnN0IG5wbUNhY2hlRGlyID0gcmVzb2x2ZShob21lZGlyKCksIFwiLmNhY2hlL2RlY29oZXJlLWNyZWF0ZS9ucG1cIik7XG5cdG1rZGlyU3luYyhucG1DYWNoZURpciwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG5cblx0Ly8gSXNvbGF0ZWQgSE9NRSBzbyAtLXVzZXIgaG9zdC11aWQgY2FuIHdyaXRlIHdpdGhvdXQgYSBtYXRjaGluZyAvZXRjL3Bhc3N3ZCBlbnRyeS5cblx0Y29uc3QgYnVpbGRlckhvbWUgPSBcIi90bXAvZGVjb2hlcmUtY3JlYXRlLWhvbWVcIjtcblxuXHRjb25zdCB2b2x1bWVzOiBzdHJpbmdbXSA9IFtcblx0XHRcIi12XCIsXG5cdFx0YCR7dGFyZ2V0RGlyfTovd29ya3NwYWNlYCxcblx0XHRcIi12XCIsXG5cdFx0YCR7bnBtQ2FjaGVEaXJ9Oi9ucG0tY2FjaGVgLFxuXHRdO1xuXG5cdGNvbnN0IGVudkFyZ3M6IHN0cmluZ1tdID0gW1xuXHRcdFwiLWVcIixcblx0XHRcIkRFQ09IRVJFX0JVSUxERVI9MVwiLFxuXHRcdC8vIEhvc3QgZGlyIGJhc2VuYW1lIOKAlCBjb250YWluZXIgY3dkIGlzIC93b3Jrc3BhY2Ugc28gYmFzZW5hbWUgd291bGQgYmUgd3JvbmcuXG5cdFx0XCItZVwiLFxuXHRcdGBERUNPSEVSRV9QUk9KRUNUX05BTUU9JHtwcm9qZWN0TmFtZX1gLFxuXHRcdFwiLWVcIixcblx0XHRcIk5QTV9DT05GSUdfQ0FDSEU9L25wbS1jYWNoZVwiLFxuXHRcdFwiLWVcIixcblx0XHRcIk5QTV9DT05GSUdfUFJFRkVSX09GRkxJTkU9dHJ1ZVwiLFxuXHRcdFwiLWVcIixcblx0XHRgSE9NRT0ke2J1aWxkZXJIb21lfWAsXG5cdF07XG5cblx0Ly8gTW91bnQgaG9zdCAubnBtcmMgd2hlcmUgdGhlIG5vbi1yb290IHByb2Nlc3MgY2FuIHJlYWQgaXQuXG5cdGNvbnN0IG5wbXJjUGF0aCA9IHJlc29sdmUoaG9tZWRpcigpLCBcIi5ucG1yY1wiKTtcblx0aWYgKGV4aXN0c1N5bmMobnBtcmNQYXRoKSkge1xuXHRcdHZvbHVtZXMucHVzaChcIi12XCIsIGAke25wbXJjUGF0aH06L3RtcC9ob3N0LW5wbXJjOnJvYCk7XG5cdFx0ZW52QXJncy5wdXNoKFwiLWVcIiwgXCJOUE1fQ09ORklHX1VTRVJDT05GSUc9L3RtcC9ob3N0LW5wbXJjXCIpO1xuXHR9XG5cblx0Ly8gQXV0aDAgQ0xJIHJlYWRzIGNyZWRlbnRpYWxzIGZyb20gJEhPTUUvLmNvbmZpZy9hdXRoMCDigJQgd2l0aG91dCB0aGlzIG1vdW50LFxuXHQvLyBlbnN1cmVTcGFBcHAgZmFpbHMgYW5kIFBvc3RtYW4gZ2V0cyBhbiBlbXB0eSBhdXRoMENsaWVudElkLlxuXHRjb25zdCBhdXRoMENvbmZpZ0RpciA9IHJlc29sdmUoaG9tZWRpcigpLCBcIi5jb25maWcvYXV0aDBcIik7XG5cdGlmIChleGlzdHNTeW5jKGF1dGgwQ29uZmlnRGlyKSkge1xuXHRcdHZvbHVtZXMucHVzaChcIi12XCIsIGAke2F1dGgwQ29uZmlnRGlyfToke2J1aWxkZXJIb21lfS8uY29uZmlnL2F1dGgwYCk7XG5cdH1cblxuXHRjb25zdCB1c2VyQXJnczogc3RyaW5nW10gPSBbXTtcblx0aWYgKHJ1bkFzSG9zdFVzZXIpIHtcblx0XHR1c2VyQXJncy5wdXNoKFwiLS11c2VyXCIsIGAke2hvc3RVaWR9OiR7aG9zdEdpZH1gKTtcblx0fSBlbHNlIGlmIChob3N0VWlkICE9IG51bGwpIHtcblx0XHQvLyBGYWxsYmFjayBmb3IgZW52aXJvbm1lbnRzIHdpdGhvdXQgZ2V0Z2lkOiBrZWVwIGxlZ2FjeSBjaG93biBwYXRoLlxuXHRcdGVudkFyZ3MucHVzaChcIi1lXCIsIGBIT1NUX1VJRD0ke2hvc3RVaWR9YCk7XG5cdFx0aWYgKGhvc3RHaWQgIT0gbnVsbCkgZW52QXJncy5wdXNoKFwiLWVcIiwgYEhPU1RfR0lEPSR7aG9zdEdpZH1gKTtcblx0fVxuXG5cdGNvbnN0IGNvbW1hbmRBcmdzOiBzdHJpbmdbXSA9IG9wdHMuYWRkXG5cdFx0PyBbXCJ3ZWJhcGlcIiwgXCJhZGRcIiwgb3B0cy5uYW1lcz8uWzBdID8/IFwiXCIsIFwiLWRcIiwgXCIuXCJdXG5cdFx0OiBbXCJ3ZWJhcGlcIiwgXCItZFwiLCBcIi5cIl07XG5cdGlmICghb3B0cy5hZGQpIHtcblx0XHRmb3IgKGNvbnN0IG5hbWUgb2Ygb3B0cy5uYW1lcyA/PyBbXSkge1xuXHRcdFx0Y29tbWFuZEFyZ3MucHVzaChcIi0tbmFtZVwiLCBuYW1lKTtcblx0XHR9XG5cdH1cblx0aWYgKG9wdHMuZGF0YWJhc2VQcm92aWRlciAhPSBudWxsKSB7XG5cdFx0Y29tbWFuZEFyZ3MucHVzaChcIi0tZGF0YWJhc2VcIiwgb3B0cy5kYXRhYmFzZVByb3ZpZGVyKTtcblx0fVxuXHRpZiAob3B0cy5hdXRoUHJvdmlkZXIgIT0gbnVsbCkge1xuXHRcdGNvbW1hbmRBcmdzLnB1c2goXCItLWF1dGhcIiwgb3B0cy5hdXRoUHJvdmlkZXIpO1xuXHR9XG5cdGlmIChvcHRzLnBvc3RtYW5Qcm92aWRlciAhPSBudWxsKSB7XG5cdFx0Y29tbWFuZEFyZ3MucHVzaChcIi0tcG9zdG1hblwiLCBvcHRzLnBvc3RtYW5Qcm92aWRlcik7XG5cdH1cblx0aWYgKG9wdHMuaW5zdGFsbERlcGVuZGVuY2llcyAhPSBudWxsKSB7XG5cdFx0Y29tbWFuZEFyZ3MucHVzaChcIi0taW5zdGFsbFwiLCBvcHRzLmluc3RhbGxEZXBlbmRlbmNpZXMpO1xuXHR9XG5cblx0Y29uc29sZS5sb2coXCIgIFJ1bm5pbmcgc2NhZmZvbGRpbmcgaW4gYSBzYW5kYm94ZWQgY29udGFpbmVyLi4uXFxuXCIpO1xuXG5cdC8vIE9ubHkgYWxsb2NhdGUgYSBUVFkgd2hlbiBzdGRpbiBpcyBpdHNlbGYgYSBUVFkg4oCUIGF2b2lkcyBhIGh1bmcgcHJvY2Vzc1xuXHQvLyBpbiBub24taW50ZXJhY3RpdmUgZW52aXJvbm1lbnRzIChwaXBlcywgQ0ksIHNjcmlwdHMpLlxuXHRjb25zdCB0dHlGbGFncyA9IHByb2Nlc3Muc3RkaW4uaXNUVFkgPyBbXCItaXRcIl0gOiBbXCItaVwiXTtcblxuXHRjb25zdCByZXN1bHQgPSBzcGF3blN5bmMoXG5cdFx0XCJkb2NrZXJcIixcblx0XHRbXG5cdFx0XHRcInJ1blwiLFxuXHRcdFx0XCItLXJtXCIsXG5cdFx0XHQuLi50dHlGbGFncyxcblx0XHRcdC4uLnVzZXJBcmdzLFxuXHRcdFx0Li4udm9sdW1lcyxcblx0XHRcdC4uLmVudkFyZ3MsXG5cdFx0XHRcIi13XCIsXG5cdFx0XHRcIi93b3Jrc3BhY2VcIixcblx0XHRcdEJVSUxERVJfSU1BR0UsXG5cdFx0XHQuLi5jb21tYW5kQXJncyxcblx0XHRdLFxuXHRcdHsgc3RkaW86IFwiaW5oZXJpdFwiIH0sXG5cdCk7XG5cblx0aWYgKHJlc3VsdC5zdGF0dXMgPT09IDApIHtcblx0XHRjb25zb2xlLmxvZyhgXFxuICBTY2FmZm9sZCBjb21wbGV0ZSFcXG5cXG4gIE9wZW4geW91ciBwcm9qZWN0OlxcblxcbiAgICBjb2RlICR7dGFyZ2V0RGlyfVxcbmApO1xuXHR9XG5cblx0cHJvY2Vzcy5leGl0KHJlc3VsdC5zdGF0dXMgPz8gMCk7XG59XG4iXSwibmFtZXMiOlsiZXhlY0ZpbGVTeW5jIiwic3Bhd25TeW5jIiwiZXhpc3RzU3luYyIsIm1rZGlyU3luYyIsImhvbWVkaXIiLCJiYXNlbmFtZSIsInJlc29sdmUiLCJDUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSIsIkNSRUFURV9WRVJTSU9OIiwiQlVJTERFUl9JTUFHRSIsInJ1bkluQnVpbGRlciIsIm9wdHMiLCJ0YXJnZXREaXIiLCJkIiwicHJvamVjdE5hbWUiLCJyZWN1cnNpdmUiLCJzdGRpbyIsImNvbnNvbGUiLCJlcnJvciIsInByb2Nlc3MiLCJleGl0IiwiaG9zdFVpZCIsImdldHVpZCIsImhvc3RHaWQiLCJnZXRnaWQiLCJydW5Bc0hvc3RVc2VyIiwibnBtQ2FjaGVEaXIiLCJidWlsZGVySG9tZSIsInZvbHVtZXMiLCJlbnZBcmdzIiwibnBtcmNQYXRoIiwicHVzaCIsImF1dGgwQ29uZmlnRGlyIiwidXNlckFyZ3MiLCJjb21tYW5kQXJncyIsImFkZCIsIm5hbWVzIiwibmFtZSIsImRhdGFiYXNlUHJvdmlkZXIiLCJhdXRoUHJvdmlkZXIiLCJwb3N0bWFuUHJvdmlkZXIiLCJpbnN0YWxsRGVwZW5kZW5jaWVzIiwibG9nIiwidHR5RmxhZ3MiLCJzdGRpbiIsImlzVFRZIiwicmVzdWx0Iiwic3RhdHVzIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxZQUFZLEVBQUVDLFNBQVMsUUFBUSxxQkFBcUI7QUFDN0QsU0FBU0MsVUFBVSxFQUFFQyxTQUFTLFFBQVEsVUFBVTtBQUNoRCxTQUFTQyxPQUFPLFFBQVEsVUFBVTtBQUNsQyxTQUFTQyxRQUFRLEVBQUVDLE9BQU8sUUFBUSxZQUFZO0FBQzlDLFNBQVNDLHVCQUF1QixFQUFFQyxjQUFjLFFBQVEsZUFBZTtBQUd2RSxNQUFNQyxnQkFBZ0IsR0FBR0Ysd0JBQXdCLENBQUMsRUFBRUMsZ0JBQWdCO0FBRXBFOzs7Ozs7Ozs7Ozs7Q0FZQyxHQUNELE9BQU8sU0FBU0UsYUFBYUMsSUFBZ0I7SUFDNUMsTUFBTUMsWUFBWU4sUUFBUUssS0FBS0UsQ0FBQyxJQUFJO0lBQ3BDLE1BQU1DLGNBQWNULFNBQVNPO0lBQzdCVCxVQUFVUyxXQUFXO1FBQUVHLFdBQVc7SUFBSztJQUN2QywwRUFBMEU7SUFDMUUsNkNBQTZDO0lBQzdDWixVQUFVRyxR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
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvcnVubmVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4ZWNGaWxlU3luYywgc3Bhd25TeW5jIH0gZnJvbSBcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiO1xuaW1wb3J0IHsgZXhpc3RzU3luYywgbWtkaXJTeW5jIH0gZnJvbSBcIm5vZGU6ZnNcIjtcbmltcG9ydCB7IGhvbWVkaXIgfSBmcm9tIFwibm9kZTpvc1wiO1xuaW1wb3J0IHsgcmVzb2x2ZSB9IGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB7IHJlc29sdmVMYXVuY2ggfSBmcm9tIFwiLi9yZXNvbHZlLWxhdW5jaC5qc1wiO1xuaW1wb3J0IHsgQ1JFQVRFX0lNQUdFX1JFUE9TSVRPUlksIENSRUFURV9WRVJTSU9OIH0gZnJvbSBcIi4vdmVyc2lvbi5qc1wiO1xuXG5jb25zdCBCVUlMREVSX0lNQUdFID0gYCR7Q1JFQVRFX0lNQUdFX1JFUE9TSVRPUll9OiR7Q1JFQVRFX1ZFUlNJT059YDtcblxuLyoqXG4gKiBQdWxsL3J1biB0aGUgRGVjb2hlcmUgQ0xJIGltYWdlLiBIb3N0IGBAZGVjb2hlcmUvY3JlYXRlYCBkb2VzIG5vdCBsb2FkIHRoZVxuICogYEBkZWNvaGVyZS9jbGlgIGRlcGVuZGVuY3kgdHJlZSDigJQgdGhhdCBsaXZlcyBpbiB0aGUgaW1hZ2Ugb25seS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJ1bkluQnVpbGRlcihhcmd2OiBzdHJpbmdbXSk6IG5ldmVyIHtcblx0Y29uc3QgeyB0YXJnZXREaXIsIGNvbnRhaW5lckFyZ3YsIHByb2plY3ROYW1lIH0gPSByZXNvbHZlTGF1bmNoKGFyZ3YpO1xuXHRta2RpclN5bmModGFyZ2V0RGlyLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcblx0bWtkaXJTeW5jKHJlc29sdmUodGFyZ2V0RGlyLCBcIi5kZXZjb250YWluZXJcIiwgXCJucG0tYXV0aFwiKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG5cblx0dHJ5IHtcblx0XHRleGVjRmlsZVN5bmMoXCJkb2NrZXJcIiwgW1wiaW5mb1wiXSwgeyBzdGRpbzogXCJwaXBlXCIgfSk7XG5cdH0gY2F0Y2gge1xuXHRcdGNvbnNvbGUuZXJyb3IoXG5cdFx0XHRcIlxcbiAgRG9ja2VyIGlzIHJlcXVpcmVkIHRvIHNjYWZmb2xkIGEgRGVjb2hlcmUgcHJvamVjdC5cXG5cIiArXG5cdFx0XHRcdFwiICBJbnN0YWxsIERvY2tlciBEZXNrdG9wOiBodHRwczovL3d3dy5kb2NrZXIuY29tL3Byb2R1Y3RzL2RvY2tlci1kZXNrdG9wXFxuXCIsXG5cdFx0KTtcblx0XHRwcm9jZXNzLmV4aXQoMSk7XG5cdH1cblxuXHRjb25zdCBob3N0VWlkID0gcHJvY2Vzcy5nZXR1aWQ/LigpO1xuXHRjb25zdCBob3N0R2lkID0gcHJvY2Vzcy5nZXRnaWQ/LigpID8/IGhvc3RVaWQ7XG5cdGNvbnN0IHJ1bkFzSG9zdFVzZXIgPSBob3N0VWlkICE9IG51bGwgJiYgaG9zdEdpZCAhPSBudWxsO1xuXG5cdGNvbnN0IG5wbUNhY2hlRGlyID0gcmVzb2x2ZShob21lZGlyKCksIFwiLmNhY2hlL2RlY29oZXJlLWNyZWF0ZS9ucG1cIik7XG5cdG1rZGlyU3luYyhucG1DYWNoZURpciwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG5cblx0Y29uc3QgYnVpbGRlckhvbWUgPSBcIi90bXAvZGVjb2hlcmUtY3JlYXRlLWhvbWVcIjtcblxuXHRjb25zdCB2b2x1bWVzOiBzdHJpbmdbXSA9IFtcblx0XHRcIi12XCIsXG5cdFx0YCR7dGFyZ2V0RGlyfTovd29ya3NwYWNlYCxcblx0XHRcIi12XCIsXG5cdFx0YCR7bnBtQ2FjaGVEaXJ9Oi9ucG0tY2FjaGVgLFxuXHRdO1xuXG5cdGNvbnN0IGVudkFyZ3M6IHN0cmluZ1tdID0gW1xuXHRcdFwiLWVcIixcblx0XHRcIkRFQ09IRVJFX0JVSUxERVI9MVwiLFxuXHRcdFwiLWVcIixcblx0XHRgREVDT0hFUkVfUFJPSkVDVF9OQU1FPSR7cHJvamVjdE5hbWV9YCxcblx0XHRcIi1lXCIsXG5cdFx0XCJOUE1fQ09ORklHX0NBQ0hFPS9ucG0tY2FjaGVcIixcblx0XHRcIi1lXCIsXG5cdFx0XCJOUE1fQ09ORklHX1BSRUZFUl9PRkZMSU5FPXRydWVcIixcblx0XHRcIi1lXCIsXG5cdFx0YEhPTUU9JHtidWlsZGVySG9tZX1gLFxuXHRdO1xuXG5cdGNvbnN0IG5wbXJjUGF0aCA9IHJlc29sdmUoaG9tZWRpcigpLCBcIi5ucG1yY1wiKTtcblx0aWYgKGV4aXN0c1N5bmMobnBtcmNQYXRoKSkge1xuXHRcdHZvbHVtZXMucHVzaChcIi12XCIsIGAke25wbXJjUGF0aH06L3RtcC9ob3N0LW5wbXJjOnJvYCk7XG5cdFx0ZW52QXJncy5wdXNoKFwiLWVcIiwgXCJOUE1fQ09ORklHX1VTRVJDT05GSUc9L3RtcC9ob3N0LW5wbXJjXCIpO1xuXHR9XG5cblx0Y29uc3QgYXV0aDBDb25maWdEaXIgPSByZXNvbHZlKGhvbWVkaXIoKSwgXCIuY29uZmlnL2F1dGgwXCIpO1xuXHRpZiAoZXhpc3RzU3luYyhhdXRoMENvbmZpZ0RpcikpIHtcblx0XHR2b2x1bWVzLnB1c2goXCItdlwiLCBgJHthdXRoMENvbmZpZ0Rpcn06JHtidWlsZGVySG9tZX0vLmNvbmZpZy9hdXRoMGApO1xuXHR9XG5cblx0Y29uc3QgdXNlckFyZ3M6IHN0cmluZ1tdID0gW107XG5cdGlmIChydW5Bc0hvc3RVc2VyKSB7XG5cdFx0dXNlckFyZ3MucHVzaChcIi0tdXNlclwiLCBgJHtob3N0VWlkfToke2hvc3RHaWR9YCk7XG5cdH0gZWxzZSBpZiAoaG9zdFVpZCAhPSBudWxsKSB7XG5cdFx0ZW52QXJncy5wdXNoKFwiLWVcIiwgYEhPU1RfVUlEPSR7aG9zdFVpZH1gKTtcblx0XHRpZiAoaG9zdEdpZCAhPSBudWxsKSBlbnZBcmdzLnB1c2goXCItZVwiLCBgSE9TVF9HSUQ9JHtob3N0R2lkfWApO1xuXHR9XG5cblx0Y29uc29sZS5sb2coXCIgIFJ1bm5pbmcgc2NhZmZvbGRpbmcgaW4gYSBzYW5kYm94ZWQgY29udGFpbmVyLi4uXFxuXCIpO1xuXG5cdGNvbnN0IHR0eUZsYWdzID0gcHJvY2Vzcy5zdGRpbi5pc1RUWSA/IFtcIi1pdFwiXSA6IFtcIi1pXCJdO1xuXG5cdGNvbnN0IHJlc3VsdCA9IHNwYXduU3luYyhcblx0XHRcImRvY2tlclwiLFxuXHRcdFtcblx0XHRcdFwicnVuXCIsXG5cdFx0XHRcIi0tcm1cIixcblx0XHRcdC4uLnR0eUZsYWdzLFxuXHRcdFx0Li4udXNlckFyZ3MsXG5cdFx0XHQuLi52b2x1bWVzLFxuXHRcdFx0Li4uZW52QXJncyxcblx0XHRcdFwiLXdcIixcblx0XHRcdFwiL3dvcmtzcGFjZVwiLFxuXHRcdFx0QlVJTERFUl9JTUFHRSxcblx0XHRcdC4uLmNvbnRhaW5lckFyZ3YsXG5cdFx0XSxcblx0XHR7IHN0ZGlvOiBcImluaGVyaXRcIiB9LFxuXHQpO1xuXG5cdGlmIChyZXN1bHQuc3RhdHVzID09PSAwKSB7XG5cdFx0Y29uc29sZS5sb2coYFxcbiAgU2NhZmZvbGQgY29tcGxldGUhXFxuXFxuICBPcGVuIHlvdXIgcHJvamVjdDpcXG5cXG4gICAgY29kZSAke3RhcmdldERpcn1cXG5gKTtcblx0fVxuXG5cdHByb2Nlc3MuZXhpdChyZXN1bHQuc3RhdHVzID8/IDApO1xufVxuIl0sIm5hbWVzIjpbImV4ZWNGaWxlU3luYyIsInNwYXduU3luYyIsImV4aXN0c1N5bmMiLCJta2RpclN5bmMiLCJob21lZGlyIiwicmVzb2x2ZSIsInJlc29sdmVMYXVuY2giLCJDUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSIsIkNSRUFURV9WRVJTSU9OIiwiQlVJTERFUl9JTUFHRSIsInJ1bkluQnVpbGRlciIsImFyZ3YiLCJ0YXJnZXREaXIiLCJjb250YWluZXJBcmd2IiwicHJvamVjdE5hbWUiLCJyZWN1cnNpdmUiLCJzdGRpbyIsImNvbnNvbGUiLCJlcnJvciIsInByb2Nlc3MiLCJleGl0IiwiaG9zdFVpZCIsImdldHVpZCIsImhvc3RHaWQiLCJnZXRnaWQiLCJydW5Bc0hvc3RVc2VyIiwibnBtQ2FjaGVEaXIiLCJidWlsZGVySG9tZSIsInZvbHVtZXMiLCJlbnZBcmdzIiwibnBtcmNQYXRoIiwicHVzaCIsImF1dGgwQ29uZmlnRGlyIiwidXNlckFyZ3MiLCJsb2ciLCJ0dHlGbGFncyIsInN0ZGluIiwiaXNUVFkiLCJyZXN1bHQiLCJzdGF0dXMiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLFlBQVksRUFBRUMsU0FBUyxRQUFRLHFCQUFxQjtBQUM3RCxTQUFTQyxVQUFVLEVBQUVDLFNBQVMsUUFBUSxVQUFVO0FBQ2hELFNBQVNDLE9BQU8sUUFBUSxVQUFVO0FBQ2xDLFNBQVNDLE9BQU8sUUFBUSxZQUFZO0FBQ3BDLFNBQVNDLGFBQWEsUUFBUSxzQkFBc0I7QUFDcEQsU0FBU0MsdUJBQXVCLEVBQUVDLGNBQWMsUUFBUSxlQUFlO0FBRXZFLE1BQU1DLGdCQUFnQixHQUFHRix3QkFBd0IsQ0FBQyxFQUFFQyxnQkFBZ0I7QUFFcEU7OztDQUdDLEdBQ0QsT0FBTyxTQUFTRSxhQUFhQyxJQUFjO0lBQzFDLE1BQU0sRUFBRUMsU0FBUyxFQUFFQyxhQUFhLEVBQUVDLFdBQVcsRUFBRSxHQUFHUixjQUFjSztJQUNoRVIsVUFBVVMsV0FBVztRQUFFRyxXQUFXO0lBQUs7SUFDdkNaLFVBQVVFLFFBQVFPLFdBQVcsaUJBQWlCLGFBQWE7UUFBRUcsV0FBVztJQUFLO0lBRTdFLElBQUk7UUFDSGYsYUFBYSxVQUFVO1lBQUM7U0FBTyxFQUFFO1lBQUVnQixPQUFPO1FBQU87SUFDbEQsRUFBRSxPQUFNO1FBQ1BDLFFBQVFDLEtBQUssQ0FDWiw2REFDQztRQUVGQyxRQUFRQyxJQUFJLENBQUM7SUFDZDtJQUVBLE1BQU1DLFVBQVVGLFFBQVFHLE1BQU07SUFDOUIsTUFBTUMsVUFBVUosUUFBUUssTUFBTSxRQUFRSDtJQUN0QyxNQUFNSSxnQkFBZ0JKLFdBQVcsUUFBUUUsV0FBVztJQUVwRCxNQUFNRyxjQUFjckIsUUFBUUQsV0FBVztJQUN2Q0QsVUFBVXVCLGFBQWE7UUFBRVgsV0FBVztJQUFLO0lBRXpDLE1BQU1ZLGNBQWM7SUFFcEIsTUFBTUMsVUFBb0I7UUFDekI7UUFDQSxHQUFHaEIsVUFBVSxXQUFXLENBQUM7UUFDekI7UUFDQSxHQUFHYyxZQUFZLFdBQVcsQ0FBQztLQUMzQjtJQUVELE1BQU1HLFVBQW9CO1FBQ3pCO1FBQ0E7UUFDQTtRQUNBLENBQUMsc0JBQXNCLEVBQUVmLGFBQWE7UUFDdEM7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLENBQUMsS0FBSyxFQUFFYSxhQUFhO0tBQ3JCO0lBRUQsTUFBTUcsWUFBWXpCLFFBQVFELFdBQVc7SUFDckMsSUFBSUYsV0FBVzRCLFlBQVk7UUFDMUJGLFFBQVFHLElBQUksQ0FBQyxNQUFNLEdBQUdELFVBQVUsbUJBQW1CLENBQUM7UUFDcERELFFBQVFFLElBQUksQ0FBQyxNQUFNO0lBQ3BCO0lBRUEsTUFBTUMsaUJBQWlCM0IsUUFBUUQsV0FBVztJQUMxQyxJQUFJRixXQUFXOEIsaUJBQWlCO1FBQy9CSixRQUFRRyxJQUFJLENBQUMsTUFBTSxHQUFHQyxlQUFlLENBQUMsRUFBRUwsWUFBWSxjQUFjLENBQUM7SUFDcEU7SUFFQSxNQUFNTSxXQUFxQixFQUFFO0lBQzdCLElBQUlSLGVBQWU7UUFDbEJRLFNBQVNGLElBQUksQ0FBQyxVQUFVLEdBQUdWLFFBQVEsQ0FBQyxFQUFFRSxTQUFTO0lBQ2hELE9BQU8sSUFBSUYsV0FBVyxNQUFNO1FBQzNCUSxRQUFRRSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRVYsU0FBUztRQUN4QyxJQUFJRSxXQUFXLE1BQU1NLFFBQVFFLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFUixTQUFTO0lBQzlEO0lBRUFOLFFBQVFpQixHQUFHLENBQUM7SUFFWixNQUFNQyxXQUFXaEIsUUFBUWlCLEtBQUssQ0FBQ0MsS0FBSyxHQUFHO1FBQUM7S0FBTSxHQUFHO1FBQUM7S0FBSztJQUV2RCxNQUFNQyxTQUFTckMsVUFDZCxVQUNBO1FBQ0M7UUFDQTtXQUNHa0M7V0FDQUY7V0FDQUw7V0FDQUM7UUFDSDtRQUNBO1FBQ0FwQjtXQUNHSTtLQUNILEVBQ0Q7UUFBRUcsT0FBTztJQUFVO0lBR3BCLElBQUlzQixPQUFPQyxNQUFNLEtBQUssR0FBRztRQUN4QnRCLFFBQVFpQixHQUFHLENBQUMsQ0FBQywyREFBMkQsRUFBRXRCLFVBQVUsRUFBRSxDQUFDO0lBQ3hGO0lBRUFPLFFBQVFDLElBQUksQ0FBQ2tCLE9BQU9DLE1BQU0sSUFBSTtBQUMvQiJ9
|
package/es6/src/version.js
CHANGED
|
@@ -26,7 +26,7 @@ function resolveCreateMetadata() {
|
|
|
26
26
|
};
|
|
27
27
|
}
|
|
28
28
|
const createMetadata = resolveCreateMetadata();
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
export const CREATE_VERSION = createMetadata.version;
|
|
30
|
+
export const CREATE_IMAGE_REPOSITORY = createMetadata.imageRepository;
|
|
31
31
|
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvdmVyc2lvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVSZXF1aXJlIH0gZnJvbSBcIm5vZGU6bW9kdWxlXCI7XG5pbXBvcnQgeyBkaXJuYW1lLCBqb2luIH0gZnJvbSBcIm5vZGU6cGF0aFwiO1xuaW1wb3J0IHsgZmlsZVVSTFRvUGF0aCB9IGZyb20gXCJub2RlOnVybFwiO1xuXG5jb25zdCBfcmVxdWlyZSA9IGNyZWF0ZVJlcXVpcmUoaW1wb3J0Lm1ldGEudXJsKTtcblxudHlwZSBDcmVhdGVQYWNrYWdlTWV0YWRhdGEgPSB7XG5cdG5hbWU/OiBzdHJpbmc7XG5cdHZlcnNpb24/OiBzdHJpbmc7XG5cdGRlY29oZXJlPzoge1xuXHRcdGRvY2tlckltYWdlUmVwb3NpdG9yeT86IHN0cmluZztcblx0fTtcbn07XG5cbmNvbnN0IERFRkFVTFRfQ1JFQVRFX1ZFUlNJT04gPSBcIjAuMC4xLWRldlwiO1xuY29uc3QgREVGQVVMVF9DUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSA9IFwiZ2hjci5pby90eXBlc21pdGhzL2RlY29oZXJlL2NyZWF0ZVwiO1xuXG5mdW5jdGlvbiByZXNvbHZlQ3JlYXRlTWV0YWRhdGEoKSB7XG5cdGxldCBkaXIgPSBkaXJuYW1lKGZpbGVVUkxUb1BhdGgoaW1wb3J0Lm1ldGEudXJsKSk7XG5cdGZvciAobGV0IGkgPSAwOyBpIDwgNTsgaSsrKSB7XG5cdFx0dHJ5IHtcblx0XHRcdGNvbnN0IHBrZyA9IF9yZXF1aXJlKGpvaW4oZGlyLCBcInBhY2thZ2UuanNvblwiKSkgYXMgQ3JlYXRlUGFja2FnZU1ldGFkYXRhO1xuXHRcdFx0aWYgKHBrZy5uYW1lID09PSBcIkBkZWNvaGVyZS9jcmVhdGVcIikge1xuXHRcdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRcdHZlcnNpb246IHBrZy52ZXJzaW9uID8/
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvdmVyc2lvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVSZXF1aXJlIH0gZnJvbSBcIm5vZGU6bW9kdWxlXCI7XG5pbXBvcnQgeyBkaXJuYW1lLCBqb2luIH0gZnJvbSBcIm5vZGU6cGF0aFwiO1xuaW1wb3J0IHsgZmlsZVVSTFRvUGF0aCB9IGZyb20gXCJub2RlOnVybFwiO1xuXG5jb25zdCBfcmVxdWlyZSA9IGNyZWF0ZVJlcXVpcmUoaW1wb3J0Lm1ldGEudXJsKTtcblxudHlwZSBDcmVhdGVQYWNrYWdlTWV0YWRhdGEgPSB7XG5cdG5hbWU/OiBzdHJpbmc7XG5cdHZlcnNpb24/OiBzdHJpbmc7XG5cdGRlY29oZXJlPzoge1xuXHRcdGRvY2tlckltYWdlUmVwb3NpdG9yeT86IHN0cmluZztcblx0fTtcbn07XG5cbmNvbnN0IERFRkFVTFRfQ1JFQVRFX1ZFUlNJT04gPSBcIjAuMC4xLWRldlwiO1xuY29uc3QgREVGQVVMVF9DUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSA9IFwiZ2hjci5pby90eXBlc21pdGhzL2RlY29oZXJlL2NyZWF0ZVwiO1xuXG5mdW5jdGlvbiByZXNvbHZlQ3JlYXRlTWV0YWRhdGEoKSB7XG5cdGxldCBkaXIgPSBkaXJuYW1lKGZpbGVVUkxUb1BhdGgoaW1wb3J0Lm1ldGEudXJsKSk7XG5cdGZvciAobGV0IGkgPSAwOyBpIDwgNTsgaSsrKSB7XG5cdFx0dHJ5IHtcblx0XHRcdGNvbnN0IHBrZyA9IF9yZXF1aXJlKGpvaW4oZGlyLCBcInBhY2thZ2UuanNvblwiKSkgYXMgQ3JlYXRlUGFja2FnZU1ldGFkYXRhO1xuXHRcdFx0aWYgKHBrZy5uYW1lID09PSBcIkBkZWNvaGVyZS9jcmVhdGVcIikge1xuXHRcdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRcdHZlcnNpb246IHBrZy52ZXJzaW9uID8/IERFRkFVTFRfQ1JFQVRFX1ZFUlNJT04sXG5cdFx0XHRcdFx0aW1hZ2VSZXBvc2l0b3J5OlxuXHRcdFx0XHRcdFx0cGtnLmRlY29oZXJlPy5kb2NrZXJJbWFnZVJlcG9zaXRvcnkgPz8gREVGQVVMVF9DUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSxcblx0XHRcdFx0fTtcblx0XHRcdH1cblx0XHR9IGNhdGNoIHt9XG5cdFx0Y29uc3QgcGFyZW50ID0gZGlybmFtZShkaXIpO1xuXHRcdGlmIChwYXJlbnQgPT09IGRpcikgYnJlYWs7XG5cdFx0ZGlyID0gcGFyZW50O1xuXHR9XG5cblx0cmV0dXJuIHtcblx0XHR2ZXJzaW9uOiBERUZBVUxUX0NSRUFURV9WRVJTSU9OLFxuXHRcdGltYWdlUmVwb3NpdG9yeTogREVGQVVMVF9DUkVBVEVfSU1BR0VfUkVQT1NJVE9SWSxcblx0fTtcbn1cblxuY29uc3QgY3JlYXRlTWV0YWRhdGEgPSByZXNvbHZlQ3JlYXRlTWV0YWRhdGEoKTtcblxuZXhwb3J0IGNvbnN0IENSRUFURV9WRVJTSU9OID0gY3JlYXRlTWV0YWRhdGEudmVyc2lvbjtcblxuZXhwb3J0IGNvbnN0IENSRUFURV9JTUFHRV9SRVBPU0lUT1JZID0gY3JlYXRlTWV0YWRhdGEuaW1hZ2VSZXBvc2l0b3J5O1xuIl0sIm5hbWVzIjpbImNyZWF0ZVJlcXVpcmUiLCJkaXJuYW1lIiwiam9pbiIsImZpbGVVUkxUb1BhdGgiLCJfcmVxdWlyZSIsInVybCIsIkRFRkFVTFRfQ1JFQVRFX1ZFUlNJT04iLCJERUZBVUxUX0NSRUFURV9JTUFHRV9SRVBPU0lUT1JZIiwicmVzb2x2ZUNyZWF0ZU1ldGFkYXRhIiwiZGlyIiwiaSIsInBrZyIsIm5hbWUiLCJ2ZXJzaW9uIiwiaW1hZ2VSZXBvc2l0b3J5IiwiZGVjb2hlcmUiLCJkb2NrZXJJbWFnZVJlcG9zaXRvcnkiLCJwYXJlbnQiLCJjcmVhdGVNZXRhZGF0YSIsIkNSRUFURV9WRVJTSU9OIiwiQ1JFQVRFX0lNQUdFX1JFUE9TSVRPUlkiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLGFBQWEsUUFBUSxjQUFjO0FBQzVDLFNBQVNDLE9BQU8sRUFBRUMsSUFBSSxRQUFRLFlBQVk7QUFDMUMsU0FBU0MsYUFBYSxRQUFRLFdBQVc7QUFFekMsTUFBTUMsV0FBV0osY0FBYyxZQUFZSyxHQUFHO0FBVTlDLE1BQU1DLHlCQUF5QjtBQUMvQixNQUFNQyxrQ0FBa0M7QUFFeEMsU0FBU0M7SUFDUixJQUFJQyxNQUFNUixRQUFRRSxjQUFjLFlBQVlFLEdBQUc7SUFDL0MsSUFBSyxJQUFJSyxJQUFJLEdBQUdBLElBQUksR0FBR0EsSUFBSztRQUMzQixJQUFJO1lBQ0gsTUFBTUMsTUFBTVAsU0FBU0YsS0FBS08sS0FBSztZQUMvQixJQUFJRSxJQUFJQyxJQUFJLEtBQUssb0JBQW9CO2dCQUNwQyxPQUFPO29CQUNOQyxTQUFTRixJQUFJRSxPQUFPLElBQUlQO29CQUN4QlEsaUJBQ0NILElBQUlJLFFBQVEsRUFBRUMseUJBQXlCVDtnQkFDekM7WUFDRDtRQUNELEVBQUUsT0FBTSxDQUFDO1FBQ1QsTUFBTVUsU0FBU2hCLFFBQVFRO1FBQ3ZCLElBQUlRLFdBQVdSLEtBQUs7UUFDcEJBLE1BQU1RO0lBQ1A7SUFFQSxPQUFPO1FBQ05KLFNBQVNQO1FBQ1RRLGlCQUFpQlA7SUFDbEI7QUFDRDtBQUVBLE1BQU1XLGlCQUFpQlY7QUFFdkIsT0FBTyxNQUFNVyxpQkFBaUJELGVBQWVMLE9BQU8sQ0FBQztBQUVyRCxPQUFPLE1BQU1PLDBCQUEwQkYsZUFBZUosZUFBZSxDQUFDIn0=
|
package/pack-builder-tgz.mjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
3
|
+
* Vendor `@decohere/cli` for the builder image: resolve `@decohere/*` from
|
|
4
|
+
* dist/release via `file:` (not `overrides`), `npm install --install-links`,
|
|
5
|
+
* then tar the installed tree including `node_modules`. `--install-links`
|
|
6
|
+
* materializes `file:` packages (and their deps) instead of leaving symlinks
|
|
7
|
+
* whose nested installs live outside the create directory.
|
|
8
8
|
*/
|
|
9
9
|
import { spawnSync } from "node:child_process";
|
|
10
|
-
import { readdirSync, readFileSync,
|
|
10
|
+
import { readdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
11
11
|
import { dirname, join, relative, resolve } from "node:path";
|
|
12
12
|
import { fileURLToPath } from "node:url";
|
|
13
13
|
|
|
@@ -87,23 +87,6 @@ export function rewriteDecohereDepsToFile(pkg, fromDir, packages) {
|
|
|
87
87
|
};
|
|
88
88
|
}
|
|
89
89
|
|
|
90
|
-
/**
|
|
91
|
-
* @param {Record<string, unknown>} pkg
|
|
92
|
-
* @returns {string[]}
|
|
93
|
-
*/
|
|
94
|
-
export function productionDepNames(pkg) {
|
|
95
|
-
const deps = pkg.dependencies;
|
|
96
|
-
if (deps == null || typeof deps !== "object") return [];
|
|
97
|
-
return Object.keys(deps);
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* @param {Record<string, unknown>} pkg
|
|
102
|
-
*/
|
|
103
|
-
export function withBundleDependencies(pkg) {
|
|
104
|
-
return { ...pkg, bundleDependencies: productionDepNames(pkg) };
|
|
105
|
-
}
|
|
106
|
-
|
|
107
90
|
function writeJson(path, value) {
|
|
108
91
|
writeFileSync(path, `${JSON.stringify(value, null, 2)}\n`);
|
|
109
92
|
}
|
|
@@ -118,6 +101,17 @@ function runNpm(cwd, args) {
|
|
|
118
101
|
return result.stdout.trim();
|
|
119
102
|
}
|
|
120
103
|
|
|
104
|
+
function packInstalledTree(outDir, dest) {
|
|
105
|
+
const result = spawnSync(
|
|
106
|
+
"tar",
|
|
107
|
+
["--create", "--gzip", "--dereference", "--file", dest, "-C", outDir, "."],
|
|
108
|
+
{ encoding: "utf8" },
|
|
109
|
+
);
|
|
110
|
+
if (result.status !== 0) {
|
|
111
|
+
throw new Error(`tar failed (exit ${result.status}):\n${result.stderr}${result.stdout}`);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
|
|
121
115
|
export function packBuilderTgz(options) {
|
|
122
116
|
const outDir = resolve(options.outDir);
|
|
123
117
|
const workspaceOut = resolve(options.workspaceOut);
|
|
@@ -137,24 +131,14 @@ export function packBuilderTgz(options) {
|
|
|
137
131
|
for (const { path, original } of originals) {
|
|
138
132
|
writeJson(path, rewriteDecohereDepsToFile(original, dirname(path), packages));
|
|
139
133
|
}
|
|
140
|
-
runNpm(outDir, ["install", "--omit=dev", "--ignore-scripts"]);
|
|
134
|
+
runNpm(outDir, ["install", "--omit=dev", "--ignore-scripts", "--install-links"]);
|
|
141
135
|
} finally {
|
|
142
136
|
for (const { path, original } of originals) {
|
|
143
137
|
writeJson(path, original);
|
|
144
138
|
}
|
|
145
139
|
}
|
|
146
140
|
|
|
147
|
-
|
|
148
|
-
try {
|
|
149
|
-
const packed = runNpm(outDir, ["pack", "--pack-destination", dirname(dest)]);
|
|
150
|
-
const tgzName = packed.split(/\r?\n/).at(-1)?.replace(/^.*\//, "");
|
|
151
|
-
if (tgzName == null || tgzName === "") {
|
|
152
|
-
throw new Error(`npm pack did not print a tarball name:\n${packed}`);
|
|
153
|
-
}
|
|
154
|
-
renameSync(join(dirname(dest), tgzName), dest);
|
|
155
|
-
} finally {
|
|
156
|
-
writeJson(packageJsonPath, createOriginal);
|
|
157
|
-
}
|
|
141
|
+
packInstalledTree(outDir, dest);
|
|
158
142
|
return dest;
|
|
159
143
|
}
|
|
160
144
|
|
package/package.json
CHANGED
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@decohere/create",
|
|
3
|
-
"version": "0.0.1-dev.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.0.1-dev.49",
|
|
4
|
+
"description": "Download the Decohere scaffolder image and run it (npm create @decohere)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"decohere",
|
|
7
7
|
"create",
|
|
8
8
|
"scaffold",
|
|
9
|
-
"cli"
|
|
10
|
-
"forge",
|
|
11
|
-
"flux",
|
|
12
|
-
"typescript"
|
|
9
|
+
"cli"
|
|
13
10
|
],
|
|
14
11
|
"license": "ISC",
|
|
15
12
|
"author": "Typesmiths",
|
|
@@ -20,11 +17,7 @@
|
|
|
20
17
|
"scripts": {
|
|
21
18
|
"test": "echo \"Error: no test specified\" && exit 1"
|
|
22
19
|
},
|
|
23
|
-
"dependencies": {
|
|
24
|
-
"@decohere/nexus": "0.0.1-dev.47",
|
|
25
|
-
"commander": "^13.1.0",
|
|
26
|
-
"openapi-to-postmanv2": "^5.0.0"
|
|
27
|
-
},
|
|
20
|
+
"dependencies": {},
|
|
28
21
|
"devDependencies": {},
|
|
29
22
|
"decohere": {
|
|
30
23
|
"dockerImageRepository": "ghcr.io/typesmiths/decohere/create"
|