amos-tool
Version:
amos ui tool
15 lines (12 loc) • 847 B
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"), _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray")), utils = require("./utils");
function getTreeFlatKeys(e) {
var r = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, t = [], u = r.uniqueKey, l = void 0 === u ? "key" : u, i = r.childrenKey, a = void 0 === i ? "children" : i;
return utils.isArray(e) ? e.forEach(function(e) {
utils.isOnlyObject(e) && (l in e && t.push(e[l]), e[a] && t.push.apply(t, (0, _toConsumableArray2.default)(getTreeFlatKeys(e[a], r))));
}) : utils.isOnlyObject(e) && (l in e && t.push(e[l]), e[a] && t.push.apply(t, (0,
_toConsumableArray2.default)(getTreeFlatKeys(e[a], r)))), t;
}
module.exports = {
getTreeFlatKeys: getTreeFlatKeys
};