@venizia/ignis-helpers 0.2.1 → 0.2.2-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.
Files changed (77) hide show
  1. package/dist/cjs/modules/error/index.d.ts +1 -1
  2. package/dist/cjs/modules/error/index.d.ts.map +1 -1
  3. package/dist/cjs/modules/error/index.js +2 -1
  4. package/dist/cjs/modules/error/index.js.map +1 -1
  5. package/dist/cjs/modules/temporal/adapters/index.d.ts +1 -0
  6. package/dist/cjs/modules/temporal/adapters/index.d.ts.map +1 -1
  7. package/dist/cjs/modules/temporal/adapters/index.js +1 -0
  8. package/dist/cjs/modules/temporal/adapters/index.js.map +1 -1
  9. package/dist/cjs/modules/temporal/adapters/intl.d.ts +16 -0
  10. package/dist/cjs/modules/temporal/adapters/intl.d.ts.map +1 -0
  11. package/dist/cjs/modules/temporal/adapters/intl.js +83 -0
  12. package/dist/cjs/modules/temporal/adapters/intl.js.map +1 -0
  13. package/dist/cjs/modules/temporal/common/constants.d.ts +12 -0
  14. package/dist/cjs/modules/temporal/common/constants.d.ts.map +1 -1
  15. package/dist/cjs/modules/temporal/common/constants.js +15 -1
  16. package/dist/cjs/modules/temporal/common/constants.js.map +1 -1
  17. package/dist/cjs/modules/temporal/common/types.d.ts +9 -0
  18. package/dist/cjs/modules/temporal/common/types.d.ts.map +1 -1
  19. package/dist/cjs/modules/temporal/duration.d.ts +19 -0
  20. package/dist/cjs/modules/temporal/duration.d.ts.map +1 -0
  21. package/dist/cjs/modules/temporal/duration.js +64 -0
  22. package/dist/cjs/modules/temporal/duration.js.map +1 -0
  23. package/dist/cjs/modules/temporal/helper.d.ts +90 -4
  24. package/dist/cjs/modules/temporal/helper.d.ts.map +1 -1
  25. package/dist/cjs/modules/temporal/helper.js +213 -3
  26. package/dist/cjs/modules/temporal/helper.js.map +1 -1
  27. package/dist/cjs/modules/temporal/locale.d.ts +40 -0
  28. package/dist/cjs/modules/temporal/locale.d.ts.map +1 -0
  29. package/dist/cjs/modules/temporal/locale.js +124 -0
  30. package/dist/cjs/modules/temporal/locale.js.map +1 -0
  31. package/dist/cjs/modules/temporal/pattern.d.ts +2 -0
  32. package/dist/cjs/modules/temporal/pattern.d.ts.map +1 -1
  33. package/dist/cjs/modules/temporal/pattern.js +15 -2
  34. package/dist/cjs/modules/temporal/pattern.js.map +1 -1
  35. package/dist/cjs/modules/temporal/tokens.d.ts +19 -6
  36. package/dist/cjs/modules/temporal/tokens.d.ts.map +1 -1
  37. package/dist/cjs/modules/temporal/tokens.js +49 -17
  38. package/dist/cjs/modules/temporal/tokens.js.map +1 -1
  39. package/dist/esm/modules/error/index.d.ts +1 -1
  40. package/dist/esm/modules/error/index.d.ts.map +1 -1
  41. package/dist/esm/modules/error/index.js +1 -1
  42. package/dist/esm/modules/error/index.js.map +1 -1
  43. package/dist/esm/modules/temporal/adapters/index.d.ts +1 -0
  44. package/dist/esm/modules/temporal/adapters/index.d.ts.map +1 -1
  45. package/dist/esm/modules/temporal/adapters/index.js +1 -0
  46. package/dist/esm/modules/temporal/adapters/index.js.map +1 -1
  47. package/dist/esm/modules/temporal/adapters/intl.d.ts +16 -0
  48. package/dist/esm/modules/temporal/adapters/intl.d.ts.map +1 -0
  49. package/dist/esm/modules/temporal/adapters/intl.js +79 -0
  50. package/dist/esm/modules/temporal/adapters/intl.js.map +1 -0
  51. package/dist/esm/modules/temporal/common/constants.d.ts +12 -0
  52. package/dist/esm/modules/temporal/common/constants.d.ts.map +1 -1
  53. package/dist/esm/modules/temporal/common/constants.js +13 -0
  54. package/dist/esm/modules/temporal/common/constants.js.map +1 -1
  55. package/dist/esm/modules/temporal/common/types.d.ts +9 -0
  56. package/dist/esm/modules/temporal/common/types.d.ts.map +1 -1
  57. package/dist/esm/modules/temporal/duration.d.ts +19 -0
  58. package/dist/esm/modules/temporal/duration.d.ts.map +1 -0
  59. package/dist/esm/modules/temporal/duration.js +60 -0
  60. package/dist/esm/modules/temporal/duration.js.map +1 -0
  61. package/dist/esm/modules/temporal/helper.d.ts +90 -4
  62. package/dist/esm/modules/temporal/helper.d.ts.map +1 -1
  63. package/dist/esm/modules/temporal/helper.js +215 -5
  64. package/dist/esm/modules/temporal/helper.js.map +1 -1
  65. package/dist/esm/modules/temporal/locale.d.ts +40 -0
  66. package/dist/esm/modules/temporal/locale.d.ts.map +1 -0
  67. package/dist/esm/modules/temporal/locale.js +120 -0
  68. package/dist/esm/modules/temporal/locale.js.map +1 -0
  69. package/dist/esm/modules/temporal/pattern.d.ts +2 -0
  70. package/dist/esm/modules/temporal/pattern.d.ts.map +1 -1
  71. package/dist/esm/modules/temporal/pattern.js +16 -3
  72. package/dist/esm/modules/temporal/pattern.js.map +1 -1
  73. package/dist/esm/modules/temporal/tokens.d.ts +19 -6
  74. package/dist/esm/modules/temporal/tokens.d.ts.map +1 -1
  75. package/dist/esm/modules/temporal/tokens.js +47 -16
  76. package/dist/esm/modules/temporal/tokens.js.map +1 -1
  77. package/package.json +2 -2
