# i18n-list-generator

> Generate localized lists

Latest version **1.0.2** (published 2016-08-31) · MIT license · 0 weekly downloads

## Install

```sh
npm install i18n-list-generator
pnpm add i18n-list-generator
yarn add i18n-list-generator
bun add i18n-list-generator
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.2 |
| Published | 2016-08-31 |
| First published | 2016-08-31 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 3 |
| Author | James Smith |
| Maintainers | jmeas |
| Keywords | i18n, l10n, internationalization, localization, lists, ltr, rtl, dynamic, string, translation, language |

## Links

- npm: https://www.npmjs.com/package/i18n-list-generator
- Repository: https://github.com/jmeas/i18n-list-generator.js
- Issues: https://github.com/jmeas/i18n-list-generator.js/issues
- npm.io page: https://npm.io/package/i18n-list-generator

## Alternatives

- [messageformat](https://npm.io/package/messageformat.md) — 329.7K weekly downloads
- [@mintlify/scraping](https://npm.io/package/@mintlify/scraping.md) — 294.8K weekly downloads
- [@mintlify/previewing](https://npm.io/package/@mintlify/previewing.md) — 209.5K weekly downloads
- [@mintlify/prebuild](https://npm.io/package/@mintlify/prebuild.md) — 209.5K weekly downloads
- [@mintlify/link-rot](https://npm.io/package/@mintlify/link-rot.md) — 206.3K weekly downloads

## Recent versions

- 1.0.2 (latest) — 2016-08-31
- 1.0.1 — 2016-08-31
- 1.0.0 — 2016-08-31

## README

# i18n-list-generator.js

Generate localized lists

[![Travis build status](http://img.shields.io/travis/jmeas/i18n-list-generator.js.svg?style=flat)](https://travis-ci.org/jmeas/i18n-list-generator.js)
[![Dependency Status](https://david-dm.org/jmeas/i18n-list-generator.js.svg)](https://david-dm.org/jmeas/i18n-list-generator.js)
[![devDependency Status](https://david-dm.org/jmeas/i18n-list-generator.js/dev-status.svg)](https://david-dm.org/jmeas/i18n-list-generator.js#info=devDependencies)

### Motivation

Generating dynamic lists is something that often needs to be handled in your
application logic. This is because common i18n formats don't supply a syntax
for translating dynamic lists.

For instance, the ICU Message Format, a popular syntax, does not support dynamic
lists.

In a LTR world, generating dynamic lists is straightforward: `myList.join(', ')`.
Things get more complex in RTL languages. Some languages, like Arabic, use a
reverse comma and place the space "before" (when read left-to-right) the comma.

Hebrew is also RTL, but uses the English version of the comma.

This library abstracts that logic away.

### Getting Started

The recommended way to install this library is through
[npm](https://nodejs.org/en/download/).

```
npm i i18n-list-generator.js
```

Then, import the library in your application.

```js
import generateList from 'i18n-list-generator';

generateList([1, 2, 3], 'en');
```

### API

##### `generateList( arr, languageCode )`

`arr` is the list of items. Any array-like object works as long as it implements
the `join` and `reverse` methods.

`languageCode` is any ISO 639-1 language code.

### Example Usage

```js
const myArr = [1, 2, 3];

generateList([1, 2, 3], 'ar')
// => '3 ،2 ،1'

generateList([1, 2, 3], 'he')
// => '3 ,2 ,1'

generateList([1, 2, 3], 'en')
// => '1, 2, 3'
```

---
_Source: https://npm.io/package/i18n-list-generator · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
