mongodash 1.0.0 → 1.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/CHANGELOG.md +38 -0
- package/dist/lib/OnError.js +17 -1
- package/dist/lib/OnError.js.map +1 -1
- package/dist/lib/OnInfo.js +26 -0
- package/dist/lib/OnInfo.js.map +1 -0
- package/dist/lib/createContinuousLock.js +3 -3
- package/dist/lib/createContinuousLock.js.map +1 -1
- package/dist/lib/cronTasks.js +32 -7
- package/dist/lib/cronTasks.js.map +1 -1
- package/dist/lib/getCollection.js +1 -1
- package/dist/lib/getMongoClient.js +1 -1
- package/dist/lib/index.js +20 -19
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/initPromise.js +17 -0
- package/dist/lib/initPromise.js.map +1 -0
- package/dist/lib/withLock.js +19 -5
- package/dist/lib/withLock.js.map +1 -1
- package/dist/lib/withTransaction.js +1 -1
- package/dist/types/OnError.d.ts +2 -0
- package/dist/types/OnInfo.d.ts +6 -0
- package/dist/types/createContinuousLock.d.ts +3 -4
- package/dist/types/cronTasks.d.ts +7 -1
- package/dist/types/getMongoClient.d.ts +1 -1
- package/dist/types/index.d.ts +9 -3
- package/dist/types/initPromise.d.ts +4 -0
- package/dist/types/withLock.d.ts +7 -2
- package/package.json +15 -7
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,41 @@
|
|
|
1
|
+
# [1.2.0](https://github.com/VaclavObornik/mongodash/compare/v1.1.1...v1.2.0) (2021-12-15)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Features
|
|
5
|
+
|
|
6
|
+
* added onInfo option for convenient logging ([5f8c45a](https://github.com/VaclavObornik/mongodash/commit/5f8c45afcfbabb824310573d99231d42480a4ff5))
|
|
7
|
+
* typescript update ([37b466d](https://github.com/VaclavObornik/mongodash/commit/37b466db1f90d88d9f6f5aa40a616a26fb51a2ee))
|
|
8
|
+
|
|
9
|
+
## [1.1.1](https://github.com/VaclavObornik/mongodash/compare/v1.1.0...v1.1.1) (2021-12-14)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Bug Fixes
|
|
13
|
+
|
|
14
|
+
* bump cron-parser from 3.5.0 to 4.2.0 ([0bb7e37](https://github.com/VaclavObornik/mongodash/commit/0bb7e37042d61c39e2d1287b9c4d6543b3f3827b))
|
|
15
|
+
|
|
16
|
+
# [1.1.0](https://github.com/VaclavObornik/mongodash/compare/v1.0.2...v1.1.0) (2021-12-13)
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
### Features
|
|
20
|
+
|
|
21
|
+
* cron task registration can be called before monogdash.init ([181747d](https://github.com/VaclavObornik/mongodash/commit/181747ddd7a1dbba7671561bc3e49ae0eddb3ee0))
|
|
22
|
+
* isLockAlreadyAcquiredError function introduced ([2741bff](https://github.com/VaclavObornik/mongodash/commit/2741bffbfcc7858175fbff8ea62ffb0f42af4a86))
|
|
23
|
+
* WithLockOptions exported ([7a6443a](https://github.com/VaclavObornik/mongodash/commit/7a6443a568bffa60fff852bf1c072938bdf20481))
|
|
24
|
+
|
|
25
|
+
## [1.0.2](https://github.com/VaclavObornik/mongodash/compare/v1.0.1...v1.0.2) (2021-12-06)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
### Bug Fixes
|
|
29
|
+
|
|
30
|
+
* type update update ([c56f973](https://github.com/VaclavObornik/mongodash/commit/c56f97325131b011aa7d0e7f1b95bf5ce3dbf527))
|
|
31
|
+
|
|
32
|
+
## [1.0.1](https://github.com/VaclavObornik/mongodash/compare/v1.0.0...v1.0.1) (2021-08-27)
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
### Bug Fixes
|
|
36
|
+
|
|
37
|
+
* added ES Module Entrypoint ([9899de6](https://github.com/VaclavObornik/mongodash/commit/9899de6d3a93b2de915a33f9fc05ec1c2f68b1a6))
|
|
38
|
+
|
|
1
39
|
## [0.10.8](https://github.com/VaclavObornik/mongodash/compare/v0.10.7...v0.10.8) (2021-08-27)
|
|
2
40
|
|
|
3
41
|
|
package/dist/lib/OnError.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**!
|
|
2
|
-
* mongodash v1.
|
|
2
|
+
* mongodash v1.2.0
|
|
3
3
|
* https://github.com/VaclavObornik/mongodash.git
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2021 Václav Oborník
|
|
@@ -7,4 +7,20 @@
|
|
|
7
7
|
*/
|
|
8
8
|
"use strict";
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.secureOnError = exports.defaultOnError = void 0;
|
|
11
|
+
const defaultOnError = (error) => {
|
|
12
|
+
console.error(error);
|
|
13
|
+
};
|
|
14
|
+
exports.defaultOnError = defaultOnError;
|
|
15
|
+
function secureOnError(onError) {
|
|
16
|
+
return (error) => {
|
|
17
|
+
try {
|
|
18
|
+
onError(error);
|
|
19
|
+
}
|
|
20
|
+
catch (onErrorFailure) {
|
|
21
|
+
// intentionally suppress
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
exports.secureOnError = secureOnError;
|
|
10
26
|
//# sourceMappingURL=OnError.js.map
|
package/dist/lib/OnError.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OnError.js","sourceRoot":"","sources":["../../src/OnError.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"OnError.js","sourceRoot":"","sources":["../../src/OnError.ts"],"names":[],"mappings":";;;AAEO,MAAM,cAAc,GAAY,CAAC,KAAK,EAAE,EAAE;IAC7C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACzB,CAAC,CAAC;AAFW,QAAA,cAAc,kBAEzB;AAEF,SAAgB,aAAa,CAAC,OAAgB;IAC1C,OAAO,CAAC,KAAK,EAAE,EAAE;QACb,IAAI;YACA,OAAO,CAAC,KAAK,CAAC,CAAC;SAClB;QAAC,OAAO,cAAc,EAAE;YACrB,yBAAyB;SAC5B;IACL,CAAC,CAAC;AACN,CAAC;AARD,sCAQC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**!
|
|
2
|
+
* mongodash v1.2.0
|
|
3
|
+
* https://github.com/VaclavObornik/mongodash.git
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) 2021 Václav Oborník
|
|
6
|
+
* Released under the MIT license
|
|
7
|
+
*/
|
|
8
|
+
"use strict";
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.secureOnInfo = exports.defaultOnInfo = void 0;
|
|
11
|
+
const defaultOnInfo = (info) => {
|
|
12
|
+
console.log(info.message);
|
|
13
|
+
};
|
|
14
|
+
exports.defaultOnInfo = defaultOnInfo;
|
|
15
|
+
function secureOnInfo(onInfo) {
|
|
16
|
+
return (info) => {
|
|
17
|
+
try {
|
|
18
|
+
onInfo(info);
|
|
19
|
+
}
|
|
20
|
+
catch (onErrorFailure) {
|
|
21
|
+
// intentionally suppress
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
exports.secureOnInfo = secureOnInfo;
|
|
26
|
+
//# sourceMappingURL=OnInfo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnInfo.js","sourceRoot":"","sources":["../../src/OnInfo.ts"],"names":[],"mappings":";;;AAEO,MAAM,aAAa,GAAW,CAAC,IAAI,EAAE,EAAE;IAC1C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC,CAAC;AAFW,QAAA,aAAa,iBAExB;AAEF,SAAgB,YAAY,CAAC,MAAc;IACvC,OAAO,CAAC,IAAI,EAAE,EAAE;QACZ,IAAI;YACA,MAAM,CAAC,IAAI,CAAC,CAAC;SAChB;QAAC,OAAO,cAAc,EAAE;YACrB,yBAAyB;SAC5B;IACL,CAAC,CAAC;AACN,CAAC;AARD,oCAQC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**!
|
|
2
|
-
* mongodash v1.
|
|
2
|
+
* mongodash v1.2.0
|
|
3
3
|
* https://github.com/VaclavObornik/mongodash.git
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2021 Václav Oborník
|
|
@@ -11,14 +11,14 @@ exports.createContinuousLock = void 0;
|
|
|
11
11
|
function createContinuousLock(collection, documentId, lockProperty, lockTime, onError) {
|
|
12
12
|
let taskInProgress = true;
|
|
13
13
|
let prolongLockTimeoutId = null;
|
|
14
|
-
let lastProlongPromise = Promise.resolve(); // all errors
|
|
14
|
+
let lastProlongPromise = Promise.resolve(); // all errors have to be suppressed
|
|
15
15
|
function scheduleLockProlong() {
|
|
16
16
|
prolongLockTimeoutId = setTimeout(() => {
|
|
17
17
|
prolongLockTimeoutId = null;
|
|
18
18
|
lastProlongPromise = (async () => {
|
|
19
19
|
try {
|
|
20
20
|
// debug('performing lock prolong');
|
|
21
|
-
await collection.updateOne({ _id: documentId }, { $set: {
|
|
21
|
+
await collection.updateOne({ _id: documentId }, { $set: { [lockProperty]: new Date(Date.now() + lockTime) } });
|
|
22
22
|
}
|
|
23
23
|
catch (err) {
|
|
24
24
|
// debug('Error during task prolong', err);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createContinuousLock.js","sourceRoot":"","sources":["../../src/createContinuousLock.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"createContinuousLock.js","sourceRoot":"","sources":["../../src/createContinuousLock.ts"],"names":[],"mappings":";;;AAKA,SAAgB,oBAAoB,CAChC,UAAoC,EACpC,UAAkB,EAClB,YAAoB,EACpB,QAAgB,EAChB,OAAgB;IAEhB,IAAI,cAAc,GAAG,IAAI,CAAC;IAC1B,IAAI,oBAAoB,GAAyC,IAAI,CAAC;IACtE,IAAI,kBAAkB,GAAqB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,mCAAmC;IAEjG,SAAS,mBAAmB;QACxB,oBAAoB,GAAG,UAAU,CAAC,GAAG,EAAE;YACnC,oBAAoB,GAAG,IAAI,CAAC;YAC5B,kBAAkB,GAAG,CAAC,KAAK,IAAI,EAAE;gBAC7B,IAAI;oBACA,oCAAoC;oBACpC,MAAM,UAAU,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,UAAiB,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,EAAE,EAAS,CAAC,CAAC;iBAChI;gBAAC,OAAO,GAAG,EAAE;oBACV,2CAA2C;oBAC3C,OAAO,CAAC,GAAY,CAAC,CAAC;iBACzB;wBAAS;oBACN,IAAI,cAAc,EAAE;wBAChB,yCAAyC;wBACzC,mBAAmB,EAAE,CAAC;qBACzB;iBACJ;YACL,CAAC,CAAC,EAAE,CAAC;QACT,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;IACrB,CAAC;IAED,mBAAmB,EAAE,CAAC;IAEtB,0BAA0B;IAC1B,OAAO,KAAK,IAAI,EAAE;QACd,cAAc,GAAG,KAAK,CAAC,CAAC,0BAA0B;QAClD,IAAI,oBAAoB,EAAE;YACtB,YAAY,CAAC,oBAAoB,CAAC,CAAC;SACtC;QACD,MAAM,kBAAkB,CAAC;IAC7B,CAAC,CAAC;AACN,CAAC;AAzCD,oDAyCC"}
|
package/dist/lib/cronTasks.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**!
|
|
2
|
-
* mongodash v1.
|
|
2
|
+
* mongodash v1.2.0
|
|
3
3
|
* https://github.com/VaclavObornik/mongodash.git
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2021 Václav Oborník
|
|
@@ -7,12 +7,17 @@
|
|
|
7
7
|
*/
|
|
8
8
|
"use strict";
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.cronTask = exports.scheduleCronTaskImmediately = exports.startCronTasks = exports.stopCronTasks = exports.init = exports.runCronTask = void 0;
|
|
10
|
+
exports.cronTask = exports.scheduleCronTaskImmediately = exports.startCronTasks = exports.stopCronTasks = exports.init = exports.runCronTask = exports.CODE_CRON_TASK_FAILED = exports.CODE_CRON_TASK_SCHEDULED = exports.CODE_CRON_TASK_FINISHED = exports.CODE_CRON_TASK_STARTED = void 0;
|
|
11
11
|
// import * as _debug from 'debug';
|
|
12
12
|
const cron_parser_1 = require("cron-parser");
|
|
13
13
|
const parse_duration_1 = require("parse-duration");
|
|
14
14
|
const createContinuousLock_1 = require("./createContinuousLock");
|
|
15
15
|
const getCollection_1 = require("./getCollection");
|
|
16
|
+
const initPromise_1 = require("./initPromise");
|
|
17
|
+
exports.CODE_CRON_TASK_STARTED = 'cronTaskStarted';
|
|
18
|
+
exports.CODE_CRON_TASK_FINISHED = 'cronTaskFinished';
|
|
19
|
+
exports.CODE_CRON_TASK_SCHEDULED = 'cronTaskScheduled';
|
|
20
|
+
exports.CODE_CRON_TASK_FAILED = 'cronTaskFailed';
|
|
16
21
|
class TaskDocument {
|
|
17
22
|
constructor(_id, runSince) {
|
|
18
23
|
this._id = _id;
|
|
@@ -40,6 +45,7 @@ const state = {
|
|
|
40
45
|
cronExpressionParserOptions: {},
|
|
41
46
|
};
|
|
42
47
|
let _onError;
|
|
48
|
+
let _onInfo;
|
|
43
49
|
function dateInMillis(milliseconds) {
|
|
44
50
|
return new Date(Date.now() + milliseconds);
|
|
45
51
|
}
|
|
@@ -71,8 +77,8 @@ function createIntervalFunctionFromScalar(interval) {
|
|
|
71
77
|
}
|
|
72
78
|
return () => dateInMillis(duration);
|
|
73
79
|
}
|
|
74
|
-
async function getNextRunDate(
|
|
75
|
-
const maybeDate = await
|
|
80
|
+
async function getNextRunDate(intervalFunction) {
|
|
81
|
+
const maybeDate = await intervalFunction();
|
|
76
82
|
if (maybeDate instanceof Date) {
|
|
77
83
|
return maybeDate;
|
|
78
84
|
}
|
|
@@ -167,19 +173,25 @@ async function findATaskToRun(enforcedTask) {
|
|
|
167
173
|
async function processTask(task, enforcedTask) {
|
|
168
174
|
// debug(`processing task ${task.taskId}`);
|
|
169
175
|
let taskError = null;
|
|
176
|
+
let nextRunDate;
|
|
177
|
+
let nextRunScheduled = false;
|
|
170
178
|
// todo solve the "any"
|
|
171
179
|
const stopContinuousLock = (0, createContinuousLock_1.createContinuousLock)(state.collection, task.taskId, 'lockedTill', lockTime, _onError);
|
|
172
180
|
try {
|
|
173
181
|
await (function mongoDashRunTaskNotCyclic() {
|
|
182
|
+
_onInfo({ message: `Cron task '${task.taskId}' started.`, taskId: task.taskId, code: exports.CODE_CRON_TASK_STARTED });
|
|
174
183
|
return task.task();
|
|
175
184
|
})();
|
|
185
|
+
_onInfo({ message: `Cron task '${task.taskId}' finished.`, taskId: task.taskId, code: exports.CODE_CRON_TASK_FINISHED });
|
|
176
186
|
}
|
|
177
187
|
catch (err) {
|
|
188
|
+
const reason = err instanceof Error ? err.message : `${err}`;
|
|
189
|
+
_onInfo({ message: `Cron task '${task.taskId}' failed.`, taskId: task.taskId, code: exports.CODE_CRON_TASK_FAILED, reason });
|
|
178
190
|
taskError = err;
|
|
179
191
|
}
|
|
180
192
|
try {
|
|
181
193
|
await stopContinuousLock(); // to avoid possibility of lock after the following document update
|
|
182
|
-
|
|
194
|
+
nextRunDate = await getNextRunDate(task.intervalFunction);
|
|
183
195
|
// debug(`scheduling task ${task.taskId} to run in ${nextRunDate.getTime() - Date.now()}ms`);
|
|
184
196
|
await state.collection.updateOne({ _id: task.taskId }, {
|
|
185
197
|
$set: {
|
|
@@ -189,6 +201,7 @@ async function processTask(task, enforcedTask) {
|
|
|
189
201
|
'runLog.0.finishedAt': new Date(),
|
|
190
202
|
},
|
|
191
203
|
});
|
|
204
|
+
nextRunScheduled = true;
|
|
192
205
|
}
|
|
193
206
|
finally {
|
|
194
207
|
if (enforcedTask) {
|
|
@@ -202,6 +215,15 @@ async function processTask(task, enforcedTask) {
|
|
|
202
215
|
else if (taskError) {
|
|
203
216
|
_onError(taskError);
|
|
204
217
|
}
|
|
218
|
+
// we want to inform about the scheduling after the
|
|
219
|
+
if (nextRunScheduled) {
|
|
220
|
+
_onInfo({
|
|
221
|
+
message: `Cron task '${task.taskId}' scheduled to ${nextRunDate.toISOString()}.`,
|
|
222
|
+
taskId: task.taskId,
|
|
223
|
+
code: exports.CODE_CRON_TASK_SCHEDULED,
|
|
224
|
+
nextRunDate: new Date(nextRunDate.toISOString()),
|
|
225
|
+
});
|
|
226
|
+
}
|
|
205
227
|
}
|
|
206
228
|
}
|
|
207
229
|
/** can never throw */
|
|
@@ -226,6 +248,7 @@ function runATask() {
|
|
|
226
248
|
// debug('runATask called');
|
|
227
249
|
state.working = true;
|
|
228
250
|
(async () => {
|
|
251
|
+
await initPromise_1.initPromise;
|
|
229
252
|
const enforcedTask = state.enforcedTasks.shift() || null; // there can be no enforced task
|
|
230
253
|
let task = null;
|
|
231
254
|
const countOfTasks = state.tasks.size;
|
|
@@ -275,12 +298,13 @@ function runATask() {
|
|
|
275
298
|
}
|
|
276
299
|
})();
|
|
277
300
|
}
|
|
278
|
-
function init({ runCronTasks, cronExpressionParserOptions, onError }) {
|
|
301
|
+
function init({ runCronTasks, cronExpressionParserOptions, onError, onInfo }) {
|
|
279
302
|
if (cronExpressionParserOptions.endDate) {
|
|
280
303
|
throw new Error("The 'endDate' parameter of the cron-parser package is not supported yet.");
|
|
281
304
|
}
|
|
282
305
|
state.shouldRun = runCronTasks;
|
|
283
306
|
_onError = onError;
|
|
307
|
+
_onInfo = onInfo;
|
|
284
308
|
state.cronExpressionParserOptions = cronExpressionParserOptions;
|
|
285
309
|
}
|
|
286
310
|
exports.init = init;
|
|
@@ -322,6 +346,7 @@ async function scheduleCronTaskImmediately(taskId) {
|
|
|
322
346
|
}
|
|
323
347
|
exports.scheduleCronTaskImmediately = scheduleCronTaskImmediately;
|
|
324
348
|
async function cronTask(taskId, interval, task) {
|
|
349
|
+
await initPromise_1.initPromise;
|
|
325
350
|
if (state.tasks.has(taskId)) {
|
|
326
351
|
throw new Error(`The taskId '${taskId}' is already used.`);
|
|
327
352
|
}
|
|
@@ -332,7 +357,7 @@ async function cronTask(taskId, interval, task) {
|
|
|
332
357
|
state.tasks.set(taskId, {
|
|
333
358
|
taskId,
|
|
334
359
|
task,
|
|
335
|
-
|
|
360
|
+
intervalFunction,
|
|
336
361
|
});
|
|
337
362
|
// debug(`task ${taskId} has been registered`);
|
|
338
363
|
await ensureIndex();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cronTasks.js","sourceRoot":"","sources":["../../src/cronTasks.ts"],"names":[],"mappings":";;;AAAA,mCAAmC;AACnC,6CAAmH;AAEnH,mDAA2C;AAC3C,iEAA8D;AAC9D,mDAAgD;AAoBhD,MAAM,YAAY;IAOd,YAAmB,GAAW,EAAS,QAAc;QAAlC,QAAG,GAAH,GAAG,CAAQ;QAAS,aAAQ,GAAR,QAAQ,CAAM;QAN9C,mBAAc,GAAG,KAAK,CAAC;QAEvB,WAAM,GAAkB,EAAE,CAAC;QAE3B,eAAU,GAAgB,IAAI,CAAC;IAEkB,CAAC;CAC5D;AAQD,MAAM,cAAc,GAAG,CAAC,GAAG,IAAI,CAAC;AAEhC,MAAM,KAAK,GAAG;IACV,KAAK,EAAE,IAAI,GAAG,EAAgB;IAE9B,iBAAiB,EAAwC,IAAI;IAE7D,OAAO,EAAE,KAAK;IAEd,WAAW,EAAmC,IAAI;IAElD,IAAI,UAAU;QACV,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACnB,IAAI,CAAC,WAAW,GAAG,IAAA,6BAAa,EAAe,WAAW,CAAC,CAAC;SAC/D;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,aAAa,EAAuB,EAAE;IAEtC,SAAS,EAAE,IAAI;IAEf,kBAAkB,EAA2B,IAAI;IAEjD,2BAA2B,EAA+B,EAAE;CAC/D,CAAC;AAEF,IAAI,QAAiB,CAAC;AAEtB,SAAS,YAAY,CAAC,YAAoB;IACtC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AAEnD,SAAS,gCAAgC,CAAC,QAAwB;IAC9D,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;QAC9B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;SACxD;QACD,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;KACvC;SAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;QACrC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;KAC3C;IAED,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;QAC1B,IAAI;YACA,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,gBAAgB,GAAG,IAAA,6BAAmB,EAAC,UAAU,EAAE,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC5F,OAAO,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;SACjD;QAAC,OAAO,GAAG,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,GAAG,sBAAsB,IAAK,GAAa,CAAC,OAAO,GAAG,CAAC,CAAC;SAC3E;KACJ;IAED,MAAM,QAAQ,GAAG,IAAA,wBAAa,EAAC,QAAQ,CAAC,CAAC;IACzC,wCAAwC;IACxC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;QAC9B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;KAC3C;IACD,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;AACxC,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,QAA0B;IACpD,MAAM,SAAS,GAAmB,MAAM,QAAQ,EAAE,CAAC;IACnD,IAAI,SAAS,YAAY,IAAI,EAAE;QAC3B,OAAO,SAAS,CAAC;KACpB;IAED,OAAO,gCAAgC,CAAC,SAAS,CAAC,EAAE,CAAC;AACzD,CAAC;AAEM,KAAK,UAAU,WAAW,CAAC,MAAc;;IAC5C,IAAI,MAAA,IAAI,KAAK,EAAE,CAAC,KAAK,0CAAE,QAAQ,CAAC,2BAA2B,CAAC,EAAE;QAC1D,MAAM,IAAI,KAAK,CAAC,6HAA6H,CAAC,CAAC;KAClJ;IAED,6CAA6C;IAC7C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,4BAA4B,MAAM,IAAI,CAAC,CAAC;KAC3D;IACD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACnC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACtD,aAAa,EAAE,CAAC;IACpB,CAAC,CAAC,CAAC;AACP,CAAC;AAbD,kCAaC;AAED,SAAS,WAAW;IAChB,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE;QAC3B,KAAK,CAAC,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC;YACnC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;YAC/F,KAAK,CAAC,UAAU,CAAC,WAAW,CACxB,EAAE,cAAc,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,EAC5C,EAAE,IAAI,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,EAAE,cAAc,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,CAC9F;SACJ,CAAC,CAAC;KACN;IACD,OAAO,KAAK,CAAC,kBAAkB,CAAC;AACpC,CAAC;AAED,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAE/B,SAAS,WAAW;IAChB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,iBAAiB;IACtB,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;AAChF,CAAC;AAED,SAAS,uBAAuB;IAC5B,OAAO;QACH,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,iBAAiB,EAAE,CAAC;KAChF,CAAC;AACN,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,YAAiC;IAC3D,IAAI,MAA4B,CAAC;IAEjC,IAAI,YAAY,EAAE;QACd,MAAM,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,YAAY,CAAC,MAAM,EAAE,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;KAC1E;SAAM;QACH,MAAM,GAAG;YACL,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,uBAAuB,EAAE,CAAC;SAC7G,CAAC;KACL;IAED,4DAA4D;IAE5D,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAC/D,MAAM,EACN;QACI,IAAI,EAAE;YACF,UAAU,EAAE,WAAW,EAAE;YACzB,cAAc,EAAE,KAAK;SACxB;QACD,KAAK,EAAE;YACH,MAAM,EAAE;gBACJ,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;gBACjE,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE;gBACxB,MAAM,EAAE,CAAC;aACZ;SACJ;KACJ,EACD;QACI,IAAI,EAAE;YACF,cAAc,EAAE,CAAC,CAAC;YAClB,QAAQ,EAAE,CAAC;YACX,qBAAqB,EAAE,CAAC,EAAE,8BAA8B;SAC3D;QACD,UAAU,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE;KAClD,CACJ,CAAC;IAEF,IAAI,CAAC,QAAQ,EAAE;QACX,IAAI,YAAY,EAAE;YACd,YAAY,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC,CAAC;SACzF;QACD,OAAO,IAAI,CAAC;KACf;IAED,IAAI,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;QACnC,6EAA6E;QAC7E,6DAA6D;QAC7D,MAAM,oBAAoB,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACvF,MAAM,KAAK,CAAC,UAAU,CAAC,SAAS,CAC5B,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,EACrB;YACI,IAAI,kBACA,UAAU,EAAE,IAAI,IACb,oBAAoB,CAC1B;YACD,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,qCAAqC;SAC9D,CACJ,CAAC;QACF,OAAO,IAAI,CAAC;KACf;IAED,oEAAoE;IACpE,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAE,CAAC;AAC1C,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,IAAU,EAAE,YAAiC;IACpE,2CAA2C;IAC3C,IAAI,SAAS,GAAiB,IAAI,CAAC;IAEnC,uBAAuB;IACvB,MAAM,kBAAkB,GAAG,IAAA,2CAAoB,EAAM,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAEtH,IAAI;QACA,MAAM,CAAC,SAAS,yBAAyB;YACrC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,CAAC,EAAE,CAAC;KACR;IAAC,OAAO,GAAG,EAAE;QACV,SAAS,GAAG,GAAY,CAAC;KAC5B;IAED,IAAI;QACA,MAAM,kBAAkB,EAAE,CAAC,CAAC,mEAAmE;QAE/F,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACxD,6FAA6F;QAE7F,MAAM,KAAK,CAAC,UAAU,CAAC,SAAS,CAC5B,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,EACpB;YACI,IAAI,EAAE;gBACF,QAAQ,EAAE,WAAW;gBACrB,UAAU,EAAE,IAAI;gBAChB,gBAAgB,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI;gBACnD,qBAAqB,EAAE,IAAI,IAAI,EAAE;aACpC;SACJ,CACJ,CAAC;KACL;YAAS;QACN,IAAI,YAAY,EAAE;YACd,IAAI,SAAS,EAAE;gBACX,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;aAClC;iBAAM;gBACH,YAAY,CAAC,OAAO,EAAE,CAAC;aAC1B;SACJ;aAAM,IAAI,SAAS,EAAE;YAClB,QAAQ,CAAC,SAAS,CAAC,CAAC;SACvB;KACJ;AACL,CAAC;AAED,sBAAsB;AACtB,KAAK,UAAU,qBAAqB;IAChC,IAAI;QACA,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE;YACvE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE;YAC3B,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE;SACxB,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,EAAE;YACX,OAAO,cAAc,CAAC;SACzB;QAED,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5D,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;KAC5D;IAAC,OAAO,KAAK,EAAE;QACZ,QAAQ,CAAC,KAAc,CAAC,CAAC;QACzB,OAAO,cAAc,CAAC;KACzB;AACL,CAAC;AAED,SAAS,QAAQ;IACb,4BAA4B;IAC5B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;IACrB,CAAC,KAAK,IAAI,EAAE;QACR,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,CAAC,gCAAgC;QAC1F,IAAI,IAAI,GAAgB,IAAI,CAAC;QAC7B,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;QAEtC,IAAI;YACA,IAAI,GAAG,MAAM,cAAc,CAAC,YAAY,CAAC,CAAC;YAE1C,IAAI,CAAC,IAAI,EAAE;gBACP,kCAAkC;gBAClC,OAAO,CAAC,8CAA8C;aACzD;YAED,MAAM,WAAW,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;SACzC;QAAC,OAAO,KAAK,EAAE;YACZ,iCAAiC;YACjC,IAAI,YAAY,EAAE;gBACd,YAAY,CAAC,MAAM,CAAC,KAAc,CAAC,CAAC;aACvC;iBAAM;gBACH,QAAQ,CAAC,KAAc,CAAC,CAAC;aAC5B;SACJ;gBAAS;YACN,MAAM,iBAAiB,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC;YAChF,IAAI,iBAAiB,EAAE,EAAE;gBACrB,gDAAgD;gBAChD,iDAAiD;gBACjD,oCAAoC;gBACpC,MAAM,sBAAsB,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC;gBACvE,IAAI,QAAQ,GAAG,CAAC,CAAC;gBACjB,IAAI,CAAC,IAAI,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE;oBACnE,QAAQ,GAAG,MAAM,qBAAqB,EAAE,CAAC;oBACzC,4CAA4C;oBAC5C,IAAI,sBAAsB,EAAE,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE;wBACxD,QAAQ,GAAG,CAAC,CAAC;qBAChB;iBACJ;gBAED,gCAAgC;gBAChC,IAAI,iBAAiB,EAAE,EAAE;oBACrB,sDAAsD;oBACtD,KAAK,CAAC,iBAAiB,GAAG,UAAU,CAAC,GAAG,EAAE;wBACtC,uBAAuB;wBACvB,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC;wBAC/B,QAAQ,EAAE,CAAC;oBACf,CAAC,EAAE,QAAQ,CAAC,CAAC;iBAChB;aACJ;YACD,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;SACzB;IACL,CAAC,CAAC,EAAE,CAAC;AACT,CAAC;AAOD,SAAgB,IAAI,CAAC,EAAE,YAAY,EAAE,2BAA2B,EAAE,OAAO,EAAe;IACpF,IAAI,2BAA2B,CAAC,OAAO,EAAE;QACrC,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;KAC/F;IACD,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC;IAC/B,QAAQ,GAAG,OAAO,CAAC;IACnB,KAAK,CAAC,2BAA2B,GAAG,2BAA2B,CAAC;AACpE,CAAC;AAPD,oBAOC;AAED,SAAS,aAAa;IAClB,oCAAoC;IACpC,IAAI,KAAK,CAAC,iBAAiB,EAAE;QACzB,YAAY,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACtC,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC;KAClC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;QAChB,0BAA0B;QAC1B,QAAQ,EAAE,CAAC;KACd;IACD,+BAA+B;AACnC,CAAC;AAED,SAAgB,aAAa;IACzB,gCAAgC;IAChC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;IACxB,IAAI,KAAK,CAAC,iBAAiB,EAAE;QACzB,YAAY,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;KACzC;AACL,CAAC;AAND,sCAMC;AAED,SAAgB,cAAc;IAC1B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;IACvB,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE;QAClB,aAAa,EAAE,CAAC;KACnB;AACL,CAAC;AALD,wCAKC;AAEM,KAAK,UAAU,2BAA2B,CAAC,MAAc;IAC5D,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IAC/G,IAAI,CAAC,YAAY,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,oBAAoB,MAAM,kBAAkB,CAAC,CAAC;KACjE;IACD,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QAC5C,aAAa,EAAE,CAAC;KACnB;AACL,CAAC;AARD,kEAQC;AAEM,KAAK,UAAU,QAAQ,CAAC,MAAc,EAAE,QAAkB,EAAE,IAAkB;IACjF,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,eAAe,MAAM,oBAAoB,CAAC,CAAC;KAC9D;IAED,MAAM,gBAAgB,GAAG,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,gCAAgC,CAAC,QAAQ,CAAC,CAAC;IAChH,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,gBAAgB,CAAC,CAAC;IAEvD,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnD,MAAM,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAEtG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE;QACpB,MAAM;QACN,IAAI;QACJ,QAAQ,EAAE,gBAAgB;KAC7B,CAAC,CAAC;IACH,+CAA+C;IAE/C,MAAM,WAAW,EAAE,CAAC;IAEpB,IAAI,KAAK,CAAC,SAAS,EAAE;QACjB,aAAa,EAAE,CAAC;KACnB;AACL,CAAC;AAvBD,4BAuBC"}
|
|
1
|
+
{"version":3,"file":"cronTasks.js","sourceRoot":"","sources":["../../src/cronTasks.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**!
|
|
2
|
-
* mongodash v1.
|
|
2
|
+
* mongodash v1.2.0
|
|
3
3
|
* https://github.com/VaclavObornik/mongodash.git
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2021 Václav Oborník
|
|
@@ -7,52 +7,53 @@
|
|
|
7
7
|
*/
|
|
8
8
|
"use strict";
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.init = exports.withTransaction = exports.withLock = exports.getMongoClient = exports.getCollection = exports.stopCronTasks = exports.startCronTasks = exports.scheduleCronTaskImmediately = exports.runCronTask = exports.cronTask = void 0;
|
|
10
|
+
exports.init = exports.withTransaction = exports.LockAlreadyAcquiredError = exports.isLockAlreadyAcquiredError = exports.withLock = exports.getMongoClient = exports.getCollection = exports.CODE_CRON_TASK_FAILED = exports.CODE_CRON_TASK_SCHEDULED = exports.CODE_CRON_TASK_FINISHED = exports.CODE_CRON_TASK_STARTED = exports.stopCronTasks = exports.startCronTasks = exports.scheduleCronTaskImmediately = exports.runCronTask = exports.cronTask = void 0;
|
|
11
11
|
const cronTasks_1 = require("./cronTasks");
|
|
12
12
|
const getCollection_1 = require("./getCollection");
|
|
13
13
|
const getMongoClient_1 = require("./getMongoClient");
|
|
14
|
+
const OnError_1 = require("./OnError");
|
|
15
|
+
const OnInfo_1 = require("./OnInfo");
|
|
14
16
|
const withLock_1 = require("./withLock");
|
|
17
|
+
const initPromise_1 = require("./initPromise");
|
|
15
18
|
var cronTasks_2 = require("./cronTasks");
|
|
16
19
|
Object.defineProperty(exports, "cronTask", { enumerable: true, get: function () { return cronTasks_2.cronTask; } });
|
|
17
20
|
Object.defineProperty(exports, "runCronTask", { enumerable: true, get: function () { return cronTasks_2.runCronTask; } });
|
|
18
21
|
Object.defineProperty(exports, "scheduleCronTaskImmediately", { enumerable: true, get: function () { return cronTasks_2.scheduleCronTaskImmediately; } });
|
|
19
22
|
Object.defineProperty(exports, "startCronTasks", { enumerable: true, get: function () { return cronTasks_2.startCronTasks; } });
|
|
20
23
|
Object.defineProperty(exports, "stopCronTasks", { enumerable: true, get: function () { return cronTasks_2.stopCronTasks; } });
|
|
24
|
+
Object.defineProperty(exports, "CODE_CRON_TASK_STARTED", { enumerable: true, get: function () { return cronTasks_2.CODE_CRON_TASK_STARTED; } });
|
|
25
|
+
Object.defineProperty(exports, "CODE_CRON_TASK_FINISHED", { enumerable: true, get: function () { return cronTasks_2.CODE_CRON_TASK_FINISHED; } });
|
|
26
|
+
Object.defineProperty(exports, "CODE_CRON_TASK_SCHEDULED", { enumerable: true, get: function () { return cronTasks_2.CODE_CRON_TASK_SCHEDULED; } });
|
|
27
|
+
Object.defineProperty(exports, "CODE_CRON_TASK_FAILED", { enumerable: true, get: function () { return cronTasks_2.CODE_CRON_TASK_FAILED; } });
|
|
21
28
|
var getCollection_2 = require("./getCollection");
|
|
22
29
|
Object.defineProperty(exports, "getCollection", { enumerable: true, get: function () { return getCollection_2.getCollection; } });
|
|
23
30
|
var getMongoClient_2 = require("./getMongoClient");
|
|
24
31
|
Object.defineProperty(exports, "getMongoClient", { enumerable: true, get: function () { return getMongoClient_2.getMongoClient; } });
|
|
25
32
|
var withLock_2 = require("./withLock");
|
|
26
33
|
Object.defineProperty(exports, "withLock", { enumerable: true, get: function () { return withLock_2.withLock; } });
|
|
34
|
+
Object.defineProperty(exports, "isLockAlreadyAcquiredError", { enumerable: true, get: function () { return withLock_2.isLockAlreadyAcquiredError; } });
|
|
35
|
+
Object.defineProperty(exports, "LockAlreadyAcquiredError", { enumerable: true, get: function () { return withLock_2.LockAlreadyAcquiredError; } });
|
|
27
36
|
var withTransaction_1 = require("./withTransaction");
|
|
28
37
|
Object.defineProperty(exports, "withTransaction", { enumerable: true, get: function () { return withTransaction_1.withTransaction; } });
|
|
29
38
|
let initCalled = false;
|
|
30
|
-
const defaultOnError = (error) => {
|
|
31
|
-
console.error(error);
|
|
32
|
-
};
|
|
33
39
|
async function init(options) {
|
|
34
|
-
var _a, _b, _c, _d
|
|
40
|
+
var _a, _b, _c, _d;
|
|
35
41
|
if (initCalled) {
|
|
36
42
|
throw new Error('init method can be called only once.');
|
|
37
43
|
}
|
|
38
44
|
initCalled = true;
|
|
39
|
-
const
|
|
40
|
-
const
|
|
41
|
-
|
|
42
|
-
_onError(error);
|
|
43
|
-
}
|
|
44
|
-
catch (onErrorFailure) {
|
|
45
|
-
// intentionally suppress
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
(0, getCollection_1.init)({ collectionFactory: (_b = options.collectionFactory) !== null && _b !== void 0 ? _b : null });
|
|
45
|
+
const onError = options.onError ? (0, OnError_1.secureOnError)(options.onError) : OnError_1.defaultOnError;
|
|
46
|
+
const onInfo = options.onInfo ? (0, OnInfo_1.secureOnInfo)(options.onInfo) : OnInfo_1.defaultOnInfo;
|
|
47
|
+
(0, getCollection_1.init)({ collectionFactory: (_a = options.collectionFactory) !== null && _a !== void 0 ? _a : null });
|
|
49
48
|
(0, withLock_1.init)({ onError });
|
|
50
49
|
(0, cronTasks_1.init)({
|
|
51
|
-
runCronTasks: (
|
|
52
|
-
cronExpressionParserOptions: (
|
|
50
|
+
runCronTasks: (_b = options.runCronTasks) !== null && _b !== void 0 ? _b : true,
|
|
51
|
+
cronExpressionParserOptions: (_c = options.cronExpressionParserOptions) !== null && _c !== void 0 ? _c : {},
|
|
53
52
|
onError,
|
|
53
|
+
onInfo,
|
|
54
54
|
});
|
|
55
|
-
await (0, getMongoClient_1.init)(Object.assign(Object.assign({}, options), { autoConnect: (
|
|
55
|
+
await (0, getMongoClient_1.init)(Object.assign(Object.assign({}, options), { autoConnect: (_d = options.autoConnect) !== null && _d !== void 0 ? _d : true }));
|
|
56
|
+
initPromise_1.resolver.resolve();
|
|
56
57
|
}
|
|
57
58
|
exports.init = init;
|
|
58
59
|
//# sourceMappingURL=index.js.map
|
package/dist/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,2CAAyF;AACzF,mDAAqG;AACrG,qDAAqG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,2CAAyF;AACzF,mDAAqG;AACrG,qDAAqG;AACrG,uCAAmE;AACnE,qCAA+D;AAC/D,yCAAkD;AAClD,+CAAyC;AACzC,yCAaqB;AAZjB,qGAAA,QAAQ,OAAA;AAER,wGAAA,WAAW,OAAA;AACX,wHAAA,2BAA2B,OAAA;AAC3B,2GAAA,cAAc,OAAA;AACd,0GAAA,aAAa,OAAA;AAGb,mHAAA,sBAAsB,OAAA;AACtB,oHAAA,uBAAuB,OAAA;AACvB,qHAAA,wBAAwB,OAAA;AACxB,kHAAA,qBAAqB,OAAA;AAEzB,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AAEvB,uCAA6G;AAApG,oGAAA,QAAQ,OAAA;AAAE,sHAAA,0BAA0B,OAAA;AAAmB,oHAAA,wBAAwB,OAAA;AACxF,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AAExB,IAAI,UAAU,GAAG,KAAK,CAAC;AAShB,KAAK,UAAU,IAAI,CAAC,OAAoB;;IAC3C,IAAI,UAAU,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;KAC3D;IACD,UAAU,GAAG,IAAI,CAAC;IAElB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,uBAAa,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,wBAAc,CAAC;IAClF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAA,qBAAY,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,sBAAa,CAAC;IAE7E,IAAA,oBAAiB,EAAC,EAAE,iBAAiB,EAAE,MAAA,OAAO,CAAC,iBAAiB,mCAAI,IAAI,EAAE,CAAC,CAAC;IAE5E,IAAA,eAAY,EAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAE1B,IAAA,gBAAa,EAAC;QACV,YAAY,EAAE,MAAA,OAAO,CAAC,YAAY,mCAAI,IAAI;QAC1C,2BAA2B,EAAE,MAAA,OAAO,CAAC,2BAA2B,mCAAI,EAAE;QACtE,OAAO;QACP,MAAM;KACT,CAAC,CAAC;IAEH,MAAM,IAAA,qBAAe,kCACd,OAAO,KACV,WAAW,EAAE,MAAA,OAAO,CAAC,WAAW,mCAAI,IAAI,IAC1C,CAAC;IAEH,sBAAQ,CAAC,OAAO,EAAE,CAAC;AACvB,CAAC;AA1BD,oBA0BC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**!
|
|
2
|
+
* mongodash v1.2.0
|
|
3
|
+
* https://github.com/VaclavObornik/mongodash.git
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) 2021 Václav Oborník
|
|
6
|
+
* Released under the MIT license
|
|
7
|
+
*/
|
|
8
|
+
"use strict";
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.initPromise = exports.resolver = void 0;
|
|
11
|
+
exports.resolver = {
|
|
12
|
+
resolve: null,
|
|
13
|
+
};
|
|
14
|
+
exports.initPromise = new Promise((resolve) => {
|
|
15
|
+
exports.resolver.resolve = resolve;
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=initPromise.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"initPromise.js","sourceRoot":"","sources":["../../src/initPromise.ts"],"names":[],"mappings":";;;AAAa,QAAA,QAAQ,GAAG;IACpB,OAAO,EAAE,IAA6B;CACzC,CAAC;AAEW,QAAA,WAAW,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;IACrD,gBAAQ,CAAC,OAAO,GAAG,OAAO,CAAC;AAC/B,CAAC,CAAC,CAAC"}
|
package/dist/lib/withLock.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**!
|
|
2
|
-
* mongodash v1.
|
|
2
|
+
* mongodash v1.2.0
|
|
3
3
|
* https://github.com/VaclavObornik/mongodash.git
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2021 Václav Oborník
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
'use strict';
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.withLock = exports.init = void 0;
|
|
10
|
+
exports.withLock = exports.isLockAlreadyAcquiredError = exports.LockAlreadyAcquiredError = exports.init = void 0;
|
|
11
11
|
// import * as _debug from 'debug';
|
|
12
12
|
const mongodb_1 = require("mongodb");
|
|
13
13
|
const createContinuousLock_1 = require("./createContinuousLock");
|
|
@@ -32,6 +32,21 @@ async function getLockerCollection() {
|
|
|
32
32
|
}
|
|
33
33
|
return collectionPromise;
|
|
34
34
|
}
|
|
35
|
+
class LockAlreadyAcquiredError extends Error {
|
|
36
|
+
constructor(key) {
|
|
37
|
+
super(lockAcquiredMessage);
|
|
38
|
+
this.key = key;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
exports.LockAlreadyAcquiredError = LockAlreadyAcquiredError;
|
|
42
|
+
function isLockAlreadyAcquiredError(err, key) {
|
|
43
|
+
const rightError = err instanceof LockAlreadyAcquiredError;
|
|
44
|
+
if (!rightError) {
|
|
45
|
+
return false;
|
|
46
|
+
}
|
|
47
|
+
return key ? err.key === key : true;
|
|
48
|
+
}
|
|
49
|
+
exports.isLockAlreadyAcquiredError = isLockAlreadyAcquiredError;
|
|
35
50
|
async function withLock(key, callback, { maxWaitForLock = 3 * 1000, startingDelay = 50, expireIn = 15 * 1000 } = {}) {
|
|
36
51
|
const lockId = new mongodb_1.ObjectId();
|
|
37
52
|
const stringKey = `${key}`;
|
|
@@ -50,7 +65,7 @@ async function withLock(key, callback, { maxWaitForLock = 3 * 1000, startingDela
|
|
|
50
65
|
}
|
|
51
66
|
catch (err) {
|
|
52
67
|
if ([11000, 11001].includes(err.code)) {
|
|
53
|
-
throw new
|
|
68
|
+
throw new LockAlreadyAcquiredError(key);
|
|
54
69
|
}
|
|
55
70
|
await releaseLock(); // the lock could be possible acquired
|
|
56
71
|
throw err;
|
|
@@ -78,7 +93,7 @@ async function withLock(key, callback, { maxWaitForLock = 3 * 1000, startingDela
|
|
|
78
93
|
nextTime = ultimateAttemptStart;
|
|
79
94
|
}
|
|
80
95
|
// debug(`wait time ${waitTime} for ${n}`);
|
|
81
|
-
if (err
|
|
96
|
+
if (isLockAlreadyAcquiredError(err, key) && nextTime <= ultimateAttemptStart) {
|
|
82
97
|
await new Promise((resolve) => setTimeout(resolve, waitTime));
|
|
83
98
|
}
|
|
84
99
|
else {
|
|
@@ -86,7 +101,6 @@ async function withLock(key, callback, { maxWaitForLock = 3 * 1000, startingDela
|
|
|
86
101
|
}
|
|
87
102
|
}
|
|
88
103
|
}
|
|
89
|
-
// todo solve the "any"
|
|
90
104
|
const stopContinuousLock = (0, createContinuousLock_1.createContinuousLock)(collection, stringKey, expirationKey, expireIn, onError);
|
|
91
105
|
const cleanUp = () => Promise.all([stopContinuousLock(), releaseLock()]);
|
|
92
106
|
let value;
|
package/dist/lib/withLock.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withLock.js","sourceRoot":"","sources":["../../src/withLock.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AAEb,mCAAmC;AACnC,
|
|
1
|
+
{"version":3,"file":"withLock.js","sourceRoot":"","sources":["../../src/withLock.ts"],"names":[],"mappings":"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"}
|
package/dist/types/OnError.d.ts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { Collection } from 'mongodb';
|
|
2
2
|
import { OnError } from './OnError';
|
|
3
3
|
declare type StopContinuousLock = () => Promise<void>;
|
|
4
|
-
declare
|
|
5
|
-
_id:
|
|
6
|
-
};
|
|
7
|
-
export declare function createContinuousLock(collection: Collection<ObjectWithId>, documentId: string, lockProperty: string, lockTime: number, onError: OnError): StopContinuousLock;
|
|
4
|
+
export declare function createContinuousLock<DocumentType extends {
|
|
5
|
+
_id: string;
|
|
6
|
+
}>(collection: Collection<DocumentType>, documentId: string, lockProperty: string, lockTime: number, onError: OnError): StopContinuousLock;
|
|
8
7
|
export {};
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { ParserOptions as CronExpressionParserOptions } from 'cron-parser';
|
|
2
2
|
import { OnError } from './OnError';
|
|
3
|
+
import { OnInfo } from './OnInfo';
|
|
4
|
+
export declare const CODE_CRON_TASK_STARTED = "cronTaskStarted";
|
|
5
|
+
export declare const CODE_CRON_TASK_FINISHED = "cronTaskFinished";
|
|
6
|
+
export declare const CODE_CRON_TASK_SCHEDULED = "cronTaskScheduled";
|
|
7
|
+
export declare const CODE_CRON_TASK_FAILED = "cronTaskFailed";
|
|
3
8
|
export declare type TaskFunction = () => Promise<unknown> | void;
|
|
4
9
|
export declare type ScalarInterval = number | string;
|
|
5
10
|
export declare type StaticInterval = ScalarInterval | Date;
|
|
@@ -11,8 +16,9 @@ export declare type InitOptions = {
|
|
|
11
16
|
runCronTasks: boolean;
|
|
12
17
|
cronExpressionParserOptions: CronExpressionParserOptions;
|
|
13
18
|
onError: OnError;
|
|
19
|
+
onInfo: OnInfo;
|
|
14
20
|
};
|
|
15
|
-
export declare function init({ runCronTasks, cronExpressionParserOptions, onError }: InitOptions): void;
|
|
21
|
+
export declare function init({ runCronTasks, cronExpressionParserOptions, onError, onInfo }: InitOptions): void;
|
|
16
22
|
export declare function stopCronTasks(): void;
|
|
17
23
|
export declare function startCronTasks(): void;
|
|
18
24
|
export declare function scheduleCronTaskImmediately(taskId: TaskId): Promise<void>;
|
|
@@ -8,7 +8,7 @@ declare type ReadyClientOptions = CommonOptions & {
|
|
|
8
8
|
};
|
|
9
9
|
declare type UriOptions = CommonOptions & {
|
|
10
10
|
uri: string;
|
|
11
|
-
clientOptions
|
|
11
|
+
clientOptions?: MongoClientOptions;
|
|
12
12
|
};
|
|
13
13
|
export declare type InitOptions = ReadyClientOptions | UriOptions;
|
|
14
14
|
export declare function init(options: InitOptions): Promise<void>;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
import { InitOptions as CronTasksInitOptions } from './cronTasks';
|
|
2
2
|
import { InitOptions as GetCollectionInitOptions } from './getCollection';
|
|
3
3
|
import { InitOptions as GetMongoClientInitOptions } from './getMongoClient';
|
|
4
|
-
|
|
4
|
+
import { OnError } from './OnError';
|
|
5
|
+
import { OnInfo } from './OnInfo';
|
|
6
|
+
export { cronTask, Interval, runCronTask, scheduleCronTaskImmediately, startCronTasks, stopCronTasks, TaskFunction, TaskId, CODE_CRON_TASK_STARTED, CODE_CRON_TASK_FINISHED, CODE_CRON_TASK_SCHEDULED, CODE_CRON_TASK_FAILED, } from './cronTasks';
|
|
5
7
|
export { getCollection } from './getCollection';
|
|
6
8
|
export { getMongoClient } from './getMongoClient';
|
|
7
9
|
export { OnError } from './OnError';
|
|
8
|
-
export { withLock } from './withLock';
|
|
10
|
+
export { withLock, isLockAlreadyAcquiredError, WithLockOptions, LockAlreadyAcquiredError } from './withLock';
|
|
9
11
|
export { withTransaction } from './withTransaction';
|
|
10
|
-
|
|
12
|
+
declare type PackageOptions = {
|
|
13
|
+
onError?: OnError;
|
|
14
|
+
onInfo?: OnInfo;
|
|
15
|
+
};
|
|
16
|
+
export declare type InitOptions = PackageOptions & GetMongoClientInitOptions & Partial<CronTasksInitOptions> & Partial<GetCollectionInitOptions>;
|
|
11
17
|
export declare function init(options: InitOptions): Promise<void>;
|
package/dist/types/withLock.d.ts
CHANGED
|
@@ -5,9 +5,14 @@ export declare function init(options: {
|
|
|
5
5
|
}): void;
|
|
6
6
|
export declare type LockKey = string | number | ObjectId;
|
|
7
7
|
export declare type LockCallback<T> = () => Promise<T>;
|
|
8
|
-
export declare type
|
|
8
|
+
export declare type WithLockOptions = {
|
|
9
9
|
maxWaitForLock?: number;
|
|
10
10
|
startingDelay?: number;
|
|
11
11
|
expireIn?: number;
|
|
12
12
|
};
|
|
13
|
-
export declare
|
|
13
|
+
export declare class LockAlreadyAcquiredError extends Error {
|
|
14
|
+
readonly key: LockKey;
|
|
15
|
+
constructor(key: LockKey);
|
|
16
|
+
}
|
|
17
|
+
export declare function isLockAlreadyAcquiredError(err: unknown, key?: LockKey): boolean;
|
|
18
|
+
export declare function withLock<T>(key: LockKey, callback: LockCallback<T>, { maxWaitForLock, startingDelay, expireIn }?: WithLockOptions): Promise<T>;
|
package/package.json
CHANGED
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mongodash",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"description": "An utility library delivering super-useful and super-simple tools using MongoDB",
|
|
5
|
-
"main": "dist/lib/index.js",
|
|
5
|
+
"main": "./dist/lib/index.js",
|
|
6
6
|
"types": "dist/types/index.d.ts",
|
|
7
|
+
"exports": {
|
|
8
|
+
"import": "./dist/lib/index.js",
|
|
9
|
+
"default": "./dist/lib/index.js"
|
|
10
|
+
},
|
|
7
11
|
"files": [
|
|
8
12
|
"dist"
|
|
9
13
|
],
|
|
@@ -11,6 +15,9 @@
|
|
|
11
15
|
"build": "tsc",
|
|
12
16
|
"dev": "tsc --watch",
|
|
13
17
|
"test": "run-p test:lint test:coverage --aggregate-output",
|
|
18
|
+
"test:ts": "run-p test:ts:*",
|
|
19
|
+
"test:ts:src": "tsc --noEmit",
|
|
20
|
+
"test:ts:test": "cd test && tsc --noEmit",
|
|
14
21
|
"test:lint": "eslint ./src/**/*.ts ./test/**/*.ts",
|
|
15
22
|
"test:simple": "jest --runInBand --forceExit",
|
|
16
23
|
"test:coverage": "jest --coverage --runInBand --forceExit",
|
|
@@ -26,7 +33,7 @@
|
|
|
26
33
|
"init": "ts-node tools/init.ts"
|
|
27
34
|
},
|
|
28
35
|
"dependencies": {
|
|
29
|
-
"cron-parser": "^
|
|
36
|
+
"cron-parser": "^4.2.0",
|
|
30
37
|
"debug": "^4.3.2",
|
|
31
38
|
"parse-duration": "^1.0.0"
|
|
32
39
|
},
|
|
@@ -37,6 +44,7 @@
|
|
|
37
44
|
"@commitlint/cli": "^13.1.0",
|
|
38
45
|
"@semantic-release/changelog": "^5.0.1",
|
|
39
46
|
"@semantic-release/git": "^9.0.0",
|
|
47
|
+
"@skypack/package-check": "^0.2.2",
|
|
40
48
|
"@stryker-mutator/core": "^5.3.0",
|
|
41
49
|
"@stryker-mutator/jest-runner": "^5.3.0",
|
|
42
50
|
"@types/debug": "^4.1.7",
|
|
@@ -51,23 +59,23 @@
|
|
|
51
59
|
"eslint": "^7.32.0",
|
|
52
60
|
"eslint-config-prettier": "^8.3.0",
|
|
53
61
|
"eslint-plugin-no-only-tests": "^2.6.0",
|
|
54
|
-
"eslint-plugin-prettier": "^
|
|
62
|
+
"eslint-plugin-prettier": "^4.0.0",
|
|
55
63
|
"husky": "^7.0.2",
|
|
56
64
|
"jest": "^27.1.0",
|
|
57
65
|
"jest-config": "^27.1.0",
|
|
58
66
|
"jest-transform-stub": "^2.0.0",
|
|
59
67
|
"lint-staged": "^11.1.2",
|
|
60
68
|
"lodash": "^4.17.21",
|
|
61
|
-
"mongodb": "^4.
|
|
69
|
+
"mongodb": "^4.2.2",
|
|
62
70
|
"npm-run-all": "^4.1.5",
|
|
63
|
-
"organize-imports-cli": "^0.
|
|
71
|
+
"organize-imports-cli": "^0.9.0",
|
|
64
72
|
"prettier": "^2.3.2",
|
|
65
73
|
"rimraf": "^3.0.2",
|
|
66
74
|
"semantic-release": "^17.4.7",
|
|
67
75
|
"sinon": "^11.1.2",
|
|
68
76
|
"ts-jest": "^27.0.5",
|
|
69
77
|
"ts-node": "^10.2.1",
|
|
70
|
-
"typescript": "^4.4
|
|
78
|
+
"typescript": "^4.5.4"
|
|
71
79
|
},
|
|
72
80
|
"keywords": [
|
|
73
81
|
"mongodb",
|