deno.land / x / mongoose@6.7.5 / lib / helpers / discriminator / getConstructor.js
123456789101112131415161718192021222324252627'use strict';
const getDiscriminatorByValue = require('./getDiscriminatorByValue');
/** * Find the correct constructor, taking into account discriminators * @api private */
module.exports = function getConstructor(Constructor, value) { const discriminatorKey = Constructor.schema.options.discriminatorKey; if (value != null && Constructor.discriminators && value[discriminatorKey] != null) { if (Constructor.discriminators[value[discriminatorKey]]) { Constructor = Constructor.discriminators[value[discriminatorKey]]; } else { const constructorByValue = getDiscriminatorByValue(Constructor.discriminators, value[discriminatorKey]); if (constructorByValue) { Constructor = constructorByValue; } } }
return Constructor;};
Version Info