@warlock.js/cascade
Version:
ORM for managing databases
24 lines (23 loc) • 798 B
JavaScript
import {isEmpty}from'@mongez/supportive-is';import {parsePipelines}from'./parsePipelines.js';import {Pipeline}from'./pipeline.js';class LookupPipeline extends Pipeline {
/**
* Constructor
*/
constructor(options) {
super("lookup");
const { from, localField, foreignField, as, pipeline = [] } = options;
const parsedPipelines = parsePipelines(pipeline);
const data = {
from,
localField,
foreignField,
as,
};
if (!isEmpty(parsedPipelines)) {
data.pipeline = parsedPipelines;
}
this.data(data);
}
}
function lookupPipeline(options) {
return new LookupPipeline(options);
}export{LookupPipeline,lookupPipeline};//# sourceMappingURL=LookupPipeline.js.map