@prisma-next/sql-lane-query-builder 0.13.0-dev.2 → 0.13.0-dev.21

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.
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- //#region ../../../1-framework/0-foundation/contract/dist/domain-envelope-OkWsysCY.d.mts
1
+ //#region ../../../1-framework/0-foundation/contract/dist/domain-envelope-Czz8UMhU.d.mts
2
2
  //#region src/namespace-id.d.ts
3
3
  type NamespaceId = string & {
4
4
  readonly __brand: 'NamespaceId';
@@ -16,31 +16,140 @@ interface CrossReference {
16
16
  readonly space?: string;
17
17
  }
18
18
  //#endregion
19
+ //#region src/types.d.ts
20
+ /**
21
+ * Unique symbol used as the key for branding types.
22
+ */
23
+ declare const $: unique symbol;
24
+ /**
25
+ * A helper type to brand a given type with a unique identifier.
26
+ *
27
+ * @template TKey Text used as the brand key.
28
+ * @template TValue Optional value associated with the brand key. Defaults to `true`.
29
+ */
30
+ type Brand<TKey extends string | number | symbol, TValue = true> = {
31
+ [$]: { [K in TKey]: TValue };
32
+ };
33
+ /**
34
+ * Base type for storage contract hashes.
35
+ * Emitted contract.d.ts files use this with the hash value as a type parameter:
36
+ * `type StorageHash = StorageHashBase<'sha256:abc123...'>`
37
+ */
38
+ type StorageHashBase<THash extends string> = THash & Brand<'StorageHash'>;
39
+ /**
40
+ * Base type for execution contract hashes.
41
+ * Emitted contract.d.ts files use this with the hash value as a type parameter:
42
+ * `type ExecutionHash = ExecutionHashBase<'sha256:def456...'>`
43
+ */
44
+ type ExecutionHashBase<THash extends string> = THash & Brand<'ExecutionHash'>;
45
+ /**
46
+ * Base type for profile contract hashes.
47
+ * Emitted contract.d.ts files use this with the hash value as a type parameter:
48
+ * `type ProfileHash = ProfileHashBase<'sha256:def456...'>`
49
+ */
50
+ type ProfileHashBase<THash extends string> = THash & Brand<'ProfileHash'>;
51
+ /**
52
+ * One entity-kind slot in a namespace — a map of entity name to entry.
53
+ * Values are opaque at the foundation layer; family and target concretions
54
+ * refine them to typed IR classes.
55
+ */
56
+ type StorageEntitySlot = Readonly<Record<string, unknown>>;
57
+ /**
58
+ * Plain-data namespace entry in a storage block. Every hydrated contract
59
+ * carries at least `id` plus entity-kind slot maps under `entries`
60
+ * (`table`, `collection`, …). Foundation declares only this shape — no IR
61
+ * machinery.
62
+ */
63
+ interface StorageNamespace {
64
+ readonly id: string;
65
+ readonly entries: Readonly<Record<string, StorageEntitySlot>>;
66
+ }
67
+ /**
68
+ * Base type for family-specific storage blocks.
69
+ * Family storage types (SqlStorage, MongoStorage, etc.) extend this to carry the
70
+ * storage hash alongside family-specific data (tables, collections, etc.).
71
+ *
72
+ * The `namespaces` map is carried by every hydrated storage block. Serialized
73
+ * envelope shape is target-owned; this types the in-memory contract after
74
+ * `deserializeContract`.
75
+ */
76
+ interface StorageBase<THash extends string = string> {
77
+ readonly storageHash: StorageHashBase<THash>;
78
+ readonly namespaces: Readonly<Record<string, StorageNamespace>>;
79
+ }
80
+ type GeneratedValueSpec = {
81
+ readonly id: string;
82
+ readonly params?: Record<string, unknown>;
83
+ };
84
+ type JsonPrimitive = string | number | boolean | null;
85
+ type JsonValue = JsonPrimitive | {
86
+ readonly [key: string]: JsonValue;
87
+ } | readonly JsonValue[];
88
+ type ColumnDefaultLiteralValue = JsonValue;
89
+ type ColumnDefaultLiteralInputValue = ColumnDefaultLiteralValue | Date;
90
+ /**
91
+ * Runtime predicate for `ColumnDefaultLiteralInputValue`. Authoring layers
92
+ * resolve template values from caller-supplied args (typed `unknown` at the
93
+ * boundary) and need to validate before constructing a `ColumnDefault`.
94
+ * Accepts JSON primitives, plain arrays/objects of JSON values, and `Date`
95
+ * instances. Rejects functions, class instances (other than `Date`),
96
+ * `undefined`, `bigint`, `symbol`, and arrays/objects containing those.
97
+ */
98
+ type ColumnDefault = {
99
+ readonly kind: 'literal';
100
+ readonly value: ColumnDefaultLiteralInputValue;
101
+ } | {
102
+ readonly kind: 'function';
103
+ readonly expression: string;
104
+ };
105
+ type ExecutionMutationDefaultValue = {
106
+ readonly kind: 'generator';
107
+ readonly id: GeneratedValueSpec['id'];
108
+ readonly params?: Record<string, unknown>;
109
+ };
110
+ type ExecutionMutationDefault = {
111
+ readonly ref: {
112
+ readonly table: string;
113
+ readonly column: string;
114
+ };
115
+ readonly onCreate?: ExecutionMutationDefaultValue;
116
+ readonly onUpdate?: ExecutionMutationDefaultValue;
117
+ };
118
+ /**
119
+ * `ExecutionMutationDefault` minus its `ref` — the per-field phases value
120
+ * authoring layers attach to a column before the column ref is known.
121
+ */
122
+ //#endregion
19
123
  //#region src/value-set-ref.d.ts
20
124
  /**
21
- * Space-aware reference coordinate for a domain enum or storage value-set.
125
+ * Entity coordinate for a domain enum or storage value-set reference.
22
126
  *
23
- * `plane` names the contract plane the referenced entity lives in:
24
- * - `'domain'` — the entity lives in the domain plane's `enum` slot.
25
- * - `'storage'` the entity lives in the storage plane's `valueSet` slot.
127
+ * Field-name identity with the framework's `EntityCoordinate` type
128
+ * (packages/1-framework/1-core/framework-components/src/ir/storage.ts).
129
+ * Foundation-contract cannot import framework-components (dependency points
130
+ * the other way), so this is a standalone mirror of that shape plus the
131
+ * cross-space discriminator.
26
132
  *
27
- * `entityKind` names the source entity-kind:
28
- * - `'enum'` — the referenced entity is a domain enum.
29
- * - `'value-set'` the referenced entity is a storage value-set.
133
+ * One-vocabulary rule (ADR 224): `entityKind` is equal to the entries slot
134
+ * key the referenced entity lives under — `'enum'` for domain's `enum` slot,
135
+ * `'valueSet'` for storage's `entries.valueSet` slot. No consumer-side
136
+ * translation between the kind string and the slot key.
30
137
  *
31
- * `namespaceId` admits the `UNBOUND_NAMESPACE_ID` (`__unbound__`) sentinel for
32
- * single-namespace (unbound) references.
138
+ * Every `valueSet` reference is intra-plane (domain field → domain enum;
139
+ * storage column/check → storage value-set). The directional invariant:
140
+ * domain may reference storage; storage may never reference domain.
33
141
  *
34
- * Cross-space discrimination is presence-based: when `spaceId` is absent the
35
- * reference is local (same contract-space); when `spaceId` is present the
36
- * reference is cross-space. This mirrors the `ForeignKeyReference` carrier
37
- * convention no separate tag field so local refs are JSON-minimal.
142
+ * `namespaceId` admits the `UNBOUND_NAMESPACE_ID` (`__unbound__`) sentinel
143
+ * for single-namespace (unbound) references.
144
+ *
145
+ * `spaceId` is the cross-space discriminator: absent local (same
146
+ * contract-space); present ⇒ cross-space. No separate tag field.
38
147
  */
39
148
  interface ValueSetRef {
40
149
  readonly plane: 'domain' | 'storage';
41
150
  readonly namespaceId: string;
42
- readonly entityKind: 'enum' | 'value-set';
43
- readonly name: string;
151
+ readonly entityKind: 'enum' | 'valueSet';
152
+ readonly entityName: string;
44
153
  readonly spaceId?: string;
45
154
  } //#endregion
46
155
  //#region src/domain-types.d.ts
@@ -74,7 +183,7 @@ type ContractEnum = {
74
183
  readonly codecId: string;
75
184
  readonly members: readonly {
76
185
  readonly name: string;
77
- readonly value: string;
186
+ readonly value: JsonValue;
78
187
  }[];
79
188
  };
80
189
  type ContractRelationOn = {
@@ -144,7 +253,7 @@ interface ApplicationDomain<TModels extends Record<string, ContractModelBase> =
144
253
  readonly namespaces: Readonly<Record<string, ApplicationDomainNamespace<TModels>>>;
145
254
  }
146
255
  //#endregion
147
- //#region ../../../1-framework/0-foundation/contract/dist/contract-types-CBbD-VV1.d.mts
256
+ //#region ../../../1-framework/0-foundation/contract/dist/contract-types-ci3TUzpo.d.mts
148
257
  //#region src/control-policy.d.ts
149
258
  /**
150
259
  * Governance posture for a storage-plane node or for the contract as a whole.
@@ -165,110 +274,6 @@ type ControlPolicy = 'managed' | 'tolerated' | 'external' | 'observed';
165
274
  * and can be called by any consumer (verifier, planner, etc.) without importing IR classes.
166
275
  */
167
276
  //#endregion
168
- //#region src/types.d.ts
169
- /**
170
- * Unique symbol used as the key for branding types.
171
- */
172
- declare const $: unique symbol;
173
- /**
174
- * A helper type to brand a given type with a unique identifier.
175
- *
176
- * @template TKey Text used as the brand key.
177
- * @template TValue Optional value associated with the brand key. Defaults to `true`.
178
- */
179
- type Brand<TKey extends string | number | symbol, TValue = true> = {
180
- [$]: { [K in TKey]: TValue };
181
- };
182
- /**
183
- * Base type for storage contract hashes.
184
- * Emitted contract.d.ts files use this with the hash value as a type parameter:
185
- * `type StorageHash = StorageHashBase<'sha256:abc123...'>`
186
- */
187
- type StorageHashBase<THash extends string> = THash & Brand<'StorageHash'>;
188
- /**
189
- * Base type for execution contract hashes.
190
- * Emitted contract.d.ts files use this with the hash value as a type parameter:
191
- * `type ExecutionHash = ExecutionHashBase<'sha256:def456...'>`
192
- */
193
- type ExecutionHashBase<THash extends string> = THash & Brand<'ExecutionHash'>;
194
- /**
195
- * Base type for profile contract hashes.
196
- * Emitted contract.d.ts files use this with the hash value as a type parameter:
197
- * `type ProfileHash = ProfileHashBase<'sha256:def456...'>`
198
- */
199
- type ProfileHashBase<THash extends string> = THash & Brand<'ProfileHash'>;
200
- /**
201
- * One entity-kind slot in a namespace — a map of entity name to entry.
202
- * Values are opaque at the foundation layer; family and target concretions
203
- * refine them to typed IR classes.
204
- */
205
- type StorageEntitySlot = Readonly<Record<string, unknown>>;
206
- /**
207
- * Plain-data namespace entry in a storage block. Every hydrated contract
208
- * carries at least `id` plus entity-kind slot maps under `entries`
209
- * (`table`, `collection`, …). Foundation declares only this shape — no IR
210
- * machinery.
211
- */
212
- interface StorageNamespace {
213
- readonly id: string;
214
- readonly entries: Readonly<Record<string, StorageEntitySlot>>;
215
- }
216
- /**
217
- * Base type for family-specific storage blocks.
218
- * Family storage types (SqlStorage, MongoStorage, etc.) extend this to carry the
219
- * storage hash alongside family-specific data (tables, collections, etc.).
220
- *
221
- * The `namespaces` map is carried by every hydrated storage block. Serialized
222
- * envelope shape is target-owned; this types the in-memory contract after
223
- * `deserializeContract`.
224
- */
225
- interface StorageBase<THash extends string = string> {
226
- readonly storageHash: StorageHashBase<THash>;
227
- readonly namespaces: Readonly<Record<string, StorageNamespace>>;
228
- }
229
- type GeneratedValueSpec = {
230
- readonly id: string;
231
- readonly params?: Record<string, unknown>;
232
- };
233
- type JsonPrimitive = string | number | boolean | null;
234
- type JsonValue = JsonPrimitive | {
235
- readonly [key: string]: JsonValue;
236
- } | readonly JsonValue[];
237
- type ColumnDefaultLiteralValue = JsonValue;
238
- type ColumnDefaultLiteralInputValue = ColumnDefaultLiteralValue | Date;
239
- /**
240
- * Runtime predicate for `ColumnDefaultLiteralInputValue`. Authoring layers
241
- * resolve template values from caller-supplied args (typed `unknown` at the
242
- * boundary) and need to validate before constructing a `ColumnDefault`.
243
- * Accepts JSON primitives, plain arrays/objects of JSON values, and `Date`
244
- * instances. Rejects functions, class instances (other than `Date`),
245
- * `undefined`, `bigint`, `symbol`, and arrays/objects containing those.
246
- */
247
- type ColumnDefault = {
248
- readonly kind: 'literal';
249
- readonly value: ColumnDefaultLiteralInputValue;
250
- } | {
251
- readonly kind: 'function';
252
- readonly expression: string;
253
- };
254
- type ExecutionMutationDefaultValue = {
255
- readonly kind: 'generator';
256
- readonly id: GeneratedValueSpec['id'];
257
- readonly params?: Record<string, unknown>;
258
- };
259
- type ExecutionMutationDefault = {
260
- readonly ref: {
261
- readonly table: string;
262
- readonly column: string;
263
- };
264
- readonly onCreate?: ExecutionMutationDefaultValue;
265
- readonly onUpdate?: ExecutionMutationDefaultValue;
266
- };
267
- /**
268
- * `ExecutionMutationDefault` minus its `ref` — the per-field phases value
269
- * authoring layers attach to a column before the column ref is known.
270
- */
271
- //#endregion
272
277
  //#region src/contract-types.d.ts
273
278
  /**
274
279
  * Execution section for the unified contract (ADR 182).
@@ -318,6 +323,7 @@ interface Contract<TStorage extends StorageBase = StorageBase, TModels extends R
318
323
  readonly defaultControlPolicy?: ControlPolicy;
319
324
  }
320
325
  /** Model definitions union carried on a {@link Contract}'s `TModels` type parameter. */
326
+ type ContractModelDefinitions<TContract extends Contract> = TContract extends Contract<StorageBase, infer TModels> ? TModels : never;
321
327
  //#endregion
322
328
  //#region src/type-errors.d.ts
323
329
  /**
@@ -649,7 +655,7 @@ declare class ForeignKey extends SqlNode {
649
655
  constructor(input: ForeignKeyInput);
650
656
  } //#endregion
651
657
  //#endregion
652
- //#region ../../1-core/contract/dist/sql-storage-CXf9xjAL.d.mts
658
+ //#region ../../1-core/contract/dist/sql-storage-DChMDNZo.d.mts
653
659
  //#region src/ir/check-constraint.d.ts
654
660
  /**
655
661
  * Hydration / construction input shape for {@link CheckConstraint}.
@@ -854,9 +860,9 @@ interface StorageTypeInstanceInput {
854
860
  * walker can hand a validated literal straight to `new`.
855
861
  */
856
862
  interface StorageValueSetInput {
857
- readonly kind: 'value-set';
863
+ readonly kind: 'valueSet';
858
864
  /** Ordered permitted values, codec-encoded. Declaration order is preserved. */
859
- readonly values: readonly string[];
865
+ readonly values: readonly JsonValue[];
860
866
  }
861
867
  /**
862
868
  * SQL Contract IR node for a value-set entry in a namespace's `valueSet`
@@ -867,7 +873,7 @@ interface StorageValueSetInput {
867
873
  * column that references it already holds the codec; the value-set holds
868
874
  * only the permitted values.
869
875
  *
870
- * The node's `kind` is enumerable (`'value-set'`) so the JSON envelope
876
+ * The node's `kind` is enumerable (`'valueSet'`) so the JSON envelope
871
877
  * carries the discriminator and the serializer hydration walker can
872
878
  * dispatch on it. This follows the per-leaf enumerable-kind convention
873
879
  * established in the SQL-node comment (future polymorphic dispatch on
@@ -877,8 +883,8 @@ interface StorageValueSetInput {
877
883
  * the parent namespace's `valueSet: Record<string, StorageValueSet>` map.
878
884
  */
879
885
  declare class StorageValueSet extends SqlNode {
880
- readonly kind: "value-set";
881
- readonly values: readonly string[];
886
+ readonly kind: "valueSet";
887
+ readonly values: readonly JsonValue[];
882
888
  constructor(input: StorageValueSetInput);
883
889
  } //#endregion
884
890
  //#region src/ir/sql-storage.d.ts
@@ -936,7 +942,7 @@ declare class SqlStorage<THash extends string = string> extends SqlNode implemen
936
942
  constructor(input: SqlStorageInput<THash>);
937
943
  }
