@temboplus/frontend-core 0.2.5 → 0.2.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/README.md +63 -14
- package/esm/src/data/countries.d.ts +12 -2
- package/esm/src/data/countries.js +496 -248
- package/esm/src/models/amount/amount.d.ts.map +1 -1
- package/esm/src/models/amount/amount.js +1 -1
- package/esm/src/models/bank/bank.d.ts +127 -0
- package/esm/src/models/bank/bank.d.ts.map +1 -1
- package/esm/src/models/bank/bank.js +264 -7
- package/esm/src/models/bank/index.d.ts +0 -1
- package/esm/src/models/bank/index.d.ts.map +1 -1
- package/esm/src/models/bank/index.js +0 -1
- package/esm/src/models/country/country.d.ts +162 -24
- package/esm/src/models/country/country.d.ts.map +1 -1
- package/esm/src/models/country/country.js +442 -42
- package/esm/src/models/country/index.d.ts +1 -1
- package/esm/src/models/country/index.d.ts.map +1 -1
- package/esm/src/models/country/index.js +1 -1
- package/esm/src/models/country/types.d.ts +53 -0
- package/esm/src/models/country/types.d.ts.map +1 -0
- package/esm/src/models/country/types.js +43 -0
- package/esm/src/models/currency/currency.d.ts +127 -4
- package/esm/src/models/currency/currency.d.ts.map +1 -1
- package/esm/src/models/currency/currency.js +229 -11
- package/esm/src/models/currency/index.d.ts +1 -1
- package/esm/src/models/currency/index.d.ts.map +1 -1
- package/esm/src/models/currency/index.js +1 -1
- package/esm/src/models/currency/types.d.ts +20 -0
- package/esm/src/models/currency/types.d.ts.map +1 -0
- package/esm/src/models/currency/types.js +13 -0
- package/esm/src/models/phone_number/global/phone_number.d.ts +3 -2
- package/esm/src/models/phone_number/global/phone_number.d.ts.map +1 -1
- package/esm/src/models/phone_number/global/service.d.ts +27 -20
- package/esm/src/models/phone_number/global/service.d.ts.map +1 -1
- package/esm/src/models/phone_number/global/service.js +61 -40
- package/package.json +1 -1
- package/script/src/data/countries.d.ts +12 -2
- package/script/src/data/countries.js +496 -248
- package/script/src/models/amount/amount.d.ts.map +1 -1
- package/script/src/models/amount/amount.js +4 -4
- package/script/src/models/bank/bank.d.ts +127 -0
- package/script/src/models/bank/bank.d.ts.map +1 -1
- package/script/src/models/bank/bank.js +273 -12
- package/script/src/models/bank/index.d.ts +0 -1
- package/script/src/models/bank/index.d.ts.map +1 -1
- package/script/src/models/bank/index.js +0 -1
- package/script/src/models/country/country.d.ts +162 -24
- package/script/src/models/country/country.d.ts.map +1 -1
- package/script/src/models/country/country.js +453 -49
- package/script/src/models/country/index.d.ts +1 -1
- package/script/src/models/country/index.d.ts.map +1 -1
- package/script/src/models/country/index.js +1 -1
- package/script/src/models/country/types.d.ts +53 -0
- package/script/src/models/country/types.d.ts.map +1 -0
- package/script/src/models/country/types.js +46 -0
- package/script/src/models/currency/currency.d.ts +127 -4
- package/script/src/models/currency/currency.d.ts.map +1 -1
- package/script/src/models/currency/currency.js +237 -15
- package/script/src/models/currency/index.d.ts +1 -1
- package/script/src/models/currency/index.d.ts.map +1 -1
- package/script/src/models/currency/index.js +1 -1
- package/script/src/models/currency/types.d.ts +20 -0
- package/script/src/models/currency/types.d.ts.map +1 -0
- package/script/src/models/currency/types.js +14 -0
- package/script/src/models/phone_number/global/phone_number.d.ts +3 -2
- package/script/src/models/phone_number/global/phone_number.d.ts.map +1 -1
- package/script/src/models/phone_number/global/service.d.ts +27 -20
- package/script/src/models/phone_number/global/service.d.ts.map +1 -1
- package/script/src/models/phone_number/global/service.js +61 -40
- package/esm/src/models/bank/service.d.ts +0 -106
- package/esm/src/models/bank/service.d.ts.map +0 -1
- package/esm/src/models/bank/service.js +0 -240
- package/esm/src/models/country/service.d.ts +0 -111
- package/esm/src/models/country/service.d.ts.map +0 -1
- package/esm/src/models/country/service.js +0 -366
- package/esm/src/models/currency/service.d.ts +0 -96
- package/esm/src/models/currency/service.d.ts.map +0 -1
- package/esm/src/models/currency/service.js +0 -194
- package/script/src/models/bank/service.d.ts +0 -106
- package/script/src/models/bank/service.d.ts.map +0 -1
- package/script/src/models/bank/service.js +0 -247
- package/script/src/models/country/service.d.ts +0 -111
- package/script/src/models/country/service.d.ts.map +0 -1
- package/script/src/models/country/service.js +0 -373
- package/script/src/models/currency/service.d.ts +0 -96
- package/script/src/models/currency/service.d.ts.map +0 -1
- package/script/src/models/currency/service.js +0 -201
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Type definitions for ISO country codes
|
|
3
|
+
*
|
|
4
|
+
* These types provide type-safe representations of standard ISO codes:
|
|
5
|
+
* - CountryCode: ISO 3166-1 alpha-2 country codes
|
|
6
|
+
* - CountryCodeISO3: ISO 3166-1 alpha-3 country codes (three letters)
|
|
7
|
+
*
|
|
8
|
+
* Benefits:
|
|
9
|
+
* - Type-safety at compile time
|
|
10
|
+
* - Zero runtime overhead (compile away to strings)
|
|
11
|
+
* - Autocompletion in modern IDEs
|
|
12
|
+
* - Protection against typos and invalid values
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* ISO 3166-1 alpha-2 country codes
|
|
16
|
+
*
|
|
17
|
+
* These two-letter codes represent countries and territories based on the ISO 3166 standard.
|
|
18
|
+
* Example: "US" for United States, "JP" for Japan, "DE" for Germany
|
|
19
|
+
*/
|
|
20
|
+
export type ISO2CountryCode = "AF" | "AX" | "AL" | "DZ" | "AS" | "AD" | "AO" | "AI" | "AQ" | "AG" | "AR" | "AM" | "AW" | "AU" | "AT" | "AZ" | "BS" | "BH" | "BD" | "BB" | "BY" | "BE" | "BZ" | "BJ" | "BM" | "BT" | "BO" | "BA" | "BW" | "BV" | "BR" | "IO" | "VG" | "BN" | "BG" | "BF" | "BI" | "CV" | "KH" | "CM" | "CA" | "KY" | "CF" | "TD" | "CL" | "CN" | "CX" | "CC" | "CO" | "KM" | "CG" | "CK" | "CR" | "CI" | "HR" | "CU" | "CY" | "CZ" | "CD" | "DK" | "DJ" | "DM" | "DO" | "EC" | "EG" | "SV" | "GQ" | "ER" | "EE" | "SZ" | "ET" | "FK" | "FO" | "FJ" | "FI" | "FR" | "GF" | "PF" | "TF" | "GA" | "GM" | "GE" | "DE" | "GH" | "GI" | "GR" | "GL" | "GD" | "GP" | "GU" | "GT" | "GG" | "GN" | "GW" | "GY" | "HT" | "HM" | "VA" | "HN" | "HK" | "HU" | "IS" | "IN" | "ID" | "IR" | "IQ" | "IE" | "IM" | "IL" | "IT" | "JM" | "JP" | "JE" | "JO" | "KZ" | "KE" | "KI" | "KP" | "KR" | "KW" | "KG" | "LA" | "LV" | "LB" | "LS" | "LR" | "LY" | "LI" | "LT" | "LU" | "MO" | "MG" | "MW" | "MY" | "MV" | "ML" | "MT" | "MH" | "MQ" | "MR" | "MU" | "YT" | "MX" | "FM" | "MD" | "MC" | "MN" | "ME" | "MS" | "MA" | "MZ" | "MM" | "NA" | "NR" | "NP" | "NL" | "NC" | "NZ" | "NI" | "NE" | "NG" | "NU" | "NF" | "MK" | "MP" | "NO" | "OM" | "PK" | "PW" | "PS" | "PA" | "PG" | "PY" | "PE" | "PH" | "PN" | "PL" | "PT" | "PR" | "QA" | "RE" | "RO" | "RU" | "RW" | "SH" | "KN" | "LC" | "PM" | "VC" | "WS" | "SM" | "ST" | "SA" | "SN" | "RS" | "SC" | "SL" | "SG" | "SK" | "SI" | "SB" | "SO" | "ZA" | "GS" | "SS" | "ES" | "LK" | "SD" | "SR" | "SJ" | "SE" | "CH" | "SY" | "TW" | "TJ" | "TZ" | "TH" | "TL" | "TG" | "TK" | "TO" | "TT" | "TN" | "TR" | "TM" | "TC" | "TV" | "VI" | "UG" | "UA" | "AE" | "GB" | "US" | "UM" | "UY" | "UZ" | "VU" | "VE" | "VN" | "WF" | "EH" | "YE" | "ZM" | "ZW";
|
|
21
|
+
/**
|
|
22
|
+
* ISO 3166-1 alpha-3 country codes
|
|
23
|
+
*
|
|
24
|
+
* These three-letter codes represent countries and territories based on the ISO 3166 standard.
|
|
25
|
+
* Example: "USA" for United States, "JPN" for Japan, "DEU" for Germany
|
|
26
|
+
*/
|
|
27
|
+
export type ISO3CountryCode = "AFG" | "ALA" | "ALB" | "DZA" | "ASM" | "AND" | "AGO" | "AIA" | "ATA" | "ATG" | "ARG" | "ARM" | "ABW" | "AUS" | "AUT" | "AZE" | "BHS" | "BHR" | "BGD" | "BRB" | "BLR" | "BEL" | "BLZ" | "BEN" | "BMU" | "BTN" | "BOL" | "BIH" | "BWA" | "BVT" | "BRA" | "IOT" | "VGB" | "BRN" | "BGR" | "BFA" | "BDI" | "CPV" | "KHM" | "CMR" | "CAN" | "CYM" | "CAF" | "TCD" | "CHL" | "CHN" | "CXR" | "CCK" | "COL" | "COM" | "COG" | "COK" | "CRI" | "CIV" | "HRV" | "CUB" | "CYP" | "CZE" | "COD" | "DNK" | "DJI" | "DMA" | "DOM" | "ECU" | "EGY" | "SLV" | "GNQ" | "ERI" | "EST" | "SWZ" | "ETH" | "FLK" | "FRO" | "FJI" | "FIN" | "FRA" | "GUF" | "PYF" | "ATF" | "GAB" | "GMB" | "GEO" | "DEU" | "GHA" | "GIB" | "GRC" | "GRL" | "GRD" | "GLP" | "GUM" | "GTM" | "GGY" | "GIN" | "GNB" | "GUY" | "HTI" | "HMD" | "VAT" | "HND" | "HKG" | "HUN" | "ISL" | "IND" | "IDN" | "IRN" | "IRQ" | "IRL" | "IMN" | "ISR" | "ITA" | "JAM" | "JPN" | "JEY" | "JOR" | "KAZ" | "KEN" | "KIR" | "KWT" | "KGZ" | "LAO" | "LVA" | "LBN" | "LSO" | "LBR" | "LBY" | "LIE" | "LTU" | "LUX" | "MAC" | "MDG" | "MWI" | "MYS" | "MDV" | "MLI" | "MLT" | "MHL" | "MTQ" | "MRT" | "MUS" | "MYT" | "MEX" | "FSM" | "MDA" | "MCO" | "MNG" | "MNE" | "MSR" | "MAR" | "MOZ" | "MMR" | "NAM" | "NRU" | "NPL" | "NLD" | "NCL" | "NZL" | "NIC" | "NER" | "NGA" | "NIU" | "NFK" | "PRK" | "MKD" | "MNP" | "NOR" | "OMN" | "PAK" | "PLW" | "PSE" | "PAN" | "PNG" | "PRY" | "PER" | "PHL" | "PCN" | "POL" | "PRT" | "PRI" | "QAT" | "REU" | "ROU" | "RUS" | "RWA" | "SHN" | "KNA" | "LCA" | "SPM" | "VCT" | "WSM" | "SMR" | "STP" | "SAU" | "SEN" | "SRB" | "SYC" | "SLE" | "SGP" | "SVK" | "SVN" | "SLB" | "SOM" | "ZAF" | "SGS" | "KOR" | "SSD" | "ESP" | "LKA" | "SDN" | "SUR" | "SJM" | "SWE" | "CHE" | "SYR" | "TWN" | "TJK" | "TZA" | "THA" | "TLS" | "TGO" | "TKL" | "TON" | "TTO" | "TUN" | "TUR" | "TKM" | "TCA" | "TUV" | "VIR" | "UGA" | "UKR" | "ARE" | "GBR" | "USA" | "UMI" | "URY" | "UZB" | "VUT" | "VEN" | "VNM" | "WLF" | "ESH" | "YEM" | "ZMB" | "ZWE";
|
|
28
|
+
/**
|
|
29
|
+
* Maps ISO-2 country codes to ISO-3 country codes
|
|
30
|
+
*/
|
|
31
|
+
export declare const ISO2_TO_ISO3_MAP: Record<ISO2CountryCode, ISO3CountryCode>;
|
|
32
|
+
/**
|
|
33
|
+
* Represents an ISO country code, accepting either ISO 3166-1 alpha-2 (two-letter)
|
|
34
|
+
* or ISO 3166-1 alpha-3 (three-letter) formats.
|
|
35
|
+
*
|
|
36
|
+
* This union type allows functions to accept either format for flexibility,
|
|
37
|
+
* while still maintaining type safety and validation.
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* // Valid uses:
|
|
41
|
+
* const usa1: CountryCode = "US"; // ISO2
|
|
42
|
+
* const usa2: CountryCode = "USA"; // ISO3
|
|
43
|
+
* const japan1: CountryCode = "JP"; // ISO2
|
|
44
|
+
* const japan2: CountryCode = "JPN"; // ISO3
|
|
45
|
+
*
|
|
46
|
+
* // Type checking will catch invalid codes:
|
|
47
|
+
* const invalid: CountryCode = "INVALID"; // Error
|
|
48
|
+
*
|
|
49
|
+
* @see ISO2CountryCode - For two-letter country codes only
|
|
50
|
+
* @see ISO3CountryCode - For three-letter country codes only
|
|
51
|
+
*/
|
|
52
|
+
export type CountryCode = ISO2CountryCode | ISO3CountryCode;
|
|
53
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/src/models/country/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GACvB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GACnE,IAAI,GAAG,IAAI,G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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @fileoverview Type definitions for ISO country codes
|
|
4
|
+
*
|
|
5
|
+
* These types provide type-safe representations of standard ISO codes:
|
|
6
|
+
* - CountryCode: ISO 3166-1 alpha-2 country codes
|
|
7
|
+
* - CountryCodeISO3: ISO 3166-1 alpha-3 country codes (three letters)
|
|
8
|
+
*
|
|
9
|
+
* Benefits:
|
|
10
|
+
* - Type-safety at compile time
|
|
11
|
+
* - Zero runtime overhead (compile away to strings)
|
|
12
|
+
* - Autocompletion in modern IDEs
|
|
13
|
+
* - Protection against typos and invalid values
|
|
14
|
+
*/
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.ISO2_TO_ISO3_MAP = void 0;
|
|
17
|
+
/**
|
|
18
|
+
* Maps ISO-2 country codes to ISO-3 country codes
|
|
19
|
+
*/
|
|
20
|
+
exports.ISO2_TO_ISO3_MAP = {
|
|
21
|
+
"AF": "AFG", "AX": "ALA", "AL": "ALB", "DZ": "DZA", "AS": "ASM", "AD": "AND", "AO": "AGO", "AI": "AIA", "AQ": "ATA", "AG": "ATG",
|
|
22
|
+
"AR": "ARG", "AM": "ARM", "AW": "ABW", "AU": "AUS", "AT": "AUT", "AZ": "AZE", "BS": "BHS", "BH": "BHR", "BD": "BGD", "BB": "BRB",
|
|
23
|
+
"BY": "BLR", "BE": "BEL", "BZ": "BLZ", "BJ": "BEN", "BM": "BMU", "BT": "BTN", "BO": "BOL", "BA": "BIH", "BW": "BWA", "BV": "BVT",
|
|
24
|
+
"BR": "BRA", "IO": "IOT", "VG": "VGB", "BN": "BRN", "BG": "BGR", "BF": "BFA", "BI": "BDI", "CV": "CPV", "KH": "KHM", "CM": "CMR",
|
|
25
|
+
"CA": "CAN", "KY": "CYM", "CF": "CAF", "TD": "TCD", "CL": "CHL", "CN": "CHN", "CX": "CXR", "CC": "CCK", "CO": "COL", "KM": "COM",
|
|
26
|
+
"CG": "COG", "CK": "COK", "CR": "CRI", "CI": "CIV", "HR": "HRV", "CU": "CUB", "CY": "CYP", "CZ": "CZE", "CD": "COD", "DK": "DNK",
|
|
27
|
+
"DJ": "DJI", "DM": "DMA", "DO": "DOM", "EC": "ECU", "EG": "EGY", "SV": "SLV", "GQ": "GNQ", "ER": "ERI", "EE": "EST", "SZ": "SWZ",
|
|
28
|
+
"ET": "ETH", "FK": "FLK", "FO": "FRO", "FJ": "FJI", "FI": "FIN", "FR": "FRA", "GF": "GUF", "PF": "PYF", "TF": "ATF", "GA": "GAB",
|
|
29
|
+
"GM": "GMB", "GE": "GEO", "DE": "DEU", "GH": "GHA", "GI": "GIB", "GR": "GRC", "GL": "GRL", "GD": "GRD", "GP": "GLP", "GU": "GUM",
|
|
30
|
+
"GT": "GTM", "GG": "GGY", "GN": "GIN", "GW": "GNB", "GY": "GUY", "HT": "HTI", "HM": "HMD", "VA": "VAT", "HN": "HND", "HK": "HKG",
|
|
31
|
+
"HU": "HUN", "IS": "ISL", "IN": "IND", "ID": "IDN", "IR": "IRN", "IQ": "IRQ", "IE": "IRL", "IM": "IMN", "IL": "ISR", "IT": "ITA",
|
|
32
|
+
"JM": "JAM", "JP": "JPN", "JE": "JEY", "JO": "JOR", "KZ": "KAZ", "KE": "KEN", "KI": "KIR", "KW": "KWT", "KG": "KGZ", "LA": "LAO",
|
|
33
|
+
"LV": "LVA", "LB": "LBN", "LS": "LSO", "LR": "LBR", "LY": "LBY", "LI": "LIE", "LT": "LTU", "LU": "LUX", "MO": "MAC", "MG": "MDG",
|
|
34
|
+
"MW": "MWI", "MY": "MYS", "MV": "MDV", "ML": "MLI", "MT": "MLT", "MH": "MHL", "MQ": "MTQ", "MR": "MRT", "MU": "MUS", "YT": "MYT",
|
|
35
|
+
"MX": "MEX", "FM": "FSM", "MD": "MDA", "MC": "MCO", "MN": "MNG", "ME": "MNE", "MS": "MSR", "MA": "MAR", "MZ": "MOZ", "MM": "MMR",
|
|
36
|
+
"NA": "NAM", "NR": "NRU", "NP": "NPL", "NL": "NLD", "NC": "NCL", "NZ": "NZL", "NI": "NIC", "NE": "NER", "NG": "NGA", "NU": "NIU",
|
|
37
|
+
"NF": "NFK", "KP": "PRK", "MK": "MKD", "MP": "MNP", "NO": "NOR", "OM": "OMN", "PK": "PAK", "PW": "PLW", "PS": "PSE", "PA": "PAN",
|
|
38
|
+
"PG": "PNG", "PY": "PRY", "PE": "PER", "PH": "PHL", "PN": "PCN", "PL": "POL", "PT": "PRT", "PR": "PRI", "QA": "QAT", "RE": "REU",
|
|
39
|
+
"RO": "ROU", "RU": "RUS", "RW": "RWA", "SH": "SHN", "KN": "KNA", "LC": "LCA", "PM": "SPM", "VC": "VCT", "WS": "WSM", "SM": "SMR",
|
|
40
|
+
"ST": "STP", "SA": "SAU", "SN": "SEN", "RS": "SRB", "SC": "SYC", "SL": "SLE", "SG": "SGP", "SK": "SVK", "SI": "SVN", "SB": "SLB",
|
|
41
|
+
"SO": "SOM", "ZA": "ZAF", "GS": "SGS", "KR": "KOR", "SS": "SSD", "ES": "ESP", "LK": "LKA", "SD": "SDN", "SR": "SUR", "SJ": "SJM",
|
|
42
|
+
"SE": "SWE", "CH": "CHE", "SY": "SYR", "TW": "TWN", "TJ": "TJK", "TZ": "TZA", "TH": "THA", "TL": "TLS", "TG": "TGO", "TK": "TKL",
|
|
43
|
+
"TO": "TON", "TT": "TTO", "TN": "TUN", "TR": "TUR", "TM": "TKM", "TC": "TCA", "TV": "TUV", "VI": "VIR", "UG": "UGA", "UA": "UKR",
|
|
44
|
+
"AE": "ARE", "GB": "GBR", "US": "USA", "UM": "UMI", "UY": "URY", "UZ": "UZB", "VU": "VUT", "VE": "VEN", "VN": "VNM", "WF": "WLF",
|
|
45
|
+
"EH": "ESH", "YE": "YEM", "ZM": "ZMB", "ZW": "ZWE"
|
|
46
|
+
};
|
|
@@ -1,3 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview This file contains both the Currency class and CurrencyService class.
|
|
3
|
+
*
|
|
4
|
+
* ARCHITECTURE NOTE: Currency and CurrencyService Classes
|
|
5
|
+
* ======================================================
|
|
6
|
+
*
|
|
7
|
+
* These two classes have been intentionally placed in the same file to resolve
|
|
8
|
+
* a circular dependency issue. The original implementation had these in separate files:
|
|
9
|
+
*
|
|
10
|
+
* - Currency class: Defines currency properties and static accessors
|
|
11
|
+
* - CurrencyService class: Loads currency data and provides instance methods
|
|
12
|
+
*
|
|
13
|
+
* The circular dependency occurred because:
|
|
14
|
+
* 1. Currency needed CurrencyService to initialize its static properties
|
|
15
|
+
* 2. CurrencyService needed Currency to create Currency instances
|
|
16
|
+
*
|
|
17
|
+
* Previous attempts to solve this used setTimeout(0) to defer static initialization,
|
|
18
|
+
* but this created race conditions where static properties weren't immediately available
|
|
19
|
+
* after import (Currency.AFN would be undefined on first access).
|
|
20
|
+
*
|
|
21
|
+
* By combining both classes in a single file:
|
|
22
|
+
* - We ensure proper initialization order
|
|
23
|
+
* - All static properties are immediately available after import
|
|
24
|
+
* - The public API remains unchanged
|
|
25
|
+
*
|
|
26
|
+
* This approach follows the principle that closely related classes with circular
|
|
27
|
+
* dependencies are best managed in a unified module.
|
|
28
|
+
*/
|
|
29
|
+
import type { CurrencyCode } from "./types.js";
|
|
1
30
|
/**
|
|
2
31
|
* Represents a currency with essential details.
|
|
3
32
|
* @class Currency
|
|
@@ -298,10 +327,10 @@ export declare class Currency {
|
|
|
298
327
|
toString(): string;
|
|
299
328
|
/**
|
|
300
329
|
* Retrieves a currency by its ISO code.
|
|
301
|
-
* @param {
|
|
330
|
+
* @param {CurrencyCode} code The ISO code of the currency.
|
|
302
331
|
* @returns {Currency | undefined} The currency corresponding to the ISO code or `undefined` if not found.
|
|
303
332
|
*/
|
|
304
|
-
static fromCode(code:
|
|
333
|
+
static fromCode(code: CurrencyCode): Currency | undefined;
|
|
305
334
|
/**
|
|
306
335
|
* Retrieves a currency by its name.
|
|
307
336
|
* @param {string} currencyName The name of the currency.
|
|
@@ -318,7 +347,7 @@ export declare class Currency {
|
|
|
318
347
|
* @param code The currency code to validate
|
|
319
348
|
* @returns True if the currency code is valid
|
|
320
349
|
*/
|
|
321
|
-
static isValidCode(code?:
|
|
350
|
+
static isValidCode(code?: CurrencyCode | null): boolean;
|
|
322
351
|
/**
|
|
323
352
|
* Validates if a given currency name is valid
|
|
324
353
|
* @param currencyName The currency name to validate
|
|
@@ -330,7 +359,7 @@ export declare class Currency {
|
|
|
330
359
|
* @param input The currency name or ISO code
|
|
331
360
|
* @returns A Currency instance if valid input, undefined otherwise
|
|
332
361
|
*/
|
|
333
|
-
static from(input: string): Currency | undefined;
|
|
362
|
+
static from(input: string | CurrencyCode): Currency | undefined;
|
|
334
363
|
/**
|
|
335
364
|
* Checks if an unknown value is a Currency instance
|
|
336
365
|
* @param obj The value to validate
|
|
@@ -338,4 +367,98 @@ export declare class Currency {
|
|
|
338
367
|
*/
|
|
339
368
|
static is(obj: unknown): obj is Currency;
|
|
340
369
|
}
|
|
370
|
+
/**
|
|
371
|
+
* Service for managing currency data.
|
|
372
|
+
* @class CurrencyService
|
|
373
|
+
*/
|
|
374
|
+
export declare class CurrencyService {
|
|
375
|
+
private static instance;
|
|
376
|
+
private currencyList;
|
|
377
|
+
private currencyRecord;
|
|
378
|
+
private nameRecord;
|
|
379
|
+
private staticReferences;
|
|
380
|
+
private constructor();
|
|
381
|
+
/**
|
|
382
|
+
* Gets the singleton instance of CurrencyService.
|
|
383
|
+
* Creates the instance if it doesn't exist.
|
|
384
|
+
* @static
|
|
385
|
+
* @returns {CurrencyService} The singleton instance
|
|
386
|
+
*/
|
|
387
|
+
static getInstance(): CurrencyService;
|
|
388
|
+
/**
|
|
389
|
+
* Initializes the service with currency data.
|
|
390
|
+
* Should be called once when your application starts.
|
|
391
|
+
*/
|
|
392
|
+
private initialize;
|
|
393
|
+
/**
|
|
394
|
+
* Gets all currencies.
|
|
395
|
+
* @returns {Currency[]} Array of all currencies
|
|
396
|
+
*/
|
|
397
|
+
getAll(): Currency[];
|
|
398
|
+
/**
|
|
399
|
+
* Gets all currencies as a record.
|
|
400
|
+
* @returns {Record<string, Currency>} Record of currency codes and currency objects
|
|
401
|
+
*/
|
|
402
|
+
getAllAsRecord(): Record<string, Currency>;
|
|
403
|
+
/**
|
|
404
|
+
* Gets static currency references to be used by the Currency class.
|
|
405
|
+
* @returns {Map<string, Currency>} Map of static references
|
|
406
|
+
*/
|
|
407
|
+
getStaticReferences(): Map<string, Currency>;
|
|
408
|
+
/**
|
|
409
|
+
* Retrieves a currency by its ISO code.
|
|
410
|
+
* @param {string} code The ISO code of the currency.
|
|
411
|
+
* @returns {Currency | undefined} The currency corresponding to the ISO code or `undefined` if not found.
|
|
412
|
+
*/
|
|
413
|
+
fromCode(code: string): Currency | undefined;
|
|
414
|
+
/**
|
|
415
|
+
* Retrieves a currency by its name.
|
|
416
|
+
* @param {string} currencyName The name of the currency.
|
|
417
|
+
* @returns {Currency | undefined} The currency corresponding to the name or `undefined` if not found.
|
|
418
|
+
*/
|
|
419
|
+
fromName(currencyName: string): Currency | undefined;
|
|
420
|
+
/**
|
|
421
|
+
* Validates if a given ISO currency code is valid
|
|
422
|
+
*
|
|
423
|
+
* @param {string | null | undefined} code - The currency code to validate.
|
|
424
|
+
* Should be a three-letter ISO currency code (e.g., 'USD', 'EUR').
|
|
425
|
+
*
|
|
426
|
+
* @returns {boolean} Returns true if:
|
|
427
|
+
* - The currency code is not null/undefined
|
|
428
|
+
* - The currency code successfully resolves to a valid Currency instance
|
|
429
|
+
* Returns false otherwise.
|
|
430
|
+
*/
|
|
431
|
+
isValidCode(code?: string | null): boolean;
|
|
432
|
+
/**
|
|
433
|
+
* Validates if a given currency name is valid
|
|
434
|
+
*
|
|
435
|
+
* @param {string | null | undefined} currencyName - The currency name to validate.
|
|
436
|
+
*
|
|
437
|
+
* @returns {boolean} Returns true if:
|
|
438
|
+
* - The currency name is not null/undefined
|
|
439
|
+
* - The currency name successfully resolves to a valid Currency instance
|
|
440
|
+
* Returns false otherwise.
|
|
441
|
+
*/
|
|
442
|
+
isValidName(currencyName?: string | null): boolean;
|
|
443
|
+
/**
|
|
444
|
+
* Gets a regex-ready pattern matching all currency symbols
|
|
445
|
+
* Pattern is memoized for performance
|
|
446
|
+
* @returns {string} Pipe-separated pattern of escaped currency symbols
|
|
447
|
+
*
|
|
448
|
+
* @example
|
|
449
|
+
* const pattern = currencyService.getCurrencySymbolPattern();
|
|
450
|
+
* // Returns something like: "\$|€|\£|¥"
|
|
451
|
+
*/
|
|
452
|
+
getCurrencySymbolPattern(): string;
|
|
453
|
+
/**
|
|
454
|
+
* Escapes special characters in a string for use in regular expressions
|
|
455
|
+
* @private
|
|
456
|
+
* @param {string} string - The string to escape
|
|
457
|
+
* @returns {string} The escaped string
|
|
458
|
+
*
|
|
459
|
+
* @example
|
|
460
|
+
* private escapeRegExp("$") // Returns "\$"
|
|
461
|
+
*/
|
|
462
|
+
private escapeRegExp;
|
|
463
|
+
}
|
|
341
464
|
//# sourceMappingURL=currency.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"currency.d.ts","sourceRoot":"","sources":["../../../../src/src/models/currency/currency.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,qBAAa,QAAQ;IA2PjB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,WAAW;IA/P9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC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"}
|
|
1
|
+
{"version":3,"file":"currency.d.ts","sourceRoot":"","sources":["../../../../src/src/models/currency/currency.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;;GAGG;AACH,qBAAa,QAAQ;IA2PjB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,WAAW;IA/P9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAC9B,MA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"}
|
|
@@ -1,7 +1,38 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @fileoverview This file contains both the Currency class and CurrencyService class.
|
|
4
|
+
*
|
|
5
|
+
* ARCHITECTURE NOTE: Currency and CurrencyService Classes
|
|
6
|
+
* ======================================================
|
|
7
|
+
*
|
|
8
|
+
* These two classes have been intentionally placed in the same file to resolve
|
|
9
|
+
* a circular dependency issue. The original implementation had these in separate files:
|
|
10
|
+
*
|
|
11
|
+
* - Currency class: Defines currency properties and static accessors
|
|
12
|
+
* - CurrencyService class: Loads currency data and provides instance methods
|
|
13
|
+
*
|
|
14
|
+
* The circular dependency occurred because:
|
|
15
|
+
* 1. Currency needed CurrencyService to initialize its static properties
|
|
16
|
+
* 2. CurrencyService needed Currency to create Currency instances
|
|
17
|
+
*
|
|
18
|
+
* Previous attempts to solve this used setTimeout(0) to defer static initialization,
|
|
19
|
+
* but this created race conditions where static properties weren't immediately available
|
|
20
|
+
* after import (Currency.AFN would be undefined on first access).
|
|
21
|
+
*
|
|
22
|
+
* By combining both classes in a single file:
|
|
23
|
+
* - We ensure proper initialization order
|
|
24
|
+
* - All static properties are immediately available after import
|
|
25
|
+
* - The public API remains unchanged
|
|
26
|
+
*
|
|
27
|
+
* This approach follows the principle that closely related classes with circular
|
|
28
|
+
* dependencies are best managed in a unified module.
|
|
29
|
+
*/
|
|
30
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
31
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
32
|
+
};
|
|
2
33
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Currency = void 0;
|
|
4
|
-
const
|
|
34
|
+
exports.CurrencyService = exports.Currency = void 0;
|
|
35
|
+
const currencies_js_1 = __importDefault(require("../../data/currencies.js"));
|
|
5
36
|
/**
|
|
6
37
|
* Represents a currency with essential details.
|
|
7
38
|
* @class Currency
|
|
@@ -119,11 +150,11 @@ class Currency {
|
|
|
119
150
|
}
|
|
120
151
|
/**
|
|
121
152
|
* Retrieves a currency by its ISO code.
|
|
122
|
-
* @param {
|
|
153
|
+
* @param {CurrencyCode} code The ISO code of the currency.
|
|
123
154
|
* @returns {Currency | undefined} The currency corresponding to the ISO code or `undefined` if not found.
|
|
124
155
|
*/
|
|
125
156
|
static fromCode(code) {
|
|
126
|
-
return
|
|
157
|
+
return CurrencyService.getInstance().fromCode(code);
|
|
127
158
|
}
|
|
128
159
|
/**
|
|
129
160
|
* Retrieves a currency by its name.
|
|
@@ -131,14 +162,14 @@ class Currency {
|
|
|
131
162
|
* @returns {Currency | undefined} The currency corresponding to the name or `undefined` if not found.
|
|
132
163
|
*/
|
|
133
164
|
static fromName(currencyName) {
|
|
134
|
-
return
|
|
165
|
+
return CurrencyService.getInstance().fromName(currencyName);
|
|
135
166
|
}
|
|
136
167
|
/**
|
|
137
168
|
* Returns all available currencies.
|
|
138
169
|
* @returns {Currency[]} Array of all currencies
|
|
139
170
|
*/
|
|
140
171
|
static getAll() {
|
|
141
|
-
return
|
|
172
|
+
return CurrencyService.getInstance().getAll();
|
|
142
173
|
}
|
|
143
174
|
/**
|
|
144
175
|
* Validates if a given currency code is valid
|
|
@@ -173,6 +204,7 @@ class Currency {
|
|
|
173
204
|
const text = input.trim();
|
|
174
205
|
if (text.length === 0)
|
|
175
206
|
return undefined;
|
|
207
|
+
// deno-lint-ignore no-explicit-any
|
|
176
208
|
const currency1 = Currency.fromCode(text);
|
|
177
209
|
if (currency1)
|
|
178
210
|
return currency1;
|
|
@@ -211,19 +243,209 @@ class Currency {
|
|
|
211
243
|
}
|
|
212
244
|
}
|
|
213
245
|
exports.Currency = Currency;
|
|
246
|
+
/**
|
|
247
|
+
* Service for managing currency data.
|
|
248
|
+
* @class CurrencyService
|
|
249
|
+
*/
|
|
250
|
+
class CurrencyService {
|
|
251
|
+
constructor() {
|
|
252
|
+
Object.defineProperty(this, "currencyList", {
|
|
253
|
+
enumerable: true,
|
|
254
|
+
configurable: true,
|
|
255
|
+
writable: true,
|
|
256
|
+
value: []
|
|
257
|
+
});
|
|
258
|
+
Object.defineProperty(this, "currencyRecord", {
|
|
259
|
+
enumerable: true,
|
|
260
|
+
configurable: true,
|
|
261
|
+
writable: true,
|
|
262
|
+
value: {}
|
|
263
|
+
});
|
|
264
|
+
Object.defineProperty(this, "nameRecord", {
|
|
265
|
+
enumerable: true,
|
|
266
|
+
configurable: true,
|
|
267
|
+
writable: true,
|
|
268
|
+
value: {}
|
|
269
|
+
});
|
|
270
|
+
// Static references for direct access through Currency class
|
|
271
|
+
Object.defineProperty(this, "staticReferences", {
|
|
272
|
+
enumerable: true,
|
|
273
|
+
configurable: true,
|
|
274
|
+
writable: true,
|
|
275
|
+
value: new Map()
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* Gets the singleton instance of CurrencyService.
|
|
280
|
+
* Creates the instance if it doesn't exist.
|
|
281
|
+
* @static
|
|
282
|
+
* @returns {CurrencyService} The singleton instance
|
|
283
|
+
*/
|
|
284
|
+
static getInstance() {
|
|
285
|
+
if (!CurrencyService.instance) {
|
|
286
|
+
CurrencyService.instance = new CurrencyService();
|
|
287
|
+
CurrencyService.instance.initialize();
|
|
288
|
+
}
|
|
289
|
+
return CurrencyService.instance;
|
|
290
|
+
}
|
|
291
|
+
/**
|
|
292
|
+
* Initializes the service with currency data.
|
|
293
|
+
* Should be called once when your application starts.
|
|
294
|
+
*/
|
|
295
|
+
initialize() {
|
|
296
|
+
try {
|
|
297
|
+
const data = JSON.parse(JSON.stringify(currencies_js_1.default));
|
|
298
|
+
const currencies = Object.values(data).map((c) => new Currency(c.symbol, c.name, c.symbol_native, c.decimal_digits, c.rounding, c.code, c.name_plural));
|
|
299
|
+
const codeRecord = {};
|
|
300
|
+
const nameRecord = {};
|
|
301
|
+
currencies.forEach((currency) => {
|
|
302
|
+
// Populate code record
|
|
303
|
+
codeRecord[currency.code] = currency;
|
|
304
|
+
// Add to record by name
|
|
305
|
+
nameRecord[currency.name.toUpperCase()] = currency;
|
|
306
|
+
const upperCode = currency.code.toUpperCase();
|
|
307
|
+
// Add to static references for uppercase code
|
|
308
|
+
this.staticReferences.set(upperCode, currency);
|
|
309
|
+
// Add formatted full name static reference based on name property
|
|
310
|
+
// Transform from "US Dollar" to "US_DOLLAR"
|
|
311
|
+
const nameKey = currency.name
|
|
312
|
+
.toUpperCase()
|
|
313
|
+
.replace(/\s+/g, "_")
|
|
314
|
+
.replace(/[-(),.']/g, "")
|
|
315
|
+
.replace(/&/g, "AND");
|
|
316
|
+
this.staticReferences.set(nameKey, currency);
|
|
317
|
+
});
|
|
318
|
+
this.currencyRecord = codeRecord;
|
|
319
|
+
this.nameRecord = nameRecord;
|
|
320
|
+
this.currencyList = currencies;
|
|
321
|
+
}
|
|
322
|
+
catch (error) {
|
|
323
|
+
console.error("Failed to initialize CurrencyService:", error);
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Gets all currencies.
|
|
328
|
+
* @returns {Currency[]} Array of all currencies
|
|
329
|
+
*/
|
|
330
|
+
getAll() {
|
|
331
|
+
return this.currencyList;
|
|
332
|
+
}
|
|
333
|
+
/**
|
|
334
|
+
* Gets all currencies as a record.
|
|
335
|
+
* @returns {Record<string, Currency>} Record of currency codes and currency objects
|
|
336
|
+
*/
|
|
337
|
+
getAllAsRecord() {
|
|
338
|
+
return this.currencyRecord;
|
|
339
|
+
}
|
|
340
|
+
/**
|
|
341
|
+
* Gets static currency references to be used by the Currency class.
|
|
342
|
+
* @returns {Map<string, Currency>} Map of static references
|
|
343
|
+
*/
|
|
344
|
+
getStaticReferences() {
|
|
345
|
+
return this.staticReferences;
|
|
346
|
+
}
|
|
347
|
+
/**
|
|
348
|
+
* Retrieves a currency by its ISO code.
|
|
349
|
+
* @param {string} code The ISO code of the currency.
|
|
350
|
+
* @returns {Currency | undefined} The currency corresponding to the ISO code or `undefined` if not found.
|
|
351
|
+
*/
|
|
352
|
+
fromCode(code) {
|
|
353
|
+
return this.currencyRecord[code.trim().toUpperCase()];
|
|
354
|
+
}
|
|
355
|
+
/**
|
|
356
|
+
* Retrieves a currency by its name.
|
|
357
|
+
* @param {string} currencyName The name of the currency.
|
|
358
|
+
* @returns {Currency | undefined} The currency corresponding to the name or `undefined` if not found.
|
|
359
|
+
*/
|
|
360
|
+
fromName(currencyName) {
|
|
361
|
+
const input = currencyName.trim().toUpperCase();
|
|
362
|
+
// First try direct lookup in name record
|
|
363
|
+
const directMatch = this.nameRecord[input];
|
|
364
|
+
if (directMatch)
|
|
365
|
+
return directMatch;
|
|
366
|
+
// If not found, try more lenient matching
|
|
367
|
+
for (const [name, currObj] of Object.entries(this.nameRecord)) {
|
|
368
|
+
if (name.toUpperCase() === input) {
|
|
369
|
+
return currObj;
|
|
370
|
+
}
|
|
371
|
+
}
|
|
372
|
+
// Finally, try case-insensitive exact match
|
|
373
|
+
return this.currencyList.find((currency) => currency.name.toUpperCase() === input);
|
|
374
|
+
}
|
|
375
|
+
/**
|
|
376
|
+
* Validates if a given ISO currency code is valid
|
|
377
|
+
*
|
|
378
|
+
* @param {string | null | undefined} code - The currency code to validate.
|
|
379
|
+
* Should be a three-letter ISO currency code (e.g., 'USD', 'EUR').
|
|
380
|
+
*
|
|
381
|
+
* @returns {boolean} Returns true if:
|
|
382
|
+
* - The currency code is not null/undefined
|
|
383
|
+
* - The currency code successfully resolves to a valid Currency instance
|
|
384
|
+
* Returns false otherwise.
|
|
385
|
+
*/
|
|
386
|
+
isValidCode(code) {
|
|
387
|
+
if (!code)
|
|
388
|
+
return false;
|
|
389
|
+
const currency = this.fromCode(code);
|
|
390
|
+
return !!currency;
|
|
391
|
+
}
|
|
392
|
+
/**
|
|
393
|
+
* Validates if a given currency name is valid
|
|
394
|
+
*
|
|
395
|
+
* @param {string | null | undefined} currencyName - The currency name to validate.
|
|
396
|
+
*
|
|
397
|
+
* @returns {boolean} Returns true if:
|
|
398
|
+
* - The currency name is not null/undefined
|
|
399
|
+
* - The currency name successfully resolves to a valid Currency instance
|
|
400
|
+
* Returns false otherwise.
|
|
401
|
+
*/
|
|
402
|
+
isValidName(currencyName) {
|
|
403
|
+
if (!currencyName)
|
|
404
|
+
return false;
|
|
405
|
+
const currency = this.fromName(currencyName);
|
|
406
|
+
return !!currency;
|
|
407
|
+
}
|
|
408
|
+
/**
|
|
409
|
+
* Gets a regex-ready pattern matching all currency symbols
|
|
410
|
+
* Pattern is memoized for performance
|
|
411
|
+
* @returns {string} Pipe-separated pattern of escaped currency symbols
|
|
412
|
+
*
|
|
413
|
+
* @example
|
|
414
|
+
* const pattern = currencyService.getCurrencySymbolPattern();
|
|
415
|
+
* // Returns something like: "\$|€|\£|¥"
|
|
416
|
+
*/
|
|
417
|
+
getCurrencySymbolPattern() {
|
|
418
|
+
const symbols = new Set();
|
|
419
|
+
Object.values(this.currencyList).forEach((currency) => {
|
|
420
|
+
symbols.add(this.escapeRegExp(currency.symbol));
|
|
421
|
+
symbols.add(this.escapeRegExp(currency.symbolNative));
|
|
422
|
+
});
|
|
423
|
+
return Array.from(symbols).join("|");
|
|
424
|
+
}
|
|
425
|
+
/**
|
|
426
|
+
* Escapes special characters in a string for use in regular expressions
|
|
427
|
+
* @private
|
|
428
|
+
* @param {string} string - The string to escape
|
|
429
|
+
* @returns {string} The escaped string
|
|
430
|
+
*
|
|
431
|
+
* @example
|
|
432
|
+
* private escapeRegExp("$") // Returns "\$"
|
|
433
|
+
*/
|
|
434
|
+
escapeRegExp(string) {
|
|
435
|
+
return string.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
436
|
+
}
|
|
437
|
+
}
|
|
438
|
+
exports.CurrencyService = CurrencyService;
|
|
214
439
|
// Initialize static properties by applying the references from CurrencyService.
|
|
215
|
-
|
|
216
|
-
// The setTimeout pushes the initialization code to the end of the JavaScript event loop,
|
|
217
|
-
// which happens after all modules are loaded.
|
|
218
|
-
setTimeout(() => {
|
|
440
|
+
(function setupStaticReferences() {
|
|
219
441
|
try {
|
|
220
|
-
const
|
|
221
|
-
|
|
442
|
+
const refs = CurrencyService.getInstance().getStaticReferences();
|
|
443
|
+
refs.forEach((country, key) => {
|
|
222
444
|
// deno-lint-ignore no-explicit-any
|
|
223
|
-
Currency[key] =
|
|
445
|
+
Currency[key] = country;
|
|
224
446
|
});
|
|
225
447
|
}
|
|
226
448
|
catch (error) {
|
|
227
|
-
console.
|
|
449
|
+
console.log("Failed to set up static references: ", error);
|
|
228
450
|
}
|
|
229
|
-
}
|
|
451
|
+
})();
|