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

2.1.0 • Public • Published

@shopify/i18n

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

Generic i18n-related utilities.

Installation

yarn add @shopify/i18n

Usage

pseudotranslate()

Takes a string and returns a version of it that appears as if it were translated (learn more about pseudotranslation).

This function accepts a number of arguments to customize the translation:

  • toLocale: a locale to simulate translation for. This is used primarily to adjust the change in size relative to the original string. When not provided, or when a locale is provided for which no custom size ratio exists, this function slightly increases the string size.
  • delimiter, startDelimiter, endDelimiter: strings used to mark parts of the source string that should not be translated. This can be used, for example, to prevent translation of replacements within a string.
  • prepend and append: strings to put at the start and end of the resulting string, respectively. This can be used to provide a common set of text around pseudotranslated code that can identify translated strings that are incorrectly joined together.
import {pseudotranslate} from '@shopify/react-i18n';

const pseudoOne = pseudoTranslate('cat'); // something like 'ͼααṭ'
const pseudoTwo = pseudoTranslate('cats: {names}', {
  toLocale: 'de',
  startDelimiter: '{',
  endDelimiter: '}',
  prepend: '[[!',
  append: '!]]',
}); // something like '[[!ͼααṭṡṡ: {names}]]!'

regionFromLocale()

Accepts a locale and extracts the country code as defined in BCP 47, if it exists. The country code will be normalized to fully uppercase when present.

import {regionFromLocale} from '@shopify/i18n';

const regionEn = regionFromLocale('en'); // undefined
const regionEnCa = regionFromLocale('en-ca'); // 'CA'

languageFromLocale()

Accepts a locale and extracts the language subtag as defined in BCP 47.

import {languageFromLocale} from '@shopify/i18n';

const languageFrCa = languageFromLocale('fr-CA'); // 'fr'

Readme

Keywords

none

Package Sidebar

Install

npm i @shopify/i18n

Weekly Downloads

59,713

Version

2.1.0

License

MIT

Unpacked Size

19 kB

Total Files

20

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