hanzio 3.0.0 → 3.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/README.md +114 -3
  2. package/dist/api-wrapper/connection-auth.d.ts +61 -0
  3. package/dist/cli/fields.d.ts +30 -0
  4. package/dist/cli/index.d.ts +122 -0
  5. package/dist/format/index.d.ts +91 -0
  6. package/dist/format/phone.d.ts +19 -0
  7. package/dist/http/index.d.ts +14 -0
  8. package/dist/i18n/catalog.d.ts +47 -0
  9. package/dist/i18n/check.d.ts +45 -0
  10. package/dist/i18n/cli.d.ts +2 -0
  11. package/dist/i18n/content-rules.d.ts +55 -0
  12. package/dist/i18n/i18next.d.ts +39 -0
  13. package/dist/i18n/index.d.ts +16 -1
  14. package/dist/i18n/locales.d.ts +62 -0
  15. package/dist/i18n/vite.d.ts +16 -0
  16. package/dist/i18n/vue.d.ts +93 -0
  17. package/dist/{index-kj1phgrx.js → index-29mmh343.js} +24 -1
  18. package/dist/{index-zbj9s3s3.js → index-2kz392vw.js} +1 -1
  19. package/dist/index-5n2e326q.js +409 -0
  20. package/dist/{index-hy7kbb99.js → index-5tzqfmnj.js} +1 -1
  21. package/dist/{index-0zvtcbzy.js → index-6f2w90pp.js} +69 -1
  22. package/dist/index-mq2qgc20.js +116 -0
  23. package/dist/index-najbyzpr.js +99 -0
  24. package/dist/index-nfvq3zax.js +475 -0
  25. package/dist/index-ww09bm49.js +250 -0
  26. package/dist/iso/countries.d.ts +262 -0
  27. package/dist/iso/currencies.d.ts +165 -0
  28. package/dist/iso/index.d.ts +4 -0
  29. package/dist/iso/languages.d.ts +195 -0
  30. package/dist/iso/phone-language.d.ts +5 -0
  31. package/dist/promise/index.d.ts +31 -0
  32. package/dist/redis/client.d.ts +49 -0
  33. package/dist/redis/concurrency-limit.d.ts +63 -0
  34. package/dist/redis/index.d.ts +3 -0
  35. package/dist/redis/lua-script.d.ts +13 -0
  36. package/dist/secrets/infisical-identity-file.d.ts +12 -0
  37. package/dist/src/api-wrapper/connection-auth.js +82 -0
  38. package/dist/src/api-wrapper/index.js +1 -1
  39. package/dist/src/cli/index.js +10 -0
  40. package/dist/src/format/index.js +79 -2
  41. package/dist/src/format/phone.js +21 -0
  42. package/dist/src/http/index.js +69 -0
  43. package/dist/src/i18n/check.js +15 -0
  44. package/dist/src/i18n/cli.js +71 -0
  45. package/dist/src/i18n/i18next.js +48 -0
  46. package/dist/src/i18n/index.js +16 -34
  47. package/dist/src/i18n/vite.js +25 -0
  48. package/dist/src/i18n/vue.js +51 -0
  49. package/dist/src/index.js +14 -4
  50. package/dist/src/iso/index.js +655 -0
  51. package/dist/src/redis/index.js +577 -0
  52. package/dist/src/secrets/index.js +78 -35
  53. package/dist/src/sitemap/index.js +1 -1
  54. package/dist/src/storage/index.js +8 -117
  55. package/dist/src/testing/index.js +348 -0
  56. package/dist/src/zod/index.js +20 -253
  57. package/dist/string/index.d.ts +21 -0
  58. package/dist/testing/connection-auth-contract.d.ts +43 -0
  59. package/dist/testing/helpers.d.ts +26 -0
  60. package/dist/testing/index.d.ts +5 -0
  61. package/dist/testing/module-mocker.d.ts +30 -0
  62. package/dist/testing/prisma.d.ts +30 -0
  63. package/dist/testing/window.d.ts +18 -0
  64. package/dist/zod/index.d.ts +10 -0
  65. package/dist/zod/introspect.d.ts +2 -1
  66. package/package.json +96 -2
  67. package/src/api-wrapper/README.md +52 -0
  68. package/src/api-wrapper/connection-auth.ts +142 -0
  69. package/src/cli/README.md +220 -0
  70. package/src/cli/fields.ts +213 -0
  71. package/src/cli/index.ts +533 -0
  72. package/src/format/README.md +82 -2
  73. package/src/format/index.ts +148 -0
  74. package/src/format/phone.ts +43 -0
  75. package/src/http/README.md +25 -0
  76. package/src/http/index.ts +94 -0
  77. package/src/i18n/README.md +206 -3
  78. package/src/i18n/catalog.ts +139 -0
  79. package/src/i18n/check.ts +376 -0
  80. package/src/i18n/cli.ts +90 -0
  81. package/src/i18n/content-rules.ts +179 -0
  82. package/src/i18n/i18next.ts +89 -0
  83. package/src/i18n/index.ts +34 -0
  84. package/src/i18n/locales.ts +135 -0
  85. package/src/i18n/vite.ts +40 -0
  86. package/src/i18n/vue.ts +82 -0
  87. package/src/index.ts +1 -1
  88. package/src/iso/README.md +44 -0
  89. package/src/iso/countries.ts +272 -0
  90. package/src/iso/currencies.ts +172 -0
  91. package/src/iso/index.ts +8 -0
  92. package/src/iso/languages.ts +208 -0
  93. package/src/iso/phone-language.ts +46 -0
  94. package/src/promise/index.ts +100 -0
  95. package/src/redis/README.md +112 -0
  96. package/src/redis/client.ts +239 -0
  97. package/src/redis/concurrency-limit.ts +591 -0
  98. package/src/redis/index.ts +15 -0
  99. package/src/redis/lua-script.ts +43 -0
  100. package/src/secrets/README.md +5 -1
  101. package/src/secrets/infisical-identity-file.ts +69 -0
  102. package/src/secrets/infisical.ts +18 -3
  103. package/src/string/index.ts +59 -0
  104. package/src/testing/README.md +119 -0
  105. package/src/testing/connection-auth-contract.ts +303 -0
  106. package/src/testing/helpers.ts +41 -0
  107. package/src/testing/index.ts +12 -0
  108. package/src/testing/module-mocker.ts +50 -0
  109. package/src/testing/prisma.ts +78 -0
  110. package/src/testing/window.ts +119 -0
  111. package/src/zod/index.ts +20 -0
  112. package/src/zod/introspect.ts +1 -1
