@prisma-next/sql-builder 0.5.0-dev.9 → 0.6.0-dev.1

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.
@@ -1,28 +1,18 @@
1
- import * as _prisma_next_sql_relational_core_ast0 from "@prisma-next/sql-relational-core/ast";
2
1
  import { AnyFromSource, SelectAst } from "@prisma-next/sql-relational-core/ast";
2
+ import { CodecExpression, Expression as Expression$1, ScopeField } from "@prisma-next/sql-relational-core/expression";
3
3
  import { ExtractCodecTypes, ExtractFieldInputTypes, ExtractFieldOutputTypes, ExtractQueryOperationTypes, QueryOperationTypesBase, StorageTable, StorageTable as StorageTable$1 } from "@prisma-next/sql-contract/types";
4
4
  import { SqlQueryPlan } from "@prisma-next/sql-relational-core/plan";
5
5
 
6
6
  //#region src/scope.d.ts
7
- type GatedMethod<Capabilities, Required, Method> = Capabilities extends Required ? Method : never;
8
7
  type CodecTypesBase = Record<string, {
9
8
  readonly input: unknown;
10
9
  readonly output: unknown;
11
10
  }>;
12
- declare const ExpressionType: unique symbol;
11
+ type GatedMethod<Capabilities, Required, Method> = Capabilities extends Required ? Method : never;
13
12
  declare const JoinOuterScope: unique symbol;
14
13
  declare const SubqueryMarker: unique symbol;
15
- type Expand<T$1> = { [K in keyof T$1]: T$1[K] } & unknown;
14
+ type Expand<T> = { [K in keyof T]: T[K] } & unknown;
16
15
  type EmptyRow = Record<never, ScopeField>;
17
- type ScopeField = {
18
- codecId: string;
19
- nullable: boolean;
20
- };
21
- type TraitField = {
22
- traits: readonly string[];
23
- nullable: boolean;
24
- };
25
- type FieldSpec = ScopeField | TraitField;
26
16
  type ScopeTable = Record<string, ScopeField>;
