fix(core): update

This commit is contained in:
Philipp Kunz 2021-10-06 11:58:36 +02:00
parent 419fe80bde
commit 76768a1307
11 changed files with 14636 additions and 34 deletions

14625
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -27,7 +27,8 @@
"@pushrocks/smartpromise": "^3.0.2",
"croner": "^1.1.23",
"dayjs": "^1.9.1",
"is-nan": "^1.3.0"
"is-nan": "^1.3.0",
"pretty-ms": "^7.0.1"
},
"files": [
"ts/**/*",

View File

@ -17,7 +17,7 @@ tap.test('should create a valid cronJon', async (tools) => {
let counter2 = 0;
let counter3 = 0;
const cronJob = testCronManager.addCronjob('*/2 * * * * *', async () => {
if (counter === 10) {
if (counter === 5) {
testCronManager.removeCronjob(cronJob);
done.resolve();
}
@ -25,7 +25,7 @@ tap.test('should create a valid cronJon', async (tools) => {
console.log(`${new Date().getSeconds()} hey ${counter} -> runs every 2 seconds`);
});
const cronJob2 = testCronManager.addCronjob('*/3 * * * * *', async () => {
if (counter2 === 10) {
if (counter2 === 5) {
testCronManager.removeCronjob(cronJob2);
done2.resolve();
}
@ -33,7 +33,7 @@ tap.test('should create a valid cronJon', async (tools) => {
console.log(`${new Date().getSeconds()} hey ${counter2} -> runs every 3 seconds`);
});
const cronJob3 = testCronManager.addCronjob('*/4 * * * * *', async () => {
if (counter3 === 10) {
if (counter3 === 5) {
done3.resolve();
}
counter3++;

View File

@ -2,6 +2,11 @@ import { expect, tap } from '@pushrocks/tapbundle';
import * as smarttime from '../ts/index';
tap.test('should create a valid JavaScript Date', async () => {
const extendedDate = new smarttime.ExtendedDate(Date.now());
console.log(extendedDate);
});
tap.test('should create a valid JavaScript Date from European TimeStamp', async () => {
const extendedDate = smarttime.ExtendedDate.fromEuropeanDate('1.6.2018');
console.log(extendedDate);

View File

@ -1,5 +1,6 @@
import * as plugins from './smarttime.plugins';
import { CronJob } from './smarttime.classes.cronjob';
import { getMilliSecondsAsHumanReadableString } from './smarttime.units';
export class CronManager {
public executionTimeout: plugins.smartdelay.Timeout<void>;
@ -47,16 +48,19 @@ export class CronManager {
}
}
if (nextRunningCronjob) {
this.executionTimeout = new plugins.smartdelay.Timeout(nextRunningCronjob.getTimeToNextExecution());
this.executionTimeout = new plugins.smartdelay.Timeout(
nextRunningCronjob.getTimeToNextExecution()
);
console.log(
`Next CronJob scheduled in ${this.executionTimeout.getTimeLeft()} milliseconds`
`Next CronJob scheduled in ${getMilliSecondsAsHumanReadableString(
this.executionTimeout.getTimeLeft()
)}`
);
} else {
this.executionTimeout = new plugins.smartdelay.Timeout(1000);
console.log('no cronjobs specified! Checking again in 1 second');
}
await this.executionTimeout.promise;
} while (this.status === 'started');
};

View File

@ -73,7 +73,7 @@ export class ExtendedDate extends Date {
// INSTANCE
public timezone: TAvailableZone;
constructor(unixMilli: number) {
constructor(unixMilli: number = Date.now()) {
super(unixMilli);
}

View File

@ -8,7 +8,7 @@ export class TimeStamp {
/**
* returns new TimeStamp from milliseconds
*/
public static fromMilliSeconds(milliSecondsArg) {
public static fromMilliSeconds(milliSecondsArg: number) {
return new TimeStamp(milliSecondsArg);
}

View File

@ -5,11 +5,12 @@ import * as smartpromise from '@pushrocks/smartpromise';
export { lik, smartdelay, smartpromise };
// third parties
import croner from 'croner';
// third parties;
const croner: any = require('croner');
import dayjs from 'dayjs';
import isToday from 'dayjs/plugin/isToday';
import prettyMs from 'pretty-ms';
dayjs.extend(isToday);
export { croner, dayjs };
export { croner, dayjs, prettyMs };

View File

@ -1,3 +1,5 @@
import * as plugins from './smarttime.plugins';
export let units = {
years: (timesArg = 1): number => {
return timesArg * 3.154e10;
@ -30,7 +32,7 @@ export interface IUnitCombinationArg {
export let getMilliSecondsFromUnits = (combinationArg: IUnitCombinationArg) => {
let timeInMilliseconds = 0;
let addMilliSeconds = (milliSecondsArg) => {
let addMilliSeconds = (milliSecondsArg: number) => {
timeInMilliseconds = timeInMilliseconds + milliSecondsArg;
};
if (combinationArg.years) {
@ -54,3 +56,7 @@ export let getMilliSecondsFromUnits = (combinationArg: IUnitCombinationArg) => {
return timeInMilliseconds;
};
export const getMilliSecondsAsHumanReadableString = (milliSecondsArg: number): string => {
return plugins.prettyMs(milliSecondsArg);
}