stick-js
Version:
Fast toolkit for functional programming in JS. Provides idioms for referentially transparent expressions, clear separation of mutable and immutable operations, object factories, function calls based on English grammar, and pipe & compose operators.
1 lines • 2.27 kB
JavaScript
import{recurry}from"./curry.mjs";import{remapKeys as mapManual_remapKeys,_remapKeysWithFilter as mapManual__remapKeysWithFilter,remapValues as mapManual_remapValues,_remapValuesWithFilter as mapManual__remapValuesWithFilter,remapTuples as mapManual_remapTuples,_remapTuplesWithFilter as mapManual__remapTuplesWithFilter,mapKeys as mapManual_mapKeys,_mapKeysWithFilter as mapManual__mapKeysWithFilter,mapValues as mapManual_mapValues,_mapValuesWithFilter as mapManual__mapValuesWithFilter,mapTuples as mapManual_mapTuples,_mapTuplesWithFilter as mapManual__mapTuplesWithFilter,fromPairs as mapManual_fromPairs,toPairs as mapManual_toPairs}from"./map-manual.mjs";export const remapKeys=recurry(2)(mapManual_remapKeys);export const remapKeysWithFilter=recurry(3)(mapManual__remapKeysWithFilter);export const remapValues=recurry(2)(mapManual_remapValues);export const remapValuesWithFilter=recurry(3)(mapManual__remapValuesWithFilter);export const remapTuples=recurry(2)(mapManual_remapTuples);export const remapTuplesWithFilter=recurry(3)(mapManual__remapTuplesWithFilter);export const mapKeys=recurry(2)(mapManual_mapKeys);export const mapKeysWithFilter=recurry(3)(mapManual__mapKeysWithFilter);export const mapValues=recurry(2)(mapManual_mapValues);export const mapValuesWithFilter=recurry(3)(mapManual__mapValuesWithFilter);export const mapTuples=recurry(2)(mapManual_mapTuples);export const mapTuplesWithFilter=recurry(3)(mapManual__mapTuplesWithFilter);export const fromPairs=mapManual_fromPairs;export const toPairs=mapManual_toPairs;export const withFilter=recurry(2)(p=>mapper=>{const f=_withFilter.get(mapper);if(f==null)throw new Error('cannot augment mapper');return f(p);});const _withFilter=new Map().set(remapKeys,remapKeysWithFilter).set(mapManual_remapKeys,mapManual__remapKeysWithFilter).set(remapValues,remapValuesWithFilter).set(mapManual_remapValues,mapManual__remapValuesWithFilter).set(remapTuples,remapTuplesWithFilter).set(mapManual_remapTuples,mapManual__remapTuplesWithFilter).set(mapKeys,mapKeysWithFilter).set(mapManual_mapKeys,mapManual__mapKeysWithFilter).set(mapValues,mapValuesWithFilter).set(mapManual_mapValues,mapManual__mapValuesWithFilter).set(mapTuples,mapTuplesWithFilter).set(mapManual_mapTuples,mapManual__mapTuplesWithFilter);