@villedemontreal/mongo 6.7.1 → 6.7.2
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/dist/scripts/index.js +16 -0
- package/dist/scripts/index.js.map +1 -0
- package/dist/scripts/lint.js +18 -0
- package/dist/scripts/lint.js.map +1 -0
- package/dist/scripts/lintFix.js +21 -0
- package/dist/scripts/lintFix.js.map +1 -0
- package/dist/scripts/showCoverage.js +40 -0
- package/dist/scripts/showCoverage.js.map +1 -0
- package/dist/scripts/test.js +29 -0
- package/dist/scripts/test.js.map +1 -0
- package/dist/scripts/testUnits.js +95 -0
- package/dist/scripts/testUnits.js.map +1 -0
- package/dist/scripts/watch.js +96 -0
- package/dist/scripts/watch.js.map +1 -0
- package/dist/src/config/configs.js +6 -0
- package/dist/src/config/configs.js.map +1 -1
- package/dist/src/config/constants.js +12 -12
- package/dist/src/config/constants.js.map +1 -1
- package/dist/src/config/init.js.map +1 -1
- package/dist/src/config/mongooseConfigs.js +8 -6
- package/dist/src/config/mongooseConfigs.js.map +1 -1
- package/dist/src/index.js +6 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/mongoClient.js +64 -59
- package/dist/src/mongoClient.js.map +1 -1
- package/dist/src/mongoUpdater.js +30 -27
- package/dist/src/mongoUpdater.js.map +1 -1
- package/dist/src/mongoUpdater.test.js +11 -11
- package/dist/src/mongoUpdater.test.js.map +1 -1
- package/dist/src/mongoUtils.js +15 -12
- package/dist/src/mongoUtils.js.map +1 -1
- package/dist/src/plugins/pagination/index.js +9 -12
- package/dist/src/plugins/pagination/index.js.map +1 -1
- package/dist/src/plugins/pagination/index.test.js +20 -12
- package/dist/src/plugins/pagination/index.test.js.map +1 -1
- package/dist/src/utils/logger.js +1 -1
- package/dist/src/utils/logger.js.map +1 -1
- package/dist/src/utils/testingConfigurations.js +1 -1
- package/dist/src/utils/testingConfigurations.js.map +1 -1
- package/dist/tests/testingMongoUpdates/1.0.0.js +3 -3
- package/dist/tests/testingMongoUpdates/1.0.1.js +4 -4
- package/dist/tests/testingMongoUpdates/1.0.1.js.map +1 -1
- package/package.json +20 -15
- package/src/config/configs.ts +10 -1
- package/src/config/constants.ts +13 -13
- package/src/config/init.ts +1 -1
- package/src/config/mongooseConfigs.ts +30 -12
- package/src/mongoClient.ts +80 -63
- package/src/mongoUpdater.test.ts +29 -17
- package/src/mongoUpdater.ts +47 -32
- package/src/mongoUtils.ts +20 -14
- package/src/plugins/pagination/index.test.ts +38 -27
- package/src/plugins/pagination/index.ts +19 -14
- package/src/utils/logger.ts +8 -1
- package/dist/src/config/configs.d.ts +0 -16
- package/dist/src/config/constants.d.ts +0 -85
- package/dist/src/config/init.d.ts +0 -9
- package/dist/src/config/mongooseConfigs.d.ts +0 -73
- package/dist/src/index.d.ts +0 -6
- package/dist/src/mongoClient.d.ts +0 -19
- package/dist/src/mongoUpdater.d.ts +0 -103
- package/dist/src/mongoUpdater.test.d.ts +0 -1
- package/dist/src/mongoUtils.d.ts +0 -68
- package/dist/src/mongoUtils.test.d.ts +0 -0
- package/dist/src/plugins/pagination/index.d.ts +0 -11
- package/dist/src/plugins/pagination/index.test.d.ts +0 -1
- package/dist/src/plugins/pagination/specs/IPaginateOptions.d.ts +0 -51
- package/dist/src/utils/logger.d.ts +0 -11
- package/dist/src/utils/testingConfigurations.d.ts +0 -8
- package/dist/tests/testingMongoUpdates/1.0.0.d.ts +0 -5
- package/dist/tests/testingMongoUpdates/1.0.1.d.ts +0 -5
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WatchScript = exports.TestUnitsScript = exports.TestScript = exports.ShowCoverageScript = exports.LintFixScript = exports.LintScript = void 0;
|
|
4
|
+
var lint_1 = require("./lint");
|
|
5
|
+
Object.defineProperty(exports, "LintScript", { enumerable: true, get: function () { return lint_1.LintScript; } });
|
|
6
|
+
var lintFix_1 = require("./lintFix");
|
|
7
|
+
Object.defineProperty(exports, "LintFixScript", { enumerable: true, get: function () { return lintFix_1.LintFixScript; } });
|
|
8
|
+
var showCoverage_1 = require("./showCoverage");
|
|
9
|
+
Object.defineProperty(exports, "ShowCoverageScript", { enumerable: true, get: function () { return showCoverage_1.ShowCoverageScript; } });
|
|
10
|
+
var test_1 = require("./test");
|
|
11
|
+
Object.defineProperty(exports, "TestScript", { enumerable: true, get: function () { return test_1.TestScript; } });
|
|
12
|
+
var testUnits_1 = require("./testUnits");
|
|
13
|
+
Object.defineProperty(exports, "TestUnitsScript", { enumerable: true, get: function () { return testUnits_1.TestUnitsScript; } });
|
|
14
|
+
var watch_1 = require("./watch");
|
|
15
|
+
Object.defineProperty(exports, "WatchScript", { enumerable: true, get: function () { return watch_1.WatchScript; } });
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../scripts/index.ts"],"names":[],"mappings":";;;AAAA,+BAAoC;AAA3B,kGAAA,UAAU,OAAA;AACnB,qCAA0C;AAAjC,wGAAA,aAAa,OAAA;AACtB,+CAAoD;AAA3C,kHAAA,kBAAkB,OAAA;AAC3B,+BAAoC;AAA3B,kGAAA,UAAU,OAAA;AACnB,yCAA8C;AAArC,4GAAA,eAAe,OAAA;AACxB,iCAAsC;AAA7B,oGAAA,WAAW,OAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LintScript = void 0;
|
|
4
|
+
const src_1 = require("@villedemontreal/scripting/dist/src");
|
|
5
|
+
const configs_1 = require("../src/config/configs");
|
|
6
|
+
class LintScript extends src_1.ScriptBase {
|
|
7
|
+
get name() {
|
|
8
|
+
return 'lint';
|
|
9
|
+
}
|
|
10
|
+
get description() {
|
|
11
|
+
return `Run the ESLint validation (including TSLint and Prettier rules).`;
|
|
12
|
+
}
|
|
13
|
+
async main() {
|
|
14
|
+
await this.invokeShellCommand(`${configs_1.configs.libRoot}/node_modules/.bin/eslint`, [configs_1.configs.libRoot]);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.LintScript = LintScript;
|
|
18
|
+
//# sourceMappingURL=lint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../../scripts/lint.ts"],"names":[],"mappings":";;;AAAA,6DAAiE;AACjE,mDAAgD;AAEhD,MAAa,UAAW,SAAQ,gBAAU;IACxC,IAAI,IAAI;QACN,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,WAAW;QACb,OAAO,kEAAkE,CAAC;IAC5E,CAAC;IAES,KAAK,CAAC,IAAI;QAClB,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,iBAAO,CAAC,OAAO,2BAA2B,EAAE,CAAC,iBAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAClG,CAAC;CACF;AAZD,gCAYC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LintFixScript = void 0;
|
|
4
|
+
const src_1 = require("@villedemontreal/scripting/dist/src");
|
|
5
|
+
const configs_1 = require("../src/config/configs");
|
|
6
|
+
class LintFixScript extends src_1.ScriptBase {
|
|
7
|
+
get name() {
|
|
8
|
+
return 'lint-fix';
|
|
9
|
+
}
|
|
10
|
+
get description() {
|
|
11
|
+
return `Fix the code using ESLint validation (including TSLint and Prettier rules).`;
|
|
12
|
+
}
|
|
13
|
+
async main() {
|
|
14
|
+
await this.invokeShellCommand(`${configs_1.configs.libRoot}/node_modules/.bin/eslint`, [
|
|
15
|
+
'--fix',
|
|
16
|
+
configs_1.configs.libRoot,
|
|
17
|
+
]);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
exports.LintFixScript = LintFixScript;
|
|
21
|
+
//# sourceMappingURL=lintFix.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lintFix.js","sourceRoot":"","sources":["../../scripts/lintFix.ts"],"names":[],"mappings":";;;AAAA,6DAAiE;AACjE,mDAAgD;AAEhD,MAAa,aAAc,SAAQ,gBAAU;IAC3C,IAAI,IAAI;QACN,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,IAAI,WAAW;QACb,OAAO,6EAA6E,CAAC;IACvF,CAAC;IAES,KAAK,CAAC,IAAI;QAClB,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,iBAAO,CAAC,OAAO,2BAA2B,EAAE;YAC3E,OAAO;YACP,iBAAO,CAAC,OAAO;SAChB,CAAC,CAAC;IACL,CAAC;CACF;AAfD,sCAeC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ShowCoverageScript = void 0;
|
|
4
|
+
const core_1 = require("@caporal/core");
|
|
5
|
+
const src_1 = require("@villedemontreal/scripting/dist/src");
|
|
6
|
+
const path = require("path");
|
|
7
|
+
const configs_1 = require("../src/config/configs");
|
|
8
|
+
class ShowCoverageScript extends src_1.ScriptBase {
|
|
9
|
+
get name() {
|
|
10
|
+
return 'show-coverage';
|
|
11
|
+
}
|
|
12
|
+
get description() {
|
|
13
|
+
return `Open the tests coverage report.`;
|
|
14
|
+
}
|
|
15
|
+
get requiredDependencies() {
|
|
16
|
+
return ['nyc'];
|
|
17
|
+
}
|
|
18
|
+
async configure(command) {
|
|
19
|
+
command.option(`--report <path>`, `The relative path to the coverage report directory.`, {
|
|
20
|
+
default: `output/coverage`,
|
|
21
|
+
validator: core_1.program.STRING,
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
async main() {
|
|
25
|
+
if (configs_1.configs.isWindows) {
|
|
26
|
+
await this.invokeShellCommand('start', ['', this.getReportDir()], {
|
|
27
|
+
useShellOption: true,
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
await this.invokeShellCommand('open', [this.getReportDir()]);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
getReportDir() {
|
|
35
|
+
const reportDir = path.resolve(configs_1.configs.libRoot, this.options.report, 'lcov-report/index.html');
|
|
36
|
+
return reportDir;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.ShowCoverageScript = ShowCoverageScript;
|
|
40
|
+
//# sourceMappingURL=showCoverage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"showCoverage.js","sourceRoot":"","sources":["../../scripts/showCoverage.ts"],"names":[],"mappings":";;;AAAA,wCAAiD;AACjD,6DAAiE;AACjE,6BAA6B;AAC7B,mDAAgD;AAMhD,MAAa,kBAAmB,SAAQ,gBAAmB;IACzD,IAAI,IAAI;QACN,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,IAAI,WAAW;QACb,OAAO,iCAAiC,CAAC;IAC3C,CAAC;IAED,IAAc,oBAAoB;QAChC,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAES,KAAK,CAAC,SAAS,CAAC,OAAgB;QACxC,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,qDAAqD,EAAE;YACvF,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE,cAAO,CAAC,MAAM;SAC1B,CAAC,CAAC;IACL,CAAC;IAES,KAAK,CAAC,IAAI;QAClB,IAAI,iBAAO,CAAC,SAAS,EAAE;YACrB,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE;gBAChE,cAAc,EAAE,IAAI;aACrB,CAAC,CAAC;SACJ;aAAM;YACL,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;SAC9D;IACH,CAAC;IAES,YAAY;QACpB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAO,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;QAC/F,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAlCD,gDAkCC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TestScript = void 0;
|
|
4
|
+
const core_1 = require("@caporal/core");
|
|
5
|
+
const src_1 = require("@villedemontreal/scripting/dist/src");
|
|
6
|
+
const lint_1 = require("./lint");
|
|
7
|
+
const testUnits_1 = require("./testUnits");
|
|
8
|
+
class TestScript extends src_1.ScriptBase {
|
|
9
|
+
get name() {
|
|
10
|
+
return 'test';
|
|
11
|
+
}
|
|
12
|
+
get description() {
|
|
13
|
+
return `Run the unit tests + the linting validations.`;
|
|
14
|
+
}
|
|
15
|
+
async configure(command) {
|
|
16
|
+
command.option(`--bail`, `Stop the execution of the tests as soon as an error occures.`);
|
|
17
|
+
command.option(`--jenkins`, `Configure the tests to be run by Jenkins.`);
|
|
18
|
+
command.option(`--report <path>`, `The relative path to the report, when the tests are run for Jenkins.`, {
|
|
19
|
+
default: `output/test-results/report.xml`,
|
|
20
|
+
validator: core_1.program.STRING,
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
async main() {
|
|
24
|
+
await this.invokeScript(lint_1.LintScript, {}, {});
|
|
25
|
+
await this.invokeScript(testUnits_1.TestUnitsScript, this.options, {});
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.TestScript = TestScript;
|
|
29
|
+
//# sourceMappingURL=test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"","sources":["../../scripts/test.ts"],"names":[],"mappings":";;;AAAA,wCAAiD;AACjD,6DAAiE;AACjE,iCAAoC;AACpC,2CAA8C;AAQ9C,MAAa,UAAW,SAAQ,gBAAmB;IACjD,IAAI,IAAI;QACN,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,WAAW;QACb,OAAO,+CAA+C,CAAC;IACzD,CAAC;IAES,KAAK,CAAC,SAAS,CAAC,OAAgB;QACxC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,8DAA8D,CAAC,CAAC;QACzF,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,2CAA2C,CAAC,CAAC;QACzE,OAAO,CAAC,MAAM,CACZ,iBAAiB,EACjB,sEAAsE,EACtE;YACE,OAAO,EAAE,gCAAgC;YACzC,SAAS,EAAE,cAAO,CAAC,MAAM;SAC1B,CACF,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,IAAI;QAClB,MAAM,IAAI,CAAC,YAAY,CAAC,iBAAU,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC5C,MAAM,IAAI,CAAC,YAAY,CAAC,2BAAe,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC7D,CAAC;CACF;AA1BD,gCA0BC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TestUnitsScript = void 0;
|
|
4
|
+
const core_1 = require("@caporal/core");
|
|
5
|
+
const src_1 = require("@villedemontreal/scripting/dist/src");
|
|
6
|
+
const _ = require("lodash");
|
|
7
|
+
const configs_1 = require("../src/config/configs");
|
|
8
|
+
const TESTS_LOCATIONS = [`${configs_1.configs.libRoot}/dist/src/**/*.test.js`];
|
|
9
|
+
class TestUnitsScript extends src_1.ScriptBase {
|
|
10
|
+
get name() {
|
|
11
|
+
return 'test-units';
|
|
12
|
+
}
|
|
13
|
+
get description() {
|
|
14
|
+
return `Run the unit tests.`;
|
|
15
|
+
}
|
|
16
|
+
async configure(command) {
|
|
17
|
+
command.option(`--bail`, `Stop the execution of the tests as soon as an error occures.`);
|
|
18
|
+
command.option(`--jenkins`, `Configure the tests to be run by Jenkins.`);
|
|
19
|
+
command.option(`--report <path>`, `The relative path to the report, when the tests are run for Jenkins.`, {
|
|
20
|
+
default: `output/test-results/report.xml`,
|
|
21
|
+
validator: core_1.program.STRING,
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
get requiredDependencies() {
|
|
25
|
+
const deps = ['mocha'];
|
|
26
|
+
if (this.options.jenkins) {
|
|
27
|
+
deps.push('mocha-jenkins-reporter');
|
|
28
|
+
}
|
|
29
|
+
return deps;
|
|
30
|
+
}
|
|
31
|
+
addQuotes(tokens) {
|
|
32
|
+
if (_.isNil(tokens) || tokens.length === 0) {
|
|
33
|
+
return [];
|
|
34
|
+
}
|
|
35
|
+
return tokens.map((token) => {
|
|
36
|
+
return _.isNil(token) ? token : `"${_.trim(token, '"')}"`;
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
async main() {
|
|
40
|
+
const cmdArgs = [];
|
|
41
|
+
if (await this.isProjectDirectDependency(`nyc`)) {
|
|
42
|
+
cmdArgs.push(`${configs_1.configs.libRoot}/node_modules/nyc/bin/nyc`);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
this.logger.warn(`The "nyc" direct dependency was not found in your project. The tests will be run using Mocha only!`);
|
|
46
|
+
}
|
|
47
|
+
cmdArgs.push(`${configs_1.configs.libRoot}/node_modules/mocha/bin/_mocha`);
|
|
48
|
+
// ==========================================
|
|
49
|
+
// The test locations need to be quoted because
|
|
50
|
+
// they may contain a "**" wildcard that some
|
|
51
|
+
// shells may interpret differently otherwise!
|
|
52
|
+
//
|
|
53
|
+
// @see https://mochajs.org/#the-test-directory
|
|
54
|
+
// ==========================================
|
|
55
|
+
cmdArgs.push(...this.addQuotes(TESTS_LOCATIONS));
|
|
56
|
+
cmdArgs.push(`--exit`);
|
|
57
|
+
// ==========================================
|
|
58
|
+
// Stop testing as soon as one test fails?
|
|
59
|
+
// ==========================================
|
|
60
|
+
if (this.options.bail) {
|
|
61
|
+
cmdArgs.push('--bail');
|
|
62
|
+
}
|
|
63
|
+
// ==========================================
|
|
64
|
+
// For Jenkins, the path to the report to generate
|
|
65
|
+
// can be passed :
|
|
66
|
+
// - as a command line param :
|
|
67
|
+
// "run test-units --jenkins --report output/test-results/report.xml"
|
|
68
|
+
// - as an "JUNIT_REPORT_PATH" environment variable.
|
|
69
|
+
//
|
|
70
|
+
// By default, the path will be "output/test-results/report.xml"
|
|
71
|
+
// ==========================================
|
|
72
|
+
if (this.options.jenkins) {
|
|
73
|
+
if (this.options.report) {
|
|
74
|
+
process.env.JUNIT_REPORT_PATH = this.options.report;
|
|
75
|
+
}
|
|
76
|
+
else if (!process.env.JUNIT_REPORT_PATH) {
|
|
77
|
+
process.env.JUNIT_REPORT_PATH = 'output/test-results/report.xml';
|
|
78
|
+
}
|
|
79
|
+
this.logger.info('Exporting tests to junit file ' + process.env.JUNIT_REPORT_PATH);
|
|
80
|
+
cmdArgs.push('--reporter');
|
|
81
|
+
cmdArgs.push('mocha-jenkins-reporter');
|
|
82
|
+
}
|
|
83
|
+
try {
|
|
84
|
+
await this.invokeShellCommand('node', cmdArgs, {
|
|
85
|
+
useTestsNodeAppInstance: true,
|
|
86
|
+
});
|
|
87
|
+
this.logger.info(" \u21b3 type 'run show-coverage' (or './run show-coverage' on Linux/Mac) to display the HTML report");
|
|
88
|
+
}
|
|
89
|
+
catch (err) {
|
|
90
|
+
throw new Error('Some unit tests failed');
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
exports.TestUnitsScript = TestUnitsScript;
|
|
95
|
+
//# sourceMappingURL=testUnits.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testUnits.js","sourceRoot":"","sources":["../../scripts/testUnits.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WatchScript = void 0;
|
|
4
|
+
const general_utils_1 = require("@villedemontreal/general-utils");
|
|
5
|
+
const src_1 = require("@villedemontreal/scripting/dist/src");
|
|
6
|
+
const _ = require("lodash");
|
|
7
|
+
const path = require("path");
|
|
8
|
+
const configs_1 = require("../src/config/configs");
|
|
9
|
+
const notifier = require('node-notifier');
|
|
10
|
+
class WatchScript extends src_1.ScriptBase {
|
|
11
|
+
get name() {
|
|
12
|
+
return 'watch';
|
|
13
|
+
}
|
|
14
|
+
get description() {
|
|
15
|
+
return `Start Typescript incremental compilation. \
|
|
16
|
+
You can run this script in an external terminal and then debug your \
|
|
17
|
+
application in your IDE. When you have made some modifications and want \
|
|
18
|
+
to test them, you stop your application and restart it \
|
|
19
|
+
using the "Debug Locally - fast" launch configuration (if you are \
|
|
20
|
+
in VSCode) or \`run start --nc\`. No compilation is required at \
|
|
21
|
+
that point since the incremental compilation is already done by this script.`;
|
|
22
|
+
}
|
|
23
|
+
async configure(command) {
|
|
24
|
+
command.option(`--dn`, `Disable the visual notifications`);
|
|
25
|
+
}
|
|
26
|
+
async main() {
|
|
27
|
+
this.logger.info(`\n==========================================\n` +
|
|
28
|
+
`Starting incremental compilation...\n` +
|
|
29
|
+
`==========================================\n`);
|
|
30
|
+
const projectName = require(configs_1.configs.libRoot + '/package.json').namae;
|
|
31
|
+
let ignoreNextCompilationComplete = false;
|
|
32
|
+
const compilationCompletetRegEx = /(Compilation complete)|(Found 0 errors)/;
|
|
33
|
+
// eslint-disable-next-line no-control-regex
|
|
34
|
+
const errorRegEx = /(: error)|(error)/;
|
|
35
|
+
const outputHandler = (stdoutData, stderrData) => {
|
|
36
|
+
if (stdoutData) {
|
|
37
|
+
const stdoutDataClean = stdoutData.toString();
|
|
38
|
+
this.logger.info(stdoutDataClean);
|
|
39
|
+
if (this.options.dn) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
let error = false;
|
|
43
|
+
if (errorRegEx.test(stdoutDataClean)) {
|
|
44
|
+
error = true;
|
|
45
|
+
notifier.notify({
|
|
46
|
+
title: projectName,
|
|
47
|
+
message: 'incremental compilation error',
|
|
48
|
+
icon: path.normalize(`${__dirname}/../../../assets/notifications/error.png`),
|
|
49
|
+
sound: false,
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
else if (compilationCompletetRegEx.test(stdoutDataClean)) {
|
|
53
|
+
if (!ignoreNextCompilationComplete) {
|
|
54
|
+
notifier.notify({
|
|
55
|
+
title: projectName,
|
|
56
|
+
message: 'incremental compilation done',
|
|
57
|
+
icon: path.normalize(`${__dirname}/../../../assets/notifications/success.png`),
|
|
58
|
+
sound: false,
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
ignoreNextCompilationComplete = error && !compilationCompletetRegEx.test(stdoutDataClean);
|
|
63
|
+
}
|
|
64
|
+
if (stderrData && !stderrData.match(/^Debugger attached.(\n|\r\n)$/)) {
|
|
65
|
+
this.logger.error(stderrData);
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
// eslint-disable-next-line no-constant-condition
|
|
69
|
+
while (true) {
|
|
70
|
+
try {
|
|
71
|
+
await this.invokeShellCommand('node', [
|
|
72
|
+
`${configs_1.configs.libRoot}/node_modules/typescript/lib/tsc.js`,
|
|
73
|
+
'--project',
|
|
74
|
+
configs_1.configs.libRoot,
|
|
75
|
+
'--watch',
|
|
76
|
+
'--pretty',
|
|
77
|
+
], {
|
|
78
|
+
outputHandler,
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
catch (err) {
|
|
82
|
+
// ==========================================
|
|
83
|
+
// @see https://stackoverflow.com/a/25444766/843699
|
|
84
|
+
// ==========================================
|
|
85
|
+
if (_.isString(err) && err.indexOf('3221225786') >= 0) {
|
|
86
|
+
this.logger.error('Exiting...');
|
|
87
|
+
process.exit(0);
|
|
88
|
+
}
|
|
89
|
+
this.logger.error('Error, restarting incremental compilation in a second : ' + String(err));
|
|
90
|
+
await general_utils_1.utils.sleep(1000);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
exports.WatchScript = WatchScript;
|
|
96
|
+
//# sourceMappingURL=watch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watch.js","sourceRoot":"","sources":["../../scripts/watch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.configs = exports.Configs = void 0;
|
|
4
|
+
const os = require("os");
|
|
5
|
+
const path = require("path");
|
|
4
6
|
/**
|
|
5
7
|
* Lib configs
|
|
6
8
|
*/
|
|
7
9
|
class Configs {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.libRoot = path.normalize(__dirname + '/../../..');
|
|
12
|
+
this.isWindows = os.platform() === 'win32';
|
|
13
|
+
}
|
|
8
14
|
/**
|
|
9
15
|
* The Logger creator
|
|
10
16
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configs.js","sourceRoot":"","sources":["../../../src/config/configs.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"configs.js","sourceRoot":"","sources":["../../../src/config/configs.ts"],"names":[],"mappings":";;;AACA,yBAAyB;AACzB,6BAA6B;AAE7B;;GAEG;AACH,MAAa,OAAO;IAKlB;QACE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC,QAAQ,EAAE,KAAK,OAAO,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,IAAI,aAAa;QACf,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACxB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;SACxE;QACD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;OAEG;IACI,gBAAgB,CAAC,aAAwC;QAC9D,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;IACtC,CAAC;CACF;AA1BD,0BA0BC;AAEY,QAAA,OAAO,GAAY,IAAI,OAAO,EAAE,CAAC"}
|
|
@@ -24,16 +24,16 @@ class Constants {
|
|
|
24
24
|
connectionString: 'mock',
|
|
25
25
|
connectionOptions: {
|
|
26
26
|
useNewUrlParser: true,
|
|
27
|
-
useUnifiedTopology: true
|
|
27
|
+
useUnifiedTopology: true,
|
|
28
28
|
},
|
|
29
29
|
updater: {
|
|
30
30
|
lockMaxAgeSeconds: 30,
|
|
31
31
|
mongoSchemaUpdatesDirPath: '/dist/tests/testingMongoUpdates',
|
|
32
|
-
appSchemaCollectionName: 'testAppSchema'
|
|
32
|
+
appSchemaCollectionName: 'testAppSchema',
|
|
33
33
|
},
|
|
34
34
|
mockServer: {
|
|
35
|
-
serverVersion: '4.0.16'
|
|
36
|
-
}
|
|
35
|
+
serverVersion: '4.0.16',
|
|
36
|
+
},
|
|
37
37
|
};
|
|
38
38
|
}
|
|
39
39
|
/**
|
|
@@ -48,7 +48,7 @@ class Constants {
|
|
|
48
48
|
* This option is only available on the "development"
|
|
49
49
|
* environment, or when tests are ran.
|
|
50
50
|
*/
|
|
51
|
-
MOCK_CONNECTION_STRING: 'mock'
|
|
51
|
+
MOCK_CONNECTION_STRING: 'mock',
|
|
52
52
|
},
|
|
53
53
|
/**
|
|
54
54
|
* The names of the Mongo collections used in
|
|
@@ -59,7 +59,7 @@ class Constants {
|
|
|
59
59
|
* Special collection that stores informations about the
|
|
60
60
|
* schema currently installed for the application.
|
|
61
61
|
*/
|
|
62
|
-
APP_SCHEMA: 'appSchema'
|
|
62
|
+
APP_SCHEMA: 'appSchema',
|
|
63
63
|
},
|
|
64
64
|
/**
|
|
65
65
|
* Mongo error codes
|
|
@@ -68,7 +68,7 @@ class Constants {
|
|
|
68
68
|
/**
|
|
69
69
|
* The code for a Mongo "duplicate key" error.
|
|
70
70
|
*/
|
|
71
|
-
DUPLICATE_KEY: 11000
|
|
71
|
+
DUPLICATE_KEY: 11000,
|
|
72
72
|
},
|
|
73
73
|
/**
|
|
74
74
|
* Mongoose constants
|
|
@@ -81,21 +81,21 @@ class Constants {
|
|
|
81
81
|
/**
|
|
82
82
|
* The code for a Mongoose "required" error.
|
|
83
83
|
*/
|
|
84
|
-
REQUIRED_FIELD: 'required'
|
|
84
|
+
REQUIRED_FIELD: 'required',
|
|
85
85
|
},
|
|
86
86
|
/**
|
|
87
87
|
* Mongoose error kinds
|
|
88
88
|
*/
|
|
89
89
|
errorKinds: {
|
|
90
|
-
OBJECT_ID: 'ObjectId'
|
|
90
|
+
OBJECT_ID: 'ObjectId',
|
|
91
91
|
},
|
|
92
92
|
/**
|
|
93
93
|
* Mongoose error names
|
|
94
94
|
*/
|
|
95
95
|
errorNames: {
|
|
96
|
-
CAST_ERROR: 'CastError'
|
|
97
|
-
}
|
|
98
|
-
}
|
|
96
|
+
CAST_ERROR: 'CastError',
|
|
97
|
+
},
|
|
98
|
+
},
|
|
99
99
|
};
|
|
100
100
|
}
|
|
101
101
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/config/constants.ts"],"names":[],"mappings":";;;AAAA,6CAA6C;AAC7C,wBAAwB;AACxB,6CAA6C;AAC7C,iDAAgD;AAChD,6BAA6B;AAG7B;;GAEG;AACH,MAAa,SAAS;IAgBpB;QACE,oCAAoC;QACpC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,GAAG,oBAAO,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACb,OAAO;YACL,YAAY,EAAE,KAAK;YACnB,gBAAgB,EAAE,MAAM;YACxB,iBAAiB,EAAE;gBACjB,eAAe,EAAE,IAAI;gBACrB,kBAAkB,EAAE,IAAI;aACzB;YACD,OAAO,EAAE;gBACP,iBAAiB,EAAE,EAAE;gBACrB,yBAAyB,EAAE,iCAAiC;gBAC5D,uBAAuB,EAAE,eAAe;aACzC;YACD,UAAU,EAAE;gBACV,aAAa,EAAE,QAAQ;aACxB;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,OAAO;YACL,OAAO,EAAE;gBACP;;;;;mBAKG;gBACH,sBAAsB,EAAE,MAAM;aAC/B;YACD;;;eAGG;YACH,eAAe,EAAE;gBACf;;;mBAGG;gBACH,UAAU,EAAE,WAAW;aACxB;YACD;;eAEG;YACH,eAAe,EAAE;gBACf;;mBAEG;gBACH,aAAa,EAAE,KAAK;aACrB;YAED;;eAEG;YACH,QAAQ,EAAE;gBACR;;mBAEG;gBACH,UAAU,EAAE;oBACV;;uBAEG;oBACH,cAAc,EAAE,UAAU;iBAC3B;gBAED;;mBAEG;gBACH,UAAU,EAAE;oBACV,SAAS,EAAE,UAAU;iBACtB;gBAED;;mBAEG;gBACH,UAAU,EAAE;oBACV,UAAU,EAAE,WAAW;iBACxB;aACF;SACF,CAAC;IACJ,CAAC;CACF;AA7GD,8BA6GC;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/config/constants.ts"],"names":[],"mappings":";;;AAAA,6CAA6C;AAC7C,wBAAwB;AACxB,6CAA6C;AAC7C,iDAAgD;AAChD,6BAA6B;AAG7B;;GAEG;AACH,MAAa,SAAS;IAgBpB;QACE,oCAAoC;QACpC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,GAAG,oBAAO,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACb,OAAO;YACL,YAAY,EAAE,KAAK;YACnB,gBAAgB,EAAE,MAAM;YACxB,iBAAiB,EAAE;gBACjB,eAAe,EAAE,IAAI;gBACrB,kBAAkB,EAAE,IAAI;aACzB;YACD,OAAO,EAAE;gBACP,iBAAiB,EAAE,EAAE;gBACrB,yBAAyB,EAAE,iCAAiC;gBAC5D,uBAAuB,EAAE,eAAe;aACzC;YACD,UAAU,EAAE;gBACV,aAAa,EAAE,QAAQ;aACxB;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,OAAO;YACL,OAAO,EAAE;gBACP;;;;;mBAKG;gBACH,sBAAsB,EAAE,MAAM;aAC/B;YACD;;;eAGG;YACH,eAAe,EAAE;gBACf;;;mBAGG;gBACH,UAAU,EAAE,WAAW;aACxB;YACD;;eAEG;YACH,eAAe,EAAE;gBACf;;mBAEG;gBACH,aAAa,EAAE,KAAK;aACrB;YAED;;eAEG;YACH,QAAQ,EAAE;gBACR;;mBAEG;gBACH,UAAU,EAAE;oBACV;;uBAEG;oBACH,cAAc,EAAE,UAAU;iBAC3B;gBAED;;mBAEG;gBACH,UAAU,EAAE;oBACV,SAAS,EAAE,UAAU;iBACtB;gBAED;;mBAEG;gBACH,UAAU,EAAE;oBACV,UAAU,EAAE,WAAW;iBACxB;aACF;SACF,CAAC;IACJ,CAAC;CACF;AA7GD,8BA6GC;AAEY,QAAA,SAAS,GAAc,IAAI,SAAS,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/config/init.ts"],"names":[],"mappings":";;;AACA,uCAAoC;AAEpC,IAAI,gBAAgB,
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/config/init.ts"],"names":[],"mappings":";;;AACA,uCAAoC;AAEpC,IAAI,gBAAgB,GAAG,KAAK,CAAC;AAC7B;;GAEG;AACH,SAAgB,IAAI,CAAC,aAAwC;IAC3D,IAAI,CAAC,aAAa,EAAE;QAClB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;KACpD;IAED,iBAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAExC,gBAAgB,GAAG,IAAI,CAAC;AAC1B,CAAC;AARD,oBAQC;AAED;;GAEG;AACH,SAAgB,QAAQ;IACtB,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAFD,4BAEC"}
|
|
@@ -5,7 +5,7 @@ const general_utils_1 = require("@villedemontreal/general-utils");
|
|
|
5
5
|
const _ = require("lodash");
|
|
6
6
|
const logger_1 = require("../utils/logger");
|
|
7
7
|
const constants_1 = require("./constants");
|
|
8
|
-
const logger = logger_1.createLogger('mongooseConfigs');
|
|
8
|
+
const logger = (0, logger_1.createLogger)('mongooseConfigs');
|
|
9
9
|
/**
|
|
10
10
|
* Mongoose configs with default values.
|
|
11
11
|
*/
|
|
@@ -36,7 +36,7 @@ class MongooseConfigs {
|
|
|
36
36
|
auto_reconnect: true,
|
|
37
37
|
reconnectTries: 604800,
|
|
38
38
|
reconnectInterval: 1000,
|
|
39
|
-
useNewUrlParser: true
|
|
39
|
+
useNewUrlParser: true,
|
|
40
40
|
};
|
|
41
41
|
this.updater = {
|
|
42
42
|
appSchemaCollectionName: constants_1.constants.mongo.collectionNames.APP_SCHEMA,
|
|
@@ -46,10 +46,10 @@ class MongooseConfigs {
|
|
|
46
46
|
* where the update files are.
|
|
47
47
|
* Required!
|
|
48
48
|
*/
|
|
49
|
-
mongoSchemaUpdatesDirPath: null
|
|
49
|
+
mongoSchemaUpdatesDirPath: null,
|
|
50
50
|
};
|
|
51
51
|
this.mockServer = {
|
|
52
|
-
serverVersion: '3.2.1'
|
|
52
|
+
serverVersion: '3.2.1',
|
|
53
53
|
};
|
|
54
54
|
if (_.isNil(overridingConfigs) ||
|
|
55
55
|
_.isNil(overridingConfigs.updater) ||
|
|
@@ -80,7 +80,8 @@ class MongooseConfigs {
|
|
|
80
80
|
this.applyUpdates = overridingConfigs.applyUpdates;
|
|
81
81
|
}
|
|
82
82
|
if (!_.isNil(overridingConfigs.connectionString)) {
|
|
83
|
-
if (!_.isString(overridingConfigs.connectionString) ||
|
|
83
|
+
if (!_.isString(overridingConfigs.connectionString) ||
|
|
84
|
+
general_utils_1.utils.isBlank(overridingConfigs.connectionString)) {
|
|
84
85
|
throw new Error(`The connectionString config is not valid : ${overridingConfigs.connectionString}`);
|
|
85
86
|
}
|
|
86
87
|
this.connectionString = overridingConfigs.connectionString;
|
|
@@ -94,7 +95,8 @@ class MongooseConfigs {
|
|
|
94
95
|
}
|
|
95
96
|
this.connectionOptions = overridingConfigs.connectionOptions;
|
|
96
97
|
}
|
|
97
|
-
if (!_.isNil(overridingConfigs.mockServer) &&
|
|
98
|
+
if (!_.isNil(overridingConfigs.mockServer) &&
|
|
99
|
+
!_.isNil(overridingConfigs.mockServer.serverVersion)) {
|
|
98
100
|
if (!_.isString(overridingConfigs.mockServer.serverVersion) ||
|
|
99
101
|
general_utils_1.utils.isBlank(overridingConfigs.mockServer.serverVersion)) {
|
|
100
102
|
throw new Error(`The mockServer.serverVersion config is not valid : ${overridingConfigs.mockServer.serverVersion}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mongooseConfigs.js","sourceRoot":"","sources":["../../../src/config/mongooseConfigs.ts"],"names":[],"mappings":";;;AAAA,kEAAuD;AACvD,4BAA4B;AAC5B,4CAA+C;AAC/C,2CAAwC;AAExC,MAAM,MAAM,GAAG,qBAAY,
|
|
1
|
+
{"version":3,"file":"mongooseConfigs.js","sourceRoot":"","sources":["../../../src/config/mongooseConfigs.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
8
12
|
}));
|
|
9
13
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
-
for (var p in m) if (p !== "default" && !
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
15
|
};
|
|
12
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
17
|
__exportStar(require("./mongoUtils"), exports);
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,qDAAmC;AAEnC,gDAA8B;AAE9B,6CAA6C;AAC7C,gDAAgD;AAChD,6CAA6C;AAC7C,qCAAqC;AACrC,6CAA6C;AAC7C,gDAA8B;AAC9B,uDAAqC;AACrC,kFAAkF"}
|