@powfix/core-js 0.13.13 → 0.13.14
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.
|
@@ -7,6 +7,7 @@ export declare class DateUtils {
|
|
|
7
7
|
static isUnix(value: unknown, strict?: boolean): boolean;
|
|
8
8
|
static isISO8601(value: unknown): boolean;
|
|
9
9
|
static isValid(value: unknown, format?: DATE.FORMAT, strict?: boolean): boolean;
|
|
10
|
+
static toDate(value: number | string | Date, format?: DATE.FORMAT, strict?: boolean): Date;
|
|
10
11
|
static relativeDate: (input: MomentInput, base?: MomentInput) => string;
|
|
11
12
|
static setLocale: (language: DateUtils.Locale) => void;
|
|
12
13
|
private static getRelativeTimeSpec;
|
|
@@ -65,6 +65,41 @@ class DateUtils {
|
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
|
+
static toDate(value, format, strict) {
|
|
69
|
+
var _a;
|
|
70
|
+
if (value instanceof Date) {
|
|
71
|
+
return value;
|
|
72
|
+
}
|
|
73
|
+
if (!DateUtils.isValid(value, format, strict)) {
|
|
74
|
+
throw new Error('invalid date');
|
|
75
|
+
}
|
|
76
|
+
if (format === undefined) {
|
|
77
|
+
if (DateUtils.isUnix(value, strict)) {
|
|
78
|
+
return DateUtils.toDate(value, DATE_1.DATE.FORMAT.UNIX);
|
|
79
|
+
}
|
|
80
|
+
if (DateUtils.isSeconds(value, strict)) {
|
|
81
|
+
return DateUtils.toDate(value, DATE_1.DATE.FORMAT.SECONDS);
|
|
82
|
+
}
|
|
83
|
+
if (DateUtils.isMilliseconds(value, strict)) {
|
|
84
|
+
return DateUtils.toDate(value, DATE_1.DATE.FORMAT.MILLISECONDS);
|
|
85
|
+
}
|
|
86
|
+
if (DateUtils.isISO8601(value)) {
|
|
87
|
+
return DateUtils.toDate(value, DATE_1.DATE.FORMAT.ISO_8601);
|
|
88
|
+
}
|
|
89
|
+
throw new Error(`no option to convert value to date`);
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
switch (format) {
|
|
93
|
+
case DATE_1.DATE.FORMAT.UNIX: return new Date(value * 1000);
|
|
94
|
+
case DATE_1.DATE.FORMAT.SECONDS: return new Date(value * 1000);
|
|
95
|
+
case DATE_1.DATE.FORMAT.MILLISECONDS: return new Date(value);
|
|
96
|
+
case DATE_1.DATE.FORMAT.ISO_8601: return new Date(value);
|
|
97
|
+
default: {
|
|
98
|
+
throw new Error(`unknown format: ${format}(${(_a = DATE_1.DATE.FORMAT.toString(format)) !== null && _a !== void 0 ? _a : 'unknown'})`);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
68
103
|
}
|
|
69
104
|
exports.DateUtils = DateUtils;
|
|
70
105
|
DateUtils.relativeDate = (input, base = Date.now()) => {
|