us-state-converter-plus
v1.0.8
Published
A port of us-state-converter, a package that converts U.S. state abbreviations to full names and back
Downloads
494
Maintainers
Readme
us-state-converter
The US State Converter package is a module made by Kevin Smith to convert state names to their USPS abbreviations or vice versa. This repository is a port of us-state-converter. Any feedback will be appreciated.
Installation
NPM:
npm install us-state-converter-plus
Yarn:
yarn add us-state-converter-plus
Usage
Import the package first
const states = require('us-state-converter-plus')
You can get a full list of objects for each US state and territory by calling the function with no parameters
const listOfStates = states()
console.log(listOfStates)
/* This will return an array of objects for each state including the state name, USPS, ISO, and USCG abbreviations, and the demonym for each state */
A single object for an individual state can be retrieved by passing a USPS abbreviation or a full state name
const wiscObject = states('WI')
console.log(wiscObject)
/* Will log: {
name: 'Wisconsin',
usps: 'WI',
demonym: 'Wisconsinite',
iso: 'US-WI',
altAbbr: [ 'Wis', 'Wisc' ],
uscg: 'WS'
}
*/
You can get the USPS abbreviation directly by using the .abbr()
method
const abbr = states.abbr('Illinois')
console.log(abbr) // <- Logs 'IL'
You can do a reverse search using the USPS abbreviation to get the full name of the state, as well, using the .fullName()
method
const state = states.fullName('MN')
console.log(state) // <- Logs 'Minnesota'
If you need a list of just the 50 states without territories or DC, the .only50()
method will do that for you
const fiftyStates = states.only50()
console.log(fiftyStates)
/* This will log the same array of objects as states(), only with the territories and DC removed */
Finally, I added a method to find the demonym for any state, for funsies. the method is simply called .demonym()
const cheesehead = states.demonym('Wisconsin')
console.log(cheeshead) // <- Logs 'Wisconsinite', actually 🧀
That's it for now! I would love any feedback or ideas on how I can expand this.