+ queryObject to index router

This commit is contained in:
tmshv committed 2016-02-24 18:30:46 +03:00
1 parent c23f84ad76
commit 776485d3e5
1 file changed
+26
+26
View File
@@ -2,6 +2,32 @@ import path from 'path';
import fs from 'mz/fs';
import config from '../config';
export function queryObject(){
let assign = (dict, key, value) => {
dict[key] = value;
return dict;
};
let map = (v, fn) =>
value => fn(value) ? v : value;
let toTrue = map(true, i => i === 'true');
let toFalse = map(false, i => i === 'false');
const processors = [toTrue, toFalse];
return function *(next) {
let query = this.query;
this.query = Object.keys(query)
.reduce((query, key) => assign(
query,
key,
processors
.reduce((value, fn) => fn(value), query[key])
), query);
yield next;
}
}
export function accepts(routes, def) {
return function *() {
let req = this.request;