@digipair/skill-cron 0.63.1 → 0.64.1

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/index.cjs.js CHANGED
@@ -9,6 +9,8 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
9
9
 
10
10
  var require$$0__default = /*#__PURE__*/_interopDefaultLegacy(require$$0);
11
11
 
12
+ var commonjsGlobal = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
13
+
12
14
  var dist = {};
13
15
 
14
16
  var time = {};
@@ -8908,7 +8910,7 @@ var constants = {};
8908
8910
  Object.defineProperty(exports, "__esModule", {
8909
8911
  value: true
8910
8912
  });
8911
- exports.RE_RANGE = exports.RE_WILDCARDS = exports.PRESETS = exports.TIME_UNITS_LEN = exports.TIME_UNITS = exports.TIME_UNITS_MAP = exports.ALIASES = exports.PARSE_DEFAULTS = exports.MONTH_CONSTRAINTS = exports.CONSTRAINTS = void 0;
8913
+ exports.RE_RANGE = exports.RE_WILDCARDS = exports.PRESETS = exports.TIME_UNITS_LEN = exports.TIME_UNITS = exports.TIME_UNITS_MAP = exports.ALIASES = exports.PARSE_DEFAULTS = exports.CONSTRAINTS = void 0;
8912
8914
  exports.CONSTRAINTS = Object.freeze({
8913
8915
  second: [
8914
8916
  0,
@@ -8935,20 +8937,6 @@ exports.CONSTRAINTS = Object.freeze({
8935
8937
  7
8936
8938
  ]
8937
8939
  });
8938
- exports.MONTH_CONSTRAINTS = Object.freeze({
8939
- 1: 31,
8940
- 2: 29,
8941
- 3: 31,
8942
- 4: 30,
8943
- 5: 31,
8944
- 6: 30,
8945
- 7: 31,
8946
- 8: 31,
8947
- 9: 30,
8948
- 10: 31,
8949
- 11: 30,
8950
- 12: 31
8951
- });
8952
8940
  exports.PARSE_DEFAULTS = Object.freeze({
8953
8941
  second: "0",
8954
8942
  minute: "*",
@@ -9147,17 +9135,6 @@ var ExclusiveParametersError = /*#__PURE__*/ function(CronError) {
9147
9135
  }(CronError);
9148
9136
  errors.ExclusiveParametersError = ExclusiveParametersError;
9149
9137
 
9150
- var utils = {};
9151
-
9152
- Object.defineProperty(utils, "__esModule", {
9153
- value: true
9154
- });
9155
- utils.getRecordKeys = void 0;
9156
- var getRecordKeys = function(record) {
9157
- return Object.keys(record);
9158
- };
9159
- utils.getRecordKeys = getRecordKeys;
9160
-
9161
9138
  function _array_like_to_array$1(arr, len) {
9162
9139
  if (len == null || len > arr.length) len = arr.length;
9163
9140
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
@@ -9249,7 +9226,6 @@ time.CronTime = void 0;
9249
9226
  var luxon_1 = luxon;
9250
9227
  var constants_1 = constants;
9251
9228
  var errors_1$1 = errors;
9252
- var utils_1 = utils;
9253
9229
  var CronTime = /*#__PURE__*/ function() {
9254
9230
  function CronTime(source, timeZone, utcOffset) {
9255
9231
  _class_call_check$1(this, CronTime);
@@ -9281,7 +9257,6 @@ var CronTime = /*#__PURE__*/ function() {
9281
9257
  } else {
9282
9258
  this.source = source;
9283
9259
  this._parse(this.source);
9284
- this._verifyParse();
9285
9260
  }
9286
9261
  }
9287
9262
  _create_class$1(CronTime, [
@@ -9291,88 +9266,6 @@ var CronTime = /*#__PURE__*/ function() {
9291
9266
  return date.weekday === 7 ? 0 : date.weekday;
9292
9267
  }
9293
9268
  },
9294
- {
9295
- key: "_verifyParse",
9296
- value: function _verifyParse() {
9297
- var months = (0, utils_1.getRecordKeys)(this.month);
9298
- var daysOfMonth = (0, utils_1.getRecordKeys)(this.dayOfMonth);
9299
- var isOk = false;
9300
- var lastWrongMonth = null;
9301
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
9302
- try {
9303
- for(var _iterator = months[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
9304
- var m = _step.value;
9305
- var con = constants_1.MONTH_CONSTRAINTS[m];
9306
- var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = undefined;
9307
- try {
9308
- for(var _iterator1 = daysOfMonth[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true){
9309
- var day = _step1.value;
9310
- if (day <= con) {
9311
- isOk = true;
9312
- }
9313
- }
9314
- } catch (err) {
9315
- _didIteratorError1 = true;
9316
- _iteratorError1 = err;
9317
- } finally{
9318
- try {
9319
- if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
9320
- _iterator1.return();
9321
- }
9322
- } finally{
9323
- if (_didIteratorError1) {
9324
- throw _iteratorError1;
9325
- }
9326
- }
9327
- }
9328
- if (!isOk) {
9329
- lastWrongMonth = m;
9330
- console.warn("Month '".concat(m, "' is limited to '").concat(con, "' days."));
9331
- }
9332
- }
9333
- } catch (err) {
9334
- _didIteratorError = true;
9335
- _iteratorError = err;
9336
- } finally{
9337
- try {
9338
- if (!_iteratorNormalCompletion && _iterator.return != null) {
9339
- _iterator.return();
9340
- }
9341
- } finally{
9342
- if (_didIteratorError) {
9343
- throw _iteratorError;
9344
- }
9345
- }
9346
- }
9347
- if (!isOk && lastWrongMonth !== null) {
9348
- var notOkCon = constants_1.MONTH_CONSTRAINTS[lastWrongMonth];
9349
- var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = undefined;
9350
- try {
9351
- for(var _iterator2 = daysOfMonth[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true){
9352
- var notOkDay = _step2.value;
9353
- if (notOkDay > notOkCon) {
9354
- delete this.dayOfMonth[notOkDay];
9355
- var fixedDay = notOkDay % notOkCon;
9356
- this.dayOfMonth[fixedDay] = true;
9357
- }
9358
- }
9359
- } catch (err) {
9360
- _didIteratorError2 = true;
9361
- _iteratorError2 = err;
9362
- } finally{
9363
- try {
9364
- if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
9365
- _iterator2.return();
9366
- }
9367
- } finally{
9368
- if (_didIteratorError2) {
9369
- throw _iteratorError2;
9370
- }
9371
- }
9372
- }
9373
- }
9374
- }
9375
- },
9376
9269
  {
9377
9270
  key: "sendAt",
9378
9271
  value: function sendAt(i) {
@@ -9610,7 +9503,7 @@ var CronTime = /*#__PURE__*/ function() {
9610
9503
  var beforeJumpingPoint = afterJumpingPoint.minus({
9611
9504
  second: 1
9612
9505
  });
9613
- if (date.month + 1 in this.month && date.day in this.dayOfMonth && this._getWeekDay(date) in this.dayOfWeek) {
9506
+ if (date.month in this.month && date.day in this.dayOfMonth && this._getWeekDay(date) in this.dayOfWeek) {
9614
9507
  return [
9615
9508
  this._checkTimeInSkippedRange(beforeJumpingPoint, afterJumpingPoint),
9616
9509
  afterJumpingPoint
@@ -9922,6 +9815,128 @@ function _unsupported_iterable_to_array(o, minLen) {
9922
9815
  if (n === "Map" || n === "Set") return Array.from(n);
9923
9816
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
9924
9817
  }
9818
+ function _ts_generator(thisArg, body) {
9819
+ var f, y, t, g, _ = {
9820
+ label: 0,
9821
+ sent: function() {
9822
+ if (t[0] & 1) throw t[1];
9823
+ return t[1];
9824
+ },
9825
+ trys: [],
9826
+ ops: []
9827
+ };
9828
+ return g = {
9829
+ next: verb(0),
9830
+ "throw": verb(1),
9831
+ "return": verb(2)
9832
+ }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
9833
+ return this;
9834
+ }), g;
9835
+ function verb(n) {
9836
+ return function(v) {
9837
+ return step([
9838
+ n,
9839
+ v
9840
+ ]);
9841
+ };
9842
+ }
9843
+ function step(op) {
9844
+ if (f) throw new TypeError("Generator is already executing.");
9845
+ while(_)try {
9846
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
9847
+ if (y = 0, t) op = [
9848
+ op[0] & 2,
9849
+ t.value
9850
+ ];
9851
+ switch(op[0]){
9852
+ case 0:
9853
+ case 1:
9854
+ t = op;
9855
+ break;
9856
+ case 4:
9857
+ _.label++;
9858
+ return {
9859
+ value: op[1],
9860
+ done: false
9861
+ };
9862
+ case 5:
9863
+ _.label++;
9864
+ y = op[1];
9865
+ op = [
9866
+ 0
9867
+ ];
9868
+ continue;
9869
+ case 7:
9870
+ op = _.ops.pop();
9871
+ _.trys.pop();
9872
+ continue;
9873
+ default:
9874
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
9875
+ _ = 0;
9876
+ continue;
9877
+ }
9878
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
9879
+ _.label = op[1];
9880
+ break;
9881
+ }
9882
+ if (op[0] === 6 && _.label < t[1]) {
9883
+ _.label = t[1];
9884
+ t = op;
9885
+ break;
9886
+ }
9887
+ if (t && _.label < t[2]) {
9888
+ _.label = t[2];
9889
+ _.ops.push(op);
9890
+ break;
9891
+ }
9892
+ if (t[2]) _.ops.pop();
9893
+ _.trys.pop();
9894
+ continue;
9895
+ }
9896
+ op = body.call(thisArg, _);
9897
+ } catch (e) {
9898
+ op = [
9899
+ 6,
9900
+ e
9901
+ ];
9902
+ y = 0;
9903
+ } finally{
9904
+ f = t = 0;
9905
+ }
9906
+ if (op[0] & 5) throw op[1];
9907
+ return {
9908
+ value: op[0] ? op[1] : void 0,
9909
+ done: true
9910
+ };
9911
+ }
9912
+ }
9913
+ var __awaiter = commonjsGlobal && commonjsGlobal.__awaiter || function(thisArg, _arguments, P, generator) {
9914
+ function adopt(value) {
9915
+ return _instanceof(value, P) ? value : new P(function(resolve) {
9916
+ resolve(value);
9917
+ });
9918
+ }
9919
+ return new (P || (P = Promise))(function(resolve, reject) {
9920
+ function fulfilled(value) {
9921
+ try {
9922
+ step(generator.next(value));
9923
+ } catch (e) {
9924
+ reject(e);
9925
+ }
9926
+ }
9927
+ function rejected(value) {
9928
+ try {
9929
+ step(generator["throw"](value));
9930
+ } catch (e) {
9931
+ reject(e);
9932
+ }
9933
+ }
9934
+ function step(result) {
9935
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
9936
+ }
9937
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9938
+ });
9939
+ };
9925
9940
  Object.defineProperty(job, "__esModule", {
9926
9941
  value: true
9927
9942
  });
@@ -9930,14 +9945,18 @@ var child_process_1 = require$$0__default["default"];
9930
9945
  var errors_1 = errors;
9931
9946
  var time_1 = time;
9932
9947
  var CronJob = /*#__PURE__*/ function() {
9933
- function CronJob(cronTime, onTick, onComplete, start, timeZone, context, runOnInit, utcOffset, unrefTimeout) {
9948
+ function CronJob(cronTime, onTick, onComplete, start, timeZone, context, runOnInit, utcOffset, unrefTimeout, waitForCompletion, errorHandler) {
9934
9949
  _class_call_check(this, CronJob);
9935
9950
  this.running = false;
9936
9951
  this.unrefTimeout = false;
9937
9952
  this.lastExecution = null;
9938
9953
  this.runOnce = false;
9954
+ this.waitForCompletion = false;
9955
+ this._isCallbackRunning = false;
9939
9956
  this._callbacks = [];
9940
9957
  this.context = context !== null && context !== void 0 ? context : this;
9958
+ this.waitForCompletion = Boolean(waitForCompletion);
9959
+ this.errorHandler = errorHandler;
9941
9960
  if (timeZone != null && utcOffset != null) {
9942
9961
  throw new errors_1.ExclusiveParametersError("timeZone", "utcOffset");
9943
9962
  }
@@ -9960,11 +9979,17 @@ var CronJob = /*#__PURE__*/ function() {
9960
9979
  this.addCallback(this._fnWrap(onTick));
9961
9980
  if (runOnInit) {
9962
9981
  this.lastExecution = new Date();
9963
- this.fireOnTick();
9982
+ void this.fireOnTick();
9964
9983
  }
9965
9984
  if (start) this.start();
9966
9985
  }
9967
9986
  _create_class(CronJob, [
9987
+ {
9988
+ key: "isCallbackRunning",
9989
+ get: function get() {
9990
+ return this._isCallbackRunning;
9991
+ }
9992
+ },
9968
9993
  {
9969
9994
  key: "_fnWrap",
9970
9995
  value: function _fnWrap(cmd) {
@@ -10016,26 +10041,109 @@ var CronJob = /*#__PURE__*/ function() {
10016
10041
  {
10017
10042
  key: "fireOnTick",
10018
10043
  value: function fireOnTick() {
10019
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
10020
- try {
10021
- for(var _iterator = this._callbacks[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
10022
- var callback = _step.value;
10023
- void callback.call(this.context, this.onComplete);
10024
- }
10025
- } catch (err) {
10026
- _didIteratorError = true;
10027
- _iteratorError = err;
10028
- } finally{
10029
- try {
10030
- if (!_iteratorNormalCompletion && _iterator.return != null) {
10031
- _iterator.return();
10032
- }
10033
- } finally{
10034
- if (_didIteratorError) {
10035
- throw _iteratorError;
10044
+ return __awaiter(this, void 0, void 0, function() {
10045
+ var _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, callback, result, err, error;
10046
+ return _ts_generator(this, function(_state) {
10047
+ switch(_state.label){
10048
+ case 0:
10049
+ if (this.waitForCompletion && this._isCallbackRunning) return [
10050
+ 2
10051
+ ];
10052
+ this._isCallbackRunning = true;
10053
+ _state.label = 1;
10054
+ case 1:
10055
+ _state.trys.push([
10056
+ 1,
10057
+ 10,
10058
+ 11,
10059
+ 12
10060
+ ]);
10061
+ _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
10062
+ _state.label = 2;
10063
+ case 2:
10064
+ _state.trys.push([
10065
+ 2,
10066
+ 7,
10067
+ 8,
10068
+ 9
10069
+ ]);
10070
+ _iterator = this._callbacks[Symbol.iterator]();
10071
+ _state.label = 3;
10072
+ case 3:
10073
+ if (!!(_iteratorNormalCompletion = (_step = _iterator.next()).done)) return [
10074
+ 3,
10075
+ 6
10076
+ ];
10077
+ callback = _step.value;
10078
+ result = callback.call(this.context, this.onComplete);
10079
+ if (!this.waitForCompletion) return [
10080
+ 3,
10081
+ 5
10082
+ ];
10083
+ return [
10084
+ 4,
10085
+ result
10086
+ ];
10087
+ case 4:
10088
+ _state.sent();
10089
+ _state.label = 5;
10090
+ case 5:
10091
+ _iteratorNormalCompletion = true;
10092
+ return [
10093
+ 3,
10094
+ 3
10095
+ ];
10096
+ case 6:
10097
+ return [
10098
+ 3,
10099
+ 9
10100
+ ];
10101
+ case 7:
10102
+ err = _state.sent();
10103
+ _didIteratorError = true;
10104
+ _iteratorError = err;
10105
+ return [
10106
+ 3,
10107
+ 9
10108
+ ];
10109
+ case 8:
10110
+ try {
10111
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
10112
+ _iterator.return();
10113
+ }
10114
+ } finally{
10115
+ if (_didIteratorError) {
10116
+ throw _iteratorError;
10117
+ }
10118
+ }
10119
+ return [
10120
+ 7
10121
+ ];
10122
+ case 9:
10123
+ return [
10124
+ 3,
10125
+ 12
10126
+ ];
10127
+ case 10:
10128
+ error = _state.sent();
10129
+ if (this.errorHandler != null) this.errorHandler(error);
10130
+ else console.error("[Cron] error in callback", error);
10131
+ return [
10132
+ 3,
10133
+ 12
10134
+ ];
10135
+ case 11:
10136
+ this._isCallbackRunning = false;
10137
+ return [
10138
+ 7
10139
+ ];
10140
+ case 12:
10141
+ return [
10142
+ 2
10143
+ ];
10036
10144
  }
10037
- }
10038
- }
10145
+ });
10146
+ });
10039
10147
  }
10040
10148
  },
10041
10149
  {
@@ -10048,9 +10156,7 @@ var CronJob = /*#__PURE__*/ function() {
10048
10156
  key: "start",
10049
10157
  value: function start() {
10050
10158
  var _this = this;
10051
- if (this.running) {
10052
- return;
10053
- }
10159
+ if (this.running) return;
10054
10160
  var MAXDELAY = 2147483647;
10055
10161
  var timeout = this.cronTime.getTimeout();
10056
10162
  var remaining = 0;
@@ -10083,10 +10189,8 @@ var CronJob = /*#__PURE__*/ function() {
10083
10189
  } else {
10084
10190
  _this.lastExecution = new Date();
10085
10191
  _this.running = false;
10086
- if (!_this.runOnce) {
10087
- _this.start();
10088
- }
10089
- _this.fireOnTick();
10192
+ if (!_this.runOnce) _this.start();
10193
+ void _this.fireOnTick();
10090
10194
  }
10091
10195
  };
10092
10196
  if (timeout >= 0) {
@@ -10107,14 +10211,117 @@ var CronJob = /*#__PURE__*/ function() {
10107
10211
  return this.lastExecution;
10108
10212
  }
10109
10213
  },
10214
+ {
10215
+ key: "_executeOnComplete",
10216
+ value: function _executeOnComplete() {
10217
+ return __awaiter(this, void 0, void 0, function() {
10218
+ var error;
10219
+ return _ts_generator(this, function(_state) {
10220
+ switch(_state.label){
10221
+ case 0:
10222
+ if (typeof this.onComplete !== "function") return [
10223
+ 2
10224
+ ];
10225
+ _state.label = 1;
10226
+ case 1:
10227
+ _state.trys.push([
10228
+ 1,
10229
+ 3,
10230
+ ,
10231
+ 4
10232
+ ]);
10233
+ return [
10234
+ 4,
10235
+ this.onComplete.call(this.context)
10236
+ ];
10237
+ case 2:
10238
+ _state.sent();
10239
+ return [
10240
+ 3,
10241
+ 4
10242
+ ];
10243
+ case 3:
10244
+ error = _state.sent();
10245
+ console.error("[Cron] error in onComplete callback:", error);
10246
+ return [
10247
+ 3,
10248
+ 4
10249
+ ];
10250
+ case 4:
10251
+ return [
10252
+ 2
10253
+ ];
10254
+ }
10255
+ });
10256
+ });
10257
+ }
10258
+ },
10259
+ {
10260
+ key: "_waitForJobCompletion",
10261
+ value: function _waitForJobCompletion() {
10262
+ return __awaiter(this, void 0, void 0, function() {
10263
+ return _ts_generator(this, function(_state) {
10264
+ switch(_state.label){
10265
+ case 0:
10266
+ if (!this._isCallbackRunning) return [
10267
+ 3,
10268
+ 2
10269
+ ];
10270
+ return [
10271
+ 4,
10272
+ new Promise(function(resolve) {
10273
+ return setTimeout(resolve, 100);
10274
+ })
10275
+ ];
10276
+ case 1:
10277
+ _state.sent();
10278
+ return [
10279
+ 3,
10280
+ 0
10281
+ ];
10282
+ case 2:
10283
+ return [
10284
+ 2
10285
+ ];
10286
+ }
10287
+ });
10288
+ });
10289
+ }
10290
+ },
10110
10291
  {
10111
10292
  key: "stop",
10112
10293
  value: function stop() {
10294
+ var _this = this;
10113
10295
  if (this._timeout) clearTimeout(this._timeout);
10114
10296
  this.running = false;
10115
- if (typeof this.onComplete === "function") {
10116
- void this.onComplete.call(this.context);
10297
+ if (!this.waitForCompletion) {
10298
+ void this._executeOnComplete();
10299
+ return;
10117
10300
  }
10301
+ void Promise.resolve().then(function() {
10302
+ return __awaiter(_this, void 0, void 0, function() {
10303
+ return _ts_generator(this, function(_state) {
10304
+ switch(_state.label){
10305
+ case 0:
10306
+ return [
10307
+ 4,
10308
+ this._waitForJobCompletion()
10309
+ ];
10310
+ case 1:
10311
+ _state.sent();
10312
+ return [
10313
+ 4,
10314
+ this._executeOnComplete()
10315
+ ];
10316
+ case 2:
10317
+ _state.sent();
10318
+ return [
10319
+ 2
10320
+ ];
10321
+ }
10322
+ });
10323
+ });
10324
+ });
10118
10325
  }
10119
10326
  }
10120
10327
  ], [
@@ -10125,11 +10332,11 @@ var CronJob = /*#__PURE__*/ function() {
10125
10332
  throw new errors_1.ExclusiveParametersError("timeZone", "utcOffset");
10126
10333
  }
10127
10334
  if (params.timeZone != null) {
10128
- return new CronJob(params.cronTime, params.onTick, params.onComplete, params.start, params.timeZone, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout);
10335
+ return new CronJob(params.cronTime, params.onTick, params.onComplete, params.start, params.timeZone, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout, params.waitForCompletion, params.errorHandler);
10129
10336
  } else if (params.utcOffset != null) {
10130
- return new CronJob(params.cronTime, params.onTick, params.onComplete, params.start, null, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout);
10337
+ return new CronJob(params.cronTime, params.onTick, params.onComplete, params.start, null, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout, params.waitForCompletion, params.errorHandler);
10131
10338
  } else {
10132
- return new CronJob(params.cronTime, params.onTick, params.onComplete, params.start, params.timeZone, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout);
10339
+ return new CronJob(params.cronTime, params.onTick, params.onComplete, params.start, params.timeZone, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout, params.waitForCompletion, params.errorHandler);
10133
10340
  }
10134
10341
  }
10135
10342
  }
package/index.esm.js CHANGED
@@ -1,6 +1,8 @@
1
1
  import { promises } from 'fs';
2
2
  import require$$0 from 'child_process';
3
3
 
4
+ var commonjsGlobal = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
5
+
4
6
  var dist = {};
5
7
 
6
8
  var time = {};
@@ -8900,7 +8902,7 @@ var constants = {};
8900
8902
  Object.defineProperty(exports, "__esModule", {
8901
8903
  value: true
8902
8904
  });
8903
- exports.RE_RANGE = exports.RE_WILDCARDS = exports.PRESETS = exports.TIME_UNITS_LEN = exports.TIME_UNITS = exports.TIME_UNITS_MAP = exports.ALIASES = exports.PARSE_DEFAULTS = exports.MONTH_CONSTRAINTS = exports.CONSTRAINTS = void 0;
8905
+ exports.RE_RANGE = exports.RE_WILDCARDS = exports.PRESETS = exports.TIME_UNITS_LEN = exports.TIME_UNITS = exports.TIME_UNITS_MAP = exports.ALIASES = exports.PARSE_DEFAULTS = exports.CONSTRAINTS = void 0;
8904
8906
  exports.CONSTRAINTS = Object.freeze({
8905
8907
  second: [
8906
8908
  0,
@@ -8927,20 +8929,6 @@ exports.CONSTRAINTS = Object.freeze({
8927
8929
  7
8928
8930
  ]
8929
8931
  });
8930
- exports.MONTH_CONSTRAINTS = Object.freeze({
8931
- 1: 31,
8932
- 2: 29,
8933
- 3: 31,
8934
- 4: 30,
8935
- 5: 31,
8936
- 6: 30,
8937
- 7: 31,
8938
- 8: 31,
8939
- 9: 30,
8940
- 10: 31,
8941
- 11: 30,
8942
- 12: 31
8943
- });
8944
8932
  exports.PARSE_DEFAULTS = Object.freeze({
8945
8933
  second: "0",
8946
8934
  minute: "*",
@@ -9139,17 +9127,6 @@ var ExclusiveParametersError = /*#__PURE__*/ function(CronError) {
9139
9127
  }(CronError);
9140
9128
  errors.ExclusiveParametersError = ExclusiveParametersError;
9141
9129
 
9142
- var utils = {};
9143
-
9144
- Object.defineProperty(utils, "__esModule", {
9145
- value: true
9146
- });
9147
- utils.getRecordKeys = void 0;
9148
- var getRecordKeys = function(record) {
9149
- return Object.keys(record);
9150
- };
9151
- utils.getRecordKeys = getRecordKeys;
9152
-
9153
9130
  function _array_like_to_array$1(arr, len) {
9154
9131
  if (len == null || len > arr.length) len = arr.length;
9155
9132
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
@@ -9241,7 +9218,6 @@ time.CronTime = void 0;
9241
9218
  var luxon_1 = luxon;
9242
9219
  var constants_1 = constants;
9243
9220
  var errors_1$1 = errors;
9244
- var utils_1 = utils;
9245
9221
  var CronTime = /*#__PURE__*/ function() {
9246
9222
  function CronTime(source, timeZone, utcOffset) {
9247
9223
  _class_call_check$1(this, CronTime);
@@ -9273,7 +9249,6 @@ var CronTime = /*#__PURE__*/ function() {
9273
9249
  } else {
9274
9250
  this.source = source;
9275
9251
  this._parse(this.source);
9276
- this._verifyParse();
9277
9252
  }
9278
9253
  }
9279
9254
  _create_class$1(CronTime, [
@@ -9283,88 +9258,6 @@ var CronTime = /*#__PURE__*/ function() {
9283
9258
  return date.weekday === 7 ? 0 : date.weekday;
9284
9259
  }
9285
9260
  },
9286
- {
9287
- key: "_verifyParse",
9288
- value: function _verifyParse() {
9289
- var months = (0, utils_1.getRecordKeys)(this.month);
9290
- var daysOfMonth = (0, utils_1.getRecordKeys)(this.dayOfMonth);
9291
- var isOk = false;
9292
- var lastWrongMonth = null;
9293
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
9294
- try {
9295
- for(var _iterator = months[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
9296
- var m = _step.value;
9297
- var con = constants_1.MONTH_CONSTRAINTS[m];
9298
- var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = undefined;
9299
- try {
9300
- for(var _iterator1 = daysOfMonth[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true){
9301
- var day = _step1.value;
9302
- if (day <= con) {
9303
- isOk = true;
9304
- }
9305
- }
9306
- } catch (err) {
9307
- _didIteratorError1 = true;
9308
- _iteratorError1 = err;
9309
- } finally{
9310
- try {
9311
- if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
9312
- _iterator1.return();
9313
- }
9314
- } finally{
9315
- if (_didIteratorError1) {
9316
- throw _iteratorError1;
9317
- }
9318
- }
9319
- }
9320
- if (!isOk) {
9321
- lastWrongMonth = m;
9322
- console.warn("Month '".concat(m, "' is limited to '").concat(con, "' days."));
9323
- }
9324
- }
9325
- } catch (err) {
9326
- _didIteratorError = true;
9327
- _iteratorError = err;
9328
- } finally{
9329
- try {
9330
- if (!_iteratorNormalCompletion && _iterator.return != null) {
9331
- _iterator.return();
9332
- }
9333
- } finally{
9334
- if (_didIteratorError) {
9335
- throw _iteratorError;
9336
- }
9337
- }
9338
- }
9339
- if (!isOk && lastWrongMonth !== null) {
9340
- var notOkCon = constants_1.MONTH_CONSTRAINTS[lastWrongMonth];
9341
- var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = undefined;
9342
- try {
9343
- for(var _iterator2 = daysOfMonth[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true){
9344
- var notOkDay = _step2.value;
9345
- if (notOkDay > notOkCon) {
9346
- delete this.dayOfMonth[notOkDay];
9347
- var fixedDay = notOkDay % notOkCon;
9348
- this.dayOfMonth[fixedDay] = true;
9349
- }
9350
- }
9351
- } catch (err) {
9352
- _didIteratorError2 = true;
9353
- _iteratorError2 = err;
9354
- } finally{
9355
- try {
9356
- if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
9357
- _iterator2.return();
9358
- }
9359
- } finally{
9360
- if (_didIteratorError2) {
9361
- throw _iteratorError2;
9362
- }
9363
- }
9364
- }
9365
- }
9366
- }
9367
- },
9368
9261
  {
9369
9262
  key: "sendAt",
9370
9263
  value: function sendAt(i) {
@@ -9602,7 +9495,7 @@ var CronTime = /*#__PURE__*/ function() {
9602
9495
  var beforeJumpingPoint = afterJumpingPoint.minus({
9603
9496
  second: 1
9604
9497
  });
9605
- if (date.month + 1 in this.month && date.day in this.dayOfMonth && this._getWeekDay(date) in this.dayOfWeek) {
9498
+ if (date.month in this.month && date.day in this.dayOfMonth && this._getWeekDay(date) in this.dayOfWeek) {
9606
9499
  return [
9607
9500
  this._checkTimeInSkippedRange(beforeJumpingPoint, afterJumpingPoint),
9608
9501
  afterJumpingPoint
@@ -9914,6 +9807,128 @@ function _unsupported_iterable_to_array(o, minLen) {
9914
9807
  if (n === "Map" || n === "Set") return Array.from(n);
9915
9808
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
9916
9809
  }
9810
+ function _ts_generator(thisArg, body) {
9811
+ var f, y, t, g, _ = {
9812
+ label: 0,
9813
+ sent: function() {
9814
+ if (t[0] & 1) throw t[1];
9815
+ return t[1];
9816
+ },
9817
+ trys: [],
9818
+ ops: []
9819
+ };
9820
+ return g = {
9821
+ next: verb(0),
9822
+ "throw": verb(1),
9823
+ "return": verb(2)
9824
+ }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
9825
+ return this;
9826
+ }), g;
9827
+ function verb(n) {
9828
+ return function(v) {
9829
+ return step([
9830
+ n,
9831
+ v
9832
+ ]);
9833
+ };
9834
+ }
9835
+ function step(op) {
9836
+ if (f) throw new TypeError("Generator is already executing.");
9837
+ while(_)try {
9838
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
9839
+ if (y = 0, t) op = [
9840
+ op[0] & 2,
9841
+ t.value
9842
+ ];
9843
+ switch(op[0]){
9844
+ case 0:
9845
+ case 1:
9846
+ t = op;
9847
+ break;
9848
+ case 4:
9849
+ _.label++;
9850
+ return {
9851
+ value: op[1],
9852
+ done: false
9853
+ };
9854
+ case 5:
9855
+ _.label++;
9856
+ y = op[1];
9857
+ op = [
9858
+ 0
9859
+ ];
9860
+ continue;
9861
+ case 7:
9862
+ op = _.ops.pop();
9863
+ _.trys.pop();
9864
+ continue;
9865
+ default:
9866
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
9867
+ _ = 0;
9868
+ continue;
9869
+ }
9870
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
9871
+ _.label = op[1];
9872
+ break;
9873
+ }
9874
+ if (op[0] === 6 && _.label < t[1]) {
9875
+ _.label = t[1];
9876
+ t = op;
9877
+ break;
9878
+ }
9879
+ if (t && _.label < t[2]) {
9880
+ _.label = t[2];
9881
+ _.ops.push(op);
9882
+ break;
9883
+ }
9884
+ if (t[2]) _.ops.pop();
9885
+ _.trys.pop();
9886
+ continue;
9887
+ }
9888
+ op = body.call(thisArg, _);
9889
+ } catch (e) {
9890
+ op = [
9891
+ 6,
9892
+ e
9893
+ ];
9894
+ y = 0;
9895
+ } finally{
9896
+ f = t = 0;
9897
+ }
9898
+ if (op[0] & 5) throw op[1];
9899
+ return {
9900
+ value: op[0] ? op[1] : void 0,
9901
+ done: true
9902
+ };
9903
+ }
9904
+ }
9905
+ var __awaiter = commonjsGlobal && commonjsGlobal.__awaiter || function(thisArg, _arguments, P, generator) {
9906
+ function adopt(value) {
9907
+ return _instanceof(value, P) ? value : new P(function(resolve) {
9908
+ resolve(value);
9909
+ });
9910
+ }
9911
+ return new (P || (P = Promise))(function(resolve, reject) {
9912
+ function fulfilled(value) {
9913
+ try {
9914
+ step(generator.next(value));
9915
+ } catch (e) {
9916
+ reject(e);
9917
+ }
9918
+ }
9919
+ function rejected(value) {
9920
+ try {
9921
+ step(generator["throw"](value));
9922
+ } catch (e) {
9923
+ reject(e);
9924
+ }
9925
+ }
9926
+ function step(result) {
9927
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
9928
+ }
9929
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9930
+ });
9931
+ };
9917
9932
  Object.defineProperty(job, "__esModule", {
9918
9933
  value: true
9919
9934
  });
@@ -9922,14 +9937,18 @@ var child_process_1 = require$$0;
9922
9937
  var errors_1 = errors;
9923
9938
  var time_1 = time;
9924
9939
  var CronJob = /*#__PURE__*/ function() {
9925
- function CronJob(cronTime, onTick, onComplete, start, timeZone, context, runOnInit, utcOffset, unrefTimeout) {
9940
+ function CronJob(cronTime, onTick, onComplete, start, timeZone, context, runOnInit, utcOffset, unrefTimeout, waitForCompletion, errorHandler) {
9926
9941
  _class_call_check(this, CronJob);
9927
9942
  this.running = false;
9928
9943
  this.unrefTimeout = false;
9929
9944
  this.lastExecution = null;
9930
9945
  this.runOnce = false;
9946
+ this.waitForCompletion = false;
9947
+ this._isCallbackRunning = false;
9931
9948
  this._callbacks = [];
9932
9949
  this.context = context !== null && context !== void 0 ? context : this;
9950
+ this.waitForCompletion = Boolean(waitForCompletion);
9951
+ this.errorHandler = errorHandler;
9933
9952
  if (timeZone != null && utcOffset != null) {
9934
9953
  throw new errors_1.ExclusiveParametersError("timeZone", "utcOffset");
9935
9954
  }
@@ -9952,11 +9971,17 @@ var CronJob = /*#__PURE__*/ function() {
9952
9971
  this.addCallback(this._fnWrap(onTick));
9953
9972
  if (runOnInit) {
9954
9973
  this.lastExecution = new Date();
9955
- this.fireOnTick();
9974
+ void this.fireOnTick();
9956
9975
  }
9957
9976
  if (start) this.start();
9958
9977
  }
9959
9978
  _create_class(CronJob, [
9979
+ {
9980
+ key: "isCallbackRunning",
9981
+ get: function get() {
9982
+ return this._isCallbackRunning;
9983
+ }
9984
+ },
9960
9985
  {
9961
9986
  key: "_fnWrap",
9962
9987
  value: function _fnWrap(cmd) {
@@ -10008,26 +10033,109 @@ var CronJob = /*#__PURE__*/ function() {
10008
10033
  {
10009
10034
  key: "fireOnTick",
10010
10035
  value: function fireOnTick() {
10011
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
10012
- try {
10013
- for(var _iterator = this._callbacks[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
10014
- var callback = _step.value;
10015
- void callback.call(this.context, this.onComplete);
10016
- }
10017
- } catch (err) {
10018
- _didIteratorError = true;
10019
- _iteratorError = err;
10020
- } finally{
10021
- try {
10022
- if (!_iteratorNormalCompletion && _iterator.return != null) {
10023
- _iterator.return();
10024
- }
10025
- } finally{
10026
- if (_didIteratorError) {
10027
- throw _iteratorError;
10036
+ return __awaiter(this, void 0, void 0, function() {
10037
+ var _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, callback, result, err, error;
10038
+ return _ts_generator(this, function(_state) {
10039
+ switch(_state.label){
10040
+ case 0:
10041
+ if (this.waitForCompletion && this._isCallbackRunning) return [
10042
+ 2
10043
+ ];
10044
+ this._isCallbackRunning = true;
10045
+ _state.label = 1;
10046
+ case 1:
10047
+ _state.trys.push([
10048
+ 1,
10049
+ 10,
10050
+ 11,
10051
+ 12
10052
+ ]);
10053
+ _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
10054
+ _state.label = 2;
10055
+ case 2:
10056
+ _state.trys.push([
10057
+ 2,
10058
+ 7,
10059
+ 8,
10060
+ 9
10061
+ ]);
10062
+ _iterator = this._callbacks[Symbol.iterator]();
10063
+ _state.label = 3;
10064
+ case 3:
10065
+ if (!!(_iteratorNormalCompletion = (_step = _iterator.next()).done)) return [
10066
+ 3,
10067
+ 6
10068
+ ];
10069
+ callback = _step.value;
10070
+ result = callback.call(this.context, this.onComplete);
10071
+ if (!this.waitForCompletion) return [
10072
+ 3,
10073
+ 5
10074
+ ];
10075
+ return [
10076
+ 4,
10077
+ result
10078
+ ];
10079
+ case 4:
10080
+ _state.sent();
10081
+ _state.label = 5;
10082
+ case 5:
10083
+ _iteratorNormalCompletion = true;
10084
+ return [
10085
+ 3,
10086
+ 3
10087
+ ];
10088
+ case 6:
10089
+ return [
10090
+ 3,
10091
+ 9
10092
+ ];
10093
+ case 7:
10094
+ err = _state.sent();
10095
+ _didIteratorError = true;
10096
+ _iteratorError = err;
10097
+ return [
10098
+ 3,
10099
+ 9
10100
+ ];
10101
+ case 8:
10102
+ try {
10103
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
10104
+ _iterator.return();
10105
+ }
10106
+ } finally{
10107
+ if (_didIteratorError) {
10108
+ throw _iteratorError;
10109
+ }
10110
+ }
10111
+ return [
10112
+ 7
10113
+ ];
10114
+ case 9:
10115
+ return [
10116
+ 3,
10117
+ 12
10118
+ ];
10119
+ case 10:
10120
+ error = _state.sent();
10121
+ if (this.errorHandler != null) this.errorHandler(error);
10122
+ else console.error("[Cron] error in callback", error);
10123
+ return [
10124
+ 3,
10125
+ 12
10126
+ ];
10127
+ case 11:
10128
+ this._isCallbackRunning = false;
10129
+ return [
10130
+ 7
10131
+ ];
10132
+ case 12:
10133
+ return [
10134
+ 2
10135
+ ];
10028
10136
  }
10029
- }
10030
- }
10137
+ });
10138
+ });
10031
10139
  }
10032
10140
  },
10033
10141
  {
@@ -10040,9 +10148,7 @@ var CronJob = /*#__PURE__*/ function() {
10040
10148
  key: "start",
10041
10149
  value: function start() {
10042
10150
  var _this = this;
10043
- if (this.running) {
10044
- return;
10045
- }
10151
+ if (this.running) return;
10046
10152
  var MAXDELAY = 2147483647;
10047
10153
  var timeout = this.cronTime.getTimeout();
10048
10154
  var remaining = 0;
@@ -10075,10 +10181,8 @@ var CronJob = /*#__PURE__*/ function() {
10075
10181
  } else {
10076
10182
  _this.lastExecution = new Date();
10077
10183
  _this.running = false;
10078
- if (!_this.runOnce) {
10079
- _this.start();
10080
- }
10081
- _this.fireOnTick();
10184
+ if (!_this.runOnce) _this.start();
10185
+ void _this.fireOnTick();
10082
10186
  }
10083
10187
  };
10084
10188
  if (timeout >= 0) {
@@ -10099,14 +10203,117 @@ var CronJob = /*#__PURE__*/ function() {
10099
10203
  return this.lastExecution;
10100
10204
  }
10101
10205
  },
10206
+ {
10207
+ key: "_executeOnComplete",
10208
+ value: function _executeOnComplete() {
10209
+ return __awaiter(this, void 0, void 0, function() {
10210
+ var error;
10211
+ return _ts_generator(this, function(_state) {
10212
+ switch(_state.label){
10213
+ case 0:
10214
+ if (typeof this.onComplete !== "function") return [
10215
+ 2
10216
+ ];
10217
+ _state.label = 1;
10218
+ case 1:
10219
+ _state.trys.push([
10220
+ 1,
10221
+ 3,
10222
+ ,
10223
+ 4
10224
+ ]);
10225
+ return [
10226
+ 4,
10227
+ this.onComplete.call(this.context)
10228
+ ];
10229
+ case 2:
10230
+ _state.sent();
10231
+ return [
10232
+ 3,
10233
+ 4
10234
+ ];
10235
+ case 3:
10236
+ error = _state.sent();
10237
+ console.error("[Cron] error in onComplete callback:", error);
10238
+ return [
10239
+ 3,
10240
+ 4
10241
+ ];
10242
+ case 4:
10243
+ return [
10244
+ 2
10245
+ ];
10246
+ }
10247
+ });
10248
+ });
10249
+ }
10250
+ },
10251
+ {
10252
+ key: "_waitForJobCompletion",
10253
+ value: function _waitForJobCompletion() {
10254
+ return __awaiter(this, void 0, void 0, function() {
10255
+ return _ts_generator(this, function(_state) {
10256
+ switch(_state.label){
10257
+ case 0:
10258
+ if (!this._isCallbackRunning) return [
10259
+ 3,
10260
+ 2
10261
+ ];
10262
+ return [
10263
+ 4,
10264
+ new Promise(function(resolve) {
10265
+ return setTimeout(resolve, 100);
10266
+ })
10267
+ ];
10268
+ case 1:
10269
+ _state.sent();
10270
+ return [
10271
+ 3,
10272
+ 0
10273
+ ];
10274
+ case 2:
10275
+ return [
10276
+ 2
10277
+ ];
10278
+ }
10279
+ });
10280
+ });
10281
+ }
10282
+ },
10102
10283
  {
10103
10284
  key: "stop",
10104
10285
  value: function stop() {
10286
+ var _this = this;
10105
10287
  if (this._timeout) clearTimeout(this._timeout);
10106
10288
  this.running = false;
10107
- if (typeof this.onComplete === "function") {
10108
- void this.onComplete.call(this.context);
10289
+ if (!this.waitForCompletion) {
10290
+ void this._executeOnComplete();
10291
+ return;
10109
10292
  }
10293
+ void Promise.resolve().then(function() {
10294
+ return __awaiter(_this, void 0, void 0, function() {
10295
+ return _ts_generator(this, function(_state) {
10296
+ switch(_state.label){
10297
+ case 0:
10298
+ return [
10299
+ 4,
10300
+ this._waitForJobCompletion()
10301
+ ];
10302
+ case 1:
10303
+ _state.sent();
10304
+ return [
10305
+ 4,
10306
+ this._executeOnComplete()
10307
+ ];
10308
+ case 2:
10309
+ _state.sent();
10310
+ return [
10311
+ 2
10312
+ ];
10313
+ }
10314
+ });
10315
+ });
10316
+ });
10110
10317
  }
10111
10318
  }
10112
10319
  ], [
@@ -10117,11 +10324,11 @@ var CronJob = /*#__PURE__*/ function() {
10117
10324
  throw new errors_1.ExclusiveParametersError("timeZone", "utcOffset");
10118
10325
  }
10119
10326
  if (params.timeZone != null) {
10120
- return new CronJob(params.cronTime, params.onTick, params.onComplete, params.start, params.timeZone, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout);
10327
+ return new CronJob(params.cronTime, params.onTick, params.onComplete, params.start, params.timeZone, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout, params.waitForCompletion, params.errorHandler);
10121
10328
  } else if (params.utcOffset != null) {
10122
- return new CronJob(params.cronTime, params.onTick, params.onComplete, params.start, null, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout);
10329
+ return new CronJob(params.cronTime, params.onTick, params.onComplete, params.start, null, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout, params.waitForCompletion, params.errorHandler);
10123
10330
  } else {
10124
- return new CronJob(params.cronTime, params.onTick, params.onComplete, params.start, params.timeZone, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout);
10331
+ return new CronJob(params.cronTime, params.onTick, params.onComplete, params.start, params.timeZone, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout, params.waitForCompletion, params.errorHandler);
10125
10332
  }
10126
10333
  }
10127
10334
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@digipair/skill-cron",
3
- "version": "0.63.1",
3
+ "version": "0.64.1",
4
4
  "dependencies": {
5
5
  "cron": "^3.1.7"
6
6
  },
File without changes