27
17
  type Scope = {
28
18
  topLevel: ScopeTable;
@@ -36,13 +26,13 @@ type JoinSource<Row extends ScopeTable, Alias extends string> = {
36
26
  getJoinOuterScope(): Scope;
37
27
  buildAst(): AnyFromSource;
38
28
  };
39
- type DefaultScope<Name$1 extends string, Table extends StorageTable$1> = {
29
+ type DefaultScope<Name extends string, Table extends StorageTable$1> = {
40
30
  topLevel: StorageTableToScopeTable<Table>;
41
- namespaces: { [K in Name$1]: StorageTableToScopeTable<Table> };
31
+ namespaces: { [K in Name]: StorageTableToScopeTable<Table> };
42
32
  };
43
- type StorageTableToScopeTable<T$1 extends StorageTable$1> = { [K in keyof T$1['columns']]: {
44
- codecId: T$1['columns'][K]['codecId'];
45
- nullable: T$1['columns'][K]['nullable'];
33
+ type StorageTableToScopeTable<T extends StorageTable$1> = { [K in keyof T['columns']]: {
34
+ codecId: T['columns'][K]['codecId'];
35
+ nullable: T['columns'][K]['nullable'];
46
36
  } };
47
37
  type MergeScopes<A extends Scope, B extends Scope> = {
48
38
  topLevel: Expand<Omit<A['topLevel'], keyof B['topLevel']> & Omit<B['topLevel'], keyof A['topLevel']>>;
@@ -73,22 +63,15 @@ type QueryContext = {
73
63
  };
74
64
  //#endregion
75
65
  //#region src/expression.d.ts
76
- type Expression<T$1 extends FieldSpec> = {
77
- [ExpressionType]: T$1;
78
- buildAst(): _prisma_next_sql_relational_core_ast0.AnyExpression;
79
- };
80
- type WithField<Source, Field extends ScopeField, Alias extends string> = Expand<Source & { [K in Alias]: Field }>;
81
- type WithFields<Source, FromScope extends ScopeTable, Columns extends readonly (keyof FromScope)[]> = Expand<Source & Pick<FromScope, Columns[number]>>;
82
- type ExtractScopeFields<T$1 extends Record<string, Expression<ScopeField>>> = { [K in keyof T$1]: T$1[K] extends Expression<infer F extends ScopeField> ? F : never };
83
- type FieldProxy<AvailableScope extends Scope> = { [K in keyof AvailableScope['topLevel']]: Expression<AvailableScope['topLevel'][K]> } & { [TableName in keyof AvailableScope['namespaces']]: { [K in keyof AvailableScope['namespaces'][TableName]]: Expression<AvailableScope['namespaces'][TableName][K]> } };
84
- type ExpressionOrValue<T$1 extends ScopeField, CT extends Record<string, {
85
- readonly input: unknown;
86
- }>> = Expression<T$1> | (T$1['codecId'] extends keyof CT ? CT[T$1['codecId']]['input'] : never);
87
66
  type BooleanCodecType = {
88
67
  codecId: 'pg/bool@1';
89
68
  nullable: boolean;
90
69
  };
91
- type ExpressionBuilder<AvailableScope extends Scope, QC extends QueryContext> = (fields: FieldProxy<AvailableScope>, fns: Functions<QC>) => Expression<BooleanCodecType>;
70
+ type WithField<Source, Field extends ScopeField, Alias extends string> = Expand<Source & { [K in Alias]: Field }>;
71
+ type WithFields<Source, FromScope extends ScopeTable, Columns extends readonly (keyof FromScope)[]> = Expand<Source & Pick<FromScope, Columns[number]>>;
72
+ type ExtractScopeFields<T extends Record<string, Expression$1<ScopeField>>> = { [K in keyof T]: T[K] extends Expression$1<infer F extends ScopeField> ? F : never };
73
+ type FieldProxy<AvailableScope extends Scope> = { [K in keyof AvailableScope['topLevel']]: Expression$1<AvailableScope['topLevel'][K]> } & { [TableName in keyof AvailableScope['namespaces']]: { [K in keyof AvailableScope['namespaces'][TableName]]: Expression$1<AvailableScope['namespaces'][TableName][K]> } };
74
+ type ExpressionBuilder<AvailableScope extends Scope, QC extends QueryContext> = (fields: FieldProxy<AvailableScope>, fns: Functions<QC>) => Expression$1<BooleanCodecType>;
92
75
  type OrderByDirection = 'asc' | 'desc';
93
76
  type OrderByNulls = 'first' | 'last';
94
77
  type OrderByOptions = {
@@ -99,115 +82,78 @@ type OrderByScope<AvailableScope extends Scope, RowType extends Record<string, S
99
82
  topLevel: Expand<AvailableScope['topLevel'] & RowType>;
100
83
  namespaces: AvailableScope['namespaces'];
101
84
  };
102
- type CodecIdsWithTrait<CT extends Record<string, {
103
- readonly input: unknown;
104
- }>, RequiredTraits extends readonly string[]> = { [K in keyof CT & string]: CT[K] extends {
105
- readonly traits: infer T;
106
- } ? [RequiredTraits[number]] extends [T] ? K : never : never }[keyof CT & string];
107
- type ResolveExtArg<Arg, CT extends Record<string, {
108
- readonly input: unknown;
109
- }>> = Arg extends {
110
- readonly codecId: infer CId extends string;
111
- readonly nullable: infer N extends boolean;
112
- } ? ExpressionOrValue<{
113
- codecId: CId;
114
- nullable: N;
115
- }, CT> : Arg extends {
116
- readonly traits: infer T extends readonly string[];
117
- readonly nullable: infer N extends boolean;
118
- } ? ExpressionOrValue<{
119
- codecId: CodecIdsWithTrait<CT, T>;
120
- nullable: N;
121
- }, CT> : never;
122
- type ExtensionFunctionArgs<Args extends readonly unknown[], CT extends Record<string, {
123
- readonly input: unknown;
124
- }>> = { [I in keyof Args]: ResolveExtArg<Args[I], CT> };
125
- type DeriveExtFunctions<OT extends QueryOperationTypesBase, CT extends Record<string, {
126
- readonly input: unknown;
127
- }>> = { [K in keyof OT]: (...args: ExtensionFunctionArgs<OT[K]['args'], CT>) => Expression<OT[K]['returns']> };
85
+ type DeriveExtFunctions<OT extends QueryOperationTypesBase> = { [K in keyof OT]: OT[K]['impl'] };
128
86
  type BuiltinFunctions<CT extends Record<string, {
129
87
  readonly input: unknown;
130
88
  }>> = {
131
- eq: <CodecId extends string>(a: ExpressionOrValue<{
132
- codecId: CodecId;
133
- nullable: boolean;
134
- }, CT> | null, b: ExpressionOrValue<{
135
- codecId: CodecId;
136
- nullable: boolean;
137
- }, CT> | null) => Expression<BooleanCodecType>;
138
- ne: <T$1 extends ScopeField>(a: ExpressionOrValue<T$1, CT> | null, b: ExpressionOrValue<T$1, CT> | null) => Expression<BooleanCodecType>;
139
- gt: <T$1 extends ScopeField>(a: ExpressionOrValue<T$1, CT>, b: ExpressionOrValue<T$1, CT>) => Expression<BooleanCodecType>;
140
- gte: <T$1 extends ScopeField>(a: ExpressionOrValue<T$1, CT>, b: ExpressionOrValue<T$1, CT>) => Expression<BooleanCodecType>;
141
- lt: <T$1 extends ScopeField>(a: ExpressionOrValue<T$1, CT>, b: ExpressionOrValue<T$1, CT>) => Expression<BooleanCodecType>;
142
- lte: <T$1 extends ScopeField>(a: ExpressionOrValue<T$1, CT>, b: ExpressionOrValue<T$1, CT>) => Expression<BooleanCodecType>;
143
- and: (...ands: ExpressionOrValue<BooleanCodecType, CT>[]) => Expression<BooleanCodecType>;
144
- or: (...ors: ExpressionOrValue<BooleanCodecType, CT>[]) => Expression<BooleanCodecType>;
145
- exists: (subquery: Subquery<Record<string, ScopeField>>) => Expression<BooleanCodecType>;
146
- notExists: (subquery: Subquery<Record<string, ScopeField>>) => Expression<BooleanCodecType>;
89
+ eq: <CodecId extends string>(a: CodecExpression<CodecId, boolean, CT> | null, b: CodecExpression<CodecId, boolean, CT> | null) => Expression$1<BooleanCodecType>;
90
+ ne: <CodecId extends string, N extends boolean>(a: CodecExpression<CodecId, N, CT> | null, b: CodecExpression<CodecId, N, CT> | null) => Expression$1<BooleanCodecType>;
91
+ gt: <CodecId extends string, N extends boolean>(a: CodecExpression<CodecId, N, CT>, b: CodecExpression<CodecId, N, CT>) => Expression$1<BooleanCodecType>;
92
+ gte: <CodecId extends string, N extends boolean>(a: CodecExpression<CodecId, N, CT>, b: CodecExpression<CodecId, N, CT>) => Expression$1<BooleanCodecType>;
93
+ lt: <CodecId extends string, N extends boolean>(a: CodecExpression<CodecId, N, CT>, b: CodecExpression<CodecId, N, CT>) => Expression$1<BooleanCodecType>;
94
+ lte: <CodecId extends string, N extends boolean>(a: CodecExpression<CodecId, N, CT>, b: CodecExpression<CodecId, N, CT>) => Expression$1<BooleanCodecType>;
95
+ and: (...ands: CodecExpression<'pg/bool@1', boolean, CT>[]) => Expression$1<BooleanCodecType>;
96
+ or: (...ors: CodecExpression<'pg/bool@1', boolean, CT>[]) => Expression$1<BooleanCodecType>;
97
+ exists: (subquery: Subquery<Record<string, ScopeField>>) => Expression$1<BooleanCodecType>;
98
+ notExists: (subquery: Subquery<Record<string, ScopeField>>) => Expression$1<BooleanCodecType>;
147
99
  in: {
148
- <CodecId extends string>(expr: Expression<{
100
+ <CodecId extends string>(expr: Expression$1<{
149
101
  codecId: CodecId;
150
102
  nullable: boolean;
151
103
  }>, subquery: Subquery<Record<string, {
152
104
  codecId: CodecId;
153
105
  nullable: boolean;
154
- }>>): Expression<BooleanCodecType>;
155
- <CodecId extends string>(expr: Expression<{
156
- codecId: CodecId;
157
- nullable: boolean;
158
- }>, values: Array<ExpressionOrValue<{
106
+ }>>): Expression$1<BooleanCodecType>;
107
+ <CodecId extends string>(expr: Expression$1<{
159
108
  codecId: CodecId;
160
109
  nullable: boolean;
161
- }, CT>>): Expression<BooleanCodecType>;
110
+ }>, values: Array<CodecExpression<CodecId, boolean, CT>>): Expression$1<BooleanCodecType>;
162
111
  };
163
112
  notIn: {
164
- <CodecId extends string>(expr: Expression<{
113
+ <CodecId extends string>(expr: Expression$1<{
165
114
  codecId: CodecId;
166
115
  nullable: boolean;
167
116
  }>, subquery: Subquery<Record<string, {
168
117
  codecId: CodecId;
169
118
  nullable: boolean;
170
- }>>): Expression<BooleanCodecType>;
171
- <CodecId extends string>(expr: Expression<{
172
- codecId: CodecId;
173
- nullable: boolean;
174
- }>, values: Array<ExpressionOrValue<{
119
+ }>>): Expression$1<BooleanCodecType>;
120
+ <CodecId extends string>(expr: Expression$1<{
175
121
  codecId: CodecId;
176
122
  nullable: boolean;
177
- }, CT>>): Expression<BooleanCodecType>;
123
+ }>, values: Array<CodecExpression<CodecId, boolean, CT>>): Expression$1<BooleanCodecType>;
178
124
  };
179
125
  };
180
- type Functions<QC extends QueryContext> = BuiltinFunctions<QC['codecTypes']> & DeriveExtFunctions<QC['queryOperationTypes'], QC['codecTypes']>;
126
+ type Functions<QC extends QueryContext> = BuiltinFunctions<QC['codecTypes']> & DeriveExtFunctions<QC['queryOperationTypes']>;
181
127
  type CountField = {
182
128
  codecId: 'pg/int8@1';
183
129
  nullable: false;
184
130
  };
185
131
  type AggregateOnlyFunctions = {
186
- count: (expr?: Expression<ScopeField>) => Expression<CountField>;
187
- sum: <T$1 extends ScopeField>(expr: Expression<T$1>) => Expression<{
188
- codecId: T$1['codecId'];
132
+ count: (expr?: Expression$1<ScopeField>) => Expression$1<CountField>;
133
+ sum: <T extends ScopeField>(expr: Expression$1<T>) => Expression$1<{
134
+ codecId: T['codecId'];
189
135
  nullable: true;
190
136
  }>;
191
- avg: <T$1 extends ScopeField>(expr: Expression<T$1>) => Expression<{
192
- codecId: T$1['codecId'];
137
+ avg: <T extends ScopeField>(expr: Expression$1<T>) => Expression$1<{
138
+ codecId: T['codecId'];
193
139
  nullable: true;
194
140
  }>;
195
- min: <T$1 extends ScopeField>(expr: Expression<T$1>) => Expression<{
196
- codecId: T$1['codecId'];
141
+ min: <T extends ScopeField>(expr: Expression$1<T>) => Expression$1<{
142
+ codecId: T['codecId'];
197
143
  nullable: true;
198
144
  }>;
199
- max: <T$1 extends ScopeField>(expr: Expression<T$1>) => Expression<{
200
- codecId: T$1['codecId'];
145
+ max: <T extends ScopeField>(expr: Expression$1<T>) => Expression$1<{
146
+ codecId: T['codecId'];
201
147
  nullable: true;
202
148
  }>;
203
149
  };
204
150
  type AggregateFunctions<QC extends QueryContext> = Functions<QC> & AggregateOnlyFunctions;
205
151
  //#endregion
206
152
  //#region src/resolve.d.ts
207
- type ResolveField<F$1 extends ScopeField, CodecTypes extends Record<string, {
153
+ type ResolveField<F extends ScopeField, CodecTypes extends Record<string, {
208
154
  readonly output: unknown;
209
- }>> = F$1['codecId'] extends keyof CodecTypes ? F$1['nullable'] extends true ? CodecTypes[F$1['codecId']]['output'] | null : CodecTypes[F$1['codecId']]['output'] : unknown;
210
- type ApplyNullable<T$1, F$1 extends ScopeField> = F$1['nullable'] extends true ? T$1 | null : T$1;
155
+ }>> = F['codecId'] extends keyof CodecTypes ? F['nullable'] extends true ? CodecTypes[F['codecId']]['output'] | null : CodecTypes[F['codecId']]['output'] : unknown;
156
+ type ApplyNullable<T, F extends ScopeField> = F['nullable'] extends true ? T | null : T;
211
157
  type ResolveRow<Row extends Record<string, ScopeField>, CodecTypes extends Record<string, {
212
158
  readonly output: unknown;
213
159
  }>, PreResolved extends Record<string, unknown> = Record<string, never>> = Expand<{ -readonly [K in keyof Row]: string extends keyof PreResolved ? ResolveField<Row[K], CodecTypes> : K extends keyof PreResolved ? ApplyNullable<NonNullable<PreResolved[K & keyof PreResolved]>, Row[K]> : ResolveField<Row[K], CodecTypes> }>;
@@ -242,17 +188,17 @@ interface JoinedTables<QC extends QueryContext, AvailableScope extends Scope> ex
242
188
  //#region src/types/grouped-query.d.ts
243
189
  interface GroupedQuery<QC extends QueryContext, AvailableScope extends Scope, RowType extends Record<string, ScopeField>> extends Subquery<RowType>, WithPagination, WithDistinct, WithAlias<RowType>, WithBuild<QC, RowType> {
244
190
  groupBy(...fields: ((keyof RowType | keyof AvailableScope['topLevel']) & string)[]): GroupedQuery<QC, AvailableScope, RowType>;
245
- groupBy(expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: Functions<QC>) => Expression<ScopeField>): GroupedQuery<QC, AvailableScope, RowType>;
246
- having(expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: AggregateFunctions<QC>) => Expression<BooleanCodecType>): GroupedQuery<QC, AvailableScope, RowType>;
191
+ groupBy(expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: Functions<QC>) => Expression$1<ScopeField>): GroupedQuery<QC, AvailableScope, RowType>;
192
+ having(expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: AggregateFunctions<QC>) => Expression$1<BooleanCodecType>): GroupedQuery<QC, AvailableScope, RowType>;
247
193
  orderBy(field: (keyof RowType | keyof AvailableScope['topLevel']) & string, options?: OrderByOptions): GroupedQuery<QC, AvailableScope, RowType>;
248
- orderBy(expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: AggregateFunctions<QC>) => Expression<ScopeField>, options?: OrderByOptions): GroupedQuery<QC, AvailableScope, RowType>;
194
+ orderBy(expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: AggregateFunctions<QC>) => Expression$1<ScopeField>, options?: OrderByOptions): GroupedQuery<QC, AvailableScope, RowType>;
249
195
  distinctOn: GatedMethod<QC['capabilities'], {
250
196
  postgres: {
251
197
  distinctOn: true;
252
198
  };
253
199
  }, {
254
200
  (...fields: ((keyof RowType | keyof AvailableScope['topLevel']) & string)[]): GroupedQuery<QC, AvailableScope, RowType>;
255
- (expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: Functions<QC>) => Expression<ScopeField>): GroupedQuery<QC, AvailableScope, RowType>;
201
+ (expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: Functions<QC>) => Expression$1<ScopeField>): GroupedQuery<QC, AvailableScope, RowType>;
256
202
  }>;
257
203
  }
258
204
  //#endregion
@@ -260,16 +206,16 @@ interface GroupedQuery<QC extends QueryContext, AvailableScope extends Scope, Ro
260
206
  interface SelectQuery<QC extends QueryContext, AvailableScope extends Scope, RowType extends Record<string, ScopeField>> extends Subquery<RowType>, WithSelect<QC, AvailableScope, RowType>, WithPagination, WithDistinct, WithAlias<RowType>, WithBuild<QC, RowType> {
261
207
  where(expr: ExpressionBuilder<AvailableScope, QC>): SelectQuery<QC, AvailableScope, RowType>;
262
208
  orderBy(field: (keyof RowType | keyof AvailableScope['topLevel']) & string, options?: OrderByOptions): SelectQuery<QC, AvailableScope, RowType>;
263
- orderBy(expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: Functions<QC>) => Expression<ScopeField>, options?: OrderByOptions): SelectQuery<QC, AvailableScope, RowType>;
209
+ orderBy(expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: Functions<QC>) => Expression$1<ScopeField>, options?: OrderByOptions): SelectQuery<QC, AvailableScope, RowType>;
264
210
  groupBy(...fields: ((keyof RowType | keyof AvailableScope['topLevel']) & string)[]): GroupedQuery<QC, AvailableScope, RowType>;
