@push.rocks/smarttime 4.0.5 → 4.0.6

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.
@@ -11,6 +11,7 @@ export declare class CronManager {
11
11
  * starts the cronjob
12
12
  */
13
13
  start(): void;
14
+ private runCronCycle;
14
15
  /**
15
16
  * stops all cronjobs
16
17
  */
@@ -27,31 +27,32 @@ export class CronManager {
27
27
  for (const cronJob of this.cronjobs.getArray()) {
28
28
  cronJob.start();
29
29
  }
30
- const runCronCycle = async () => {
31
- this.executionTimeout = new plugins.smartdelay.Timeout(0);
32
- do {
33
- let nextRunningCronjob;
34
- for (const cronJob of this.cronjobs.getArray()) {
35
- cronJob.checkExecution();
36
- if (!nextRunningCronjob ||
37
- cronJob.getTimeToNextExecution() < nextRunningCronjob.getTimeToNextExecution()) {
38
- nextRunningCronjob = cronJob;
39
- }
40
- }
41
- if (nextRunningCronjob) {
42
- this.executionTimeout = new plugins.smartdelay.Timeout(nextRunningCronjob.getTimeToNextExecution());
43
- console.log(`Next CronJob scheduled in ${getMilliSecondsAsHumanReadableString(this.executionTimeout.getTimeLeft())}`);
44
- }
45
- else {
46
- this.executionTimeout = new plugins.smartdelay.Timeout(1000);
47
- console.log('no cronjobs specified! Checking again in 1 second');
48
- }
49
- await this.executionTimeout.promise;
50
- } while (this.status === 'started');
51
- };
52
- runCronCycle();
30
+ this.runCronCycle();
53
31
  }
54
32
  }
33
+ async runCronCycle() {
34
+ this.executionTimeout = new plugins.smartdelay.Timeout(0);
35
+ do {
36
+ let nextRunningCronjob;
37
+ for (const cronJob of this.cronjobs.getArray()) {
38
+ cronJob.checkExecution();
39
+ if (!nextRunningCronjob ||
40
+ cronJob.getTimeToNextExecution() < nextRunningCronjob.getTimeToNextExecution()) {
41
+ nextRunningCronjob = cronJob;
42
+ }
43
+ }
44
+ if (nextRunningCronjob) {
45
+ this.executionTimeout = new plugins.smartdelay.Timeout(nextRunningCronjob.getTimeToNextExecution());
46
+ console.log(`Next CronJob scheduled in ${getMilliSecondsAsHumanReadableString(this.executionTimeout.getTimeLeft())}`);
47
+ }
48
+ else {
49
+ this.executionTimeout = new plugins.smartdelay.Timeout(1000);
50
+ console.log('no cronjobs specified! Checking again in 1 second');
51
+ }
52
+ await this.executionTimeout.promise;
53
+ } while (this.status === 'started');
54
+ }
55
+ ;
55
56
  /**
56
57
  * stops all cronjobs
57
58
  */
@@ -68,4 +69,4 @@ export class CronManager {
68
69
  }
69
70
  }