@@ -0,0 +1,120 @@
1
+ import { HTTP } from '../../common/constants/http.js';
2
+ import { getError } from '../error/index.js';
3
+ /** A service writes a handful of locales; capped so caller-fed locales cannot grow it. */
4
+ const MAX_CACHED_LOCALES = 32;
5
+ const MONTHS = 12;
6
+ const WEEKDAYS = 7;
7
+ const NOON = 12;
8
+ /** A Monday: ISO weekday `n` is this date plus `n - 1` days. */
9
+ const MONDAY = Date.UTC(2024, 0, 1);
10
+ const DAY_MILLISECONDS = 86_400_000;
11
+ /**
12
+ * Month and weekday names, the AM/PM marker and the written date of one locale, as `Intl` spells
13
+ * them. Every table is read once, on first use, from a fixed UTC date: the names belong to the
14
+ * calendar, not to a time zone, so the wall clock is formatted as if it were UTC.
15
+ */
16
+ export class TemporalLocale {
17
+ static { this.locales = new Map(); }
18
+ constructor(opts) {
19
+ this.tables = new Map();
20
+ this.formatters = new Map();
21
+ this.locale = opts.locale;
22
+ }
23
+ /** The locale's names; a malformed tag is a 400. */
24
+ static of(opts) {
25
+ const { locale } = opts;
26
+ const cached = TemporalLocale.locales.get(locale);
27
+ if (cached) {
28
+ return cached;
29
+ }
30
+ try {
31
+ Intl.getCanonicalLocales(locale);
32
+ }
33
+ catch (error) {
34
+ throw getError({
35
+ statusCode: HTTP.ResultCodes.RS_4.BadRequest,
36
+ message: `[TemporalLocale] invalid locale '${locale}' | ${error instanceof Error ? error.message : String(error)}`,
37
+ });
38
+ }
39
+ // Full: the oldest locale makes room, so the 33rd locale is not rebuilt on every call.
40
+ if (TemporalLocale.locales.size >= MAX_CACHED_LOCALES) {
41
+ const oldest = TemporalLocale.locales.keys().next().value;
42
+ if (oldest !== undefined) {
43
+ TemporalLocale.locales.delete(oldest);
44
+ }
45
+ }
46
+ const created = new TemporalLocale({ locale });
47
+ TemporalLocale.locales.set(locale, created);
48
+ return created;
49
+ }
50
+ formatterOf(opts) {
51
+ const key = JSON.stringify(opts);
52
+ const cached = this.formatters.get(key);
53
+ if (cached) {
54
+ return cached;
55
+ }
56
+ // Gregorian always: the numeric tokens are, and a name from another calendar would sit beside them.
57
+ const formatter = new Intl.DateTimeFormat(this.locale, {
58
+ ...opts,
59
+ calendar: 'gregory',
60
+ timeZone: 'UTC',
61
+ });
62
+ this.formatters.set(key, formatter);
63
+ return formatter;
64
+ }
65
+ tableOf(opts) {
66
+ const cached = this.tables.get(opts.key);
67
+ if (cached) {
68
+ return cached;
69
+ }
70
+ const table = Array.from({ length: opts.size }, (_, index) => opts.read(index));
71
+ this.tables.set(opts.key, table);
72
+ return table;
73
+ }
74
+ /** `month` is 1-12. */
75
+ monthName(opts) {
76
+ const { month, width } = opts;
77
+ const formatter = this.formatterOf({ month: width });
78
+ const table = this.tableOf({
79
+ key: `month-${width}`,
80
+ size: MONTHS,
81
+ read: index => formatter.format(Date.UTC(2024, index, 15)),
82
+ });
83
+ return table[month - 1];
84
+ }
85
+ /** `dayOfWeek` is ISO: 1 Monday - 7 Sunday. */
86
+ weekdayName(opts) {
87
+ const { dayOfWeek, width } = opts;
88
+ const formatter = this.formatterOf({ weekday: width });
89
+ const table = this.tableOf({
90
+ key: `weekday-${width}`,
91
+ size: WEEKDAYS,
92
+ read: index => formatter.format(MONDAY + index * DAY_MILLISECONDS),
93
+ });
94
+ return table[dayOfWeek - 1];
95
+ }
96
+ /** The AM or PM marker the locale writes for `hour` (0-23), lower-cased by the locale's own rules when asked. */
97
+ dayPeriod(opts) {
98
+ const formatter = this.formatterOf({ hour: 'numeric', hourCycle: 'h12' });
99
+ const table = this.tableOf({
100
+ key: 'day-period',
101
+ size: 2,
102
+ read: index => formatter
103
+ .formatToParts(Date.UTC(2024, 0, 1, index === 0 ? 1 : NOON + 1))
104
+ .find(part => part.type === 'dayPeriod')?.value ?? (index === 0 ? 'AM' : 'PM'),
105
+ });
106
+ const marker = table[opts.hour < NOON ? 0 : 1];
107
+ return opts.isLowerCase ? marker.toLocaleLowerCase(this.locale) : marker;
108
+ }
109
+ /** The wall-clock date the way the locale writes it: `numeric` is `10/14/2026`, `long` is `October 14, 2026`. */
110
+ writtenDate(opts) {
111
+ const { parts, style } = opts;
112
+ const formatter = style === 'numeric'
113
+ ? this.formatterOf({ year: 'numeric', month: '2-digit', day: '2-digit' })
114
+ : this.formatterOf({ dateStyle: 'long' });
115
+ const date = new Date(0);
116
+ date.setUTCFullYear(parts.year, parts.month - 1, parts.day);
117
+ return formatter.format(date);
118
+ }
119
+ }
120
+ //# sourceMappingURL=locale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locale.js","sourceRoot":"","sources":["../../../../src/modules/temporal/locale.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,11 @@ export declare class TemporalPattern {
8
8
  * is refused: `yyyy` is not `YYYY`, and `MMM` is never read as `MM` then `M`.
