Class: EmbedType
EmbedType
will allow declaration of path as another schema, set type to the sub-schema's instance.
Options
- required flag to define if the field is mandatory
- validator that will be applied to the field a validation function, validation object or string with the name of the custom validator
- default that will define the initial value of the field, this option allows a value or a function
- immutable that will define this field as immutable. Ottoman prevents you from changing immutable fields if the schema as configure like strict
Example
const userSchema = new Schema({
name: String,
email: Schema.Types.String,
createAt: Date,
});
const schema = new Schema({
...
user: userSchema
});
You can also use a JavaScript plain Object as value for an EmbedType
.
Therefore the below example will behave the same as the example above.
const schema = new Schema({
...
user: {
name: String,
email: String,
createAt: Date,
}
});
Tip
EmbedType
will allow you to easily reuse existing schemas into new ones using composition.
Hierarchy
↳
EmbedType
Constructors
constructor
• new EmbedType(name
, schema
, options?
)
Parameters
Name | Type |
---|---|
name | string |
schema | Schema |
options? | CoreTypeOptions |
Overrides
Defined in
Properties
name
• name: string
Inherited from
Defined in
schema/interfaces/schema.types.ts:51
options
• Optional
options: CoreTypeOptions
Inherited from
Defined in
schema
• schema: Schema
Defined in
typeName
• typeName: string
Inherited from
Defined in
schema/interfaces/schema.types.ts:51
sName
▪ Static
sName: string
= 'Embed'
Overrides
Defined in
Accessors
default
• get
default(): unknown
Returns
unknown
Inherited from
CoreType.default
Defined in
required
• get
required(): boolean
| RequiredOption
| RequiredFunction
Returns
boolean
| RequiredOption
| RequiredFunction
Inherited from
CoreType.required
Defined in
validator
• get
validator(): undefined
| string
| ValidatorFunction
| ValidatorOption
Returns
undefined
| string
| ValidatorFunction
| ValidatorOption
Inherited from
CoreType.validator
Defined in
Methods
buildDefault
▸ buildDefault(): unknown
Returns
unknown
Inherited from
Defined in
cast
▸ cast(value
, strategy?
): unknown
Parameters
Name | Type | Default value |
---|---|---|
value | unknown | undefined |
strategy | CAST_STRATEGY | CAST_STRATEGY.DEFAULT_OR_DROP |
Returns
unknown
Overrides
Defined in
checkRequired
▸ checkRequired(): string
| void
Returns
string
| void
Inherited from
Defined in
checkValidator
▸ checkValidator(value
): void
Parameters
Name | Type |
---|---|
value | unknown |
Returns
void
Inherited from
Defined in
isEmpty
▸ isEmpty(value
): boolean
Parameters
Name | Type |
---|---|
value | unknown |
Returns
boolean
Inherited from
Defined in
isStrictStrategy
▸ isStrictStrategy(strategy
): boolean
Parameters
Name | Type |
---|---|
strategy | VALIDATION_STRATEGY |
Returns
boolean
Inherited from
Defined in
validate
▸ validate(value
, strategy
): any
Parameters
Name | Type |
---|---|
value | unknown |
strategy | any |
Returns
any