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

plurals-cldr

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

plurals-cldr

Plurals support, generated from CLDR.

  • 2.0.1
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
48K
decreased by-9.13%
Maintainers
1
Weekly downloads
 
Created
Source

plurals-cldr - plurals support for JS

CI NPM version Coverage Status

Key benefits:

  • Competely automated code generation from CLDR on update.
  • Generated code automatically tested with CLDR fixtures.
  • Both cardinal and ordinal forms support.
  • Rules for all languages are stored in single file in very compact form.

Installation

node.js:

$ npm install plurals-cldr

API

.(locale, number)

Returns form name for given number. Number can be passed as string to keep tailing decimal zeros. If locale not supported, returns null.

var plural = require('plural-cldr');

// Get cardinal form name
//
// Params:
//
// - locale
// - number (Number|String)
//
plural('ru', 0)   // -> 'many'
plural('ru', 1)   // -> 'one'
plural('ru', 2)   // -> 'few'
plural('ru', 19)  // -> 'many'
plural('ru', 0.5) // -> 'other'
.forms(locale)

Returns array of available forms for specified locale. If locale not supported, returns null.

.indexOf(locale, number)

Returns index of form for specified locale. That's convenient, if you wish to implement lookup from compact ordered list, like babelfish does.

If locale not supported, function returns -1.

Order of forms is the same for all languages: zero, one, two, few, many, other. Remove unavailable forms, and you will get indexes of each.

.ordinal(), .ordinal.forms(), ordinal.indexOf()

The same as above, but for ordinal forms.

Update CLDR version (for developers)

You need to bump cldr-core version & run rebuild:

npm install cldr-core@latest --save-dev
rm package-lock.json
rm -rf node_modules
npm install
npm run build

References

  1. CLDR downloads
  2. Latest chart
  3. Syntax description

Keywords

FAQs

Package last updated on 30 Nov 2021

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