Skip to content

Latest commit

 

History

History
112 lines (84 loc) · 5.95 KB

readme.md

File metadata and controls

112 lines (84 loc) · 5.95 KB

npm (tag) License npm

country-to-currency

Maps country codes (ISO 3166-1 alpha-2) to their default currency codes (ISO 4217).

⚡ Just 2.3 KB (uncompressed), no external dependencies.

🎯 Work with browsers, NodeJS, and DenoJS. JavaScript and TypeScript.

Install

npm i country-to-currency

Usage

This library exports a default object that maps country codes to currency codes.

Available formats include UMD (therefore AMD and CommonJS) and ESM.

👉 Examples available in the folder examples.

TypeScript

From version 1.1.0 on, there are two union types available (TypeScript 3.4+ only):

  • Currencies, that contains all the currencies;
  • Countries, that contains all the countries.

Example using TypeScript on NodeJS:

  import countryToCurrency, { Currencies, Countries } from "country-to-currency";

Browser - without installing anything

Global:

<script crossorigin src="https://unpkg.com/country-to-currency" ></script>
<script>
  console.log( countryToCurrency ); // {AF: "AFN", AX: "EUR", ... }
  console.log( countryToCurrency[ 'US' ] ); // USD
  console.log( countryToCurrency[ 'DE' ] ); // EUR
  console.log( countryToCurrency[ 'BR' ] ); // BRL
</script>

ESM:

<script type="module" >
  import countryToCurrency from "https://unpkg.com/country-to-currency/index.esm.js";
  console.log( countryToCurrency[ 'US' ] ); // USD
</script>

NodeJS

const countryToCurrency = require( 'country-to-currency/index.cjs' ); // '/index.cjs' needed since version 2.0
console.log( countryToCurrency[ 'US' ] ); // USD

Deno

import countryToCurrency from "https://unpkg.com/country-to-currency/index.esm.js";
console.log( countryToCurrency[ 'US' ] ); // USD

Notes

  • Countries included: 251
    • Imported: 249
    • Included: 2
    • Fixed: 17
  • Currencies assumed:
Country Currency Details Thanks to
Antactica (AQ) USD Antactica has no official currency @thiagodp
Palestine (PS) ILS Google @thiagodp
Turkey (TR) TRY Wikipedia @kylem123, @thiagodp
South Korea (KR) KRW ISO 4217 @MunjaeLee, @thiagodp
Switzerland (CH) CHF Wikipedia @betabong, @thiagodp
Chile (CL) CLP CLF is a non-circulating currency. Wikipedia @thiagodp
Uruguay (UY) UYU Wikipedia @marneborn, @thiagodp
Croatia (HR) EUR Since January 1st, 2023. Wikipedia and Stripe @xaphod, @thiagodp
Netherlands Antilles (AN) ANG ISO 4217 @jayPare, @thiagodp
El Salvador (SV) USD Since 2001. Wikipedia @chaitanya-d, @thiagodp
South Georgia and the South Sandwich Islands (GS) FKP Wikipedia and https://gov.gs @danielrentz, @thiagodp
Cuba (CU) CUP Wikipedia @jasongitmail, @thiagodp
Hungary (HU) HUF Wikipedia @jasongitmail, @thiagodp
Samoa (WS) WST Wikipedia @jasongitmail, @thiagodp
Niger (NE) XOF Wikipedia @danielrentz, @thiagodp
Republic of the Congo (CG) XAF Wikipedia @jasongitmail, @thiagodp
Dominican Republic (DM) XCD Wikipedia @jasongitmail, @thiagodp
Sierra Leone (SL) SLE Wikipedia and European Union @jasongitmail, @thiagodp
Kosovo (XK) EUR Wikipedia and Geo Names @dukesilverr, @thiagodp

Contribute

Suggestions? Please open an Issue. Pull Requests? Make sure to edit generate.js instead of index.ts.

License

This library is inspired by Michael Rhodes' currency-code-map. The current project adds new currencies, fixes, offers support to browsers and DenoJS, updates dependencies, and provides new internal scripts.

MIT © Thiago Delgado Pinto