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.
		
		
		
		
		
			
		
			
				
					
					
						
							29 lines
						
					
					
						
							473 B
						
					
					
				
			
		
		
	
	
							29 lines
						
					
					
						
							473 B
						
					
					
				| 'use strict';
 | |
| 
 | |
| /*!
 | |
|  * ignore
 | |
|  */
 | |
| 
 | |
| module.exports = function(schema) {
 | |
|   // ensure the documents receive an id getter unless disabled
 | |
|   const autoIdGetter = !schema.paths['id'] &&
 | |
|     (!schema.options.noVirtualId && schema.options.id);
 | |
|   if (!autoIdGetter) {
 | |
|     return;
 | |
|   }
 | |
| 
 | |
|   schema.virtual('id').get(idGetter);
 | |
| };
 | |
| 
 | |
| /*!
 | |
|  * Returns this documents _id cast to a string.
 | |
|  */
 | |
| 
 | |
| function idGetter() {
 | |
|   if (this._id != null) {
 | |
|     return String(this._id);
 | |
|   }
 | |
| 
 | |
|   return null;
 | |
| }
 |