@tremho/mist-lift 2.1.4 → 2.2.0
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/README.md +11 -2
- package/build/QSTest/functions/IntegrationTest/IntegrationTest.test.js +47 -0
- package/build/QSTest/functions/IntegrationTest/IntegrationTest.test.js.map +1 -0
- package/build/QSTest/functions/IntegrationTest/src/local.js +33 -0
- package/build/QSTest/functions/IntegrationTest/src/local.js.map +1 -0
- package/build/QSTest/functions/IntegrationTest/src/main.js +29 -0
- package/build/QSTest/functions/IntegrationTest/src/main.js.map +1 -0
- package/build/commands/builtin/prebuilt-zips/API.zip +0 -0
- package/build/commands/builtin/prebuilt-zips/FileServe.zip +0 -0
- package/build/commands/builtin/prebuilt-zips/Webroot.zip +0 -0
- package/build/commands/deploy.js +4 -5
- package/build/commands/deploy.js.map +1 -1
- package/build/commands/package.js +1 -1
- package/build/commands/package.js.map +1 -1
- package/build/commands/publish.js +18 -10
- package/build/commands/publish.js.map +1 -1
- package/build/lib/ESBuild.js +8 -6
- package/build/lib/ESBuild.js.map +1 -1
- package/build/lib/IdSrc.js +23 -0
- package/build/lib/IdSrc.js.map +1 -0
- package/build/lib/openAPI/openApiConstruction.js.map +1 -1
- package/build/src/commands/actions/initQuestions.js +140 -0
- package/build/src/commands/actions/initQuestions.js.map +1 -0
- package/build/src/commands/actions/makePackageJson.js +2 -0
- package/build/src/commands/actions/makePackageJson.js.map +1 -0
- package/build/src/commands/actions/setupPackageJson.js +68 -0
- package/build/src/commands/actions/setupPackageJson.js.map +1 -0
- package/build/src/commands/build.js +209 -0
- package/build/src/commands/build.js.map +1 -0
- package/build/src/commands/builtin/ApiDocMaker.js +115 -0
- package/build/src/commands/builtin/ApiDocMaker.js.map +1 -0
- package/build/src/commands/builtin/BuiltInHandler.js +87 -0
- package/build/src/commands/builtin/BuiltInHandler.js.map +1 -0
- package/build/src/commands/builtin/DeployBuiltInZip.js +57 -0
- package/build/src/commands/builtin/DeployBuiltInZip.js.map +1 -0
- package/build/src/commands/builtin/StageWebrootZip.js +94 -0
- package/build/src/commands/builtin/StageWebrootZip.js.map +1 -0
- package/build/src/commands/create.js +90 -0
- package/build/src/commands/create.js.map +1 -0
- package/build/src/commands/deploy.js +220 -0
- package/build/src/commands/deploy.js.map +1 -0
- package/build/src/commands/doctor.js +150 -0
- package/build/src/commands/doctor.js.map +1 -0
- package/build/src/commands/help.js +231 -0
- package/build/src/commands/help.js.map +1 -0
- package/build/src/commands/info.js +71 -0
- package/build/src/commands/info.js.map +1 -0
- package/build/src/commands/init.js +103 -0
- package/build/src/commands/init.js.map +1 -0
- package/build/src/commands/package.js +258 -0
- package/build/src/commands/package.js.map +1 -0
- package/build/src/commands/publish.js +359 -0
- package/build/src/commands/publish.js.map +1 -0
- package/build/src/commands/settings.js +96 -0
- package/build/src/commands/settings.js.map +1 -0
- package/build/src/commands/start.js +181 -0
- package/build/src/commands/start.js.map +1 -0
- package/build/src/commands/test.js +52 -0
- package/build/src/commands/test.js.map +1 -0
- package/build/src/commands/update.js +68 -0
- package/build/src/commands/update.js.map +1 -0
- package/build/src/commands/user.js +20 -0
- package/build/src/commands/user.js.map +1 -0
- package/build/src/expressRoutes/all.js +134 -0
- package/build/src/expressRoutes/all.js.map +1 -0
- package/build/src/expressRoutes/api.js +24 -0
- package/build/src/expressRoutes/api.js.map +1 -0
- package/build/src/expressRoutes/functionBinder.js +201 -0
- package/build/src/expressRoutes/functionBinder.js.map +1 -0
- package/build/src/integration-tests/quickstart-scenario.test.js +86 -0
- package/build/src/integration-tests/quickstart-scenario.test.js.map +1 -0
- package/build/src/lib/CaseUtils.js +57 -0
- package/build/src/lib/CaseUtils.js.map +1 -0
- package/build/src/lib/DirectoryUtils.js +40 -0
- package/build/src/lib/DirectoryUtils.js.map +1 -0
- package/build/src/lib/ESBuild.js +99 -0
- package/build/src/lib/ESBuild.js.map +1 -0
- package/build/src/lib/IdSrc.js +23 -0
- package/build/src/lib/IdSrc.js.map +1 -0
- package/build/src/lib/LiftConfig.js +81 -0
- package/build/src/lib/LiftConfig.js.map +1 -0
- package/build/src/lib/LiftVersion.js +122 -0
- package/build/src/lib/LiftVersion.js.map +1 -0
- package/build/src/lib/Tests/fileCompare.test.js +56 -0
- package/build/src/lib/Tests/fileCompare.test.js.map +1 -0
- package/build/src/lib/askQuestion.js +42 -0
- package/build/src/lib/askQuestion.js.map +1 -0
- package/build/src/lib/executeCommand.js +58 -0
- package/build/src/lib/executeCommand.js.map +1 -0
- package/build/src/lib/fileCompare.js +49 -0
- package/build/src/lib/fileCompare.js.map +1 -0
- package/build/src/lib/openAPI/ApiBuildCollector.js +59 -0
- package/build/src/lib/openAPI/ApiBuildCollector.js.map +1 -0
- package/build/src/lib/openAPI/WebrootFileSupport.js +48 -0
- package/build/src/lib/openAPI/WebrootFileSupport.js.map +1 -0
- package/build/src/lib/openAPI/openApiConstruction.js +237 -0
- package/build/src/lib/openAPI/openApiConstruction.js.map +1 -0
- package/build/src/lib/pathResolve.js +27 -0
- package/build/src/lib/pathResolve.js.map +1 -0
- package/build/src/lib/utils.js +77 -0
- package/build/src/lib/utils.js.map +1 -0
- package/build/src/lift.js +134 -0
- package/build/src/lift.js.map +1 -0
- package/package.json +2 -3
- package/src/commands/builtin/prebuilt-zips/API.zip +0 -0
- package/src/commands/builtin/prebuilt-zips/FileServe.zip +0 -0
- package/src/commands/builtin/prebuilt-zips/Webroot.zip +0 -0
- package/src/commands/deploy.ts +4 -4
- package/src/commands/package.ts +1 -1
- package/src/commands/publish.ts +14 -5
- package/src/lib/ESBuild.ts +11 -9
- package/src/lib/IdSrc.ts +16 -0
- package/src/lib/openAPI/openApiConstruction.ts +2 -1
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/** Handles the input the user must supply upon init
|
|
3
|
+
*/
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
27
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
28
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
29
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
30
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
31
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
32
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
33
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
+
exports.interrogateUserForPackageJsonSettings = void 0;
|
|
38
|
+
const path = __importStar(require("path"));
|
|
39
|
+
const fs = __importStar(require("fs"));
|
|
40
|
+
const executeCommand_1 = require("../../lib/executeCommand");
|
|
41
|
+
const askQuestion_1 = require("../../lib/askQuestion");
|
|
42
|
+
function interrogateUserForPackageJsonSettings(projectPath, defaults) {
|
|
43
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
44
|
+
// get existing package.json or {}
|
|
45
|
+
// name of project - module name, display name, short name
|
|
46
|
+
// description
|
|
47
|
+
// set version
|
|
48
|
+
// gitAuthor ?? Author
|
|
49
|
+
// create a repository under gitAuthor?
|
|
50
|
+
// copyright
|
|
51
|
+
// spdx licence
|
|
52
|
+
var _a, _b, _c, _d, _e, _f;
|
|
53
|
+
const gitAuthor = yield findGitAuthor();
|
|
54
|
+
const pkgJson = existingPackageJson(projectPath);
|
|
55
|
+
let name = (_a = pkgJson.name) !== null && _a !== void 0 ? _a : nameFromProjectPath(projectPath);
|
|
56
|
+
let version = (_b = pkgJson.version) !== null && _b !== void 0 ? _b : '1.0.0-prerelease.1';
|
|
57
|
+
let description = (_c = pkgJson.description) !== null && _c !== void 0 ? _c : '';
|
|
58
|
+
let author = (_d = pkgJson.author) !== null && _d !== void 0 ? _d : gitAuthor;
|
|
59
|
+
let copyright = (_e = pkgJson.copyright) !== null && _e !== void 0 ? _e : defaultCopyright(author);
|
|
60
|
+
let spdx = (_f = pkgJson.license) !== null && _f !== void 0 ? _f : 'MIT';
|
|
61
|
+
if (defaults !== true) {
|
|
62
|
+
let ok = false;
|
|
63
|
+
while (!ok) {
|
|
64
|
+
name = (0, askQuestion_1.ask)('Module name of this project', 'module name', name);
|
|
65
|
+
ok = name !== undefined && name.indexOf(' ') === -1;
|
|
66
|
+
}
|
|
67
|
+
ok = false;
|
|
68
|
+
while (!ok) {
|
|
69
|
+
version = (0, askQuestion_1.ask)('Project version. Use prerelease suffix for development versions. Use Semantic Versioning (https://semver.org).', 'version', version !== null && version !== void 0 ? version : '0.1.0-prerelease.1');
|
|
70
|
+
ok = version !== undefined && version.indexOf('.') !== -1;
|
|
71
|
+
}
|
|
72
|
+
ok = false;
|
|
73
|
+
while (!ok) {
|
|
74
|
+
description = (0, askQuestion_1.ask)('Give a brief description of what this project does / what it is for', 'description', description !== null && description !== void 0 ? description : '');
|
|
75
|
+
ok = description !== '';
|
|
76
|
+
}
|
|
77
|
+
ok = false;
|
|
78
|
+
while (!ok) {
|
|
79
|
+
author = (0, askQuestion_1.ask)('Identify yourself as the author of this project', 'name', author);
|
|
80
|
+
ok = author !== '';
|
|
81
|
+
}
|
|
82
|
+
ok = false;
|
|
83
|
+
while (!ok) {
|
|
84
|
+
copyright = (0, askQuestion_1.ask)('Specify a displayable copyright notice', 'Copyright', copyright);
|
|
85
|
+
ok = copyright !== '';
|
|
86
|
+
}
|
|
87
|
+
ok = false;
|
|
88
|
+
while (!ok) {
|
|
89
|
+
spdx = (0, askQuestion_1.ask)('Specify the appropriate SPDX license identifier for this project. See https://spdx.org/licenses/ for more info.', 'spdx identifier', spdx);
|
|
90
|
+
ok = spdx !== '';
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
pkgJson.name = name;
|
|
94
|
+
pkgJson.version = version;
|
|
95
|
+
pkgJson.description = description;
|
|
96
|
+
pkgJson.author = author;
|
|
97
|
+
pkgJson.copyright = copyright;
|
|
98
|
+
pkgJson.license = spdx;
|
|
99
|
+
const pkgPath = path.join(projectPath, 'package.json');
|
|
100
|
+
fs.writeFileSync(pkgPath, JSON.stringify(pkgJson, null, 2));
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
exports.interrogateUserForPackageJsonSettings = interrogateUserForPackageJsonSettings;
|
|
104
|
+
function findGitAuthor() {
|
|
105
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
106
|
+
return yield (0, executeCommand_1.executeCommand)('git', ['config', '--get', 'user.name']).then((rt) => {
|
|
107
|
+
var _a, _b;
|
|
108
|
+
const rrt = rt;
|
|
109
|
+
let name = '';
|
|
110
|
+
if ((rrt === null || rrt === void 0 ? void 0 : rrt.retcode) !== 0) {
|
|
111
|
+
console.error(`Error ${(_a = rrt === null || rrt === void 0 ? void 0 : rrt.retcode) !== null && _a !== void 0 ? _a : ''}`, rrt === null || rrt === void 0 ? void 0 : rrt.errStr);
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
name = (_b = rrt === null || rrt === void 0 ? void 0 : rrt.stdStr) === null || _b === void 0 ? void 0 : _b.trim().toLowerCase();
|
|
115
|
+
}
|
|
116
|
+
return name !== null && name !== void 0 ? name : '';
|
|
117
|
+
});
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
function defaultCopyright(name) {
|
|
121
|
+
return `(C) ${new Date(Date.now()).getFullYear()} ${name}. All rights reserved.`;
|
|
122
|
+
}
|
|
123
|
+
function nameFromProjectPath(refPath) {
|
|
124
|
+
const n = refPath.lastIndexOf(path.sep) + 1;
|
|
125
|
+
return refPath.substring(n);
|
|
126
|
+
}
|
|
127
|
+
function existingPackageJson(refPath) {
|
|
128
|
+
let packageJson = {};
|
|
129
|
+
const pkgPath = path.join(refPath, 'package.json');
|
|
130
|
+
if (fs.existsSync((pkgPath))) {
|
|
131
|
+
try {
|
|
132
|
+
packageJson = JSON.parse(fs.readFileSync(pkgPath).toString());
|
|
133
|
+
}
|
|
134
|
+
catch (e) {
|
|
135
|
+
// error in existing package.json. Please fix or remove and try again.
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
return packageJson;
|
|
139
|
+
}
|
|
140
|
+
//# sourceMappingURL=initQuestions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"initQuestions.js","sourceRoot":"","sources":["../../../../src/commands/actions/initQuestions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"makePackageJson.js","sourceRoot":"","sources":["../../../../src/commands/actions/makePackageJson.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/** Adds necessary scripts to package.json */
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
+
}) : function(o, v) {
|
|
17
|
+
o["default"] = v;
|
|
18
|
+
});
|
|
19
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
20
|
+
if (mod && mod.__esModule) return mod;
|
|
21
|
+
var result = {};
|
|
22
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
23
|
+
__setModuleDefault(result, mod);
|
|
24
|
+
return result;
|
|
25
|
+
};
|
|
26
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
27
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
28
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
29
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
30
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
31
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
32
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.installDevPackage = exports.installPackage = exports.addPackageScripts = void 0;
|
|
37
|
+
const path = __importStar(require("path"));
|
|
38
|
+
const fs = __importStar(require("fs"));
|
|
39
|
+
const executeCommand_1 = require("../../lib/executeCommand");
|
|
40
|
+
/**
|
|
41
|
+
* Adds necessary scripts to package.json
|
|
42
|
+
*/
|
|
43
|
+
function addPackageScripts(projectPath) {
|
|
44
|
+
var _a;
|
|
45
|
+
const pkgPath = path.join(projectPath, 'package.json');
|
|
46
|
+
let pkgJson = {};
|
|
47
|
+
try {
|
|
48
|
+
pkgJson = JSON.parse(fs.readFileSync(pkgPath).toString());
|
|
49
|
+
}
|
|
50
|
+
catch (_b) { }
|
|
51
|
+
const script = (_a = pkgJson.script) !== null && _a !== void 0 ? _a : {};
|
|
52
|
+
script.test = 'lift test';
|
|
53
|
+
pkgJson.script = script;
|
|
54
|
+
}
|
|
55
|
+
exports.addPackageScripts = addPackageScripts;
|
|
56
|
+
function installPackage(projectPath, packageName) {
|
|
57
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
58
|
+
yield (0, executeCommand_1.executeCommand)('npm', ['i', packageName], projectPath, true);
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
exports.installPackage = installPackage;
|
|
62
|
+
function installDevPackage(projectPath, packageName) {
|
|
63
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
64
|
+
yield (0, executeCommand_1.executeCommand)('npm', ['i', '--save-dev', packageName], projectPath, true);
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
exports.installDevPackage = installDevPackage;
|
|
68
|
+
//# sourceMappingURL=setupPackageJson.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setupPackageJson.js","sourceRoot":"","sources":["../../../../src/commands/actions/setupPackageJson.ts"],"names":[],"mappings":";AAAA,6CAA6C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAE7C,2CAA4B;AAC5B,uCAAwB;AACxB,6DAAyD;AAEzD;;GAEG;AACH,SAAgB,iBAAiB,CAC/B,WAAmB;;IAEnB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAA;IACtD,IAAI,OAAO,GAAQ,EAAE,CAAA;IACrB,IAAI,CAAC;QAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;IAAC,CAAC;IAAC,WAAM,CAAC,CAAA,CAAC;IAC1E,MAAM,MAAM,GAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,EAAE,CAAA;IACnC,MAAM,CAAC,IAAI,GAAG,WAAW,CAAA;IACzB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAA;AACzB,CAAC;AATD,8CASC;AACD,SAAsB,cAAc,CAClC,WAAmB,EACnB,WAAmB;;QAEnB,MAAM,IAAA,+BAAc,EAAC,KAAK,EAAE,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;IACpE,CAAC;CAAA;AALD,wCAKC;AAED,SAAsB,iBAAiB,CACrC,WAAmB,EACnB,WAAmB;;QAEnB,MAAM,IAAA,+BAAc,EAAC,KAAK,EAAE,CAAC,GAAG,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;IAClF,CAAC;CAAA;AALD,8CAKC"}
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/** handles building in the project directory */
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
+
}) : function(o, v) {
|
|
17
|
+
o["default"] = v;
|
|
18
|
+
});
|
|
19
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
20
|
+
if (mod && mod.__esModule) return mod;
|
|
21
|
+
var result = {};
|
|
22
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
23
|
+
__setModuleDefault(result, mod);
|
|
24
|
+
return result;
|
|
25
|
+
};
|
|
26
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
27
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
28
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
29
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
30
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
31
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
32
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.doBuildAsync = void 0;
|
|
37
|
+
const path = __importStar(require("path"));
|
|
38
|
+
const fs = __importStar(require("fs"));
|
|
39
|
+
const ac = __importStar(require("ansi-colors"));
|
|
40
|
+
const pathResolve_1 = require("../lib/pathResolve");
|
|
41
|
+
const DirectoryUtils_1 = require("../lib/DirectoryUtils");
|
|
42
|
+
const fileCompare_1 = require("../lib/fileCompare");
|
|
43
|
+
const executeCommand_1 = require("../lib/executeCommand");
|
|
44
|
+
const fs_1 = require("fs");
|
|
45
|
+
let projectPaths = {};
|
|
46
|
+
// Build command
|
|
47
|
+
function doBuildAsync(args // zero or more functions to build. zero means build all
|
|
48
|
+
) {
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
projectPaths = (0, pathResolve_1.resolvePaths)();
|
|
51
|
+
if (projectPaths.verified !== true) {
|
|
52
|
+
console.log(ac.bold.magenta('current directory is not at project root'));
|
|
53
|
+
return -1;
|
|
54
|
+
}
|
|
55
|
+
const funcsToBuild = [];
|
|
56
|
+
const options = [];
|
|
57
|
+
for (const arg of args) {
|
|
58
|
+
if (arg.charAt(0) === '-') {
|
|
59
|
+
options.push(arg.toLowerCase());
|
|
60
|
+
}
|
|
61
|
+
else
|
|
62
|
+
funcsToBuild.push(arg);
|
|
63
|
+
}
|
|
64
|
+
if (funcsToBuild.length === 0) {
|
|
65
|
+
let firstDepth = 0;
|
|
66
|
+
(0, DirectoryUtils_1.recurseDirectory)(projectPaths.functionPath, (filepath, stats) => {
|
|
67
|
+
const depth = filepath.split(path.sep).length;
|
|
68
|
+
if (firstDepth === 0)
|
|
69
|
+
firstDepth = depth;
|
|
70
|
+
if (stats.isDirectory() && depth === firstDepth) {
|
|
71
|
+
funcsToBuild.push(path.basename(filepath));
|
|
72
|
+
}
|
|
73
|
+
return false;
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
let failFast = options.includes('--failfast');
|
|
77
|
+
if (options.includes('--deferfail'))
|
|
78
|
+
failFast = false;
|
|
79
|
+
let fails = 0;
|
|
80
|
+
for (const func of funcsToBuild) {
|
|
81
|
+
const funcDir = path.join(projectPaths.functionPath, func);
|
|
82
|
+
if (fs.existsSync(funcDir)) {
|
|
83
|
+
fails += yield buildSingleFunction(funcDir, options);
|
|
84
|
+
if (fails > 0 && failFast)
|
|
85
|
+
break;
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
console.log(ac.red.bold(`${func} does not exist as a function`));
|
|
89
|
+
fails++;
|
|
90
|
+
if (failFast)
|
|
91
|
+
break;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return fails;
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
exports.doBuildAsync = doBuildAsync;
|
|
98
|
+
// build command for a single function
|
|
99
|
+
function buildSingleFunction(funcDir, options) {
|
|
100
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
101
|
+
const funcName = funcDir.substring(funcDir.lastIndexOf(path.sep) + 1);
|
|
102
|
+
const buildPath = path.join(projectPaths.basePath, 'build', 'functions', funcName);
|
|
103
|
+
if (options.includes('--clean')) {
|
|
104
|
+
if (fs.existsSync(buildPath)) {
|
|
105
|
+
fs.rmSync(buildPath, { recursive: true });
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
// strategy here is to invoke tsc on a per-folder basis rather than letting tsc do the recurse because it is easier to control this way
|
|
109
|
+
return yield buildFunctionModules(funcName, funcDir, buildPath, options);
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
// build all the function modules in path
|
|
113
|
+
function buildFunctionModules(funcName, funcDir, buildPath, options) {
|
|
114
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
115
|
+
const announce = ac.blue.dim(`building ${funcName}...`);
|
|
116
|
+
let announced = false;
|
|
117
|
+
let fails = 0;
|
|
118
|
+
// let builds = 0
|
|
119
|
+
let failFast = options.includes('--failfast');
|
|
120
|
+
if (options.includes('--deferfail'))
|
|
121
|
+
failFast = false;
|
|
122
|
+
const all = [];
|
|
123
|
+
(0, DirectoryUtils_1.recurseDirectory)(funcDir, (filepath, stats) => {
|
|
124
|
+
if (path.extname(filepath) === '.ts') {
|
|
125
|
+
let relPath = filepath.substring(funcDir.length);
|
|
126
|
+
relPath = relPath.substring(0, relPath.lastIndexOf(path.sep));
|
|
127
|
+
const outDir = path.join(buildPath, relPath);
|
|
128
|
+
if (!(fails > 0 && failFast)) {
|
|
129
|
+
if ((0, fileCompare_1.isNewer)(filepath, outDir)) {
|
|
130
|
+
if (!announced) {
|
|
131
|
+
announced = true;
|
|
132
|
+
console.log(announce);
|
|
133
|
+
}
|
|
134
|
+
// builds++
|
|
135
|
+
all.push((0, executeCommand_1.executeCommand)('tsc', [
|
|
136
|
+
'--esModuleInterop', 'true',
|
|
137
|
+
'--target', 'ES2015',
|
|
138
|
+
'--module', 'commonjs',
|
|
139
|
+
'--lib', 'dom,es2015,scripthost,es2015.proxy',
|
|
140
|
+
'--strict', 'true',
|
|
141
|
+
'--noImplicitAny', 'false',
|
|
142
|
+
'--skipLibCheck', 'true',
|
|
143
|
+
'--forceConsistentCasingInFileNames', 'true',
|
|
144
|
+
'--sourceMap', 'true',
|
|
145
|
+
'--outdir', outDir,
|
|
146
|
+
filepath
|
|
147
|
+
], '', true).then((result) => {
|
|
148
|
+
if (result.retcode !== 0) {
|
|
149
|
+
fails++;
|
|
150
|
+
// console.log("error detected", fails)
|
|
151
|
+
const now = new Date();
|
|
152
|
+
fs.utimesSync(filepath, now, now); // touch file so it is not skipped next build
|
|
153
|
+
}
|
|
154
|
+
}));
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
fails += doPostBuildSteps(funcDir, buildPath);
|
|
159
|
+
return false;
|
|
160
|
+
});
|
|
161
|
+
return yield Promise.all(all).then(() => __awaiter(this, void 0, void 0, function* () {
|
|
162
|
+
return fails;
|
|
163
|
+
}));
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
// do the steps after the build (file copies, etc)
|
|
167
|
+
function doPostBuildSteps(funcDir, buildPath) {
|
|
168
|
+
// copy the definitions,json file over
|
|
169
|
+
const srcdef = path.join(funcDir, 'src', 'definition.json');
|
|
170
|
+
const dstdef = path.join(buildPath, 'src', 'definition.json');
|
|
171
|
+
if (fs.existsSync(srcdef)) {
|
|
172
|
+
const destFolder = path.dirname(dstdef);
|
|
173
|
+
if (!fs.existsSync(destFolder))
|
|
174
|
+
(0, fs_1.mkdirSync)(destFolder, { recursive: true });
|
|
175
|
+
fs.copyFileSync(srcdef, dstdef);
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
console.error(ac.red.bold('no definition file found at ' + srcdef));
|
|
179
|
+
return 1;
|
|
180
|
+
}
|
|
181
|
+
// Copy the runmain.mjs file over
|
|
182
|
+
const srcrun = path.join(funcDir, 'runmain.mjs');
|
|
183
|
+
const dstrun = path.join(buildPath, 'runmain.mjs');
|
|
184
|
+
if (fs.existsSync(srcrun)) {
|
|
185
|
+
fs.copyFileSync(srcrun, dstrun);
|
|
186
|
+
}
|
|
187
|
+
// copy the resources folder if it exists
|
|
188
|
+
const filedirPath = path.join(funcDir, 'resources');
|
|
189
|
+
if (fs.existsSync(filedirPath)) {
|
|
190
|
+
const bfiles = path.join(buildPath, 'resources');
|
|
191
|
+
if (!fs.existsSync(bfiles))
|
|
192
|
+
fs.mkdirSync(bfiles, { recursive: true });
|
|
193
|
+
(0, DirectoryUtils_1.recurseDirectory)(filedirPath, (filepath, stats) => {
|
|
194
|
+
let relPath = filepath.substring(funcDir.length);
|
|
195
|
+
relPath = relPath.substring(0, relPath.lastIndexOf(path.sep));
|
|
196
|
+
const outDir = path.join(buildPath, relPath);
|
|
197
|
+
const target = path.join(outDir, path.basename(filepath));
|
|
198
|
+
if (stats.isDirectory() && !fs.existsSync(target)) {
|
|
199
|
+
fs.mkdirSync(target, { recursive: true });
|
|
200
|
+
}
|
|
201
|
+
if (stats.isFile()) {
|
|
202
|
+
fs.copyFileSync(filepath, target);
|
|
203
|
+
}
|
|
204
|
+
return false;
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
return 0;
|
|
208
|
+
}
|
|
209
|
+
//# sourceMappingURL=build.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/commands/build.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.addBuiltInDefinitions = exports.MakeBuiltinApiDoc = exports.MakePublicApiDoc = void 0;
|
|
16
|
+
const ApiBuildCollector_1 = require("../../lib/openAPI/ApiBuildCollector");
|
|
17
|
+
const openApiConstruction_1 = require("../../lib/openAPI/openApiConstruction");
|
|
18
|
+
const WebrootFileSupport_1 = require("../../lib/openAPI/WebrootFileSupport");
|
|
19
|
+
const path_1 = __importDefault(require("path"));
|
|
20
|
+
function MakePublicApiDoc() {
|
|
21
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
22
|
+
const defs = (0, ApiBuildCollector_1.gatherFunctionDefinitions)();
|
|
23
|
+
return yield (0, openApiConstruction_1.buildOpenApi)(defs);
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
exports.MakePublicApiDoc = MakePublicApiDoc;
|
|
27
|
+
function MakeBuiltinApiDoc(yamlFile) {
|
|
28
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
const defs = (0, ApiBuildCollector_1.gatherFunctionDefinitions)();
|
|
30
|
+
addBuiltInDefinitions(defs);
|
|
31
|
+
return yield (0, openApiConstruction_1.buildOpenApi)(defs, false, yamlFile); //, true)
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
exports.MakeBuiltinApiDoc = MakeBuiltinApiDoc;
|
|
35
|
+
function addBuiltInDefinitions(defs) {
|
|
36
|
+
// console.warn("NOT ADDING ANY BUILTIN API INTEGRATIONS")
|
|
37
|
+
// console.log("ADDING apiDef");
|
|
38
|
+
defs.push(apiDef);
|
|
39
|
+
defs.push(webrootDef);
|
|
40
|
+
// console.warn("Adding webroot literals");
|
|
41
|
+
// do just /docs and see how that goes
|
|
42
|
+
const fsdef = Object.assign({}, fileServeDef); // copy
|
|
43
|
+
fsdef.name = 'fileserve_docs';
|
|
44
|
+
fsdef.pathMap = '/docs/{path}';
|
|
45
|
+
defs.push(fsdef);
|
|
46
|
+
const roots = (0, WebrootFileSupport_1.GetWebrootServePaths)();
|
|
47
|
+
// console.log("roots", roots)
|
|
48
|
+
for (const root of roots) {
|
|
49
|
+
if (root !== '') {
|
|
50
|
+
const rootPath = root.replace(path_1.default.sep, '/');
|
|
51
|
+
let rootName = rootPath;
|
|
52
|
+
while (rootName.includes('/'))
|
|
53
|
+
rootName = rootPath.replace('/', '').toLowerCase().trim();
|
|
54
|
+
const fileserve = Object.assign({}, fileServeDef); // copy
|
|
55
|
+
fileserve.name = 'fileserve_' + rootName;
|
|
56
|
+
fileserve.pathMap = `${rootPath}/{path}`;
|
|
57
|
+
defs.push(fileserve);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
exports.addBuiltInDefinitions = addBuiltInDefinitions;
|
|
62
|
+
const apiDef = {
|
|
63
|
+
name: 'API',
|
|
64
|
+
description: '',
|
|
65
|
+
version: '1.0.0',
|
|
66
|
+
pathMap: '/api',
|
|
67
|
+
method: 'GET',
|
|
68
|
+
logLevel: 'Debug',
|
|
69
|
+
sessionRequired: false,
|
|
70
|
+
userRequired: false,
|
|
71
|
+
schemas: {},
|
|
72
|
+
parameters: [],
|
|
73
|
+
returns: {
|
|
74
|
+
200: { type: 'empty', description: 'successful response.' },
|
|
75
|
+
500: {
|
|
76
|
+
type: 'string',
|
|
77
|
+
description: 'Error details'
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
const fileServeDef = {
|
|
82
|
+
name: 'FileServe',
|
|
83
|
+
description: 'file service',
|
|
84
|
+
version: '1.0.0',
|
|
85
|
+
pathMap: '',
|
|
86
|
+
method: 'GET',
|
|
87
|
+
logLevel: 'Debug',
|
|
88
|
+
sessionRequired: false,
|
|
89
|
+
userRequired: false,
|
|
90
|
+
schemas: {},
|
|
91
|
+
parameters: [{ name: 'path', in: 'path' }],
|
|
92
|
+
returns: {
|
|
93
|
+
200: { type: 'empty', description: 'successful response.' },
|
|
94
|
+
500: { type: 'string', description: 'Error details' }
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
const webrootDef = {
|
|
98
|
+
name: 'Webroot',
|
|
99
|
+
description: 'Serves files from the webroot /',
|
|
100
|
+
version: '1.0.0',
|
|
101
|
+
pathMap: '/{path}',
|
|
102
|
+
method: 'get',
|
|
103
|
+
timeout: 8,
|
|
104
|
+
memorySize: 1024,
|
|
105
|
+
logLevel: 'Debug',
|
|
106
|
+
sessionRequired: false,
|
|
107
|
+
userRequired: false,
|
|
108
|
+
schemas: {},
|
|
109
|
+
parameters: [{ name: 'path', in: 'path' }],
|
|
110
|
+
returns: {
|
|
111
|
+
200: { type: 'empty', description: 'successful response.' },
|
|
112
|
+
500: { type: 'string', description: 'Error details' }
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
//# sourceMappingURL=ApiDocMaker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApiDocMaker.js","sourceRoot":"","sources":["../../../../src/commands/builtin/ApiDocMaker.ts"],"names":[],"mappings":"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"}
|