@prisma-next/sql-contract-ts 0.12.0-dev.59 → 0.12.0-dev.60

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -214,6 +214,29 @@ function buildSqlContractFromDefinition(definition, codecLookup) {
214
214
  });
215
215
  }
216
216
  const foreignKeys = (semanticModel.foreignKeys ?? []).map((fk) => {
217
+ if (fk.references.spaceId !== void 0) {
218
+ const targetNamespaceId = fk.references.namespaceId ?? defaultNamespaceId;
219
+ return {
220
+ source: {
221
+ namespaceId: asNamespaceId(namespaceId),
222
+ tableName,
223
+ columns: fk.columns
224
+ },
225
+ target: {
226
+ namespaceId: asNamespaceId(targetNamespaceId),
227
+ tableName: fk.references.table,
228
+ columns: fk.references.columns,
229
+ spaceId: fk.references.spaceId
230
+ },
231
+ ...applyFkDefaults({
232
+ ...ifDefined("constraint", fk.constraint),
233
+ ...ifDefined("index", fk.index)
234
+ }, definition.foreignKeyDefaults),
235
+ ...ifDefined("name", fk.name),
236
+ ...ifDefined("onDelete", fk.onDelete),
237
+ ...ifDefined("onUpdate", fk.onUpdate)
238
+ };
239
+ }
217
240
  const targetModel = assertKnownTargetModel(modelsByName, semanticModel.modelName, fk.references.model, "Foreign key");
218
241
  assertTargetTableMatches(semanticModel.modelName, targetModel, fk.references.table, "Foreign key");
219
242
  const targetNamespaceId = fk.references.namespaceId ?? (targetModel.namespaceId !== void 0 && targetModel.namespaceId.length > 0 ? targetModel.namespaceId : defaultNamespaceId);
@@ -273,6 +296,18 @@ function buildSqlContractFromDefinition(definition, codecLookup) {
273
296
  const columnToField = new Map(Object.entries(fieldToColumn).map(([field, col]) => [col, field]));
274
297
  const modelRelations = {};
275
298
  for (const relation of semanticModel.relations ?? []) {
299
+ if (relation.spaceId !== void 0) {
300
+ const targetNamespaceId = relation.namespaceId ?? defaultNamespaceId;
301
+ modelRelations[relation.fieldName] = {
302
+ to: crossRef(relation.toModel, targetNamespaceId, relation.spaceId),
303
+ cardinality: "N:1",
304
+ on: {
305
+ localFields: relation.on.parentColumns.map((col) => columnToField.get(col) ?? col),
306
+ targetFields: relation.on.childColumns
307
+ }
308
+ };
309
+ continue;
310
+ }
276
311
  const targetModel = assertKnownTargetModel(modelsByName, semanticModel.modelName, relation.toModel, "Relation");
277
312
  assertTargetTableMatches(semanticModel.modelName, targetModel, relation.toTable, "Relation");
278
313
  if (relation.cardinality === "N:M" && !relation.through) throw new Error(`Relation "${semanticModel.modelName}.${relation.fieldName}" with cardinality "N:M" requires through metadata`);
@@ -441,4 +476,4 @@ function buildSqlContractFromDefinition(definition, codecLookup) {
441
476
  //#endregion
442
477
  export { buildSqlContractFromDefinition as t };
443
478
 
444
- //# sourceMappingURL=build-contract-C9dZNMRg.mjs.map
479
+ //# sourceMappingURL=build-contract-6Rvs461H.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-contract-6Rvs461H.mjs","names":[],"sources":["../src/build-contract.ts"],"sourcesContent":["import {\n computeExecutionHash,\n computeProfileHash,\n computeStorageHash,\n} from '@prisma-next/contract/hashing';\nimport {\n asNamespaceId,\n type ColumnDefault,\n type ColumnDefaultLiteralInputValue,\n type Contract,\n type ContractEnum,\n type ContractField,\n type ContractModel,\n type ContractRelation,\n type ContractValueObject,\n type CrossReference,\n coreHash,\n crossRef,\n type ExecutionMutationDefault,\n type JsonValue,\n type StorageHashBase,\n type ValueSetRef,\n} from '@prisma-next/contract/types';\nimport { type CapabilityMatrix, mergeCapabilityMatrices } from '@prisma-next/contract-authoring';\nimport type { CodecLookup } from '@prisma-next/framework-components/codec';\nimport { UNBOUND_NAMESPACE_ID } from '@prisma-next/framework-components/ir';\nimport { sqlContractCanonicalizationHooks } from '@prisma-next/sql-contract/canonicalization-hooks';\nimport { validateIndexTypes } from '@prisma-next/sql-contract/index-type-validation';\nimport {\n createIndexTypeRegistry,\n type IndexTypeMap,\n type IndexTypeRegistration,\n} from '@prisma-next/sql-contract/index-types';\nimport {\n applyFkDefaults,\n buildSqlNamespace,\n isPostgresEnumStorageEntry,\n type PostgresEnumStorageEntry,\n type SqlNamespaceTablesInput,\n SqlStorage,\n type SqlStorageInput,\n type StorageColumn,\n StorageTable,\n type StorageTableInput,\n type StorageTypeInstance,\n type StorageValueSetInput,\n toStorageTypeInstance,\n} from '@prisma-next/sql-contract/types';\nimport { validateStorageSemantics } from '@prisma-next/sql-contract/validators';\nimport { blindCast } from '@prisma-next/utils/casts';\nimport { ifDefined } from '@prisma-next/utils/defined';\nimport type {\n ContractDefinition,\n FieldNode,\n ModelNode,\n ValueObjectFieldNode,\n} from './contract-definition';\n\ntype DomainFieldRef =\n | { readonly kind: 'scalar'; readonly many?: boolean }\n | { readonly kind: 'valueObject'; readonly name: string; readonly many?: boolean };\n\nfunction encodeDefaultLiteralValue(\n value: ColumnDefaultLiteralInputValue,\n codecId: string,\n codecLookup?: CodecLookup,\n): JsonValue {\n const codec = codecLookup?.get(codecId);\n if (codec) {\n return codec.encodeJson(value);\n }\n return value as JsonValue;\n}\n\nfunction encodeColumnDefault(\n defaultInput: ColumnDefault,\n codecId: string,\n codecLookup?: CodecLookup,\n): ColumnDefault {\n if (defaultInput.kind === 'function') {\n return { kind: 'function', expression: defaultInput.expression };\n }\n return {\n kind: 'literal',\n value: encodeDefaultLiteralValue(defaultInput.value, codecId, codecLookup),\n };\n}\n\nfunction assertStorageSemantics(\n definition: ContractDefinition,\n contract: Contract<SqlStorage>,\n): void {\n const semanticErrors = validateStorageSemantics(contract.storage);\n if (semanticErrors.length > 0) {\n throw new Error(`Contract semantic validation failed: ${semanticErrors.join('; ')}`);\n }\n\n const indexTypeRegistry = createIndexTypeRegistry();\n const packsToRegister: ReadonlyArray<{ readonly id?: string; readonly indexTypes?: unknown }> = [\n definition.target,\n ...Object.values(definition.extensionPacks ?? {}),\n ];\n for (const pack of packsToRegister) {\n const registration = pack.indexTypes;\n if (registration === undefined) continue;\n if (\n typeof registration !== 'object' ||\n registration === null ||\n !Array.isArray((registration as { entries?: unknown }).entries)\n ) {\n throw new Error(\n `Pack \"${pack.id ?? '<unknown>'}\" declares \"indexTypes\" but its value is not an IndexTypeRegistration (expected an object with an \"entries\" array; got ${typeof registration}).`,\n );\n }\n for (const entry of (registration as IndexTypeRegistration<IndexTypeMap>).entries) {\n indexTypeRegistry.register(entry);\n }\n }\n validateIndexTypes(contract, indexTypeRegistry);\n}\n\nfunction assertKnownTargetModel(\n modelsByName: ReadonlyMap<string, ModelNode>,\n sourceModelName: string,\n targetModelName: string,\n context: string,\n): ModelNode {\n const targetModel = modelsByName.get(targetModelName);\n if (!targetModel) {\n throw new Error(\n `${context} on model \"${sourceModelName}\" references unknown model \"${targetModelName}\"`,\n );\n }\n return targetModel;\n}\n\nfunction assertTargetTableMatches(\n sourceModelName: string,\n targetModel: ModelNode,\n referencedTableName: string,\n context: string,\n): void {\n if (targetModel.tableName !== referencedTableName) {\n throw new Error(\n `${context} on model \"${sourceModelName}\" references table \"${referencedTableName}\" but model \"${targetModel.modelName}\" maps to \"${targetModel.tableName}\"`,\n );\n }\n}\n\nfunction isValueObjectField(\n field: FieldNode | ValueObjectFieldNode,\n): field is ValueObjectFieldNode {\n return 'valueObjectName' in field;\n}\n\nconst JSONB_CODEC_ID = 'pg/jsonb@1';\nconst JSONB_NATIVE_TYPE = 'jsonb';\n\nfunction resolveModelNamespaceId(\n model: ModelNode,\n modelNameToNamespaceId: ReadonlyMap<string, string>,\n defaultNamespaceId: string,\n): string {\n if (model.namespaceId !== undefined && model.namespaceId.length > 0) {\n return model.namespaceId;\n }\n return modelNameToNamespaceId.get(model.modelName) ?? defaultNamespaceId;\n}\n\nfunction buildStorageColumn(\n field: FieldNode | ValueObjectFieldNode,\n storageValueSetRef: ValueSetRef | undefined,\n codecLookup?: CodecLookup,\n): StorageColumn {\n if (isValueObjectField(field)) {\n const encodedDefault =\n field.default !== undefined\n ? encodeColumnDefault(field.default, JSONB_CODEC_ID, codecLookup)\n : undefined;\n\n return {\n nativeType: JSONB_NATIVE_TYPE,\n codecId: JSONB_CODEC_ID,\n nullable: field.nullable,\n ...ifDefined('default', encodedDefault),\n };\n }\n\n if (field.many) {\n return {\n nativeType: JSONB_NATIVE_TYPE,\n codecId: JSONB_CODEC_ID,\n nullable: field.nullable,\n };\n }\n\n const codecId = field.descriptor.codecId;\n const encodedDefault =\n field.default !== undefined\n ? encodeColumnDefault(field.default, codecId, codecLookup)\n : undefined;\n\n return {\n nativeType: field.descriptor.nativeType,\n codecId,\n nullable: field.nullable,\n ...ifDefined('typeParams', field.descriptor.typeParams),\n ...ifDefined('default', encodedDefault),\n ...ifDefined('typeRef', field.descriptor.typeRef),\n ...ifDefined('valueSet', storageValueSetRef),\n };\n}\n\nfunction buildDomainField(\n field: FieldNode | ValueObjectFieldNode,\n column: StorageColumn,\n domainValueSetRef: ValueSetRef | undefined,\n): ContractField {\n if (isValueObjectField(field)) {\n return {\n type: { kind: 'valueObject', name: field.valueObjectName },\n nullable: field.nullable,\n ...(field.many ? { many: true } : {}),\n };\n }\n\n return {\n type: {\n kind: 'scalar',\n codecId: column.codecId,\n ...ifDefined('typeParams', column.typeParams),\n },\n nullable: column.nullable,\n ...(field.many ? { many: true } : {}),\n ...ifDefined('valueSet', domainValueSetRef),\n };\n}\n\nfunction collectStorageNamespaceCoordinateIds(definition: ContractDefinition): Set<string> {\n const ids = new Set<string>();\n ids.add(definition.target.defaultNamespaceId);\n for (const id of definition.namespaces ?? []) {\n if (id.length > 0) {\n ids.add(id);\n }\n }\n for (const model of definition.models) {\n if (model.namespaceId !== undefined && model.namespaceId.length > 0) {\n ids.add(model.namespaceId);\n }\n }\n return ids;\n}\n\nfunction ensureUnboundNamespaceSlot(\n namespaces: SqlStorageInput['namespaces'],\n createNamespace: ContractDefinition['createNamespace'],\n): SqlStorageInput['namespaces'] {\n if (Object.hasOwn(namespaces, UNBOUND_NAMESPACE_ID)) {\n return namespaces;\n }\n const unboundInput: SqlNamespaceTablesInput = {\n id: UNBOUND_NAMESPACE_ID,\n entries: { table: {} },\n };\n const unbound = createNamespace ? createNamespace(unboundInput) : buildSqlNamespace(unboundInput);\n return blindCast<\n SqlStorageInput['namespaces'],\n 'createNamespace may return a target namespace concretion; the unbound slot matches SqlNamespace at runtime'\n >({\n [UNBOUND_NAMESPACE_ID]: unbound,\n ...namespaces,\n });\n}\n\nconst POSTGRES_ENUM_NAMESPACE_ID = 'public';\n\nfunction partitionStorageTypesForTarget(\n targetId: string,\n types: Record<string, StorageTypeInstance | PostgresEnumStorageEntry>,\n namespaceTypes?: Readonly<Record<string, Readonly<Record<string, PostgresEnumStorageEntry>>>>,\n): {\n readonly documentTypes: Record<string, StorageTypeInstance>;\n readonly namespaceEnumTypesById: Record<string, Record<string, PostgresEnumStorageEntry>>;\n} {\n const documentTypes: Record<string, StorageTypeInstance> = {};\n const namespaceEnumTypesById: Record<string, Record<string, PostgresEnumStorageEntry>> = {};\n for (const [name, entry] of Object.entries(types)) {\n if (isPostgresEnumStorageEntry(entry)) {\n if (targetId !== 'postgres') {\n throw new Error(\n `buildSqlContractFromDefinition: postgres enum \"${name}\" is only valid when target is \"postgres\" (got \"${targetId}\").`,\n );\n }\n let slot = namespaceEnumTypesById[POSTGRES_ENUM_NAMESPACE_ID];\n if (slot === undefined) {\n slot = {};\n namespaceEnumTypesById[POSTGRES_ENUM_NAMESPACE_ID] = slot;\n }\n slot[name] = entry;\n continue;\n }\n documentTypes[name] = entry;\n }\n if (namespaceTypes !== undefined) {\n for (const [nsId, enumsInNs] of Object.entries(namespaceTypes)) {\n for (const [name, entry] of Object.entries(enumsInNs)) {\n if (targetId !== 'postgres') {\n throw new Error(\n `buildSqlContractFromDefinition: postgres enum \"${name}\" is only valid when target is \"postgres\" (got \"${targetId}\").`,\n );\n }\n let slot = namespaceEnumTypesById[nsId];\n if (slot === undefined) {\n slot = {};\n namespaceEnumTypesById[nsId] = slot;\n }\n slot[name] = entry;\n }\n }\n }\n return { documentTypes, namespaceEnumTypesById };\n}\n\nexport function buildSqlContractFromDefinition(\n definition: ContractDefinition,\n codecLookup?: CodecLookup,\n): Contract<SqlStorage> {\n const target = definition.target.targetId;\n const defaultNamespaceId = definition.target.defaultNamespaceId;\n const targetFamily = 'sql';\n const modelsByName = new Map(definition.models.map((m) => [m.modelName, m]));\n\n const tablesByNamespace: Record<string, Record<string, StorageTable>> = {};\n const tableNameToNamespaceId = new Map<string, string>();\n const modelNameToNamespaceId = new Map<string, string>();\n const executionDefaults: ExecutionMutationDefault[] = [];\n const modelsByNamespace: Record<string, Record<string, ContractModel>> = {};\n const roots: Record<string, CrossReference> = {};\n\n for (const semanticModel of definition.models) {\n const tableName = semanticModel.tableName;\n const namespaceId =\n semanticModel.namespaceId !== undefined && semanticModel.namespaceId.length > 0\n ? semanticModel.namespaceId\n : defaultNamespaceId;\n modelNameToNamespaceId.set(semanticModel.modelName, namespaceId);\n // STI variants share the base table; the base model already owns this\n // table name and its root, so the variant contributes neither.\n if (!semanticModel.sharesBaseTable) {\n roots[tableName] = crossRef(semanticModel.modelName, namespaceId);\n }\n\n // --- Build storage table ---\n\n const columns: Record<string, StorageColumn> = {};\n const fieldToColumn: Record<string, string> = {};\n const domainFields: Record<string, ContractField> = {};\n const domainFieldRefs: Record<string, DomainFieldRef> = {};\n\n for (const field of semanticModel.fields) {\n const executionDefaultPhases =\n field.executionDefaults?.onCreate || field.executionDefaults?.onUpdate\n ? field.executionDefaults\n : undefined;\n if (executionDefaultPhases) {\n if (field.default !== undefined) {\n throw new Error(\n `Field \"${semanticModel.modelName}.${field.fieldName}\" cannot define both default and executionDefaults.`,\n );\n }\n if (field.nullable) {\n throw new Error(\n `Field \"${semanticModel.modelName}.${field.fieldName}\" cannot be nullable when executionDefaults are present.`,\n );\n }\n }\n\n const enumHandle = !isValueObjectField(field) ? field.enumTypeHandle : undefined;\n // Authored enums are always registered under the contract's defaultNamespaceId\n // (see the enum registration loop below), so refs must point there regardless\n // of which namespace the consuming model lives in.\n const storageValueSetRef: ValueSetRef | undefined =\n enumHandle !== undefined\n ? {\n plane: 'storage',\n entityKind: 'value-set',\n namespaceId: defaultNamespaceId,\n name: enumHandle.enumName,\n }\n : undefined;\n const domainValueSetRef: ValueSetRef | undefined =\n enumHandle !== undefined\n ? {\n plane: 'domain',\n entityKind: 'enum',\n namespaceId: defaultNamespaceId,\n name: enumHandle.enumName,\n }\n : undefined;\n\n const column = buildStorageColumn(field, storageValueSetRef, codecLookup);\n columns[field.columnName] = column;\n fieldToColumn[field.fieldName] = field.columnName;\n\n domainFields[field.fieldName] = buildDomainField(field, column, domainValueSetRef);\n\n if (isValueObjectField(field)) {\n domainFieldRefs[field.fieldName] = {\n kind: 'valueObject',\n name: field.valueObjectName,\n ...(field.many ? { many: true } : {}),\n };\n } else if (field.many) {\n domainFieldRefs[field.fieldName] = { kind: 'scalar', many: true };\n }\n\n if (executionDefaultPhases) {\n executionDefaults.push({\n ref: { table: tableName, column: field.columnName },\n ...ifDefined('onCreate', executionDefaultPhases.onCreate),\n ...ifDefined('onUpdate', executionDefaultPhases.onUpdate),\n });\n }\n }\n\n const foreignKeys = (semanticModel.foreignKeys ?? []).map((fk) => {\n if (fk.references.spaceId !== undefined) {\n // Cross-space FK: the target lives in a different contract space.\n // Skip local model lookup and carry the spaceId coordinate through.\n const targetNamespaceId = fk.references.namespaceId ?? defaultNamespaceId;\n return {\n source: { namespaceId: asNamespaceId(namespaceId), tableName, columns: fk.columns },\n target: {\n namespaceId: asNamespaceId(targetNamespaceId),\n tableName: fk.references.table,\n columns: fk.references.columns,\n spaceId: fk.references.spaceId,\n },\n ...applyFkDefaults(\n {\n ...ifDefined('constraint', fk.constraint),\n ...ifDefined('index', fk.index),\n },\n definition.foreignKeyDefaults,\n ),\n ...ifDefined('name', fk.name),\n ...ifDefined('onDelete', fk.onDelete),\n ...ifDefined('onUpdate', fk.onUpdate),\n };\n }\n\n const targetModel = assertKnownTargetModel(\n modelsByName,\n semanticModel.modelName,\n fk.references.model,\n 'Foreign key',\n );\n assertTargetTableMatches(\n semanticModel.modelName,\n targetModel,\n fk.references.table,\n 'Foreign key',\n );\n const targetNamespaceId =\n fk.references.namespaceId ??\n (targetModel.namespaceId !== undefined && targetModel.namespaceId.length > 0\n ? targetModel.namespaceId\n : defaultNamespaceId);\n return {\n source: { namespaceId: asNamespaceId(namespaceId), tableName, columns: fk.columns },\n target: {\n namespaceId: asNamespaceId(targetNamespaceId),\n tableName: fk.references.table,\n columns: fk.references.columns,\n },\n ...applyFkDefaults(\n {\n ...ifDefined('constraint', fk.constraint),\n ...ifDefined('index', fk.index),\n },\n definition.foreignKeyDefaults,\n ),\n ...ifDefined('name', fk.name),\n ...ifDefined('onDelete', fk.onDelete),\n ...ifDefined('onUpdate', fk.onUpdate),\n };\n });\n\n // STI variants share the base table: their columns are already\n // materialised onto the base `ModelNode`, so the variant builds a domain\n // model (below) but no storage table of its own.\n if (!semanticModel.sharesBaseTable) {\n const existingNs = tableNameToNamespaceId.get(tableName);\n if (existingNs !== undefined && existingNs !== namespaceId) {\n throw new Error(\n `buildSqlContractFromDefinition: table \"${tableName}\" is mapped in namespace \"${namespaceId}\" but already exists in namespace \"${existingNs}\".`,\n );\n }\n tableNameToNamespaceId.set(tableName, namespaceId);\n\n const tableInput: StorageTableInput = {\n columns,\n ...ifDefined('control', semanticModel.control),\n uniques: (semanticModel.uniques ?? []).map((u) => ({\n columns: u.columns,\n ...ifDefined('name', u.name),\n })),\n indexes: (semanticModel.indexes ?? []).map((i) => ({\n columns: i.columns,\n ...ifDefined('name', i.name),\n ...ifDefined('type', i.type),\n ...ifDefined('options', i.options),\n })),\n foreignKeys,\n ...(semanticModel.id\n ? {\n primaryKey: {\n columns: semanticModel.id.columns,\n ...ifDefined('name', semanticModel.id.name),\n },\n }\n : {}),\n };\n\n let nsTables = tablesByNamespace[namespaceId];\n if (nsTables === undefined) {\n nsTables = {};\n tablesByNamespace[namespaceId] = nsTables;\n }\n if (nsTables[tableName] !== undefined) {\n throw new Error(\n `buildSqlContractFromDefinition: duplicate table \"${tableName}\" in namespace \"${namespaceId}\".`,\n );\n }\n nsTables[tableName] = new StorageTable(tableInput);\n }\n\n // --- Build contract model ---\n\n const storageFields: Record<string, { readonly column: string }> = {};\n for (const [fieldName, columnName] of Object.entries(fieldToColumn)) {\n storageFields[fieldName] = { column: columnName };\n }\n\n const columnToField = new Map(\n Object.entries(fieldToColumn).map(([field, col]) => [col, field]),\n );\n const modelRelations: Record<string, ContractRelation> = {};\n for (const relation of semanticModel.relations ?? []) {\n // Cross-space relations have `spaceId` set — the target model lives in\n // a different contract space, so skip local model lookup and validation.\n if (relation.spaceId !== undefined) {\n const targetNamespaceId = relation.namespaceId ?? defaultNamespaceId;\n modelRelations[relation.fieldName] = {\n to: crossRef(relation.toModel, targetNamespaceId, relation.spaceId),\n // Cross-space belongsTo relations are always N:1 (the FK-owning side).\n cardinality: 'N:1',\n on: {\n localFields: relation.on.parentColumns.map((col) => columnToField.get(col) ?? col),\n // For cross-space targets the lowering carries field names directly\n // (no fieldToColumn map available for the remote model).\n targetFields: relation.on.childColumns,\n },\n };\n continue;\n }\n\n const targetModel = assertKnownTargetModel(\n modelsByName,\n semanticModel.modelName,\n relation.toModel,\n 'Relation',\n );\n assertTargetTableMatches(semanticModel.modelName, targetModel, relation.toTable, 'Relation');\n\n if (relation.cardinality === 'N:M' && !relation.through) {\n throw new Error(\n `Relation \"${semanticModel.modelName}.${relation.fieldName}\" with cardinality \"N:M\" requires through metadata`,\n );\n }\n\n const targetColumnToField = new Map(\n targetModel.fields.map((f) => [f.columnName, f.fieldName]),\n );\n\n modelRelations[relation.fieldName] = {\n to: crossRef(\n relation.toModel,\n resolveModelNamespaceId(targetModel, modelNameToNamespaceId, defaultNamespaceId),\n ),\n // RelationDefinition.cardinality includes 'N:M' which isn't in\n // ContractReferenceRelation yet — cast is needed until the contract\n // type is extended to cover many-to-many.\n cardinality: relation.cardinality as ContractRelation['cardinality'],\n on: {\n localFields: relation.on.parentColumns.map((col) => columnToField.get(col) ?? col),\n targetFields: relation.on.childColumns.map((col) => targetColumnToField.get(col) ?? col),\n },\n ...(relation.through\n ? {\n through: {\n table: relation.through.table,\n parentCols: relation.through.parentColumns,\n childCols: relation.through.childColumns,\n },\n }\n : undefined),\n };\n }\n\n let namespaceModels = modelsByNamespace[namespaceId];\n if (namespaceModels === undefined) {\n namespaceModels = {};\n modelsByNamespace[namespaceId] = namespaceModels;\n }\n namespaceModels[semanticModel.modelName] = {\n storage: {\n table: tableName,\n namespaceId,\n fields: storageFields,\n },\n fields: domainFields,\n relations: modelRelations,\n };\n }\n\n // --- Assemble contract ---\n\n // Normalise raw codec-triple inputs to the `kind: 'codec-instance'`\n // discriminator shape before hashing so the storageHash matches the\n // persisted JSON envelope produced from the SqlStorage class instance\n // (which always carries the discriminator).\n const rawStorageTypes = (definition.storageTypes ?? {}) as Record<\n string,\n StorageTypeInstance | PostgresEnumStorageEntry\n >;\n const storageTypes = Object.fromEntries(\n Object.entries(rawStorageTypes).map(([name, entry]) => {\n if (isPostgresEnumStorageEntry(entry)) return [name, entry];\n if ((entry as { kind?: unknown }).kind === 'codec-instance') return [name, entry];\n return [\n name,\n toStorageTypeInstance({\n codecId: entry.codecId,\n nativeType: entry.nativeType,\n typeParams: (entry as { typeParams?: Record<string, unknown> }).typeParams ?? {},\n }),\n ];\n }),\n );\n const { documentTypes, namespaceEnumTypesById } = partitionStorageTypesForTarget(\n target,\n storageTypes,\n definition.namespaceTypes,\n );\n const namespaceCoordinateIds = collectStorageNamespaceCoordinateIds(definition);\n for (const id of Object.keys(namespaceEnumTypesById)) {\n namespaceCoordinateIds.add(id);\n }\n\n // Build per-namespace registries for `enumType()` handles.\n // All authored enums target the contract's default namespace.\n const domainEnumsByNs: Record<string, Record<string, ContractEnum>> = {};\n const storageValueSetsByNs: Record<string, Record<string, StorageValueSetInput>> = {};\n for (const [enumName, handle] of Object.entries(definition.enums ?? {})) {\n if (enumName !== handle.enumName) {\n throw new Error(\n `enum declaration key \"${enumName}\" must match enumType name \"${handle.enumName}\". Aliases are not supported.`,\n );\n }\n const nsId = defaultNamespaceId;\n let domainSlot = domainEnumsByNs[nsId];\n if (domainSlot === undefined) {\n domainSlot = {};\n domainEnumsByNs[nsId] = domainSlot;\n }\n domainSlot[enumName] = {\n codecId: handle.codecId,\n members: handle.enumMembers,\n };\n\n let storageSlot = storageValueSetsByNs[nsId];\n if (storageSlot === undefined) {\n storageSlot = {};\n storageValueSetsByNs[nsId] = storageSlot;\n }\n storageSlot[enumName] = {\n kind: 'value-set',\n values: handle.values,\n };\n }\n\n const { createNamespace } = definition;\n const namespaces = blindCast<\n SqlStorageInput['namespaces'],\n 'contract authoring materialises each namespace coordinate from the model set and explicit namespace list'\n >(\n Object.fromEntries(\n [...namespaceCoordinateIds].sort().map((id) => {\n const enumTypes = namespaceEnumTypesById[id];\n const valueSetEntries = storageValueSetsByNs[id];\n const nsInput: SqlNamespaceTablesInput = {\n id,\n entries: {\n table: tablesByNamespace[id] ?? {},\n ...(valueSetEntries !== undefined && Object.keys(valueSetEntries).length > 0\n ? { valueSet: valueSetEntries }\n : {}),\n },\n };\n return [\n id,\n createNamespace ? createNamespace(nsInput, enumTypes) : buildSqlNamespace(nsInput),\n ];\n }),\n ),\n );\n const storageWithoutHash = {\n ...(Object.keys(documentTypes).length > 0 ? { types: documentTypes } : {}),\n namespaces: ensureUnboundNamespaceSlot(namespaces, createNamespace),\n };\n const storageHash: StorageHashBase<string> = definition.storageHash\n ? coreHash(definition.storageHash)\n : computeStorageHash({\n target,\n targetFamily,\n storage: storageWithoutHash as Record<string, unknown>,\n ...sqlContractCanonicalizationHooks,\n });\n const storage = new SqlStorage({ ...storageWithoutHash, storageHash });\n\n const executionSection =\n executionDefaults.length > 0\n ? {\n mutations: {\n defaults: executionDefaults.sort((a, b) => {\n const tableCompare = a.ref.table.localeCompare(b.ref.table);\n if (tableCompare !== 0) {\n return tableCompare;\n }\n return a.ref.column.localeCompare(b.ref.column);\n }),\n },\n }\n : undefined;\n\n const extensionNamespaces = definition.extensionPacks\n ? Object.values(definition.extensionPacks).map((pack) => pack.id)\n : undefined;\n\n const extensionPacks: Record<string, unknown> = { ...(definition.extensionPacks || {}) };\n if (extensionNamespaces) {\n for (const namespace of extensionNamespaces) {\n if (!Object.hasOwn(extensionPacks, namespace)) {\n extensionPacks[namespace] = {};\n }\n }\n }\n\n const extensionPackCapabilitySources = definition.extensionPacks\n ? Object.values(definition.extensionPacks).map(\n (pack) => pack.capabilities as CapabilityMatrix | undefined,\n )\n : [];\n const capabilities = mergeCapabilityMatrices(\n definition.target.capabilities as CapabilityMatrix | undefined,\n ...extensionPackCapabilitySources,\n );\n // Internal `profileHash` computation is unchanged from `origin/main`: it\n // continues to fingerprint the author-declared capability subset. With\n // `capabilities` removed from the `defineContract` input that subset is\n // now always empty, so the hash naturally stabilises at `hash({})`.\n const profileHash = computeProfileHash({\n target,\n targetFamily,\n capabilities: {},\n });\n\n const executionWithHash = executionSection\n ? {\n ...executionSection,\n executionHash: computeExecutionHash({ target, targetFamily, execution: executionSection }),\n }\n : undefined;\n\n const valueObjects: Record<string, ContractValueObject> | undefined =\n definition.valueObjects && definition.valueObjects.length > 0\n ? Object.fromEntries(\n definition.valueObjects.map((vo) => [\n vo.name,\n {\n fields: Object.fromEntries(\n vo.fields.map((f) => [\n f.fieldName,\n isValueObjectField(f)\n ? {\n type: { kind: 'valueObject' as const, name: f.valueObjectName },\n nullable: f.nullable,\n ...(f.many ? { many: true } : {}),\n }\n : {\n type: {\n kind: 'scalar' as const,\n codecId: f.descriptor.codecId,\n ...ifDefined('typeParams', f.descriptor.typeParams),\n },\n nullable: f.nullable,\n },\n ]),\n ),\n },\n ]),\n )\n : undefined;\n\n const domainNamespaceIds = new Set(Object.keys(modelsByNamespace));\n if (domainNamespaceIds.size === 0) {\n domainNamespaceIds.add(defaultNamespaceId);\n }\n if (valueObjects !== undefined) {\n domainNamespaceIds.add(defaultNamespaceId);\n }\n for (const nsId of Object.keys(domainEnumsByNs)) {\n domainNamespaceIds.add(nsId);\n }\n const domainNamespaces = Object.fromEntries(\n [...domainNamespaceIds].sort().map((namespaceId) => {\n const modelsInNs = modelsByNamespace[namespaceId] ?? {};\n const enumsInNs = domainEnumsByNs[namespaceId];\n const namespaceSlice = {\n models: modelsInNs,\n ...(namespaceId === defaultNamespaceId && valueObjects !== undefined\n ? { valueObjects }\n : {}),\n ...(enumsInNs !== undefined && Object.keys(enumsInNs).length > 0\n ? { enum: enumsInNs }\n : {}),\n };\n return [namespaceId, namespaceSlice];\n }),\n );\n\n const contract: Contract<SqlStorage> = {\n target,\n targetFamily,\n ...ifDefined('defaultControlPolicy', definition.defaultControlPolicy),\n domain: { namespaces: domainNamespaces },\n roots,\n storage,\n ...(executionWithHash ? { execution: executionWithHash } : {}),\n extensionPacks,\n capabilities,\n profileHash,\n meta: {},\n };\n\n assertStorageSemantics(definition, contract);\n\n return contract;\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { t as buildSqlContractFromDefinition } from "./build-contract-C9dZNMRg.mjs";
1
+ import { t as buildSqlContractFromDefinition } from "./build-contract-6Rvs461H.mjs";
2
2
  import { ifDefined } from "@prisma-next/utils/defined";
3
3
  import { pathToFileURL } from "node:url";
4
4
  import { applySpecifierDefaultControlPolicy } from "@prisma-next/contract/apply-specifier-default-control-policy";
@@ -176,6 +176,13 @@ declare class ScalarFieldBuilder<State extends AnyScalarFieldState = AnyScalarFi
176
176
  private readonly state;
177
177
  readonly __state: State;
178
178
  constructor(state: State);
179
+ /**
180
+ * Returns the physical column name when `.column(name)` was called, or
181
+ * `undefined` when the field uses the default (logical field name) mapping.
182
+ * Used by cross-space FK lowering to stamp the physical column name onto
183
+ * `TargetFieldRef.columnName` so FK target columns are resolved correctly.
184
+ */
185
+ get physicalColumnName(): string | undefined;
179
186
  optional(): ScalarFieldBuilder<State extends ScalarFieldState<infer CodecId, infer TypeRef, boolean, infer ColumnName, infer IdSpec, infer UniqueSpec> ? ScalarFieldState<CodecId, TypeRef, true, ColumnName, IdSpec, UniqueSpec> : never>;
180
187
  column<ColumnName extends string>(name: ColumnName): ScalarFieldBuilder<State extends ScalarFieldState<infer CodecId, infer TypeRef, infer Nullable, string | undefined, infer IdSpec, infer UniqueSpec> ? ScalarFieldState<CodecId, TypeRef, Nullable, ColumnName, IdSpec, UniqueSpec> : never>;
181
188
  default(value: ColumnDefaultLiteralInputValue | ColumnDefault): ScalarFieldBuilder<State>;
@@ -212,6 +219,22 @@ type BelongsToRelation<ToModel extends string = string, FromField extends string
212
219
  readonly from: FromField;
213
220
  readonly to: ToField;
214
221
  readonly sql?: SqlSpec;
222
+ /**
223
+ * Contract-space identity of the target model. Populated when
224
+ * `belongsTo` receives a cross-space branded handle. Absent for
225
+ * local (same-space) relations.
226
+ */
227
+ readonly spaceId?: string;
228
+ /**
229
+ * Physical table name of the cross-space target model. Only set
230
+ * when `spaceId` is present; read from the handle's `tableName`.
231
+ */
232
+ readonly tableName?: string;
233
+ /**
234
+ * Namespace coordinate of the cross-space target model.
235
+ * Only set when `spaceId` is present.
236
+ */
237
+ readonly namespaceId?: string;
215
238
  };
216
239
  type HasManyRelation<ToModel extends string = string, ByField extends string | readonly string[] = string | readonly string[]> = {
217
240
  readonly kind: 'hasMany';
@@ -241,17 +264,58 @@ declare class RelationBuilder<State extends RelationState = AnyRelationState> {
241
264
  sql<const SqlSpec extends BelongsToRelationSqlSpec>(this: State extends BelongsToRelation<string, string | readonly string[], string | readonly string[], BelongsToRelationSqlSpec | undefined> ? RelationBuilder<State> : never, spec: SqlSpec): RelationBuilder<ApplyBelongsToRelationSqlSpec<State, SqlSpec>>;
242
265
  build(): State;
243
266
  }
267
+ /**
268
+ * Reference to a column on the current (local) model.
269
+ *
270
+ * Source columns are always local to the contract being authored. The
271
+ * cross-space brand lives on `TargetFieldRef` (the target side of a foreign
272
+ * key), not here.
273
+ */
244
274
  type ColumnRef<FieldName extends string = string> = {
245
275
  readonly kind: 'columnRef';
246
276
  readonly fieldName: FieldName;
247
277
  };
248
- type TargetFieldRef<ModelName extends string = string, FieldName extends string = string, Source extends TargetFieldRefSource = TargetFieldRefSource> = {
278
+ /**
279
+ * Reference to a field on a target model, produced by model `.refs` and
280
+ * `constraints.ref(modelName, fieldName)`.
281
+ *
282
+ * The `TSpaceId` phantom parameter carries the contract-space identity of the
283
+ * target model. Local model handles produce `TSpaceId = '<self>'`; extension
284
+ * handles carry the extension's `spaceId`. The brand is propagated from the
285
+ * parent `ContractModelBuilder` via the `spaceId?` property: absent means local
286
+ * (`'<self>'`), present means cross-space.
287
+ */
288
+ type TargetFieldRef<ModelName extends string = string, FieldName extends string = string, TSpaceId extends string = string> = {
249
289
  readonly kind: 'targetFieldRef';
250
- readonly source: Source;
290
+ readonly source: TargetFieldRefSource;
251
291
  readonly modelName: ModelName;
252
292
  readonly fieldName: FieldName;
293
+ /**
294
+ * Cross-space discriminator. When present, the referenced model lives in a
295
+ * different contract space identified by this value. Absent for local refs.
296
+ */
297
+ readonly spaceId?: TSpaceId extends '<self>' ? never : TSpaceId;
298
+ /**
299
+ * Namespace id of the cross-space target model (e.g. `'auth'` for
300
+ * `supabase` `auth.User`). Only present for cross-space refs.
301
+ */
302
+ readonly namespaceId?: string;
303
+ /**
304
+ * Physical table name of the cross-space target model. Only present for
305
+ * cross-space refs; allows the lowering path to bypass the local model
306
+ * registry.
307
+ */
308
+ readonly tableName?: string;
309
+ /**
310
+ * Physical column name of the target field. Populated for cross-space refs
311
+ * when the extension handle's field used `.column(name)` to rename the
312
+ * physical column. When absent the logical `fieldName` is used as the column
313
+ * name. Only relevant for cross-space FK lowering — local FKs resolve column
314
+ * names via the local `fieldToColumn` map.
315
+ */
316
+ readonly columnName?: string;
253
317
  };
254
- type ModelTokenRefs<ModelName extends string, Fields extends Record<string, ScalarFieldBuilder>> = { readonly [K in keyof Fields]: TargetFieldRef<ModelName, K & string> };
318
+ type ModelTokenRefs<ModelName extends string, Fields extends Record<string, ScalarFieldBuilder>, TSpaceId extends string = '<self>'> = { readonly [K in keyof Fields]: TargetFieldRef<ModelName, K & string, TSpaceId> };
255
319
  type ConstraintOptions<Name extends string | undefined = string | undefined> = {
256
320
  readonly name?: Name;
257
321
  };
@@ -297,6 +361,22 @@ type ForeignKeyConstraint<SourceFieldNames extends readonly string[] = readonly
297
361
  readonly targetModel: TargetModelName;
298
362
  readonly targetFields: TargetFieldNames;
299
363
  readonly targetSource?: TargetFieldRefSource;
364
+ /**
365
+ * Cross-space discriminator. When present, the FK target lives in a
366
+ * different contract space identified by this value. Absent for local FKs.
367
+ */
368
+ readonly targetSpaceId?: string;
369
+ /**
370
+ * Namespace coordinate of the cross-space target model. Populated when
371
+ * the target model handle carries a `namespace` (e.g. `auth` for supabase
372
+ * `auth.User`). Absent for local FKs.
373
+ */
374
+ readonly targetNamespaceId?: string;
375
+ /**
376
+ * Table name of the cross-space target. Populated for cross-space FKs
377
+ * so the lowering path doesn't need a local model lookup.
378
+ */
379
+ readonly targetTableName?: string;
300
380
  readonly name?: Name;
301
381
  readonly onDelete?: 'noAction' | 'restrict' | 'cascade' | 'setNull' | 'setDefault';
302
382
  readonly onUpdate?: 'noAction' | 'restrict' | 'cascade' | 'setNull' | 'setDefault';
@@ -371,7 +451,7 @@ type SqlForeignKeys<SqlSpec extends SqlStageSpec> = SqlSpec extends {
371
451
  type SqlNamedObjects<SqlSpec extends SqlStageSpec> = [...SqlIndexes<SqlSpec>, ...SqlForeignKeys<SqlSpec>];
372
452
  type ValidateSqlStageSpec<Fields extends Record<string, ScalarFieldBuilder>, AttributesSpec extends ModelAttributesSpec | undefined, SqlSpec extends SqlStageSpec> = [DuplicateLiteralNames<SqlNamedObjects<SqlSpec>>] extends [never] ? [Extract<ModelIdLiteralName<Fields, AttributesSpec>, NamedConstraintLiteralName<SqlNamedObjects<SqlSpec>[number]>>] extends [never] ? SqlSpec : never : never;
373
453
  type ValidateAttributesStageSpec<Fields extends Record<string, ScalarFieldBuilder>, SqlSpec extends SqlStageSpec | undefined, AttributesSpec extends ModelAttributesSpec> = SqlSpec extends SqlStageSpec ? [Extract<ModelIdLiteralName<Fields, AttributesSpec>, NamedConstraintLiteralName<SqlNamedObjects<SqlSpec>[number]>>] extends [never] ? AttributesSpec : never : AttributesSpec;
374
- declare class ContractModelBuilder<ModelName extends string | undefined, Fields extends Record<string, ScalarFieldBuilder>, Relations extends Record<string, AnyRelationBuilder> = Record<never, never>, AttributesSpec extends ModelAttributesSpec | undefined = undefined, SqlSpec extends SqlStageSpec | undefined = undefined, IndexTypes extends IndexTypeMap = Record<never, never>> {
454
+ declare class ContractModelBuilder<ModelName extends string | undefined, Fields extends Record<string, ScalarFieldBuilder>, Relations extends Record<string, AnyRelationBuilder> = Record<never, never>, AttributesSpec extends ModelAttributesSpec | undefined = undefined, SqlSpec extends SqlStageSpec | undefined = undefined, IndexTypes extends IndexTypeMap = Record<never, never>, TSpaceId extends string = '<self>'> {
375
455
  readonly stageOne: {
376
456
  readonly modelName?: ModelName;
377
457
  readonly namespace?: string;
@@ -380,23 +460,26 @@ declare class ContractModelBuilder<ModelName extends string | undefined, Fields
380
460
  };
381
461
  readonly attributesFactory?: StageInput<AttributeContext<Fields>, AttributesSpec> | undefined;
382
462
  readonly sqlFactory?: StageInput<SqlContext<Fields, IndexTypes>, SqlSpec> | undefined;
463
+ readonly spaceId?: TSpaceId | undefined;
464
+ readonly tableName?: string | undefined;
383
465
  readonly __name: ModelName;
384
466
  readonly __fields: Fields;
385
467
  readonly __relations: Relations;
386
468
  readonly __attributes: AttributesSpec;
387
469
  readonly __sql: SqlSpec;
388
470
  readonly __indexTypes: IndexTypes;
389
- readonly refs: ModelName extends string ? ModelTokenRefs<ModelName, Fields> : never;
471
+ readonly __spaceId: TSpaceId;
472
+ readonly refs: ModelName extends string ? ModelTokenRefs<ModelName, Fields, TSpaceId> : never;
390
473
  constructor(stageOne: {
391
474
  readonly modelName?: ModelName;
392
475
  readonly namespace?: string;
393
476
  readonly fields: Fields;
394
477
  readonly relations: Relations;
395
- }, attributesFactory?: StageInput<AttributeContext<Fields>, AttributesSpec> | undefined, sqlFactory?: StageInput<SqlContext<Fields, IndexTypes>, SqlSpec> | undefined);
478
+ }, attributesFactory?: StageInput<AttributeContext<Fields>, AttributesSpec> | undefined, sqlFactory?: StageInput<SqlContext<Fields, IndexTypes>, SqlSpec> | undefined, spaceId?: TSpaceId | undefined, tableName?: string | undefined);
396
479
  ref<FieldName extends keyof Fields & string>(this: ModelName extends string ? ContractModelBuilder<ModelName, Fields, Relations, AttributesSpec, SqlSpec, IndexTypes> : never, fieldName: FieldName): TargetFieldRef<ModelName & string, FieldName>;
397
- relations<const NextRelations extends Record<string, AnyRelationBuilder>>(relations: NextRelations): ContractModelBuilder<ModelName, Fields, Relations & NextRelations, AttributesSpec, SqlSpec, IndexTypes>;
398
- attributes<const NextAttributesSpec extends ModelAttributesSpec>(specOrFactory: StageInput<AttributeContext<Fields>, ValidateAttributesStageSpec<Fields, SqlSpec, NextAttributesSpec>>): ContractModelBuilder<ModelName, Fields, Relations, NextAttributesSpec, SqlSpec, IndexTypes>;
399
- sql<const NextSqlSpec extends SqlStageSpec>(specOrFactory: StageInput<SqlContext<Fields, IndexTypes>, NextSqlSpec>): [ValidateSqlStageSpec<Fields, AttributesSpec, NextSqlSpec>] extends [never] ? ContractModelBuilder<ModelName, Fields, Relations, AttributesSpec, never, IndexTypes> : ContractModelBuilder<ModelName, Fields, Relations, AttributesSpec, NextSqlSpec, IndexTypes>;
480
+ relations<const NextRelations extends Record<string, AnyRelationBuilder>>(relations: NextRelations): ContractModelBuilder<ModelName, Fields, Relations & NextRelations, AttributesSpec, SqlSpec, IndexTypes, TSpaceId>;
481
+ attributes<const NextAttributesSpec extends ModelAttributesSpec>(specOrFactory: StageInput<AttributeContext<Fields>, ValidateAttributesStageSpec<Fields, SqlSpec, NextAttributesSpec>>): ContractModelBuilder<ModelName, Fields, Relations, NextAttributesSpec, SqlSpec, IndexTypes, TSpaceId>;
482
+ sql<const NextSqlSpec extends SqlStageSpec>(specOrFactory: StageInput<SqlContext<Fields, IndexTypes>, NextSqlSpec>): [ValidateSqlStageSpec<Fields, AttributesSpec, NextSqlSpec>] extends [never] ? ContractModelBuilder<ModelName, Fields, Relations, AttributesSpec, never, IndexTypes, TSpaceId> : ContractModelBuilder<ModelName, Fields, Relations, AttributesSpec, NextSqlSpec, IndexTypes, TSpaceId>;
400
483
  buildAttributesSpec(): AttributesSpec;
401
484
  buildSqlSpec(): SqlSpec;
402
485
  }
@@ -484,6 +567,26 @@ declare function model<Fields extends Record<string, ScalarFieldBuilder>, Relati
484
567
  readonly relations?: Relations;
485
568
  readonly namespace?: string;
486
569
  }): ContractModelBuilder<undefined, Fields, Relations>;
570
+ /**
571
+ * Factory for building a standalone branded extension model handle.
572
+ *
573
+ * Use this instead of `new ContractModelBuilder(…)` when constructing handles
574
+ * for models that live in a foreign contract space (e.g. a Supabase extension
575
+ * model referenced by a user's contract). The `spaceId` brands the returned
576
+ * handle so `refs.<field>.spaceId` carries the foreign space identifier.
577
+ *
578
+ * @param name - The domain model name as declared in the foreign contract
579
+ * (e.g. `'AuthUser'`, not a bare table alias like `'User'`).
580
+ * @param input.namespace - The namespace within the foreign space (e.g. `'auth'`).
581
+ * @param input.fields - Field definitions (use `field.column(…)`).
582
+ * @param input.table - The physical table name in the foreign schema.
583
+ * @param spaceId - The extension space identifier (e.g. `'supabase'`).
584
+ */
585
+ declare function extensionModel<const ModelName extends string, Fields extends Record<string, ScalarFieldBuilder>, const TSpaceId extends string>(name: ModelName, input: {
586
+ readonly namespace: string;
587
+ readonly fields: Fields;
588
+ readonly table: string;
589
+ }, spaceId: TSpaceId): ContractModelBuilder<ModelName, Fields, Record<never, never>, undefined, undefined, Record<never, never>, TSpaceId>;
487
590
  declare function belongsTo<Token extends AnyNamedModelToken, FromField extends string | readonly string[], ToField extends RelationFieldSelection<RelationModelFieldNames<Token>>>(toModel: Token | LazyNamedModelToken<Token>, options: {
488
591
  readonly from: FromField;
489
592
  readonly to: ToField;
@@ -897,6 +1000,12 @@ interface ForeignKeyNode {
897
1000
  * know the target namespace can stamp it explicitly.
898
1001
  */
899
1002
  readonly namespaceId?: string;
1003
+ /**
1004
+ * Contract-space identity of the referenced table. When present, the
1005
+ * table lives in a different contract space (identified by this value)
1006
+ * rather than the current contract. Absent for local FKs.
1007
+ */
1008
+ readonly spaceId?: string;
900
1009
  };
901
1010
  readonly name?: string;
902
1011
  readonly onDelete?: ReferentialAction;
@@ -909,6 +1018,17 @@ interface RelationNode {
909
1018
  readonly toModel: string;
910
1019
  readonly toTable: string;
911
1020
  readonly cardinality: '1:1' | '1:N' | 'N:1' | 'N:M';
1021
+ /**
1022
+ * Contract-space identity of the related model. When present, the
1023
+ * related model lives in a different contract space. Absent for local
1024
+ * (same-space) relations.
1025
+ */
1026
+ readonly spaceId?: string;
1027
+ /**
1028
+ * Namespace coordinate of the related model in the foreign space.
1029
+ * Only set when `spaceId` is present.
1030
+ */
1031
+ readonly namespaceId?: string;
912
1032
  readonly on: {
913
1033
  readonly parentTable: string;
914
1034
  readonly parentColumns: readonly string[];
@@ -1088,5 +1208,5 @@ declare function buildBoundContract<const F extends FamilyPackRef<string>, const
1088
1208
  declare function defineContract<const Family extends FamilyPackRef<string>, const Target extends TargetPackRef<'sql', string>, const Types extends Record<string, StorageTypeInstance | PostgresEnumStorageEntry> = Record<never, never>, const Models extends Record<string, ModelLike> = Record<never, never>, const ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined = undefined, const Naming extends ContractInput['naming'] | undefined = undefined, const StorageHash extends string | undefined = undefined, const ForeignKeyDefaults extends ForeignKeyDefaultsState | undefined = undefined, const Namespaces extends readonly string[] | undefined = undefined>(definition: ContractDefinition$1<Family, Target, Types, Models, ExtensionPacks, Naming, StorageHash, ForeignKeyDefaults, Namespaces>): SqlContractResult<ContractDefinition$1<Family, Target, Types, Models, ExtensionPacks, Naming, StorageHash, ForeignKeyDefaults, Namespaces>>;
1089
1209
  declare function defineContract<const Family extends FamilyPackRef<string>, const Target extends TargetPackRef<'sql', string>, const Types extends Record<string, StorageTypeInstance | PostgresEnumStorageEntry> = Record<never, never>, const Models extends Record<string, ModelLike> = Record<never, never>, const ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined = undefined, const Naming extends ContractInput['naming'] | undefined = undefined, const StorageHash extends string | undefined = undefined, const ForeignKeyDefaults extends ForeignKeyDefaultsState | undefined = undefined, const Namespaces extends readonly string[] | undefined = undefined>(definition: ContractScaffold<Family, Target, ExtensionPacks, Naming, StorageHash, ForeignKeyDefaults, Namespaces>, factory: ContractFactory<Family, Target, Types, Models, ExtensionPacks>): SqlContractResult<ContractDefinition$1<Family, Target, Types, Models, ExtensionPacks, Naming, StorageHash, ForeignKeyDefaults, Namespaces>>;
1090
1210
  //#endregion
1091
- export { type ComposedAuthoringHelpers, type ContractDefinition, type ContractInput, type ContractModelBuilder, type EnumMember, type EnumTypeHandle, type FieldNode, type ForeignKeyNode, type IndexNode, type ModelLike, type ModelNode, type PrimaryKeyNode, type RelationNode, type ScalarFieldBuilder, type UniqueConstraintNode, buildBoundContract, buildSqlContractFromDefinition, defineContract, enumType, field, member, model, rel };
1211
+ export { type ComposedAuthoringHelpers, type ContractDefinition, type ContractInput, type ContractModelBuilder, type EnumMember, type EnumTypeHandle, type FieldNode, type ForeignKeyNode, type IndexNode, type ModelLike, type ModelNode, type PrimaryKeyNode, type RelationNode, type ScalarFieldBuilder, type TargetFieldRef, type UniqueConstraintNode, buildBoundContract, buildSqlContractFromDefinition, defineContract, enumType, extensionModel, field, member, model, rel };
1092
1212
  //# sourceMappingURL=contract-builder.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract-builder.d.mts","names":[],"sources":["../src/enum-type.ts","../src/contract-dsl.ts","../src/authoring-type-utils.ts","../src/contract-types.ts","../src/composed-authoring-helpers.ts","../src/contract-definition.ts","../src/build-contract.ts","../src/contract-builder.ts"],"mappings":"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"}
1
+ {"version":3,"file":"contract-builder.d.mts","names":[],"sources":["../src/enum-type.ts","../src/contract-dsl.ts","../src/authoring-type-utils.ts","../src/contract-types.ts","../src/composed-authoring-helpers.ts","../src/contract-definition.ts","../src/build-contract.ts","../src/contract-builder.ts"],"mappings":"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"}