Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

react-select-country-list

Package Overview
Dependencies
Maintainers
1
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-select-country-list

Maps ISO 3166-1-alpha-2 codes to English country names and match react-select options props

  • 2.2.1
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
36K
increased by2.03%
Maintainers
1
Weekly downloads
 
Created
Source

react-select-country-list

This package take country-list as reference, and make it more friendly to react-select

Maps ISO 3166-1-alpha-2 codes to English country names and match react-select options props.

Uses data from http://data.okfn.org/data/country-list

Install

npm install react-select-country-list --save

or

yarn add react-select-country-list

Example

import React, { Component } from 'react';
import Select from 'react-select'
import countryList from 'react-select-country-list'

class CountrySelector extends Component {
  constructor(props) {
    super(props)

    this.options = countryList().getData()

    this.state = {
      options: this.options,
      value: null,
    }
  }

  changeHandler = value => {
    this.setState({ value })
  }

  render() {
    return (
      <Select
        options={this.state.options}
        value={this.state.value}
        onChange={this.changeHandler}
      />
    )
  }
}

Methods

All input is case-insensitive.

getValue(label)

Expects the English country name. Returns the code for that country. If not found, it returns undefined.

getLabel(value)

Expects a two-digit country code. Returns the name for that country. If not found, it returns undefined.

getValues()

Returns an array of all country codes.

getLabels()

Returns an array of all country names.

getValueList()

Returns a key-value object of all countries using the code as key.

getLabelList()

Returns a key-value object of all countries using the name as key.

getData()

Returns an array of all country information, in the same format as it gets imported.

setLabel(value, label)

Due to different perspectives among different regions, this method can help developers customize the label of specific country. What's more, it can be chained with another methods above.

Usage
// Make 'Viet Nam' -> 'Vietnam'
countries.setLabel('VN', 'Vietnam').getLabel('VN') // 'Vietnam'

setEmpty(label)

You may want an empty value option in the list, so here's the helper function for you. Again, it can be chained with another methods above.

Usage
countries.setEmpty('Select a Country').getLabel('') // 'Select a Country'

We can even chain setLabel and setEmpty together to have list with an empty option and the modified label.

countries.setLabel('VN', 'Vietnam').setEmpty('Select a Country').getLabel('VN') // 'Vietnam'

native()

You may want to display native name of countries, this is the method for you. The data source of native names can be found here

Usage
countries.native().getLabel('TW') // 臺灣

License

MIT

Keywords

FAQs

Package last updated on 25 May 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc