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.
		
		
		
		
		
			
		
			
				
					59 lines
				
				1.3 KiB
			
		
		
			
		
	
	
					59 lines
				
				1.3 KiB
			| 
											3 years ago
										 | 'use strict'; | ||
|  | 
 | ||
|  | const SchemaTypeOptions = require('./SchemaTypeOptions'); | ||
|  | 
 | ||
|  | /** | ||
|  |  * The options defined on an Array schematype. | ||
|  |  * | ||
|  |  * ####Example: | ||
|  |  * | ||
|  |  *     const schema = new Schema({ tags: [String] }); | ||
|  |  *     schema.path('tags').options; // SchemaArrayOptions instance
 | ||
|  |  * | ||
|  |  * @api public | ||
|  |  * @inherits SchemaTypeOptions | ||
|  |  * @constructor SchemaArrayOptions | ||
|  |  */ | ||
|  | 
 | ||
|  | class SchemaArrayOptions extends SchemaTypeOptions {} | ||
|  | 
 | ||
|  | const opts = require('./propertyOptions'); | ||
|  | 
 | ||
|  | /** | ||
|  |  * If this is an array of strings, an array of allowed values for this path. | ||
|  |  * Throws an error if this array isn't an array of strings. | ||
|  |  * | ||
|  |  * @api public | ||
|  |  * @property enum | ||
|  |  * @memberOf SchemaArrayOptions | ||
|  |  * @type Array | ||
|  |  * @instance | ||
|  |  */ | ||
|  | 
 | ||
|  | Object.defineProperty(SchemaArrayOptions.prototype, 'enum', opts); | ||
|  | 
 | ||
|  | /** | ||
|  |  * If set, specifies the type of this array's values. Equivalent to setting | ||
|  |  * `type` to an array whose first element is `of`. | ||
|  |  * | ||
|  |  * ####Example: | ||
|  |  * | ||
|  |  *     // `arr` is an array of numbers.
 | ||
|  |  *     new Schema({ arr: [Number] }); | ||
|  |  *     // Equivalent way to define `arr` as an array of numbers
 | ||
|  |  *     new Schema({ arr: { type: Array, of: Number } }); | ||
|  |  * | ||
|  |  * @api public | ||
|  |  * @property of | ||
|  |  * @memberOf SchemaArrayOptions | ||
|  |  * @type Function|String | ||
|  |  * @instance | ||
|  |  */ | ||
|  | 
 | ||
|  | Object.defineProperty(SchemaArrayOptions.prototype, 'of', opts); | ||
|  | 
 | ||
|  | /*! | ||
|  |  * ignore | ||
|  |  */ | ||
|  | 
 | ||
|  | module.exports = SchemaArrayOptions; |