|
@@ -3,7 +3,17 @@
|
|
|
module.exports = {
|
|
|
prop: prop => obj => obj[prop],
|
|
|
|
|
|
- defaults: (obj, values) => {
|
|
|
+ filter (obj, pred) {
|
|
|
+ return Object.keys(obj).reduce((filtered, key) => {
|
|
|
+ const value = obj[key];
|
|
|
+
|
|
|
+ if (pred(key, value)) {
|
|
|
+ filtered[key] = value;
|
|
|
+ }
|
|
|
+ }, {});
|
|
|
+ },
|
|
|
+
|
|
|
+ defaults (obj, values) {
|
|
|
Object.keys(values).forEach(key => {
|
|
|
if (!obj.hasOwnProperty(key)) {
|
|
|
obj[key] = values[key];
|