Skip to content

Variable: f

const f: object

Defined in: src/schema/fields.ts:42

Field builders. Use as the second argument to dorm.model(...):

ts
const User = dorm.model("users", {
  email:  f.string({ required: true, validate: isEmail }),
  salary: f.number({ default: 0 }),
  boss:   f.ref("users"),
}, { timestamps: true });

Type Declaration

string()

string<O>(opts?): FieldDef<"string", string, false | IsRequired<O>, false | HasDefault<O>>

Type Parameters

O

O extends FieldOpts<string>

Parameters

opts?

O

Returns

FieldDef<"string", string, false | IsRequired<O>, false | HasDefault<O>>

number()

number<O>(opts?): FieldDef<"number", number, false | IsRequired<O>, false | HasDefault<O>>

Type Parameters

O

O extends FieldOpts<number>

Parameters

opts?

O

Returns

FieldDef<"number", number, false | IsRequired<O>, false | HasDefault<O>>

boolean()

boolean<O>(opts?): FieldDef<"boolean", boolean, false | IsRequired<O>, false | HasDefault<O>>

Type Parameters

O

O extends FieldOpts<boolean>

Parameters

opts?

O

Returns

FieldDef<"boolean", boolean, false | IsRequired<O>, false | HasDefault<O>>

date()

date<O>(opts?): FieldDef<"date", Date, false | IsRequired<O>, false | HasDefault<O>>

Type Parameters

O

O extends FieldOpts<Date>

Parameters

opts?

O

Returns

FieldDef<"date", Date, false | IsRequired<O>, false | HasDefault<O>>

objectId()

objectId<O>(opts?): FieldDef<"objectId", string | ObjectId, false | IsRequired<O>, false | HasDefault<O>>

Type Parameters

O

O extends FieldOpts<string | ObjectId>

Parameters

opts?

O

Returns

FieldDef<"objectId", string | ObjectId, false | IsRequired<O>, false | HasDefault<O>>

ref()

ref<O>(collection, opts?): FieldDef<"ref", string | ObjectId, false | IsRequired<O>, false | HasDefault<O>>

A reference to a document in another collection. The collection name supplies $lookup.from when the field is traversed in a __ filter. Stored as an ObjectId; string values are coerced on write.

Type Parameters

O

O extends FieldOpts<string | ObjectId>

Parameters

collection

string

opts?

O

Returns

FieldDef<"ref", string | ObjectId, false | IsRequired<O>, false | HasDefault<O>>

array()

array<F, O>(element, opts?): FieldDef<"array", FieldType<F>[], false | IsRequired<O>, false | HasDefault<O>>

An array whose elements are validated against element (e.g. f.array(f.string())).

Type Parameters

F

F extends FieldDef<FieldKind, unknown, boolean, boolean>

O

O extends FieldOpts<FieldType<F>[]>

Parameters

element

F

opts?

O

Returns

FieldDef<"array", FieldType<F>[], false | IsRequired<O>, false | HasDefault<O>>

embedded()

embedded<SS, O>(schema, opts?): FieldDef<"embedded", InferEmbedded<SS>, false | IsRequired<O>, false | HasDefault<O>>

An embedded sub-document validated against its own schema.

Type Parameters

SS

SS extends SchemaDef

O

O extends FieldOpts<InferEmbedded<SS>>

Parameters

schema

SS

opts?

O

Returns

FieldDef<"embedded", InferEmbedded<SS>, false | IsRequired<O>, false | HasDefault<O>>

enum()

enum<V, O>(values, opts?): FieldDef<"enum", V[number], false | IsRequired<O>, false | HasDefault<O>>

A value constrained to one of values (e.g. f.enum(["admin", "member"])).

Type Parameters

V

V extends readonly (string | number)[]

O

O extends FieldOpts<V[number]>

Parameters

values

V

opts?

O

Returns

FieldDef<"enum", V[number], false | IsRequired<O>, false | HasDefault<O>>

Released under the MIT License.