@nestjs/mongoose
Version:
Nest - modern, fast, powerful node.js web framework (@mongoose)
24 lines • 891 B
JavaScript
import { TypeMetadataStorage } from '../storages/type-metadata.storage.js';
import { isUndefined } from '../utils/shared.utils.js';
export class VirtualsFactory {
static inspect(target, schema) {
let parent = target;
while (!isUndefined(parent.prototype)) {
if (parent === Function.prototype) {
break;
}
const virtuals = TypeMetadataStorage.getVirtualsMetadataByTarget(parent);
virtuals.forEach(({ options, name, getter, setter }) => {
const virtual = schema.virtual(name, options);
if (getter) {
virtual.get(getter);
}
if (setter) {
virtual.set(setter);
}
});
parent = Object.getPrototypeOf(parent);
}
}
}
//# sourceMappingURL=virtuals.factory.js.map