intl-sort-by
TypeScript icon, indicating that this package has built-in type declarations

0.0.4 • Public • Published

intl-sort-by

Sort simple arrays or array of objects by given keys in any direction. Supports international accented characters (diacritics).

Synopsis

const objects = [
  { initial: "Ö", class: 1, sub: { z: 1 } },
  { initial: "o", class: 1, sub: { z: 3 } },
  { initial: "ö", class: 2, sub: { z: 3 } },
  { initial: "ğ", class: 2, sub: { z: 2 } },
];
 
// Sort by `initial`
const sortedByInitial = sort(objects, "initial");
 
// Sort by `sub.z` and then `initial`.
const sortedByMulti = sort(objects, ["sub.z", "initial"]);
 
// Sort by `sub.z` in reverse order and then `initial`.
const sortedByMulti = sort(objects, ["-sub.z", "initial"]);
 
// Sort by `sub.z` in reverse order and then `initial`. Same as above, but with options.
const sortedByMulti = sort(objects, ["sub.z", "initial"], { order: ["desc", "asc"] });

API

intl-sort-by

intl-sort-by

Functions

sort

sort<T>(array: T[], keys?: string | Array‹string | string[]›, options: Options): T[]

Defined in index.ts:53

Sorts simple arrays or array of objects by given keys in any direction. Supports international accented characters (diacritics).

Type parameters:

T

Parameters:

Name Type Default Description
array T[] - is array to be sorted.
keys? string | Array‹string | string[]› - are keys to sort array based on. Could be a single value. If key starts with a hypen/minus (-), sorts in reverse order.
options Options {} -

Returns: T[]

sorted array.

Interfaces

intl-sort-byOptions

Interface: Options

Options for to be used when sorting.

Hierarchy

  • Options

Properties

Optional immutable

immutable? : undefined | false | true

Defined in index.ts:14

Sort without modifying original array.


Optional locale

locale? : undefined | string

Defined in index.ts:10

String with a BCP 47 language tag, or an array of such strings.


Optional order

order? : Order | Array‹Order›

Defined in index.ts:12

List of order directions to be used with given keys

Package Sidebar

Install

npm i intl-sort-by

Weekly Downloads

2

Version

0.0.4

License

ISC

Unpacked Size

15.4 kB

Total Files

9

Last publish

Collaborators

  • ozum