Skip to main content

Function: resolveEnum()

function resolveEnum(
source,
entity,
ref
):
| {
dbName?: string;
doc?: string;
name: string;
values: {
dbName?: string;
doc?: string;
name: string;
}[];
}
| undefined;

Defined in: packages/ir/src/helpers.ts:34

Entity-local enums shadow source-level enums of the same name.

Parameters​

ParameterType
source{ entities: { [key: string]: { 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; }[]; }; }; enums: { [key: string]: { dbName?: string; doc?: string; name: string; values: { dbName?: string; doc?: string; name: string; }[]; }; }; namespace: string; parser: string; parserVersion?: string; typeAliases?: { [key: string]: { doc?: string; name: string; type: FieldType; }; }; }
source.entities{ [key: string]: { 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; }[]; }; }
source.enums{ [key: string]: { dbName?: string; doc?: string; name: string; values: { dbName?: string; doc?: string; name: string; }[]; }; }
source.namespacestring
source.parserstring
source.parserVersion?string
source.typeAliases?{ [key: string]: { doc?: string; name: string; type: FieldType; }; }
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; }[]; } | undefined
refstring

Returns​

| { dbName?: string; doc?: string; name: string; values: { dbName?: string; doc?: string; name: string; }[]; } | undefined