Function: createFields()
function createFields(entity): {
constraints: {
format?: | "date"
| "datetime"
| "uuid"
| "email"
| "url"
| "cuid"
| "cuid2"
| "ulid"
| "time"
| "duration"
| "ipv4"
| "ipv6";
max?: number;
maxLength?: number;
min?: number;
minLength?: number;
regex?: string;
unique?: boolean;
};
dbName?: string;
default?: | {
kind: "value";
value: JsonValue;
}
| {
args?: JsonValue[];
expr: string;
kind: "expr";
};
doc?: string;
hidden?: boolean;
list: boolean;
name: string;
nullable: boolean;
optional: boolean;
type: FieldType;
}[];
Defined in: packages/ir/src/helpers.ts:391
Fields to include in a "create" payload: entity.fields minus the ones whose
only value source is db-side (a primary-key member that is isDbAssigned).
Parameters
| Parameter | Type |
|---|---|
entity | { additionalProperties?: FieldType; dbName?: string; doc?: string; enums?: { [key: string]: { dbName?: string; doc?: string; name: string; values: { dbName?: string; doc?: string; name: string; }[]; }; }; fields: { constraints: { format?: | "date" | "datetime" | "uuid" | "email" | "url" | "cuid" | "cuid2" | "ulid" | "time" | "duration" | "ipv4" | "ipv6"; max?: number; maxLength?: number; min?: number; minLength?: number; regex?: string; unique?: boolean; }; dbName?: string; default?: | { kind: "value"; value: JsonValue; } | { args?: JsonValue[]; expr: string; kind: "expr"; }; doc?: string; hidden?: boolean; list: boolean; name: string; nullable: boolean; optional: boolean; type: FieldType; }[]; indexes: ( | { fields: string[]; kind: "columns"; name?: string; type?: "btree" | "hash" | "gin" | "gist" | "brin" | "spgist"; } | { expression: string; kind: "expression"; name?: string; type?: "btree" | "hash" | "gin" | "gist" | "brin" | "spgist"; })[]; name: string; primaryKey?: string[]; relations: { backRelation?: string; cardinality: "one" | "many"; fkFields?: string[]; name: string; onDelete?: "cascade" | "restrict" | "setNull" | "setDefault" | "noAction"; onUpdate?: "cascade" | "restrict" | "setNull" | "setDefault" | "noAction"; optional: boolean; owning: boolean; references?: string[]; target: { entity: string; namespace: string; }; }[]; uniques: { fields: string[]; name?: string; }[]; } |
entity.additionalProperties? | FieldType |
entity.dbName? | string |
entity.doc? | string |
entity.enums? | { [key: string]: { dbName?: string; doc?: string; name: string; values: { dbName?: string; doc?: string; name: string; }[]; }; } |
entity.fields | { constraints: { format?: | "date" | "datetime" | "uuid" | "email" | "url" | "cuid" | "cuid2" | "ulid" | "time" | "duration" | "ipv4" | "ipv6"; max?: number; maxLength?: number; min?: number; minLength?: number; regex?: string; unique?: boolean; }; dbName?: string; default?: | { kind: "value"; value: JsonValue; } | { args?: JsonValue[]; expr: string; kind: "expr"; }; doc?: string; hidden?: boolean; list: boolean; name: string; nullable: boolean; optional: boolean; type: FieldType; }[] |
entity.indexes | ( | { fields: string[]; kind: "columns"; name?: string; type?: "btree" | "hash" | "gin" | "gist" | "brin" | "spgist"; } | { expression: string; kind: "expression"; name?: string; type?: "btree" | "hash" | "gin" | "gist" | "brin" | "spgist"; })[] |
entity.name | string |
entity.primaryKey? | string[] |
entity.relations | { backRelation?: string; cardinality: "one" | "many"; fkFields?: string[]; name: string; onDelete?: "cascade" | "restrict" | "setNull" | "setDefault" | "noAction"; onUpdate?: "cascade" | "restrict" | "setNull" | "setDefault" | "noAction"; optional: boolean; owning: boolean; references?: string[]; target: { entity: string; namespace: string; }; }[] |
entity.uniques | { fields: string[]; name?: string; }[] |