70
71
  }
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnR0aW1lLmNsYXNzZXMuY3Jvbm1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9zbWFydHRpbWUuY2xhc3Nlcy5jcm9ubWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLHdCQUF3QixDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQXFCLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFNUUsTUFBTSxPQUFPLFdBQVc7SUFNdEI7UUFITyxXQUFNLEdBQTBCLFNBQVMsQ0FBQztRQUMxQyxhQUFRLEdBQUcsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBVyxDQUFDO0lBRXhDLENBQUM7SUFFVCxVQUFVLENBQUMsaUJBQXlCLEVBQUUsZUFBNkI7UUFDeEUsTUFBTSxVQUFVLEdBQUcsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlCLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUU7WUFDN0IsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ3BCO1FBRUQsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVNLGFBQWEsQ0FBQyxVQUFtQjtRQUN0QyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSztRQUNWLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUU7WUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUM7WUFDeEIsS0FBSyxNQUFNLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUM5QyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDakI7WUFDRCxNQUFNLFlBQVksR0FBRyxLQUFLLElBQUksRUFBRTtnQkFDOUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzFELEdBQUc7b0JBQ0QsSUFBSSxrQkFBMkIsQ0FBQztvQkFDaEMsS0FBSyxNQUFNLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxFQUFFO3dCQUM5QyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUM7d0JBQ3pCLElBQ0UsQ0FBQyxrQkFBa0I7NEJBQ25CLE9BQU8sQ0FBQyxzQkFBc0IsRUFBRSxHQUFHLGtCQUFrQixDQUFDLHNCQUFzQixFQUFFLEVBQzlFOzRCQUNBLGtCQUFrQixHQUFHLE9BQU8sQ0FBQzt5QkFDOUI7cUJBQ0Y7b0JBQ0QsSUFBSSxrQkFBa0IsRUFBRTt3QkFDdEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQ3BELGtCQUFrQixDQUFDLHNCQUFzQixFQUFFLENBQzVDLENBQUM7d0JBQ0YsT0FBTyxDQUFDLEdBQUcsQ0FDVCw2QkFBNkIsb0NBQW9DLENBQy9ELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsQ0FDcEMsRUFBRSxDQUNKLENBQUM7cUJBQ0g7eUJBQU07d0JBQ0wsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7d0JBQzdELE9BQU8sQ0FBQyxHQUFHLENBQUMsbURBQW1ELENBQUMsQ0FBQztxQkFDbEU7b0JBRUQsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDO2lCQUNyQyxRQUFRLElBQUksQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFO1lBQ3RDLENBQUMsQ0FBQztZQUNGLFlBQVksRUFBRSxDQUFDO1NBQ2hCO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksSUFBSTtRQUNULElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUU7WUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUM7WUFDeEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ2hDO2FBQU07WUFDTCxPQUFPLENBQUMsR0FBRyxDQUFDLGdFQUFnRSxDQUFDLENBQUM7U0FDL0U7UUFDRCxLQUFLLE1BQU0sSUFBSSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDM0MsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ2I7SUFDSCxDQUFDO0NBQ0YifQ==
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnR0aW1lLmNsYXNzZXMuY3Jvbm1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9zbWFydHRpbWUuY2xhc3Nlcy5jcm9ubWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLHdCQUF3QixDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQXFCLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFNUUsTUFBTSxPQUFPLFdBQVc7SUFNdEI7UUFITyxXQUFNLEdBQTBCLFNBQVMsQ0FBQztRQUMxQyxhQUFRLEdBQUcsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBVyxDQUFDO0lBRXhDLENBQUM7SUFFVCxVQUFVLENBQUMsaUJBQXlCLEVBQUUsZUFBNkI7UUFDeEUsTUFBTSxVQUFVLEdBQUcsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlCLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUU7WUFDN0IsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ3BCO1FBRUQsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVNLGFBQWEsQ0FBQyxVQUFtQjtRQUN0QyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSztRQUNWLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUU7WUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUM7WUFDeEIsS0FBSyxNQUFNLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUM5QyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDakI7WUFDRCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDckI7SUFDSCxDQUFDO0lBRU8sS0FBSyxDQUFDLFlBQVk7UUFDeEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUQsR0FBRztZQUNELElBQUksa0JBQTJCLENBQUM7WUFDaEMsS0FBSyxNQUFNLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUM5QyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3pCLElBQ0UsQ0FBQyxrQkFBa0I7b0JBQ25CLE9BQU8sQ0FBQyxzQkFBc0IsRUFBRSxHQUFHLGtCQUFrQixDQUFDLHNCQUFzQixFQUFFLEVBQzlFO29CQUNBLGtCQUFrQixHQUFHLE9BQU8sQ0FBQztpQkFDOUI7YUFDRjtZQUNELElBQUksa0JBQWtCLEVBQUU7Z0JBQ3RCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUNwRCxrQkFBa0IsQ0FBQyxzQkFBc0IsRUFBRSxDQUM1QyxDQUFDO2dCQUNGLE9BQU8sQ0FBQyxHQUFHLENBQ1QsNkJBQTZCLG9DQUFvQyxDQUMvRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLENBQ3BDLEVBQUUsQ0FDSixDQUFDO2FBQ0g7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzdELE9BQU8sQ0FBQyxHQUFHLENBQUMsbURBQW1ELENBQUMsQ0FBQzthQUNsRTtZQUVELE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQztTQUNyQyxRQUFRLElBQUksQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFO0lBQ3RDLENBQUM7SUFBQSxDQUFDO0lBRUY7O09BRUc7SUFDSSxJQUFJO1FBQ1QsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFBRTtZQUM3QixJQUFJLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQztZQUN4QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDaEM7YUFBTTtZQUNMLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0VBQWdFLENBQUMsQ0FBQztTQUMvRTtRQUNELEtBQUssTUFBTSxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUMzQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDYjtJQUNILENBQUM7Q0FDRiJ9
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@push.rocks/smarttime",
3
3
  "private": false,
4
- "version": "4.0.5",
4
+ "version": "4.0.6",
5
5
  "description": "handle time in smart ways",
6
6
  "main": "dist_ts/index.js",
7
7
  "typings": "dist_ts/index.d.ts",
@@ -13,19 +13,19 @@
13
13
  "buildDocs": "tsdoc"
14
14
  },
