@shopify/name
TypeScript icon, indicating that this package has built-in type declarations

1.0.1 • Public • Published

@shopify/name

Build Status Build Status License: MIT npm version npm bundle size (minified + gzip)

Utilities for formatting localized names.

Installation

yarn add @shopify/name

formatName

Formats a name (given name and/or family name) according to the locale. For example:

  • formatName({name: {givenName: 'John', familyName: 'Smith'}, locale: 'en'}) will return John in English and Smith様 in Japanese
  • formatName({name: {givenName: 'John', familyName: 'Smith'}, locale: 'en', options: {full: true}}) will return John Smith in English and SmithJohn in Japanese

hasFamilyNameGivenNameOrdering

Returns true when the provided locale formats family name before given name. For example:

  • hasFamilyNameGivenNameOrdering('ja') will return true
  • hasFamilyNameGivenNameOrdering('en') will return false

abbreviateName

Takes a name (given and family name) and returns a language appropriate abbreviated name, or will return formatName if it is unable to find a suitable abbreviation.

For example:

  • abbreviateName({name: {givenName: 'John', familyName: 'Smith'}, locale: 'en'}) will return JS
  • abbreviateName({name: {givenName: '健', familyName: '田中'}, locale: 'en'}) will return 田中

You may also pass an optional idealMaxLength parameter, which gives the maximum allowable abbreviation length when trying to abbreviate a name in the Korean language (default 3 characters). In Korean, if the given name is longer than this length, the method will instead return the first character of the given name.

abbreviateBusinessName

Takes a business name and returns a language appropriate abbreviated name, or will return the input name if it is unable to find a suitable abbreviation.

For example:

  • abbreviateBusinessName({name: 'Shopify'}) will return Sho
  • abbreviateBusinessName({name: 'My Store'}) will return MS
  • abbreviateBusinessName({name: '任天堂'}) will return 任天堂

You may also pass an optional idealMaxLength parameter, which gives the maximum allowable abbreviation length when trying to abbreviate a name.

Readme

Keywords

none

Package Sidebar

Install

npm i @shopify/name

Weekly Downloads

38,113

Version

1.0.1

License

MIT

Unpacked Size

49.3 kB

Total Files

52

Last publish

Collaborators

  • jaimie.rockburn
  • blittle
  • shopify-admin
  • maryharte
  • crisfmb
  • pmoloney89
  • netlohan
  • st999999
  • justin-irl
  • megswim
  • wcandillon
  • nathanpjf
  • shopify-dep
  • goodforonefare
  • lemonmade
  • vsumner
  • wizardlyhel
  • antoine.grant
  • tsov
  • andyw8-shopify
  • henrytao
  • hannachen
  • vividviolet
  • bpscott