@formatjs/ecma402-abstract 1.9.2 → 1.9.6
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/IsValidTimeZoneName.d.ts +1 -1
- package/IsValidTimeZoneName.d.ts.map +1 -1
- package/IsValidTimeZoneName.js +6 -1
- package/NumberFormat/InitializeNumberFormat.d.ts +2 -2
- package/NumberFormat/InitializeNumberFormat.d.ts.map +1 -1
- package/NumberFormat/InitializeNumberFormat.js +2 -2
- package/NumberFormat/digit-mapping.generated.d.ts +2 -0
- package/NumberFormat/digit-mapping.generated.d.ts.map +1 -0
- package/NumberFormat/digit-mapping.generated.js +4 -0
- package/NumberFormat/format_to_parts.js +2 -3
- package/SupportedLocales.js +3 -3
- package/index.d.ts +0 -1
- package/index.d.ts.map +1 -1
- package/index.js +0 -1
- package/lib/IsValidTimeZoneName.d.ts +1 -1
- package/lib/IsValidTimeZoneName.d.ts.map +1 -1
- package/lib/IsValidTimeZoneName.js +6 -1
- package/lib/NumberFormat/InitializeNumberFormat.d.ts +2 -2
- package/lib/NumberFormat/InitializeNumberFormat.d.ts.map +1 -1
- package/lib/NumberFormat/InitializeNumberFormat.js +1 -1
- package/lib/NumberFormat/digit-mapping.generated.d.ts +2 -0
- package/lib/NumberFormat/digit-mapping.generated.d.ts.map +1 -0
- package/lib/NumberFormat/digit-mapping.generated.js +1 -0
- package/lib/NumberFormat/format_to_parts.js +1 -1
- package/lib/SupportedLocales.js +1 -1
- package/lib/index.d.ts +0 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +0 -1
- package/package.json +2 -1
- package/BestAvailableLocale.d.ts +0 -7
- package/BestAvailableLocale.d.ts.map +0 -1
- package/BestAvailableLocale.js +0 -25
- package/BestFitMatcher.d.ts +0 -9
- package/BestFitMatcher.d.ts.map +0 -1
- package/BestFitMatcher.js +0 -52
- package/LookupMatcher.d.ts +0 -9
- package/LookupMatcher.d.ts.map +0 -1
- package/LookupMatcher.js +0 -29
- package/LookupSupportedLocales.d.ts +0 -7
- package/LookupSupportedLocales.d.ts.map +0 -1
- package/LookupSupportedLocales.js +0 -23
- package/NumberFormat/digit-mapping.json +0 -1
- package/ResolveLocale.d.ts +0 -15
- package/ResolveLocale.d.ts.map +0 -1
- package/ResolveLocale.js +0 -78
- package/UnicodeExtensionValue.d.ts +0 -7
- package/UnicodeExtensionValue.d.ts.map +0 -1
- package/UnicodeExtensionValue.js +0 -50
- package/lib/BestAvailableLocale.d.ts +0 -7
- package/lib/BestAvailableLocale.d.ts.map +0 -1
- package/lib/BestAvailableLocale.js +0 -21
- package/lib/BestFitMatcher.d.ts +0 -9
- package/lib/BestFitMatcher.d.ts.map +0 -1
- package/lib/BestFitMatcher.js +0 -48
- package/lib/LookupMatcher.d.ts +0 -9
- package/lib/LookupMatcher.d.ts.map +0 -1
- package/lib/LookupMatcher.js +0 -25
- package/lib/LookupSupportedLocales.d.ts +0 -7
- package/lib/LookupSupportedLocales.d.ts.map +0 -1
- package/lib/LookupSupportedLocales.js +0 -19
- package/lib/NumberFormat/digit-mapping.json +0 -1
- package/lib/ResolveLocale.d.ts +0 -15
- package/lib/ResolveLocale.d.ts.map +0 -1
- package/lib/ResolveLocale.js +0 -74
- package/lib/UnicodeExtensionValue.d.ts +0 -7
- package/lib/UnicodeExtensionValue.d.ts.map +0 -1
- package/lib/UnicodeExtensionValue.js +0 -46
package/IsValidTimeZoneName.d.ts
CHANGED
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
*/
|
|
6
6
|
export declare function IsValidTimeZoneName(tz: string, { tzData, uppercaseLinks, }: {
|
|
7
7
|
tzData: Record<string, unknown>;
|
|
8
|
-
uppercaseLinks: Record<string,
|
|
8
|
+
uppercaseLinks: Record<string, string>;
|
|
9
9
|
}): boolean;
|
|
10
10
|
//# sourceMappingURL=IsValidTimeZoneName.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IsValidTimeZoneName.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/IsValidTimeZoneName.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,EACV,EACE,MAAM,EACN,cAAc,GACf,EAAE;IACD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"IsValidTimeZoneName.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/IsValidTimeZoneName.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,EACV,EACE,MAAM,EACN,cAAc,GACf,EAAE;IACD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACvC,GACA,OAAO,CAYT"}
|
package/IsValidTimeZoneName.js
CHANGED
|
@@ -10,9 +10,14 @@ function IsValidTimeZoneName(tz, _a) {
|
|
|
10
10
|
var tzData = _a.tzData, uppercaseLinks = _a.uppercaseLinks;
|
|
11
11
|
var uppercasedTz = tz.toUpperCase();
|
|
12
12
|
var zoneNames = new Set();
|
|
13
|
+
var linkNames = new Set();
|
|
13
14
|
Object.keys(tzData)
|
|
14
15
|
.map(function (z) { return z.toUpperCase(); })
|
|
15
16
|
.forEach(function (z) { return zoneNames.add(z); });
|
|
16
|
-
|
|
17
|
+
Object.keys(uppercaseLinks).forEach(function (linkName) {
|
|
18
|
+
linkNames.add(linkName.toUpperCase());
|
|
19
|
+
zoneNames.add(uppercaseLinks[linkName].toUpperCase());
|
|
20
|
+
});
|
|
21
|
+
return zoneNames.has(uppercasedTz) || linkNames.has(uppercasedTz);
|
|
17
22
|
}
|
|
18
23
|
exports.IsValidTimeZoneName = IsValidTimeZoneName;
|
|
@@ -2,11 +2,11 @@ import { NumberFormatInternal, NumberFormatOptions, NumberFormatLocaleInternalDa
|
|
|
2
2
|
/**
|
|
3
3
|
* https://tc39.es/ecma402/#sec-initializenumberformat
|
|
4
4
|
*/
|
|
5
|
-
export declare function InitializeNumberFormat(nf: Intl.NumberFormat, locales: string | string
|
|
5
|
+
export declare function InitializeNumberFormat(nf: Intl.NumberFormat, locales: string | ReadonlyArray<string> | undefined, opts: NumberFormatOptions | undefined, { getInternalSlots, localeData, availableLocales, numberingSystemNames, getDefaultLocale, currencyDigitsData, }: {
|
|
6
6
|
getInternalSlots(nf: Intl.NumberFormat): NumberFormatInternal;
|
|
7
7
|
localeData: Record<string, NumberFormatLocaleInternalData | undefined>;
|
|
8
8
|
availableLocales: Set<string>;
|
|
9
|
-
numberingSystemNames: string
|
|
9
|
+
numberingSystemNames: ReadonlyArray<string>;
|
|
10
10
|
getDefaultLocale(): string;
|
|
11
11
|
currencyDigitsData: Record<string, number>;
|
|
12
12
|
}): Intl.NumberFormat;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InitializeNumberFormat.d.ts","sourceRoot":"","sources":["../../../../../../packages/ecma402-abstract/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,MAAM,
|
|
1
|
+
{"version":3,"file":"InitializeNumberFormat.d.ts","sourceRoot":"","sources":["../../../../../../packages/ecma402-abstract/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"}
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.InitializeNumberFormat = void 0;
|
|
4
4
|
var CanonicalizeLocaleList_1 = require("../CanonicalizeLocaleList");
|
|
5
5
|
var GetOption_1 = require("../GetOption");
|
|
6
|
-
var
|
|
6
|
+
var intl_localematcher_1 = require("@formatjs/intl-localematcher");
|
|
7
7
|
var SetNumberFormatUnitOptions_1 = require("./SetNumberFormatUnitOptions");
|
|
8
8
|
var CurrencyDigits_1 = require("./CurrencyDigits");
|
|
9
9
|
var SetNumberFormatDigitOptions_1 = require("./SetNumberFormatDigitOptions");
|
|
@@ -28,7 +28,7 @@ function InitializeNumberFormat(nf, locales, opts, _a) {
|
|
|
28
28
|
throw RangeError("Invalid numberingSystems: " + numberingSystem);
|
|
29
29
|
}
|
|
30
30
|
opt.nu = numberingSystem;
|
|
31
|
-
var r =
|
|
31
|
+
var r = intl_localematcher_1.ResolveLocale(availableLocales, requestedLocales, opt,
|
|
32
32
|
// [[RelevantExtensionKeys]] slot, which is a constant
|
|
33
33
|
['nu'], localeData, getDefaultLocale);
|
|
34
34
|
var dataLocaleData = localeData[r.dataLocale];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"digit-mapping.generated.d.ts","sourceRoot":"","sources":["../../../../../../packages/ecma402-abstract/NumberFormat/digit-mapping.generated.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAA67G,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.digitMapping = void 0;
|
|
4
|
+
exports.digitMapping = { "adlm": ["𞥐", "𞥑", "𞥒", "𞥓", "𞥔", "𞥕", "𞥖", "𞥗", "𞥘", "𞥙"], "ahom": ["𑜰", "𑜱", "𑜲", "𑜳", "𑜴", "𑜵", "𑜶", "𑜷", "𑜸", "𑜹"], "arab": ["٠", "١", "٢", "٣", "٤", "٥", "٦", "٧", "٨", "٩"], "arabext": ["۰", "۱", "۲", "۳", "۴", "۵", "۶", "۷", "۸", "۹"], "bali": ["᭐", "᭑", "᭒", "᭓", "᭔", "᭕", "᭖", "᭗", "᭘", "᭙"], "beng": ["০", "১", "২", "৩", "৪", "৫", "৬", "৭", "৮", "৯"], "bhks": ["𑱐", "𑱑", "𑱒", "𑱓", "𑱔", "𑱕", "𑱖", "𑱗", "𑱘", "𑱙"], "brah": ["𑁦", "𑁧", "𑁨", "𑁩", "𑁪", "𑁫", "𑁬", "𑁭", "𑁮", "𑁯"], "cakm": ["𑄶", "𑄷", "𑄸", "𑄹", "𑄺", "𑄻", "𑄼", "𑄽", "𑄾", "𑄿"], "cham": ["꩐", "꩑", "꩒", "꩓", "꩔", "꩕", "꩖", "꩗", "꩘", "꩙"], "deva": ["०", "१", "२", "३", "४", "५", "६", "७", "८", "९"], "diak": ["𑥐", "𑥑", "𑥒", "𑥓", "𑥔", "𑥕", "𑥖", "𑥗", "𑥘", "𑥙"], "fullwide": ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"], "gong": ["𑶠", "𑶡", "𑶢", "𑶣", "𑶤", "𑶥", "𑶦", "𑶧", "𑶨", "𑶩"], "gonm": ["𑵐", "𑵑", "𑵒", "𑵓", "𑵔", "𑵕", "𑵖", "𑵗", "𑵘", "𑵙"], "gujr": ["૦", "૧", "૨", "૩", "૪", "૫", "૬", "૭", "૮", "૯"], "guru": ["੦", "੧", "੨", "੩", "੪", "੫", "੬", "੭", "੮", "੯"], "hanidec": ["〇", "一", "二", "三", "四", "五", "六", "七", "八", "九"], "hmng": ["𖭐", "𖭑", "𖭒", "𖭓", "𖭔", "𖭕", "𖭖", "𖭗", "𖭘", "𖭙"], "hmnp": ["𞅀", "𞅁", "𞅂", "𞅃", "𞅄", "𞅅", "𞅆", "𞅇", "𞅈", "𞅉"], "java": ["꧐", "꧑", "꧒", "꧓", "꧔", "꧕", "꧖", "꧗", "꧘", "꧙"], "kali": ["꤀", "꤁", "꤂", "꤃", "꤄", "꤅", "꤆", "꤇", "꤈", "꤉"], "khmr": ["០", "១", "២", "៣", "៤", "៥", "៦", "៧", "៨", "៩"], "knda": ["೦", "೧", "೨", "೩", "೪", "೫", "೬", "೭", "೮", "೯"], "lana": ["᪀", "᪁", "᪂", "᪃", "᪄", "᪅", "᪆", "᪇", "᪈", "᪉"], "lanatham": ["᪐", "᪑", "᪒", "᪓", "᪔", "᪕", "᪖", "᪗", "᪘", "᪙"], "laoo": ["໐", "໑", "໒", "໓", "໔", "໕", "໖", "໗", "໘", "໙"], "lepc": ["᪐", "᪑", "᪒", "᪓", "᪔", "᪕", "᪖", "᪗", "᪘", "᪙"], "limb": ["᥆", "᥇", "᥈", "᥉", "᥊", "᥋", "᥌", "᥍", "᥎", "᥏"], "mathbold": ["𝟎", "𝟏", "𝟐", "𝟑", "𝟒", "𝟓", "𝟔", "𝟕", "𝟖", "𝟗"], "mathdbl": ["𝟘", "𝟙", "𝟚", "𝟛", "𝟜", "𝟝", "𝟞", "𝟟", "𝟠", "𝟡"], "mathmono": ["𝟶", "𝟷", "𝟸", "𝟹", "𝟺", "𝟻", "𝟼", "𝟽", "𝟾", "𝟿"], "mathsanb": ["𝟬", "𝟭", "𝟮", "𝟯", "𝟰", "𝟱", "𝟲", "𝟳", "𝟴", "𝟵"], "mathsans": ["𝟢", "𝟣", "𝟤", "𝟥", "𝟦", "𝟧", "𝟨", "𝟩", "𝟪", "𝟫"], "mlym": ["൦", "൧", "൨", "൩", "൪", "൫", "൬", "൭", "൮", "൯"], "modi": ["𑙐", "𑙑", "𑙒", "𑙓", "𑙔", "𑙕", "𑙖", "𑙗", "𑙘", "𑙙"], "mong": ["᠐", "᠑", "᠒", "᠓", "᠔", "᠕", "᠖", "᠗", "᠘", "᠙"], "mroo": ["𖩠", "𖩡", "𖩢", "𖩣", "𖩤", "𖩥", "𖩦", "𖩧", "𖩨", "𖩩"], "mtei": ["꯰", "꯱", "꯲", "꯳", "꯴", "꯵", "꯶", "꯷", "꯸", "꯹"], "mymr": ["၀", "၁", "၂", "၃", "၄", "၅", "၆", "၇", "၈", "၉"], "mymrshan": ["႐", "႑", "႒", "႓", "႔", "႕", "႖", "႗", "႘", "႙"], "mymrtlng": ["꧰", "꧱", "꧲", "꧳", "꧴", "꧵", "꧶", "꧷", "꧸", "꧹"], "newa": ["𑑐", "𑑑", "𑑒", "𑑓", "𑑔", "𑑕", "𑑖", "𑑗", "𑑘", "𑑙"], "nkoo": ["߀", "߁", "߂", "߃", "߄", "߅", "߆", "߇", "߈", "߉"], "olck": ["᱐", "᱑", "᱒", "᱓", "᱔", "᱕", "᱖", "᱗", "᱘", "᱙"], "orya": ["୦", "୧", "୨", "୩", "୪", "୫", "୬", "୭", "୮", "୯"], "osma": ["𐒠", "𐒡", "𐒢", "𐒣", "𐒤", "𐒥", "𐒦", "𐒧", "𐒨", "𐒩"], "rohg": ["𐴰", "𐴱", "𐴲", "𐴳", "𐴴", "𐴵", "𐴶", "𐴷", "𐴸", "𐴹"], "saur": ["꣐", "꣑", "꣒", "꣓", "꣔", "꣕", "꣖", "꣗", "꣘", "꣙"], "segment": ["🯰", "🯱", "🯲", "🯳", "🯴", "🯵", "🯶", "🯷", "🯸", "🯹"], "shrd": ["𑇐", "𑇑", "𑇒", "𑇓", "𑇔", "𑇕", "𑇖", "𑇗", "𑇘", "𑇙"], "sind": ["𑋰", "𑋱", "𑋲", "𑋳", "𑋴", "𑋵", "𑋶", "𑋷", "𑋸", "𑋹"], "sinh": ["෦", "෧", "෨", "෩", "෪", "෫", "෬", "෭", "෮", "෯"], "sora": ["𑃰", "𑃱", "𑃲", "𑃳", "𑃴", "𑃵", "𑃶", "𑃷", "𑃸", "𑃹"], "sund": ["᮰", "᮱", "᮲", "᮳", "᮴", "᮵", "᮶", "᮷", "᮸", "᮹"], "takr": ["𑛀", "𑛁", "𑛂", "𑛃", "𑛄", "𑛅", "𑛆", "𑛇", "𑛈", "𑛉"], "talu": ["᧐", "᧑", "᧒", "᧓", "᧔", "᧕", "᧖", "᧗", "᧘", "᧙"], "tamldec": ["௦", "௧", "௨", "௩", "௪", "௫", "௬", "௭", "௮", "௯"], "telu": ["౦", "౧", "౨", "౩", "౪", "౫", "౬", "౭", "౮", "౯"], "thai": ["๐", "๑", "๒", "๓", "๔", "๕", "๖", "๗", "๘", "๙"], "tibt": ["༠", "༡", "༢", "༣", "༤", "༥", "༦", "༧", "༨", "༩"], "tirh": ["𑓐", "𑓑", "𑓒", "𑓓", "𑓔", "𑓕", "𑓖", "𑓗", "𑓘", "𑓙"], "vaii": ["ᘠ", "ᘡ", "ᘢ", "ᘣ", "ᘤ", "ᘥ", "ᘦ", "ᘧ", "ᘨ", "ᘩ"], "wara": ["𑣠", "𑣡", "𑣢", "𑣣", "𑣤", "𑣥", "𑣦", "𑣧", "𑣨", "𑣩"], "wcho": ["𞋰", "𞋱", "𞋲", "𞋳", "𞋴", "𞋵", "𞋶", "𞋷", "𞋸", "𞋹"] };
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var tslib_1 = require("tslib");
|
|
4
3
|
var ToRawFixed_1 = require("./ToRawFixed");
|
|
5
|
-
var
|
|
4
|
+
var digit_mapping_generated_1 = require("./digit-mapping.generated");
|
|
6
5
|
var regex_generated_1 = require("../regex.generated");
|
|
7
6
|
// This is from: unicode-12.1.0/General_Category/Symbol/regex.js
|
|
8
7
|
// IE11 does not support unicode flag, otherwise this is just /\p{S}/u.
|
|
@@ -273,7 +272,7 @@ decimalNumberPattern) {
|
|
|
273
272
|
else if (!isFinite(x)) {
|
|
274
273
|
return [{ type: 'infinity', value: n }];
|
|
275
274
|
}
|
|
276
|
-
var digitReplacementTable = digitMapping[numberingSystem];
|
|
275
|
+
var digitReplacementTable = digit_mapping_generated_1.digitMapping[numberingSystem];
|
|
277
276
|
if (digitReplacementTable) {
|
|
278
277
|
n = n.replace(/\d/g, function (digit) { return digitReplacementTable[+digit] || digit; });
|
|
279
278
|
}
|
package/SupportedLocales.js
CHANGED
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.SupportedLocales = void 0;
|
|
4
4
|
var _262_1 = require("./262");
|
|
5
5
|
var GetOption_1 = require("./GetOption");
|
|
6
|
-
var
|
|
6
|
+
var intl_localematcher_1 = require("@formatjs/intl-localematcher");
|
|
7
7
|
/**
|
|
8
8
|
* https://tc39.es/ecma402/#sec-supportedlocales
|
|
9
9
|
* @param availableLocales
|
|
@@ -17,8 +17,8 @@ function SupportedLocales(availableLocales, requestedLocales, options) {
|
|
|
17
17
|
matcher = GetOption_1.GetOption(options, 'localeMatcher', 'string', ['lookup', 'best fit'], 'best fit');
|
|
18
18
|
}
|
|
19
19
|
if (matcher === 'best fit') {
|
|
20
|
-
return
|
|
20
|
+
return intl_localematcher_1.LookupSupportedLocales(availableLocales, requestedLocales);
|
|
21
21
|
}
|
|
22
|
-
return
|
|
22
|
+
return intl_localematcher_1.LookupSupportedLocales(availableLocales, requestedLocales);
|
|
23
23
|
}
|
|
24
24
|
exports.SupportedLocales = SupportedLocales;
|
package/index.d.ts
CHANGED
|
@@ -21,7 +21,6 @@ export * from './NumberFormat/ToRawFixed';
|
|
|
21
21
|
export * from './NumberFormat/ToRawPrecision';
|
|
22
22
|
export { default as _formatToParts } from './NumberFormat/format_to_parts';
|
|
23
23
|
export * from './PartitionPattern';
|
|
24
|
-
export * from './ResolveLocale';
|
|
25
24
|
export * from './SupportedLocales';
|
|
26
25
|
export { getInternalSlot, getMultiInternalSlots, isLiteralPart, setInternalSlot, setMultiInternalSlots, getMagnitude, defineProperty, } from './utils';
|
|
27
26
|
export type { LiteralPart } from './utils';
|
package/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/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,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/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"}
|
package/index.js
CHANGED
|
@@ -26,7 +26,6 @@ tslib_1.__exportStar(require("./NumberFormat/ToRawPrecision"), exports);
|
|
|
26
26
|
var format_to_parts_1 = require("./NumberFormat/format_to_parts");
|
|
27
27
|
Object.defineProperty(exports, "_formatToParts", { enumerable: true, get: function () { return tslib_1.__importDefault(format_to_parts_1).default; } });
|
|
28
28
|
tslib_1.__exportStar(require("./PartitionPattern"), exports);
|
|
29
|
-
tslib_1.__exportStar(require("./ResolveLocale"), exports);
|
|
30
29
|
tslib_1.__exportStar(require("./SupportedLocales"), exports);
|
|
31
30
|
var utils_1 = require("./utils");
|
|
32
31
|
Object.defineProperty(exports, "getInternalSlot", { enumerable: true, get: function () { return utils_1.getInternalSlot; } });
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
*/
|
|
6
6
|
export declare function IsValidTimeZoneName(tz: string, { tzData, uppercaseLinks, }: {
|
|
7
7
|
tzData: Record<string, unknown>;
|
|
8
|
-
uppercaseLinks: Record<string,
|
|
8
|
+
uppercaseLinks: Record<string, string>;
|
|
9
9
|
}): boolean;
|
|
10
10
|
//# sourceMappingURL=IsValidTimeZoneName.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IsValidTimeZoneName.d.ts","sourceRoot":"","sources":["../../../../../../packages/ecma402-abstract/IsValidTimeZoneName.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,EACV,EACE,MAAM,EACN,cAAc,GACf,EAAE;IACD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"IsValidTimeZoneName.d.ts","sourceRoot":"","sources":["../../../../../../packages/ecma402-abstract/IsValidTimeZoneName.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,EACV,EACE,MAAM,EACN,cAAc,GACf,EAAE;IACD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACvC,GACA,OAAO,CAYT"}
|
|
@@ -7,8 +7,13 @@ export function IsValidTimeZoneName(tz, _a) {
|
|
|
7
7
|
var tzData = _a.tzData, uppercaseLinks = _a.uppercaseLinks;
|
|
8
8
|
var uppercasedTz = tz.toUpperCase();
|
|
9
9
|
var zoneNames = new Set();
|
|
10
|
+
var linkNames = new Set();
|
|
10
11
|
Object.keys(tzData)
|
|
11
12
|
.map(function (z) { return z.toUpperCase(); })
|
|
12
13
|
.forEach(function (z) { return zoneNames.add(z); });
|
|
13
|
-
|
|
14
|
+
Object.keys(uppercaseLinks).forEach(function (linkName) {
|
|
15
|
+
linkNames.add(linkName.toUpperCase());
|
|
16
|
+
zoneNames.add(uppercaseLinks[linkName].toUpperCase());
|
|
17
|
+
});
|
|
18
|
+
return zoneNames.has(uppercasedTz) || linkNames.has(uppercasedTz);
|
|
14
19
|
}
|
|
@@ -2,11 +2,11 @@ import { NumberFormatInternal, NumberFormatOptions, NumberFormatLocaleInternalDa
|
|
|
2
2
|
/**
|
|
3
3
|
* https://tc39.es/ecma402/#sec-initializenumberformat
|
|
4
4
|
*/
|
|
5
|
-
export declare function InitializeNumberFormat(nf: Intl.NumberFormat, locales: string | string
|
|
5
|
+
export declare function InitializeNumberFormat(nf: Intl.NumberFormat, locales: string | ReadonlyArray<string> | undefined, opts: NumberFormatOptions | undefined, { getInternalSlots, localeData, availableLocales, numberingSystemNames, getDefaultLocale, currencyDigitsData, }: {
|
|
6
6
|
getInternalSlots(nf: Intl.NumberFormat): NumberFormatInternal;
|
|
7
7
|
localeData: Record<string, NumberFormatLocaleInternalData | undefined>;
|
|
8
8
|
availableLocales: Set<string>;
|
|
9
|
-
numberingSystemNames: string
|
|
9
|
+
numberingSystemNames: ReadonlyArray<string>;
|
|
10
10
|
getDefaultLocale(): string;
|
|
11
11
|
currencyDigitsData: Record<string, number>;
|
|
12
12
|
}): Intl.NumberFormat;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InitializeNumberFormat.d.ts","sourceRoot":"","sources":["../../../../../../../packages/ecma402-abstract/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,MAAM,
|
|
1
|
+
{"version":3,"file":"InitializeNumberFormat.d.ts","sourceRoot":"","sources":["../../../../../../../packages/ecma402-abstract/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,6 +1,6 @@
|
|
|
1
1
|
import { CanonicalizeLocaleList } from '../CanonicalizeLocaleList';
|
|
2
2
|
import { GetOption } from '../GetOption';
|
|
3
|
-
import { ResolveLocale } from '
|
|
3
|
+
import { ResolveLocale } from '@formatjs/intl-localematcher';
|
|
4
4
|
import { SetNumberFormatUnitOptions } from './SetNumberFormatUnitOptions';
|
|
5
5
|
import { CurrencyDigits } from './CurrencyDigits';
|
|
6
6
|
import { SetNumberFormatDigitOptions } from './SetNumberFormatDigitOptions';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"digit-mapping.generated.d.ts","sourceRoot":"","sources":["../../../../../../../packages/ecma402-abstract/NumberFormat/digit-mapping.generated.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAA67G,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export var digitMapping = { "adlm": ["𞥐", "𞥑", "𞥒", "𞥓", "𞥔", "𞥕", "𞥖", "𞥗", "𞥘", "𞥙"], "ahom": ["𑜰", "𑜱", "𑜲", "𑜳", "𑜴", "𑜵", "𑜶", "𑜷", "𑜸", "𑜹"], "arab": ["٠", "١", "٢", "٣", "٤", "٥", "٦", "٧", "٨", "٩"], "arabext": ["۰", "۱", "۲", "۳", "۴", "۵", "۶", "۷", "۸", "۹"], "bali": ["᭐", "᭑", "᭒", "᭓", "᭔", "᭕", "᭖", "᭗", "᭘", "᭙"], "beng": ["০", "১", "২", "৩", "৪", "৫", "৬", "৭", "৮", "৯"], "bhks": ["𑱐", "𑱑", "𑱒", "𑱓", "𑱔", "𑱕", "𑱖", "𑱗", "𑱘", "𑱙"], "brah": ["𑁦", "𑁧", "𑁨", "𑁩", "𑁪", "𑁫", "𑁬", "𑁭", "𑁮", "𑁯"], "cakm": ["𑄶", "𑄷", "𑄸", "𑄹", "𑄺", "𑄻", "𑄼", "𑄽", "𑄾", "𑄿"], "cham": ["꩐", "꩑", "꩒", "꩓", "꩔", "꩕", "꩖", "꩗", "꩘", "꩙"], "deva": ["०", "१", "२", "३", "४", "५", "६", "७", "८", "९"], "diak": ["𑥐", "𑥑", "𑥒", "𑥓", "𑥔", "𑥕", "𑥖", "𑥗", "𑥘", "𑥙"], "fullwide": ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"], "gong": ["𑶠", "𑶡", "𑶢", "𑶣", "𑶤", "𑶥", "𑶦", "𑶧", "𑶨", "𑶩"], "gonm": ["𑵐", "𑵑", "𑵒", "𑵓", "𑵔", "𑵕", "𑵖", "𑵗", "𑵘", "𑵙"], "gujr": ["૦", "૧", "૨", "૩", "૪", "૫", "૬", "૭", "૮", "૯"], "guru": ["੦", "੧", "੨", "੩", "੪", "੫", "੬", "੭", "੮", "੯"], "hanidec": ["〇", "一", "二", "三", "四", "五", "六", "七", "八", "九"], "hmng": ["𖭐", "𖭑", "𖭒", "𖭓", "𖭔", "𖭕", "𖭖", "𖭗", "𖭘", "𖭙"], "hmnp": ["𞅀", "𞅁", "𞅂", "𞅃", "𞅄", "𞅅", "𞅆", "𞅇", "𞅈", "𞅉"], "java": ["꧐", "꧑", "꧒", "꧓", "꧔", "꧕", "꧖", "꧗", "꧘", "꧙"], "kali": ["꤀", "꤁", "꤂", "꤃", "꤄", "꤅", "꤆", "꤇", "꤈", "꤉"], "khmr": ["០", "១", "២", "៣", "៤", "៥", "៦", "៧", "៨", "៩"], "knda": ["೦", "೧", "೨", "೩", "೪", "೫", "೬", "೭", "೮", "೯"], "lana": ["᪀", "᪁", "᪂", "᪃", "᪄", "᪅", "᪆", "᪇", "᪈", "᪉"], "lanatham": ["᪐", "᪑", "᪒", "᪓", "᪔", "᪕", "᪖", "᪗", "᪘", "᪙"], "laoo": ["໐", "໑", "໒", "໓", "໔", "໕", "໖", "໗", "໘", "໙"], "lepc": ["᪐", "᪑", "᪒", "᪓", "᪔", "᪕", "᪖", "᪗", "᪘", "᪙"], "limb": ["᥆", "᥇", "᥈", "᥉", "᥊", "᥋", "᥌", "᥍", "᥎", "᥏"], "mathbold": ["𝟎", "𝟏", "𝟐", "𝟑", "𝟒", "𝟓", "𝟔", "𝟕", "𝟖", "𝟗"], "mathdbl": ["𝟘", "𝟙", "𝟚", "𝟛", "𝟜", "𝟝", "𝟞", "𝟟", "𝟠", "𝟡"], "mathmono": ["𝟶", "𝟷", "𝟸", "𝟹", "𝟺", "𝟻", "𝟼", "𝟽", "𝟾", "𝟿"], "mathsanb": ["𝟬", "𝟭", "𝟮", "𝟯", "𝟰", "𝟱", "𝟲", "𝟳", "𝟴", "𝟵"], "mathsans": ["𝟢", "𝟣", "𝟤", "𝟥", "𝟦", "𝟧", "𝟨", "𝟩", "𝟪", "𝟫"], "mlym": ["൦", "൧", "൨", "൩", "൪", "൫", "൬", "൭", "൮", "൯"], "modi": ["𑙐", "𑙑", "𑙒", "𑙓", "𑙔", "𑙕", "𑙖", "𑙗", "𑙘", "𑙙"], "mong": ["᠐", "᠑", "᠒", "᠓", "᠔", "᠕", "᠖", "᠗", "᠘", "᠙"], "mroo": ["𖩠", "𖩡", "𖩢", "𖩣", "𖩤", "𖩥", "𖩦", "𖩧", "𖩨", "𖩩"], "mtei": ["꯰", "꯱", "꯲", "꯳", "꯴", "꯵", "꯶", "꯷", "꯸", "꯹"], "mymr": ["၀", "၁", "၂", "၃", "၄", "၅", "၆", "၇", "၈", "၉"], "mymrshan": ["႐", "႑", "႒", "႓", "႔", "႕", "႖", "႗", "႘", "႙"], "mymrtlng": ["꧰", "꧱", "꧲", "꧳", "꧴", "꧵", "꧶", "꧷", "꧸", "꧹"], "newa": ["𑑐", "𑑑", "𑑒", "𑑓", "𑑔", "𑑕", "𑑖", "𑑗", "𑑘", "𑑙"], "nkoo": ["߀", "߁", "߂", "߃", "߄", "߅", "߆", "߇", "߈", "߉"], "olck": ["᱐", "᱑", "᱒", "᱓", "᱔", "᱕", "᱖", "᱗", "᱘", "᱙"], "orya": ["୦", "୧", "୨", "୩", "୪", "୫", "୬", "୭", "୮", "୯"], "osma": ["𐒠", "𐒡", "𐒢", "𐒣", "𐒤", "𐒥", "𐒦", "𐒧", "𐒨", "𐒩"], "rohg": ["𐴰", "𐴱", "𐴲", "𐴳", "𐴴", "𐴵", "𐴶", "𐴷", "𐴸", "𐴹"], "saur": ["꣐", "꣑", "꣒", "꣓", "꣔", "꣕", "꣖", "꣗", "꣘", "꣙"], "segment": ["🯰", "🯱", "🯲", "🯳", "🯴", "🯵", "🯶", "🯷", "🯸", "🯹"], "shrd": ["𑇐", "𑇑", "𑇒", "𑇓", "𑇔", "𑇕", "𑇖", "𑇗", "𑇘", "𑇙"], "sind": ["𑋰", "𑋱", "𑋲", "𑋳", "𑋴", "𑋵", "𑋶", "𑋷", "𑋸", "𑋹"], "sinh": ["෦", "෧", "෨", "෩", "෪", "෫", "෬", "෭", "෮", "෯"], "sora": ["𑃰", "𑃱", "𑃲", "𑃳", "𑃴", "𑃵", "𑃶", "𑃷", "𑃸", "𑃹"], "sund": ["᮰", "᮱", "᮲", "᮳", "᮴", "᮵", "᮶", "᮷", "᮸", "᮹"], "takr": ["𑛀", "𑛁", "𑛂", "𑛃", "𑛄", "𑛅", "𑛆", "𑛇", "𑛈", "𑛉"], "talu": ["᧐", "᧑", "᧒", "᧓", "᧔", "᧕", "᧖", "᧗", "᧘", "᧙"], "tamldec": ["௦", "௧", "௨", "௩", "௪", "௫", "௬", "௭", "௮", "௯"], "telu": ["౦", "౧", "౨", "౩", "౪", "౫", "౬", "౭", "౮", "౯"], "thai": ["๐", "๑", "๒", "๓", "๔", "๕", "๖", "๗", "๘", "๙"], "tibt": ["༠", "༡", "༢", "༣", "༤", "༥", "༦", "༧", "༨", "༩"], "tirh": ["𑓐", "𑓑", "𑓒", "𑓓", "𑓔", "𑓕", "𑓖", "𑓗", "𑓘", "𑓙"], "vaii": ["ᘠ", "ᘡ", "ᘢ", "ᘣ", "ᘤ", "ᘥ", "ᘦ", "ᘧ", "ᘨ", "ᘩ"], "wara": ["𑣠", "𑣡", "𑣢", "𑣣", "𑣤", "𑣥", "𑣦", "𑣧", "𑣨", "𑣩"], "wcho": ["𞋰", "𞋱", "𞋲", "𞋳", "𞋴", "𞋵", "𞋶", "𞋷", "𞋸", "𞋹"] };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ToRawFixed } from './ToRawFixed';
|
|
2
|
-
import
|
|
2
|
+
import { digitMapping } from './digit-mapping.generated';
|
|
3
3
|
import { S_UNICODE_REGEX } from '../regex.generated';
|
|
4
4
|
// This is from: unicode-12.1.0/General_Category/Symbol/regex.js
|
|
5
5
|
// IE11 does not support unicode flag, otherwise this is just /\p{S}/u.
|
package/lib/SupportedLocales.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ToObject } from './262';
|
|
2
2
|
import { GetOption } from './GetOption';
|
|
3
|
-
import { LookupSupportedLocales } from '
|
|
3
|
+
import { LookupSupportedLocales } from '@formatjs/intl-localematcher';
|
|
4
4
|
/**
|
|
5
5
|
* https://tc39.es/ecma402/#sec-supportedlocales
|
|
6
6
|
* @param availableLocales
|
package/lib/index.d.ts
CHANGED
|
@@ -21,7 +21,6 @@ export * from './NumberFormat/ToRawFixed';
|
|
|
21
21
|
export * from './NumberFormat/ToRawPrecision';
|
|
22
22
|
export { default as _formatToParts } from './NumberFormat/format_to_parts';
|
|
23
23
|
export * from './PartitionPattern';
|
|
24
|
-
export * from './ResolveLocale';
|
|
25
24
|
export * from './SupportedLocales';
|
|
26
25
|
export { getInternalSlot, getMultiInternalSlots, isLiteralPart, setInternalSlot, setMultiInternalSlots, getMagnitude, defineProperty, } from './utils';
|
|
27
26
|
export type { LiteralPart } from './utils';
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/ecma402-abstract/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,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/ecma402-abstract/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"}
|
package/lib/index.js
CHANGED
|
@@ -21,7 +21,6 @@ export * from './NumberFormat/ToRawFixed';
|
|
|
21
21
|
export * from './NumberFormat/ToRawPrecision';
|
|
22
22
|
export { default as _formatToParts } from './NumberFormat/format_to_parts';
|
|
23
23
|
export * from './PartitionPattern';
|
|
24
|
-
export * from './ResolveLocale';
|
|
25
24
|
export * from './SupportedLocales';
|
|
26
25
|
export { getInternalSlot, getMultiInternalSlots, isLiteralPart, setInternalSlot, setMultiInternalSlots, getMagnitude, defineProperty, } from './utils';
|
|
27
26
|
export { isMissingLocaleDataError } from './data';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@formatjs/ecma402-abstract",
|
|
3
|
-
"version": "1.9.
|
|
3
|
+
"version": "1.9.6",
|
|
4
4
|
"description": "A collection of implementation for ECMAScript abstract operations",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"intl",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"format"
|
|
15
15
|
],
|
|
16
16
|
"dependencies": {
|
|
17
|
+
"@formatjs/intl-localematcher": "0.2.19",
|
|
17
18
|
"tslib": "^2.1.0"
|
|
18
19
|
},
|
|
19
20
|
"author": "Long Ho <holevietlong@gmail.com",
|
package/BestAvailableLocale.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* https://tc39.es/ecma402/#sec-bestavailablelocale
|
|
3
|
-
* @param availableLocales
|
|
4
|
-
* @param locale
|
|
5
|
-
*/
|
|
6
|
-
export declare function BestAvailableLocale(availableLocales: Set<String>, locale: string): string | undefined;
|
|
7
|
-
//# sourceMappingURL=BestAvailableLocale.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BestAvailableLocale.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/BestAvailableLocale.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC7B,MAAM,EAAE,MAAM,sBAgBf"}
|
package/BestAvailableLocale.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BestAvailableLocale = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* https://tc39.es/ecma402/#sec-bestavailablelocale
|
|
6
|
-
* @param availableLocales
|
|
7
|
-
* @param locale
|
|
8
|
-
*/
|
|
9
|
-
function BestAvailableLocale(availableLocales, locale) {
|
|
10
|
-
var candidate = locale;
|
|
11
|
-
while (true) {
|
|
12
|
-
if (availableLocales.has(candidate)) {
|
|
13
|
-
return candidate;
|
|
14
|
-
}
|
|
15
|
-
var pos = candidate.lastIndexOf('-');
|
|
16
|
-
if (!~pos) {
|
|
17
|
-
return undefined;
|
|
18
|
-
}
|
|
19
|
-
if (pos >= 2 && candidate[pos - 2] === '-') {
|
|
20
|
-
pos -= 2;
|
|
21
|
-
}
|
|
22
|
-
candidate = candidate.slice(0, pos);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
exports.BestAvailableLocale = BestAvailableLocale;
|
package/BestFitMatcher.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { LookupMatcherResult } from './types/core';
|
|
2
|
-
/**
|
|
3
|
-
* https://tc39.es/ecma402/#sec-bestfitmatcher
|
|
4
|
-
* @param availableLocales
|
|
5
|
-
* @param requestedLocales
|
|
6
|
-
* @param getDefaultLocale
|
|
7
|
-
*/
|
|
8
|
-
export declare function BestFitMatcher(availableLocales: Set<string>, requestedLocales: string[], getDefaultLocale: () => string): LookupMatcherResult;
|
|
9
|
-
//# sourceMappingURL=BestFitMatcher.d.ts.map
|
package/BestFitMatcher.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BestFitMatcher.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/BestFitMatcher.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,mBAAmB,EAAC,MAAM,cAAc,CAAA;AAGhD;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC7B,gBAAgB,EAAE,MAAM,EAAE,EAC1B,gBAAgB,EAAE,MAAM,MAAM,GAC7B,mBAAmB,CAiDrB"}
|
package/BestFitMatcher.js
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BestFitMatcher = void 0;
|
|
4
|
-
var BestAvailableLocale_1 = require("./BestAvailableLocale");
|
|
5
|
-
var utils_1 = require("./utils");
|
|
6
|
-
/**
|
|
7
|
-
* https://tc39.es/ecma402/#sec-bestfitmatcher
|
|
8
|
-
* @param availableLocales
|
|
9
|
-
* @param requestedLocales
|
|
10
|
-
* @param getDefaultLocale
|
|
11
|
-
*/
|
|
12
|
-
function BestFitMatcher(availableLocales, requestedLocales, getDefaultLocale) {
|
|
13
|
-
var minimizedAvailableLocaleMap = {};
|
|
14
|
-
var minimizedAvailableLocales = new Set();
|
|
15
|
-
availableLocales.forEach(function (locale) {
|
|
16
|
-
var minimizedLocale = new Intl.Locale(locale)
|
|
17
|
-
.minimize()
|
|
18
|
-
.toString();
|
|
19
|
-
minimizedAvailableLocaleMap[minimizedLocale] = locale;
|
|
20
|
-
minimizedAvailableLocales.add(minimizedLocale);
|
|
21
|
-
});
|
|
22
|
-
var foundLocale;
|
|
23
|
-
for (var _i = 0, requestedLocales_1 = requestedLocales; _i < requestedLocales_1.length; _i++) {
|
|
24
|
-
var l = requestedLocales_1[_i];
|
|
25
|
-
if (foundLocale) {
|
|
26
|
-
break;
|
|
27
|
-
}
|
|
28
|
-
var noExtensionLocale = l.replace(utils_1.UNICODE_EXTENSION_SEQUENCE_REGEX, '');
|
|
29
|
-
if (availableLocales.has(noExtensionLocale)) {
|
|
30
|
-
foundLocale = noExtensionLocale;
|
|
31
|
-
break;
|
|
32
|
-
}
|
|
33
|
-
if (minimizedAvailableLocales.has(noExtensionLocale)) {
|
|
34
|
-
foundLocale = minimizedAvailableLocaleMap[noExtensionLocale];
|
|
35
|
-
break;
|
|
36
|
-
}
|
|
37
|
-
var locale = new Intl.Locale(noExtensionLocale);
|
|
38
|
-
var maximizedRequestedLocale = locale.maximize().toString();
|
|
39
|
-
var minimizedRequestedLocale = locale.minimize().toString();
|
|
40
|
-
// Check minimized locale
|
|
41
|
-
if (minimizedAvailableLocales.has(minimizedRequestedLocale)) {
|
|
42
|
-
foundLocale = minimizedAvailableLocaleMap[minimizedRequestedLocale];
|
|
43
|
-
break;
|
|
44
|
-
}
|
|
45
|
-
// Lookup algo on maximized locale
|
|
46
|
-
foundLocale = BestAvailableLocale_1.BestAvailableLocale(minimizedAvailableLocales, maximizedRequestedLocale);
|
|
47
|
-
}
|
|
48
|
-
return {
|
|
49
|
-
locale: foundLocale || getDefaultLocale(),
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
exports.BestFitMatcher = BestFitMatcher;
|
package/LookupMatcher.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { LookupMatcherResult } from './types/core';
|
|
2
|
-
/**
|
|
3
|
-
* https://tc39.es/ecma402/#sec-lookupmatcher
|
|
4
|
-
* @param availableLocales
|
|
5
|
-
* @param requestedLocales
|
|
6
|
-
* @param getDefaultLocale
|
|
7
|
-
*/
|
|
8
|
-
export declare function LookupMatcher(availableLocales: Set<string>, requestedLocales: string[], getDefaultLocale: () => string): LookupMatcherResult;
|
|
9
|
-
//# sourceMappingURL=LookupMatcher.d.ts.map
|
package/LookupMatcher.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LookupMatcher.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/LookupMatcher.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,mBAAmB,EAAC,MAAM,cAAc,CAAA;AAEhD;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC7B,gBAAgB,EAAE,MAAM,EAAE,EAC1B,gBAAgB,EAAE,MAAM,MAAM,GAC7B,mBAAmB,CAwBrB"}
|
package/LookupMatcher.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LookupMatcher = void 0;
|
|
4
|
-
var utils_1 = require("./utils");
|
|
5
|
-
var BestAvailableLocale_1 = require("./BestAvailableLocale");
|
|
6
|
-
/**
|
|
7
|
-
* https://tc39.es/ecma402/#sec-lookupmatcher
|
|
8
|
-
* @param availableLocales
|
|
9
|
-
* @param requestedLocales
|
|
10
|
-
* @param getDefaultLocale
|
|
11
|
-
*/
|
|
12
|
-
function LookupMatcher(availableLocales, requestedLocales, getDefaultLocale) {
|
|
13
|
-
var result = { locale: '' };
|
|
14
|
-
for (var _i = 0, requestedLocales_1 = requestedLocales; _i < requestedLocales_1.length; _i++) {
|
|
15
|
-
var locale = requestedLocales_1[_i];
|
|
16
|
-
var noExtensionLocale = locale.replace(utils_1.UNICODE_EXTENSION_SEQUENCE_REGEX, '');
|
|
17
|
-
var availableLocale = BestAvailableLocale_1.BestAvailableLocale(availableLocales, noExtensionLocale);
|
|
18
|
-
if (availableLocale) {
|
|
19
|
-
result.locale = availableLocale;
|
|
20
|
-
if (locale !== noExtensionLocale) {
|
|
21
|
-
result.extension = locale.slice(noExtensionLocale.length + 1, locale.length);
|
|
22
|
-
}
|
|
23
|
-
return result;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
result.locale = getDefaultLocale();
|
|
27
|
-
return result;
|
|
28
|
-
}
|
|
29
|
-
exports.LookupMatcher = LookupMatcher;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* https://tc39.es/ecma402/#sec-lookupsupportedlocales
|
|
3
|
-
* @param availableLocales
|
|
4
|
-
* @param requestedLocales
|
|
5
|
-
*/
|
|
6
|
-
export declare function LookupSupportedLocales(availableLocales: Set<string>, requestedLocales: string[]): string[];
|
|
7
|
-
//# sourceMappingURL=LookupSupportedLocales.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LookupSupportedLocales.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/LookupSupportedLocales.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC7B,gBAAgB,EAAE,MAAM,EAAE,YAiB3B"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LookupSupportedLocales = void 0;
|
|
4
|
-
var utils_1 = require("./utils");
|
|
5
|
-
var BestAvailableLocale_1 = require("./BestAvailableLocale");
|
|
6
|
-
/**
|
|
7
|
-
* https://tc39.es/ecma402/#sec-lookupsupportedlocales
|
|
8
|
-
* @param availableLocales
|
|
9
|
-
* @param requestedLocales
|
|
10
|
-
*/
|
|
11
|
-
function LookupSupportedLocales(availableLocales, requestedLocales) {
|
|
12
|
-
var subset = [];
|
|
13
|
-
for (var _i = 0, requestedLocales_1 = requestedLocales; _i < requestedLocales_1.length; _i++) {
|
|
14
|
-
var locale = requestedLocales_1[_i];
|
|
15
|
-
var noExtensionLocale = locale.replace(utils_1.UNICODE_EXTENSION_SEQUENCE_REGEX, '');
|
|
16
|
-
var availableLocale = BestAvailableLocale_1.BestAvailableLocale(availableLocales, noExtensionLocale);
|
|
17
|
-
if (availableLocale) {
|
|
18
|
-
subset.push(availableLocale);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
return subset;
|
|
22
|
-
}
|
|
23
|
-
exports.LookupSupportedLocales = LookupSupportedLocales;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{ "adlm": ["𞥐", "𞥑", "𞥒", "𞥓", "𞥔", "𞥕", "𞥖", "𞥗", "𞥘", "𞥙"], "ahom": ["𑜰", "𑜱", "𑜲", "𑜳", "𑜴", "𑜵", "𑜶", "𑜷", "𑜸", "𑜹"], "arab": ["٠", "١", "٢", "٣", "٤", "٥", "٦", "٧", "٨", "٩"], "arabext": ["۰", "۱", "۲", "۳", "۴", "۵", "۶", "۷", "۸", "۹"], "bali": ["᭐", "᭑", "᭒", "᭓", "᭔", "᭕", "᭖", "᭗", "᭘", "᭙"], "beng": ["০", "১", "২", "৩", "৪", "৫", "৬", "৭", "৮", "৯"], "bhks": ["𑱐", "𑱑", "𑱒", "𑱓", "𑱔", "𑱕", "𑱖", "𑱗", "𑱘", "𑱙"], "brah": ["𑁦", "𑁧", "𑁨", "𑁩", "𑁪", "𑁫", "𑁬", "𑁭", "𑁮", "𑁯"], "cakm": ["𑄶", "𑄷", "𑄸", "𑄹", "𑄺", "𑄻", "𑄼", "𑄽", "𑄾", "𑄿"], "cham": ["꩐", "꩑", "꩒", "꩓", "꩔", "꩕", "꩖", "꩗", "꩘", "꩙"], "deva": ["०", "१", "२", "३", "४", "५", "६", "७", "८", "९"], "diak": ["𑥐", "𑥑", "𑥒", "𑥓", "𑥔", "𑥕", "𑥖", "𑥗", "𑥘", "𑥙"], "fullwide": ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"], "gong": ["𑶠", "𑶡", "𑶢", "𑶣", "𑶤", "𑶥", "𑶦", "𑶧", "𑶨", "𑶩"], "gonm": ["𑵐", "𑵑", "𑵒", "𑵓", "𑵔", "𑵕", "𑵖", "𑵗", "𑵘", "𑵙"], "gujr": ["૦", "૧", "૨", "૩", "૪", "૫", "૬", "૭", "૮", "૯"], "guru": ["੦", "੧", "੨", "੩", "੪", "੫", "੬", "੭", "੮", "੯"], "hanidec": ["〇", "一", "二", "三", "四", "五", "六", "七", "八", "九"], "hmng": ["𖭐", "𖭑", "𖭒", "𖭓", "𖭔", "𖭕", "𖭖", "𖭗", "𖭘", "𖭙"], "hmnp": ["𞅀", "𞅁", "𞅂", "𞅃", "𞅄", "𞅅", "𞅆", "𞅇", "𞅈", "𞅉"], "java": ["꧐", "꧑", "꧒", "꧓", "꧔", "꧕", "꧖", "꧗", "꧘", "꧙"], "kali": ["꤀", "꤁", "꤂", "꤃", "꤄", "꤅", "꤆", "꤇", "꤈", "꤉"], "khmr": ["០", "១", "២", "៣", "៤", "៥", "៦", "៧", "៨", "៩"], "knda": ["೦", "೧", "೨", "೩", "೪", "೫", "೬", "೭", "೮", "೯"], "lana": ["᪀", "᪁", "᪂", "᪃", "᪄", "᪅", "᪆", "᪇", "᪈", "᪉"], "lanatham": ["᪐", "᪑", "᪒", "᪓", "᪔", "᪕", "᪖", "᪗", "᪘", "᪙"], "laoo": ["໐", "໑", "໒", "໓", "໔", "໕", "໖", "໗", "໘", "໙"], "lepc": ["᪐", "᪑", "᪒", "᪓", "᪔", "᪕", "᪖", "᪗", "᪘", "᪙"], "limb": ["᥆", "᥇", "᥈", "᥉", "᥊", "᥋", "᥌", "᥍", "᥎", "᥏"], "mathbold": ["𝟎", "𝟏", "𝟐", "𝟑", "𝟒", "𝟓", "𝟔", "𝟕", "𝟖", "𝟗"], "mathdbl": ["𝟘", "𝟙", "𝟚", "𝟛", "𝟜", "𝟝", "𝟞", "𝟟", "𝟠", "𝟡"], "mathmono": ["𝟶", "𝟷", "𝟸", "𝟹", "𝟺", "𝟻", "𝟼", "𝟽", "𝟾", "𝟿"], "mathsanb": ["𝟬", "𝟭", "𝟮", "𝟯", "𝟰", "𝟱", "𝟲", "𝟳", "𝟴", "𝟵"], "mathsans": ["𝟢", "𝟣", "𝟤", "𝟥", "𝟦", "𝟧", "𝟨", "𝟩", "𝟪", "𝟫"], "mlym": ["൦", "൧", "൨", "൩", "൪", "൫", "൬", "൭", "൮", "൯"], "modi": ["𑙐", "𑙑", "𑙒", "𑙓", "𑙔", "𑙕", "𑙖", "𑙗", "𑙘", "𑙙"], "mong": ["᠐", "᠑", "᠒", "᠓", "᠔", "᠕", "᠖", "᠗", "᠘", "᠙"], "mroo": ["𖩠", "𖩡", "𖩢", "𖩣", "𖩤", "𖩥", "𖩦", "𖩧", "𖩨", "𖩩"], "mtei": ["꯰", "꯱", "꯲", "꯳", "꯴", "꯵", "꯶", "꯷", "꯸", "꯹"], "mymr": ["၀", "၁", "၂", "၃", "၄", "၅", "၆", "၇", "၈", "၉"], "mymrshan": ["႐", "႑", "႒", "႓", "႔", "႕", "႖", "႗", "႘", "႙"], "mymrtlng": ["꧰", "꧱", "꧲", "꧳", "꧴", "꧵", "꧶", "꧷", "꧸", "꧹"], "newa": ["𑑐", "𑑑", "𑑒", "𑑓", "𑑔", "𑑕", "𑑖", "𑑗", "𑑘", "𑑙"], "nkoo": ["߀", "߁", "߂", "߃", "߄", "߅", "߆", "߇", "߈", "߉"], "olck": ["᱐", "᱑", "᱒", "᱓", "᱔", "᱕", "᱖", "᱗", "᱘", "᱙"], "orya": ["୦", "୧", "୨", "୩", "୪", "୫", "୬", "୭", "୮", "୯"], "osma": ["𐒠", "𐒡", "𐒢", "𐒣", "𐒤", "𐒥", "𐒦", "𐒧", "𐒨", "𐒩"], "rohg": ["𐴰", "𐴱", "𐴲", "𐴳", "𐴴", "𐴵", "𐴶", "𐴷", "𐴸", "𐴹"], "saur": ["꣐", "꣑", "꣒", "꣓", "꣔", "꣕", "꣖", "꣗", "꣘", "꣙"], "segment": ["🯰", "🯱", "🯲", "🯳", "🯴", "🯵", "🯶", "🯷", "🯸", "🯹"], "shrd": ["𑇐", "𑇑", "𑇒", "𑇓", "𑇔", "𑇕", "𑇖", "𑇗", "𑇘", "𑇙"], "sind": ["𑋰", "𑋱", "𑋲", "𑋳", "𑋴", "𑋵", "𑋶", "𑋷", "𑋸", "𑋹"], "sinh": ["෦", "෧", "෨", "෩", "෪", "෫", "෬", "෭", "෮", "෯"], "sora": ["𑃰", "𑃱", "𑃲", "𑃳", "𑃴", "𑃵", "𑃶", "𑃷", "𑃸", "𑃹"], "sund": ["᮰", "᮱", "᮲", "᮳", "᮴", "᮵", "᮶", "᮷", "᮸", "᮹"], "takr": ["𑛀", "𑛁", "𑛂", "𑛃", "𑛄", "𑛅", "𑛆", "𑛇", "𑛈", "𑛉"], "talu": ["᧐", "᧑", "᧒", "᧓", "᧔", "᧕", "᧖", "᧗", "᧘", "᧙"], "tamldec": ["௦", "௧", "௨", "௩", "௪", "௫", "௬", "௭", "௮", "௯"], "telu": ["౦", "౧", "౨", "౩", "౪", "౫", "౬", "౭", "౮", "౯"], "thai": ["๐", "๑", "๒", "๓", "๔", "๕", "๖", "๗", "๘", "๙"], "tibt": ["༠", "༡", "༢", "༣", "༤", "༥", "༦", "༧", "༨", "༩"], "tirh": ["𑓐", "𑓑", "𑓒", "𑓓", "𑓔", "𑓕", "𑓖", "𑓗", "𑓘", "𑓙"], "vaii": ["ᘠ", "ᘡ", "ᘢ", "ᘣ", "ᘤ", "ᘥ", "ᘦ", "ᘧ", "ᘨ", "ᘩ"], "wara": ["𑣠", "𑣡", "𑣢", "𑣣", "𑣤", "𑣥", "𑣦", "𑣧", "𑣨", "𑣩"], "wcho": ["𞋰", "𞋱", "𞋲", "𞋳", "𞋴", "𞋵", "𞋶", "𞋷", "𞋸", "𞋹"] }
|
package/ResolveLocale.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export interface ResolveLocaleResult {
|
|
2
|
-
locale: string;
|
|
3
|
-
dataLocale: string;
|
|
4
|
-
[k: string]: any;
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* https://tc39.es/ecma402/#sec-resolvelocale
|
|
8
|
-
*/
|
|
9
|
-
export declare function ResolveLocale<K extends string, D extends {
|
|
10
|
-
[k in K]: any;
|
|
11
|
-
}>(availableLocales: Set<string>, requestedLocales: string[], options: {
|
|
12
|
-
localeMatcher: string;
|
|
13
|
-
[k: string]: string;
|
|
14
|
-
}, relevantExtensionKeys: K[], localeData: Record<string, D | undefined>, getDefaultLocale: () => string): ResolveLocaleResult;
|
|
15
|
-
//# sourceMappingURL=ResolveLocale.d.ts.map
|
package/ResolveLocale.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ResolveLocale.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/ResolveLocale.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACjB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS;KAAE,CAAC,IAAI,CAAC,GAAG,GAAG;CAAC,EACvE,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC7B,gBAAgB,EAAE,MAAM,EAAE,EAC1B,OAAO,EAAE;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,EACrD,qBAAqB,EAAE,CAAC,EAAE,EAC1B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,EACzC,gBAAgB,EAAE,MAAM,MAAM,GAC7B,mBAAmB,CA6ErB"}
|
package/ResolveLocale.js
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ResolveLocale = void 0;
|
|
4
|
-
var LookupMatcher_1 = require("./LookupMatcher");
|
|
5
|
-
var BestFitMatcher_1 = require("./BestFitMatcher");
|
|
6
|
-
var utils_1 = require("./utils");
|
|
7
|
-
var UnicodeExtensionValue_1 = require("./UnicodeExtensionValue");
|
|
8
|
-
/**
|
|
9
|
-
* https://tc39.es/ecma402/#sec-resolvelocale
|
|
10
|
-
*/
|
|
11
|
-
function ResolveLocale(availableLocales, requestedLocales, options, relevantExtensionKeys, localeData, getDefaultLocale) {
|
|
12
|
-
var matcher = options.localeMatcher;
|
|
13
|
-
var r;
|
|
14
|
-
if (matcher === 'lookup') {
|
|
15
|
-
r = LookupMatcher_1.LookupMatcher(availableLocales, requestedLocales, getDefaultLocale);
|
|
16
|
-
}
|
|
17
|
-
else {
|
|
18
|
-
r = BestFitMatcher_1.BestFitMatcher(availableLocales, requestedLocales, getDefaultLocale);
|
|
19
|
-
}
|
|
20
|
-
var foundLocale = r.locale;
|
|
21
|
-
var result = { locale: '', dataLocale: foundLocale };
|
|
22
|
-
var supportedExtension = '-u';
|
|
23
|
-
for (var _i = 0, relevantExtensionKeys_1 = relevantExtensionKeys; _i < relevantExtensionKeys_1.length; _i++) {
|
|
24
|
-
var key = relevantExtensionKeys_1[_i];
|
|
25
|
-
utils_1.invariant(foundLocale in localeData, "Missing locale data for " + foundLocale);
|
|
26
|
-
var foundLocaleData = localeData[foundLocale];
|
|
27
|
-
utils_1.invariant(typeof foundLocaleData === 'object' && foundLocaleData !== null, "locale data " + key + " must be an object");
|
|
28
|
-
var keyLocaleData = foundLocaleData[key];
|
|
29
|
-
utils_1.invariant(Array.isArray(keyLocaleData), "keyLocaleData for " + key + " must be an array");
|
|
30
|
-
var value = keyLocaleData[0];
|
|
31
|
-
utils_1.invariant(typeof value === 'string' || value === null, "value must be string or null but got " + typeof value + " in key " + key);
|
|
32
|
-
var supportedExtensionAddition = '';
|
|
33
|
-
if (r.extension) {
|
|
34
|
-
var requestedValue = UnicodeExtensionValue_1.UnicodeExtensionValue(r.extension, key);
|
|
35
|
-
if (requestedValue !== undefined) {
|
|
36
|
-
if (requestedValue !== '') {
|
|
37
|
-
if (~keyLocaleData.indexOf(requestedValue)) {
|
|
38
|
-
value = requestedValue;
|
|
39
|
-
supportedExtensionAddition = "-" + key + "-" + value;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
else if (~requestedValue.indexOf('true')) {
|
|
43
|
-
value = 'true';
|
|
44
|
-
supportedExtensionAddition = "-" + key;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
if (key in options) {
|
|
49
|
-
var optionsValue = options[key];
|
|
50
|
-
utils_1.invariant(typeof optionsValue === 'string' ||
|
|
51
|
-
typeof optionsValue === 'undefined' ||
|
|
52
|
-
optionsValue === null, 'optionsValue must be String, Undefined or Null');
|
|
53
|
-
if (~keyLocaleData.indexOf(optionsValue)) {
|
|
54
|
-
if (optionsValue !== value) {
|
|
55
|
-
value = optionsValue;
|
|
56
|
-
supportedExtensionAddition = '';
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
result[key] = value;
|
|
61
|
-
supportedExtension += supportedExtensionAddition;
|
|
62
|
-
}
|
|
63
|
-
if (supportedExtension.length > 2) {
|
|
64
|
-
var privateIndex = foundLocale.indexOf('-x-');
|
|
65
|
-
if (privateIndex === -1) {
|
|
66
|
-
foundLocale = foundLocale + supportedExtension;
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
var preExtension = foundLocale.slice(0, privateIndex);
|
|
70
|
-
var postExtension = foundLocale.slice(privateIndex, foundLocale.length);
|
|
71
|
-
foundLocale = preExtension + supportedExtension + postExtension;
|
|
72
|
-
}
|
|
73
|
-
foundLocale = Intl.getCanonicalLocales(foundLocale)[0];
|
|
74
|
-
}
|
|
75
|
-
result.locale = foundLocale;
|
|
76
|
-
return result;
|
|
77
|
-
}
|
|
78
|
-
exports.ResolveLocale = ResolveLocale;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"UnicodeExtensionValue.d.ts","sourceRoot":"","sources":["../../../../../packages/ecma402-abstract/UnicodeExtensionValue.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,sBAoCnE"}
|
package/UnicodeExtensionValue.js
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.UnicodeExtensionValue = void 0;
|
|
4
|
-
var utils_1 = require("./utils");
|
|
5
|
-
/**
|
|
6
|
-
* https://tc39.es/ecma402/#sec-unicodeextensionvalue
|
|
7
|
-
* @param extension
|
|
8
|
-
* @param key
|
|
9
|
-
*/
|
|
10
|
-
function UnicodeExtensionValue(extension, key) {
|
|
11
|
-
utils_1.invariant(key.length === 2, 'key must have 2 elements');
|
|
12
|
-
var size = extension.length;
|
|
13
|
-
var searchValue = "-" + key + "-";
|
|
14
|
-
var pos = extension.indexOf(searchValue);
|
|
15
|
-
if (pos !== -1) {
|
|
16
|
-
var start = pos + 4;
|
|
17
|
-
var end = start;
|
|
18
|
-
var k = start;
|
|
19
|
-
var done = false;
|
|
20
|
-
while (!done) {
|
|
21
|
-
var e = extension.indexOf('-', k);
|
|
22
|
-
var len = void 0;
|
|
23
|
-
if (e === -1) {
|
|
24
|
-
len = size - k;
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
len = e - k;
|
|
28
|
-
}
|
|
29
|
-
if (len === 2) {
|
|
30
|
-
done = true;
|
|
31
|
-
}
|
|
32
|
-
else if (e === -1) {
|
|
33
|
-
end = size;
|
|
34
|
-
done = true;
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
end = e;
|
|
38
|
-
k = e + 1;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return extension.slice(start, end);
|
|
42
|
-
}
|
|
43
|
-
searchValue = "-" + key;
|
|
44
|
-
pos = extension.indexOf(searchValue);
|
|
45
|
-
if (pos !== -1 && pos + 3 === size) {
|
|
46
|
-
return '';
|
|
47
|
-
}
|
|
48
|
-
return undefined;
|
|
49
|
-
}
|
|
50
|
-
exports.UnicodeExtensionValue = UnicodeExtensionValue;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* https://tc39.es/ecma402/#sec-bestavailablelocale
|
|
3
|
-
* @param availableLocales
|
|
4
|
-
* @param locale
|
|
5
|
-
*/
|
|
6
|
-
export declare function BestAvailableLocale(availableLocales: Set<String>, locale: string): string | undefined;
|
|
7
|
-
//# sourceMappingURL=BestAvailableLocale.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BestAvailableLocale.d.ts","sourceRoot":"","sources":["../../../../../../packages/ecma402-abstract/BestAvailableLocale.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC7B,MAAM,EAAE,MAAM,sBAgBf"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* https://tc39.es/ecma402/#sec-bestavailablelocale
|
|
3
|
-
* @param availableLocales
|
|
4
|
-
* @param locale
|
|
5
|
-
*/
|
|
6
|
-
export function BestAvailableLocale(availableLocales, locale) {
|
|
7
|
-
var candidate = locale;
|
|
8
|
-
while (true) {
|
|
9
|
-
if (availableLocales.has(candidate)) {
|
|
10
|
-
return candidate;
|
|
11
|
-
}
|
|
12
|
-
var pos = candidate.lastIndexOf('-');
|
|
13
|
-
if (!~pos) {
|
|
14
|
-
return undefined;
|
|
15
|
-
}
|
|
16
|
-
if (pos >= 2 && candidate[pos - 2] === '-') {
|
|
17
|
-
pos -= 2;
|
|
18
|
-
}
|
|
19
|
-
candidate = candidate.slice(0, pos);
|
|
20
|
-
}
|
|
21
|
-
}
|
package/lib/BestFitMatcher.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { LookupMatcherResult } from './types/core';
|
|
2
|
-
/**
|
|
3
|
-
* https://tc39.es/ecma402/#sec-bestfitmatcher
|
|
4
|
-
* @param availableLocales
|
|
5
|
-
* @param requestedLocales
|
|
6
|
-
* @param getDefaultLocale
|
|
7
|
-
*/
|
|
8
|
-
export declare function BestFitMatcher(availableLocales: Set<string>, requestedLocales: string[], getDefaultLocale: () => string): LookupMatcherResult;
|
|
9
|
-
//# sourceMappingURL=BestFitMatcher.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BestFitMatcher.d.ts","sourceRoot":"","sources":["../../../../../../packages/ecma402-abstract/BestFitMatcher.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,mBAAmB,EAAC,MAAM,cAAc,CAAA;AAGhD;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC7B,gBAAgB,EAAE,MAAM,EAAE,EAC1B,gBAAgB,EAAE,MAAM,MAAM,GAC7B,mBAAmB,CAiDrB"}
|
package/lib/BestFitMatcher.js
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { BestAvailableLocale } from './BestAvailableLocale';
|
|
2
|
-
import { UNICODE_EXTENSION_SEQUENCE_REGEX } from './utils';
|
|
3
|
-
/**
|
|
4
|
-
* https://tc39.es/ecma402/#sec-bestfitmatcher
|
|
5
|
-
* @param availableLocales
|
|
6
|
-
* @param requestedLocales
|
|
7
|
-
* @param getDefaultLocale
|
|
8
|
-
*/
|
|
9
|
-
export function BestFitMatcher(availableLocales, requestedLocales, getDefaultLocale) {
|
|
10
|
-
var minimizedAvailableLocaleMap = {};
|
|
11
|
-
var minimizedAvailableLocales = new Set();
|
|
12
|
-
availableLocales.forEach(function (locale) {
|
|
13
|
-
var minimizedLocale = new Intl.Locale(locale)
|
|
14
|
-
.minimize()
|
|
15
|
-
.toString();
|
|
16
|
-
minimizedAvailableLocaleMap[minimizedLocale] = locale;
|
|
17
|
-
minimizedAvailableLocales.add(minimizedLocale);
|
|
18
|
-
});
|
|
19
|
-
var foundLocale;
|
|
20
|
-
for (var _i = 0, requestedLocales_1 = requestedLocales; _i < requestedLocales_1.length; _i++) {
|
|
21
|
-
var l = requestedLocales_1[_i];
|
|
22
|
-
if (foundLocale) {
|
|
23
|
-
break;
|
|
24
|
-
}
|
|
25
|
-
var noExtensionLocale = l.replace(UNICODE_EXTENSION_SEQUENCE_REGEX, '');
|
|
26
|
-
if (availableLocales.has(noExtensionLocale)) {
|
|
27
|
-
foundLocale = noExtensionLocale;
|
|
28
|
-
break;
|
|
29
|
-
}
|
|
30
|
-
if (minimizedAvailableLocales.has(noExtensionLocale)) {
|
|
31
|
-
foundLocale = minimizedAvailableLocaleMap[noExtensionLocale];
|
|
32
|
-
break;
|
|
33
|
-
}
|
|
34
|
-
var locale = new Intl.Locale(noExtensionLocale);
|
|
35
|
-
var maximizedRequestedLocale = locale.maximize().toString();
|
|
36
|
-
var minimizedRequestedLocale = locale.minimize().toString();
|
|
37
|
-
// Check minimized locale
|
|
38
|
-
if (minimizedAvailableLocales.has(minimizedRequestedLocale)) {
|
|
39
|
-
foundLocale = minimizedAvailableLocaleMap[minimizedRequestedLocale];
|
|
40
|
-
break;
|
|
41
|
-
}
|
|
42
|
-
// Lookup algo on maximized locale
|
|
43
|
-
foundLocale = BestAvailableLocale(minimizedAvailableLocales, maximizedRequestedLocale);
|
|
44
|
-
}
|
|
45
|
-
return {
|
|
46
|
-
locale: foundLocale || getDefaultLocale(),
|
|
47
|
-
};
|
|
48
|
-
}
|
package/lib/LookupMatcher.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { LookupMatcherResult } from './types/core';
|
|
2
|
-
/**
|
|
3
|
-
* https://tc39.es/ecma402/#sec-lookupmatcher
|
|
4
|
-
* @param availableLocales
|
|
5
|
-
* @param requestedLocales
|
|
6
|
-
* @param getDefaultLocale
|
|
7
|
-
*/
|
|
8
|
-
export declare function LookupMatcher(availableLocales: Set<string>, requestedLocales: string[], getDefaultLocale: () => string): LookupMatcherResult;
|
|
9
|
-
//# sourceMappingURL=LookupMatcher.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LookupMatcher.d.ts","sourceRoot":"","sources":["../../../../../../packages/ecma402-abstract/LookupMatcher.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,mBAAmB,EAAC,MAAM,cAAc,CAAA;AAEhD;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC7B,gBAAgB,EAAE,MAAM,EAAE,EAC1B,gBAAgB,EAAE,MAAM,MAAM,GAC7B,mBAAmB,CAwBrB"}
|
package/lib/LookupMatcher.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { UNICODE_EXTENSION_SEQUENCE_REGEX } from './utils';
|
|
2
|
-
import { BestAvailableLocale } from './BestAvailableLocale';
|
|
3
|
-
/**
|
|
4
|
-
* https://tc39.es/ecma402/#sec-lookupmatcher
|
|
5
|
-
* @param availableLocales
|
|
6
|
-
* @param requestedLocales
|
|
7
|
-
* @param getDefaultLocale
|
|
8
|
-
*/
|
|
9
|
-
export function LookupMatcher(availableLocales, requestedLocales, getDefaultLocale) {
|
|
10
|
-
var result = { locale: '' };
|
|
11
|
-
for (var _i = 0, requestedLocales_1 = requestedLocales; _i < requestedLocales_1.length; _i++) {
|
|
12
|
-
var locale = requestedLocales_1[_i];
|
|
13
|
-
var noExtensionLocale = locale.replace(UNICODE_EXTENSION_SEQUENCE_REGEX, '');
|
|
14
|
-
var availableLocale = BestAvailableLocale(availableLocales, noExtensionLocale);
|
|
15
|
-
if (availableLocale) {
|
|
16
|
-
result.locale = availableLocale;
|
|
17
|
-
if (locale !== noExtensionLocale) {
|
|
18
|
-
result.extension = locale.slice(noExtensionLocale.length + 1, locale.length);
|
|
19
|
-
}
|
|
20
|
-
return result;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
result.locale = getDefaultLocale();
|
|
24
|
-
return result;
|
|
25
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* https://tc39.es/ecma402/#sec-lookupsupportedlocales
|
|
3
|
-
* @param availableLocales
|
|
4
|
-
* @param requestedLocales
|
|
5
|
-
*/
|
|
6
|
-
export declare function LookupSupportedLocales(availableLocales: Set<string>, requestedLocales: string[]): string[];
|
|
7
|
-
//# sourceMappingURL=LookupSupportedLocales.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LookupSupportedLocales.d.ts","sourceRoot":"","sources":["../../../../../../packages/ecma402-abstract/LookupSupportedLocales.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC7B,gBAAgB,EAAE,MAAM,EAAE,YAiB3B"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { UNICODE_EXTENSION_SEQUENCE_REGEX } from './utils';
|
|
2
|
-
import { BestAvailableLocale } from './BestAvailableLocale';
|
|
3
|
-
/**
|
|
4
|
-
* https://tc39.es/ecma402/#sec-lookupsupportedlocales
|
|
5
|
-
* @param availableLocales
|
|
6
|
-
* @param requestedLocales
|
|
7
|
-
*/
|
|
8
|
-
export function LookupSupportedLocales(availableLocales, requestedLocales) {
|
|
9
|
-
var subset = [];
|
|
10
|
-
for (var _i = 0, requestedLocales_1 = requestedLocales; _i < requestedLocales_1.length; _i++) {
|
|
11
|
-
var locale = requestedLocales_1[_i];
|
|
12
|
-
var noExtensionLocale = locale.replace(UNICODE_EXTENSION_SEQUENCE_REGEX, '');
|
|
13
|
-
var availableLocale = BestAvailableLocale(availableLocales, noExtensionLocale);
|
|
14
|
-
if (availableLocale) {
|
|
15
|
-
subset.push(availableLocale);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
return subset;
|
|
19
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{ "adlm": ["𞥐", "𞥑", "𞥒", "𞥓", "𞥔", "𞥕", "𞥖", "𞥗", "𞥘", "𞥙"], "ahom": ["𑜰", "𑜱", "𑜲", "𑜳", "𑜴", "𑜵", "𑜶", "𑜷", "𑜸", "𑜹"], "arab": ["٠", "١", "٢", "٣", "٤", "٥", "٦", "٧", "٨", "٩"], "arabext": ["۰", "۱", "۲", "۳", "۴", "۵", "۶", "۷", "۸", "۹"], "bali": ["᭐", "᭑", "᭒", "᭓", "᭔", "᭕", "᭖", "᭗", "᭘", "᭙"], "beng": ["০", "১", "২", "৩", "৪", "৫", "৬", "৭", "৮", "৯"], "bhks": ["𑱐", "𑱑", "𑱒", "𑱓", "𑱔", "𑱕", "𑱖", "𑱗", "𑱘", "𑱙"], "brah": ["𑁦", "𑁧", "𑁨", "𑁩", "𑁪", "𑁫", "𑁬", "𑁭", "𑁮", "𑁯"], "cakm": ["𑄶", "𑄷", "𑄸", "𑄹", "𑄺", "𑄻", "𑄼", "𑄽", "𑄾", "𑄿"], "cham": ["꩐", "꩑", "꩒", "꩓", "꩔", "꩕", "꩖", "꩗", "꩘", "꩙"], "deva": ["०", "१", "२", "३", "४", "५", "६", "७", "८", "९"], "diak": ["𑥐", "𑥑", "𑥒", "𑥓", "𑥔", "𑥕", "𑥖", "𑥗", "𑥘", "𑥙"], "fullwide": ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"], "gong": ["𑶠", "𑶡", "𑶢", "𑶣", "𑶤", "𑶥", "𑶦", "𑶧", "𑶨", "𑶩"], "gonm": ["𑵐", "𑵑", "𑵒", "𑵓", "𑵔", "𑵕", "𑵖", "𑵗", "𑵘", "𑵙"], "gujr": ["૦", "૧", "૨", "૩", "૪", "૫", "૬", "૭", "૮", "૯"], "guru": ["੦", "੧", "੨", "੩", "੪", "੫", "੬", "੭", "੮", "੯"], "hanidec": ["〇", "一", "二", "三", "四", "五", "六", "七", "八", "九"], "hmng": ["𖭐", "𖭑", "𖭒", "𖭓", "𖭔", "𖭕", "𖭖", "𖭗", "𖭘", "𖭙"], "hmnp": ["𞅀", "𞅁", "𞅂", "𞅃", "𞅄", "𞅅", "𞅆", "𞅇", "𞅈", "𞅉"], "java": ["꧐", "꧑", "꧒", "꧓", "꧔", "꧕", "꧖", "꧗", "꧘", "꧙"], "kali": ["꤀", "꤁", "꤂", "꤃", "꤄", "꤅", "꤆", "꤇", "꤈", "꤉"], "khmr": ["០", "១", "២", "៣", "៤", "៥", "៦", "៧", "៨", "៩"], "knda": ["೦", "೧", "೨", "೩", "೪", "೫", "೬", "೭", "೮", "೯"], "lana": ["᪀", "᪁", "᪂", "᪃", "᪄", "᪅", "᪆", "᪇", "᪈", "᪉"], "lanatham": ["᪐", "᪑", "᪒", "᪓", "᪔", "᪕", "᪖", "᪗", "᪘", "᪙"], "laoo": ["໐", "໑", "໒", "໓", "໔", "໕", "໖", "໗", "໘", "໙"], "lepc": ["᪐", "᪑", "᪒", "᪓", "᪔", "᪕", "᪖", "᪗", "᪘", "᪙"], "limb": ["᥆", "᥇", "᥈", "᥉", "᥊", "᥋", "᥌", "᥍", "᥎", "᥏"], "mathbold": ["𝟎", "𝟏", "𝟐", "𝟑", "𝟒", "𝟓", "𝟔", "𝟕", "𝟖", "𝟗"], "mathdbl": ["𝟘", "𝟙", "𝟚", "𝟛", "𝟜", "𝟝", "𝟞", "𝟟", "𝟠", "𝟡"], "mathmono": ["𝟶", "𝟷", "𝟸", "𝟹", "𝟺", "𝟻", "𝟼", "𝟽", "𝟾", "𝟿"], "mathsanb": ["𝟬", "𝟭", "𝟮", "𝟯", "𝟰", "𝟱", "𝟲", "𝟳", "𝟴", "𝟵"], "mathsans": ["𝟢", "𝟣", "𝟤", "𝟥", "𝟦", "𝟧", "𝟨", "𝟩", "𝟪", "𝟫"], "mlym": ["൦", "൧", "൨", "൩", "൪", "൫", "൬", "൭", "൮", "൯"], "modi": ["𑙐", "𑙑", "𑙒", "𑙓", "𑙔", "𑙕", "𑙖", "𑙗", "𑙘", "𑙙"], "mong": ["᠐", "᠑", "᠒", "᠓", "᠔", "᠕", "᠖", "᠗", "᠘", "᠙"], "mroo": ["𖩠", "𖩡", "𖩢", "𖩣", "𖩤", "𖩥", "𖩦", "𖩧", "𖩨", "𖩩"], "mtei": ["꯰", "꯱", "꯲", "꯳", "꯴", "꯵", "꯶", "꯷", "꯸", "꯹"], "mymr": ["၀", "၁", "၂", "၃", "၄", "၅", "၆", "၇", "၈", "၉"], "mymrshan": ["႐", "႑", "႒", "႓", "႔", "႕", "႖", "႗", "႘", "႙"], "mymrtlng": ["꧰", "꧱", "꧲", "꧳", "꧴", "꧵", "꧶", "꧷", "꧸", "꧹"], "newa": ["𑑐", "𑑑", "𑑒", "𑑓", "𑑔", "𑑕", "𑑖", "𑑗", "𑑘", "𑑙"], "nkoo": ["߀", "߁", "߂", "߃", "߄", "߅", "߆", "߇", "߈", "߉"], "olck": ["᱐", "᱑", "᱒", "᱓", "᱔", "᱕", "᱖", "᱗", "᱘", "᱙"], "orya": ["୦", "୧", "୨", "୩", "୪", "୫", "୬", "୭", "୮", "୯"], "osma": ["𐒠", "𐒡", "𐒢", "𐒣", "𐒤", "𐒥", "𐒦", "𐒧", "𐒨", "𐒩"], "rohg": ["𐴰", "𐴱", "𐴲", "𐴳", "𐴴", "𐴵", "𐴶", "𐴷", "𐴸", "𐴹"], "saur": ["꣐", "꣑", "꣒", "꣓", "꣔", "꣕", "꣖", "꣗", "꣘", "꣙"], "segment": ["🯰", "🯱", "🯲", "🯳", "🯴", "🯵", "🯶", "🯷", "🯸", "🯹"], "shrd": ["𑇐", "𑇑", "𑇒", "𑇓", "𑇔", "𑇕", "𑇖", "𑇗", "𑇘", "𑇙"], "sind": ["𑋰", "𑋱", "𑋲", "𑋳", "𑋴", "𑋵", "𑋶", "𑋷", "𑋸", "𑋹"], "sinh": ["෦", "෧", "෨", "෩", "෪", "෫", "෬", "෭", "෮", "෯"], "sora": ["𑃰", "𑃱", "𑃲", "𑃳", "𑃴", "𑃵", "𑃶", "𑃷", "𑃸", "𑃹"], "sund": ["᮰", "᮱", "᮲", "᮳", "᮴", "᮵", "᮶", "᮷", "᮸", "᮹"], "takr": ["𑛀", "𑛁", "𑛂", "𑛃", "𑛄", "𑛅", "𑛆", "𑛇", "𑛈", "𑛉"], "talu": ["᧐", "᧑", "᧒", "᧓", "᧔", "᧕", "᧖", "᧗", "᧘", "᧙"], "tamldec": ["௦", "௧", "௨", "௩", "௪", "௫", "௬", "௭", "௮", "௯"], "telu": ["౦", "౧", "౨", "౩", "౪", "౫", "౬", "౭", "౮", "౯"], "thai": ["๐", "๑", "๒", "๓", "๔", "๕", "๖", "๗", "๘", "๙"], "tibt": ["༠", "༡", "༢", "༣", "༤", "༥", "༦", "༧", "༨", "༩"], "tirh": ["𑓐", "𑓑", "𑓒", "𑓓", "𑓔", "𑓕", "𑓖", "𑓗", "𑓘", "𑓙"], "vaii": ["ᘠ", "ᘡ", "ᘢ", "ᘣ", "ᘤ", "ᘥ", "ᘦ", "ᘧ", "ᘨ", "ᘩ"], "wara": ["𑣠", "𑣡", "𑣢", "𑣣", "𑣤", "𑣥", "𑣦", "𑣧", "𑣨", "𑣩"], "wcho": ["𞋰", "𞋱", "𞋲", "𞋳", "𞋴", "𞋵", "𞋶", "𞋷", "𞋸", "𞋹"] }
|
package/lib/ResolveLocale.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export interface ResolveLocaleResult {
|
|
2
|
-
locale: string;
|
|
3
|
-
dataLocale: string;
|
|
4
|
-
[k: string]: any;
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* https://tc39.es/ecma402/#sec-resolvelocale
|
|
8
|
-
*/
|
|
9
|
-
export declare function ResolveLocale<K extends string, D extends {
|
|
10
|
-
[k in K]: any;
|
|
11
|
-
}>(availableLocales: Set<string>, requestedLocales: string[], options: {
|
|
12
|
-
localeMatcher: string;
|
|
13
|
-
[k: string]: string;
|
|
14
|
-
}, relevantExtensionKeys: K[], localeData: Record<string, D | undefined>, getDefaultLocale: () => string): ResolveLocaleResult;
|
|
15
|
-
//# sourceMappingURL=ResolveLocale.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ResolveLocale.d.ts","sourceRoot":"","sources":["../../../../../../packages/ecma402-abstract/ResolveLocale.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACjB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS;KAAE,CAAC,IAAI,CAAC,GAAG,GAAG;CAAC,EACvE,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC7B,gBAAgB,EAAE,MAAM,EAAE,EAC1B,OAAO,EAAE;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,EACrD,qBAAqB,EAAE,CAAC,EAAE,EAC1B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,EACzC,gBAAgB,EAAE,MAAM,MAAM,GAC7B,mBAAmB,CA6ErB"}
|
package/lib/ResolveLocale.js
DELETED
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import { LookupMatcher } from './LookupMatcher';
|
|
2
|
-
import { BestFitMatcher } from './BestFitMatcher';
|
|
3
|
-
import { invariant } from './utils';
|
|
4
|
-
import { UnicodeExtensionValue } from './UnicodeExtensionValue';
|
|
5
|
-
/**
|
|
6
|
-
* https://tc39.es/ecma402/#sec-resolvelocale
|
|
7
|
-
*/
|
|
8
|
-
export function ResolveLocale(availableLocales, requestedLocales, options, relevantExtensionKeys, localeData, getDefaultLocale) {
|
|
9
|
-
var matcher = options.localeMatcher;
|
|
10
|
-
var r;
|
|
11
|
-
if (matcher === 'lookup') {
|
|
12
|
-
r = LookupMatcher(availableLocales, requestedLocales, getDefaultLocale);
|
|
13
|
-
}
|
|
14
|
-
else {
|
|
15
|
-
r = BestFitMatcher(availableLocales, requestedLocales, getDefaultLocale);
|
|
16
|
-
}
|
|
17
|
-
var foundLocale = r.locale;
|
|
18
|
-
var result = { locale: '', dataLocale: foundLocale };
|
|
19
|
-
var supportedExtension = '-u';
|
|
20
|
-
for (var _i = 0, relevantExtensionKeys_1 = relevantExtensionKeys; _i < relevantExtensionKeys_1.length; _i++) {
|
|
21
|
-
var key = relevantExtensionKeys_1[_i];
|
|
22
|
-
invariant(foundLocale in localeData, "Missing locale data for " + foundLocale);
|
|
23
|
-
var foundLocaleData = localeData[foundLocale];
|
|
24
|
-
invariant(typeof foundLocaleData === 'object' && foundLocaleData !== null, "locale data " + key + " must be an object");
|
|
25
|
-
var keyLocaleData = foundLocaleData[key];
|
|
26
|
-
invariant(Array.isArray(keyLocaleData), "keyLocaleData for " + key + " must be an array");
|
|
27
|
-
var value = keyLocaleData[0];
|
|
28
|
-
invariant(typeof value === 'string' || value === null, "value must be string or null but got " + typeof value + " in key " + key);
|
|
29
|
-
var supportedExtensionAddition = '';
|
|
30
|
-
if (r.extension) {
|
|
31
|
-
var requestedValue = UnicodeExtensionValue(r.extension, key);
|
|
32
|
-
if (requestedValue !== undefined) {
|
|
33
|
-
if (requestedValue !== '') {
|
|
34
|
-
if (~keyLocaleData.indexOf(requestedValue)) {
|
|
35
|
-
value = requestedValue;
|
|
36
|
-
supportedExtensionAddition = "-" + key + "-" + value;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
else if (~requestedValue.indexOf('true')) {
|
|
40
|
-
value = 'true';
|
|
41
|
-
supportedExtensionAddition = "-" + key;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
if (key in options) {
|
|
46
|
-
var optionsValue = options[key];
|
|
47
|
-
invariant(typeof optionsValue === 'string' ||
|
|
48
|
-
typeof optionsValue === 'undefined' ||
|
|
49
|
-
optionsValue === null, 'optionsValue must be String, Undefined or Null');
|
|
50
|
-
if (~keyLocaleData.indexOf(optionsValue)) {
|
|
51
|
-
if (optionsValue !== value) {
|
|
52
|
-
value = optionsValue;
|
|
53
|
-
supportedExtensionAddition = '';
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
result[key] = value;
|
|
58
|
-
supportedExtension += supportedExtensionAddition;
|
|
59
|
-
}
|
|
60
|
-
if (supportedExtension.length > 2) {
|
|
61
|
-
var privateIndex = foundLocale.indexOf('-x-');
|
|
62
|
-
if (privateIndex === -1) {
|
|
63
|
-
foundLocale = foundLocale + supportedExtension;
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
var preExtension = foundLocale.slice(0, privateIndex);
|
|
67
|
-
var postExtension = foundLocale.slice(privateIndex, foundLocale.length);
|
|
68
|
-
foundLocale = preExtension + supportedExtension + postExtension;
|
|
69
|
-
}
|
|
70
|
-
foundLocale = Intl.getCanonicalLocales(foundLocale)[0];
|
|
71
|
-
}
|
|
72
|
-
result.locale = foundLocale;
|
|
73
|
-
return result;
|
|
74
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"UnicodeExtensionValue.d.ts","sourceRoot":"","sources":["../../../../../../packages/ecma402-abstract/UnicodeExtensionValue.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,sBAoCnE"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { invariant } from './utils';
|
|
2
|
-
/**
|
|
3
|
-
* https://tc39.es/ecma402/#sec-unicodeextensionvalue
|
|
4
|
-
* @param extension
|
|
5
|
-
* @param key
|
|
6
|
-
*/
|
|
7
|
-
export function UnicodeExtensionValue(extension, key) {
|
|
8
|
-
invariant(key.length === 2, 'key must have 2 elements');
|
|
9
|
-
var size = extension.length;
|
|
10
|
-
var searchValue = "-" + key + "-";
|
|
11
|
-
var pos = extension.indexOf(searchValue);
|
|
12
|
-
if (pos !== -1) {
|
|
13
|
-
var start = pos + 4;
|
|
14
|
-
var end = start;
|
|
15
|
-
var k = start;
|
|
16
|
-
var done = false;
|
|
17
|
-
while (!done) {
|
|
18
|
-
var e = extension.indexOf('-', k);
|
|
19
|
-
var len = void 0;
|
|
20
|
-
if (e === -1) {
|
|
21
|
-
len = size - k;
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
len = e - k;
|
|
25
|
-
}
|
|
26
|
-
if (len === 2) {
|
|
27
|
-
done = true;
|
|
28
|
-
}
|
|
29
|
-
else if (e === -1) {
|
|
30
|
-
end = size;
|
|
31
|
-
done = true;
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
end = e;
|
|
35
|
-
k = e + 1;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
return extension.slice(start, end);
|
|
39
|
-
}
|
|
40
|
-
searchValue = "-" + key;
|
|
41
|
-
pos = extension.indexOf(searchValue);
|
|
42
|
-
if (pos !== -1 && pos + 3 === size) {
|
|
43
|
-
return '';
|
|
44
|
-
}
|
|
45
|
-
return undefined;
|
|
46
|
-
}
|