Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

country-state-city-slim

MordyS3.6kGPL-3.02.0.11TypeScript support: included

Library for fetching Country, its States and Cities (without Cities...)

Country, State, GeoLocation, Continents

readme

country-state-city-slim

Basic library for Country and State

Data Source:
https://github.com/dr5hn/countries-states-cities-database
For any data related issue, you can raise a Issue here.

The original package:
https://www.npmjs.com/package/country-state-city

Install

npm i country-state-city-slim

Docs

import { Country, State } from 'country-state-city-slim';

getCountryByCode(code)

It accepts a valid CountryCode eg: 'IL' and returns Country Details

type: json | ICountry

{
    "isoCode": "IL",
    "name": "Israel",
    "phonecode": "972",
    "flag": "🇮🇱",
    "currency": "ILS",
    "latitude": "31.50000000",
    "longitude": "34.75000000",
    "region": "Asia",
    "internationalOrganization": ""
}

Note: the internationalOrganization can be either "EU" for the European Union, Or An empty string for other countries

getStatesOfCountry(countryCode)

It accepts a valid CountryCode (which must be either 'US' or 'CA') and returns all States as Array of JSON

type: array of json | IState

[
    {
        "name": "New York",
        "isoCode": "NY",
        "countryCode": "US",
        "latitude": "40.71277530",
        "longitude": "-74.00597280"
    }
]

getAllCountries()

It returns all Countries

type: array of json | ICountry

[
    {
        "isoCode": "IL",
        "name": "Israel",
        "phonecode": "972",
        "flag": "🇮🇱",
        "currency": "ILS",
        "latitude": "31.50000000",
        "longitude": "34.75000000",
        "region": "Asia",
        "internationalOrganization": ""
    }
]

getAllStates()

It returns all States For Canada and United States only

type: array of json | IState

[
    {
        "name": "New York",
        "isoCode": "NY",
        "countryCode": "US",
        "latitude": "40.71277530",
        "longitude": "-74.00597280"

    }
]

isEuropeanUnion(countryCode)

It returns true if the country is part of the European Union

type: boolean

true

Note

This is a slim version of country-state-city forked from here
I removed the timezones and the cities and all states besides states of USA and Canada in order to decrease the size of my project.
I also added a 'Region' field to each country.
if you want, you can use the original npm package