JSPM

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

Angular library for handling pluralization in different languages.

Package Exports

  • ngs-plural
  • ngs-plural/package.json

Readme

ngs-plural

ngs-plural is a lightweight Angular library for handling pluralization in different languages using a pipe and a service. It simplifies the process of generating grammatically correct plural forms based on a numeric count and supports custom language rules.

  • Pipe: PluralizationLocalPipe for seamless pluralization in templates.
  • Service: PluralizationService provides reusable methods for programmatic pluralization.
  • Multi-language Support: Currently supports English and Russian.
  • Customizable: Easily extendable to include more languages and rules.

Installation & Usage

Install ngs-plural via npm:

npm install ngs-plural

PluralizationLocalPipe example:

import { Component } from "@angular/core";
import { ILangWordForms } from "ngs-plural";
import { PluralizationLocalPipe } from "ngs-plural";

@Component({
  selector: "app-root",
  template: ` <p>{{ count | pluralizationLocal: "en" : wordForms }}</p> `,
  standalone: true,
  imports: [PluralizationLocalPipe],
})
export class AppComponent {
  count = 5;
  wordForms: ILangWordForms = {
    en: ["apple", "apples"],
    ru: ["яблоко", "яблока", "яблок"],
  };
}

PluralizationService example:

import { Component } from "@angular/core";
import { PluralizationService, ILangWordForms } from "ngs-plural";

@Component({
  selector: "app-root",
  template: `<p>{{ result }}</p>`,
})
export class AppComponent {
  result: string;

  constructor(private pluralizationService: PluralizationService) {
    const count = 3;
    const wordForms: ILangWordForms = {
      en: ["apple", "apples"],
      ru: ["яблоко", "яблока", "яблок"],
    };
    this.result = this.pluralizationService.getPluralFormLocal(count, "ru", wordForms);
  }
}

Contributing

To contribute or use the library in development mode, you can clone the repository and install dependencies.

Steps to contribute:

  1. Fork the repository
  2. Clone the repo, install dependencies
git clone https://github.com/andrei-shpileuski/ngx-plural.git
cd ngx-plural
npm install
  1. Create a new branch for your changes
  2. Submit a pull request with a detailed description of the changes

Keywords

angular, pluralization, internationalization, i18n, localization, language support, multi-language, ng, ngs-plural, plural