@venizia/ignis-helpers 0.2.2-2 → 0.2.2-4
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.
- package/dist/cjs/modules/temporal/abstract.d.ts +310 -0
- package/dist/cjs/modules/temporal/abstract.d.ts.map +1 -0
- package/dist/cjs/modules/temporal/abstract.js +363 -0
- package/dist/cjs/modules/temporal/abstract.js.map +1 -0
- package/dist/cjs/modules/temporal/adapters/dayjs.d.ts +1 -1
- package/dist/cjs/modules/temporal/adapters/dayjs.d.ts.map +1 -1
- package/dist/cjs/modules/temporal/adapters/dayjs.js +3 -3
- package/dist/cjs/modules/temporal/adapters/dayjs.js.map +1 -1
- package/dist/cjs/modules/temporal/adapters/intl.d.ts +1 -1
- package/dist/cjs/modules/temporal/adapters/intl.d.ts.map +1 -1
- package/dist/cjs/modules/temporal/adapters/intl.js +7 -7
- package/dist/cjs/modules/temporal/adapters/intl.js.map +1 -1
- package/dist/cjs/modules/temporal/adapters/luxon.d.ts +1 -1
- package/dist/cjs/modules/temporal/adapters/luxon.d.ts.map +1 -1
- package/dist/cjs/modules/temporal/adapters/luxon.js +3 -3
- package/dist/cjs/modules/temporal/adapters/luxon.js.map +1 -1
- package/dist/cjs/modules/temporal/adapters/native.d.ts +3 -1
- package/dist/cjs/modules/temporal/adapters/native.d.ts.map +1 -1
- package/dist/cjs/modules/temporal/adapters/native.js +13 -5
- package/dist/cjs/modules/temporal/adapters/native.js.map +1 -1
- package/dist/cjs/modules/temporal/calendar/calendar.d.ts +56 -0
- package/dist/cjs/modules/temporal/calendar/calendar.d.ts.map +1 -0
- package/dist/cjs/modules/temporal/calendar/calendar.js +166 -0
- package/dist/cjs/modules/temporal/calendar/calendar.js.map +1 -0
- package/dist/cjs/modules/temporal/calendar/index.d.ts +2 -0
- package/dist/cjs/modules/temporal/calendar/index.d.ts.map +1 -0
- package/dist/cjs/modules/temporal/calendar/index.js +18 -0
- package/dist/cjs/modules/temporal/calendar/index.js.map +1 -0
- package/dist/cjs/modules/temporal/common/constants.d.ts +14 -3
- package/dist/cjs/modules/temporal/common/constants.d.ts.map +1 -1
- package/dist/cjs/modules/temporal/common/constants.js +23 -4
- package/dist/cjs/modules/temporal/common/constants.js.map +1 -1
- package/dist/cjs/modules/temporal/common/types.d.ts +259 -5
- package/dist/cjs/modules/temporal/common/types.d.ts.map +1 -1
- package/dist/cjs/modules/temporal/{duration.d.ts → duration/duration.d.ts} +9 -2
- package/dist/cjs/modules/temporal/duration/duration.d.ts.map +1 -0
- package/dist/cjs/modules/temporal/duration/duration.js +135 -0
- package/dist/cjs/modules/temporal/duration/duration.js.map +1 -0
- package/dist/cjs/modules/temporal/duration/index.d.ts +2 -0
- package/dist/cjs/modules/temporal/duration/index.d.ts.map +1 -0
- package/dist/cjs/modules/temporal/duration/index.js +18 -0
- package/dist/cjs/modules/temporal/duration/index.js.map +1 -0
- package/dist/cjs/modules/temporal/helper.d.ts +107 -78
- package/dist/cjs/modules/temporal/helper.d.ts.map +1 -1
- package/dist/cjs/modules/temporal/helper.js +203 -258
- package/dist/cjs/modules/temporal/helper.js.map +1 -1
- package/dist/cjs/modules/temporal/index.d.ts +1 -0
- package/dist/cjs/modules/temporal/index.d.ts.map +1 -1
- package/dist/cjs/modules/temporal/index.js +1 -0
- package/dist/cjs/modules/temporal/index.js.map +1 -1
- package/dist/cjs/modules/temporal/locale/index.d.ts +2 -0
- package/dist/cjs/modules/temporal/locale/index.d.ts.map +1 -0
- package/dist/cjs/modules/temporal/locale/index.js +18 -0
- package/dist/cjs/modules/temporal/locale/index.js.map +1 -0
- package/dist/{esm/modules/temporal → cjs/modules/temporal/locale}/locale.d.ts +3 -2
- package/dist/cjs/modules/temporal/locale/locale.d.ts.map +1 -0
- package/dist/cjs/modules/temporal/{locale.js → locale/locale.js} +3 -3
- package/dist/cjs/modules/temporal/locale/locale.js.map +1 -0
- package/dist/cjs/modules/temporal/pattern/common/index.d.ts +2 -0
- package/dist/cjs/modules/temporal/pattern/common/index.d.ts.map +1 -0
- package/dist/cjs/modules/temporal/pattern/common/index.js +18 -0
- package/dist/cjs/modules/temporal/pattern/common/index.js.map +1 -0
- package/dist/cjs/modules/temporal/pattern/common/types.d.ts +26 -0
- package/dist/cjs/modules/temporal/pattern/common/types.d.ts.map +1 -0
- package/dist/cjs/modules/temporal/pattern/common/types.js +3 -0
- package/dist/cjs/modules/temporal/pattern/common/types.js.map +1 -0
- package/dist/cjs/modules/temporal/pattern/index.d.ts +4 -0
- package/dist/cjs/modules/temporal/pattern/index.d.ts.map +1 -0
- package/dist/cjs/modules/temporal/pattern/index.js +20 -0
- package/dist/cjs/modules/temporal/pattern/index.js.map +1 -0
- package/dist/{esm/modules/temporal → cjs/modules/temporal/pattern}/pattern.d.ts +2 -1
- package/dist/cjs/modules/temporal/pattern/pattern.d.ts.map +1 -0
- package/dist/cjs/modules/temporal/{pattern.js → pattern/pattern.js} +19 -14
- package/dist/cjs/modules/temporal/pattern/pattern.js.map +1 -0
- package/dist/cjs/modules/temporal/pattern/tokens.d.ts +59 -0
- package/dist/cjs/modules/temporal/pattern/tokens.d.ts.map +1 -0
- package/dist/cjs/modules/temporal/pattern/tokens.js +195 -0
- package/dist/cjs/modules/temporal/pattern/tokens.js.map +1 -0
- package/dist/esm/modules/temporal/abstract.d.ts +310 -0
- package/dist/esm/modules/temporal/abstract.d.ts.map +1 -0
- package/dist/esm/modules/temporal/abstract.js +359 -0
- package/dist/esm/modules/temporal/abstract.js.map +1 -0
- package/dist/esm/modules/temporal/adapters/dayjs.d.ts +1 -1
- package/dist/esm/modules/temporal/adapters/dayjs.d.ts.map +1 -1
- package/dist/esm/modules/temporal/adapters/dayjs.js +3 -3
- package/dist/esm/modules/temporal/adapters/dayjs.js.map +1 -1
- package/dist/esm/modules/temporal/adapters/intl.d.ts +1 -1
- package/dist/esm/modules/temporal/adapters/intl.d.ts.map +1 -1
- package/dist/esm/modules/temporal/adapters/intl.js +7 -7
- package/dist/esm/modules/temporal/adapters/intl.js.map +1 -1
- package/dist/esm/modules/temporal/adapters/luxon.d.ts +1 -1
- package/dist/esm/modules/temporal/adapters/luxon.d.ts.map +1 -1
- package/dist/esm/modules/temporal/adapters/luxon.js +3 -3
- package/dist/esm/modules/temporal/adapters/luxon.js.map +1 -1
- package/dist/esm/modules/temporal/adapters/native.d.ts +3 -1
- package/dist/esm/modules/temporal/adapters/native.d.ts.map +1 -1
- package/dist/esm/modules/temporal/adapters/native.js +13 -5
- package/dist/esm/modules/temporal/adapters/native.js.map +1 -1
- package/dist/esm/modules/temporal/calendar/calendar.d.ts +56 -0
- package/dist/esm/modules/temporal/calendar/calendar.d.ts.map +1 -0
- package/dist/esm/modules/temporal/calendar/calendar.js +162 -0
- package/dist/esm/modules/temporal/calendar/calendar.js.map +1 -0
- package/dist/esm/modules/temporal/calendar/index.d.ts +2 -0
- package/dist/esm/modules/temporal/calendar/index.d.ts.map +1 -0
- package/dist/esm/modules/temporal/calendar/index.js +2 -0
- package/dist/esm/modules/temporal/calendar/index.js.map +1 -0
- package/dist/esm/modules/temporal/common/constants.d.ts +14 -3
- package/dist/esm/modules/temporal/common/constants.d.ts.map +1 -1
- package/dist/esm/modules/temporal/common/constants.js +21 -3
- package/dist/esm/modules/temporal/common/constants.js.map +1 -1
- package/dist/esm/modules/temporal/common/types.d.ts +259 -5
- package/dist/esm/modules/temporal/common/types.d.ts.map +1 -1
- package/dist/esm/modules/temporal/{duration.d.ts → duration/duration.d.ts} +9 -2
- package/dist/esm/modules/temporal/duration/duration.d.ts.map +1 -0
- package/dist/esm/modules/temporal/duration/duration.js +131 -0
- package/dist/esm/modules/temporal/duration/duration.js.map +1 -0
- package/dist/esm/modules/temporal/duration/index.d.ts +2 -0
- package/dist/esm/modules/temporal/duration/index.d.ts.map +1 -0
- package/dist/esm/modules/temporal/duration/index.js +2 -0
- package/dist/esm/modules/temporal/duration/index.js.map +1 -0
- package/dist/esm/modules/temporal/helper.d.ts +107 -78
- package/dist/esm/modules/temporal/helper.d.ts.map +1 -1
- package/dist/esm/modules/temporal/helper.js +208 -263
- package/dist/esm/modules/temporal/helper.js.map +1 -1
- package/dist/esm/modules/temporal/index.d.ts +1 -0
- package/dist/esm/modules/temporal/index.d.ts.map +1 -1
- package/dist/esm/modules/temporal/index.js +1 -0
- package/dist/esm/modules/temporal/index.js.map +1 -1
- package/dist/esm/modules/temporal/locale/index.d.ts +2 -0
- package/dist/esm/modules/temporal/locale/index.d.ts.map +1 -0
- package/dist/esm/modules/temporal/locale/index.js +2 -0
- package/dist/esm/modules/temporal/locale/index.js.map +1 -0
- package/dist/{cjs/modules/temporal → esm/modules/temporal/locale}/locale.d.ts +3 -2
- package/dist/esm/modules/temporal/locale/locale.d.ts.map +1 -0
- package/dist/esm/modules/temporal/{locale.js → locale/locale.js} +3 -3
- package/dist/esm/modules/temporal/locale/locale.js.map +1 -0
- package/dist/esm/modules/temporal/pattern/common/index.d.ts +2 -0
- package/dist/esm/modules/temporal/pattern/common/index.d.ts.map +1 -0
- package/dist/esm/modules/temporal/pattern/common/index.js +2 -0
- package/dist/esm/modules/temporal/pattern/common/index.js.map +1 -0
- package/dist/esm/modules/temporal/pattern/common/types.d.ts +26 -0
- package/dist/esm/modules/temporal/pattern/common/types.d.ts.map +1 -0
- package/dist/esm/modules/temporal/pattern/common/types.js +2 -0
- package/dist/esm/modules/temporal/pattern/common/types.js.map +1 -0
- package/dist/esm/modules/temporal/pattern/index.d.ts +4 -0
- package/dist/esm/modules/temporal/pattern/index.d.ts.map +1 -0
- package/dist/esm/modules/temporal/pattern/index.js +4 -0
- package/dist/esm/modules/temporal/pattern/index.js.map +1 -0
- package/dist/{cjs/modules/temporal → esm/modules/temporal/pattern}/pattern.d.ts +2 -1
- package/dist/esm/modules/temporal/pattern/pattern.d.ts.map +1 -0
- package/dist/esm/modules/temporal/{pattern.js → pattern/pattern.js} +20 -15
- package/dist/esm/modules/temporal/pattern/pattern.js.map +1 -0
- package/dist/esm/modules/temporal/pattern/tokens.d.ts +59 -0
- package/dist/esm/modules/temporal/pattern/tokens.d.ts.map +1 -0
- package/dist/esm/modules/temporal/pattern/tokens.js +191 -0
- package/dist/esm/modules/temporal/pattern/tokens.js.map +1 -0
- package/package.json +1 -1
- package/dist/cjs/modules/temporal/adapters/guards.d.ts +0 -4
- package/dist/cjs/modules/temporal/adapters/guards.d.ts.map +0 -1
- package/dist/cjs/modules/temporal/adapters/guards.js +0 -14
- package/dist/cjs/modules/temporal/adapters/guards.js.map +0 -1
- package/dist/cjs/modules/temporal/calendar.d.ts +0 -52
- package/dist/cjs/modules/temporal/calendar.d.ts.map +0 -1
- package/dist/cjs/modules/temporal/calendar.js +0 -151
- package/dist/cjs/modules/temporal/calendar.js.map +0 -1
- package/dist/cjs/modules/temporal/duration.d.ts.map +0 -1
- package/dist/cjs/modules/temporal/duration.js +0 -64
- package/dist/cjs/modules/temporal/duration.js.map +0 -1
- package/dist/cjs/modules/temporal/locale.d.ts.map +0 -1
- package/dist/cjs/modules/temporal/locale.js.map +0 -1
- package/dist/cjs/modules/temporal/pattern.d.ts.map +0 -1
- package/dist/cjs/modules/temporal/pattern.js.map +0 -1
- package/dist/cjs/modules/temporal/tokens.d.ts +0 -78
- package/dist/cjs/modules/temporal/tokens.d.ts.map +0 -1
- package/dist/cjs/modules/temporal/tokens.js +0 -145
- package/dist/cjs/modules/temporal/tokens.js.map +0 -1
- package/dist/esm/modules/temporal/adapters/guards.d.ts +0 -4
- package/dist/esm/modules/temporal/adapters/guards.d.ts.map +0 -1
- package/dist/esm/modules/temporal/adapters/guards.js +0 -10
- package/dist/esm/modules/temporal/adapters/guards.js.map +0 -1
- package/dist/esm/modules/temporal/calendar.d.ts +0 -52
- package/dist/esm/modules/temporal/calendar.d.ts.map +0 -1
- package/dist/esm/modules/temporal/calendar.js +0 -138
- package/dist/esm/modules/temporal/calendar.js.map +0 -1
- package/dist/esm/modules/temporal/duration.d.ts.map +0 -1
- package/dist/esm/modules/temporal/duration.js +0 -60
- package/dist/esm/modules/temporal/duration.js.map +0 -1
- package/dist/esm/modules/temporal/locale.d.ts.map +0 -1
- package/dist/esm/modules/temporal/locale.js.map +0 -1
- package/dist/esm/modules/temporal/pattern.d.ts.map +0 -1
- package/dist/esm/modules/temporal/pattern.js.map +0 -1
- package/dist/esm/modules/temporal/tokens.d.ts +0 -78
- package/dist/esm/modules/temporal/tokens.d.ts.map +0 -1
- package/dist/esm/modules/temporal/tokens.js +0 -133
- package/dist/esm/modules/temporal/tokens.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/modules/temporal/common/types.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;AAEpD,yEAAyE;AACzE,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,iGAAiG;AACjG,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB,wGAAwG;IACxG,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/modules/temporal/common/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { TTemporalDurationStyle } from '
|
|
2
|
-
import type { ITemporalDurationParts } from '
|
|
1
|
+
import type { TTemporalDurationStyle } from '../common/constants.js';
|
|
2
|
+
import type { ITemporalDurationParts } from '../common/types.js';
|
|
3
3
|
/** A span of milliseconds, split into days to milliseconds and written out. A day is always 24 hours here. */
|
|
4
4
|
export declare class TemporalDuration {
|
|
5
5
|
static parts(opts: {
|
|
@@ -13,7 +13,14 @@ export declare class TemporalDuration {
|
|
|
13
13
|
static format(opts: {
|
|
14
14
|
milliseconds: number;
|
|
15
15
|
style?: TTemporalDurationStyle;
|
|
16
|
+
pattern?: string;
|
|
17
|
+
maxUnits?: number;
|
|
16
18
|
locale: string;
|
|
17
19
|
}): string;
|
|
20
|
+
/**
|
|
21
|
+
* A clock face: `HH:mm:ss` writes 3,723,000 ms as `01:02:03`. The largest token present carries
|
|
22
|
+
* everything above it, so `mm:ss` writes 75 minutes as `75:00`. Text goes in `[brackets]`.
|
|
23
|
+
*/
|
|
24
|
+
private static formatFace;
|
|
18
25
|
}
|
|
19
26
|
//# sourceMappingURL=duration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duration.d.ts","sourceRoot":"","sources":["../../../../../src/modules/temporal/duration/duration.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AA4B9D,8GAA8G;AAC9G,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,GAAG,sBAAsB;IAoBpE;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,sBAAsB,CAAC;QAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,MAAM;IAsCV;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;CAmD1B"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { HTTP } from '../../../common/constants/http.js';
|
|
2
|
+
import { getError } from '../../error/index.js';
|
|
3
|
+
import { TemporalDurationStyles } from '../common/constants.js';
|
|
4
|
+
const SECOND_MILLISECONDS = 1000;
|
|
5
|
+
const MINUTE_MILLISECONDS = 60 * SECOND_MILLISECONDS;
|
|
6
|
+
const HOUR_MILLISECONDS = 60 * MINUTE_MILLISECONDS;
|
|
7
|
+
const DAY_MILLISECONDS = 24 * HOUR_MILLISECONDS;
|
|
8
|
+
/** Clock-face tokens, largest first: how many milliseconds each counts, and how wide it pads. */
|
|
9
|
+
const FACE_TOKENS = new Map([
|
|
10
|
+
['DD', { milliseconds: DAY_MILLISECONDS, width: 2 }],
|
|
11
|
+
['D', { milliseconds: DAY_MILLISECONDS, width: 1 }],
|
|
12
|
+
['HH', { milliseconds: HOUR_MILLISECONDS, width: 2 }],
|
|
13
|
+
['H', { milliseconds: HOUR_MILLISECONDS, width: 1 }],
|
|
14
|
+
['mm', { milliseconds: MINUTE_MILLISECONDS, width: 2 }],
|
|
15
|
+
['m', { milliseconds: MINUTE_MILLISECONDS, width: 1 }],
|
|
16
|
+
['ss', { milliseconds: SECOND_MILLISECONDS, width: 2 }],
|
|
17
|
+
['s', { milliseconds: SECOND_MILLISECONDS, width: 1 }],
|
|
18
|
+
['SSS', { milliseconds: 1, width: 3 }],
|
|
19
|
+
]);
|
|
20
|
+
/** Largest first: the order a written duration reads in. */
|
|
21
|
+
const FIELDS = [
|
|
22
|
+
{ field: 'days', unit: 'day', letter: 'd' },
|
|
23
|
+
{ field: 'hours', unit: 'hour', letter: 'h' },
|
|
24
|
+
{ field: 'minutes', unit: 'minute', letter: 'm' },
|
|
25
|
+
{ field: 'seconds', unit: 'second', letter: 's' },
|
|
26
|
+
];
|
|
27
|
+
/** A span of milliseconds, split into days to milliseconds and written out. A day is always 24 hours here. */
|
|
28
|
+
export class TemporalDuration {
|
|
29
|
+
static parts(opts) {
|
|
30
|
+
const { milliseconds } = opts;
|
|
31
|
+
if (!Number.isSafeInteger(milliseconds)) {
|
|
32
|
+
throw getError({
|
|
33
|
+
statusCode: HTTP.ResultCodes.RS_4.BadRequest,
|
|
34
|
+
message: `[TemporalDuration] milliseconds must be a safe integer - received ${milliseconds}`,
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
const total = Math.abs(milliseconds);
|
|
38
|
+
return {
|
|
39
|
+
isNegative: milliseconds < 0,
|
|
40
|
+
days: Math.floor(total / DAY_MILLISECONDS),
|
|
41
|
+
hours: Math.floor((total % DAY_MILLISECONDS) / HOUR_MILLISECONDS),
|
|
42
|
+
minutes: Math.floor((total % HOUR_MILLISECONDS) / MINUTE_MILLISECONDS),
|
|
43
|
+
seconds: Math.floor((total % MINUTE_MILLISECONDS) / SECOND_MILLISECONDS),
|
|
44
|
+
milliseconds: total % SECOND_MILLISECONDS,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Days, hours, minutes and seconds, zero units left out and milliseconds dropped: `compact` is
|
|
49
|
+
* `1d1h30m`, the other styles use the locale's unit words (`1 ngày 1 giờ 30 phút`). Under a
|
|
50
|
+
* second writes `0s` or `0 seconds`.
|
|
51
|
+
*/
|
|
52
|
+
static format(opts) {
|
|
53
|
+
const { style = TemporalDurationStyles.COMPACT, pattern, maxUnits, locale } = opts;
|
|
54
|
+
if (pattern !== undefined) {
|
|
55
|
+
return TemporalDuration.formatFace({ milliseconds: opts.milliseconds, pattern });
|
|
56
|
+
}
|
|
57
|
+
if (maxUnits !== undefined && !(Number.isInteger(maxUnits) && maxUnits > 0)) {
|
|
58
|
+
throw getError({
|
|
59
|
+
statusCode: HTTP.ResultCodes.RS_4.BadRequest,
|
|
60
|
+
message: `[TemporalDuration] maxUnits must be a positive integer - received ${maxUnits}`,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
if (!TemporalDurationStyles.isValid(style)) {
|
|
64
|
+
throw getError({
|
|
65
|
+
statusCode: HTTP.ResultCodes.RS_4.BadRequest,
|
|
66
|
+
message: `[TemporalDuration] unknown style '${style}' | Supported: ${[...TemporalDurationStyles.SCHEME_SET].join(', ')}`,
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
const parts = TemporalDuration.parts({ milliseconds: opts.milliseconds });
|
|
70
|
+
const present = FIELDS.filter(({ field }) => parts[field] > 0).slice(0, maxUnits);
|
|
71
|
+
const written = present.length > 0 ? present : [FIELDS[FIELDS.length - 1]];
|
|
72
|
+
// Under a second writes `0s` whatever the sign: there is no negative zero to show.
|
|
73
|
+
const sign = parts.isNegative && present.length > 0 ? '-' : '';
|
|
74
|
+
if (style === TemporalDurationStyles.COMPACT) {
|
|
75
|
+
return sign + written.map(({ field, letter }) => `${parts[field]}${letter}`).join('');
|
|
76
|
+
}
|
|
77
|
+
const words = written.map(({ field, unit }) => new Intl.NumberFormat(locale, { style: 'unit', unit, unitDisplay: style }).format(parts[field]));
|
|
78
|
+
return sign + new Intl.ListFormat(locale, { type: 'unit', style }).format(words);
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* A clock face: `HH:mm:ss` writes 3,723,000 ms as `01:02:03`. The largest token present carries
|
|
82
|
+
* everything above it, so `mm:ss` writes 75 minutes as `75:00`. Text goes in `[brackets]`.
|
|
83
|
+
*/
|
|
84
|
+
static formatFace(opts) {
|
|
85
|
+
const { pattern } = opts;
|
|
86
|
+
const parts = TemporalDuration.parts({ milliseconds: opts.milliseconds });
|
|
87
|
+
let remaining = ((parts.days * 24 + parts.hours) * 60 + parts.minutes) * MINUTE_MILLISECONDS +
|
|
88
|
+
parts.seconds * SECOND_MILLISECONDS +
|
|
89
|
+
parts.milliseconds;
|
|
90
|
+
let text = parts.isNegative ? '-' : '';
|
|
91
|
+
let position = 0;
|
|
92
|
+
while (position < pattern.length) {
|
|
93
|
+
const character = pattern[position];
|
|
94
|
+
if (character === '[') {
|
|
95
|
+
const close = pattern.indexOf(']', position + 1);
|
|
96
|
+
if (close < 0) {
|
|
97
|
+
throw getError({
|
|
98
|
+
statusCode: HTTP.ResultCodes.RS_5.InternalServerError,
|
|
99
|
+
message: `[TemporalDuration] unclosed [ in pattern '${pattern}'`,
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
text += pattern.slice(position + 1, close);
|
|
103
|
+
position = close + 1;
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
106
|
+
let runEnd = position + 1;
|
|
107
|
+
while (pattern[runEnd] === character) {
|
|
108
|
+
runEnd += 1;
|
|
109
|
+
}
|
|
110
|
+
const run = pattern.slice(position, runEnd);
|
|
111
|
+
const token = FACE_TOKENS.get(run);
|
|
112
|
+
if (token === undefined) {
|
|
113
|
+
if (/[A-Za-z]/.test(character)) {
|
|
114
|
+
throw getError({
|
|
115
|
+
statusCode: HTTP.ResultCodes.RS_5.InternalServerError,
|
|
116
|
+
message: `[TemporalDuration] unknown token '${run}' in pattern '${pattern}' | Supported: ${[...FACE_TOKENS.keys()].join(' ')}; wrap text in [brackets]`,
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
text += run;
|
|
120
|
+
position = runEnd;
|
|
121
|
+
continue;
|
|
122
|
+
}
|
|
123
|
+
const amount = Math.floor(remaining / token.milliseconds);
|
|
124
|
+
remaining -= amount * token.milliseconds;
|
|
125
|
+
text += String(amount).padStart(token.width, '0');
|
|
126
|
+
position = runEnd;
|
|
127
|
+
}
|
|
128
|
+
return text;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=duration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duration.js","sourceRoot":"","sources":["../../../../../src/modules/temporal/duration/duration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAI7D,MAAM,mBAAmB,GAAG,IAAI,CAAC;AACjC,MAAM,mBAAmB,GAAG,EAAE,GAAG,mBAAmB,CAAC;AACrD,MAAM,iBAAiB,GAAG,EAAE,GAAG,mBAAmB,CAAC;AACnD,MAAM,gBAAgB,GAAG,EAAE,GAAG,iBAAiB,CAAC;AAEhD,iGAAiG;AACjG,MAAM,WAAW,GAAG,IAAI,GAAG,CAAkD;IAC3E,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACpD,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACnD,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACrD,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACpD,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACtD,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACtD,CAAC,KAAK,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;CACvC,CAAC,CAAC;AAEH,4DAA4D;AAC5D,MAAM,MAAM,GAAG;IACb,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE;IAC3C,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE;IAC7C,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE;IACjD,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE;CACzC,CAAC;AAEX,8GAA8G;AAC9G,MAAM,OAAO,gBAAgB;IAC3B,MAAM,CAAC,KAAK,CAAC,IAA8B;QACzC,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC;YACxC,MAAM,QAAQ,CAAC;gBACb,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU;gBAC5C,OAAO,EAAE,qEAAqE,YAAY,EAAE;aAC7F,CAAC,CAAC;QACL,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACrC,OAAO;YACL,UAAU,EAAE,YAAY,GAAG,CAAC;YAC5B,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,gBAAgB,CAAC;YAC1C,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,gBAAgB,CAAC,GAAG,iBAAiB,CAAC;YACjE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,iBAAiB,CAAC,GAAG,mBAAmB,CAAC;YACtE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,mBAAmB,CAAC,GAAG,mBAAmB,CAAC;YACxE,YAAY,EAAE,KAAK,GAAG,mBAAmB;SAC1C,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAC,IAMb;QACC,MAAM,EAAE,KAAK,GAAG,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACnF,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,gBAAgB,CAAC,UAAU,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;QACnF,CAAC;QAED,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5E,MAAM,QAAQ,CAAC;gBACb,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU;gBAC5C,OAAO,EAAE,qEAAqE,QAAQ,EAAE;aACzF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3C,MAAM,QAAQ,CAAC;gBACb,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU;gBAC5C,OAAO,EAAE,qCAAqC,KAAK,kBAAkB,CAAC,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;aACzH,CAAC,CAAC;QACL,CAAC;QAED,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QAC1E,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAClF,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3E,mFAAmF;QACnF,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAE/D,IAAI,KAAK,KAAK,sBAAsB,CAAC,OAAO,EAAE,CAAC;YAC7C,OAAO,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxF,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAC5C,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAC/E,KAAK,CAAC,KAAK,CAAC,CACb,CACF,CAAC;QACF,OAAO,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnF,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,UAAU,CAAC,IAA+C;QACvE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QACzB,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QAC1E,IAAI,SAAS,GACX,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,mBAAmB;YAC5E,KAAK,CAAC,OAAO,GAAG,mBAAmB;YACnC,KAAK,CAAC,YAAY,CAAC;QAErB,IAAI,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,OAAO,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YACjC,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;YACpC,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;gBACtB,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;gBACjD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;oBACd,MAAM,QAAQ,CAAC;wBACb,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,mBAAmB;wBACrD,OAAO,EAAE,6CAA6C,OAAO,GAAG;qBACjE,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;gBAC3C,QAAQ,GAAG,KAAK,GAAG,CAAC,CAAC;gBACrB,SAAS;YACX,CAAC;YAED,IAAI,MAAM,GAAG,QAAQ,GAAG,CAAC,CAAC;YAC1B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,SAAS,EAAE,CAAC;gBACrC,MAAM,IAAI,CAAC,CAAC;YACd,CAAC;YAED,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC/B,MAAM,QAAQ,CAAC;wBACb,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,mBAAmB;wBACrD,OAAO,EAAE,qCAAqC,GAAG,iBAAiB,OAAO,kBAAkB,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,2BAA2B;qBACxJ,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,IAAI,GAAG,CAAC;gBACZ,QAAQ,GAAG,MAAM,CAAC;gBAClB,SAAS;YACX,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;YAC1D,SAAS,IAAI,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC;YACzC,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAClD,QAAQ,GAAG,MAAM,CAAC;QACpB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/modules/temporal/duration/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/temporal/duration/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type { TTemporalDurationStyle, TTemporalUnit } from './common/constants.js';
|
|
3
|
-
import type {
|
|
1
|
+
import { AbstractTemporalHelper } from './abstract.js';
|
|
2
|
+
import type { TTemporalDurationStyle, TTemporalInclusivity, TTemporalUnit } from './common/constants.js';
|
|
3
|
+
import type { ITemporalDurationParts, TTemporalFields, TTemporalInput } from './common/types.js';
|
|
4
4
|
/**
|
|
5
5
|
* Dates in one time zone, through whichever library you choose: pass an adapter - the runtime's
|
|
6
6
|
* `Temporal` (the default where the runtime has it, `Intl` everywhere else), your own dayjs, your own Luxon. The adapter only reports a zone's UTC
|
|
@@ -11,64 +11,32 @@ import type { ITemporalAdapter, ITemporalDurationParts, IZonedTemporalParts, TTe
|
|
|
11
11
|
* swapping the adapter never touches a call site. The zone is yours to set: without one this helper
|
|
12
12
|
* computes in UTC, never in the host's zone. Years run from 1 to 9999.
|
|
13
13
|
*/
|
|
14
|
-
export declare class TemporalHelper extends
|
|
15
|
-
/** Validated once per process: `Intl` answers the same for a zone name every time. */
|
|
16
|
-
private static readonly knownTimeZones;
|
|
14
|
+
export declare class TemporalHelper extends AbstractTemporalHelper {
|
|
17
15
|
private static readonly intlFormatters;
|
|
18
|
-
private readonly adapter;
|
|
19
|
-
private readonly timeZone;
|
|
20
|
-
private readonly locale;
|
|
21
16
|
/**
|
|
22
|
-
*
|
|
23
|
-
*
|
|
17
|
+
* A date picker hands back a `Date` meaning "this wall clock in the host's zone". This returns the
|
|
18
|
+
* instant that shows the same year, month, day and time in the helper's zone. `sourceTz` defaults
|
|
19
|
+
* to the host's. A skipped wall time resolves forward, a repeated one to the earlier instant.
|
|
24
20
|
*/
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
});
|
|
31
|
-
/** The runtime's `Temporal` where it has one; `Intl`, which every runtime has, everywhere else. */
|
|
32
|
-
private static defaultAdapter;
|
|
33
|
-
private static ensureLocale;
|
|
34
|
-
/** A parse or input error the caller may treat as "not a date"; anything else is a bug and still throws. */
|
|
35
|
-
private static isRefusal;
|
|
36
|
-
private static ensureTimeZone;
|
|
37
|
-
private static ensureUnit;
|
|
38
|
-
/** Every result passes here: an overflowing `add` is refused, never an Invalid Date. */
|
|
39
|
-
private static ensureInstant;
|
|
40
|
-
private static ensureYear;
|
|
41
|
-
private resolveTimeZone;
|
|
42
|
-
/** The adapter's one answer, rounded: an offset is whole milliseconds, a library's float may not be. */
|
|
43
|
-
private offsetAt;
|
|
44
|
-
private zonedParts;
|
|
45
|
-
/**
|
|
46
|
-
* Every instant whose wall clock reads `parts` in the zone, earliest first: one as a rule, two
|
|
47
|
-
* when the clock goes back, none when it jumps forward. `forward` is where a skipped time lands -
|
|
48
|
-
* read with the offset from before the jump, so it moves past the gap.
|
|
49
|
-
*/
|
|
50
|
-
private instantsOf;
|
|
51
|
-
/** The instant wall-clock `parts` name: a skipped time moves forward, a repeated one takes the earlier. */
|
|
52
|
-
private earliestOf;
|
|
21
|
+
fromWallClock(opts: {
|
|
22
|
+
value: TTemporalInput;
|
|
23
|
+
sourceTz?: string;
|
|
24
|
+
tz?: string;
|
|
25
|
+
}): Date;
|
|
53
26
|
/**
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
* and ends where the wall clock next shows either the following unit or this one's start again.
|
|
27
|
+
* The reverse of `fromWallClock`, to feed a picker: a `Date` whose wall clock in `targetTz` (default:
|
|
28
|
+
* the host's) reads what the helper's zone reads for `value`.
|
|
57
29
|
*/
|
|
58
|
-
|
|
59
|
-
getTimeZone(): string;
|
|
60
|
-
getLocale(): string;
|
|
61
|
-
now(): Date;
|
|
62
|
-
/** The instant a value names. An ISO string without an offset is read as wall clock in the zone. */
|
|
63
|
-
toDate(opts: {
|
|
64
|
-
value: TTemporalInput;
|
|
65
|
-
timeZone?: string;
|
|
66
|
-
}): Date;
|
|
67
|
-
/** The wall clock the value shows in the zone, with its ISO weekday and UTC offset. */
|
|
68
|
-
parts(opts: {
|
|
30
|
+
toWallClock(opts: {
|
|
69
31
|
value: TTemporalInput;
|
|
70
|
-
|
|
71
|
-
|
|
32
|
+
targetTz?: string;
|
|
33
|
+
tz?: string;
|
|
34
|
+
}): Date;
|
|
35
|
+
/** A helper like this one, with another locale or zone: same adapter, `names` and `fallback`. */
|
|
36
|
+
clone(opts: {
|
|
37
|
+
locale?: string;
|
|
38
|
+
tz?: string;
|
|
39
|
+
}): TemporalHelper;
|
|
72
40
|
/**
|
|
73
41
|
* Reads a string. With a `pattern` (`YYYY YY MM M DD D HH H mm m ss s SSS Z ZZ`, text in
|
|
74
42
|
* `[brackets]`), the value must match it exactly; without one it must be ISO 8601. An offset in
|
|
@@ -77,37 +45,40 @@ export declare class TemporalHelper extends BaseHelper {
|
|
|
77
45
|
parse(opts: {
|
|
78
46
|
value: string;
|
|
79
47
|
pattern?: string;
|
|
80
|
-
|
|
48
|
+
tz?: string;
|
|
81
49
|
}): Date;
|
|
82
50
|
private readIso;
|
|
83
51
|
/** `parse`, answering `null` where `parse` refuses the value. A pattern that does not compile still throws. */
|
|
84
52
|
tryParse(opts: {
|
|
85
53
|
value: string;
|
|
86
54
|
pattern?: string;
|
|
87
|
-
|
|
55
|
+
tz?: string;
|
|
88
56
|
}): Date | null;
|
|
89
57
|
/** Whether the value names an instant in years 1-9999 - a string read as `parse` reads it. */
|
|
90
58
|
isValid(opts: {
|
|
91
|
-
value: TTemporalInput;
|
|
59
|
+
value: TTemporalInput | null | undefined;
|
|
92
60
|
pattern?: string;
|
|
93
|
-
|
|
61
|
+
tz?: string;
|
|
94
62
|
}): boolean;
|
|
95
63
|
/**
|
|
96
|
-
* Writes the value in the zone. Without a `pattern`: ISO 8601 with the zone's offset. The
|
|
97
|
-
*
|
|
64
|
+
* Writes the value in the zone. Without a `pattern`: ISO 8601 with the zone's offset. The tokens
|
|
65
|
+
* `MMMM MMM dddd ddd dd A a hh h LL L` are spelled in `locale`. With a `fallback`, a value that is
|
|
66
|
+
* not a date - null included - writes the fallback; without one, it is a 400.
|
|
98
67
|
*/
|
|
99
68
|
format(opts: {
|
|
100
|
-
value: TTemporalInput;
|
|
69
|
+
value: TTemporalInput | null | undefined;
|
|
101
70
|
pattern?: string;
|
|
102
|
-
|
|
71
|
+
tz?: string;
|
|
103
72
|
locale?: string;
|
|
73
|
+
fallback?: string;
|
|
104
74
|
}): string;
|
|
105
75
|
/** Writes the value with `Intl.DateTimeFormat` options, in the zone - for what the pattern tokens cannot say. */
|
|
106
76
|
formatIntl(opts: {
|
|
107
|
-
value: TTemporalInput;
|
|
77
|
+
value: TTemporalInput | null | undefined;
|
|
108
78
|
options?: Omit<Intl.DateTimeFormatOptions, 'timeZone'>;
|
|
109
|
-
|
|
79
|
+
tz?: string;
|
|
110
80
|
locale?: string;
|
|
81
|
+
fallback?: string;
|
|
111
82
|
}): string;
|
|
112
83
|
/**
|
|
113
84
|
* Moves the value by whole units. Hours and smaller are elapsed time; days and larger move the
|
|
@@ -118,51 +89,105 @@ export declare class TemporalHelper extends BaseHelper {
|
|
|
118
89
|
value: TTemporalInput;
|
|
119
90
|
amount: number;
|
|
120
91
|
unit: TTemporalUnit;
|
|
121
|
-
|
|
92
|
+
tz?: string;
|
|
122
93
|
}): Date;
|
|
123
94
|
subtract(opts: {
|
|
124
95
|
value: TTemporalInput;
|
|
125
96
|
amount: number;
|
|
126
97
|
unit: TTemporalUnit;
|
|
127
|
-
|
|
98
|
+
tz?: string;
|
|
128
99
|
}): Date;
|
|
129
100
|
/** The first instant of the unit containing the value, in the zone. Weeks start on Monday. */
|
|
130
101
|
startOf(opts: {
|
|
131
102
|
value: TTemporalInput;
|
|
132
103
|
unit: TTemporalUnit;
|
|
133
|
-
|
|
104
|
+
tz?: string;
|
|
134
105
|
}): Date;
|
|
135
106
|
/** The last millisecond of the unit containing the value, in the zone. */
|
|
136
107
|
endOf(opts: {
|
|
137
108
|
value: TTemporalInput;
|
|
138
109
|
unit: TTemporalUnit;
|
|
139
|
-
|
|
110
|
+
tz?: string;
|
|
140
111
|
}): Date;
|
|
141
112
|
/** Monday to Friday, read on the wall clock of the zone. */
|
|
142
113
|
isWeekday(opts: {
|
|
143
114
|
value: TTemporalInput;
|
|
144
|
-
|
|
115
|
+
tz?: string;
|
|
145
116
|
}): boolean;
|
|
146
117
|
nextWeekday(opts: {
|
|
147
118
|
value: TTemporalInput;
|
|
148
|
-
|
|
119
|
+
tz?: string;
|
|
149
120
|
}): Date;
|
|
150
121
|
previousWeekday(opts: {
|
|
151
122
|
value: TTemporalInput;
|
|
152
|
-
|
|
123
|
+
tz?: string;
|
|
153
124
|
}): Date;
|
|
154
125
|
private stepToWeekday;
|
|
126
|
+
/**
|
|
127
|
+
* The value with wall-clock fields replaced in the zone - `{ hour: 9, minute: 0 }` is 09:00 that day.
|
|
128
|
+
* `month` is 1-12. The day is clamped to the month's last day, so setting February on the 31st
|
|
129
|
+
* lands on the 28th or 29th. A wall time a daylight-saving jump skips resolves forward, as `parse` does.
|
|
130
|
+
*/
|
|
131
|
+
set(opts: {
|
|
132
|
+
value: TTemporalInput;
|
|
133
|
+
tz?: string;
|
|
134
|
+
} & TTemporalFields): Date;
|
|
135
|
+
/** `value` is before `other` - at the unit's granularity in the zone when `unit` is given. */
|
|
136
|
+
isBefore(opts: {
|
|
137
|
+
value: TTemporalInput;
|
|
138
|
+
other: TTemporalInput;
|
|
139
|
+
unit?: TTemporalUnit;
|
|
140
|
+
tz?: string;
|
|
141
|
+
}): boolean;
|
|
142
|
+
isAfter(opts: {
|
|
143
|
+
value: TTemporalInput;
|
|
144
|
+
other: TTemporalInput;
|
|
145
|
+
unit?: TTemporalUnit;
|
|
146
|
+
tz?: string;
|
|
147
|
+
}): boolean;
|
|
148
|
+
/** In the same unit - `unit: 'day'` is the same calendar day in the zone. */
|
|
149
|
+
isSame(opts: {
|
|
150
|
+
value: TTemporalInput;
|
|
151
|
+
other: TTemporalInput;
|
|
152
|
+
unit?: TTemporalUnit;
|
|
153
|
+
tz?: string;
|
|
154
|
+
}): boolean;
|
|
155
|
+
isSameOrBefore(opts: {
|
|
156
|
+
value: TTemporalInput;
|
|
157
|
+
other: TTemporalInput;
|
|
158
|
+
unit?: TTemporalUnit;
|
|
159
|
+
tz?: string;
|
|
160
|
+
}): boolean;
|
|
161
|
+
isSameOrAfter(opts: {
|
|
162
|
+
value: TTemporalInput;
|
|
163
|
+
other: TTemporalInput;
|
|
164
|
+
unit?: TTemporalUnit;
|
|
165
|
+
tz?: string;
|
|
166
|
+
}): boolean;
|
|
167
|
+
/**
|
|
168
|
+
* Whether `value` lies between `from` and `to`, in either order. `inclusivity` says which ends count:
|
|
169
|
+
* `()` (the default) neither, `[]` both, `[)` the start, `(]` the end.
|
|
170
|
+
*/
|
|
171
|
+
isBetween(opts: {
|
|
172
|
+
value: TTemporalInput;
|
|
173
|
+
from: TTemporalInput;
|
|
174
|
+
to: TTemporalInput;
|
|
175
|
+
unit?: TTemporalUnit;
|
|
176
|
+
inclusivity?: TTemporalInclusivity;
|
|
177
|
+
tz?: string;
|
|
178
|
+
}): boolean;
|
|
155
179
|
/**
|
|
156
180
|
* How many whole units `value` is past `other` - negative when it is before - truncated toward
|
|
157
|
-
* zero. Hours and smaller
|
|
158
|
-
*
|
|
159
|
-
*
|
|
181
|
+
* zero, counted as dayjs counts. Hours and smaller are elapsed time. Days and weeks are calendar
|
|
182
|
+
* days in the zone: the wall clocks' difference, so a 23-hour daylight-saving day is one day.
|
|
183
|
+
* Months, quarters and years are anchored on the date with the later day of the month, then
|
|
184
|
+
* truncated, so `diff(a, b)` is always `-diff(b, a)`.
|
|
160
185
|
*/
|
|
161
186
|
diff(opts: {
|
|
162
187
|
value: TTemporalInput;
|
|
163
188
|
other: TTemporalInput;
|
|
164
189
|
unit: TTemporalUnit;
|
|
165
|
-
|
|
190
|
+
tz?: string;
|
|
166
191
|
}): number;
|
|
167
192
|
/**
|
|
168
193
|
* `-1`, `0` or `1` as `value` is before, in, or after the unit that holds `other`, in the zone.
|
|
@@ -172,7 +197,7 @@ export declare class TemporalHelper extends BaseHelper {
|
|
|
172
197
|
value: TTemporalInput;
|
|
173
198
|
other: TTemporalInput;
|
|
174
199
|
unit?: TTemporalUnit;
|
|
175
|
-
|
|
200
|
+
tz?: string;
|
|
176
201
|
}): -1 | 0 | 1;
|
|
177
202
|
/**
|
|
178
203
|
* `value` relative to `base` (default: now) in words, through `Intl.RelativeTimeFormat`:
|
|
@@ -186,7 +211,7 @@ export declare class TemporalHelper extends BaseHelper {
|
|
|
186
211
|
unit?: TTemporalUnit;
|
|
187
212
|
numeric?: Intl.RelativeTimeFormatNumeric;
|
|
188
213
|
style?: Intl.RelativeTimeFormatStyle;
|
|
189
|
-
|
|
214
|
+
tz?: string;
|
|
190
215
|
locale?: string;
|
|
191
216
|
}): string;
|
|
192
217
|
/** A span of milliseconds as days, hours, minutes, seconds and milliseconds. A day is 24 hours. */
|
|
@@ -200,6 +225,10 @@ export declare class TemporalHelper extends BaseHelper {
|
|
|
200
225
|
formatDuration(opts: {
|
|
201
226
|
milliseconds: number;
|
|
202
227
|
style?: TTemporalDurationStyle;
|
|
228
|
+
/** A clock face instead of words: `HH:mm:ss`, `mm:ss`, `D[d] HH:mm`. The largest token carries the rest. */
|
|
229
|
+
pattern?: string;
|
|
230
|
+
/** Only the largest units that are not zero: `1` writes `2 giờ` for 2 hours 5 minutes. */
|
|
231
|
+
maxUnits?: number;
|
|
203
232
|
locale?: string;
|
|
204
233
|
}): string;
|
|
205
234
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../src/modules/temporal/helper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../src/modules/temporal/helper.ts"],"names":[],"mappings":"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"}
|