fromfrom
fromfrom is a LINQ inspired library to transform sequences of data.
Installation
npm install --save fromfrom
Usage
The library exports only a single function, from
. from
wraps the given source data into an Enumerable
. Enumerable
has a wide range of chainable methods to operate and transform the sequence. The sequence can then be converted into a JS type.
For example
import { from } from "fromfrom";
const users = [
{ id: 1, name: "John", age: 31, active: true },
{ id: 2, name: "Jane", age: 32, active: false },
{ id: 3, name: "Luke", age: 33, active: false },
{ id: 4, name: "Mary", age: 34, active: true }
];
from(users)
.filter(user => user.active)
.sortByDescending(user => user.age)
.toArray();
Features
- Familiar method names - Even though it's LINQ inspired, uses familiar method names from JS.
- Supports all main JS types - Works with arrays, objects, maps, sets, and objects that implement the iterable protocol.
- No dependencies - Guarantees small size.
- Type safe - Written in TypeScript. Type definitions included.
- Deferred execution - The execution of the sequence is deferred until you begin consuming the sequence.
- Fully tested - 100% test coverage.
How does it work
Importing library
TODO
Development
NPM scripts
npm t
: Run test suitenpm start
: Run npm run build
in watch modenpm run test:watch
: Run test suite in interactive watch modenpm run test:prod
: Run linting and generate coveragenpm run build
: Generate bundles and typings, create docsnpm run lint
: Lints codenpm run commit
: Commit using conventional commit style (husky will tell you to use it if you haven't :wink:)
Acknowledgement
Made with :heart: by @TomiTurtiainen.
This project is a grateful recipient of the Futurice Open Source sponsorship program. ♥
Forked from TypeScript library starter