You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							27 lines
						
					
					
						
							621 B
						
					
					
				
			
		
		
	
	
							27 lines
						
					
					
						
							621 B
						
					
					
				'use strict';
 | 
						|
 | 
						|
const areDiscriminatorValuesEqual = require('./areDiscriminatorValuesEqual');
 | 
						|
 | 
						|
/*!
 | 
						|
* returns discriminator by discriminatorMapping.value
 | 
						|
*
 | 
						|
* @param {Model} model
 | 
						|
* @param {string} value
 | 
						|
*/
 | 
						|
 | 
						|
module.exports = function getDiscriminatorByValue(discriminators, value) {
 | 
						|
  if (discriminators == null) {
 | 
						|
    return null;
 | 
						|
  }
 | 
						|
  for (const name of Object.keys(discriminators)) {
 | 
						|
    const it = discriminators[name];
 | 
						|
    if (
 | 
						|
      it.schema &&
 | 
						|
      it.schema.discriminatorMapping &&
 | 
						|
      areDiscriminatorValuesEqual(it.schema.discriminatorMapping.value, value)
 | 
						|
    ) {
 | 
						|
      return it;
 | 
						|
    }
 | 
						|
  }
 | 
						|
  return null;
 | 
						|
}; |