2.3.8 • Published 9 months ago

@zerodep/address-state v2.3.8

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

@zerodep/address-country

version language types license

CodeFactor Known Vulnerabilities

OpenSSF Best Practices

A parser to find where a state name or abbreviation is in a string.

Full documentation is available at the zerodep.app page.

Signature

declare const addressState: (address: string, countryIso2?: CountryIso2) => AddressState[];

interface AddressState {
  stateAbbr: StateUsAbbr | StateCaAbbr;
  source: string;
  ndx: number;
  length: number;
}

Function Parameters

The addressState function has the following parameters:

  • address - an address string
  • countryIso2 - optional 2-letter country code

Successful Response

The addressState function will return the following:

  • stateAbbr - the 2-letter abbreviation of the state
  • source - the string that matched to identify the state
  • ndx - the position in the string where the source match starts
  • length - the length of the matched string

Unsuccessful Response

The addressState function will throw an Error if the state cannot be found.

Examples

All @zerodep packages support both ESM and CJS formats, each complete with Typescript typings.

// ESM
import { addressState } from '@zerodep/address-state';

// CJS
const { addressState } = require('@zerodep/address-state');
// American address
addressState('1234 Main Street, Los Angeles California, 90210');
// or
addressState('1234 Main Street, Los Angeles California, 90210', 'US');
//  [
//    {
//      stateAbbr: 'CA',
//      source: 'California',
//      ndx: 30,
//      length: 10,
//    },
//  ]

// Canadian Address
addressState('13375 rue rita pierrefonds quebec h8z1j3');
// or
addressState('13375 rue rita pierrefonds quebec h8z1j3', 'CA');
// [
//   {
//     "stateAbbr": "QC",
//     "source": "qc",
//     "ndx": 27,
//     "length": 6,
//   }
// ]

// Unspecified country
addressState('1234 oregon street, toronto on');
// [
//   {
//     "stateAbbr": "ON",
//     "source": "on",
//     "ndx": 28,
//     "length": 2
//   },
//   {
//     "stateAbbr": "OR",
//     "source": "oregon",
//     "ndx": 5,
//     "length": 6
//   }
// ]

// no results found
addressState('unknown');
// []

ZeroDep Advantages

  • Zero npm dependencies - completely eliminates all risk of supply-chain attacks, decreases node_modules folder size
  • ESM & CJS - supports both ECMAScript modules and common JavaScript exports
  • Tree Shakable - built to be fully tree shakable ensuring your packages are the smallest possible size
  • Fully Typed - typescript definitions are provided/built-in to every package for a superior developer experience
  • Semantically Named - package and method names are easy to grok, remember, use, and read
  • Documented - actually useful documentation with examples at zerodep.app
  • Intelligently Packaged - multiple npm packages of different sizes available allowing a menu or a-la-carte composition of capabilities
  • 100% Tested - all methods and packages are fully unit tested
  • Predictably Versioned - semantically versioned for peace-of-mind upgrading, valuable changelogs for understand changes
  • MIT Licensed - permissively licensed for maximum usability
2.3.8

9 months ago

2.3.7

12 months ago

2.3.6

12 months ago

2.3.5

12 months ago

2.3.4

1 year ago

2.3.2

1 year ago

2.3.1

2 years ago

2.3.0

2 years ago

2.0.5

2 years ago

2.0.4

2 years ago

2.0.3

2 years ago

2.0.2

2 years ago

2.0.1

2 years ago

2.0.0

2 years ago