HTMLify
getConstructor.js
Views: 6 | Author: cody
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | 'use strict'; const getDiscriminatorByValue = require('./getDiscriminatorByValue'); /*! * Find the correct constructor, taking into account discriminators */ 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, value[discriminatorKey]); if (constructorByValue) { Constructor = constructorByValue; } } } return Constructor; }; |