265
- groupBy(expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: Functions<QC>) => Expression<ScopeField>): GroupedQuery<QC, AvailableScope, RowType>;
211
+ groupBy(expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: Functions<QC>) => Expression$1<ScopeField>): GroupedQuery<QC, AvailableScope, RowType>;
266
212
  distinctOn: GatedMethod<QC['capabilities'], {
267
213
  postgres: {
268
214
  distinctOn: true;
269
215
  };
270
216
  }, {
271
217
  (...fields: ((keyof RowType | keyof AvailableScope['topLevel']) & string)[]): SelectQuery<QC, AvailableScope, RowType>;
272
- (expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: Functions<QC>) => Expression<ScopeField>): SelectQuery<QC, AvailableScope, RowType>;
218
+ (expr: (fields: FieldProxy<OrderByScope<AvailableScope, RowType>>, fns: Functions<QC>) => Expression$1<ScopeField>): SelectQuery<QC, AvailableScope, RowType>;
273
219
  }>;
274
220
  }
275
221
  //#endregion
@@ -279,8 +225,8 @@ interface LateralBuilder<QC extends QueryContext, ParentScope extends Scope> {
279
225
  }
280
226
  interface WithSelect<QC extends QueryContext, AvailableScope extends Scope, RowType extends Record<string, ScopeField> = EmptyRow> {
281
227
  select<Columns extends (keyof AvailableScope['topLevel'] & string)[]>(...columns: Columns): SelectQuery<QC, AvailableScope, WithFields<RowType, AvailableScope['topLevel'], Columns>>;
282
- select<Alias extends string, Field extends ScopeField>(alias: Alias, expr: (fields: FieldProxy<AvailableScope>, fns: AggregateFunctions<QC>) => Expression<Field>): SelectQuery<QC, AvailableScope, WithField<RowType, Field, Alias>>;
283
- select<Result extends Record<string, Expression<ScopeField>>>(callback: (fields: FieldProxy<AvailableScope>, fns: AggregateFunctions<QC>) => Result): SelectQuery<QC, AvailableScope, Expand<RowType & ExtractScopeFields<Result>>>;
228
+ select<Alias extends string, Field extends ScopeField>(alias: Alias, expr: (fields: FieldProxy<AvailableScope>, fns: AggregateFunctions<QC>) => Expression$1<Field>): SelectQuery<QC, AvailableScope, WithField<RowType, Field, Alias>>;
229
+ select<Result extends Record<string, Expression$1<ScopeField>>>(callback: (fields: FieldProxy<AvailableScope>, fns: AggregateFunctions<QC>) => Result): SelectQuery<QC, AvailableScope, Expand<RowType & ExtractScopeFields<Result>>>;
284
230
  }
