From a20ea675ee107fa95d9a61157bc54fbddd6106ed Mon Sep 17 00:00:00 2001 From: "Alex A. Naanou" Date: Fri, 5 Jul 2019 20:34:19 +0300 Subject: [PATCH] added mixinFlat(..) Signed-off-by: Alex A. Naanou --- object.js | 13 +++++++++++++ package.json | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/object.js b/object.js index 490ea60..d14587f 100755 --- a/object.js +++ b/object.js @@ -95,6 +95,19 @@ function(root, ...objects){ return o }, root) } +// Like .mixin(..) but will mixin all the methods/props/attrs directly +// (flatly) into root... +var mixinFlat = +module.mixinFlat = +function(root, ...objects){ + return objects + .reduce(function(root, cur){ + Object.keys(cur) + .map(function(k){ + Object.defineProperty(root, k, + Object.getOwnPropertyDescriptor(cur, k)) }) + return root }, root) } + //--------------------------------------------------------------------- diff --git a/package.json b/package.json index 7b7c101..3fcb4cc 100755 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ig-object", - "version": "1.3.0", + "version": "1.4.0", "description": "", "main": "object.js", "scripts": {