@giveback007/util-lib 1.0.4 → 2.0.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"general.js","sourceRoot":"","sources":["../src/general.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"general.js","sourceRoot":"","sources":["../src/general.ts"],"names":[],"mappings":"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"}
package/dist/http.d.ts ADDED
@@ -0,0 +1,22 @@
1
+ import { Dict } from "./@types";
2
+ export declare function joinParamsToUrl(url: string, searchParams: Dict<string | number | undefined | null>): string;
3
+ export declare function fetchJSON<T = any, ErrData = any>(url: string, options?: {
4
+ method?: 'GET';
5
+ searchParams?: Dict<string | number | undefined | null>;
6
+ headers?: Dict<string>;
7
+ }): Promise<{
8
+ ok: true;
9
+ data: T;
10
+ err: undefined;
11
+ res: Response;
12
+ } | {
13
+ ok: false;
14
+ data: ErrData | undefined;
15
+ err: Error;
16
+ res: Response;
17
+ } | {
18
+ ok: false;
19
+ data: undefined;
20
+ err: Error;
21
+ res: Response | undefined;
22
+ }>;
package/dist/http.js ADDED
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.joinParamsToUrl = joinParamsToUrl;
4
+ exports.fetchJSON = fetchJSON;
5
+ const test_1 = require("./test");
6
+ function joinParamsToUrl(url, searchParams) {
7
+ const u = new URL(url);
8
+ Object.entries(searchParams).forEach(([key, value]) => !(0, test_1.nonVal)(value)
9
+ &&
10
+ u.searchParams.append(key, value));
11
+ return u.href;
12
+ }
13
+ async function fetchJSON(url, options = {}) {
14
+ const _url = joinParamsToUrl(url, options.searchParams || {});
15
+ delete options.searchParams;
16
+ if (!options.method)
17
+ options.method = 'GET';
18
+ if (!options.headers)
19
+ options.headers = {};
20
+ options.headers['Accept'] = 'application/json';
21
+ let res = undefined;
22
+ try {
23
+ res = await fetch(_url, options);
24
+ if (res.ok && res.status === 200) {
25
+ return {
26
+ ok: true,
27
+ data: await res.json(),
28
+ err: undefined, res
29
+ };
30
+ }
31
+ else {
32
+ let data;
33
+ try {
34
+ data = await res.json();
35
+ }
36
+ catch {
37
+ data = undefined;
38
+ }
39
+ return {
40
+ ok: false,
41
+ data: data,
42
+ err: new Error(res.statusText),
43
+ res
44
+ };
45
+ }
46
+ }
47
+ catch (err) {
48
+ console.log(err);
49
+ return {
50
+ ok: false,
51
+ data: undefined,
52
+ err: err instanceof Error ? err : new Error(err),
53
+ res
54
+ };
55
+ }
56
+ }
57
+ //# sourceMappingURL=http.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":";;AAGA,0CAaC;AAED,8BAiDC;AAlED,iCAAgC;AAEhC,SAAgB,eAAe,CAC3B,GAAW,EACX,YAAsD;IAEtD,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAEvB,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAClD,CAAC,IAAA,aAAM,EAAC,KAAK,CAAC;;YAEd,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,KAAe,CAAC,CAC9C,CAAC;IAEF,OAAO,CAAC,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,SAAS,CAC3B,GAAW,EACX,UAII,EAAE;IAEN,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;IAC9D,OAAO,OAAO,CAAC,YAAY,CAAC;IAE5B,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;IAC5C,IAAI,CAAC,OAAO,CAAC,OAAO;QAAE,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;IAC3C,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,kBAAkB,CAAC;IAG/C,IAAI,GAAG,GAAyB,SAAS,CAAC;IAC1C,IAAI,CAAC;QACD,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,OAAc,CAAC,CAAC;QACxC,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC/B,OAAO;gBACH,EAAE,EAAE,IAAY;gBAChB,IAAI,EAAE,MAAM,GAAG,CAAC,IAAI,EAAO;gBAC3B,GAAG,EAAE,SAAS,EAAE,GAAG;aACtB,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,IAAI,IAAyB,CAAC;YAC9B,IAAI,CAAC;gBACD,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;YAC3B,CAAC;YAAC,MAAM,CAAC;gBACL,IAAI,GAAG,SAAS,CAAC;YACrB,CAAC;YAED,OAAO;gBACH,EAAE,EAAE,KAAc;gBAClB,IAAI,EAAE,IAA2B;gBACjC,GAAG,EAAE,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;gBAC9B,GAAG;aACN,CAAC;QACN,CAAC;IACL,CAAC;IAAC,OAAM,GAAG,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAChB,OAAO;YACH,EAAE,EAAE,KAAc;YAClB,IAAI,EAAE,SAAS;YACf,GAAG,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAU,CAAC;YACvD,GAAG;SACN,CAAA;IACL,CAAC;AACL,CAAC"}
package/dist/index.d.ts CHANGED
@@ -9,3 +9,4 @@ export * from './object';
9
9
  export * from './string';
10
10
  export * from './test';
11
11
  export * from './time';
12
+ export * from './http';
package/dist/index.js CHANGED
@@ -25,4 +25,5 @@ __exportStar(require("./object"), exports);
25
25
  __exportStar(require("./string"), exports);
26
26
  __exportStar(require("./test"), exports);
27
27
  __exportStar(require("./time"), exports);
28
+ __exportStar(require("./http"), exports);
28
29
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,0CAAwB;AACxB,0CAAwB;AACxB,6CAA2B;AAC3B,4CAA0B;AAC1B,4CAA0B;AAC1B,2CAAyB;AACzB,2CAAyB;AACzB,2CAAyB;AACzB,yCAAuB;AACvB,yCAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,0CAAwB;AACxB,0CAAwB;AACxB,6CAA2B;AAC3B,4CAA0B;AAC1B,4CAA0B;AAC1B,2CAAyB;AACzB,2CAAyB;AACzB,2CAAyB;AACzB,yCAAuB;AACvB,yCAAuB;AACvB,yCAAuB"}
package/dist/time.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- import { AnyDate, MsTime, num, PartialTimeObj, str, TimeArr, TimeObj } from '.';
1
+ import { Temporal } from '@js-temporal/polyfill';
2
+ import { AnyDate, MsTime, num, str, TimeArr, TimeObj } from '.';
2
3
  export declare const msTime: MsTime;
3
4
  export declare const weekTuple: readonly ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
4
5
  /**
@@ -11,28 +12,6 @@ export declare const weekTuple: readonly ["Sun", "Mon", "Tue", "Wed", "Thu", "Fr
11
12
  * @example "15:07:56:150"
12
13
  */
13
14
  export declare function dateTimeToString(dt?: Date): string;
14
- /** Gives the 'start' and 'end' of a day.
15
- *
16
- * Start of day is the first ms of the day
17
- *
18
- * End of day is the last ms of the day
19
- */
20
- export declare function getDayStartEnd(t: number | Date, type?: 'unix' | 'local'): {
21
- start: Date;
22
- end: Date;
23
- };
24
- export declare function weekStartEnd(t: number | Date, weekStart?: 'sun' | 'mon', type?: 'unix' | 'local'): {
25
- start: Date;
26
- end: Date;
27
- };
28
- export declare function monthStartEnd(t: number | Date, type?: 'unix' | 'local'): {
29
- start: Date;
30
- end: Date;
31
- };
32
- export declare function yearStartEnd(t: number | Date, type?: 'unix' | 'local'): {
33
- start: Date;
34
- end: Date;
35
- };
36
15
  export declare const time: {
37
16
  /** Seconds(n) -> to ms */
38
17
  readonly sec: (n: num) => number;
@@ -72,16 +51,15 @@ export declare const time: {
72
51
  };
73
52
  export declare const humanizedTime: (date: AnyDate) => string | null;
74
53
  /** A Date substitute, to make working with time easier and more versatile */
75
- export declare function getTime(date: TimeObj | PartialTimeObj | TimeArr, ianaTimeZone?: str): {
54
+ export declare function getTime(t: TimeArr | num, timeZone?: str): {
55
+ zonedTemporal: Temporal.ZonedDateTime;
56
+ date: Date;
76
57
  tzOffsetMin: number;
77
58
  localISO: string;
59
+ timeObj: TimeObj;
78
60
  isoStr: string;
79
- Date: Date;
61
+ timeZone: string;
80
62
  epochMs: number;
81
- ianaTZ: string;
82
- timeObj: TimeObj;
83
63
  };
84
- export declare function timeZoneOffsetMin(ianaTimeZone: string, date?: Date): number;
85
- export declare const timeObj: (dt: Date) => TimeObj;
64
+ export declare const timeObj: (dt: Date | Temporal.ZonedDateTime) => TimeObj;
86
65
  export declare function parseDate(d: AnyDate): Date | null;
87
- export declare function toLocalISOString(date: Date, tzOffsetMin?: number): string;
package/dist/time.js CHANGED
@@ -2,14 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.timeObj = exports.humanizedTime = exports.time = exports.weekTuple = exports.msTime = void 0;
4
4
  exports.dateTimeToString = dateTimeToString;
5
- exports.getDayStartEnd = getDayStartEnd;
6
- exports.weekStartEnd = weekStartEnd;
7
- exports.monthStartEnd = monthStartEnd;
8
- exports.yearStartEnd = yearStartEnd;
9
5
  exports.getTime = getTime;
10
- exports.timeZoneOffsetMin = timeZoneOffsetMin;
11
6
  exports.parseDate = parseDate;
12
- exports.toLocalISOString = toLocalISOString;
7
+ const polyfill_1 = require("@js-temporal/polyfill");
13
8
  const _1 = require(".");
14
9
  exports.msTime = {
15
10
  s: 1000,
@@ -35,71 +30,6 @@ function dateTimeToString(dt = new Date()) {
35
30
  const ms = ('00' + dt.getMilliseconds()).slice(-3);
36
31
  return `${h}:${m}:${s}:${ms}`;
37
32
  }
38
- /** Gives the 'start' and 'end' of a day.
39
- *
40
- * Start of day is the first ms of the day
41
- *
42
- * End of day is the last ms of the day
43
- */
44
- function getDayStartEnd(t, type = 'local') {
45
- if ((0, _1.isType)(t, 'number'))
46
- t = new Date(t);
47
- const y = t.getFullYear();
48
- const m = t.getMonth();
49
- const d = t.getDate();
50
- let start = new Date(y, m, d);
51
- let end = new Date(y, m, d, 23, 59, 59, 999);
52
- if (type === 'unix') {
53
- const tzOffset = exports.time.min(start.getTimezoneOffset());
54
- start = new Date(start.getTime() + tzOffset);
55
- end = new Date(end.getTime() + tzOffset);
56
- }
57
- return { start, end };
58
- }
59
- function weekStartEnd(t, weekStart = 'sun', type = 'local') {
60
- if ((0, _1.isType)(t, 'number'))
61
- t = new Date(t);
62
- const wd = t.getDay();
63
- const startOffset = wd * -1 + (weekStart === 'mon' ? 1 : 0);
64
- const endOffset = 6 + startOffset;
65
- const s = new Date(t.getTime() + exports.time.dys(startOffset));
66
- const e = new Date(t.getTime() + exports.time.dys(endOffset));
67
- let start = new Date(s.getFullYear(), s.getMonth(), s.getDate());
68
- let end = new Date(e.getFullYear(), e.getMonth(), e.getDate(), 23, 59, 59, 999);
69
- if (type === 'unix') {
70
- const tzOffset = exports.time.min(start.getTimezoneOffset());
71
- start = new Date(start.getTime() + tzOffset);
72
- end = new Date(end.getTime() + tzOffset);
73
- }
74
- return { start, end };
75
- }
76
- function monthStartEnd(t, type = 'local') {
77
- if ((0, _1.isType)(t, 'number'))
78
- t = new Date(t);
79
- const y = t.getFullYear();
80
- const m = t.getMonth();
81
- let start = new Date(y, m, 1);
82
- let end = new Date(y, m, 0, 23, 59, 59, 999);
83
- if (type === 'unix') {
84
- const tzOffset = exports.time.min(start.getTimezoneOffset());
85
- start = new Date(start.getTime() + tzOffset);
86
- end = new Date(end.getTime() + tzOffset);
87
- }
88
- return { start, end };
89
- }
90
- function yearStartEnd(t, type = 'local') {
91
- if ((0, _1.isType)(t, 'number'))
92
- t = new Date(t);
93
- const y = t.getFullYear();
94
- let start = new Date(y, 0, 1);
95
- let end = new Date(y, 12, 0, 23, 59, 59, 999);
96
- if (type === 'unix') {
97
- const tzOffset = exports.time.min(start.getTimezoneOffset());
98
- start = new Date(start.getTime() + tzOffset);
99
- end = new Date(end.getTime() + tzOffset);
100
- }
101
- return { start, end };
102
- }
103
33
  exports.time = {
104
34
  /** Seconds(n) -> to ms */
105
35
  sec: (n) => 1_000 * n,
@@ -167,35 +97,42 @@ const humanizedTime = (date) => {
167
97
  exports.humanizedTime = humanizedTime;
168
98
  // Intl.supportedValuesOf('timeZone');
169
99
  /** A Date substitute, to make working with time easier and more versatile */
170
- function getTime(date, ianaTimeZone) {
171
- const dt = parseDate(date);
172
- if (!dt)
173
- throw new Error('Invalid Date');
174
- ianaTimeZone = ianaTimeZone || Intl.DateTimeFormat().resolvedOptions().timeZone;
175
- const tzOffsetMin = timeZoneOffsetMin(ianaTimeZone, dt);
176
- const localISO = toLocalISOString(dt, tzOffsetMin);
177
- const finalDateObj = new Date(localISO);
100
+ function getTime(t, timeZone) {
101
+ timeZone = timeZone || Intl.DateTimeFormat().resolvedOptions().timeZone;
102
+ let zonedTemporal;
103
+ let date;
104
+ let isoStr;
105
+ if (typeof t === 'number') {
106
+ date = new Date(t);
107
+ isoStr = date.toISOString();
108
+ zonedTemporal = polyfill_1.Temporal.ZonedDateTime.from(isoStr + `[${timeZone}]`);
109
+ }
110
+ else {
111
+ zonedTemporal = polyfill_1.Temporal.ZonedDateTime.from({
112
+ year: t[0],
113
+ month: t[1] || 1,
114
+ day: t[2] || 1,
115
+ hour: t[3] || 0,
116
+ minute: t[4] || 0,
117
+ second: t[5] || 0,
118
+ millisecond: t[6] || 0,
119
+ timeZone
120
+ });
121
+ date = new Date(zonedTemporal.epochMilliseconds);
122
+ isoStr = date.toISOString();
123
+ }
178
124
  return {
179
- tzOffsetMin, // this flips from the JS output, to align with the ISO output (- when js would be +)
180
- localISO,
181
- isoStr: finalDateObj.toISOString(),
182
- Date: finalDateObj,
183
- epochMs: finalDateObj.getTime(),
184
- ianaTZ: ianaTimeZone,
185
- timeObj: (0, exports.timeObj)(dt),
125
+ zonedTemporal,
126
+ date,
127
+ tzOffsetMin: zonedTemporal.offsetNanoseconds / 60_000_000_000,
128
+ localISO: zonedTemporal.toJSON(),
129
+ timeObj: (0, exports.timeObj)(zonedTemporal),
130
+ isoStr,
131
+ timeZone: timeZone,
132
+ epochMs: zonedTemporal.epochMilliseconds,
186
133
  };
187
134
  }
188
- function timeZoneOffsetMin(ianaTimeZone, date = new Date()) {
189
- const local = new Date(date);
190
- local.setMilliseconds(0);
191
- local.setSeconds(0);
192
- const tzTime = local.toLocaleString('US-en', { timeZone: ianaTimeZone });
193
- const tzDt = new Date(tzTime);
194
- const offsetMs = -local.getTimezoneOffset() * 60_000;
195
- const utcTime = tzDt.getTime() + offsetMs;
196
- return (utcTime - local.getTime()) / 60_000;
197
- }
198
- const timeObj = (dt) => ({
135
+ const timeObj = (dt) => dt instanceof Date ? ({
199
136
  y: dt.getFullYear(),
200
137
  m: dt.getMonth() + 1,
201
138
  d: dt.getDate(),
@@ -204,6 +141,15 @@ const timeObj = (dt) => ({
204
141
  sec: dt.getSeconds(),
205
142
  ms: dt.getMilliseconds(),
206
143
  wDay: exports.weekTuple[dt.getDay()]
144
+ }) : ({
145
+ y: dt.year,
146
+ m: dt.month,
147
+ d: dt.day,
148
+ h: dt.hour,
149
+ min: dt.minute,
150
+ sec: dt.second,
151
+ ms: dt.millisecond,
152
+ wDay: exports.weekTuple[dt.dayOfWeek]
207
153
  });
208
154
  exports.timeObj = timeObj;
209
155
  function parseDate(d) {
@@ -220,12 +166,4 @@ function parseDate(d) {
220
166
  }
221
167
  return dt;
222
168
  }
223
- function toLocalISOString(date, tzOffsetMin = -date.getTimezoneOffset()) {
224
- const sign = tzOffsetMin >= 0 ? '+' : '-';
225
- const diffHours = String(Math.floor(Math.abs(tzOffsetMin) / 60)).padStart(2, '0');
226
- const diffMinutes = String(Math.abs(tzOffsetMin) % 60).padStart(2, '0');
227
- return date.toLocaleString('lt').replace(' ', 'T') // or use: "sv-SE" (same effect)
228
- + '.' + (date.getMilliseconds() + '').padStart(3, '0')
229
- + sign + diffHours + ':' + diffMinutes;
230
- }
231
169
  //# sourceMappingURL=time.js.map
package/dist/time.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"time.js","sourceRoot":"","sources":["../src/time.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"time.js","sourceRoot":"","sources":["../src/time.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@giveback007/util-lib",
3
- "version": "1.0.4",
3
+ "version": "2.0.1",
4
4
  "description": "Utility library",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -25,6 +25,7 @@
25
25
  },
26
26
  "homepage": "https://github.com/Giveback007/util-lib#readme",
27
27
  "dependencies": {
28
+ "@js-temporal/polyfill": "^0.5.1",
28
29
  "tslib": "^2.8.1"
29
30
  },
30
31
  "devDependencies": {
package/src/http.ts CHANGED
@@ -1,14 +1,14 @@
1
1
  import { Dict } from "./@types";
2
+ import { nonVal } from "./test";
2
3
 
3
4
  export function joinParamsToUrl(
4
5
  url: string,
5
6
  searchParams: Dict<string | number | undefined | null>,
6
7
  ) {
7
8
  const u = new URL(url);
9
+
8
10
  Object.entries(searchParams).forEach(([key, value]) =>
9
- value !== undefined
10
- &&
11
- value !== null
11
+ !nonVal(value)
12
12
  &&
13
13
  u.searchParams.append(key, value as string)
14
14
  );
package/src/time.ts CHANGED
@@ -1,4 +1,5 @@
1
- import { AnyDate, isType, MsTime, num, PartialTimeObj, str, TimeArr, TimeObj } from '.';
1
+ import { Temporal } from '@js-temporal/polyfill';
2
+ import { AnyDate, isType, MsTime, num, str, TimeArr, TimeObj } from '.';
2
3
 
3
4
  export const msTime: MsTime = {
4
5
  s: 1000,
@@ -29,93 +30,6 @@ export function dateTimeToString(dt = new Date())
29
30
  return `${h}:${m}:${s}:${ms}`;
30
31
  }
31
32
 
32
- /** Gives the 'start' and 'end' of a day.
33
- *
34
- * Start of day is the first ms of the day
35
- *
36
- * End of day is the last ms of the day
37
- */
38
- export function getDayStartEnd(t: number | Date, type: 'unix' | 'local' = 'local') {
39
- if (isType(t, 'number')) t = new Date(t);
40
-
41
- const y = t.getFullYear();
42
- const m = t.getMonth();
43
- const d = t.getDate();
44
-
45
- let start = new Date(y, m, d);
46
- let end = new Date(y, m, d, 23, 59, 59, 999);
47
-
48
- if (type === 'unix') {
49
- const tzOffset = time.min(start.getTimezoneOffset());
50
-
51
- start = new Date(start.getTime() + tzOffset);
52
- end = new Date(end.getTime() + tzOffset);
53
- }
54
-
55
- return { start, end };
56
- }
57
-
58
- export function weekStartEnd(t: number | Date, weekStart: 'sun' | 'mon' = 'sun', type: 'unix' | 'local' = 'local') {
59
- if (isType(t, 'number')) t = new Date(t);
60
-
61
- const wd = t.getDay();
62
-
63
- const startOffset = wd * -1 + (weekStart === 'mon' ? 1 : 0);
64
- const endOffset = 6 + startOffset;
65
-
66
- const s = new Date(t.getTime() + time.dys(startOffset));
67
- const e = new Date(t.getTime() + time.dys(endOffset));
68
-
69
- let start = new Date(s.getFullYear(), s.getMonth(), s.getDate());
70
- let end = new Date(e.getFullYear(), e.getMonth(), e.getDate(), 23, 59, 59, 999);
71
-
72
- if (type === 'unix') {
73
- const tzOffset = time.min(start.getTimezoneOffset());
74
-
75
- start = new Date(start.getTime() + tzOffset);
76
- end = new Date(end.getTime() + tzOffset);
77
- }
78
-
79
- return { start, end };
80
- }
81
-
82
- export function monthStartEnd(t: number | Date, type: 'unix' | 'local' = 'local') {
83
- if (isType(t, 'number')) t = new Date(t);
84
-
85
- const y = t.getFullYear();
86
- const m = t.getMonth();
87
-
88
- let start = new Date(y, m, 1);
89
- let end = new Date(y, m, 0, 23, 59, 59, 999);
90
-
91
- if (type === 'unix') {
92
- const tzOffset = time.min(start.getTimezoneOffset());
93
-
94
- start = new Date(start.getTime() + tzOffset);
95
- end = new Date(end.getTime() + tzOffset);
96
- }
97
-
98
- return { start, end };
99
- }
100
-
101
- export function yearStartEnd(t: number | Date, type: 'unix' | 'local' = 'local') {
102
- if (isType(t, 'number')) t = new Date(t);
103
-
104
- const y = t.getFullYear();
105
-
106
- let start = new Date(y, 0, 1);
107
- let end = new Date(y, 12, 0, 23, 59, 59, 999);
108
-
109
- if (type === 'unix') {
110
- const tzOffset = time.min(start.getTimezoneOffset());
111
-
112
- start = new Date(start.getTime() + tzOffset);
113
- end = new Date(end.getTime() + tzOffset);
114
- }
115
-
116
- return { start, end };
117
- }
118
-
119
33
  export const time = {
120
34
  /** Seconds(n) -> to ms */
121
35
  sec: (n: num) => 1_000 * n,
@@ -186,46 +100,47 @@ export const humanizedTime = (date: AnyDate) => {
186
100
  // Intl.supportedValuesOf('timeZone');
187
101
  /** A Date substitute, to make working with time easier and more versatile */
188
102
  export function getTime(
189
- date: TimeObj | PartialTimeObj | TimeArr,
190
- ianaTimeZone?: str
103
+ t: TimeArr | num,
104
+ timeZone?: str
191
105
  ) {
192
- const dt = parseDate(date);
193
- if (!dt) throw new Error('Invalid Date');
194
-
195
- ianaTimeZone = ianaTimeZone || Intl.DateTimeFormat().resolvedOptions().timeZone;
196
- const tzOffsetMin = timeZoneOffsetMin(ianaTimeZone, dt);
197
-
198
- const localISO = toLocalISOString(dt, tzOffsetMin);
199
- const finalDateObj = new Date(localISO);
106
+ timeZone = timeZone || Intl.DateTimeFormat().resolvedOptions().timeZone;
107
+ let zonedTemporal: Temporal.ZonedDateTime;
108
+ let date: Date;
109
+ let isoStr: str;
110
+
111
+ if (typeof t === 'number') {
112
+ date = new Date(t);
113
+ isoStr = date.toISOString();
114
+ zonedTemporal = Temporal.ZonedDateTime.from(isoStr + `[${timeZone}]`);
115
+ } else {
116
+ zonedTemporal = Temporal.ZonedDateTime.from({
117
+ year: t[0],
118
+ month: t[1] || 1,
119
+ day: t[2] || 1,
120
+ hour: t[3] || 0,
121
+ minute: t[4] || 0,
122
+ second: t[5] || 0,
123
+ millisecond: t[6] || 0,
124
+ timeZone
125
+ });
126
+
127
+ date = new Date(zonedTemporal.epochMilliseconds);
128
+ isoStr = date.toISOString();
129
+ }
200
130
 
201
131
  return {
202
- tzOffsetMin, // this flips from the JS output, to align with the ISO output (- when js would be +)
203
- localISO,
204
- isoStr: finalDateObj.toISOString(),
205
- Date: finalDateObj,
206
- epochMs: finalDateObj.getTime(),
207
- ianaTZ: ianaTimeZone,
208
- timeObj: timeObj(dt),
132
+ zonedTemporal,
133
+ date,
134
+ tzOffsetMin: zonedTemporal.offsetNanoseconds / 60_000_000_000,
135
+ localISO: zonedTemporal.toJSON(),
136
+ timeObj: timeObj(zonedTemporal),
137
+ isoStr,
138
+ timeZone: timeZone,
139
+ epochMs: zonedTemporal.epochMilliseconds,
209
140
  }
210
141
  }
211
142
 
212
- export function timeZoneOffsetMin(
213
- ianaTimeZone: string,
214
- date = new Date(),
215
- ) {
216
- const local = new Date(date);
217
- local.setMilliseconds(0);
218
- local.setSeconds(0);
219
- const tzTime = local.toLocaleString('US-en', { timeZone: ianaTimeZone });
220
- const tzDt = new Date(tzTime);
221
-
222
- const offsetMs = -local.getTimezoneOffset() * 60_000;
223
- const utcTime = tzDt.getTime() + offsetMs;
224
-
225
- return (utcTime - local.getTime()) / 60_000
226
- }
227
-
228
- export const timeObj = (dt: Date): TimeObj => ({
143
+ export const timeObj = (dt: Date | Temporal.ZonedDateTime): TimeObj => dt instanceof Date ? ({
229
144
  y: dt.getFullYear(),
230
145
  m: dt.getMonth() + 1,
231
146
  d: dt.getDate(),
@@ -234,6 +149,15 @@ export const timeObj = (dt: Date): TimeObj => ({
234
149
  sec: dt.getSeconds(),
235
150
  ms: dt.getMilliseconds(),
236
151
  wDay: weekTuple[dt.getDay()]!
152
+ }) : ({
153
+ y: dt.year,
154
+ m: dt.month,
155
+ d: dt.day,
156
+ h: dt.hour,
157
+ min: dt.minute,
158
+ sec: dt.second,
159
+ ms: dt.millisecond,
160
+ wDay: weekTuple[dt.dayOfWeek]!
237
161
  });
238
162
 
239
163
  export function parseDate(d: AnyDate) {
@@ -252,17 +176,4 @@ export function parseDate(d: AnyDate) {
252
176
  }
253
177
 
254
178
  return dt;
255
- }
256
-
257
- export function toLocalISOString(
258
- date: Date,
259
- tzOffsetMin = -date.getTimezoneOffset()
260
- ) {
261
- const sign = tzOffsetMin >= 0 ? '+' : '-';
262
- const diffHours = String(Math.floor(Math.abs(tzOffsetMin) / 60)).padStart(2, '0');
263
- const diffMinutes = String(Math.abs(tzOffsetMin) % 60).padStart(2, '0');
264
-
265
- return date.toLocaleString('lt').replace(' ', 'T') // or use: "sv-SE" (same effect)
266
- + '.' + (date.getMilliseconds() + '').padStart(3, '0')
267
- + sign + diffHours + ':' + diffMinutes;
268
179
  }