diff --git a/packages/fabric/domain/src/models/fields/index.ts b/packages/fabric/domain/src/models/fields/index.ts index acdfdc2..f70e4e4 100644 --- a/packages/fabric/domain/src/models/fields/index.ts +++ b/packages/fabric/domain/src/models/fields/index.ts @@ -3,6 +3,7 @@ import { createReferenceField, ReferenceField } from "./reference-field.js"; import { createStringField, StringField } from "./string-field.js"; import { createUUIDField, UUIDField } from "./uuid-field.js"; export * from "./base-field.js"; +export * from "./reference-field.js"; export type FieldDefinition = | StringField diff --git a/packages/fabric/domain/src/models/fields/reference-field.ts b/packages/fabric/domain/src/models/fields/reference-field.ts index 9dbcfc9..b8272ec 100644 --- a/packages/fabric/domain/src/models/fields/reference-field.ts +++ b/packages/fabric/domain/src/models/fields/reference-field.ts @@ -20,6 +20,10 @@ export function createReferenceField( } as const; } +export function getTargetKey(field: ReferenceField): string { + return field.targetKey || "id"; +} + export function validateReferenceField( schema: ModelSchema, field: ReferenceField,