fast-sort-lens
v1.0.2
Published
API wrapper around fast-sort
Downloads
375
Maintainers
Readme
fast-sort-lens
API wrapper around fast-sort
Install
$ pnpm add fast-sort-lensAPI
import { fastOrderBy, fastSortWithRules } from 'fast-sort-lens'fastOrderBy
just like lodash.orderBy or es-toolkit.orderBy API spec.
const list = [
{ id: 1, name: 'a' },
{ id: 1, name: 'c' },
{ id: 2, name: 'b' },
{ id: 3, name: 'c' },
{ id: 3, name: 'a' },
]
expect(fastOrderBy(list, ['id', 'name'], ['desc', 'desc'])).toEqual([
{ id: 3, name: 'c' },
{ id: 3, name: 'a' },
{ id: 2, name: 'b' },
{ id: 1, name: 'c' },
{ id: 1, name: 'a' },
])fastSortWithRules
const list = [
{ id: 1, name: 'a' },
{ id: 1, name: 'c' },
{ id: 2, name: 'b' },
{ id: 3, name: 'c' },
{ id: 3, name: 'a' },
]
expect(fastSortWithRules(list, [{ prop: 'id', order: 'asc' }])).toEqual([
{ id: 1, name: 'a' },
{ id: 1, name: 'c' },
{ id: 2, name: 'b' },
{ id: 3, name: 'c' },
{ id: 3, name: 'a' },
])
expect(
fastSortWithRules(list, [
{ prop: 'id', order: 'desc' },
{ prop: 'name', order: 'desc' },
]),
).toEqual([
{ id: 3, name: 'c' },
{ id: 3, name: 'a' },
{ id: 2, name: 'b' },
{ id: 1, name: 'c' },
{ id: 1, name: 'a' },
])Changelog
See Releases
License
the MIT License http://magicdawn.mit-license.org