9
9
  */
10
10
  private static compile;
11
+ /** Writes the wall clock; `locale` spells the name tokens, and is only resolved when one is used. */
11
12
  static format(opts: {
12
13
  pattern: string;
13
14
  parts: IZonedTemporalParts;
15
+ locale: string;
14
16
  }): string;
15
17
  /** The fields a value spells under a pattern, or undefined when it does not match. Unset fields default to the start: month 1, day 1, 00:00. */
16
18
  static parse(opts: {
@@ -1 +1 @@
1
- {"version":3,"file":"pattern.d.ts","sourceRoot":"","sources":["../../../../src/modules/temporal/pattern.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAc1E,gGAAgG;AAChG,qBAAa,eAAe;IAC1B,+GAA+G;IAC/G,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAA6C;IAE7E;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,OAAO;IAiEtB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,mBAAmB,CAAA;KAAE,GAAG,MAAM;IAU5E,gJAAgJ;IAChJ,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf,GAAG;QAAE,KAAK,EAAE,cAAc,CAAC;QAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS;CAwDvE"}
1
+ {"version":3,"file":"pattern.d.ts","sourceRoot":"","sources":["../../../../src/modules/temporal/pattern.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAgB1E,gGAAgG;AAChG,qBAAa,eAAe;IAC1B,+GAA+G;IAC/G,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAA6C;IAE7E;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,OAAO;IAiEtB,qGAAqG;IACrG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,mBAAmB,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM;IAe5F,gJAAgJ;IAChJ,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf,GAAG;QAAE,KAAK,EAAE,cAAc,CAAC;QAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS;CAgEvE"}
@@ -1,6 +1,7 @@
1
1
  import { HTTP } from '../../common/constants/http.js';
2
2
  import { getError } from '../error/index.js';
3
- import { isLetter, isToken, MAX_COMPILED_PATTERNS, NUMERIC_TOKENS, readDigits, readOffset, SUPPORTED, TWO_DIGIT_YEAR_PIVOT, WRITERS, } from './tokens.js';
3
+ import { TemporalLocale } from './locale.js';
4
+ import { isLetter, isLocaleToken, isToken, MAX_COMPILED_PATTERNS, NUMERIC_TOKENS, readDigits, readOffset, SUPPORTED, TWO_DIGIT_YEAR_PIVOT, WRITERS, } from './tokens.js';
4
5
  /** The pattern dialect: compiled once per pattern, then formatted and parsed from the cache. */
5
6
  export class TemporalPattern {
6
7
  /** A service formats the same few patterns millions of times; capped so caller-fed patterns cannot grow it. */
@@ -64,12 +65,17 @@ export class TemporalPattern {
64
65
  }
65
66
  return segments;
66
67
  }
68
+ /** Writes the wall clock; `locale` spells the name tokens, and is only resolved when one is used. */
67
69
  static format(opts) {
68
70
  const segments = TemporalPattern.compile({ pattern: opts.pattern });
71
+ let resolved;
72
+ const input = {
73
+ parts: opts.parts,
74
+ locale: () => (resolved ??= TemporalLocale.of({ locale: opts.locale })),
75
+ };
69
76
  let text = '';
70
77
  for (const segment of segments) {
71
- text +=
72
- 'literal' in segment ? segment.literal : (WRITERS.get(segment.token)?.(opts.parts) ?? '');
78
+ text += 'literal' in segment ? segment.literal : (WRITERS.get(segment.token)?.(input) ?? '');
73
79
  }
74
80
  return text;
75
81
  }
@@ -97,6 +103,13 @@ export class TemporalPattern {
97
103
  continue;
98
104
  }
99
105
  const { token } = segment;
106
+ // A pattern is code, not input: a write-only token here is a bug, as an unknown token is.
107
+ if (isLocaleToken(token)) {
108
+ throw getError({
109
+ statusCode: HTTP.ResultCodes.RS_5.InternalServerError,
110
+ message: `[TemporalPattern] '${token}' in pattern '${opts.pattern}' is for writing only | A parse reads the numeric tokens`,
111
+ });
112
+ }
100
113
  if (token === 'Z' || token === 'ZZ') {
101
114
  const offset = readOffset({ value, position, separator: token === 'Z' });
102
115
  if (!offset) {
@@ -1 +1 @@
1
- {"version":3,"file":"pattern.js","sourceRoot":"","sources":["../../../../src/modules/temporal/pattern.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pattern.js","sourceRoot":"","sources":["../../../../src/modules/temporal/pattern.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,24 @@
1
1
  import type { ITemporalParts, IZonedTemporalParts } from './common/types.js';
2
+ import type { TemporalLocale } from './locale.js';
2
3
  /**
3
- * The pattern dialect, one for every adapter: `YYYY YY MM M DD D HH H mm m ss s SSS Z ZZ`, with
4
- * text in `[brackets]`. Numeric only - month and weekday names are a locale's business, not a parser's.
4
+ * Tokens a pattern can write but never read: names and the written date come from a locale, and a
5
+ * parse stays numeric and strict.
5
6
  */
6
- export type TPatternToken = 'YYYY' | 'YY' | 'MM' | 'M' | 'DD' | 'D' | 'HH' | 'H' | 'mm' | 'm' | 'ss' | 's' | 'SSS' | 'Z' | 'ZZ';
7
+ export type TLocaleToken = 'MMMM' | 'MMM' | 'dddd' | 'ddd' | 'A' | 'a' | 'hh' | 'h' | 'LL' | 'L';
8
+ /**
9
+ * The pattern dialect, one for every adapter: `YYYY YY MM M DD D HH H mm m ss s SSS Z ZZ` both ways,
10
+ * plus the locale tokens `MMMM MMM dddd ddd A a hh h LL L` for writing only, with text in `[brackets]`.
11
+ */
12
+ export type TPatternToken = TLocaleToken | 'YYYY' | 'YY' | 'MM' | 'M' | 'DD' | 'D' | 'HH' | 'H' | 'mm' | 'm' | 'ss' | 's' | 'SSS' | 'Z' | 'ZZ';
7
13
  export type TPatternSegment = {
8
14
  token: TPatternToken;
9
15
  } | {
10
16
  literal: string;
11
17
  };
12
- export type TNumericToken = Exclude<TPatternToken, 'Z' | 'ZZ' | 'YY'>;
13
- export declare const SUPPORTED = "YYYY YY MM M DD D HH H mm m ss s SSS Z ZZ";
18
+ export type TNumericToken = Exclude<TPatternToken, 'Z' | 'ZZ' | 'YY' | TLocaleToken>;
19
+ export declare const SUPPORTED = "YYYY YY MM M DD D HH H mm m ss s SSS Z ZZ, and for writing only MMMM MMM dddd ddd A a hh h LL L";
20
+ export declare const LOCALE_TOKENS: ReadonlySet<TPatternToken>;
21
+ export declare const isLocaleToken: (token: TPatternToken) => token is TLocaleToken;
14
22
  export declare const MAX_COMPILED_PATTERNS = 64;
15
23
  /** Two-digit years pivot as dayjs and moment do: 00-68 is 2000-2068, 69-99 is 1969-1999. */
16
24
  export declare const TWO_DIGIT_YEAR_PIVOT = 68;
@@ -25,8 +33,13 @@ export declare const formatOffset: (opts: {
25
33
  offsetMinutes: number;
26
34
  separator: string;
27
35
  }) => string;
36
+ /** What a writer reads: the wall clock, and the locale - resolved only when a locale token asks for it. */
37
+ export interface ITokenWriterInput {
38
+ parts: IZonedTemporalParts;
39
+ locale: () => TemporalLocale;
40
+ }
28
41
  /** One writer per token - a lookup rather than a branch per token on every format. */
29
- export declare const WRITERS: Map<TPatternToken, (parts: IZonedTemporalParts) => string>;
42
+ export declare const WRITERS: Map<TPatternToken, (input: ITokenWriterInput) => string>;
30
43
  export declare const isLetter: (code: number) => boolean;
31
44
  export declare const isDigit: (code: number) => boolean;
32
45
  /** Reads `min`..`max` digits at `position`, greedily; undefined when fewer than `min` are there. */
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../../src/modules/temporal/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE1E;;;GAGG;AACH,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,IAAI,GACJ,IAAI,GACJ,GAAG,GACH,IAAI,GACJ,GAAG,GACH,IAAI,GACJ,GAAG,GACH,IAAI,GACJ,GAAG,GACH,IAAI,GACJ,GAAG,GACH,KAAK,GACL,GAAG,GACH,IAAI,CAAC;AAET,MAAM,MAAM,eAAe,GAAG;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7E,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;AAEtE,eAAO,MAAM,SAAS,8CAA8C,CAAC;AAErE,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC,4FAA4F;AAC5F,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC,wFAAwF;AACxF,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC,CAaxF,CAAC;AAEF,eAAO,MAAM,GAAG,GAAI,MAAM;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,KAAG,MACf,CAAC;AAE/C,+FAA+F;AAC/F,eAAO,MAAM,YAAY,GAAI,MAAM;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,KAAG,MAYjF,CAAC;AAEF,sFAAsF;AACtF,eAAO,MAAM,OAAO,6BAAkC,mBAAmB,KAAK,MAAM,CAgBlF,CAAC;AAEH,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,KAAG,OACmB,CAAC;AAE5D,eAAO,MAAM,OAAO,GAAI,MAAM,MAAM,KAAG,OAAmC,CAAC;AAE3E,oGAAoG;AACpG,eAAO,MAAM,UAAU,GAAI,MAAM;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb,KAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,SAStC,CAAC;AAEF,sFAAsF;AACtF,eAAO,MAAM,eAAe,GAAI,MAAM;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;CACpB,KAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,SAMtC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,MAAM;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;CACpB,KAAG;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,SA0B5C,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,MAAM,CAA2B,CAAC;AAExE,eAAO,MAAM,OAAO,GAAI,KAAK,MAAM,KAAG,GAAG,IAAI,aAAqC,CAAC"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../../src/modules/temporal/tokens.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,17 @@
1
- export const SUPPORTED = 'YYYY YY MM M DD D HH H mm m ss s SSS Z ZZ';
1
+ export const SUPPORTED = 'YYYY YY MM M DD D HH H mm m ss s SSS Z ZZ, and for writing only MMMM MMM dddd ddd A a hh h LL L';
2
+ export const LOCALE_TOKENS = new Set([
3
+ 'MMMM',
4
+ 'MMM',
5
+ 'dddd',
6
+ 'ddd',
7
+ 'A',
8
+ 'a',
9
+ 'hh',
10
+ 'h',
11
+ 'LL',
12
+ 'L',
13
+ ]);
14
+ export const isLocaleToken = (token) => LOCALE_TOKENS.has(token);
2
15
  export const MAX_COMPILED_PATTERNS = 64;
3
16
  /** Two-digit years pivot as dayjs and moment do: 00-68 is 2000-2068, 69-99 is 1969-1999. */
4
17
  export const TWO_DIGIT_YEAR_PIVOT = 68;
@@ -30,23 +43,41 @@ export const formatOffset = (opts) => {
30
43
  pad({ value: Math.floor((totalSeconds % 3600) / 60), width: 2 });
31
44
  return seconds === 0 ? text : text + separator + pad({ value: seconds, width: 2 });
32
45
  };
46
+ /** The hour on a 12-hour clock: 12, 1, ... 11. */
47
+ const twelveHour = (hour) => hour % 12 || 12;
33
48
  /** One writer per token - a lookup rather than a branch per token on every format. */
34
49
  export const WRITERS = new Map([
35
- ['YYYY', parts => pad({ value: parts.year, width: 4 })],
36
- ['YY', parts => pad({ value: parts.year % 100, width: 2 })],
37
- ['MM', parts => pad({ value: parts.month, width: 2 })],
38
- ['M', parts => String(parts.month)],
39
- ['DD', parts => pad({ value: parts.day, width: 2 })],
40
- ['D', parts => String(parts.day)],
41
- ['HH', parts => pad({ value: parts.hour, width: 2 })],
42
- ['H', parts => String(parts.hour)],
43
- ['mm', parts => pad({ value: parts.minute, width: 2 })],
44
- ['m', parts => String(parts.minute)],
45
- ['ss', parts => pad({ value: parts.second, width: 2 })],
46
- ['s', parts => String(parts.second)],
47
- ['SSS', parts => pad({ value: parts.millisecond, width: 3 })],
48
- ['Z', parts => formatOffset({ offsetMinutes: parts.offsetMinutes, separator: ':' })],
49
- ['ZZ', parts => formatOffset({ offsetMinutes: parts.offsetMinutes, separator: '' })],
50
+ ['YYYY', ({ parts }) => pad({ value: parts.year, width: 4 })],
51
+ ['YY', ({ parts }) => pad({ value: parts.year % 100, width: 2 })],
52
+ ['MMMM', ({ parts, locale }) => locale().monthName({ month: parts.month, width: 'long' })],
53
+ ['MMM', ({ parts, locale }) => locale().monthName({ month: parts.month, width: 'short' })],
54
+ ['MM', ({ parts }) => pad({ value: parts.month, width: 2 })],
55
+ ['M', ({ parts }) => String(parts.month)],
56
+ ['DD', ({ parts }) => pad({ value: parts.day, width: 2 })],
57
+ ['D', ({ parts }) => String(parts.day)],
58
+ [
59
+ 'dddd',
60
+ ({ parts, locale }) => locale().weekdayName({ dayOfWeek: parts.dayOfWeek, width: 'long' }),
61
+ ],
62
+ [
63
+ 'ddd',
64
+ ({ parts, locale }) => locale().weekdayName({ dayOfWeek: parts.dayOfWeek, width: 'short' }),
65
+ ],
66
+ ['HH', ({ parts }) => pad({ value: parts.hour, width: 2 })],
67
+ ['H', ({ parts }) => String(parts.hour)],
68
+ ['hh', ({ parts }) => pad({ value: twelveHour(parts.hour), width: 2 })],
69
+ ['h', ({ parts }) => String(twelveHour(parts.hour))],
70
+ ['A', ({ parts, locale }) => locale().dayPeriod({ hour: parts.hour })],
71
+ ['a', ({ parts, locale }) => locale().dayPeriod({ hour: parts.hour, isLowerCase: true })],
72
+ ['mm', ({ parts }) => pad({ value: parts.minute, width: 2 })],
73
+ ['m', ({ parts }) => String(parts.minute)],
74
+ ['ss', ({ parts }) => pad({ value: parts.second, width: 2 })],
75
+ ['s', ({ parts }) => String(parts.second)],
76
+ ['SSS', ({ parts }) => pad({ value: parts.millisecond, width: 3 })],
77
+ ['Z', ({ parts }) => formatOffset({ offsetMinutes: parts.offsetMinutes, separator: ':' })],
78
+ ['ZZ', ({ parts }) => formatOffset({ offsetMinutes: parts.offsetMinutes, separator: '' })],
79
+ ['LL', ({ parts, locale }) => locale().writtenDate({ parts, style: 'long' })],
80
+ ['L', ({ parts, locale }) => locale().writtenDate({ parts, style: 'numeric' })],
50
81
  ]);
51
82
  export const isLetter = (code) => (code >= 65 && code <= 90) || (code >= 97 && code <= 122);
52
83
  export const isDigit = (code) => code >= 48 && code <= 57;
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../../../src/modules/temporal/tokens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../../../src/modules/temporal/tokens.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@venizia/ignis-helpers",
3
- "version": "0.2.1",
3
+ "version": "0.2.2-1",
4
4
  "description": "Production-ready TypeScript utility library: pluggable logging (winston or pino behind one ILogger contract), Redis single/cluster/sentinel with pub/sub, BullMQ/MQTT/Kafka message queues, MinIO/Disk/Bun-S3 object storage, AES-256/RSA/ECDH cryptography, Snowflake UID generation, cron scheduling, Socket.IO/WebSocket, TCP/TLS/UDP networking, HTTP clients, secrets/Vault, worker thread pools, and environment management. Sub-path imports isolate optional peer dependencies so the root barrel never forces a peer into your bundle.",
5
5
  "keywords": [
6
6
  "aes",
@@ -228,7 +228,7 @@
228
228
  },
229
229
  "dependencies": {
230
230
  "zod": "^4.5.4",
231
- "@venizia/ignis-inversion": "^0.2.1",
231
+ "@venizia/ignis-inversion": "^0.2.2-0",
232
232
  "reflect-metadata": "^0.2.2"
233
233
  },
234
234
  "peerDependencies": {