938
944
  //#endregion
939
- //#region ../../1-core/contract/dist/types-DEnWD3xB.d.mts
945
+ //#region ../../1-core/contract/dist/types-DiR-feh1.d.mts
940
946
  type CodecTypesOf<T> = [T] extends [never] ? Record<string, never> : T extends {
941
947
  readonly codecTypes: infer C;
942
948
  } ? C extends Record<string, {
@@ -951,7 +957,11 @@ type CodecTypesOf<T> = [T] extends [never] ? Record<string, never> : T extends {
951
957
  */
952
958
  type TypeMapsPhantomKey = '__@prisma-next/sql-contract/typeMaps@__';
953
959
  type ExtractTypeMapsFromContract<T> = TypeMapsPhantomKey extends keyof T ? NonNullable<T[TypeMapsPhantomKey & keyof T]> : never;
960
+ type FieldOutputTypesOf<T> = [T] extends [never] ? Record<string, never> : T extends {
961
+ readonly fieldOutputTypes: infer F;
962
+ } ? F extends Record<string, Record<string, unknown>> ? F : Record<string, never> : Record<string, never>;
954
963
  type ExtractCodecTypes<T> = CodecTypesOf<ExtractTypeMapsFromContract<T>>;
964
+ type ExtractFieldOutputTypes<T> = FieldOutputTypesOf<ExtractTypeMapsFromContract<T>>;
955
965
  //#endregion
956
966
  //#region ../sql-builder/dist/db-BdrQgIiw.d.mts
957
967
  //#endregion
@@ -1012,14 +1022,31 @@ type Simplify<TObject extends object> = DrainOuterGeneric<{ [K in keyof TObject]
1012
1022
  */
1013
1023
  type UnboundTables<TContract extends Contract<SqlStorage>> = UnboundTables$1<TContract & TableProxyContract>;
1014
1024
  /**
1015
- * A utility type to extract the output type of a referenced column from a contract.
1016
- * Uses the type-only codec channel (ExtractCodecTypes), not runtime mappings.
1025
+ * The field-output override (the enum value union) for a `table.column`, or
1026
+ * `never` when no model field maps to it. The emitted `FieldOutputTypes`
1027
+ * TypeMap is keyed by model/field, so one pass over the models matches both the
1028
+ * `storage.table` and the field's `storage.fields[*].column` to read the
1029
+ * already-narrowed type back out.
1030
+ */
1031
+ type FieldOutputOverride<TContract extends Contract, TTableName extends string, TColumnName extends string, Models = ContractModelDefinitions<TContract>, FOT = ExtractFieldOutputTypes<TContract>> = { [M in keyof Models & keyof FOT & string]: Models[M] extends {
1032
+ readonly storage: {
1033
+ readonly table: TTableName;
1034
+ readonly fields: infer Fields;
1035
+ };
1036
+ } ? { [F in keyof Fields & keyof FOT[M] & string]: Fields[F] extends {
1037
+ readonly column: TColumnName;
1038
+ } ? FOT[M][F] : never }[keyof Fields & keyof FOT[M] & string] : never }[keyof Models & keyof FOT & string];
1039
+ /**
1040
+ * The output type of a referenced column. Returns the enum value union from the
1041
+ * `FieldOutputTypes` TypeMap when the column is enum-typed (the override already
1042
+ * carries the correct nullability), otherwise the codec output type with column
1043
+ * nullability applied.
1017
1044
  *
1018
1045
  * @template TContract The contract that describes the database.
1019
1046
  * @template TTableName The name of the table containing the column.
1020
1047
  * @template TColumnName The name of the column whose output type is to be extracted.
1021
1048
  */
1022
- type ExtractOutputType<TContract extends Contract<SqlStorage>, TTableName extends keyof UnboundTables<TContract> & string, TColumnName extends keyof UnboundTables<TContract>[TTableName]['columns'] & string, _TColumn = UnboundTables<TContract>[TTableName]['columns'][TColumnName]> = _TColumn extends StorageColumn ? (_TColumn['nullable'] extends true ? null : never) | ExtractCodecTypes<TContract>[_TColumn['codecId']]['output'] : never;
1049
+ type ExtractOutputType<TContract extends Contract<SqlStorage>, TTableName extends keyof UnboundTables<TContract> & string, TColumnName extends keyof UnboundTables<TContract>[TTableName]['columns'] & string, _TColumn = UnboundTables<TContract>[TTableName]['columns'][TColumnName]> = [FieldOutputOverride<TContract, TTableName, TColumnName>] extends [never] ? _TColumn extends StorageColumn ? (_TColumn['nullable'] extends true ? null : never) | ExtractCodecTypes<TContract>[_TColumn['codecId']]['output'] : never : FieldOutputOverride<TContract, TTableName, TColumnName>;
1023
1050
  /**
1024
1051
  * A type representing a selection of columns in a SQL `select` query in the
1025
1052
  * most generic form.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":["__brand","value","NamespaceId","namespace","model","space","ObjectType","CrossReference","plane","namespaceId","entityKind","name","spaceId","kind","codecId","typeParams","Record","members","ReadonlyArray","ScalarFieldType","ValueObjectFieldType","UnionFieldType","nullable","type","ContractFieldType","many","dict","valueSet","ValueSetRef","localFields","targetFields","table","parentColumns","childColumns","targetColumns","to","cardinality","on","ContractRelationOn","through","ContractRelationThrough","ContractManyToManyRelation","ContractNonJunctionRelation","ContractReferenceRelation","ContractEmbedRelation","field","fields","ContractField","Readonly","TModelStorage","ModelStorageBase","relations","ContractRelation","storage","discriminator","ContractDiscriminator","variants","ContractVariantEntry","base","owner","ContractModelBase","TModels","ModelName","K","models","valueObjects","ContractValueObject","enum","ContractEnum","namespaces","ApplicationDomainNamespace","domain","ApplicationDomain","ControlPolicy","nodeControl","defaultControlPolicy","TKey","TValue","$","K","THash","Brand","T","value","ExecutionHashBase","StorageHashBase","ProfileHashBase","Readonly","Record","id","entries","StorageEntitySlot","storageHash","namespaces","StorageNamespace","type","nullable","items","FieldType","properties","params","JsonPrimitive","key","JsonValue","ColumnDefaultLiteralValue","Date","ColumnDefaultLiteralInputValue","kind","expression","ColumnDefault","GeneratedValueSpec","ExecutionMutationDefaultValue","ref","table","column","onCreate","onUpdate","Omit","ExecutionMutationDefault","executionHash","mutations","defaults","ReadonlyArray","readOnly","projection","origin","capabilities","name","keys","unique","where","Expr","path","strategy","fields","indexes","DocIndex","target","targetFamily","profileHash","lane","annotations","contractJson","canonicalVersion","updatedAt","appTag","meta","invariants","space","migrationName","migrationHash","from","to","appliedAt","operationCount","TStorage","StorageBase","TModels","ContractModelBase","roots","CrossReference","domain","ApplicationDomain","storage","extensionPacks","execution","ContractExecutionSection","TContract","Contract","Only","TNamespace","valueObjects","VO","ContractValueObject","NamespaceValueObjectsOf","ExactlyOneNamespace","Projected","kind","IRNode","T","node","StorageNamespace","entries","Readonly","Record","IRNodeBase","Namespace","id","plane","namespaceId","entityKind","entityName","Pick","StorageBase","storage","Generator","EntityCoordinate","namespaces","ApplicationDomain","domain","IRNodeBase","kind","constructor","namespaceId","tableName","columns","spaceId","SqlNode","NamespaceId","ForeignKeyReferenceInput","input","source","ForeignKeyReference","target","name","onDelete","ReferentialAction","onUpdate","constraint","index","ForeignKeyInput","name","column","valueSet","ValueSetRef","SqlNode","constructor","CheckConstraintInput","input","columns","PrimaryKeyInput","type","options","Record","IndexInput","nativeType","codecId","nullable","typeParams","typeRef","default","ColumnDefault","control","ControlPolicy","StorageColumnInput","UniqueConstraintInput","StorageColumn","primaryKey","PrimaryKey","uniques","ReadonlyArray","UniqueConstraint","indexes","Index","foreignKeys","ForeignKey","ForeignKeyInput","checks","CheckConstraint","Readonly","StorageTableInput","StorageType","kind","CODEC_INSTANCE_KIND","StorageTypeInstanceInput","StorageTypeInstance","value","values","StorageValueSetInput","id","entries","table","StorageTable","StorageValueSet","THash","storageHash","StorageHashBase","types","SqlStorageTypeEntry","namespaces","SqlNamespace","Namespace","qualifyTable","tableName","Storage","SqlStorageInput","SqlStorage","storage","namespaceId","SqlNamespaceTablesInput","input","SqlNamespace","Readonly","Record","Namespace","namespaces","StorageType","kind","POSTGRES_ENUM_KIND","name","nativeType","values","codecId","control","ControlPolicy","value","PostgresEnumStorageEntry","NamespaceBase","instance","SqlUnboundNamespace","id","entries","table","StorageTable","constructor","qualifyTable","tableName","T","ControlDriverInstance","query","Row","sql","params","Promise","rows","onDelete","ReferentialAction","onUpdate","column","nullable","namespaceId","fields","SqlModelFieldStorage","constraint","index","fk","overrideDefaults","TCodecTypes","output","TQueryOperationTypes","TFieldOutputTypes","TFieldInputTypes","codecTypes","queryOperationTypes","fieldOutputTypes","fieldInputTypes","C","traits","CodecTrait","returnType","self","QueryOperationSelfSpec","impl","args","QueryOperationReturn","_CT","QueryOperationTypeEntry","Q","TContract","TTypeMaps","K","TypeMapsPhantomKey","NonNullable","F","CodecTypesOf","ExtractTypeMapsFromContract","QueryOperationTypesOf","FieldOutputTypesOf","FieldInputTypesOf","ExtractCodecTypes","Capabilities","Required","Method","T","K","Record","ScopeField","topLevel","ScopeTable","namespaces","Row","Alias","JoinOuterScope","getJoinOuterScope","Scope","buildAst","AnyFromSource","Name","Table","StorageTable$1","StorageTableToScopeTable","codecId","nullable","A","B","Expand","Omit","S","OldKey","NewKey","NullableScopeTable","TableName","RowType","SubqueryMarker","SelectAst","getRowFields","codecTypes","CodecTypesBase","capabilities","queryOperationTypes","QueryOperationTypesBase","resolvedColumnOutputTypes","Source","Field","FromScope","Columns","Pick","Expression$1","F","AvailableScope","QC","QueryContext","FieldProxy","fields","Functions","fns","BooleanCodecType","direction","OrderByDirection","nulls","OrderByNulls","OT","CT","input","eq","CodecId","CodecExpression","a","b","ne","N","gt","gte","lt","lte","and","ands","or","ors","exists","Subquery","subquery","notExists","in","expr","Array","values","notIn","raw","RawSqlTag","BuiltinFunctions","DeriveExtFunctions","count","CountField","sum","avg","min","max","AggregateOnlyFunctions","CodecTypes","output","PreResolved","ResolveField","ApplyNullable","NonNullable","sql","returning","StorageTable","annotate","As","AnnotationValue","OperationKind","annotations","ValidAnnotations","InsertQuery","GatedMethod","ReturningCapability","columns","WithFields","EmptyRow","build","SqlQueryPlan","ResolveRow","UpdateQuery","where","ExpressionBuilder","DeleteQuery","WithSelect","WithJoin","WithPagination","WithDistinct","WithAlias","WithBuild","GroupedQuery","groupBy","OrderByScope","having","AggregateFunctions","orderBy","field","OrderByOptions","options","distinctOn","postgres","SelectQuery","ParentScope","from","Other","JoinSource","other","MergeScopes","select","alias","WithField","Result","callback","ExtractScopeFields","innerJoin","on","JoinedTables","outerLeftJoin","NullableScope","outerRightJoin","outerFullJoin","lateralJoin","lateral","LateralRow","LateralBuilder","builder","outerLateralJoin","TraitExpression","limit","PaginationValue","offset","distinct","as","newAlias","C","Contract","M","ContractModelDefinitions","storage","table","ModelName","ColumnName","column","FieldTypes","FindModelForTable","TableProxyContract","UnboundTables","Tables","ColName","FindFieldForColumn","FieldName","FieldInputs","InsertValues","ResolvedInsertValues","ExtractCodecTypes","ExtractQueryOperationTypes","ResolvedColumnTypes","ExtractFieldOutputTypes","DefaultScope","ContractToQC","NewAlias","TableProxy","RebindScope","insert","ReadonlyArray","ExtractFieldInputTypes","rows","update","ResolvedUpdateValues","set","ResolvedUpdateExpressions","delete","Readonly","entries","CapabilitiesBase","TableNamesAcrossNamespaces","TableInAnyNamespace","NSId","NsId","Ns","Namespace"],"sources":["../../../../1-framework/0-foundation/contract/dist/domain-envelope-OkWsysCY.d.mts","../../../../1-framework/0-foundation/contract/dist/contract-types-CBbD-VV1.d.mts","../src/type-errors.ts","../src/column-reference.ts","../../../../1-framework/1-core/framework-components/dist/ir.d.mts","../../../1-core/contract/dist/foreign-key-BATxB95l.d.mts","../../../1-core/contract/dist/sql-storage-CXf9xjAL.d.mts","../../../1-core/contract/dist/types-DEnWD3xB.d.mts","../../sql-builder/dist/db-BdrQgIiw.d.mts","../src/type-atoms.ts","../src/selection.ts","../src/table-reference.ts","../src/ref.ts","../src/select-builder.ts","../src/root.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":["__brand","value","NamespaceId","namespace","model","space","ObjectType","CrossReference","TKey","TValue","$","K","THash","Brand","T","ExecutionHashBase","StorageHashBase","ProfileHashBase","Readonly","Record","id","entries","StorageEntitySlot","storageHash","namespaces","StorageNamespace","type","nullable","items","FieldType","properties","params","JsonPrimitive","key","JsonValue","ColumnDefaultLiteralValue","Date","ColumnDefaultLiteralInputValue","kind","expression","ColumnDefault","GeneratedValueSpec","ExecutionMutationDefaultValue","ref","table","column","onCreate","onUpdate","Omit","ExecutionMutationDefault","executionHash","mutations","defaults","ReadonlyArray","readOnly","projection","origin","capabilities","name","keys","unique","where","Expr","path","strategy","fields","indexes","DocIndex","target","targetFamily","profileHash","lane","annotations","contractJson","canonicalVersion","updatedAt","appTag","meta","invariants","migrationName","migrationHash","from","to","appliedAt","operationCount","plane","namespaceId","entityKind","entityName","spaceId","codecId","typeParams","members","ScalarFieldType","ValueObjectFieldType","UnionFieldType","ContractFieldType","many","dict","valueSet","ValueSetRef","localFields","targetFields","parentColumns","childColumns","targetColumns","cardinality","on","ContractRelationOn","through","ContractRelationThrough","ContractManyToManyRelation","ContractNonJunctionRelation","ContractReferenceRelation","ContractEmbedRelation","field","ContractField","TModelStorage","ModelStorageBase","relations","ContractRelation","storage","discriminator","ContractDiscriminator","variants","ContractVariantEntry","base","owner","ContractModelBase","TModels","ModelName","models","valueObjects","ContractValueObject","enum","ContractEnum","ApplicationDomainNamespace","domain","ApplicationDomain","ControlPolicy","nodeControl","defaultControlPolicy","THash","executionHash","ExecutionHashBase","mutations","defaults","ReadonlyArray","ExecutionMutationDefault","TStorage","StorageBase","TModels","Record","ContractModelBase","target","targetFamily","roots","CrossReference","domain","ApplicationDomain","storage","capabilities","extensionPacks","execution","ContractExecutionSection","profileHash","ProfileHashBase","meta","TContract","Contract","T","Only","TNamespace","valueObjects","VO","ContractValueObject","NamespaceValueObjectsOf","ExactlyOneNamespace","Projected","kind","IRNode","T","node","StorageNamespace","entries","Readonly","Record","IRNodeBase","Namespace","id","plane","namespaceId","entityKind","entityName","Pick","StorageBase","storage","Generator","EntityCoordinate","namespaces","ApplicationDomain","domain","IRNodeBase","kind","constructor","namespaceId","tableName","columns","spaceId","SqlNode","NamespaceId","ForeignKeyReferenceInput","input","source","ForeignKeyReference","target","name","onDelete","ReferentialAction","onUpdate","constraint","index","ForeignKeyInput","name","column","valueSet","ValueSetRef","SqlNode","constructor","CheckConstraintInput","input","columns","PrimaryKeyInput","type","options","Record","IndexInput","nativeType","codecId","nullable","typeParams","typeRef","default","ColumnDefault","control","ControlPolicy","StorageColumnInput","UniqueConstraintInput","StorageColumn","primaryKey","PrimaryKey","uniques","ReadonlyArray","UniqueConstraint","indexes","Index","foreignKeys","ForeignKey","ForeignKeyInput","checks","CheckConstraint","Readonly","StorageTableInput","StorageType","kind","CODEC_INSTANCE_KIND","StorageTypeInstanceInput","StorageTypeInstance","value","values","JsonValue","StorageValueSetInput","id","entries","table","StorageTable","StorageValueSet","THash","storageHash","StorageHashBase","types","SqlStorageTypeEntry","namespaces","SqlNamespace","Namespace","qualifyTable","tableName","Storage","SqlStorageInput","SqlStorage","storage","namespaceId","SqlNamespaceTablesInput","input","SqlNamespace","Readonly","Record","Namespace","namespaces","StorageType","kind","POSTGRES_ENUM_KIND","name","nativeType","values","codecId","control","ControlPolicy","value","PostgresEnumStorageEntry","NamespaceBase","instance","SqlUnboundNamespace","id","entries","table","StorageTable","constructor","qualifyTable","tableName","T","ControlDriverInstance","query","Row","sql","params","Promise","rows","onDelete","ReferentialAction","onUpdate","column","nullable","namespaceId","fields","SqlModelFieldStorage","constraint","index","fk","overrideDefaults","TCodecTypes","output","TQueryOperationTypes","TFieldOutputTypes","TFieldInputTypes","codecTypes","queryOperationTypes","fieldOutputTypes","fieldInputTypes","C","traits","CodecTrait","returnType","self","QueryOperationSelfSpec","impl","args","QueryOperationReturn","_CT","QueryOperationTypeEntry","Q","TContract","TTypeMaps","K","TypeMapsPhantomKey","NonNullable","F","CodecTypesOf","ExtractTypeMapsFromContract","QueryOperationTypesOf","FieldOutputTypesOf","FieldInputTypesOf","ExtractCodecTypes","Capabilities","Required","Method","T","K","Record","ScopeField","topLevel","ScopeTable","namespaces","Row","Alias","JoinOuterScope","getJoinOuterScope","Scope","buildAst","AnyFromSource","Name","Table","StorageTable$1","StorageTableToScopeTable","codecId","nullable","A","B","Expand","Omit","S","OldKey","NewKey","NullableScopeTable","TableName","RowType","SubqueryMarker","SelectAst","getRowFields","codecTypes","CodecTypesBase","capabilities","queryOperationTypes","QueryOperationTypesBase","resolvedColumnOutputTypes","Source","Field","FromScope","Columns","Pick","Expression$1","F","AvailableScope","QC","QueryContext","FieldProxy","fields","Functions","fns","BooleanCodecType","direction","OrderByDirection","nulls","OrderByNulls","OT","CT","input","eq","CodecId","CodecExpression","a","b","ne","N","gt","gte","lt","lte","and","ands","or","ors","exists","Subquery","subquery","notExists","in","expr","Array","values","notIn","raw","RawSqlTag","BuiltinFunctions","DeriveExtFunctions","count","CountField","sum","avg","min","max","AggregateOnlyFunctions","CodecTypes","output","PreResolved","ResolveField","ApplyNullable","NonNullable","sql","returning","StorageTable","annotate","As","AnnotationValue","OperationKind","annotations","ValidAnnotations","InsertQuery","GatedMethod","ReturningCapability","columns","WithFields","EmptyRow","build","SqlQueryPlan","ResolveRow","UpdateQuery","where","ExpressionBuilder","DeleteQuery","WithSelect","WithJoin","WithPagination","WithDistinct","WithAlias","WithBuild","GroupedQuery","groupBy","OrderByScope","having","AggregateFunctions","orderBy","field","OrderByOptions","options","distinctOn","postgres","SelectQuery","ParentScope","from","Other","JoinSource","other","MergeScopes","select","alias","WithField","Result","callback","ExtractScopeFields","innerJoin","on","JoinedTables","outerLeftJoin","NullableScope","outerRightJoin","outerFullJoin","lateralJoin","lateral","LateralRow","LateralBuilder","builder","outerLateralJoin","TraitExpression","limit","PaginationValue","offset","distinct","as","newAlias","C","Contract","M","ContractModelDefinitions","storage","table","ModelName","ColumnName","column","FieldTypes","FindModelForTable","TableProxyContract","UnboundTables","Tables","ColName","FindFieldForColumn","FieldName","FieldInputs","InsertValues","ResolvedInsertValues","ExtractCodecTypes","ExtractQueryOperationTypes","ResolvedColumnTypes","ExtractFieldOutputTypes","DefaultScope","ContractToQC","NewAlias","TableProxy","RebindScope","insert","ReadonlyArray","ExtractFieldInputTypes","rows","update","ResolvedUpdateValues","set","ResolvedUpdateExpressions","delete","Readonly","entries","CapabilitiesBase","TableNamesAcrossNamespaces","TableInAnyNamespace","NSId","NsId","Ns","Namespace"],"sources":["../../../../1-framework/0-foundation/contract/dist/domain-envelope-Czz8UMhU.d.mts","../../../../1-framework/0-foundation/contract/dist/contract-types-ci3TUzpo.d.mts","../src/type-errors.ts","../src/column-reference.ts","../../../../1-framework/1-core/framework-components/dist/ir.d.mts","../../../1-core/contract/dist/foreign-key-BATxB95l.d.mts","../../../1-core/contract/dist/sql-storage-DChMDNZo.d.mts","../../../1-core/contract/dist/types-DiR-feh1.d.mts","../../sql-builder/dist/db-BdrQgIiw.d.mts","../src/type-atoms.ts","../src/selection.ts","../src/table-reference.ts","../src/ref.ts","../src/select-builder.ts","../src/root.ts"],"mappings":"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"}
package/package.json CHANGED
@@ -1,16 +1,16 @@
1
1
  {
2
2
  "name": "@prisma-next/sql-lane-query-builder",
3
- "version": "0.13.0-dev.2",
3
+ "version": "0.13.0-dev.21",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "sideEffects": false,
7
7
  "description": "SQL query builder lane for Prisma Next",
8
8
  "devDependencies": {
9
- "@prisma-next/contract": "0.13.0-dev.2",
10
- "@prisma-next/sql-builder": "0.13.0-dev.2",
11
- "@prisma-next/sql-contract": "0.13.0-dev.2",
12
- "@prisma-next/tsconfig": "0.13.0-dev.2",
13
- "@prisma-next/tsdown": "0.13.0-dev.2",
9
+ "@prisma-next/contract": "0.13.0-dev.21",
10
+ "@prisma-next/sql-builder": "0.13.0-dev.21",
11
+ "@prisma-next/sql-contract": "0.13.0-dev.21",
12
+ "@prisma-next/tsconfig": "0.13.0-dev.21",
13
+ "@prisma-next/tsdown": "0.13.0-dev.21",
14
14
  "tsdown": "0.22.1",
15
15
  "typescript": "5.9.3",
16
16
  "vitest": "4.1.8"
package/src/selection.ts CHANGED
@@ -1,9 +1,14 @@
1
- import type { Contract } from '@prisma-next/contract/types';
1
+ import type { Contract, ContractModelDefinitions } from '@prisma-next/contract/types';
2
2
  import type {
3
3
  UnboundTables as SqlBuilderUnboundTables,
4
4
  TableProxyContract,
5
5
  } from '@prisma-next/sql-builder/types';
6
- import type { ExtractCodecTypes, SqlStorage, StorageColumn } from '@prisma-next/sql-contract/types';
6
+ import type {
7
+ ExtractCodecTypes,
8
+ ExtractFieldOutputTypes,
9
+ SqlStorage,
10
+ StorageColumn,
11
+ } from '@prisma-next/sql-contract/types';
7
12
  import type { DrainOuterGeneric } from './type-atoms';
8
13
 
9
14
  /**
@@ -16,8 +21,37 @@ export type UnboundTables<TContract extends Contract<SqlStorage>> = SqlBuilderUn
16
21
  >;
17
22
 
18
23
  /**
19
- * A utility type to extract the output type of a referenced column from a contract.
20
- * Uses the type-only codec channel (ExtractCodecTypes), not runtime mappings.
24
+ * The field-output override (the enum value union) for a `table.column`, or
25
+ * `never` when no model field maps to it. The emitted `FieldOutputTypes`
26
+ * TypeMap is keyed by model/field, so one pass over the models matches both the
27
+ * `storage.table` and the field's `storage.fields[*].column` to read the
28
+ * already-narrowed type back out.
29
+ */
30
+ type FieldOutputOverride<
31
+ TContract extends Contract,
32
+ TTableName extends string,
33
+ TColumnName extends string,
34
+ Models = ContractModelDefinitions<TContract>,
35
+ FOT = ExtractFieldOutputTypes<TContract>,
36
+ > = {
37
+ [M in keyof Models & keyof FOT & string]: Models[M] extends {
38
+ readonly storage: { readonly table: TTableName; readonly fields: infer Fields };
39
+ }
40
+ ? {
41
+ [F in keyof Fields & keyof FOT[M] & string]: Fields[F] extends {
42
+ readonly column: TColumnName;
43
+ }
44
+ ? FOT[M][F]
45
+ : never;
46
+ }[keyof Fields & keyof FOT[M] & string]
47
+ : never;
48
+ }[keyof Models & keyof FOT & string];
49
+
50
+ /**
51
+ * The output type of a referenced column. Returns the enum value union from the
52
+ * `FieldOutputTypes` TypeMap when the column is enum-typed (the override already
53
+ * carries the correct nullability), otherwise the codec output type with column
54
+ * nullability applied.
21
55
  *
22
56
  * @template TContract The contract that describes the database.
23
57
  * @template TTableName The name of the table containing the column.
@@ -28,11 +62,13 @@ export type ExtractOutputType<
28
62
  TTableName extends keyof UnboundTables<TContract> & string,
29
63
  TColumnName extends keyof UnboundTables<TContract>[TTableName]['columns'] & string,
30
64
  _TColumn = UnboundTables<TContract>[TTableName]['columns'][TColumnName],
31
- > = _TColumn extends StorageColumn
32
- ?
33
- | (_TColumn['nullable'] extends true ? null : never)
34
- | ExtractCodecTypes<TContract>[_TColumn['codecId']]['output']
35
- : never;
65
+ > = [FieldOutputOverride<TContract, TTableName, TColumnName>] extends [never]
66
+ ? _TColumn extends StorageColumn
67
+ ?
68
+ | (_TColumn['nullable'] extends true ? null : never)
69
+ | ExtractCodecTypes<TContract>[_TColumn['codecId']]['output']
70
+ : never
71
+ : FieldOutputOverride<TContract, TTableName, TColumnName>;
36
72
 
37
73
  /**
38
74
  * A type representing a selection of columns in a SQL `select` query in the