@formatjs/ecma402-abstract 1.12.0 → 1.13.0

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 (69) hide show
  1. package/GetStringOrBooleanOption.d.ts +11 -0
  2. package/GetStringOrBooleanOption.d.ts.map +1 -0
  3. package/GetStringOrBooleanOption.js +35 -0
  4. package/NumberFormat/ApplyUnsignedRoundingMode.d.ts +3 -0
  5. package/NumberFormat/ApplyUnsignedRoundingMode.d.ts.map +1 -0
  6. package/NumberFormat/ApplyUnsignedRoundingMode.js +42 -0
  7. package/NumberFormat/CollapseNumberRange.d.ts +5 -0
  8. package/NumberFormat/CollapseNumberRange.d.ts.map +1 -0
  9. package/NumberFormat/CollapseNumberRange.js +10 -0
  10. package/NumberFormat/FormatApproximately.d.ts +8 -0
  11. package/NumberFormat/FormatApproximately.d.ts.map +1 -0
  12. package/NumberFormat/FormatApproximately.js +15 -0
  13. package/NumberFormat/GetUnsignedRoundingMode.d.ts +3 -0
  14. package/NumberFormat/GetUnsignedRoundingMode.d.ts.map +1 -0
  15. package/NumberFormat/GetUnsignedRoundingMode.js +32 -0
  16. package/NumberFormat/InitializeNumberFormat.d.ts.map +1 -1
  17. package/NumberFormat/InitializeNumberFormat.js +35 -4
  18. package/NumberFormat/PartitionNumberPattern.d.ts.map +1 -1
  19. package/NumberFormat/PartitionNumberPattern.js +14 -9
  20. package/NumberFormat/PartitionNumberRangePattern.d.ts +8 -0
  21. package/NumberFormat/PartitionNumberRangePattern.d.ts.map +1 -0
  22. package/NumberFormat/PartitionNumberRangePattern.js +62 -0
  23. package/NumberFormat/SetNumberFormatDigitOptions.d.ts.map +1 -1
  24. package/NumberFormat/SetNumberFormatDigitOptions.js +63 -18
  25. package/NumberFormat/format_to_parts.d.ts +2 -2
  26. package/NumberFormat/format_to_parts.d.ts.map +1 -1
  27. package/NumberFormat/format_to_parts.js +1 -1
  28. package/index.d.ts +6 -0
  29. package/index.d.ts.map +1 -1
  30. package/index.js +6 -0
  31. package/lib/GetStringOrBooleanOption.d.ts +11 -0
  32. package/lib/GetStringOrBooleanOption.d.ts.map +1 -0
  33. package/lib/GetStringOrBooleanOption.js +31 -0
  34. package/lib/NumberFormat/ApplyUnsignedRoundingMode.d.ts +3 -0
  35. package/lib/NumberFormat/ApplyUnsignedRoundingMode.d.ts.map +1 -0
  36. package/lib/NumberFormat/ApplyUnsignedRoundingMode.js +38 -0
  37. package/lib/NumberFormat/CollapseNumberRange.d.ts +5 -0
  38. package/lib/NumberFormat/CollapseNumberRange.d.ts.map +1 -0
  39. package/lib/NumberFormat/CollapseNumberRange.js +6 -0
  40. package/lib/NumberFormat/FormatApproximately.d.ts +8 -0
  41. package/lib/NumberFormat/FormatApproximately.d.ts.map +1 -0
  42. package/lib/NumberFormat/FormatApproximately.js +11 -0
  43. package/lib/NumberFormat/GetUnsignedRoundingMode.d.ts +3 -0
  44. package/lib/NumberFormat/GetUnsignedRoundingMode.d.ts.map +1 -0
  45. package/lib/NumberFormat/GetUnsignedRoundingMode.js +28 -0
  46. package/lib/NumberFormat/InitializeNumberFormat.d.ts.map +1 -1
  47. package/lib/NumberFormat/InitializeNumberFormat.js +35 -4
  48. package/lib/NumberFormat/PartitionNumberPattern.d.ts.map +1 -1
  49. package/lib/NumberFormat/PartitionNumberPattern.js +14 -9
  50. package/lib/NumberFormat/PartitionNumberRangePattern.d.ts +8 -0
  51. package/lib/NumberFormat/PartitionNumberRangePattern.d.ts.map +1 -0
  52. package/lib/NumberFormat/PartitionNumberRangePattern.js +58 -0
  53. package/lib/NumberFormat/SetNumberFormatDigitOptions.d.ts.map +1 -1
  54. package/lib/NumberFormat/SetNumberFormatDigitOptions.js +63 -18
  55. package/lib/NumberFormat/format_to_parts.d.ts +2 -2
  56. package/lib/NumberFormat/format_to_parts.d.ts.map +1 -1
  57. package/lib/NumberFormat/format_to_parts.js +1 -1
  58. package/lib/index.d.ts +6 -0
  59. package/lib/index.d.ts.map +1 -1
  60. package/lib/index.js +6 -0
  61. package/lib/types/date-time.d.ts +3 -3
  62. package/lib/types/date-time.d.ts.map +1 -1
  63. package/lib/types/number.d.ts +21 -7
  64. package/lib/types/number.d.ts.map +1 -1
  65. package/package.json +1 -1
  66. package/types/date-time.d.ts +3 -3
  67. package/types/date-time.d.ts.map +1 -1
  68. package/types/number.d.ts +21 -7
  69. package/types/number.d.ts.map +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApplyUnsignedRoundingMode.d.ts","sourceRoot":"","sources":["../../NumberFormat/ApplyUnsignedRoundingMode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,wBAAwB,EAAC,MAAM,iBAAiB,CAAA;AAExD,wBAAgB,yBAAyB,CACvC,CAAC,EAAE,MAAM,EACT,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,oBAAoB,EAAE,wBAAwB,GAC7C,MAAM,CA8CR"}
