Алгоритмы сжатия списков чисел для передачи в текстовом виде. В реализацию входят парсер строк и поле для django-rest-framework.
Поддерживаются 2 способа сжатия: диапазоны с выносом за скобку и дельта-строки.
- 
Сжимает строку по одному из двух способов сжатия, который можно выбрать:
- диапазоны с выносом за скобку
 - дельта-строки
 
 - 
Разжимает строку, сжатую по одному из двух алгоритмов.
 
$ npm install zip-numbers
const zip = require('zip-numbers');
zip.encode([1,3,6]);
//=> '1(0,2,5)'
zip.encode([1,3,6], zip.constants.MODE_SIMPLE_STRING);
//=> '1(0,2,5)'
zip.encode([1,3,6], zip.constants.MODE_DELTA_STRING);
//=> '~.123'const zip = require('zip-numbers');
zip.decode('1(0,2,5)');
//=> [1, 3, 6]
zip.decode('~.123');
//=> [1, 3, 6]- encode(tokens, [mode]) ⇒ 
string Encodes an array of tokens into a string.
- decode(string) ⇒ 
Array.<number> Decodes a string into an array of tokens.
Encodes an array of tokens into a string.
Returns: string - Encoded string.
| Param | Type | Default | Description | 
|---|---|---|---|
| tokens | Array.<number> | 
Array of tokens. | |
| [mode] | number | 
MODE_SIMPLE_STRING | 
Mode: MODE_SIMPLE_STRING or MODE_DELTA_STRING. See: zip.constants | 
Decodes a string into an array of tokens.
Returns: Array.<number> - Array of tokens.
| Param | Type | Description | 
|---|---|---|
| string | string | 
Encoded string. |