Home

Awesome

#Ftools This is a collection of functions I use a lot. I got tired of copypasting them and/or reinventing the wheel over and over so I gathered them all here.

##Usage npm install @alexeisavca/ftools

This package is modular, there is no entry point, you import only the functions you need, this way it prevents dead code in your project.

import add from "@alexeisavca/ftools/math/add";
[1,2,3].reduce(add);//6

##Docs

dstructs

Contains functions related to transformations and parsing of data structures

obj2tuples::object => [(any, any)]

Converts an object to an array of [key, value] arrays aka tuples

obj2tuples({a: 1, b:2, c: 3})//[['a', 1], ['b', 2], ['c', 3']]

tuples2obj::[(any, any)] => object

Reverse of the above. Converts and array of (key, value) tuples to an object

tuples2obj([['a', 1], ['b', 2], ['c', 3]])//{a: 1, b:2, c: 3}

withTuples::(object, [(any, any)] => [(any, any)]) => object

Combination of the above. Converts an object to tuples and passes it to the callback, then converts the returned tuple array to an object

withTuples({a: 1, b: 2}, tuples => tuples.map(([key, value]) => [key + "prime", value + 1]))//{aprime: 2, bprime: 3}

mapObjTuples::(object, (any, any) => (any, any)) => object

Shorthand for the above

mapObjTuples({a: 1, b: 2}, ([key, value]) => [key + "prime", value + 1])//{aprime: 2, bprime: 3}

mapObjValues::(object, any => any) => object

Maps only the values of an object

mapObjValues({a: 1, b: 2}, inc)//{a: 2, b: 3}

func

Contains higher order functions

pipe::(...args) => (...functions) => any

Function composition and application

pipe(1, 2, 3)(a, b, c)

is the same as

c(b(a(1, 2, 3)))

compose::(...functions) => (...args) => any

Function composition and application

compose(a, b, c)(1, 2, 3)

is the same as

a(b(c(1, 2, 3);

math

Contains math related functions

add::(any, any) => any

Adds its arguments using '+', doesn't typecheck, can add numbers as well as concat strings

inc::any => any

Incrementation

dec::any => any

Decrementation

strings

String related functions

capitalize::string => string

Capitalizes the first character of a string