@formatjs/intl-numberformat 4.1.0 → 4.2.3
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/CHANGELOG.md +45 -1
- package/dist/core.js +26 -14
- package/dist/core.js.map +1 -1
- package/dist/currency-digits.json +1 -0
- package/dist/ilnd-numbers.json +1 -0
- package/dist/polyfill-with-locales-for-test262.min.js +65 -44
- package/dist/polyfill-with-locales-for-test262.min.js.map +1 -1
- package/dist/umd/intl-numberformat.js +65 -44
- package/dist/umd/intl-numberformat.js.map +1 -1
- package/dist/umd/intl-numberformat.min.js +1 -1
- package/dist/umd/intl-numberformat.min.js.map +1 -1
- package/dist/umd/polyfill-with-locales.js +65 -44
- package/dist/umd/polyfill-with-locales.js.map +1 -1
- package/dist/umd/polyfill.js +65 -44
- package/dist/umd/polyfill.js.map +1 -1
- package/dist/units-constants.d.ts +2 -0
- package/dist/units-constants.d.ts.map +1 -0
- package/dist/units-constants.js +3 -0
- package/dist/units-constants.js.map +1 -0
- package/lib/core.js +26 -14
- package/lib/core.js.map +1 -1
- package/lib/currency-digits.json +1 -0
- package/lib/ilnd-numbers.json +1 -0
- package/lib/units-constants.d.ts +2 -0
- package/lib/units-constants.d.ts.map +1 -0
- package/lib/units-constants.js +1 -0
- package/lib/units-constants.js.map +1 -0
- package/package.json +12 -9
- package/src/core.ts +24 -15
- package/src/currency-digits.json +1 -0
- package/src/ilnd-numbers.json +1 -0
- package/src/units-constants.ts +4 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,50 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [4.2.3](https://github.com/formatjs/formatjs/compare/@formatjs/intl-numberformat@4.2.2...@formatjs/intl-numberformat@4.2.3) (2020-06-04)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @formatjs/intl-numberformat
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [4.2.2](https://github.com/formatjs/formatjs/compare/@formatjs/intl-numberformat@4.2.1...@formatjs/intl-numberformat@4.2.2) (2020-06-03)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* **@formatjs/intl-utils:** fix toRawPrecision (round up) and toRawFixed (with huge numbers) ([#1696](https://github.com/formatjs/formatjs/issues/1696)) ([df68427](https://github.com/formatjs/formatjs/commit/df68427c06cd815231ff19b9d5cc493e6df444e2)), closes [#1692](https://github.com/formatjs/formatjs/issues/1692)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
## [4.2.1](https://github.com/formatjs/formatjs/compare/@formatjs/intl-numberformat@4.2.0...@formatjs/intl-numberformat@4.2.1) (2020-05-28)
|
|
26
|
+
|
|
27
|
+
**Note:** Version bump only for package @formatjs/intl-numberformat
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
# [4.2.0](https://github.com/formatjs/formatjs/compare/@formatjs/intl-numberformat@4.1.0...@formatjs/intl-numberformat@4.2.0) (2020-05-27)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
### Bug Fixes
|
|
37
|
+
|
|
38
|
+
* **@formatjs/intl-numberformat:** fix defineProperty issue in older browsers, fix karma tests ([c3365e2](https://github.com/formatjs/formatjs/commit/c3365e297ab160bd8fba417252bbff9f7ad464cf))
|
|
39
|
+
* **website:** editorial fixes of Intl.NumberFormat links ([#1690](https://github.com/formatjs/formatjs/issues/1690)) ([1b4a248](https://github.com/formatjs/formatjs/commit/1b4a2482ea85c4f9d3754d46c8aadd67a0b17d93))
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
### Features
|
|
43
|
+
|
|
44
|
+
* **formatjs-extract-cldr-data:** rm this package ([62bdd32](https://github.com/formatjs/formatjs/commit/62bdd32aadef899228a5303e01865f69fd729fa3))
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
6
50
|
# [4.1.0](https://github.com/formatjs/formatjs/compare/@formatjs/intl-numberformat@4.0.1...@formatjs/intl-numberformat@4.1.0) (2020-05-25)
|
|
7
51
|
|
|
8
52
|
|
|
@@ -30,7 +74,7 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
|
|
|
30
74
|
* **@formatjs/intl-numberformat:** Use native Intl.getCanonicalLocales ([54cea38](https://github.com/formatjs/formatjs/commit/54cea38396bdfbbc24b1fa12996a5347f44a61f7))
|
|
31
75
|
|
|
32
76
|
This is a rewrite of Intl.NumberFormat polyfill:
|
|
33
|
-
- Feature compatible with
|
|
77
|
+
- Feature compatible with ES2020 spec.
|
|
34
78
|
- Pass most of Intl.NumberFormat test262 cases.
|
|
35
79
|
- New version is 3 to 4 times faster in the benchmark of instantiating NumberFormat object + formatting numbers in currency or unit styles. It is almost 2 times faster in the benchmark variant that reuses the NumberFormat object.
|
|
36
80
|
- Slightly reduce locale data JSON size.
|
package/dist/core.js
CHANGED
|
@@ -232,25 +232,37 @@ var formatDescriptor = {
|
|
|
232
232
|
.map(function (x) { return x.value; })
|
|
233
233
|
.join('');
|
|
234
234
|
};
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
235
|
+
try {
|
|
236
|
+
// https://github.com/tc39/test262/blob/master/test/intl402/NumberFormat/prototype/format/format-function-name.js
|
|
237
|
+
Object.defineProperty(boundFormat, 'name', {
|
|
238
|
+
configurable: true,
|
|
239
|
+
enumerable: false,
|
|
240
|
+
writable: false,
|
|
241
|
+
value: '',
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
catch (e) {
|
|
245
|
+
// In older browser (e.g Chrome 36 like polyfill.io)
|
|
246
|
+
// TypeError: Cannot redefine property: name
|
|
247
|
+
}
|
|
242
248
|
internalSlots.boundFormat = boundFormat;
|
|
243
249
|
}
|
|
244
250
|
return boundFormat;
|
|
245
251
|
},
|
|
246
252
|
};
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
253
|
+
try {
|
|
254
|
+
// https://github.com/tc39/test262/blob/master/test/intl402/NumberFormat/prototype/format/name.js
|
|
255
|
+
Object.defineProperty(formatDescriptor.get, 'name', {
|
|
256
|
+
configurable: true,
|
|
257
|
+
enumerable: false,
|
|
258
|
+
writable: false,
|
|
259
|
+
value: 'get format',
|
|
260
|
+
});
|
|
261
|
+
}
|
|
262
|
+
catch (e) {
|
|
263
|
+
// In older browser (e.g Chrome 36 like polyfill.io)
|
|
264
|
+
// TypeError: Cannot redefine property: name
|
|
265
|
+
}
|
|
254
266
|
Object.defineProperty(exports.NumberFormat.prototype, 'format', formatDescriptor);
|
|
255
267
|
// Static properties
|
|
256
268
|
intl_utils_1.defineProperty(exports.NumberFormat, 'supportedLocalesOf', {
|
package/dist/core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "ADP": 0, "AFN": 0, "ALL": 0, "AMD": 2, "BHD": 3, "BIF": 0, "BYN": 2, "BYR": 0, "CAD": 2, "CHF": 2, "CLF": 4, "CLP": 0, "COP": 2, "CRC": 2, "CZK": 2, "DEFAULT": 2, "DJF": 0, "DKK": 2, "ESP": 0, "GNF": 0, "GYD": 2, "HUF": 2, "IDR": 2, "IQD": 0, "IRR": 0, "ISK": 0, "ITL": 0, "JOD": 3, "JPY": 0, "KMF": 0, "KPW": 0, "KRW": 0, "KWD": 3, "LAK": 0, "LBP": 0, "LUF": 0, "LYD": 3, "MGA": 0, "MGF": 0, "MMK": 0, "MNT": 2, "MRO": 0, "MUR": 2, "NOK": 2, "OMR": 3, "PKR": 2, "PYG": 0, "RSD": 0, "RWF": 0, "SEK": 2, "SLL": 0, "SOS": 0, "STD": 0, "SYP": 0, "TMM": 0, "TND": 3, "TRL": 0, "TWD": 2, "TZS": 2, "UGX": 0, "UYI": 0, "UYW": 4, "UZS": 2, "VEF": 2, "VND": 0, "VUV": 0, "XAF": 0, "XOF": 0, "XPF": 0, "YER": 0, "ZMK": 0, "ZWD": 0 }
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "arab": ["٠", "١", "٢", "٣", "٤", "٥", "٦", "٧", "٨", "٩"], "arabext": ["۰", "۱", "۲", "۳", "۴", "۵", "۶", "۷", "۸", "۹"], "bali": ["᭐", "᭑", "᭒", "᭓", "᭔", "᭕", "᭖", "᭗", "᭘", "᭙"], "beng": ["০", "১", "২", "৩", "৪", "৫", "৬", "৭", "৮", "৯"], "deva": ["०", "१", "२", "३", "४", "५", "६", "७", "८", "९"], "fullwide": ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"], "gujr": ["૦", "૧", "૨", "૩", "૪", "૫", "૬", "૭", "૮", "૯"], "guru": ["੦", "੧", "੨", "੩", "੪", "੫", "੬", "੭", "੮", "੯"], "khmr": ["០", "១", "២", "៣", "៤", "៥", "៦", "៧", "៨", "៩"], "knda": ["೦", "೧", "೨", "೩", "೪", "೫", "೬", "೭", "೮", "೯"], "laoo": ["໐", "໑", "໒", "໓", "໔", "໕", "໖", "໗", "໘", "໙"], "latn": ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"], "limb": ["᥆", "᥇", "᥈", "᥉", "᥊", "᥋", "᥌", "᥍", "᥎", "᥏"], "mlym": ["൦", "൧", "൨", "൩", "൪", "൫", "൬", "൭", "൮", "൯"], "mong": ["᠐", "᠑", "᠒", "᠓", "᠔", "᠕", "᠖", "᠗", "᠘", "᠙"], "mymr": ["၀", "၁", "၂", "၃", "၄", "၅", "၆", "၇", "၈", "၉"], "orya": ["୦", "୧", "୨", "୩", "୪", "୫", "୬", "୭", "୮", "୯"], "tamldec": ["௦", "௧", "௨", "௩", "௪", "௫", "௬", "௭", "௮", "௯"], "telu": ["౦", "౧", "౨", "౩", "౪", "౫", "౬", "౭", "౮", "౯"], "thai": ["๐", "๑", "๒", "๓", "๔", "๕", "๖", "๗", "๘", "๙"], "tibt": ["༠", "༡", "༢", "༣", "༤", "༥", "༦", "༧", "༨", "༩"], "hanidec": ["〇", "一", "二", "三", "四", "五", "六", "七", "八", "九"] }
|
|
@@ -251,13 +251,7 @@
|
|
|
251
251
|
*/
|
|
252
252
|
function toRawFixed(x, minFraction, maxFraction) {
|
|
253
253
|
const f = maxFraction;
|
|
254
|
-
|
|
255
|
-
{
|
|
256
|
-
const exactSolve = x * Math.pow(10, f);
|
|
257
|
-
const roundDown = Math.floor(exactSolve);
|
|
258
|
-
const roundUp = Math.ceil(exactSolve);
|
|
259
|
-
n = exactSolve - roundDown < roundUp - exactSolve ? roundDown : roundUp;
|
|
260
|
-
}
|
|
254
|
+
const n = Math.round(x * Math.pow(10, f));
|
|
261
255
|
const xFinal = n / Math.pow(10, f);
|
|
262
256
|
// n is a positive integer, but it is possible to be greater than 1e21.
|
|
263
257
|
// In such case we will go the slow path.
|
|
@@ -268,13 +262,9 @@
|
|
|
268
262
|
}
|
|
269
263
|
else {
|
|
270
264
|
m = n.toString();
|
|
271
|
-
const
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
m =
|
|
275
|
-
m.substring(0, idx1) +
|
|
276
|
-
m.substring(idx1 + 1, idx2) +
|
|
277
|
-
repeat('0', exponent - (idx2 - idx1 - 1));
|
|
265
|
+
const [mantissa, exponent] = m.split('e');
|
|
266
|
+
m = mantissa.replace('.', '');
|
|
267
|
+
m = m + repeat('0', Math.max(+exponent - m.length + 1, 0));
|
|
278
268
|
}
|
|
279
269
|
let int;
|
|
280
270
|
if (f !== 0) {
|
|
@@ -314,23 +304,38 @@
|
|
|
314
304
|
xFinal = 0;
|
|
315
305
|
}
|
|
316
306
|
else {
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
307
|
+
const xToString = x.toString();
|
|
308
|
+
// If xToString is formatted as scientific notation, the number is either very small or very
|
|
309
|
+
// large. If the precision of the formatted string is lower that requested max precision, we
|
|
310
|
+
// should still infer them from the formatted string, otherwise the formatted result might have
|
|
311
|
+
// precision loss (e.g. 1e41 will not have 0 in every trailing digits).
|
|
312
|
+
const xToStringExponentIndex = xToString.indexOf('e');
|
|
313
|
+
const [xToStringMantissa, xToStringExponent] = xToString.split('e');
|
|
314
|
+
const xToStringMantissaWithoutDecimalPoint = xToStringMantissa.replace('.', '');
|
|
315
|
+
if (xToStringExponentIndex >= 0 &&
|
|
316
|
+
xToStringMantissaWithoutDecimalPoint.length <= p) {
|
|
317
|
+
e = +xToStringExponent;
|
|
318
|
+
m =
|
|
319
|
+
xToStringMantissaWithoutDecimalPoint +
|
|
320
|
+
repeat('0', p - xToStringMantissaWithoutDecimalPoint.length);
|
|
321
|
+
xFinal = x;
|
|
322
|
+
}
|
|
323
|
+
else {
|
|
324
|
+
e = getMagnitude(x);
|
|
325
|
+
const decimalPlaceOffset = e - p + 1;
|
|
326
|
+
// n is the integer containing the required precision digits. To derive the formatted string,
|
|
327
|
+
// we will adjust its decimal place in the logic below.
|
|
328
|
+
let n = Math.round(adjustDecimalPlace(x, decimalPlaceOffset));
|
|
329
|
+
// The rounding caused the change of magnitude, so we should increment `e` by 1.
|
|
330
|
+
if (adjustDecimalPlace(n, p - 1) >= 10) {
|
|
331
|
+
e = e + 1;
|
|
332
|
+
// Divide n by 10 to swallow one precision.
|
|
333
|
+
n = Math.floor(n / 10);
|
|
334
|
+
}
|
|
335
|
+
m = n.toString();
|
|
336
|
+
// Equivalent of n * 10 ** (e - p + 1)
|
|
337
|
+
xFinal = adjustDecimalPlace(n, p - 1 - e);
|
|
327
338
|
}
|
|
328
|
-
// See: https://tc39.es/ecma262/#sec-numeric-types-number-tostring
|
|
329
|
-
// No need to worry about scientific notation because it only happens for values >= 1e21,
|
|
330
|
-
// which has 22 significant digits. So it will at least be divided by 10 here to bring the
|
|
331
|
-
// value back into non-scientific-notation range.
|
|
332
|
-
m = n.toString();
|
|
333
|
-
xFinal = n * Math.pow(10, (e - p + 1));
|
|
334
339
|
}
|
|
335
340
|
let int;
|
|
336
341
|
if (e >= p - 1) {
|
|
@@ -356,6 +361,10 @@
|
|
|
356
361
|
}
|
|
357
362
|
}
|
|
358
363
|
return { formattedString: m, roundedNumber: xFinal, integerDigitsCount: int };
|
|
364
|
+
// x / (10 ** magnitude), but try to preserve as much floating point precision as possible.
|
|
365
|
+
function adjustDecimalPlace(x, magnitude) {
|
|
366
|
+
return magnitude < 0 ? x * Math.pow(10, -magnitude) : x / Math.pow(10, magnitude);
|
|
367
|
+
}
|
|
359
368
|
}
|
|
360
369
|
function repeat(s, times) {
|
|
361
370
|
if (typeof s.repeat === 'function') {
|
|
@@ -1877,25 +1886,37 @@
|
|
|
1877
1886
|
.map(x => x.value)
|
|
1878
1887
|
.join('');
|
|
1879
1888
|
};
|
|
1880
|
-
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1889
|
+
try {
|
|
1890
|
+
// https://github.com/tc39/test262/blob/master/test/intl402/NumberFormat/prototype/format/format-function-name.js
|
|
1891
|
+
Object.defineProperty(boundFormat, 'name', {
|
|
1892
|
+
configurable: true,
|
|
1893
|
+
enumerable: false,
|
|
1894
|
+
writable: false,
|
|
1895
|
+
value: '',
|
|
1896
|
+
});
|
|
1897
|
+
}
|
|
1898
|
+
catch (e) {
|
|
1899
|
+
// In older browser (e.g Chrome 36 like polyfill.io)
|
|
1900
|
+
// TypeError: Cannot redefine property: name
|
|
1901
|
+
}
|
|
1887
1902
|
internalSlots.boundFormat = boundFormat;
|
|
1888
1903
|
}
|
|
1889
1904
|
return boundFormat;
|
|
1890
1905
|
},
|
|
1891
1906
|
};
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
|
|
1907
|
+
try {
|
|
1908
|
+
// https://github.com/tc39/test262/blob/master/test/intl402/NumberFormat/prototype/format/name.js
|
|
1909
|
+
Object.defineProperty(formatDescriptor.get, 'name', {
|
|
1910
|
+
configurable: true,
|
|
1911
|
+
enumerable: false,
|
|
1912
|
+
writable: false,
|
|
1913
|
+
value: 'get format',
|
|
1914
|
+
});
|
|
1915
|
+
}
|
|
1916
|
+
catch (e) {
|
|
1917
|
+
// In older browser (e.g Chrome 36 like polyfill.io)
|
|
1918
|
+
// TypeError: Cannot redefine property: name
|
|
1919
|
+
}
|
|
1899
1920
|
Object.defineProperty(NumberFormat.prototype, 'format', formatDescriptor);
|
|
1900
1921
|
// Static properties
|
|
1901
1922
|
defineProperty(NumberFormat, 'supportedLocalesOf', {
|