Skip to content
module@warp-drive/schema-dsl

Decorator field() ​

ts
function field(target: object, key: string): void;
function field(options: FieldOptions): (target: object, key: string) => void;

Call Signature ​

sincev5.9.0
ts
function field(target: object, key: string): void;

Defined in: fields/field.ts:62

Decorator

Marks a property as a GenericField — a plain field for primitive values (strings, numbers, booleans) — on a Resource, ObjectSchema, or Trait.

Parameters ​

target ​

object

key ​

string

Returns ​

void

Example ​

ts
import { Resource, field } from '@warp-drive/schema-dsl';

@Resource
export class User {
  @field declare firstName: string;
  @field({ type: 'date-time', sourceKey: 'created_at' }) declare createdAt: string;
}
json
[
  { "kind": "field", "name": "firstName" },
  { "kind": "field", "name": "createdAt", "type": "date-time", "sourceKey": "created_at" }
]

Call Signature ​

sincev5.9.0
ts
function field(options: FieldOptions): (target: object, key: string) => void;

Defined in: fields/field.ts:63

Decorator

Marks a property as a GenericField — a plain field for primitive values (strings, numbers, booleans) — on a Resource, ObjectSchema, or Trait.

Parameters ​

options ​

FieldOptions

Returns ​

(target: object, key: string) => void

Example ​

ts
import { Resource, field } from '@warp-drive/schema-dsl';

@Resource
export class User {
  @field declare firstName: string;
  @field({ type: 'date-time', sourceKey: 'created_at' }) declare createdAt: string;
}
json
[
  { "kind": "field", "name": "firstName" },
  { "kind": "field", "name": "createdAt", "type": "date-time", "sourceKey": "created_at" }
]

Released under the MIT License.