285
231
  interface WithJoin<QC extends QueryContext, AvailableScope extends Scope, Capabilities> {
286
232
  innerJoin<Other extends JoinSource<ScopeTable, string | never>>(other: Other, on: ExpressionBuilder<MergeScopes<AvailableScope, Other[typeof JoinOuterScope]>, QC>): JoinedTables<QC, MergeScopes<AvailableScope, Other[typeof JoinOuterScope]>>;
@@ -319,14 +265,14 @@ interface WithBuild<QC extends QueryContext, RowType extends Record<string, Scop
319
265
  }
320
266
  //#endregion
321
267
  //#region src/types/table-proxy.d.ts
322
- type FindModelForTable<C, TableName$1 extends string> = C extends {
268
+ type FindModelForTable<C, TableName extends string> = C extends {
323
269
  readonly models: infer Models extends Record<string, {
324
270
  readonly storage: {
325
271
  readonly table: string;
326
272
  };
327
273
  }>;
328
- } ? { [M in keyof Models & string]: Models[M]['storage']['table'] extends TableName$1 ? M : never }[keyof Models & string] : never;
329
- type FindFieldForColumn<C, ModelName$1 extends string, ColumnName extends string> = C extends {
274
+ } ? { [M in keyof Models & string]: Models[M]['storage']['table'] extends TableName ? M : never }[keyof Models & string] : never;
275
+ type FindFieldForColumn<C, ModelName extends string, ColumnName extends string> = C extends {
330
276
  readonly models: infer Models extends Record<string, {
331
277
  readonly storage: {
332
278
  readonly fields: Record<string, {
@@ -334,28 +280,28 @@ type FindFieldForColumn<C, ModelName$1 extends string, ColumnName extends string
334
280
  }>;
335
281
  };
336
282
  }>;
337
- } ? ModelName$1 extends keyof Models ? { [F in keyof Models[ModelName$1]['storage']['fields'] & string]: Models[ModelName$1]['storage']['fields'][F]['column'] extends ColumnName ? F : never }[keyof Models[ModelName$1]['storage']['fields'] & string] : never : never;
338
- type ResolvedColumnTypes<C, TableName$1 extends string, FieldTypes extends Record<string, Record<string, unknown>>> = string extends keyof FieldTypes ? Record<string, never> : FindModelForTable<C, TableName$1> extends infer ModelName extends string ? ModelName extends keyof FieldTypes ? C extends {
283
+ } ? ModelName extends keyof Models ? { [F in keyof Models[ModelName]['storage']['fields'] & string]: Models[ModelName]['storage']['fields'][F]['column'] extends ColumnName ? F : never }[keyof Models[ModelName]['storage']['fields'] & string] : never : never;
284
+ type ResolvedColumnTypes<C, TableName extends string, FieldTypes extends Record<string, Record<string, unknown>>> = string extends keyof FieldTypes ? Record<string, never> : FindModelForTable<C, TableName> extends infer ModelName extends string ? ModelName extends keyof FieldTypes ? C extends {
339
285
  readonly storage: {
340
286
  readonly tables: infer Tables extends Record<string, StorageTable>;
341
287
  };
342
- } ? TableName$1 extends keyof Tables ? { [ColName in keyof Tables[TableName$1]['columns'] & string]: FindFieldForColumn<C, ModelName, ColName> extends infer FieldName extends string ? FieldName extends keyof FieldTypes[ModelName] ? FieldTypes[ModelName][FieldName] : unknown : unknown } : Record<string, never> : Record<string, never> : Record<string, never> : Record<string, never>;
343
- type ResolvedInsertValues<C, Table extends StorageTable, TableName$1 extends string, CT extends Record<string, {
288
+ } ? TableName extends keyof Tables ? { [ColName in keyof Tables[TableName]['columns'] & string]: FindFieldForColumn<C, ModelName, ColName> extends infer FieldName extends string ? FieldName extends keyof FieldTypes[ModelName] ? FieldTypes[ModelName][FieldName] : unknown : unknown } : Record<string, never> : Record<string, never> : Record<string, never> : Record<string, never>;
289
+ type ResolvedInsertValues<C, Table extends StorageTable, TableName extends string, CT extends Record<string, {
344
290
  readonly input: unknown;
345
- }>, FieldInputs extends Record<string, Record<string, unknown>>> = string extends keyof FieldInputs ? InsertValues<Table, CT> : FindModelForTable<C, TableName$1> extends infer ModelName extends string ? ModelName extends keyof FieldInputs ? { [K in keyof Table['columns']]?: FindFieldForColumn<C, ModelName, K & string> extends infer FieldName extends string ? FieldName extends keyof FieldInputs[ModelName] ? Table['columns'][K]['nullable'] extends true ? NonNullable<FieldInputs[ModelName][FieldName]> | null : NonNullable<FieldInputs[ModelName][FieldName]> : Table['columns'][K]['codecId'] extends keyof CT ? CT[Table['columns'][K]['codecId']]['input'] : unknown : Table['columns'][K]['codecId'] extends keyof CT ? CT[Table['columns'][K]['codecId']]['input'] : unknown } : InsertValues<Table, CT> : InsertValues<Table, CT>;
346
- type ResolvedUpdateValues<C, Table extends StorageTable, TableName$1 extends string, CT extends Record<string, {
291
+ }>, FieldInputs extends Record<string, Record<string, unknown>>> = string extends keyof FieldInputs ? InsertValues<Table, CT> : FindModelForTable<C, TableName> extends infer ModelName extends string ? ModelName extends keyof FieldInputs ? { [K in keyof Table['columns']]?: FindFieldForColumn<C, ModelName, K & string> extends infer FieldName extends string ? FieldName extends keyof FieldInputs[ModelName] ? Table['columns'][K]['nullable'] extends true ? NonNullable<FieldInputs[ModelName][FieldName]> | null : NonNullable<FieldInputs[ModelName][FieldName]> : Table['columns'][K]['codecId'] extends keyof CT ? CT[Table['columns'][K]['codecId']]['input'] : unknown : Table['columns'][K]['codecId'] extends keyof CT ? CT[Table['columns'][K]['codecId']]['input'] : unknown } : InsertValues<Table, CT> : InsertValues<Table, CT>;
292
+ type ResolvedUpdateValues<C, Table extends StorageTable, TableName extends string, CT extends Record<string, {
347
293
  readonly input: unknown;
348
- }>, FieldInputs extends Record<string, Record<string, unknown>>> = ResolvedInsertValues<C, Table, TableName$1, CT, FieldInputs>;
349
- type ContractToQC<C extends TableProxyContract, Name$1 extends string = string> = {
294
+ }>, FieldInputs extends Record<string, Record<string, unknown>>> = ResolvedInsertValues<C, Table, TableName, CT, FieldInputs>;
295
+ type ContractToQC<C extends TableProxyContract, Name extends string = string> = {
350
296
  readonly codecTypes: ExtractCodecTypes<C>;
351
297
  readonly capabilities: C['capabilities'];
352
298
  readonly queryOperationTypes: ExtractQueryOperationTypes<C>;
353
- readonly resolvedColumnOutputTypes: ResolvedColumnTypes<C, Name$1, ExtractFieldOutputTypes<C>>;
299
+ readonly resolvedColumnOutputTypes: ResolvedColumnTypes<C, Name, ExtractFieldOutputTypes<C>>;
354
300
  };
355
- interface TableProxy<C extends TableProxyContract, Name$1 extends string & keyof C['storage']['tables'], Alias extends string = Name$1, AvailableScope extends Scope = DefaultScope<Name$1, C['storage']['tables'][Name$1]>, QC extends QueryContext = ContractToQC<C, Name$1>> extends JoinSource<StorageTableToScopeTable<C['storage']['tables'][Name$1]>, Alias>, WithSelect<QC, AvailableScope, EmptyRow>, WithJoin<QC, AvailableScope, C['capabilities']> {
356
- as<NewAlias extends string>(newAlias: NewAlias): TableProxy<C, Name$1, NewAlias, RebindScope<AvailableScope, Alias, NewAlias>>;
357
- insert(values: ResolvedInsertValues<C, C['storage']['tables'][Name$1], Name$1, QC['codecTypes'], ExtractFieldInputTypes<C>>): InsertQuery<QC, AvailableScope, EmptyRow>;
358
- update(set: ResolvedUpdateValues<C, C['storage']['tables'][Name$1], Name$1, QC['codecTypes'], ExtractFieldInputTypes<C>>): UpdateQuery<QC, AvailableScope, EmptyRow>;
301
+ interface TableProxy<C extends TableProxyContract, Name extends string & keyof C['storage']['tables'], Alias extends string = Name, AvailableScope extends Scope = DefaultScope<Name, C['storage']['tables'][Name]>, QC extends QueryContext = ContractToQC<C, Name>> extends JoinSource<StorageTableToScopeTable<C['storage']['tables'][Name]>, Alias>, WithSelect<QC, AvailableScope, EmptyRow>, WithJoin<QC, AvailableScope, C['capabilities']> {
302
+ as<NewAlias extends string>(newAlias: NewAlias): TableProxy<C, Name, NewAlias, RebindScope<AvailableScope, Alias, NewAlias>>;
303
+ insert(values: ResolvedInsertValues<C, C['storage']['tables'][Name], Name, QC['codecTypes'], ExtractFieldInputTypes<C>>): InsertQuery<QC, AvailableScope, EmptyRow>;
304
+ update(set: ResolvedUpdateValues<C, C['storage']['tables'][Name], Name, QC['codecTypes'], ExtractFieldInputTypes<C>>): UpdateQuery<QC, AvailableScope, EmptyRow>;
359
305
  delete(): DeleteQuery<QC, AvailableScope, EmptyRow>;
360
306
  }
361
307
  //#endregion
@@ -369,5 +315,5 @@ type TableProxyContract = {
369
315
  };
370
316
  type Db<C extends TableProxyContract> = { [Name in string & keyof C['storage']['tables']]: TableProxy<C, Name> };
371
317
  //#endregion
372
- export { Scope as _, GroupedQuery as a, UpdateQuery as c, Expression as d, FieldProxy as f, QueryContext as g, GatedMethod as h, SelectQuery as i, ResolveRow as l, ExpressionType as m, TableProxyContract as n, DeleteQuery as o, Functions as p, TableProxy as r, InsertQuery as s, Db as t, AggregateFunctions as u, ScopeField as v, Subquery as y };
373
- //# sourceMappingURL=db-Cggb4WvK.d.mts.map
318
+ export { ScopeField as _, GroupedQuery as a, UpdateQuery as c, Expression$1 as d, FieldProxy as f, Scope as g, QueryContext as h, SelectQuery as i, ResolveRow as l, GatedMethod as m, TableProxyContract as n, DeleteQuery as o, Functions as p, TableProxy as r, InsertQuery as s, Db as t, AggregateFunctions as u, Subquery as v };
319
+ //# sourceMappingURL=db-DkZcNekS.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"db-DkZcNekS.d.mts","names":[],"sources":["../src/scope.ts","../src/expression.ts","../src/resolve.ts","../src/types/mutation-query.ts","../src/types/joined-tables.ts","../src/types/grouped-query.ts","../src/types/select-query.ts","../src/types/shared.ts","../src/types/table-proxy.ts","../src/types/db.ts"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import { _ as Scope, a as GroupedQuery, c as UpdateQuery, d as Expression, g as QueryContext, h as GatedMethod, i as SelectQuery, l as ResolveRow, n as TableProxyContract, o as DeleteQuery, p as Functions, r as TableProxy, s as InsertQuery, t as Db, u as AggregateFunctions, v as ScopeField, y as Subquery } from "../db-Cggb4WvK.mjs";
1
+ import { _ as ScopeField, a as GroupedQuery, c as UpdateQuery, d as Expression, g as Scope, h as QueryContext, i as SelectQuery, l as ResolveRow, m as GatedMethod, n as TableProxyContract, o as DeleteQuery, p as Functions, r as TableProxy, s as InsertQuery, t as Db, u as AggregateFunctions, v as Subquery } from "../db-DkZcNekS.mjs";
2
2
  export { type AggregateFunctions, type Db, type DeleteQuery, type Expression, type Functions, type GatedMethod, type GroupedQuery, type InsertQuery, type QueryContext, type ResolveRow, type Scope, type ScopeField, type SelectQuery, type Subquery, type TableProxy, type TableProxyContract, type UpdateQuery };
@@ -1 +1 @@
1
- export { };
1
+ export {};
package/dist/index.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- import { _ as Scope, a as GroupedQuery, c as UpdateQuery, d as Expression, g as QueryContext, h as GatedMethod, i as SelectQuery, l as ResolveRow, o as DeleteQuery, p as Functions, r as TableProxy, s as InsertQuery, t as Db, u as AggregateFunctions, v as ScopeField, y as Subquery } from "./db-Cggb4WvK.mjs";
1
+ import { _ as ScopeField, a as GroupedQuery, c as UpdateQuery, d as Expression, g as Scope, h as QueryContext, i as SelectQuery, l as ResolveRow, m as GatedMethod, o as DeleteQuery, p as Functions, r as TableProxy, s as InsertQuery, t as Db, u as AggregateFunctions, v as Subquery } from "./db-DkZcNekS.mjs";
2
2
  export { type AggregateFunctions, type Db, type DeleteQuery, type Expression, type Functions, type GatedMethod, type GroupedQuery, type InsertQuery, type QueryContext, type ResolveRow, type Scope, type ScopeField, type SelectQuery, type Subquery, type TableProxy, type UpdateQuery };
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- export { };
1
+ export {};
@@ -1,5 +1,6 @@
1
- import { _ as Scope, d as Expression, f as FieldProxy, g as QueryContext, m as ExpressionType, p as Functions, t as Db, u as AggregateFunctions, v as ScopeField } from "../db-Cggb4WvK.mjs";
1
+ import { _ as ScopeField, f as FieldProxy, g as Scope, h as QueryContext, p as Functions, t as Db, u as AggregateFunctions } from "../db-DkZcNekS.mjs";
2
2
  import { AnyExpression } from "@prisma-next/sql-relational-core/ast";
3
+ import { Expression } from "@prisma-next/sql-relational-core/expression";
3
4
  import { SqlStorage } from "@prisma-next/sql-contract/types";
4
5
  import { SqlOperationEntry } from "@prisma-next/sql-operations";
5
6
  import { Contract } from "@prisma-next/contract/types";
@@ -7,14 +8,21 @@ import { ExecutionContext } from "@prisma-next/sql-relational-core/query-lane-co
7
8
 
8
9
  //#region src/runtime/expression-impl.d.ts
9
10
  /**
10
- * Runtime wrapper around a relational-core AST expression node.
11
- * Carries ScopeField metadata (codecId, nullable) for plan generation.
11
+ * Runtime wrapper around a relational-core AST expression node. Carries ScopeField metadata (codecId, nullable) so aggregate-like combinators can propagate the input codec onto their result.
12
+ *
13
+ * `refs` records the column-bound binding (`{ table, column }`) when known — the field-proxy populates it for both the namespaced form (`f.user.email` → `ColumnRef`) and the top-level shortcut (`f.email` → `IdentifierRef` + refs metadata). Encode-side dispatch and the `validateParamRefRefs` pass read it via `refsOf(expression)`.
12
14
  */
13
15
  declare class ExpressionImpl<T extends ScopeField = ScopeField> implements Expression<T> {
14
- readonly [ExpressionType]: T;
15
16
  private readonly ast;
16
- readonly field: T;
17
- constructor(ast: AnyExpression, field: T);
17
+ readonly returnType: T;
18
+ readonly refs: {
19
+ readonly table: string;
20
+ readonly column: string;
21
+ } | undefined;
22
+ constructor(ast: AnyExpression, returnType: T, refs?: {
23
+ readonly table: string;
24
+ readonly column: string;
25
+ });
18
26
  buildAst(): AnyExpression;
19
27
  }
20
28
  //#endregion
@@ -22,8 +30,8 @@ declare class ExpressionImpl<T extends ScopeField = ScopeField> implements Expre
22
30
  declare function createFieldProxy<S extends Scope>(scope: S): FieldProxy<S>;
23
31
  //#endregion
24
32
  //#region src/runtime/functions.d.ts
25
- declare function createFunctions<QC extends QueryContext>(queryOperationTypes: Readonly<Record<string, SqlOperationEntry>>): Functions<QC>;
26
- declare function createAggregateFunctions<QC extends QueryContext>(queryOperationTypes: Readonly<Record<string, SqlOperationEntry>>): AggregateFunctions<QC>;
33
+ declare function createFunctions<QC extends QueryContext>(operations: Readonly<Record<string, SqlOperationEntry>>): Functions<QC>;
34
+ declare function createAggregateFunctions<QC extends QueryContext>(operations: Readonly<Record<string, SqlOperationEntry>>): AggregateFunctions<QC>;
27
35
  //#endregion
28
36
  //#region src/runtime/sql.d.ts
29
37
  interface SqlOptions<C extends Contract<SqlStorage>> {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../../src/runtime/expression-impl.ts","../../src/runtime/field-proxy.ts","../../src/runtime/functions.ts","../../src/runtime/sql.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;;cASa,yBAAyB,aAAa,uBAAuB,WAAW;EAAxE,UACO,cAAA,CADO,EACU,CADV;EAAW,iBAAA,GAAA;EAAa,SAAA,KAAA,EAGjC,CAHiC;EAAkC,WAAA,CAAA,GAAA,EAKlE,aALkE,EAAA,KAAA,EAK5C,CAL4C;EAChD,QAAA,CAAA,CAAA,EASvB,aATuB;;;;iBCLrB,2BAA2B,cAAc,IAAI,WAAW;;;iBCsJxD,2BAA2B,mCACpB,SAAS,eAAe,sBAC5C,UAAU;iBAiBG,oCAAoC,mCAC7B,SAAS,eAAe,sBAC5C,mBAAmB;;;UCzKL,qBAAqB,SAAS;oBAC3B,iBAAiB;;iBAGrB,cAAc,SAAS,sBAAsB,WAAW,KAAK,GAAG"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../src/runtime/expression-impl.ts","../../src/runtime/field-proxy.ts","../../src/runtime/functions.ts","../../src/runtime/sql.ts"],"mappings":";;;;;;;;;;;;;;cASa,cAAA,WAAyB,UAAA,GAAa,UAAA,aAAuB,UAAA,CAAW,CAAA;EAAA,iBAClE,GAAA;EAAA,SACR,UAAA,EAAY,CAAA;EAAA,SACZ,IAAA;IAAA,SAAiB,KAAA;IAAA,SAAwB,MAAA;EAAA;cAGhD,GAAA,EAAK,aAAA,EACL,UAAA,EAAY,CAAA,EACZ,IAAA;IAAA,SAAkB,KAAA;IAAA,SAAwB,MAAA;EAAA;EAO5C,QAAA,CAAA,GAAY,aAAA;AAAA;;;iBCJE,gBAAA,WAA2B,KAAA,CAAA,CAAO,KAAA,EAAO,CAAA,GAAI,UAAA,CAAW,CAAA;;;iBC+KxD,eAAA,YAA2B,YAAA,CAAA,CACzC,UAAA,EAAY,QAAA,CAAS,MAAA,SAAe,iBAAA,KACnC,SAAA,CAAU,EAAA;AAAA,iBAeG,wBAAA,YAAoC,YAAA,CAAA,CAClD,UAAA,EAAY,QAAA,CAAS,MAAA,SAAe,iBAAA,KACnC,kBAAA,CAAmB,EAAA;;;UC/ML,UAAA,WAAqB,QAAA,CAAS,UAAA;EAAA,SACpC,OAAA,EAAS,gBAAA,CAAiB,CAAA;AAAA;AAAA,iBAGrB,GAAA,WAAc,QAAA,CAAS,UAAA,EAAA,CAAa,OAAA,EAAS,UAAA,CAAW,CAAA,IAAK,EAAA,CAAG,CAAA"}