update static functions for more advanced TimeStamp generation
This commit is contained in:
parent
c19bafdad0
commit
8bc4de5eac
23
dist/smarttime.classes.timestamp.d.ts
vendored
23
dist/smarttime.classes.timestamp.d.ts
vendored
@ -8,11 +8,28 @@ export declare class TimeStamp {
|
||||
*/
|
||||
date: Date;
|
||||
/**
|
||||
* The time as linux time
|
||||
* The time as linux time (milliseconds, not seconds though)
|
||||
* good for comparison
|
||||
*/
|
||||
linuxtime: number;
|
||||
constructor(creatorArg?: number | TimeStamp);
|
||||
milliSeconds: number;
|
||||
/**
|
||||
* The standard epoch time in seconds
|
||||
*/
|
||||
epochtime: number;
|
||||
/**
|
||||
* if derived from another TimeStamp points out the change in milliseconds
|
||||
*/
|
||||
change: number;
|
||||
constructor(creatorArg?: number);
|
||||
/**
|
||||
* returns new TimeStamp from milliseconds
|
||||
*/
|
||||
static fromMilliSeconds(milliSecondsArg: any): TimeStamp;
|
||||
/**
|
||||
* returns new TimeStamp for now with change set
|
||||
* @param timeStampArg
|
||||
*/
|
||||
static fromTimeStamp(timeStampArg: TimeStamp): TimeStamp;
|
||||
/**
|
||||
* Is the current instance older than the argument
|
||||
* @param TimeStampArg
|
||||
|
31
dist/smarttime.classes.timestamp.js
vendored
31
dist/smarttime.classes.timestamp.js
vendored
@ -6,17 +6,40 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
||||
*/
|
||||
class TimeStamp {
|
||||
constructor(creatorArg) {
|
||||
/**
|
||||
* if derived from another TimeStamp points out the change in milliseconds
|
||||
*/
|
||||
this.change = null;
|
||||
if (!creatorArg) {
|
||||
this.date = new Date();
|
||||
this.linuxtime = this.date.getTime();
|
||||
}
|
||||
else if (typeof creatorArg === 'number') {
|
||||
this.date = new Date(creatorArg);
|
||||
}
|
||||
this.milliSeconds = this.date.getTime();
|
||||
this.epochtime = Math.floor(this.milliSeconds / 1000);
|
||||
}
|
||||
/**
|
||||
* returns new TimeStamp from milliseconds
|
||||
*/
|
||||
static fromMilliSeconds(milliSecondsArg) {
|
||||
return new TimeStamp(milliSecondsArg);
|
||||
}
|
||||
/**
|
||||
* returns new TimeStamp for now with change set
|
||||
* @param timeStampArg
|
||||
*/
|
||||
static fromTimeStamp(timeStampArg) {
|
||||
let localTimeStamp = new TimeStamp();
|
||||
localTimeStamp.change = localTimeStamp.milliSeconds - timeStampArg.milliSeconds;
|
||||
return localTimeStamp;
|
||||
}
|
||||
/**
|
||||
* Is the current instance older than the argument
|
||||
* @param TimeStampArg
|
||||
*/
|
||||
isOlderThan(TimeStampArg) {
|
||||
if (this.linuxtime < TimeStampArg.linuxtime) {
|
||||
if (this.milliSeconds < TimeStampArg.milliSeconds) {
|
||||
return true;
|
||||
}
|
||||
else {
|
||||
@ -24,7 +47,7 @@ class TimeStamp {
|
||||
}
|
||||
}
|
||||
isYoungerThan(TimeStampArg) {
|
||||
if (this.linuxtime > TimeStampArg.linuxtime) {
|
||||
if (this.milliSeconds > TimeStampArg.milliSeconds) {
|
||||
return true;
|
||||
}
|
||||
else {
|
||||
@ -33,4 +56,4 @@ class TimeStamp {
|
||||
}
|
||||
}
|
||||
exports.TimeStamp = TimeStamp;
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnR0aW1lLmNsYXNzZXMudGltZXN0YW1wLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvc21hcnR0aW1lLmNsYXNzZXMudGltZXN0YW1wLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUE7OztHQUdHO0FBQ0g7SUFXRSxZQUFhLFVBQStCO1FBQzFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztZQUNoQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUE7WUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFBO1FBQ3RDLENBQUM7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsV0FBVyxDQUFFLFlBQXVCO1FBQ2xDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDNUMsTUFBTSxDQUFDLElBQUksQ0FBQTtRQUNiLENBQUM7UUFBQyxJQUFJLENBQUMsQ0FBQztZQUNOLE1BQU0sQ0FBQyxLQUFLLENBQUE7UUFDZCxDQUFDO0lBQ0gsQ0FBQztJQUVELGFBQWEsQ0FBRSxZQUF1QjtRQUNwQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQzVDLE1BQU0sQ0FBQyxJQUFJLENBQUE7UUFDYixDQUFDO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDTixNQUFNLENBQUMsS0FBSyxDQUFBO1FBQ2QsQ0FBQztJQUNILENBQUM7Q0FDRjtBQXJDRCw4QkFxQ0MifQ==
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnR0aW1lLmNsYXNzZXMudGltZXN0YW1wLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvc21hcnR0aW1lLmNsYXNzZXMudGltZXN0YW1wLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUE7OztHQUdHO0FBQ0g7SUFzQkUsWUFBYSxVQUFtQjtRQUxoQzs7V0FFRztRQUNILFdBQU0sR0FBVyxJQUFJLENBQUE7UUFHbkIsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1lBQ2hCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQTtRQUN4QixDQUFDO1FBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sVUFBVSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDMUMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNsQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFBO1FBQ3ZDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxDQUFBO0lBQ3ZELENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBRSxlQUFlO1FBQ3RDLE1BQU0sQ0FBQyxJQUFJLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQTtJQUN2QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLGFBQWEsQ0FBRSxZQUF1QjtRQUMzQyxJQUFJLGNBQWMsR0FBRyxJQUFJLFNBQVMsRUFBRSxDQUFBO1FBQ3BDLGNBQWMsQ0FBQyxNQUFNLEdBQUcsY0FBYyxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUMsWUFBWSxDQUFBO1FBQy9FLE1BQU0sQ0FBQyxjQUFjLENBQUE7SUFDdkIsQ0FBQztJQUVEOzs7T0FHRztJQUNILFdBQVcsQ0FBRSxZQUF1QjtRQUNsQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1lBQ2xELE1BQU0sQ0FBQyxJQUFJLENBQUE7UUFDYixDQUFDO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDTixNQUFNLENBQUMsS0FBSyxDQUFBO1FBQ2QsQ0FBQztJQUNILENBQUM7SUFFRCxhQUFhLENBQUUsWUFBdUI7UUFDcEMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztZQUNsRCxNQUFNLENBQUMsSUFBSSxDQUFBO1FBQ2IsQ0FBQztRQUFDLElBQUksQ0FBQyxDQUFDO1lBQ04sTUFBTSxDQUFDLEtBQUssQ0FBQTtRQUNkLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUFwRUQsOEJBb0VDIn0=
|
@ -11,15 +11,46 @@ export class TimeStamp {
|
||||
date: Date
|
||||
|
||||
/**
|
||||
* The time as linux time
|
||||
* The time as linux time (milliseconds, not seconds though)
|
||||
* good for comparison
|
||||
*/
|
||||
linuxtime: number
|
||||
constructor (creatorArg?: number | TimeStamp) {
|
||||
milliSeconds: number
|
||||
|
||||
/**
|
||||
* The standard epoch time in seconds
|
||||
*/
|
||||
epochtime: number
|
||||
|
||||
/**
|
||||
* if derived from another TimeStamp points out the change in milliseconds
|
||||
*/
|
||||
change: number = null
|
||||
|
||||
constructor (creatorArg?: number) {
|
||||
if (!creatorArg) {
|
||||
this.date = new Date()
|
||||
this.linuxtime = this.date.getTime()
|
||||
} else if (typeof creatorArg === 'number') {
|
||||
this.date = new Date(creatorArg)
|
||||
}
|
||||
this.milliSeconds = this.date.getTime()
|
||||
this.epochtime = Math.floor(this.milliSeconds / 1000)
|
||||
}
|
||||
|
||||
/**
|
||||
* returns new TimeStamp from milliseconds
|
||||
*/
|
||||
static fromMilliSeconds (milliSecondsArg) {
|
||||
return new TimeStamp(milliSecondsArg)
|
||||
}
|
||||
|
||||
/**
|
||||
* returns new TimeStamp for now with change set
|
||||
* @param timeStampArg
|
||||
*/
|
||||
static fromTimeStamp (timeStampArg: TimeStamp) {
|
||||
let localTimeStamp = new TimeStamp()
|
||||
localTimeStamp.change = localTimeStamp.milliSeconds - timeStampArg.milliSeconds
|
||||
return localTimeStamp
|
||||
}
|
||||
|
||||
/**
|
||||
@ -27,7 +58,7 @@ export class TimeStamp {
|
||||
* @param TimeStampArg
|
||||
*/
|
||||
isOlderThan (TimeStampArg: TimeStamp) {
|
||||
if (this.linuxtime < TimeStampArg.linuxtime) {
|
||||
if (this.milliSeconds < TimeStampArg.milliSeconds) {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
@ -35,7 +66,7 @@ export class TimeStamp {
|
||||
}
|
||||
|
||||
isYoungerThan (TimeStampArg: TimeStamp) {
|
||||
if (this.linuxtime > TimeStampArg.linuxtime) {
|
||||
if (this.milliSeconds > TimeStampArg.milliSeconds) {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
|
Loading…
Reference in New Issue
Block a user