15
15
  "devDependencies": {
16
- "@gitzone/tsbuild": "^2.1.66",
17
- "@gitzone/tsbundle": "^2.0.8",
18
- "@gitzone/tsrun": "^1.2.44",
19
- "@gitzone/tstest": "^1.0.77",
20
- "@push.rocks/tapbundle": "^5.0.12",
21
- "@types/node": "^20.4.2"
16
+ "@git.zone/tsbuild": "^2.1.66",
17
+ "@git.zone/tsbundle": "^2.0.8",
18
+ "@git.zone/tsrun": "^1.2.44",
19
+ "@git.zone/tstest": "^1.0.77",
20
+ "@push.rocks/tapbundle": "^5.0.15",
21
+ "@types/node": "^20.8.7"
22
22
  },
23
23
  "dependencies": {
24
- "@push.rocks/lik": "^6.0.3",
24
+ "@push.rocks/lik": "^6.0.5",
25
25
  "@push.rocks/smartdelay": "^3.0.5",
26
26
  "@push.rocks/smartpromise": "^4.0.3",
27
- "croner": "^5.3.4",
28
- "dayjs": "^1.11.9",
27
+ "croner": "^7.0.3",
28
+ "dayjs": "^1.11.10",
29
29
  "is-nan": "^1.3.2",
30
30
  "pretty-ms": "^8.0.0"
31
31
  },
@@ -3,6 +3,6 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@push.rocks/smarttime',
6
- version: '4.0.5',
6
+ version: '4.0.6',
7
7
  description: 'handle time in smart ways'
8
8
  }
@@ -34,40 +34,41 @@ export class CronManager {
34
34
  for (const cronJob of this.cronjobs.getArray()) {
35
35
  cronJob.start();
36
36
  }
37
- const runCronCycle = async () => {
38
- this.executionTimeout = new plugins.smartdelay.Timeout(0);
39
- do {
40
- let nextRunningCronjob: CronJob;
41
- for (const cronJob of this.cronjobs.getArray()) {
42
- cronJob.checkExecution();
43
- if (
44
- !nextRunningCronjob ||
45
- cronJob.getTimeToNextExecution() < nextRunningCronjob.getTimeToNextExecution()
46
- ) {
47
- nextRunningCronjob = cronJob;
48
- }
49
- }
50
- if (nextRunningCronjob) {
51
- this.executionTimeout = new plugins.smartdelay.Timeout(
52
- nextRunningCronjob.getTimeToNextExecution()
53
- );
54
- console.log(
55
- `Next CronJob scheduled in ${getMilliSecondsAsHumanReadableString(
56
- this.executionTimeout.getTimeLeft()
57
- )}`
58
- );
59
- } else {
60
- this.executionTimeout = new plugins.smartdelay.Timeout(1000);
61
- console.log('no cronjobs specified! Checking again in 1 second');
62
- }
63
-
64
- await this.executionTimeout.promise;
65
- } while (this.status === 'started');
66
- };
67
- runCronCycle();
37
+ this.runCronCycle();
68
38
  }
69
39
  }
70
40
 
41
+ private async runCronCycle() {
42
+ this.executionTimeout = new plugins.smartdelay.Timeout(0);
43
+ do {
44
+ let nextRunningCronjob: CronJob;
45
+ for (const cronJob of this.cronjobs.getArray()) {
46
+ cronJob.checkExecution();
47
+ if (
48
+ !nextRunningCronjob ||
49
+ cronJob.getTimeToNextExecution() < nextRunningCronjob.getTimeToNextExecution()
50
+ ) {
51
+ nextRunningCronjob = cronJob;
52
+ }
53
+ }
54
+ if (nextRunningCronjob) {
55
+ this.executionTimeout = new plugins.smartdelay.Timeout(
56
+ nextRunningCronjob.getTimeToNextExecution()
57
+ );
58
+ console.log(
59
+ `Next CronJob scheduled in ${getMilliSecondsAsHumanReadableString(
60
+ this.executionTimeout.getTimeLeft()
61
+ )}`
62
+ );
63
+ } else {
64
+ this.executionTimeout = new plugins.smartdelay.Timeout(1000);
65
+ console.log('no cronjobs specified! Checking again in 1 second');
66
+ }
67
+
68
+ await this.executionTimeout.promise;
69
+ } while (this.status === 'started');
70
+ };
71
+
71
72
  /**
72
73
  * stops all cronjobs
73
74
  */
@@ -36,7 +36,7 @@ export class Timer {
36
36
  /**
37
37
  * the current timeout the needs to be canceled when this Timer is stopped
38
38
  */
39
- private currentTimeout: NodeJS.Timer;
39
+ private currentTimeout: NodeJS.Timeout;
40
40
 
41
41
  // a deferred triggeted when Timer has completed
42
42
  private completedDeferred = plugins.smartpromise.defer<void>();