Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

smart-table/smart-table-sort

Repository files navigation

smart-table-sort

CircleCI

takes a sort configuration object and returns a sort function operating on arrays (returning a new array without modifying the input array). For nodejs and browsers.

Installation

npm

npm install smart-table-sort --save

yarn

yarn add smart-table-sort

Usage

import sorter from 'smart-table-sort';
const input = [{prop: 'foo'}, {prop: 'bar'}, {prop: 'woot'}];
const sort = sorter({pointer:'prop', direction:'desc'}) // default direction is "asc"
const output = sort(input);
// > [{foo: 'woot'}, {prop: 'foo'}, {prop: 'bar'}]

it works on nested properties as well

import sorter from 'smart-table-sort';
const input = [
 {foo: {bar: 'bcd'}},
 {foo: {bar: 'acd'}},
 {foo: {bar: 'abd'}}
];
const output = sorter({pointer: 'foo.bar'})(input);
// > [{foo: {bar: 'abd'}},{foo: {bar: 'acd'}},{foo: {bar: 'bcd'}}]);

object conf

  • pointer: the property to use for ordering the collection (can be a nested property)
  • direction: 'asc', 'desc', 'none' (default is 'asc', 'none' will returned in the order of the input array untouched)

Contributing

Test

npm test

or

yarn test

Issues

Only bugs and must come with a running reproduction of the issue

About

take a sort configuration object and return a sort function operating on arrays

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

AltStyle によって変換されたページ (->オリジナル) /