@@ -0,0 +1,655 @@
1
+ // src/iso/countries.ts
2
+ var countryNames = {
3
+ AD: "Andorra",
4
+ AE: "United Arab Emirates",
5
+ AF: "Afghanistan",
6
+ AG: "Antigua and Barbuda",
7
+ AI: "Anguilla",
8
+ AL: "Albania",
9
+ AM: "Armenia",
10
+ AO: "Angola",
11
+ AQ: "Antarctica",
12
+ AR: "Argentina",
13
+ AS: "American Samoa",
14
+ AT: "Austria",
15
+ AU: "Australia",
16
+ AW: "Aruba",
17
+ AX: "Aland Islands",
18
+ AZ: "Azerbaijan",
19
+ BA: "Bosnia and Herzegovina",
20
+ BB: "Barbados",
21
+ BD: "Bangladesh",
22
+ BE: "Belgium",
23
+ BF: "Burkina Faso",
24
+ BG: "Bulgaria",
25
+ BH: "Bahrain",
26
+ BI: "Burundi",
27
+ BJ: "Benin",
28
+ BL: "Saint Barthelemy",
29
+ BM: "Bermuda",
30
+ BN: "Brunei Darussalam",
31
+ BO: "Bolivia",
32
+ BQ: "Bonaire, Sint Eustatius and Saba",
33
+ BR: "Brazil",
34
+ BS: "Bahamas",
35
+ BT: "Bhutan",
36
+ BV: "Bouvet Island",
37
+ BW: "Botswana",
38
+ BY: "Belarus",
39
+ BZ: "Belize",
40
+ CA: "Canada",
41
+ CC: "Cocos (Keeling) Islands",
42
+ CD: "Congo, (Kinshasa)",
43
+ CF: "Central African Republic",
44
+ CG: "Congo (Brazzaville)",
45
+ CH: "Switzerland",
46
+ CI: "Ivory Coast",
47
+ CK: "Cook Islands",
48
+ CL: "Chile",
49
+ CM: "Cameroon",
50
+ CN: "China",
51
+ CO: "Colombia",
52
+ CR: "Costa Rica",
53
+ CU: "Cuba",
54
+ CV: "Cape Verde",
55
+ CW: "Curaçao",
56
+ CX: "Christmas Island",
57
+ CY: "Cyprus",
58
+ CZ: "Czech Republic",
59
+ DE: "Germany",
60
+ DJ: "Djibouti",
61
+ DK: "Denmark",
62
+ DM: "Dominica",
63
+ DO: "Dominican Republic",
64
+ DZ: "Algeria",
65
+ EC: "Ecuador",
66
+ EE: "Estonia",
67
+ EG: "Egypt",
68
+ EH: "Western Sahara",
69
+ ER: "Eritrea",
70
+ ES: "Spain",
71
+ ET: "Ethiopia",
72
+ FI: "Finland",
73
+ FJ: "Fiji",
74
+ FK: "Falkland Islands (Malvinas)",
75
+ FM: "Micronesia, Federated States of",
76
+ FO: "Faroe Islands",
77
+ FR: "France",
78
+ GA: "Gabon",
79
+ GB: "United Kingdom",
80
+ GD: "Grenada",
81
+ GE: "Georgia",
82
+ GF: "French Guiana",
83
+ GG: "Guernsey",
84
+ GH: "Ghana",
85
+ GI: "Gibraltar",
86
+ GL: "Greenland",
87
+ GM: "Gambia",
88
+ GN: "Guinea",
89
+ GP: "Guadeloupe",
90
+ GQ: "Equatorial Guinea",
91
+ GR: "Greece",
92
+ GS: "South Georgia and the South Sandwich Islands",
93
+ GT: "Guatemala",
94
+ GU: "Guam",
95
+ GW: "Guinea-Bissau",
96
+ GY: "Guyana",
97
+ HK: "Hong Kong, SAR China",
98
+ HM: "Heard and Mcdonald Islands",
99
+ HN: "Honduras",
100
+ HR: "Croatia",
101
+ HT: "Haiti",
102
+ HU: "Hungary",
103
+ ID: "Indonesia",
104
+ IE: "Ireland",
105
+ IL: "Israel",
106
+ IM: "Isle of Man",
107
+ IN: "India",
108
+ IO: "British Indian Ocean Territory",
109
+ IQ: "Iraq",
110
+ IR: "Iran, Islamic Republic of",
111
+ IS: "Iceland",
112
+ IT: "Italy",
113
+ JE: "Jersey",
114
+ JM: "Jamaica",
115
+ JO: "Jordan",
116
+ JP: "Japan",
117
+ KE: "Kenya",
118
+ KG: "Kyrgyzstan",
119
+ KH: "Cambodia",
120
+ KI: "Kiribati",
121
+ KM: "Comoros",
122
+ KN: "Saint Kitts and Nevis",
123
+ KP: "North Korea",
124
+ KR: "South Korea",
125
+ KW: "Kuwait",
126
+ KY: "Cayman Islands",
127
+ KZ: "Kazakhstan",
128
+ LA: "Lao PDR",
129
+ LB: "Lebanon",
130
+ LC: "Saint Lucia",
131
+ LI: "Liechtenstein",
132
+ LK: "Sri Lanka",
133
+ LR: "Liberia",
134
+ LS: "Lesotho",
135
+ LT: "Lithuania",
136
+ LU: "Luxembourg",
137
+ LV: "Latvia",
138
+ LY: "Libya",
139
+ MA: "Morocco",
140
+ MC: "Monaco",
141
+ MD: "Moldova",
142
+ ME: "Montenegro",
143
+ MF: "Saint-Martin (French part)",
144
+ MG: "Madagascar",
145
+ MH: "Marshall Islands",
146
+ MK: "Macedonia, Republic of",
147
+ ML: "Mali",
148
+ MM: "Myanmar",
149
+ MN: "Mongolia",
150
+ MO: "Macao, SAR China",
151
+ MP: "Northern Mariana Islands",
152
+ MQ: "Martinique",
153
+ MR: "Mauritania",
154
+ MS: "Montserrat",
155
+ MT: "Malta",
156
+ MU: "Mauritius",
157
+ MV: "Maldives",
158
+ MW: "Malawi",
159
+ MX: "Mexico",
160
+ MY: "Malaysia",
161
+ MZ: "Mozambique",
162
+ NA: "Namibia",
163
+ NC: "New Caledonia",
164
+ NE: "Niger",
165
+ NF: "Norfolk Island",
166
+ NG: "Nigeria",
167
+ NI: "Nicaragua",
168
+ NL: "Netherlands",
169
+ NO: "Norway",
170
+ NP: "Nepal",
171
+ NR: "Nauru",
172
+ NU: "Niue",
173
+ NZ: "New Zealand",
174
+ OM: "Oman",
175
+ PA: "Panama",
176
+ PE: "Peru",
177
+ PF: "French Polynesia",
178
+ PG: "Papua New Guinea",
179
+ PH: "Philippines",
180
+ PK: "Pakistan",
181
+ PL: "Poland",
182
+ PM: "Saint Pierre and Miquelon",
183
+ PN: "Pitcairn",
184
+ PR: "Puerto Rico",
185
+ PS: "Palestinian Territory",
186
+ PT: "Portugal",
187
+ PW: "Palau",
188
+ PY: "Paraguay",
189
+ QA: "Qatar",
190
+ RE: "Reunion",
191
+ RO: "Romania",
192
+ RS: "Serbia",
193
+ RU: "Russian Federation",
194
+ RW: "Rwanda",
195
+ SA: "Saudi Arabia",
196
+ SB: "Solomon Islands",
197
+ SC: "Seychelles",
198
+ SD: "Sudan",
199
+ SE: "Sweden",
200
+ SG: "Singapore",
201
+ SH: "Saint Helena",
202
+ SI: "Slovenia",
203
+ SJ: "Svalbard and Jan Mayen Islands",
204
+ SK: "Slovakia",
205
+ SL: "Sierra Leone",
206
+ SM: "San Marino",
207
+ SN: "Senegal",
208
+ SO: "Somalia",
209
+ SR: "Suriname",
210
+ SS: "South Sudan",
211
+ ST: "Sao Tome and Principe",
212
+ SV: "El Salvador",
213
+ SX: "Sint Maarten (Dutch part)",
214
+ SY: "Syria",
215
+ SZ: "Swaziland",
216
+ TC: "Turks and Caicos Islands",
217
+ TD: "Chad",
218
+ TF: "French Southern Territories",
219
+ TG: "Togo",
220
+ TH: "Thailand",
221
+ TJ: "Tajikistan",
222
+ TK: "Tokelau",
223
+ TL: "Timor-Leste",
224
+ TM: "Turkmenistan",
225
+ TN: "Tunisia",
226
+ TO: "Tonga",
227
+ TR: "Turkey",
228
+ TT: "Trinidad and Tobago",
229
+ TV: "Tuvalu",
230
+ TW: "Taiwan, Republic of China",
231
+ TZ: "Tanzania, United Republic of",
232
+ UA: "Ukraine",
233
+ UG: "Uganda",
234
+ UM: "US Minor Outlying Islands",
235
+ US: "United States of America",
236
+ UY: "Uruguay",
237
+ UZ: "Uzbekistan",
238
+ VA: "Holy See (Vatican City State)",
239
+ VC: "Saint Vincent and Grenadines",
240
+ VE: "Venezuela",
241
+ VG: "British Virgin Islands",
242
+ VI: "Virgin Islands, US",
243
+ VN: "Viet Nam",
244
+ VU: "Vanuatu",
245
+ WF: "Wallis and Futuna Islands",
246
+ WS: "Samoa",
247
+ YE: "Yemen",
248
+ YT: "Mayotte",
249
+ ZA: "South Africa",
250
+ ZM: "Zambia",
251
+ ZW: "Zimbabwe"
252
+ };
253
+ var countryCodes = Object.keys(countryNames);
254
+ function isCountryCode(value) {
255
+ return typeof value === "string" && Object.hasOwn(countryNames, value);
256
+ }
257
+ function countryFlag(code) {
258
+ return String.fromCodePoint(...[...code].map((letter) => 127397 + letter.charCodeAt(0)));
259
+ }
260
+ // src/iso/currencies.ts
261
+ var currencyNames = {
262
+ AED: "United Arab Emirates Dirham",
263
+ AFN: "Afghan Afghani",
264
+ ALL: "Albanian Lek",
265
+ AMD: "Armenian Dram",
266
+ AOA: "Angolan Kwanza",
267
+ ARS: "Argentine Peso",
268
+ AUD: "Australian Dollar",
269
+ AWG: "Aruban Florin",
270
+ AZN: "Azerbaijani Manat",
271
+ BAM: "Bosnia-Herzegovina Convertible Mark",
272
+ BBD: "Barbadian Dollar",
273
+ BDT: "Bangladeshi Taka",
274
+ BHD: "Bahraini Dinar",
275
+ BIF: "Burundian Franc",
276
+ BMD: "Bermudan Dollar",
277
+ BND: "Brunei Dollar",
278
+ BOB: "Bolivian Boliviano",
279
+ BRL: "Brazilian Real",
280
+ BSD: "Bahamian Dollar",
281
+ BTN: "Bhutanese Ngultrum",
282
+ BWP: "Botswanan Pula",
283
+ BYN: "Belarusian Ruble",
284
+ BZD: "Belize Dollar",
285
+ CAD: "Canadian Dollar",
286
+ CDF: "Congolese Franc",
287
+ CHF: "Swiss Franc",
288
+ CLP: "Chilean Peso",
289
+ CNY: "Chinese Yuan",
290
+ COP: "Colombian Peso",
291
+ CRC: "Costa Rican Colón",
292
+ CUP: "Cuban Peso",
293
+ CVE: "Cape Verdean Escudo",
294
+ CZK: "Czech Koruna",
295
+ DJF: "Djiboutian Franc",
296
+ DKK: "Danish Krone",
297
+ DOP: "Dominican Peso",
298
+ DZD: "Algerian Dinar",
299
+ EGP: "Egyptian Pound",
300
+ ERN: "Eritrean Nakfa",
301
+ ETB: "Ethiopian Birr",
302
+ EUR: "Euro",
303
+ FJD: "Fijian Dollar",
304
+ FKP: "Falkland Islands Pound",
305
+ GBP: "British Pound",
306
+ GEL: "Georgian Lari",
307
+ GHS: "Ghanaian Cedi",
308
+ GIP: "Gibraltar Pound",
309
+ GMD: "Gambian Dalasi",
310
+ GNF: "Guinean Franc",
311
+ GTQ: "Guatemalan Quetzal",
312
+ GYD: "Guyanese Dollar",
313
+ HKD: "Hong Kong Dollar",
314
+ HNL: "Honduran Lempira",
315
+ HTG: "Haitian Gourde",
316
+ HUF: "Hungarian Forint",
317
+ IDR: "Indonesian Rupiah",
318
+ ILS: "Israeli New Shekel",
319
+ INR: "Indian Rupee",
320
+ IQD: "Iraqi Dinar",
321
+ IRR: "Iranian Rial",
322
+ ISK: "Icelandic Króna",
323
+ JMD: "Jamaican Dollar",
324
+ JOD: "Jordanian Dinar",
325
+ JPY: "Japanese Yen",
326
+ KES: "Kenyan Shilling",
327
+ KGS: "Kyrgyz Som",
328
+ KHR: "Cambodian Riel",
329
+ KMF: "Comorian Franc",
330
+ KPW: "North Korean Won",
331
+ KRW: "South Korean Won",
332
+ KWD: "Kuwaiti Dinar",
333
+ KYD: "Cayman Islands Dollar",
334
+ KZT: "Kazakhstani Tenge",
335
+ LAK: "Laotian Kip",
336
+ LBP: "Lebanese Pound",
337
+ LKR: "Sri Lankan Rupee",
338
+ LRD: "Liberian Dollar",
339
+ LSL: "Lesotho Loti",
340
+ LYD: "Libyan Dinar",
341
+ MAD: "Moroccan Dirham",
342
+ MDL: "Moldovan Leu",
343
+ MGA: "Malagasy Ariary",
344
+ MKD: "Macedonian Denar",
345
+ MMK: "Myanmar Kyat",
346
+ MNT: "Mongolian Tugrik",
347
+ MOP: "Macanese Pataca",
348
+ MRU: "Mauritanian Ouguiya",
349
+ MUR: "Mauritian Rupee",
350
+ MVR: "Maldivian Rufiyaa",
351
+ MWK: "Malawian Kwacha",
352
+ MXN: "Mexican Peso",
353
+ MYR: "Malaysian Ringgit",
354
+ MZN: "Mozambican Metical",
355
+ NAD: "Namibian Dollar",
356
+ NGN: "Nigerian Naira",
357
+ NIO: "Nicaraguan Córdoba",
358
+ NOK: "Norwegian Krone",
359
+ NPR: "Nepalese Rupee",
360
+ NZD: "New Zealand Dollar",
361
+ OMR: "Omani Rial",
362
+ PAB: "Panamanian Balboa",
363
+ PEN: "Peruvian Sol",
364
+ PGK: "Papua New Guinean Kina",
365
+ PHP: "Philippine Peso",
366
+ PKR: "Pakistani Rupee",
367
+ PLN: "Polish Zloty",
368
+ PYG: "Paraguayan Guarani",
369
+ QAR: "Qatari Riyal",
370
+ RON: "Romanian Leu",
371
+ RSD: "Serbian Dinar",
372
+ RUB: "Russian Ruble",
373
+ RWF: "Rwandan Franc",
374
+ SAR: "Saudi Riyal",
375
+ SBD: "Solomon Islands Dollar",
376
+ SCR: "Seychellois Rupee",
377
+ SDG: "Sudanese Pound",
378
+ SEK: "Swedish Krona",
379
+ SGD: "Singapore Dollar",
380
+ SHP: "St. Helena Pound",
381
+ SLE: "Sierra Leonean Leone",
382
+ SOS: "Somali Shilling",
383
+ SRD: "Surinamese Dollar",
384
+ SSP: "South Sudanese Pound",
385
+ STN: "São Tomé & Príncipe Dobra",
386
+ SVC: "Salvadoran Colón",
387
+ SYP: "Syrian Pound",
388
+ SZL: "Swazi Lilangeni",
389
+ THB: "Thai Baht",
390
+ TJS: "Tajikistani Somoni",
391
+ TMT: "Turkmenistani Manat",
392
+ TND: "Tunisian Dinar",
393
+ TOP: "Tongan Paʻanga",
394
+ TRY: "Turkish Lira",
395
+ TTD: "Trinidad & Tobago Dollar",
396
+ TWD: "New Taiwan Dollar",
397
+ TZS: "Tanzanian Shilling",
398
+ UAH: "Ukrainian Hryvnia",
399
+ UGX: "Ugandan Shilling",
400
+ USD: "US Dollar",
401
+ UYU: "Uruguayan Peso",
402
+ UZS: "Uzbekistani Som",
403
+ VED: "Bolívar Soberano",
404
+ VES: "Venezuelan Bolívar",
405
+ VND: "Vietnamese Dong",
406
+ VUV: "Vanuatu Vatu",
407
+ WST: "Samoan Tala",
408
+ XAF: "Central African CFA Franc",
409
+ XCD: "East Caribbean Dollar",
410
+ XCG: "Caribbean guilder",
411
+ XOF: "West African CFA Franc",
412
+ XPF: "CFP Franc",
413
+ YER: "Yemeni Rial",
414
+ ZAR: "South African Rand",
415
+ ZMW: "Zambian Kwacha",
416
+ ZWG: "Zimbabwean Gold"
417
+ };
418
+ var currencyCodes = Object.keys(currencyNames);
419
+ function isCurrencyCode(value) {
420
+ return typeof value === "string" && Object.hasOwn(currencyNames, value);
421
+ }
422
+ // src/iso/languages.ts
423
+ var languageNames = {
424
+ aa: "Afar",
425
+ ab: "Abkhazian",
426
+ ae: "Avestan",
427
+ af: "Afrikaans",
428
+ ak: "Akan",
429
+ am: "Amharic",
430
+ an: "Aragonese",
431
+ ar: "Arabic",
432
+ as: "Assamese",
433
+ av: "Avaric",
434
+ ay: "Aymara",
435
+ az: "Azerbaijani",
436
+ ba: "Bashkir",
437
+ be: "Belarusian",
438
+ bg: "Bulgarian",
439
+ bi: "Bislama",
440
+ bm: "Bambara",
441
+ bn: "Bangla",
442
+ bo: "Tibetan",
443
+ br: "Breton",
444
+ bs: "Bosnian",
445
+ ca: "Catalan",
446
+ ce: "Chechen",
447
+ ch: "Chamorro",
448
+ co: "Corsican",
449
+ cr: "Cree",
450
+ cs: "Czech",
451
+ cu: "Church Slavic",
452
+ cv: "Chuvash",
453
+ cy: "Welsh",
454
+ da: "Danish",
455
+ de: "German",
456
+ dv: "Dhivehi",
457
+ dz: "Dzongkha",
458
+ ee: "Ewe",
459
+ el: "Greek",
460
+ en: "English",
461
+ eo: "Esperanto",
462
+ es: "Spanish",
463
+ et: "Estonian",
464
+ eu: "Basque",
465
+ fa: "Persian",
466
+ ff: "Fula",
467
+ fi: "Finnish",
468
+ fj: "Fijian",
469
+ fo: "Faroese",
470
+ fr: "French",
471
+ fy: "Western Frisian",
472
+ ga: "Irish",
473
+ gd: "Scottish Gaelic",
474
+ gl: "Galician",
475
+ gn: "Guarani",
476
+ gu: "Gujarati",
477
+ gv: "Manx",
478
+ ha: "Hausa",
479
+ he: "Hebrew",
480
+ hi: "Hindi",
481
+ ho: "Hiri Motu",
482
+ hr: "Croatian",
483
+ ht: "Haitian Creole",
484
+ hu: "Hungarian",
485
+ hy: "Armenian",
486
+ hz: "Herero",
487
+ ia: "Interlingua",
488
+ id: "Indonesian",
489
+ ie: "Interlingue",
490
+ ig: "Igbo",
491
+ ii: "Liangshan Yi",
492
+ ik: "Inupiaq",
493
+ io: "Ido",
494
+ is: "Icelandic",
495
+ it: "Italian",
496
+ iu: "Inuktitut",
497
+ ja: "Japanese",
498
+ jv: "Javanese",
499
+ ka: "Georgian",
500
+ kg: "Kongo",
501
+ ki: "Kikuyu",
502
+ kj: "Kuanyama",
503
+ kk: "Kazakh",
504
+ kl: "Kalaallisut",
505
+ km: "Khmer",
506
+ kn: "Kannada",
507
+ ko: "Korean",
508
+ kr: "Kanuri",
509
+ ks: "Kashmiri",
510
+ ku: "Kurdish",
511
+ kv: "Komi",
512
+ kw: "Cornish",
513
+ ky: "Kyrgyz",
514
+ la: "Latin",
515
+ lb: "Luxembourgish",
516
+ lg: "Ganda",
517
+ li: "Limburgish",
518
+ ln: "Lingala",
519
+ lo: "Lao",
520
+ lt: "Lithuanian",
521
+ lu: "Luba-Katanga",
522
+ lv: "Latvian",
523
+ mg: "Malagasy",
524
+ mh: "Marshallese",
525
+ mi: "Māori",
526
+ mk: "Macedonian",
527
+ ml: "Malayalam",
528
+ mn: "Mongolian",
529
+ mr: "Marathi",
530
+ ms: "Malay",
531
+ mt: "Maltese",
532
+ my: "Burmese",
533
+ na: "Nauru",
534
+ nb: "Norwegian Bokmål",
535
+ nd: "North Ndebele",
536
+ ne: "Nepali",
537
+ ng: "Ndonga",
538
+ nl: "Dutch",
539
+ nn: "Norwegian Nynorsk",
540
+ no: "Norwegian",
541
+ nr: "South Ndebele",
542
+ nv: "Navajo",
543
+ ny: "Nyanja",
544
+ oc: "Occitan",
545
+ oj: "Ojibwa",
546
+ om: "Oromo",
547
+ or: "Odia",
548
+ os: "Ossetic",
549
+ pa: "Punjabi",
550
+ pi: "Pali",
551
+ pl: "Polish",
552
+ ps: "Pashto",
553
+ pt: "Portuguese",
554
+ qu: "Quechua",
555
+ rm: "Romansh",
556
+ rn: "Rundi",
557
+ ro: "Romanian",
558
+ ru: "Russian",
559
+ rw: "Kinyarwanda",
560
+ sa: "Sanskrit",
561
+ sc: "Sardinian",
562
+ sd: "Sindhi",
563
+ se: "North Sámi",
564
+ sg: "Sango",
565
+ si: "Sinhala",
566
+ sk: "Slovak",
567
+ sl: "Slovenian",
568
+ sm: "Samoan",
569
+ sn: "Shona",
570
+ so: "Somali",
571
+ sq: "Albanian",
572
+ sr: "Serbian",
573
+ ss: "Swati",
574
+ st: "Southern Sotho",
575
+ su: "Sundanese",
576
+ sv: "Swedish",
577
+ sw: "Swahili",
578
+ ta: "Tamil",
579
+ te: "Telugu",
580
+ tg: "Tajik",
581
+ th: "Thai",
582
+ ti: "Tigrinya",
583
+ tk: "Turkmen",
584
+ tl: "Tagalog",
585
+ tn: "Tswana",
586
+ to: "Tongan",
587
+ tr: "Turkish",
588
+ ts: "Tsonga",
589
+ tt: "Tatar",
590
+ tw: "Twi",
591
+ ty: "Tahitian",
592
+ ug: "Uyghur",
593
+ uk: "Ukrainian",
594
+ ur: "Urdu",
595
+ uz: "Uzbek",
596
+ ve: "Venda",
597
+ vi: "Vietnamese",
598
+ vo: "Volapük",
599
+ wa: "Walloon",
600
+ wo: "Wolof",
601
+ xh: "Xhosa",
602
+ yi: "Yiddish",
603
+ yo: "Yoruba",
604
+ za: "Zhuang",
605
+ zh: "Chinese",
606
+ zu: "Zulu"
607
+ };
608
+ var languageCodes = Object.keys(languageNames);
609
+ function isLanguageCode(value) {
610
+ return typeof value === "string" && Object.hasOwn(languageNames, value);
611
+ }
612
+ function matchLanguageCode(tag) {
613
+ const language = tag?.trim().replaceAll("_", "-").split("-")[0]?.toLowerCase();
614
+ return isLanguageCode(language) ? language : null;
615
+ }
616
+ // src/iso/phone-language.ts
617
+ var CALLING_CODE_LANGUAGE = {
618
+ "1": "en",
619
+ "31": "nl",
620
+ "32": "nl",
621
+ "33": "fr",
622
+ "34": "es",
623
+ "39": "it",
624
+ "41": "de",
625
+ "43": "de",
626
+ "44": "en",
627
+ "45": "da",
628
+ "46": "sv",
629
+ "47": "nb",
630
+ "49": "de",
631
+ "351": "pt",
632
+ "353": "en"
633
+ };
634
+ var CALLING_CODES = Object.keys(CALLING_CODE_LANGUAGE).sort((a, b) => b.length - a.length);
635
+ function languageFromE164PhoneNumber(phoneNumber) {
636
+ const digits = phoneNumber?.trim().replace(/^\+/, "").replace(/\D/g, "");
637
+ if (!digits)
638
+ return null;
639
+ const code = CALLING_CODES.find((code) => digits.startsWith(code) && digits.length > code.length);
640
+ return code ? CALLING_CODE_LANGUAGE[code] : null;
641
+ }
642
+ export {
643
+ countryCodes,
644
+ countryFlag,
645
+ countryNames,
646
+ currencyCodes,
647
+ currencyNames,
648
+ isCountryCode,
649
+ isCurrencyCode,
650
+ isLanguageCode,
651
+ languageCodes,
652
+ languageFromE164PhoneNumber,
653
+ languageNames,
654
+ matchLanguageCode
655
+ };