summaryrefslogtreecommitdiff
path: root/src/prelude
diff options
context:
space:
mode:
authorSatsuki Yanagi <17376330+u1-liquid@users.noreply.github.com>2019-07-25 01:36:48 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2019-07-25 01:36:48 +0900
commit88f5e8e8e2ae759597387f69d579d5915d966b66 (patch)
treeb1534e994e464c194fce9122fe60e8f0546e2730 /src/prelude
parentMerge branch 'develop' of https://github.com/syuilo/misskey into develop (diff)
downloadmisskey-88f5e8e8e2ae759597387f69d579d5915d966b66.tar.gz
misskey-88f5e8e8e2ae759597387f69d579d5915d966b66.tar.bz2
misskey-88f5e8e8e2ae759597387f69d579d5915d966b66.zip
Bye moment from package.json (#5215)
* Bye moment from package.json * Use Mapped types for argument type definition
Diffstat (limited to 'src/prelude')
-rw-r--r--src/prelude/time.ts31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/prelude/time.ts b/src/prelude/time.ts
new file mode 100644
index 0000000000..b1824b42ee
--- /dev/null
+++ b/src/prelude/time.ts
@@ -0,0 +1,31 @@
+const dateTimeIntervals = {
+ 'days': 86400000,
+ 'hours': 3600000,
+};
+
+export function DateUTC(time: number[]): Date {
+ const r = new Date(0);
+ r.setUTCFullYear(time[0], time[1], time[2]);
+ if (time[3]) r.setUTCHours(time[3], ...time.slice(4));
+ return r;
+}
+
+export function isTimeSame(a: Date, b: Date): boolean {
+ return (a.getTime() - b.getTime()) === 0;
+}
+
+export function isTimeBefore(a: Date, b: Date): boolean {
+ return (a.getTime() - b.getTime()) < 0;
+}
+
+export function isTimeAfter(a: Date, b: Date): boolean {
+ return (a.getTime() - b.getTime()) > 0;
+}
+
+export function addTimespan(x: Date, value: number, span: keyof typeof dateTimeIntervals): Date {
+ return new Date(x.getTime() + (value * dateTimeIntervals[span]));
+}
+
+export function subtractTimespan(x: Date, value: number, span: keyof typeof dateTimeIntervals): Date {
+ return new Date(x.getTime() - (value * dateTimeIntervals[span]));
+}