@formatjs/intl-datetimeformat 6.18.2 → 7.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +1 -1
- package/index.js +1 -4
- package/package.json +14 -6
- package/polyfill-force.js +13 -15
- package/polyfill.iife.js +44 -44
- package/polyfill.js +15 -17
- package/should-polyfill.js +7 -10
- package/src/abstract/BasicFormatMatcher.js +26 -29
- package/src/abstract/BestFitFormatMatcher.js +19 -23
- package/src/abstract/DateTimeStyleFormat.js +5 -8
- package/src/abstract/FormatDateTime.d.ts +1 -1
- package/src/abstract/FormatDateTime.js +3 -6
- package/src/abstract/FormatDateTimePattern.d.ts +1 -1
- package/src/abstract/FormatDateTimePattern.js +12 -16
- package/src/abstract/FormatDateTimeRange.d.ts +2 -2
- package/src/abstract/FormatDateTimeRange.js +3 -6
- package/src/abstract/FormatDateTimeRangeToParts.d.ts +2 -2
- package/src/abstract/FormatDateTimeRangeToParts.js +4 -7
- package/src/abstract/FormatDateTimeToParts.d.ts +1 -1
- package/src/abstract/FormatDateTimeToParts.js +5 -8
- package/src/abstract/InitializeDateTimeFormat.js +37 -40
- package/src/abstract/PartitionDateTimePattern.d.ts +2 -2
- package/src/abstract/PartitionDateTimePattern.js +6 -9
- package/src/abstract/PartitionDateTimeRangePattern.d.ts +2 -2
- package/src/abstract/PartitionDateTimeRangePattern.js +16 -19
- package/src/abstract/ToDateTimeOptions.js +3 -6
- package/src/abstract/ToLocalTime.js +11 -14
- package/src/abstract/skeleton.js +14 -20
- package/src/abstract/utils.js +9 -12
- package/src/core.d.ts +1 -1
- package/src/core.js +115 -116
- package/src/data/all-tz.js +1 -3
- package/src/data/links.js +1 -3
- package/src/get_internal_slots.js +1 -4
- package/src/packer.d.ts +1 -1
- package/src/packer.js +5 -9
- package/src/to_locale_string.js +8 -13
- package/src/types.d.ts +1 -1
- package/src/types.js +1 -2
- package/supported-locales.generated.js +1 -4
- package/test262-main.d.ts +1 -1
- package/test262-main.js +3 -6
- package/lib/index.d.ts +0 -1
- package/lib/index.js +0 -1
- package/lib/polyfill-force.d.ts +0 -1
- package/lib/polyfill-force.js +0 -44
- package/lib/polyfill.d.ts +0 -1
- package/lib/polyfill.js +0 -47
- package/lib/should-polyfill.d.ts +0 -1
- package/lib/should-polyfill.js +0 -61
- package/lib/src/abstract/BasicFormatMatcher.d.ts +0 -7
- package/lib/src/abstract/BasicFormatMatcher.js +0 -106
- package/lib/src/abstract/BestFitFormatMatcher.d.ts +0 -16
- package/lib/src/abstract/BestFitFormatMatcher.js +0 -116
- package/lib/src/abstract/DateTimeStyleFormat.d.ts +0 -2
- package/lib/src/abstract/DateTimeStyleFormat.js +0 -50
- package/lib/src/abstract/FormatDateTime.d.ts +0 -9
- package/lib/src/abstract/FormatDateTime.js +0 -15
- package/lib/src/abstract/FormatDateTimePattern.d.ts +0 -14
- package/lib/src/abstract/FormatDateTimePattern.js +0 -191
- package/lib/src/abstract/FormatDateTimeRange.d.ts +0 -4
- package/lib/src/abstract/FormatDateTimeRange.js +0 -10
- package/lib/src/abstract/FormatDateTimeRangeToParts.d.ts +0 -5
- package/lib/src/abstract/FormatDateTimeRangeToParts.js +0 -14
- package/lib/src/abstract/FormatDateTimeToParts.d.ts +0 -11
- package/lib/src/abstract/FormatDateTimeToParts.js +0 -21
- package/lib/src/abstract/InitializeDateTimeFormat.d.ts +0 -17
- package/lib/src/abstract/InitializeDateTimeFormat.js +0 -190
- package/lib/src/abstract/PartitionDateTimePattern.d.ts +0 -10
- package/lib/src/abstract/PartitionDateTimePattern.js +0 -17
- package/lib/src/abstract/PartitionDateTimeRangePattern.d.ts +0 -5
- package/lib/src/abstract/PartitionDateTimeRangePattern.js +0 -119
- package/lib/src/abstract/ToDateTimeOptions.d.ts +0 -7
- package/lib/src/abstract/ToDateTimeOptions.js +0 -63
- package/lib/src/abstract/ToLocalTime.d.ts +0 -26
- package/lib/src/abstract/ToLocalTime.js +0 -49
- package/lib/src/abstract/skeleton.d.ts +0 -13
- package/lib/src/abstract/skeleton.js +0 -294
- package/lib/src/abstract/utils.d.ts +0 -10
- package/lib/src/abstract/utils.js +0 -21
- package/lib/src/core.d.ts +0 -20
- package/lib/src/core.js +0 -300
- package/lib/src/data/all-tz.d.ts +0 -6
- package/lib/src/data/all-tz.js +0 -461
- package/lib/src/data/links.d.ts +0 -259
- package/lib/src/data/links.js +0 -260
- package/lib/src/get_internal_slots.d.ts +0 -2
- package/lib/src/get_internal_slots.js +0 -11
- package/lib/src/packer.d.ts +0 -4
- package/lib/src/packer.js +0 -39
- package/lib/src/to_locale_string.d.ts +0 -7
- package/lib/src/to_locale_string.js +0 -19
- package/lib/src/types.d.ts +0 -47
- package/lib/src/types.js +0 -1
- package/lib/supported-locales.generated.d.ts +0 -1
- package/lib/supported-locales.generated.js +0 -1
- package/lib/test262-main.d.ts +0 -1
- package/lib/test262-main.js +0 -23786
|
@@ -1,20 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.PartitionDateTimePattern = PartitionDateTimePattern;
|
|
4
|
-
var ecma402_abstract_1 = require("@formatjs/ecma402-abstract");
|
|
5
|
-
var FormatDateTimePattern_1 = require("./FormatDateTimePattern");
|
|
1
|
+
import { invariant, PartitionPattern, TimeClip, } from '@formatjs/ecma402-abstract';
|
|
2
|
+
import { FormatDateTimePattern, } from './FormatDateTimePattern.js';
|
|
6
3
|
/**
|
|
7
4
|
* https://tc39.es/ecma402/#sec-partitiondatetimepattern
|
|
8
5
|
* @param dtf
|
|
9
6
|
* @param x
|
|
10
7
|
*/
|
|
11
|
-
function PartitionDateTimePattern(dtf, x, implDetails) {
|
|
12
|
-
x =
|
|
13
|
-
|
|
8
|
+
export function PartitionDateTimePattern(dtf, x, implDetails) {
|
|
9
|
+
x = TimeClip(x);
|
|
10
|
+
invariant(!x.isNaN(), 'Invalid time', RangeError);
|
|
14
11
|
/** IMPL START */
|
|
15
12
|
var getInternalSlots = implDetails.getInternalSlots;
|
|
16
13
|
var internalSlots = getInternalSlots(dtf);
|
|
17
14
|
/** IMPL END */
|
|
18
15
|
var pattern = internalSlots.pattern;
|
|
19
|
-
return
|
|
16
|
+
return FormatDateTimePattern(dtf, PartitionPattern(pattern), x, implDetails);
|
|
20
17
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IntlDateTimeFormatPart } from '@formatjs/ecma402-abstract';
|
|
2
2
|
import Decimal from 'decimal.js';
|
|
3
|
-
import { FormatDateTimePatternImplDetails } from './FormatDateTimePattern';
|
|
4
|
-
import { ToLocalTimeImplDetails } from './ToLocalTime';
|
|
3
|
+
import { FormatDateTimePatternImplDetails } from './FormatDateTimePattern.js';
|
|
4
|
+
import { ToLocalTimeImplDetails } from './ToLocalTime.js';
|
|
5
5
|
export declare function PartitionDateTimeRangePattern(dtf: Intl.DateTimeFormat, x: Decimal, y: Decimal, implDetails: FormatDateTimePatternImplDetails & ToLocalTimeImplDetails): IntlDateTimeFormatPart[];
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var ecma402_abstract_1 = require("@formatjs/ecma402-abstract");
|
|
5
|
-
var FormatDateTimePattern_1 = require("./FormatDateTimePattern");
|
|
6
|
-
var ToLocalTime_1 = require("./ToLocalTime");
|
|
1
|
+
import { PartitionPattern, RangePatternType, SameValue, TimeClip, } from '@formatjs/ecma402-abstract';
|
|
2
|
+
import { FormatDateTimePattern, } from './FormatDateTimePattern.js';
|
|
3
|
+
import { ToLocalTime } from './ToLocalTime.js';
|
|
7
4
|
var TABLE_2_FIELDS = [
|
|
8
5
|
'era',
|
|
9
6
|
'year',
|
|
@@ -16,12 +13,12 @@ var TABLE_2_FIELDS = [
|
|
|
16
13
|
'second',
|
|
17
14
|
'fractionalSecondDigits',
|
|
18
15
|
];
|
|
19
|
-
function PartitionDateTimeRangePattern(dtf, x, y, implDetails) {
|
|
20
|
-
x =
|
|
16
|
+
export function PartitionDateTimeRangePattern(dtf, x, y, implDetails) {
|
|
17
|
+
x = TimeClip(x);
|
|
21
18
|
if (x.isNaN()) {
|
|
22
19
|
throw new RangeError('Invalid start time');
|
|
23
20
|
}
|
|
24
|
-
y =
|
|
21
|
+
y = TimeClip(y);
|
|
25
22
|
if (y.isNaN()) {
|
|
26
23
|
throw new RangeError('Invalid end time');
|
|
27
24
|
}
|
|
@@ -29,10 +26,10 @@ function PartitionDateTimeRangePattern(dtf, x, y, implDetails) {
|
|
|
29
26
|
var getInternalSlots = implDetails.getInternalSlots, tzData = implDetails.tzData;
|
|
30
27
|
var internalSlots = getInternalSlots(dtf);
|
|
31
28
|
/** IMPL END */
|
|
32
|
-
var tm1 =
|
|
29
|
+
var tm1 = ToLocalTime(x,
|
|
33
30
|
// @ts-ignore
|
|
34
31
|
internalSlots.calendar, internalSlots.timeZone, { tzData: tzData });
|
|
35
|
-
var tm2 =
|
|
32
|
+
var tm2 = ToLocalTime(y,
|
|
36
33
|
// @ts-ignore
|
|
37
34
|
internalSlots.calendar, internalSlots.timeZone, { tzData: tzData });
|
|
38
35
|
var pattern = internalSlots.pattern, rangePatterns = internalSlots.rangePatterns;
|
|
@@ -65,14 +62,14 @@ function PartitionDateTimeRangePattern(dtf, x, y, implDetails) {
|
|
|
65
62
|
}
|
|
66
63
|
var v1 = Math.floor(tm1.millisecond * Math.pow(10, (fractionalSecondDigits - 3)));
|
|
67
64
|
var v2 = Math.floor(tm2.millisecond * Math.pow(10, (fractionalSecondDigits - 3)));
|
|
68
|
-
if (!
|
|
65
|
+
if (!SameValue(v1, v2)) {
|
|
69
66
|
dateFieldsPracticallyEqual = false;
|
|
70
67
|
}
|
|
71
68
|
}
|
|
72
69
|
else {
|
|
73
70
|
var v1 = tm1[fieldName];
|
|
74
71
|
var v2 = tm2[fieldName];
|
|
75
|
-
if (!
|
|
72
|
+
if (!SameValue(v1, v2)) {
|
|
76
73
|
dateFieldsPracticallyEqual = false;
|
|
77
74
|
}
|
|
78
75
|
}
|
|
@@ -80,10 +77,10 @@ function PartitionDateTimeRangePattern(dtf, x, y, implDetails) {
|
|
|
80
77
|
}
|
|
81
78
|
}
|
|
82
79
|
if (dateFieldsPracticallyEqual) {
|
|
83
|
-
var result_2 =
|
|
80
|
+
var result_2 = FormatDateTimePattern(dtf, PartitionPattern(pattern), x, implDetails);
|
|
84
81
|
for (var _a = 0, result_1 = result_2; _a < result_1.length; _a++) {
|
|
85
82
|
var r = result_1[_a];
|
|
86
|
-
r.source =
|
|
83
|
+
r.source = RangePatternType.shared;
|
|
87
84
|
}
|
|
88
85
|
return result_2;
|
|
89
86
|
}
|
|
@@ -103,15 +100,15 @@ function PartitionDateTimeRangePattern(dtf, x, y, implDetails) {
|
|
|
103
100
|
var rangePatternPart = _e[_d];
|
|
104
101
|
var source = rangePatternPart.source, pattern_1 = rangePatternPart.pattern;
|
|
105
102
|
var z = void 0;
|
|
106
|
-
if (source ===
|
|
107
|
-
source ===
|
|
103
|
+
if (source === RangePatternType.startRange ||
|
|
104
|
+
source === RangePatternType.shared) {
|
|
108
105
|
z = x;
|
|
109
106
|
}
|
|
110
107
|
else {
|
|
111
108
|
z = y;
|
|
112
109
|
}
|
|
113
|
-
var patternParts =
|
|
114
|
-
var partResult =
|
|
110
|
+
var patternParts = PartitionPattern(pattern_1);
|
|
111
|
+
var partResult = FormatDateTimePattern(dtf, patternParts, z, implDetails);
|
|
115
112
|
for (var _f = 0, partResult_1 = partResult; _f < partResult_1.length; _f++) {
|
|
116
113
|
var r = partResult_1[_f];
|
|
117
114
|
r.source = source;
|
|
@@ -1,19 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ToDateTimeOptions = ToDateTimeOptions;
|
|
4
|
-
var ecma402_abstract_1 = require("@formatjs/ecma402-abstract");
|
|
1
|
+
import { ToObject } from '@formatjs/ecma402-abstract';
|
|
5
2
|
/**
|
|
6
3
|
* https://tc39.es/ecma402/#sec-todatetimeoptions
|
|
7
4
|
* @param options
|
|
8
5
|
* @param required
|
|
9
6
|
* @param defaults
|
|
10
7
|
*/
|
|
11
|
-
function ToDateTimeOptions(options, required, defaults) {
|
|
8
|
+
export function ToDateTimeOptions(options, required, defaults) {
|
|
12
9
|
if (options === undefined) {
|
|
13
10
|
options = null;
|
|
14
11
|
}
|
|
15
12
|
else {
|
|
16
|
-
options =
|
|
13
|
+
options = ToObject(options);
|
|
17
14
|
}
|
|
18
15
|
options = Object.create(options);
|
|
19
16
|
var needDefaults = true;
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ToLocalTime = ToLocalTime;
|
|
4
|
-
var ecma402_abstract_1 = require("@formatjs/ecma402-abstract");
|
|
1
|
+
import { DateFromTime, HourFromTime, MinFromTime, MonthFromTime, SecFromTime, WeekDay, YearFromTime, invariant, msFromTime, } from '@formatjs/ecma402-abstract';
|
|
5
2
|
function getApplicableZoneData(t, timeZone, tzData) {
|
|
6
3
|
var _a;
|
|
7
4
|
var zoneData = tzData[timeZone];
|
|
@@ -27,24 +24,24 @@ function getApplicableZoneData(t, timeZone, tzData) {
|
|
|
27
24
|
* @param calendar
|
|
28
25
|
* @param timeZone
|
|
29
26
|
*/
|
|
30
|
-
function ToLocalTime(t, calendar, timeZone, _a) {
|
|
27
|
+
export function ToLocalTime(t, calendar, timeZone, _a) {
|
|
31
28
|
var tzData = _a.tzData;
|
|
32
|
-
|
|
29
|
+
invariant(calendar === 'gregory', 'We only support Gregory calendar right now');
|
|
33
30
|
var _b = getApplicableZoneData(t.toNumber(), timeZone, tzData), timeZoneOffset = _b[0], inDST = _b[1];
|
|
34
31
|
var tz = t.plus(timeZoneOffset).toNumber();
|
|
35
|
-
var year =
|
|
32
|
+
var year = YearFromTime(tz);
|
|
36
33
|
return {
|
|
37
|
-
weekday:
|
|
34
|
+
weekday: WeekDay(tz),
|
|
38
35
|
era: year < 0 ? 'BC' : 'AD',
|
|
39
36
|
year: year,
|
|
40
37
|
relatedYear: undefined,
|
|
41
38
|
yearName: undefined,
|
|
42
|
-
month:
|
|
43
|
-
day:
|
|
44
|
-
hour:
|
|
45
|
-
minute:
|
|
46
|
-
second:
|
|
47
|
-
millisecond:
|
|
39
|
+
month: MonthFromTime(tz),
|
|
40
|
+
day: DateFromTime(tz),
|
|
41
|
+
hour: HourFromTime(tz),
|
|
42
|
+
minute: MinFromTime(tz),
|
|
43
|
+
second: SecFromTime(tz),
|
|
44
|
+
millisecond: msFromTime(tz),
|
|
48
45
|
inDST: inDST,
|
|
49
46
|
// IMPORTANT: Not in spec
|
|
50
47
|
timeZoneOffset: timeZoneOffset,
|
package/src/abstract/skeleton.js
CHANGED
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.processDateTimePattern = processDateTimePattern;
|
|
4
|
-
exports.parseDateTimeSkeleton = parseDateTimeSkeleton;
|
|
5
|
-
exports.splitFallbackRangePattern = splitFallbackRangePattern;
|
|
6
|
-
exports.splitRangePattern = splitRangePattern;
|
|
7
|
-
var tslib_1 = require("tslib");
|
|
8
|
-
var ecma402_abstract_1 = require("@formatjs/ecma402-abstract");
|
|
1
|
+
import { __assign } from "tslib";
|
|
2
|
+
import { RangePatternType, } from '@formatjs/ecma402-abstract';
|
|
9
3
|
/**
|
|
10
4
|
* https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table
|
|
11
5
|
* Credit: https://github.com/caridy/intl-datetimeformat-pattern/blob/master/index.js
|
|
@@ -169,7 +163,7 @@ function skeletonTokenToTable2(c) {
|
|
|
169
163
|
throw new RangeError('Invalid range pattern token');
|
|
170
164
|
}
|
|
171
165
|
}
|
|
172
|
-
function processDateTimePattern(pattern, result) {
|
|
166
|
+
export function processDateTimePattern(pattern, result) {
|
|
173
167
|
var literals = [];
|
|
174
168
|
// Use skeleton to populate result, but use mapped pattern to populate pattern
|
|
175
169
|
var pattern12 = pattern
|
|
@@ -204,7 +198,7 @@ function processDateTimePattern(pattern, result) {
|
|
|
204
198
|
* @public
|
|
205
199
|
* @param skeleton skeleton string
|
|
206
200
|
*/
|
|
207
|
-
function parseDateTimeSkeleton(skeleton, rawPattern, rangePatterns, intervalFormatFallback) {
|
|
201
|
+
export function parseDateTimeSkeleton(skeleton, rawPattern, rangePatterns, intervalFormatFallback) {
|
|
208
202
|
if (rawPattern === void 0) { rawPattern = skeleton; }
|
|
209
203
|
var result = {
|
|
210
204
|
pattern: '',
|
|
@@ -222,8 +216,8 @@ function parseDateTimeSkeleton(skeleton, rawPattern, rangePatterns, intervalForm
|
|
|
222
216
|
patternParts: [],
|
|
223
217
|
};
|
|
224
218
|
var _a = processDateTimePattern(rawPattern_1, intervalResult), pattern_1 = _a[0], pattern12_1 = _a[1];
|
|
225
|
-
result.rangePatterns[key] =
|
|
226
|
-
result.rangePatterns12[key] =
|
|
219
|
+
result.rangePatterns[key] = __assign(__assign({}, intervalResult), { patternParts: splitRangePattern(pattern_1) });
|
|
220
|
+
result.rangePatterns12[key] = __assign(__assign({}, intervalResult), { patternParts: splitRangePattern(pattern12_1) });
|
|
227
221
|
}
|
|
228
222
|
}
|
|
229
223
|
if (intervalFormatFallback) {
|
|
@@ -242,29 +236,29 @@ function parseDateTimeSkeleton(skeleton, rawPattern, rangePatterns, intervalForm
|
|
|
242
236
|
result.pattern12 = pattern12;
|
|
243
237
|
return result;
|
|
244
238
|
}
|
|
245
|
-
function splitFallbackRangePattern(pattern) {
|
|
239
|
+
export function splitFallbackRangePattern(pattern) {
|
|
246
240
|
var parts = pattern.split(/(\{[0|1]\})/g).filter(Boolean);
|
|
247
241
|
return parts.map(function (pattern) {
|
|
248
242
|
switch (pattern) {
|
|
249
243
|
case '{0}':
|
|
250
244
|
return {
|
|
251
|
-
source:
|
|
245
|
+
source: RangePatternType.startRange,
|
|
252
246
|
pattern: pattern,
|
|
253
247
|
};
|
|
254
248
|
case '{1}':
|
|
255
249
|
return {
|
|
256
|
-
source:
|
|
250
|
+
source: RangePatternType.endRange,
|
|
257
251
|
pattern: pattern,
|
|
258
252
|
};
|
|
259
253
|
default:
|
|
260
254
|
return {
|
|
261
|
-
source:
|
|
255
|
+
source: RangePatternType.shared,
|
|
262
256
|
pattern: pattern,
|
|
263
257
|
};
|
|
264
258
|
}
|
|
265
259
|
});
|
|
266
260
|
}
|
|
267
|
-
function splitRangePattern(pattern) {
|
|
261
|
+
export function splitRangePattern(pattern) {
|
|
268
262
|
var PART_REGEX = /\{(.*?)\}/g;
|
|
269
263
|
// Map of part and index within the string
|
|
270
264
|
var parts = {};
|
|
@@ -282,18 +276,18 @@ function splitRangePattern(pattern) {
|
|
|
282
276
|
if (!splitIndex) {
|
|
283
277
|
return [
|
|
284
278
|
{
|
|
285
|
-
source:
|
|
279
|
+
source: RangePatternType.startRange,
|
|
286
280
|
pattern: pattern,
|
|
287
281
|
},
|
|
288
282
|
];
|
|
289
283
|
}
|
|
290
284
|
return [
|
|
291
285
|
{
|
|
292
|
-
source:
|
|
286
|
+
source: RangePatternType.startRange,
|
|
293
287
|
pattern: pattern.slice(0, splitIndex),
|
|
294
288
|
},
|
|
295
289
|
{
|
|
296
|
-
source:
|
|
290
|
+
source: RangePatternType.endRange,
|
|
297
291
|
pattern: pattern.slice(splitIndex),
|
|
298
292
|
},
|
|
299
293
|
];
|
package/src/abstract/utils.js
CHANGED
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.offsetPenalty = exports.shortMorePenalty = exports.shortLessPenalty = exports.longMorePenalty = exports.longLessPenalty = exports.differentNumericTypePenalty = exports.additionPenalty = exports.removalPenalty = exports.DATE_TIME_PROPS = void 0;
|
|
4
|
-
exports.DATE_TIME_PROPS = [
|
|
1
|
+
export var DATE_TIME_PROPS = [
|
|
5
2
|
'weekday',
|
|
6
3
|
'era',
|
|
7
4
|
'year',
|
|
@@ -14,11 +11,11 @@ exports.DATE_TIME_PROPS = [
|
|
|
14
11
|
'fractionalSecondDigits',
|
|
15
12
|
'timeZoneName',
|
|
16
13
|
];
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
14
|
+
export var removalPenalty = 120;
|
|
15
|
+
export var additionPenalty = 20;
|
|
16
|
+
export var differentNumericTypePenalty = 15;
|
|
17
|
+
export var longLessPenalty = 8;
|
|
18
|
+
export var longMorePenalty = 6;
|
|
19
|
+
export var shortLessPenalty = 6;
|
|
20
|
+
export var shortMorePenalty = 3;
|
|
21
|
+
export var offsetPenalty = 1;
|
package/src/core.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DateTimeFormatLocaleInternalData, DateTimeFormat as IDateTimeFormat, UnpackedZoneData } from '@formatjs/ecma402-abstract';
|
|
2
|
-
import { PackedData, RawDateTimeLocaleData } from './types';
|
|
2
|
+
import { PackedData, RawDateTimeLocaleData } from './types.js';
|
|
3
3
|
export interface DateTimeFormatConstructor {
|
|
4
4
|
new (locales?: string | string[], options?: Intl.DateTimeFormatOptions): IDateTimeFormat;
|
|
5
5
|
(locales?: string | string[], options?: Intl.DateTimeFormatOptions): IDateTimeFormat;
|