JSPM

pluralize-js

8.0.1
    • ESM via JSPM
    • ES Module Entrypoint
    • Export Map
    • Keywords
    • License
    • Repository URL
    • TypeScript Types
    • README
    • Created
    • Published
    • Downloads 1
    • Score
      100M100P100Q52684F
    • License MIT

    Package Exports

    • pluralize-js

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (pluralize-js) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    Pluralize

    NPM version NPM downloads Build status Test coverage File Size CDNJS

    Pluralize and singularize any word.

    Installation

    npm install pluralize --save
    yarn add pluralize
    bower install pluralize --save

    Node

    var pluralize = require('pluralize')

    AMD

    define(function(require, exports, module) {
      var pluralize = require('pluralize')
    })

    <script> tag

    <script src="pluralize.js"></script>

    Why?

    This module uses a pre-defined list of rules, applied in order, to singularize or pluralize a given word. There are many cases where this is useful, such as any automation based on user input. For applications where the word(s) are known ahead of time, you can use a simple ternary (or function) which would be a much lighter alternative.

    Usage

    • word: string The word to pluralize
    • count: number How many of the word exist
    • inclusive: boolean Whether to prefix with the number (e.g. 3 ducks)

    Examples:

    pluralize('test') //=> "tests"
    pluralize('test', 0) //=> "tests"
    pluralize('test', 1) //=> "test"
    pluralize('test', 5) //=> "tests"
    pluralize('test', 1, true) //=> "1 test"
    pluralize('test', 5, true) //=> "5 tests"
    pluralize('蘋果', 2, true) //=> "2 蘋果"
    
    // Example of new plural rule:
    pluralize.plural('regex') //=> "regexes"
    pluralize.addPluralRule(/gex$/i, 'gexii')
    pluralize.plural('regex') //=> "regexii"
    
    // Example of new singular rule:
    pluralize.singular('singles') //=> "single"
    pluralize.addSingularRule(/singles$/i, 'singular')
    pluralize.singular('singles') //=> "singular"
    
    // Example of new irregular rule, e.g. "I" -> "we":
    pluralize.plural('irregular') //=> "irregulars"
    pluralize.addIrregularRule('irregular', 'regular')
    pluralize.plural('irregular') //=> "regular"
    
    // Example of uncountable rule (rules without singular/plural in context):
    pluralize.plural('paper') //=> "papers"
    pluralize.addUncountableRule('paper')
    pluralize.plural('paper') //=> "paper"
    
    // Example of asking whether a word looks singular or plural:
    pluralize.isPlural('test') //=> false
    pluralize.isSingular('test') //=> true

    License

    MIT