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.
		
		
		
		
		
			
		
			
				
					
					
						
							68 lines
						
					
					
						
							1.7 KiB
						
					
					
				
			
		
		
	
	
							68 lines
						
					
					
						
							1.7 KiB
						
					
					
				| 'use strict';
 | |
| 
 | |
| const SchemaTypeOptions = require('./SchemaTypeOptions');
 | |
| 
 | |
| /**
 | |
|  * The options defined on an Document Array schematype.
 | |
|  *
 | |
|  * ####Example:
 | |
|  *
 | |
|  *     const schema = new Schema({ users: [{ name: string }] });
 | |
|  *     schema.path('users').options; // SchemaDocumentArrayOptions instance
 | |
|  *
 | |
|  * @api public
 | |
|  * @inherits SchemaTypeOptions
 | |
|  * @constructor SchemaDocumentOptions
 | |
|  */
 | |
| 
 | |
| class SchemaDocumentArrayOptions extends SchemaTypeOptions {}
 | |
| 
 | |
| const opts = require('./propertyOptions');
 | |
| 
 | |
| /**
 | |
|  * If `true`, Mongoose will skip building any indexes defined in this array's schema.
 | |
|  * If not set, Mongoose will build all indexes defined in this array's schema.
 | |
|  *
 | |
|  * ####Example:
 | |
|  *
 | |
|  *     const childSchema = Schema({ name: { type: String, index: true } });
 | |
|  *     // If `excludeIndexes` is `true`, Mongoose will skip building an index
 | |
|  *     // on `arr.name`. Otherwise, Mongoose will build an index on `arr.name`.
 | |
|  *     const parentSchema = Schema({
 | |
|  *       arr: { type: [childSchema], excludeIndexes: true }
 | |
|  *     });
 | |
|  *
 | |
|  * @api public
 | |
|  * @property excludeIndexes
 | |
|  * @memberOf SchemaDocumentArrayOptions
 | |
|  * @type Array
 | |
|  * @instance
 | |
|  */
 | |
| 
 | |
| Object.defineProperty(SchemaDocumentArrayOptions.prototype, 'excludeIndexes', opts);
 | |
| 
 | |
| /**
 | |
|  * If set, overwrites the child schema's `_id` option.
 | |
|  *
 | |
|  * ####Example:
 | |
|  *
 | |
|  *     const childSchema = Schema({ name: String });
 | |
|  *     const parentSchema = Schema({
 | |
|  *       child: { type: childSchema, _id: false }
 | |
|  *     });
 | |
|  *     parentSchema.path('child').schema.options._id; // false
 | |
|  *
 | |
|  * @api public
 | |
|  * @property _id
 | |
|  * @memberOf SchemaDocumentArrayOptions
 | |
|  * @type Array
 | |
|  * @instance
 | |
|  */
 | |
| 
 | |
| Object.defineProperty(SchemaDocumentArrayOptions.prototype, '_id', opts);
 | |
| 
 | |
| /*!
 | |
|  * ignore
 | |
|  */
 | |
| 
 | |
| module.exports = SchemaDocumentArrayOptions; |