Locaft-backend/auth/node_modules/mongoose/lib/helpers/populate/lookupLocalFields.js

26 lines
468 B
JavaScript
Raw Normal View History

2020-11-08 09:28:21 -08:00
'use strict';
module.exports = function lookupLocalFields(cur, path, val) {
if (cur == null) {
return cur;
}
if (cur._doc != null) {
cur = cur._doc;
}
if (arguments.length >= 3) {
cur[path] = val;
return val;
}
// Support populating paths under maps using `map.$*.subpath`
if (path === '$*') {
return cur instanceof Map ?
Array.from(cur.values()) :
Object.keys(cur).map(key => cur[key]);
}
return cur[path];
};