API wrapper around fast-sort
npm install fast-sort-lens> API wrapper around fast-sort





``sh`
$ pnpm add fast-sort-lens
`ts`
import { fastOrderBy, fastSortWithRules } from 'fast-sort-lens'
just like lodash.orderBy or es-toolkit.orderBy API spec.
`ts
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' },
])
`
`ts
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' },
])
``
See Releases
the MIT License http://magicdawn.mit-license.org