Skip to content

Commit

Permalink
update repository
Browse files Browse the repository at this point in the history
  • Loading branch information
timche committed Apr 12, 2018
1 parent f3416f0 commit 023d3bc
Show file tree
Hide file tree
Showing 14 changed files with 4,895 additions and 109 deletions.
4 changes: 0 additions & 4 deletions .babelrc

This file was deleted.

15 changes: 0 additions & 15 deletions .eslintrc

This file was deleted.

3 changes: 1 addition & 2 deletions .gitignore
@@ -1,4 +1,3 @@
node_modules
coverage
.DS_Store
*.log
lib
5 changes: 0 additions & 5 deletions .npmignore

This file was deleted.

6 changes: 5 additions & 1 deletion .travis.yml
@@ -1,3 +1,7 @@
language: node_js
node_js:
- "iojs"
- "node"
script:
- npm run format:check
- npm run lint
- npm test
24 changes: 0 additions & 24 deletions Makefile

This file was deleted.

4 changes: 1 addition & 3 deletions README.md
@@ -1,10 +1,8 @@
reduce-reducers
===============
# reduce-reducers

[![build status](https://img.shields.io/travis/acdlite/reduce-reducers/master.svg?style=flat-square)](https://travis-ci.org/acdlite/reduce-reducers)
[![npm version](https://img.shields.io/npm/v/reduce-reducers.svg?style=flat-square)](https://www.npmjs.com/package/reduce-reducers)


Reduce multiple reducers into a single reducer from left to right.

```
Expand Down
2 changes: 2 additions & 0 deletions lib/index.js
@@ -0,0 +1,2 @@
module.exports = (...reducers) => (previous, current) =>
reducers.reduce((p, r) => r(p, current), previous);
56 changes: 33 additions & 23 deletions package.json
@@ -1,36 +1,46 @@
{
"name": "reduce-reducers",
"name": "@redux-utilities/reduce-reducers",
"version": "0.1.2",
"description": "Reduce multiple reducers into a single reducer",
"main": "lib/index.js",
"scripts": {
"test": "make test",
"prepublish": "make clean build"
},
"keywords": [
"reduce",
"reducers",
"functional",
"fp",
"redux"
],
"license": "MIT",
"author": "Andrew Clark <acdlite@me.com>",
"bugs": {
"url": "https://github.com/acdlite/reduce-reducers/issues"
},
"homepage": "https://github.com/acdlite/reduce-reducers",
"repository": {
"type": "git",
"url": "https://github.com/acdlite/reduce-reducers.git"
"files": [
"lib"
],
"main": "lib/index.js",
"repository": "redux-utilities/reduce-reducers",
"scripts": {
"precommit": "lint-staged",
"format": "prettier --write \"{lib,test}/*.js\"",
"format:check": "prettier --list-different \"{lib,test}/*.js\"",
"lint": "xo",
"test": "ava"
},
"license": "MIT",
"devDependencies": {
"babel": "^5.6.14",
"babel-core": "^5.6.15",
"babel-eslint": "^4.1.8",
"chai": "^3.0.0",
"eslint": "^0.24.0",
"eslint-config-airbnb": "0.0.6",
"mocha": "^2.2.5"
"ava": "^1.0.0-beta.3",
"eslint-plugin-prettier": "^2.6.0",
"husky": "^0.14.3",
"lint-staged": "^7.0.4",
"prettier": "^1.12.0",
"xo": "^0.20.3"
},
"xo": {
"prettier": true,
"space": true
},
"prettier": {
"singleQuote": true,
"bracketSpacing": true
},
"lint-staged": {
"*.js": [
"prettier --write",
"git add"
]
}
}
2 changes: 0 additions & 2 deletions src/__tests__/init.js

This file was deleted.

23 changes: 0 additions & 23 deletions src/__tests__/reduceReducers-test.js

This file was deleted.

7 changes: 0 additions & 7 deletions src/index.js

This file was deleted.

22 changes: 22 additions & 0 deletions test/index.spec.js
@@ -0,0 +1,22 @@
import test from 'ava';
import reduceReducers from '../lib';

test('combines multiple reducers into a single reducer', t => {
const reducer = reduceReducers(
(prev, curr) => ({ ...prev, A: prev.A + curr }),
(prev, curr) => ({ ...prev, B: prev.B * curr })
);

t.deepEqual(reducer({ A: 1, B: 2 }, 3), { A: 4, B: 6 });
t.deepEqual(reducer({ A: 5, B: 8 }, 13), { A: 18, B: 104 });
});

test('chains multiple reducers into a single reducer', t => {
const addReducer = (prev, curr) => ({ ...prev, A: prev.A + curr });
const multReducer = (prev, curr) => ({ ...prev, A: prev.A * curr });
const reducerAddMult = reduceReducers(addReducer, multReducer);
const reducerMultAdd = reduceReducers(multReducer, addReducer);

t.deepEqual(reducerAddMult({ A: 1, B: 2 }, 3), { A: 12, B: 2 });
t.deepEqual(reducerMultAdd({ A: 1, B: 2 }, 3), { A: 6, B: 2 });
});

0 comments on commit 023d3bc

Please sign in to comment.