@@ -0,0 +1,38 @@
1
+ export function ApplyUnsignedRoundingMode(x, r1, r2, unsignedRoundingMode) {
2
+ if (x === r1)
3
+ return r1;
4
+ if (unsignedRoundingMode === undefined) {
5
+ throw new Error('unsignedRoundingMode is mandatory');
6
+ }
7
+ if (unsignedRoundingMode === 'zero') {
8
+ return r1;
9
+ }
10
+ if (unsignedRoundingMode === 'infinity') {
11
+ return r2;
12
+ }
13
+ var d1 = x - r1;
14
+ var d2 = r2 - x;
15
+ if (d1 < d2) {
16
+ return r1;
17
+ }
18
+ if (d2 < d1) {
19
+ return r2;
20
+ }
21
+ if (d1 !== d2) {
22
+ throw new Error('Unexpected error');
23
+ }
24
+ if (unsignedRoundingMode === 'half-zero') {
25
+ return r1;
26
+ }
27
+ if (unsignedRoundingMode === 'half-infinity') {
28
+ return r2;
29
+ }
30
+ if (unsignedRoundingMode !== 'half-even') {
31
+ throw new Error("Unexpected value for unsignedRoundingMode: ".concat(unsignedRoundingMode));
32
+ }
33
+ var cardinality = (r1 / (r2 - r1)) % 2;
34
+ if (cardinality === 0) {
35
+ return r1;
36
+ }
37
+ return r2;
38
+ }
@@ -0,0 +1,5 @@
1
+ /**
2
+ * https://tc39.es/ecma402/#sec-collapsenumberrange
3
+ */
4
+ export declare function CollapseNumberRange<T>(result: T): T;
5
+ //# sourceMappingURL=CollapseNumberRange.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CollapseNumberRange.d.ts","sourceRoot":"","sources":["../../NumberFormat/CollapseNumberRange.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,KAE/C"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * https://tc39.es/ecma402/#sec-collapsenumberrange
3
+ */
4
+ export function CollapseNumberRange(result) {
5
+ return result;
6
+ }
@@ -0,0 +1,8 @@
1
+ import { NumberFormatInternal, NumberFormatPart } from '../types/number';
2
+ /**
3
+ * https://tc39.es/ecma402/#sec-formatapproximately
4
+ */
5
+ export declare function FormatApproximately(numberFormat: Intl.NumberFormat, result: NumberFormatPart[], { getInternalSlots, }: {
6
+ getInternalSlots(nf: Intl.NumberFormat): NumberFormatInternal;
7
+ }): NumberFormatPart[];
8
+ //# sourceMappingURL=FormatApproximately.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormatApproximately.d.ts","sourceRoot":"","sources":["../../NumberFormat/FormatApproximately.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,oBAAoB,EAAE,gBAAgB,EAAC,MAAM,iBAAiB,CAAA;AAEtE;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,MAAM,EAAE,gBAAgB,EAAE,EAC1B,EACE,gBAAgB,GACjB,EAAE;IACD,gBAAgB,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAA;CAC9D,sBAWF"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * https://tc39.es/ecma402/#sec-formatapproximately
3
+ */
4
+ export function FormatApproximately(numberFormat, result, _a) {
5
+ var getInternalSlots = _a.getInternalSlots;
6
+ var internalSlots = getInternalSlots(numberFormat);
7
+ var symbols = internalSlots.dataLocaleData.numbers.symbols[internalSlots.numberingSystem];
8
+ var approximatelySign = symbols.approximatelySign;
9
+ result.push({ type: 'approximatelySign', value: approximatelySign });
10
+ return result;
11
+ }
@@ -0,0 +1,3 @@
1
+ import { RoundingModeType, UnsignedRoundingModeType } from '../types/number';
2
+ export declare function GetUnsignedRoundingMode(roundingMode: RoundingModeType, isNegative: boolean): UnsignedRoundingModeType;
3
+ //# sourceMappingURL=GetUnsignedRoundingMode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetUnsignedRoundingMode.d.ts","sourceRoot":"","sources":["../../NumberFormat/GetUnsignedRoundingMode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAE,wBAAwB,EAAC,MAAM,iBAAiB,CAAA;AA0B1E,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,gBAAgB,EAC9B,UAAU,EAAE,OAAO,GAClB,wBAAwB,CAK1B"}
@@ -0,0 +1,28 @@
1
+ var negativeMapping = {
2
+ ceil: 'zero',
3
+ floor: 'infinity',
4
+ expand: 'infinity',
5
+ trunc: 'zero',
6
+ halfCeil: 'half-zero',
7
+ halfFloor: 'half-infinity',
8
+ halfExpand: 'half-infinity',
9
+ halfTrunc: 'half-zero',
10
+ halfEven: 'half-even',
11
+ };
12
+ var positiveMapping = {
13
+ ceil: 'infinity',
14
+ floor: 'zero',
15
+ expand: 'infinity',
16
+ trunc: 'zero',
17
+ halfCeil: 'half-infinity',
18
+ halfFloor: 'half-zero',
19
+ halfExpand: 'half-infinity',
20
+ halfTrunc: 'half-zero',
21
+ halfEven: 'half-even',
22
+ };
23
+ export function GetUnsignedRoundingMode(roundingMode, isNegative) {
24
+ if (isNegative) {
25
+ return negativeMapping[roundingMode];
26
+ }
27
+ return positiveMapping[roundingMode];
28
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"InitializeNumberFormat.d.ts","sourceRoot":"","sources":["../../NumberFormat/InitializeNumberFormat.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,8BAA8B,EAC/B,MAAM,iBAAiB,CAAA;AAUxB;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,IAAI,CAAC,YAAY,EACrB,OAAO,EAAE,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,EACnD,IAAI,EAAE,mBAAmB,GAAG,SAAS,EACrC,EACE,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,GACnB,EAAE;IACD,gBAAgB,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAA;IAC7D,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,8BAA8B,GAAG,SAAS,CAAC,CAAA;IACtE,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC7B,oBAAoB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC3C,gBAAgB,IAAI,MAAM,CAAA;IAC1B,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC3C,qBA+GF"}
1
+ {"version":3,"file":"InitializeNumberFormat.d.ts","sourceRoot":"","sources":["../../NumberFormat/InitializeNumberFormat.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,8BAA8B,EAE/B,MAAM,iBAAiB,CAAA;AAgBxB;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,IAAI,CAAC,YAAY,EACrB,OAAO,EAAE,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,EACnD,IAAI,EAAE,mBAAmB,GAAG,SAAS,EACrC,EACE,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,GACnB,EAAE;IACD,gBAAgB,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAA;IAC7D,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,8BAA8B,GAAG,SAAS,CAAC,CAAA;IACtE,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC7B,oBAAoB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC3C,gBAAgB,IAAI,MAAM,CAAA;IAC1B,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC3C,qBAgLF"}
@@ -6,6 +6,11 @@ import { CurrencyDigits } from './CurrencyDigits';
6
6
  import { SetNumberFormatDigitOptions } from './SetNumberFormatDigitOptions';
7
7
  import { invariant } from '../utils';
8
8
  import { CoerceOptionsToObject } from '../CoerceOptionsToObject';
9
+ import { GetNumberOption } from '../GetNumberOption';
10
+ import { GetStringOrBooleanOption } from '../GetStringOrBooleanOption';
11
+ var VALID_ROUND_INCREMENT_VALUES = [
12
+ 1, 2, 5, 10, 20, 25, 50, 100, 200, 250, 500, 1000, 2000,
13
+ ];
9
14
  /**
10
15
  * https://tc39.es/ecma402/#sec-initializenumberformat
11
16
  */
@@ -52,13 +57,39 @@ export function InitializeNumberFormat(nf, locales, opts, _a) {
52
57
  var notation = GetOption(options, 'notation', 'string', ['standard', 'scientific', 'engineering', 'compact'], 'standard');
53
58
  internalSlots.notation = notation;
54
59
  SetNumberFormatDigitOptions(internalSlots, options, mnfdDefault, mxfdDefault, notation);
60
+ var roundingIncrement = GetNumberOption(options, 'roundingIncrement', 1, 5000, 1);
61
+ if (VALID_ROUND_INCREMENT_VALUES.indexOf(roundingIncrement) === -1) {
62
+ throw new RangeError("Invalid rounding increment value: ".concat(roundingIncrement, ".\nValid values are ").concat(VALID_ROUND_INCREMENT_VALUES, "."));
63
+ }
64
+ if (roundingIncrement !== 1 &&
65
+ internalSlots.roundingType !== 'fractionDigits') {
66
+ throw new TypeError("For roundingIncrement > 1 only fractionDigits is a valid roundingType");
67
+ }
68
+ if (roundingIncrement !== 1 &&
69
+ internalSlots.maximumFractionDigits !== internalSlots.minimumFractionDigits) {
70
+ throw new RangeError('With roundingIncrement > 1, maximumFractionDigits and minimumFractionDigits must be equal.');
71
+ }
72
+ internalSlots.roundingIncrement = roundingIncrement;
73
+ var trailingZeroDisplay = GetOption(options, 'trailingZeroDisplay', 'string', ['auto', 'stripIfInteger'], 'auto');
74
+ internalSlots.trailingZeroDisplay = trailingZeroDisplay;
55
75
  var compactDisplay = GetOption(options, 'compactDisplay', 'string', ['short', 'long'], 'short');
76
+ var defaultUseGrouping = 'auto';
56
77
  if (notation === 'compact') {
57
78
  internalSlots.compactDisplay = compactDisplay;
79
+ defaultUseGrouping = 'min2';
58
80
  }
59
- var useGrouping = GetOption(options, 'useGrouping', 'boolean', undefined, true);
60
- internalSlots.useGrouping = useGrouping;
61
- var signDisplay = GetOption(options, 'signDisplay', 'string', ['auto', 'never', 'always', 'exceptZero'], 'auto');
62
- internalSlots.signDisplay = signDisplay;
81
+ internalSlots.useGrouping = GetStringOrBooleanOption(options, 'useGrouping', ['min2', 'auto', 'always'], 'always', false, defaultUseGrouping);
82
+ internalSlots.signDisplay = GetOption(options, 'signDisplay', 'string', ['auto', 'never', 'always', 'exceptZero', 'negative'], 'auto');
83
+ internalSlots.roundingMode = GetOption(options, 'roundingMode', 'string', [
84
+ 'ceil',
85
+ 'floor',
86
+ 'expand',
87
+ 'trunc',
88
+ 'halfCeil',
89
+ 'halfFloor',
90
+ 'halfExpand',
91
+ 'halfTrunc',
92
+ 'halfEven',
93
+ ], 'halfExpand');
63
94
  return nf;
64
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PartitionNumberPattern.d.ts","sourceRoot":"","sources":["../../NumberFormat/PartitionNumberPattern.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,oBAAoB,EAAC,MAAM,iBAAiB,CAAA;AAMpD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,CAAC,EAAE,MAAM,EACT,EACE,gBAAgB,GACjB,EAAE;IACD,gBAAgB,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAA;CAC9D,gDAqEF"}
1
+ {"version":3,"file":"PartitionNumberPattern.d.ts","sourceRoot":"","sources":["../../NumberFormat/PartitionNumberPattern.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,oBAAoB,EAAC,MAAM,iBAAiB,CAAA;AAMpD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,CAAC,EAAE,MAAM,EACT,EACE,gBAAgB,GACjB,EAAE;IACD,gBAAgB,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAA;CAC9D,gDA0EF"}
@@ -18,19 +18,24 @@ export function PartitionNumberPattern(numberFormat, x, _a) {
18
18
  if (isNaN(x)) {
19
19
  n = symbols.nan;
20
20
  }
21
- else if (!isFinite(x)) {
21
+ else if (x == Number.POSITIVE_INFINITY || x == Number.NEGATIVE_INFINITY) {
22
22
  n = symbols.infinity;
23
23
  }
24
24
  else {
25
- if (internalSlots.style === 'percent') {
26
- x *= 100;
25
+ if (!SameValue(x, -0)) {
26
+ if (!isFinite(x)) {
27
+ throw new Error('Input must be a mathematical value');
28
+ }
29
+ if (internalSlots.style == 'percent') {
30
+ x *= 100;
31
+ }
32
+ ;
33
+ _b = ComputeExponent(numberFormat, x, {
34
+ getInternalSlots: getInternalSlots,
35
+ }), exponent = _b[0], magnitude = _b[1];
36
+ // Preserve more precision by doing multiplication when exponent is negative.
37
+ x = exponent < 0 ? x * Math.pow(10, -exponent) : x / Math.pow(10, exponent);
27
38
  }
28
- ;
29
- _b = ComputeExponent(numberFormat, x, {
30
- getInternalSlots: getInternalSlots,
31
- }), exponent = _b[0], magnitude = _b[1];
32
- // Preserve more precision by doing multiplication when exponent is negative.
33
- x = exponent < 0 ? x * Math.pow(10, -exponent) : x / Math.pow(10, exponent);
34
39
  var formatNumberResult = FormatNumericToString(internalSlots, x);
35
40
  n = formatNumberResult.formattedString;
36
41
  x = formatNumberResult.roundedNumber;
@@ -0,0 +1,8 @@
1
+ import { NumberFormatInternal, NumberFormatPart } from '../types/number';
2
+ /**
3
+ * https://tc39.es/ecma402/#sec-partitionnumberrangepattern
4
+ */
5
+ export declare function PartitionNumberRangePattern(numberFormat: Intl.NumberFormat, x: number, y: number, { getInternalSlots, }: {
6
+ getInternalSlots(nf: Intl.NumberFormat): NumberFormatInternal;
7
+ }): NumberFormatPart[];
8
+ //# sourceMappingURL=PartitionNumberRangePattern.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PartitionNumberRangePattern.d.ts","sourceRoot":"","sources":["../../NumberFormat/PartitionNumberRangePattern.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,oBAAoB,EAAE,gBAAgB,EAAC,MAAM,iBAAiB,CAAA;AAMtE;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,EACE,gBAAgB,GACjB,EAAE;IACD,gBAAgB,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAA;CAC9D,sBAqDF"}
@@ -0,0 +1,58 @@
1
+ import { SameValue } from '../262';
2
+ import { PartitionNumberPattern } from './PartitionNumberPattern';
3
+ import { CollapseNumberRange } from './CollapseNumberRange';
4
+ import { FormatApproximately } from './FormatApproximately';
5
+ /**
6
+ * https://tc39.es/ecma402/#sec-partitionnumberrangepattern
7
+ */
8
+ export function PartitionNumberRangePattern(numberFormat, x, y, _a) {
9
+ var getInternalSlots = _a.getInternalSlots;
10
+ var internalSlots = getInternalSlots(numberFormat);
11
+ if (isNaN(x) || isNaN(y)) {
12
+ throw new RangeError('Input must be a number');
13
+ }
14
+ if (isFinite(x)) {
15
+ if (isFinite(y) && y < x) {
16
+ throw new RangeError('Y input must be bigger than X');
17
+ }
18
+ else if (y == Number.NEGATIVE_INFINITY) {
19
+ throw new RangeError('Y input must not be NegativeInfinity');
20
+ }
21
+ else if (SameValue(y, -0) && x >= 0) {
22
+ throw new RangeError('Y input must be bigger than X');
23
+ }
24
+ }
25
+ else if (x == Number.POSITIVE_INFINITY) {
26
+ if (isFinite(y) || y == Number.NEGATIVE_INFINITY || SameValue(y, -0)) {
27
+ throw new RangeError('Y input must be bigger than X');
28
+ }
29
+ }
30
+ else if (SameValue(x, -0)) {
31
+ if (isFinite(y) && y < 0) {
32
+ throw new RangeError('Y input must be bigger than X');
33
+ }
34
+ else if (y == Number.NEGATIVE_INFINITY) {
35
+ throw new RangeError('Y input must be bigger than X');
36
+ }
37
+ }
38
+ var result = [];
39
+ var xResult = PartitionNumberPattern(numberFormat, x, { getInternalSlots: getInternalSlots });
40
+ var yResult = PartitionNumberPattern(numberFormat, y, { getInternalSlots: getInternalSlots });
41
+ if (xResult === yResult) {
42
+ return FormatApproximately(numberFormat, xResult, { getInternalSlots: getInternalSlots });
43
+ }
44
+ for (var _i = 0, xResult_1 = xResult; _i < xResult_1.length; _i++) {
45
+ var r = xResult_1[_i];
46
+ r.source = 'startRange';
47
+ }
48
+ result = result.concat(xResult);
49
+ var symbols = internalSlots.dataLocaleData.numbers.symbols[internalSlots.numberingSystem];
50
+ var rangeSeparator = symbols.timeSeparator;
51
+ result.push({ type: 'literal', value: rangeSeparator, source: 'shared' });
52
+ for (var _b = 0, yResult_1 = yResult; _b < yResult_1.length; _b++) {
53
+ var r = yResult_1[_b];
54
+ r.source = 'endRange';
55
+ }
56
+ result = result.concat(yResult);
57
+ return CollapseNumberRange(result);
58
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"SetNumberFormatDigitOptions.d.ts","sourceRoot":"","sources":["../../NumberFormat/SetNumberFormatDigitOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,8BAA8B,EAC/B,MAAM,iBAAiB,CAAA;AAIxB;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,8BAA8B,EAC7C,IAAI,EAAE,wBAAwB,EAC9B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,oBAAoB,QA4B/B"}
1
+ {"version":3,"file":"SetNumberFormatDigitOptions.d.ts","sourceRoot":"","sources":["../../NumberFormat/SetNumberFormatDigitOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,8BAA8B,EAC/B,MAAM,iBAAiB,CAAA;AAKxB;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,8BAA8B,EAC7C,IAAI,EAAE,wBAAwB,EAC9B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,oBAAoB,QA2E/B"}
@@ -1,5 +1,6 @@
1
1
  import { GetNumberOption } from '../GetNumberOption';
2
2
  import { DefaultNumberOption } from '../DefaultNumberOption';
3
+ import { GetOption } from '../GetOption';
3
4
  /**
4
5
  * https://tc39.es/ecma402/#sec-setnfdigitoptions
5
6
  */
@@ -10,27 +11,71 @@ export function SetNumberFormatDigitOptions(internalSlots, opts, mnfdDefault, mx
10
11
  var mnsd = opts.minimumSignificantDigits;
11
12
  var mxsd = opts.maximumSignificantDigits;
12
13
  internalSlots.minimumIntegerDigits = mnid;
13
- if (mnsd !== undefined || mxsd !== undefined) {
14
- internalSlots.roundingType = 'significantDigits';
15
- mnsd = DefaultNumberOption(mnsd, 1, 21, 1);
16
- mxsd = DefaultNumberOption(mxsd, mnsd, 21, 21);
17
- internalSlots.minimumSignificantDigits = mnsd;
18
- internalSlots.maximumSignificantDigits = mxsd;
14
+ var roundingPriority = GetOption(opts, 'roundingPriority', 'string', ['auto', 'morePrecision', 'lessPrecision'], 'auto');
15
+ var hasSd = mnsd !== undefined || mxsd !== undefined;
16
+ var hasFd = mnfd !== undefined || mxfd !== undefined;
17
+ var needSd = true;
18
+ var needFd = true;
19
+ if (roundingPriority === 'auto') {
20
+ needSd = hasSd;
21
+ if (hasSd || (!hasFd && notation === 'compact')) {
22
+ needFd = false;
23
+ }
19
24
  }
20
- else if (mnfd !== undefined || mxfd !== undefined) {
21
- internalSlots.roundingType = 'fractionDigits';
22
- mnfd = DefaultNumberOption(mnfd, 0, 20, mnfdDefault);
23
- var mxfdActualDefault = Math.max(mnfd, mxfdDefault);
24
- mxfd = DefaultNumberOption(mxfd, mnfd, 20, mxfdActualDefault);
25
- internalSlots.minimumFractionDigits = mnfd;
26
- internalSlots.maximumFractionDigits = mxfd;
25
+ if (needSd) {
26
+ if (hasSd) {
27
+ mnsd = DefaultNumberOption(mnsd, 1, 21, 1);
28
+ mxsd = DefaultNumberOption(mxsd, mnsd, 21, 21);
29
+ internalSlots.minimumSignificantDigits = mnsd;
30
+ internalSlots.maximumSignificantDigits = mxsd;
31
+ }
32
+ else {
33
+ internalSlots.minimumSignificantDigits = 1;
34
+ internalSlots.maximumSignificantDigits = 21;
35
+ }
27
36
  }
28
- else if (notation === 'compact') {
29
- internalSlots.roundingType = 'compactRounding';
37
+ if (needFd) {
38
+ if (hasFd) {
39
+ // @ts-expect-error
40
+ mnfd = DefaultNumberOption(mnfd, 0, 20, undefined);
41
+ // @ts-expect-error
42
+ mxfd = DefaultNumberOption(mxfd, 0, 20, undefined);
43
+ if (mnfd === undefined) {
44
+ mnfd = Math.min(mnfdDefault, mxfd);
45
+ }
46
+ else if (mxfd === undefined) {
47
+ mxfd = Math.max(mxfdDefault, mnfd);
48
+ }
49
+ else if (mnfd > mxfd) {
50
+ throw new RangeError("Invalid range, ".concat(mnfd, " > ").concat(mxfd));
51
+ }
52
+ internalSlots.minimumFractionDigits = mnfd;
53
+ internalSlots.maximumFractionDigits = mxfd;
54
+ }
55
+ else {
56
+ internalSlots.minimumFractionDigits = mnfdDefault;
57
+ internalSlots.maximumFractionDigits = mxfdDefault;
58
+ }
59
+ }
60
+ if (needSd || needFd) {
61
+ if (roundingPriority === 'morePrecision') {
62
+ internalSlots.roundingType = 'morePrecision';
63
+ }
64
+ else if (roundingPriority === 'lessPrecision') {
65
+ internalSlots.roundingType = 'lessPrecision';
66
+ }
67
+ else if (hasSd) {
68
+ internalSlots.roundingType = 'significantDigits';
69
+ }
70
+ else {
71
+ internalSlots.roundingType = 'fractionDigits';
72
+ }
30
73
  }
31
74
  else {
32
- internalSlots.roundingType = 'fractionDigits';
33
- internalSlots.minimumFractionDigits = mnfdDefault;
34
- internalSlots.maximumFractionDigits = mxfdDefault;
75
+ internalSlots.roundingType = 'morePrecision';
76
+ internalSlots.minimumFractionDigits = 0;
77
+ internalSlots.maximumFractionDigits = 0;
78
+ internalSlots.minimumSignificantDigits = 1;
79
+ internalSlots.maximumSignificantDigits = 2;
35
80
  }
36
81
  }
@@ -1,4 +1,4 @@
1
- import { NumberFormatOptionsStyle, NumberFormatOptionsNotation, NumberFormatOptionsCompactDisplay, NumberFormatOptionsCurrencyDisplay, NumberFormatOptionsCurrencySign, NumberFormatOptionsUnitDisplay, NumberFormatLocaleInternalData, NumberFormatPart } from '../types/number';
1
+ import { NumberFormatOptionsStyle, NumberFormatOptionsNotation, NumberFormatOptionsCompactDisplay, NumberFormatOptionsCurrencyDisplay, NumberFormatOptionsCurrencySign, NumberFormatOptionsUnitDisplay, NumberFormatLocaleInternalData, NumberFormatPart, UseGroupingType } from '../types/number';
2
2
  interface NumberResult {
3
3
  formattedString: string;
4
4
  roundedNumber: number;
@@ -8,7 +8,7 @@ interface NumberResult {
8
8
  }
9
9
  export default function formatToParts(numberResult: NumberResult, data: NumberFormatLocaleInternalData, pl: Intl.PluralRules, options: {
10
10
  numberingSystem: string;
11
- useGrouping: boolean;
11
+ useGrouping?: UseGroupingType;
12
12
  style: NumberFormatOptionsStyle;
13
13
  notation: NumberFormatOptionsNotation;
14
14
  compactDisplay?: NumberFormatOptionsCompactDisplay;
@@ -1 +1 @@
1
- {"version":3,"file":"format_to_parts.d.ts","sourceRoot":"","sources":["../../NumberFormat/format_to_parts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,iCAAiC,EACjC,kCAAkC,EAClC,+BAA+B,EAC/B,8BAA8B,EAC9B,8BAA8B,EAM9B,gBAAgB,EACjB,MAAM,iBAAiB,CAAA;AAexB,UAAU,YAAY;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAEhB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,CAAC,OAAO,UAAU,aAAa,CACnC,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,8BAA8B,EACpC,EAAE,EAAE,IAAI,CAAC,WAAW,EACpB,OAAO,EAAE;IACP,eAAe,EAAE,MAAM,CAAA;IACvB,WAAW,EAAE,OAAO,CAAA;IACpB,KAAK,EAAE,wBAAwB,CAAA;IAE/B,QAAQ,EAAE,2BAA2B,CAAA;IAErC,cAAc,CAAC,EAAE,iCAAiC,CAAA;IAElD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,CAAC,EAAE,kCAAkC,CAAA;IACpD,YAAY,CAAC,EAAE,+BAA+B,CAAA;IAE9C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,8BAA8B,CAAA;CAC7C,GACA,gBAAgB,EAAE,CAySpB"}
1
+ {"version":3,"file":"format_to_parts.d.ts","sourceRoot":"","sources":["../../NumberFormat/format_to_parts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,iCAAiC,EACjC,kCAAkC,EAClC,+BAA+B,EAC/B,8BAA8B,EAC9B,8BAA8B,EAM9B,gBAAgB,EAChB,eAAe,EAChB,MAAM,iBAAiB,CAAA;AAexB,UAAU,YAAY;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAEhB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,CAAC,OAAO,UAAU,aAAa,CACnC,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,8BAA8B,EACpC,EAAE,EAAE,IAAI,CAAC,WAAW,EACpB,OAAO,EAAE;IACP,eAAe,EAAE,MAAM,CAAA;IACvB,WAAW,CAAC,EAAE,eAAe,CAAA;IAC7B,KAAK,EAAE,wBAAwB,CAAA;IAE/B,QAAQ,EAAE,2BAA2B,CAAA;IAErC,cAAc,CAAC,EAAE,iCAAiC,CAAA;IAElD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,CAAC,EAAE,kCAAkC,CAAA;IACpD,YAAY,CAAC,EAAE,+BAA+B,CAAA;IAE9C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,8BAA8B,CAAA;CAC7C,GACA,gBAAgB,EAAE,CAySpB"}
@@ -117,7 +117,7 @@ export default function formatToParts(numberResult, data, pl, options) {
117
117
  // We only need to handle scientific and engineering notation here.
118
118
  numberParts.push.apply(numberParts, paritionNumberIntoParts(symbols, numberResult, notation, exponent, numberingSystem,
119
119
  // If compact number pattern exists, do not insert group separators.
120
- !compactNumberPattern && options.useGrouping, decimalNumberPattern));
120
+ !compactNumberPattern && Boolean(options.useGrouping), decimalNumberPattern));
121
121
  break;
122
122
  }
123
123
  case '-':
package/lib/index.d.ts CHANGED
@@ -4,17 +4,23 @@ export * from './CoerceOptionsToObject';
4
4
  export * from './GetNumberOption';
5
5
  export * from './GetOption';
6
6
  export * from './GetOptionsObject';
7
+ export * from './GetStringOrBooleanOption';
7
8
  export * from './IsSanctionedSimpleUnitIdentifier';
8
9
  export * from './IsValidTimeZoneName';
9
10
  export * from './IsWellFormedCurrencyCode';
10
11
  export * from './IsWellFormedUnitIdentifier';
12
+ export * from './NumberFormat/ApplyUnsignedRoundingMode';
13
+ export * from './NumberFormat/CollapseNumberRange';
11
14
  export * from './NumberFormat/ComputeExponent';
12
15
  export * from './NumberFormat/ComputeExponentForMagnitude';
13
16
  export * from './NumberFormat/CurrencyDigits';
17
+ export * from './NumberFormat/FormatApproximately';
14
18
  export * from './NumberFormat/FormatNumericToParts';
15
19
  export * from './NumberFormat/FormatNumericToString';
20
+ export * from './NumberFormat/GetUnsignedRoundingMode';
16
21
  export * from './NumberFormat/InitializeNumberFormat';
17
22
  export * from './NumberFormat/PartitionNumberPattern';
23
+ export * from './NumberFormat/PartitionNumberRangePattern';
18
24
  export * from './NumberFormat/SetNumberFormatDigitOptions';
19
25
  export * from './NumberFormat/SetNumberFormatUnitOptions';
20
26
  export * from './NumberFormat/ToRawFixed';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,yBAAyB,CAAA;AACvC,cAAc,mBAAmB,CAAA;AACjC,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,oCAAoC,CAAA;AAClD,cAAc,uBAAuB,CAAA;AACrC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,4CAA4C,CAAA;AAC1D,cAAc,+BAA+B,CAAA;AAC7C,cAAc,qCAAqC,CAAA;AACnD,cAAc,sCAAsC,CAAA;AACpD,cAAc,uCAAuC,CAAA;AACrD,cAAc,uCAAuC,CAAA;AACrD,cAAc,4CAA4C,CAAA;AAC1D,cAAc,2CAA2C,CAAA;AACzD,cAAc,2BAA2B,CAAA;AACzC,cAAc,+BAA+B,CAAA;AAC7C,OAAO,EAAC,OAAO,IAAI,cAAc,EAAC,MAAM,gCAAgC,CAAA;AACxE,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,YAAY,EACZ,cAAc,GACf,MAAM,SAAS,CAAA;AAChB,YAAY,EAAC,WAAW,EAAC,MAAM,SAAS,CAAA;AAExC,OAAO,EAAC,wBAAwB,EAAC,MAAM,QAAQ,CAAA;AAC/C,cAAc,uBAAuB,CAAA;AACrC,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,sBAAsB,CAAA;AACpC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,sBAAsB,CAAA;AACpC,OAAO,EAAC,SAAS,EAAC,MAAM,SAAS,CAAA;AACjC,YAAY,EAAC,UAAU,EAAC,MAAM,cAAc,CAAA;AAC5C,cAAc,OAAO,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,yBAAyB,CAAA;AACvC,cAAc,mBAAmB,CAAA;AACjC,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oCAAoC,CAAA;AAClD,cAAc,uBAAuB,CAAA;AACrC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,0CAA0C,CAAA;AACxD,cAAc,oCAAoC,CAAA;AAClD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,4CAA4C,CAAA;AAC1D,cAAc,+BAA+B,CAAA;AAC7C,cAAc,oCAAoC,CAAA;AAClD,cAAc,qCAAqC,CAAA;AACnD,cAAc,sCAAsC,CAAA;AACpD,cAAc,wCAAwC,CAAA;AACtD,cAAc,uCAAuC,CAAA;AACrD,cAAc,uCAAuC,CAAA;AACrD,cAAc,4CAA4C,CAAA;AAC1D,cAAc,4CAA4C,CAAA;AAC1D,cAAc,2CAA2C,CAAA;AACzD,cAAc,2BAA2B,CAAA;AACzC,cAAc,+BAA+B,CAAA;AAC7C,OAAO,EAAC,OAAO,IAAI,cAAc,EAAC,MAAM,gCAAgC,CAAA;AACxE,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,YAAY,EACZ,cAAc,GACf,MAAM,SAAS,CAAA;AAChB,YAAY,EAAC,WAAW,EAAC,MAAM,SAAS,CAAA;AAExC,OAAO,EAAC,wBAAwB,EAAC,MAAM,QAAQ,CAAA;AAC/C,cAAc,uBAAuB,CAAA;AACrC,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,sBAAsB,CAAA;AACpC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,sBAAsB,CAAA;AACpC,OAAO,EAAC,SAAS,EAAC,MAAM,SAAS,CAAA;AACjC,YAAY,EAAC,UAAU,EAAC,MAAM,cAAc,CAAA;AAC5C,cAAc,OAAO,CAAA"}
package/lib/index.js CHANGED
@@ -4,17 +4,23 @@ export * from './CoerceOptionsToObject';
4
4
  export * from './GetNumberOption';
5
5
  export * from './GetOption';
6
6
  export * from './GetOptionsObject';
7
+ export * from './GetStringOrBooleanOption';
7
8
  export * from './IsSanctionedSimpleUnitIdentifier';
8
9
  export * from './IsValidTimeZoneName';
9
10
  export * from './IsWellFormedCurrencyCode';
10
11
  export * from './IsWellFormedUnitIdentifier';
12
+ export * from './NumberFormat/ApplyUnsignedRoundingMode';
13
+ export * from './NumberFormat/CollapseNumberRange';
11
14
  export * from './NumberFormat/ComputeExponent';
12
15
  export * from './NumberFormat/ComputeExponentForMagnitude';
13
16
  export * from './NumberFormat/CurrencyDigits';
17
+ export * from './NumberFormat/FormatApproximately';
14
18
  export * from './NumberFormat/FormatNumericToParts';
15
19
  export * from './NumberFormat/FormatNumericToString';
20
+ export * from './NumberFormat/GetUnsignedRoundingMode';
16
21
  export * from './NumberFormat/InitializeNumberFormat';
17
22
  export * from './NumberFormat/PartitionNumberPattern';
23
+ export * from './NumberFormat/PartitionNumberRangePattern';
18
24
  export * from './NumberFormat/SetNumberFormatDigitOptions';
19
25
  export * from './NumberFormat/SetNumberFormatUnitOptions';
20
26
  export * from './NumberFormat/ToRawFixed';
@@ -1,4 +1,4 @@
1
- export declare type Formats = Pick<Intl.DateTimeFormatOptions, 'weekday' | 'era' | 'year' | 'month' | 'day' | 'hour' | 'minute' | 'second' | 'timeZoneName'> & {
1
+ export declare type Formats = Pick<Intl.DateTimeFormatOptions, 'weekday' | 'era' | 'year' | 'month' | 'day' | 'dayPeriod' | 'hour' | 'minute' | 'second' | 'timeZoneName'> & {
2
2
  fractionalSecondDigits?: 0 | 1 | 2;
3
3
  hour12?: boolean;
4
4
  pattern: string;
@@ -23,7 +23,7 @@ export interface IntlDateTimeFormatInternal {
23
23
  hour: '2-digit' | 'numeric';
24
24
  minute: '2-digit' | 'numeric';
25
25
  second: '2-digit' | 'numeric';
26
- timeZoneName: 'short' | 'long';
26
+ timeZoneName: 'short' | 'long' | 'shortOffset' | 'longOffset' | 'shortGeneric' | 'longGeneric';
27
27
  fractionalSecondDigits?: 1 | 2 | 3;
28
28
  hourCycle: string;
29
29
  numberingSystem: string;
@@ -46,7 +46,7 @@ export declare enum RangePatternType {
46
46
  shared = "shared",
47
47
  endRange = "endRange"
48
48
  }
49
- export declare type TABLE_6 = 'weekday' | 'era' | 'year' | 'month' | 'day' | 'hour' | 'minute' | 'second' | 'fractionalSecondDigits' | 'timeZoneName';
49
+ export declare type TABLE_6 = 'weekday' | 'era' | 'year' | 'month' | 'day' | 'dayPeriod' | 'hour' | 'minute' | 'second' | 'fractionalSecondDigits' | 'timeZoneName';
50
50
  export declare type TABLE_2 = 'era' | 'year' | 'month' | 'day' | 'dayPeriod' | 'ampm' | 'hour' | 'minute' | 'second' | 'fractionalSecondDigits';
51
51
  export declare type TimeZoneNameData = Record<string, {
52
52
  long?: [string, string];
@@ -1 +1 @@
1
- {"version":3,"file":"date-time.d.ts","sourceRoot":"","sources":["../../types/date-time.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"date-time.d.ts","sourceRoot":"","sources":["../../types/date-time.ts"],"names":[],"mappings":"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"}