@k0lyan/nestjs-prisma-graphql-generator 0.5.1 → 0.5.2
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/generator/helpers-generator.js +91 -204
- package/dist/generator/helpers-generator.js.map +1 -1
- package/dist/generator/templates/resolver.js +15 -6
- package/dist/generator/templates/resolver.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -3
- package/dist/index.js.map +1 -1
- package/dist/runtime/helpers.d.ts +42 -68
- package/dist/runtime/helpers.d.ts.map +1 -1
- package/dist/runtime/helpers.js +93 -201
- package/dist/runtime/helpers.js.map +1 -1
- package/package.json +1 -1
|
@@ -28,8 +28,8 @@ function generateHelpersFile(sourceFile, _config) {
|
|
|
28
28
|
import type { GraphQLResolveInfo } from 'graphql';
|
|
29
29
|
import {
|
|
30
30
|
parseResolveInfo,
|
|
31
|
-
simplifyParsedResolveInfoFragmentWithType,
|
|
32
31
|
ResolveTree,
|
|
32
|
+
FieldsByTypeName,
|
|
33
33
|
} from 'graphql-parse-resolve-info';
|
|
34
34
|
|
|
35
35
|
/**
|
|
@@ -41,184 +41,66 @@ export interface PrismaSelect {
|
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
/**
|
|
44
|
-
*
|
|
44
|
+
* Prisma aggregate arguments type
|
|
45
|
+
*
|
|
46
|
+
* For aggregate operations, Prisma expects _count, _avg, etc. at the top level,
|
|
47
|
+
* NOT wrapped in a select object.
|
|
45
48
|
*/
|
|
46
|
-
export interface
|
|
47
|
-
|
|
48
|
-
|
|
49
|
+
export interface PrismaAggregateArgs {
|
|
50
|
+
_count?: boolean | Record<string, boolean>;
|
|
51
|
+
_avg?: Record<string, boolean>;
|
|
52
|
+
_sum?: Record<string, boolean>;
|
|
53
|
+
_min?: Record<string, boolean>;
|
|
54
|
+
_max?: Record<string, boolean>;
|
|
49
55
|
}
|
|
50
56
|
|
|
51
57
|
/**
|
|
52
|
-
*
|
|
53
|
-
|
|
54
|
-
const EXCLUDED_FIELDS = new Set([
|
|
55
|
-
'__typename',
|
|
56
|
-
'_count',
|
|
57
|
-
'_avg',
|
|
58
|
-
'_sum',
|
|
59
|
-
'_min',
|
|
60
|
-
'_max',
|
|
61
|
-
]);
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* Transform GraphQL resolve info into Prisma select/include arguments
|
|
58
|
+
* Context type that should contain the Prisma client.
|
|
59
|
+
* Extend this interface in your app to add custom properties.
|
|
65
60
|
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
61
|
+
* @example
|
|
62
|
+
* // In your app
|
|
63
|
+
* interface AppContext extends GraphQLContext {
|
|
64
|
+
* req: Request;
|
|
65
|
+
* user?: User;
|
|
66
|
+
* }
|
|
71
67
|
*/
|
|
72
|
-
export
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
if (!parsedInfo) {
|
|
76
|
-
return {};
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
const simplifiedInfo = simplifyParsedResolveInfoFragmentWithType(
|
|
80
|
-
parsedInfo as ResolveTree,
|
|
81
|
-
info.returnType,
|
|
82
|
-
);
|
|
83
|
-
|
|
84
|
-
return buildPrismaSelect(simplifiedInfo.fields);
|
|
68
|
+
export interface GraphQLContext<PrismaClient = unknown> {
|
|
69
|
+
prisma: PrismaClient;
|
|
70
|
+
[key: string]: unknown;
|
|
85
71
|
}
|
|
86
72
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
function buildPrismaSelect(fields: Record<string, ResolveTree>): PrismaSelect {
|
|
91
|
-
const select: Record<string, boolean | PrismaSelect> = {};
|
|
92
|
-
|
|
93
|
-
for (const [fieldName, fieldInfo] of Object.entries(fields)) {
|
|
94
|
-
if (EXCLUDED_FIELDS.has(fieldName)) {
|
|
95
|
-
continue;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
const nestedFields = fieldInfo.fieldsByTypeName;
|
|
99
|
-
const nestedTypes = Object.keys(nestedFields);
|
|
100
|
-
|
|
101
|
-
if (nestedTypes.length > 0) {
|
|
102
|
-
// Relation field
|
|
103
|
-
const allNestedFields: Record<string, ResolveTree> = {};
|
|
104
|
-
for (const typeName of nestedTypes) {
|
|
105
|
-
Object.assign(allNestedFields, nestedFields[typeName]);
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
const nestedSelect = buildPrismaSelect(allNestedFields);
|
|
109
|
-
|
|
110
|
-
if (Object.keys(nestedSelect).length > 0) {
|
|
111
|
-
select[fieldName] = nestedSelect;
|
|
112
|
-
} else {
|
|
113
|
-
select[fieldName] = true;
|
|
114
|
-
}
|
|
115
|
-
} else {
|
|
116
|
-
select[fieldName] = true;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
if (Object.keys(select).length === 0) {
|
|
121
|
-
return {};
|
|
122
|
-
}
|
|
73
|
+
export function transformInfoIntoPrismaArgs(info: GraphQLResolveInfo): PrismaSelect {
|
|
74
|
+
const parsedInfo = parseResolveInfo(info) as ResolveTree | null;
|
|
75
|
+
if (!parsedInfo) return {};
|
|
123
76
|
|
|
124
|
-
|
|
77
|
+
const select = buildPrismaSelect(parsedInfo.fieldsByTypeName);
|
|
78
|
+
return Object.keys(select).length > 0 ? { select } : {};
|
|
125
79
|
}
|
|
126
80
|
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
*/
|
|
130
|
-
export function getPrismaFromContext<PrismaClient = unknown>(
|
|
131
|
-
context: GraphQLContext<PrismaClient>,
|
|
132
|
-
): PrismaClient {
|
|
133
|
-
const prismaClient = context.prisma;
|
|
134
|
-
if (!prismaClient) {
|
|
135
|
-
throw new Error(
|
|
136
|
-
'Unable to find Prisma Client in GraphQL context. ' +
|
|
137
|
-
'Please provide it under the \`context["prisma"]\` key.'
|
|
138
|
-
);
|
|
139
|
-
}
|
|
140
|
-
return prismaClient;
|
|
141
|
-
}
|
|
81
|
+
function buildPrismaSelect(fieldsByTypeName: FieldsByTypeName): Record<string, any> {
|
|
82
|
+
const result: Record<string, any> = {};
|
|
142
83
|
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
fields: Record<string, ResolveTree>,
|
|
148
|
-
): { _count?: { select: Record<string, boolean> } } {
|
|
149
|
-
const countField = fields['_count'];
|
|
150
|
-
|
|
151
|
-
if (!countField) {
|
|
152
|
-
return {};
|
|
153
|
-
}
|
|
84
|
+
for (const typeName in fieldsByTypeName) {
|
|
85
|
+
const fields = fieldsByTypeName[typeName];
|
|
86
|
+
for (const fieldName in fields) {
|
|
87
|
+
if (fieldName.startsWith('__') || fieldName.startsWith('_count') || fieldName.startsWith('_avg') || fieldName.startsWith('_sum') || fieldName.startsWith('_min') || fieldName.startsWith('_max')) continue;
|
|
154
88
|
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
if (countTypes.length === 0) {
|
|
159
|
-
return {};
|
|
160
|
-
}
|
|
89
|
+
const field = fields[fieldName];
|
|
90
|
+
const nestedFields = field.fieldsByTypeName;
|
|
161
91
|
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
for (const fieldName of Object.keys(typeFields)) {
|
|
168
|
-
countSelect[fieldName] = true;
|
|
92
|
+
if (Object.keys(nestedFields).length > 0) {
|
|
93
|
+
const nestedSelect = buildPrismaSelect(nestedFields);
|
|
94
|
+
result[fieldName] = Object.keys(nestedSelect).length > 0 ? { select: nestedSelect } : true;
|
|
95
|
+
} else {
|
|
96
|
+
result[fieldName] = true;
|
|
169
97
|
}
|
|
170
98
|
}
|
|
171
99
|
}
|
|
172
100
|
|
|
173
|
-
if (Object.keys(countSelect).length === 0) {
|
|
174
|
-
return {};
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
return {
|
|
178
|
-
_count: {
|
|
179
|
-
select: countSelect,
|
|
180
|
-
},
|
|
181
|
-
};
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
/**
|
|
185
|
-
* Merge multiple Prisma select objects
|
|
186
|
-
*/
|
|
187
|
-
export function mergePrismaSelects(...selects: PrismaSelect[]): PrismaSelect {
|
|
188
|
-
const result: PrismaSelect = {};
|
|
189
|
-
|
|
190
|
-
for (const select of selects) {
|
|
191
|
-
if (select.select) {
|
|
192
|
-
result.select = {
|
|
193
|
-
...result.select,
|
|
194
|
-
...select.select,
|
|
195
|
-
};
|
|
196
|
-
}
|
|
197
|
-
if (select.include) {
|
|
198
|
-
result.include = {
|
|
199
|
-
...result.include,
|
|
200
|
-
...select.include,
|
|
201
|
-
};
|
|
202
|
-
}
|
|
203
|
-
}
|
|
204
|
-
|
|
205
101
|
return result;
|
|
206
102
|
}
|
|
207
103
|
|
|
208
|
-
/**
|
|
209
|
-
* Prisma aggregate arguments type
|
|
210
|
-
*
|
|
211
|
-
* For aggregate operations, Prisma expects _count, _avg, etc. at the top level,
|
|
212
|
-
* NOT wrapped in a select object.
|
|
213
|
-
*/
|
|
214
|
-
export interface PrismaAggregateArgs {
|
|
215
|
-
_count?: boolean | Record<string, boolean>;
|
|
216
|
-
_avg?: Record<string, boolean>;
|
|
217
|
-
_sum?: Record<string, boolean>;
|
|
218
|
-
_min?: Record<string, boolean>;
|
|
219
|
-
_max?: Record<string, boolean>;
|
|
220
|
-
}
|
|
221
|
-
|
|
222
104
|
/**
|
|
223
105
|
* Aggregate field names that Prisma expects
|
|
224
106
|
*/
|
|
@@ -230,60 +112,37 @@ const AGGREGATE_FIELDS = ['_count', '_avg', '_sum', '_min', '_max'] as const;
|
|
|
230
112
|
* Unlike transformInfoIntoPrismaArgs, this function returns aggregate fields
|
|
231
113
|
* directly at the top level (e.g., { _count: true, _avg: { field: true } })
|
|
232
114
|
* rather than wrapped in a select object.
|
|
233
|
-
*
|
|
234
|
-
* This is required because Prisma's aggregate() and groupBy() APIs expect
|
|
235
|
-
* aggregate fields at the top level, not in a select wrapper.
|
|
236
|
-
*
|
|
237
|
-
* @param info - GraphQL resolve info from the resolver
|
|
238
|
-
* @returns Prisma aggregate arguments
|
|
239
115
|
*/
|
|
240
116
|
export function transformInfoIntoPrismaAggregateArgs(info: GraphQLResolveInfo): PrismaAggregateArgs {
|
|
241
|
-
const parsedInfo = parseResolveInfo(info);
|
|
242
|
-
|
|
243
|
-
if (!parsedInfo) {
|
|
244
|
-
return {};
|
|
245
|
-
}
|
|
117
|
+
const parsedInfo = parseResolveInfo(info) as ResolveTree | null;
|
|
118
|
+
if (!parsedInfo) return {};
|
|
246
119
|
|
|
247
|
-
|
|
248
|
-
parsedInfo as ResolveTree,
|
|
249
|
-
info.returnType,
|
|
250
|
-
);
|
|
251
|
-
|
|
252
|
-
return buildPrismaAggregateArgs(simplifiedInfo.fields);
|
|
120
|
+
return buildPrismaAggregateArgs(parsedInfo.fieldsByTypeName);
|
|
253
121
|
}
|
|
254
122
|
|
|
255
|
-
|
|
256
|
-
* Build Prisma aggregate arguments from parsed GraphQL fields
|
|
257
|
-
*/
|
|
258
|
-
function buildPrismaAggregateArgs(fields: Record<string, ResolveTree>): PrismaAggregateArgs {
|
|
123
|
+
function buildPrismaAggregateArgs(fieldsByTypeName: FieldsByTypeName): PrismaAggregateArgs {
|
|
259
124
|
const result: PrismaAggregateArgs = {};
|
|
260
125
|
|
|
261
|
-
for (const
|
|
262
|
-
const
|
|
126
|
+
for (const typeName in fieldsByTypeName) {
|
|
127
|
+
const fields = fieldsByTypeName[typeName];
|
|
263
128
|
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
129
|
+
for (const aggregateField of AGGREGATE_FIELDS) {
|
|
130
|
+
const fieldInfo = fields[aggregateField];
|
|
131
|
+
if (!fieldInfo) continue;
|
|
267
132
|
|
|
268
|
-
|
|
269
|
-
|
|
133
|
+
const nestedFields = fieldInfo.fieldsByTypeName;
|
|
134
|
+
const nestedTypes = Object.keys(nestedFields);
|
|
270
135
|
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
result._count = true;
|
|
136
|
+
if (nestedTypes.length === 0) {
|
|
137
|
+
if (aggregateField === '_count') result._count = true;
|
|
138
|
+
continue;
|
|
275
139
|
}
|
|
276
|
-
continue;
|
|
277
|
-
}
|
|
278
140
|
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
if (typeFields) {
|
|
284
|
-
for (const nestedFieldName of Object.keys(typeFields)) {
|
|
141
|
+
const selectedFields: Record<string, boolean> = {};
|
|
142
|
+
for (const nestedTypeName of nestedTypes) {
|
|
143
|
+
const typeFields = nestedFields[nestedTypeName];
|
|
144
|
+
for (const nestedFieldName in typeFields) {
|
|
285
145
|
if (nestedFieldName === '_all') {
|
|
286
|
-
// Special case: _all means count all records
|
|
287
146
|
if (aggregateField === '_count') {
|
|
288
147
|
result._count = true;
|
|
289
148
|
break;
|
|
@@ -293,17 +152,45 @@ function buildPrismaAggregateArgs(fields: Record<string, ResolveTree>): PrismaAg
|
|
|
293
152
|
}
|
|
294
153
|
}
|
|
295
154
|
}
|
|
296
|
-
}
|
|
297
155
|
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
156
|
+
if (Object.keys(selectedFields).length > 0) {
|
|
157
|
+
(result as Record<string, unknown>)[aggregateField] = selectedFields;
|
|
158
|
+
} else if (aggregateField === '_count') {
|
|
159
|
+
result._count = true;
|
|
160
|
+
}
|
|
302
161
|
}
|
|
303
162
|
}
|
|
304
163
|
|
|
305
164
|
return result;
|
|
306
165
|
}
|
|
166
|
+
|
|
167
|
+
/**
|
|
168
|
+
* Get Prisma client from GraphQL context
|
|
169
|
+
*/
|
|
170
|
+
export function getPrismaFromContext<PrismaClient = unknown>(
|
|
171
|
+
context: GraphQLContext<PrismaClient>,
|
|
172
|
+
): PrismaClient {
|
|
173
|
+
const prismaClient = context.prisma;
|
|
174
|
+
if (!prismaClient) {
|
|
175
|
+
throw new Error(
|
|
176
|
+
'Unable to find Prisma Client in GraphQL context. ' +
|
|
177
|
+
'Please provide it under the \\\`context["prisma"]\\\` key.'
|
|
178
|
+
);
|
|
179
|
+
}
|
|
180
|
+
return prismaClient;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
/**
|
|
184
|
+
* Merge multiple Prisma select objects
|
|
185
|
+
*/
|
|
186
|
+
export function mergePrismaSelects(...selects: PrismaSelect[]): PrismaSelect {
|
|
187
|
+
const result: PrismaSelect = {};
|
|
188
|
+
for (const s of selects) {
|
|
189
|
+
if (s.select) result.select = { ...(result.select ?? {}), ...s.select };
|
|
190
|
+
if (s.include) result.include = { ...(result.include ?? {}), ...s.include };
|
|
191
|
+
}
|
|
192
|
+
return result;
|
|
193
|
+
}
|
|
307
194
|
`);
|
|
308
195
|
}
|
|
309
196
|
//# sourceMappingURL=helpers-generator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers-generator.js","sourceRoot":"","sources":["../../src/generator/helpers-generator.ts"],"names":[],"mappings":";;AAOA,0CAaC;AAhBD;;GAEG;AACH,SAAgB,eAAe,CAC7B,OAAgB,EAChB,MAAuB;IAEvB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;IAE5C,6BAA6B;IAC7B,MAAM,WAAW,GAAG,YAAY,CAAC;IACjC,MAAM,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnF,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACzC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAEpC,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,UAAsB,EAAE,OAAwB;IAC3E,UAAU,CAAC,aAAa,CAAC
|
|
1
|
+
{"version":3,"file":"helpers-generator.js","sourceRoot":"","sources":["../../src/generator/helpers-generator.ts"],"names":[],"mappings":";;AAOA,0CAaC;AAhBD;;GAEG;AACH,SAAgB,eAAe,CAC7B,OAAgB,EAChB,MAAuB;IAEvB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;IAE5C,6BAA6B;IAC7B,MAAM,WAAW,GAAG,YAAY,CAAC;IACjC,MAAM,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnF,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACzC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAEpC,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,UAAsB,EAAE,OAAwB;IAC3E,UAAU,CAAC,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8K1B,CAAC,CAAC;AACH,CAAC"}
|
|
@@ -130,7 +130,12 @@ function generateResolverFile(sourceFile, model, _dmmf, config, ops) {
|
|
|
130
130
|
// Import runtime helpers
|
|
131
131
|
sourceFile.addImportDeclaration({
|
|
132
132
|
moduleSpecifier: '../helpers',
|
|
133
|
-
namedImports: [
|
|
133
|
+
namedImports: [
|
|
134
|
+
'transformInfoIntoPrismaArgs',
|
|
135
|
+
'transformInfoIntoPrismaAggregateArgs',
|
|
136
|
+
'PrismaSelect',
|
|
137
|
+
'GraphQLContext',
|
|
138
|
+
],
|
|
134
139
|
});
|
|
135
140
|
// Import AffectedRows type only if needed
|
|
136
141
|
if (ops.hasCreateManyInput ||
|
|
@@ -446,10 +451,10 @@ function generateResolverFile(sourceFile, model, _dmmf, config, ops) {
|
|
|
446
451
|
{ name: 'info', type: 'GraphQLResolveInfo', decorators: [{ name: 'Info', arguments: [] }] },
|
|
447
452
|
],
|
|
448
453
|
statements: [
|
|
449
|
-
`const
|
|
454
|
+
`const aggregateArgs = transformInfoIntoPrismaAggregateArgs(info);`,
|
|
450
455
|
`return ctx.prisma.${lowerModelName}.aggregate({`,
|
|
451
456
|
` ...args,`,
|
|
452
|
-
` ...
|
|
457
|
+
` ...aggregateArgs,`,
|
|
453
458
|
`} as any);`,
|
|
454
459
|
],
|
|
455
460
|
});
|
|
@@ -475,10 +480,10 @@ function generateResolverFile(sourceFile, model, _dmmf, config, ops) {
|
|
|
475
480
|
{ name: 'info', type: 'GraphQLResolveInfo', decorators: [{ name: 'Info', arguments: [] }] },
|
|
476
481
|
],
|
|
477
482
|
statements: [
|
|
478
|
-
`const
|
|
483
|
+
`const aggregateArgs = transformInfoIntoPrismaAggregateArgs(info);`,
|
|
479
484
|
`return ctx.prisma.${lowerModelName}.groupBy({`,
|
|
480
485
|
` ...args,`,
|
|
481
|
-
` ...
|
|
486
|
+
` ...aggregateArgs,`,
|
|
482
487
|
`} as any);`,
|
|
483
488
|
],
|
|
484
489
|
});
|
|
@@ -503,7 +508,11 @@ function generateResolverFile(sourceFile, model, _dmmf, config, ops) {
|
|
|
503
508
|
{ name: 'ctx', type: contextType, decorators: [{ name: 'Context', arguments: [] }] },
|
|
504
509
|
{ name: 'info', type: 'GraphQLResolveInfo', decorators: [{ name: 'Info', arguments: [] }] },
|
|
505
510
|
],
|
|
506
|
-
statements: [
|
|
511
|
+
statements: [
|
|
512
|
+
`return ctx.prisma.${lowerModelName}.count({`,
|
|
513
|
+
` where: args.where,`,
|
|
514
|
+
`} as any);`,
|
|
515
|
+
],
|
|
507
516
|
});
|
|
508
517
|
}
|
|
509
518
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/generator/templates/resolver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/generator/templates/resolver.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -22,5 +22,5 @@
|
|
|
22
22
|
*/
|
|
23
23
|
export * from './cli';
|
|
24
24
|
export * from './generator';
|
|
25
|
-
export { transformInfoIntoPrismaArgs,
|
|
25
|
+
export { transformInfoIntoPrismaArgs, transformInfoIntoPrismaAggregateArgs, getPrismaFromContext, mergePrismaSelects, type PrismaSelect, type PrismaAggregateArgs, type GraphQLContext, } from './runtime';
|
|
26
26
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,cAAc,OAAO,CAAC;AACtB,cAAc,aAAa,CAAC;AAE5B,OAAO,EACL,2BAA2B,EAC3B,oBAAoB,EACpB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,cAAc,OAAO,CAAC;AACtB,cAAc,aAAa,CAAC;AAE5B,OAAO,EACL,2BAA2B,EAC3B,oCAAoC,EACpC,oBAAoB,EACpB,kBAAkB,EAClB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,cAAc,GACpB,MAAM,WAAW,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -36,14 +36,13 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
36
36
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.
|
|
39
|
+
exports.mergePrismaSelects = exports.getPrismaFromContext = exports.transformInfoIntoPrismaAggregateArgs = exports.transformInfoIntoPrismaArgs = void 0;
|
|
40
40
|
__exportStar(require("./cli"), exports);
|
|
41
41
|
__exportStar(require("./generator"), exports);
|
|
42
42
|
// Note: runtime helpers are exported separately to avoid conflicts
|
|
43
43
|
var runtime_1 = require("./runtime");
|
|
44
44
|
Object.defineProperty(exports, "transformInfoIntoPrismaArgs", { enumerable: true, get: function () { return runtime_1.transformInfoIntoPrismaArgs; } });
|
|
45
|
+
Object.defineProperty(exports, "transformInfoIntoPrismaAggregateArgs", { enumerable: true, get: function () { return runtime_1.transformInfoIntoPrismaAggregateArgs; } });
|
|
45
46
|
Object.defineProperty(exports, "getPrismaFromContext", { enumerable: true, get: function () { return runtime_1.getPrismaFromContext; } });
|
|
46
|
-
Object.defineProperty(exports, "transformCountFieldIntoSelectRelationsCount", { enumerable: true, get: function () { return runtime_1.transformCountFieldIntoSelectRelationsCount; } });
|
|
47
47
|
Object.defineProperty(exports, "mergePrismaSelects", { enumerable: true, get: function () { return runtime_1.mergePrismaSelects; } });
|
|
48
|
-
Object.defineProperty(exports, "applyPagination", { enumerable: true, get: function () { return runtime_1.applyPagination; } });
|
|
49
48
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;;;;;;;;;;;;;;;AAEH,wCAAsB;AACtB,8CAA4B;AAC5B,mEAAmE;AACnE,qCAQmB;AAPjB,sHAAA,2BAA2B,OAAA;AAC3B,+
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;;;;;;;;;;;;;;;AAEH,wCAAsB;AACtB,8CAA4B;AAC5B,mEAAmE;AACnE,qCAQmB;AAPjB,sHAAA,2BAA2B,OAAA;AAC3B,+HAAA,oCAAoC,OAAA;AACpC,+GAAA,oBAAoB,OAAA;AACpB,6GAAA,kBAAkB,OAAA"}
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
* These helpers are used at runtime to transform GraphQL queries
|
|
5
5
|
* into optimized Prisma select/include objects.
|
|
6
6
|
*/
|
|
7
|
-
import { ResolveTree } from 'graphql-parse-resolve-info';
|
|
8
7
|
import type { GraphQLResolveInfo } from 'graphql';
|
|
9
8
|
/**
|
|
10
9
|
* Prisma select/include object type
|
|
@@ -14,7 +13,28 @@ export interface PrismaSelect {
|
|
|
14
13
|
include?: Record<string, boolean | PrismaSelect>;
|
|
15
14
|
}
|
|
16
15
|
/**
|
|
17
|
-
*
|
|
16
|
+
* Prisma aggregate arguments type
|
|
17
|
+
*
|
|
18
|
+
* For aggregate operations, Prisma expects _count, _avg, etc. at the top level,
|
|
19
|
+
* NOT wrapped in a select object.
|
|
20
|
+
*/
|
|
21
|
+
export interface PrismaAggregateArgs {
|
|
22
|
+
_count?: boolean | Record<string, boolean>;
|
|
23
|
+
_avg?: Record<string, boolean>;
|
|
24
|
+
_sum?: Record<string, boolean>;
|
|
25
|
+
_min?: Record<string, boolean>;
|
|
26
|
+
_max?: Record<string, boolean>;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Context type that should contain the Prisma client.
|
|
30
|
+
* Extend this interface in your app to add custom properties.
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* // In your app
|
|
34
|
+
* interface AppContext extends GraphQLContext {
|
|
35
|
+
* req: Request;
|
|
36
|
+
* user?: User;
|
|
37
|
+
* }
|
|
18
38
|
*/
|
|
19
39
|
export interface GraphQLContext<PrismaClient = unknown> {
|
|
20
40
|
prisma: PrismaClient;
|
|
@@ -41,6 +61,26 @@ export interface GraphQLContext<PrismaClient = unknown> {
|
|
|
41
61
|
* ```
|
|
42
62
|
*/
|
|
43
63
|
export declare function transformInfoIntoPrismaArgs(info: GraphQLResolveInfo): PrismaSelect;
|
|
64
|
+
/**
|
|
65
|
+
* Transform GraphQL resolve info into Prisma aggregate arguments
|
|
66
|
+
*
|
|
67
|
+
* Unlike transformInfoIntoPrismaArgs, this function returns aggregate fields
|
|
68
|
+
* directly at the top level (e.g., { _count: true, _avg: { field: true } })
|
|
69
|
+
* rather than wrapped in a select object.
|
|
70
|
+
*
|
|
71
|
+
* @param info - GraphQL resolve info from the resolver
|
|
72
|
+
* @returns Prisma aggregate arguments
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```typescript
|
|
76
|
+
* @Query(() => AggregateUser)
|
|
77
|
+
* async aggregateUser(@Info() info: GraphQLResolveInfo, @Args() args: AggregateUserArgs) {
|
|
78
|
+
* const aggregateArgs = transformInfoIntoPrismaAggregateArgs(info);
|
|
79
|
+
* return prisma.user.aggregate({ ...args, ...aggregateArgs });
|
|
80
|
+
* }
|
|
81
|
+
* ```
|
|
82
|
+
*/
|
|
83
|
+
export declare function transformInfoIntoPrismaAggregateArgs(info: GraphQLResolveInfo): PrismaAggregateArgs;
|
|
44
84
|
/**
|
|
45
85
|
* Get Prisma client from GraphQL context
|
|
46
86
|
*
|
|
@@ -58,19 +98,6 @@ export declare function transformInfoIntoPrismaArgs(info: GraphQLResolveInfo): P
|
|
|
58
98
|
* ```
|
|
59
99
|
*/
|
|
60
100
|
export declare function getPrismaFromContext<PrismaClient = unknown>(context: GraphQLContext<PrismaClient>): PrismaClient;
|
|
61
|
-
/**
|
|
62
|
-
* Transform count fields into Prisma _count select
|
|
63
|
-
*
|
|
64
|
-
* Handles the special _count field that aggregates relation counts
|
|
65
|
-
*
|
|
66
|
-
* @param fields - Parsed fields containing _count
|
|
67
|
-
* @returns Prisma _count select object
|
|
68
|
-
*/
|
|
69
|
-
export declare function transformCountFieldIntoSelectRelationsCount(fields: Record<string, ResolveTree>): {
|
|
70
|
-
_count?: {
|
|
71
|
-
select: Record<string, boolean>;
|
|
72
|
-
};
|
|
73
|
-
};
|
|
74
101
|
/**
|
|
75
102
|
* Merge multiple Prisma select objects
|
|
76
103
|
*
|
|
@@ -78,57 +105,4 @@ export declare function transformCountFieldIntoSelectRelationsCount(fields: Reco
|
|
|
78
105
|
* @returns Merged PrismaSelect object
|
|
79
106
|
*/
|
|
80
107
|
export declare function mergePrismaSelects(...selects: PrismaSelect[]): PrismaSelect;
|
|
81
|
-
/**
|
|
82
|
-
* Check if a field is a relation based on Prisma schema info
|
|
83
|
-
*
|
|
84
|
-
* This is a simple heuristic - in generated code, we have full schema info
|
|
85
|
-
*
|
|
86
|
-
* @param fieldName - Name of the field
|
|
87
|
-
* @param modelFields - Map of field names to their types
|
|
88
|
-
* @returns true if the field is a relation
|
|
89
|
-
*/
|
|
90
|
-
export declare function isRelationField(fieldName: string, modelFields: Map<string, {
|
|
91
|
-
isRelation: boolean;
|
|
92
|
-
}>): boolean;
|
|
93
|
-
/**
|
|
94
|
-
* Apply pagination to Prisma args
|
|
95
|
-
*
|
|
96
|
-
* @param args - Existing Prisma args
|
|
97
|
-
* @param pagination - Pagination options
|
|
98
|
-
* @returns Prisma args with pagination
|
|
99
|
-
*/
|
|
100
|
-
export declare function applyPagination<T extends object>(args: T, pagination?: {
|
|
101
|
-
skip?: number;
|
|
102
|
-
take?: number;
|
|
103
|
-
cursor?: any;
|
|
104
|
-
}): T;
|
|
105
|
-
/**
|
|
106
|
-
* Prisma aggregate arguments type
|
|
107
|
-
*/
|
|
108
|
-
export interface PrismaAggregateArgs {
|
|
109
|
-
_count?: boolean | Record<string, boolean>;
|
|
110
|
-
_avg?: Record<string, boolean>;
|
|
111
|
-
_sum?: Record<string, boolean>;
|
|
112
|
-
_min?: Record<string, boolean>;
|
|
113
|
-
_max?: Record<string, boolean>;
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Transform GraphQL resolve info into Prisma aggregate arguments
|
|
117
|
-
*
|
|
118
|
-
* Unlike regular queries, Prisma's aggregate() expects _count, _avg, etc.
|
|
119
|
-
* directly at the top level, not wrapped in a `select` object.
|
|
120
|
-
*
|
|
121
|
-
* @param info - GraphQL resolve info from the resolver
|
|
122
|
-
* @returns Prisma aggregate arguments
|
|
123
|
-
*
|
|
124
|
-
* @example
|
|
125
|
-
* ```typescript
|
|
126
|
-
* @Query(() => AggregateUser)
|
|
127
|
-
* async aggregateUser(@Info() info: GraphQLResolveInfo, @Args() args: AggregateUserArgs) {
|
|
128
|
-
* const aggregateArgs = transformInfoIntoPrismaAggregateArgs(info);
|
|
129
|
-
* return prisma.user.aggregate({ ...args, ...aggregateArgs });
|
|
130
|
-
* }
|
|
131
|
-
* ```
|
|
132
|
-
*/
|
|
133
|
-
export declare function transformInfoIntoPrismaAggregateArgs(info: GraphQLResolveInfo): PrismaAggregateArgs;
|
|
134
108
|
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/runtime/helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/runtime/helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,CAAC,CAAC;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,CAAC,CAAC;CAClD;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,cAAc,CAAC,YAAY,GAAG,OAAO;IACpD,MAAM,EAAE,YAAY,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,kBAAkB,GAAG,YAAY,CAMlF;AAsCD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,oCAAoC,CAClD,IAAI,EAAE,kBAAkB,GACvB,mBAAmB,CAKrB;AA8CD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,GAAG,OAAO,EACzD,OAAO,EAAE,cAAc,CAAC,YAAY,CAAC,GACpC,YAAY,CASd;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,OAAO,EAAE,YAAY,EAAE,GAAG,YAAY,CAO3E"}
|
package/dist/runtime/helpers.js
CHANGED
|
@@ -7,18 +7,10 @@
|
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.transformInfoIntoPrismaArgs = transformInfoIntoPrismaArgs;
|
|
10
|
+
exports.transformInfoIntoPrismaAggregateArgs = transformInfoIntoPrismaAggregateArgs;
|
|
10
11
|
exports.getPrismaFromContext = getPrismaFromContext;
|
|
11
|
-
exports.transformCountFieldIntoSelectRelationsCount = transformCountFieldIntoSelectRelationsCount;
|
|
12
12
|
exports.mergePrismaSelects = mergePrismaSelects;
|
|
13
|
-
exports.isRelationField = isRelationField;
|
|
14
|
-
exports.applyPagination = applyPagination;
|
|
15
|
-
exports.transformInfoIntoPrismaAggregateArgs = transformInfoIntoPrismaAggregateArgs;
|
|
16
13
|
const graphql_parse_resolve_info_1 = require("graphql-parse-resolve-info");
|
|
17
|
-
/**
|
|
18
|
-
* Fields that should be excluded from selection
|
|
19
|
-
* These are GraphQL internal fields or aggregation fields
|
|
20
|
-
*/
|
|
21
|
-
const EXCLUDED_FIELDS = new Set(['__typename', '_count', '_avg', '_sum', '_min', '_max']);
|
|
22
14
|
/**
|
|
23
15
|
* Transform GraphQL resolve info into Prisma select/include arguments
|
|
24
16
|
*
|
|
@@ -41,53 +33,104 @@ const EXCLUDED_FIELDS = new Set(['__typename', '_count', '_avg', '_sum', '_min',
|
|
|
41
33
|
*/
|
|
42
34
|
function transformInfoIntoPrismaArgs(info) {
|
|
43
35
|
const parsedInfo = (0, graphql_parse_resolve_info_1.parseResolveInfo)(info);
|
|
44
|
-
if (!parsedInfo)
|
|
36
|
+
if (!parsedInfo)
|
|
45
37
|
return {};
|
|
38
|
+
const select = buildPrismaSelect(parsedInfo.fieldsByTypeName);
|
|
39
|
+
return Object.keys(select).length > 0 ? { select } : {};
|
|
40
|
+
}
|
|
41
|
+
function buildPrismaSelect(fieldsByTypeName) {
|
|
42
|
+
const result = {};
|
|
43
|
+
for (const typeName in fieldsByTypeName) {
|
|
44
|
+
const fields = fieldsByTypeName[typeName];
|
|
45
|
+
for (const fieldName in fields) {
|
|
46
|
+
if (fieldName.startsWith('__') ||
|
|
47
|
+
fieldName.startsWith('_count') ||
|
|
48
|
+
fieldName.startsWith('_avg') ||
|
|
49
|
+
fieldName.startsWith('_sum') ||
|
|
50
|
+
fieldName.startsWith('_min') ||
|
|
51
|
+
fieldName.startsWith('_max'))
|
|
52
|
+
continue;
|
|
53
|
+
const field = fields[fieldName];
|
|
54
|
+
const nestedFields = field.fieldsByTypeName;
|
|
55
|
+
if (Object.keys(nestedFields).length > 0) {
|
|
56
|
+
const nestedSelect = buildPrismaSelect(nestedFields);
|
|
57
|
+
result[fieldName] = Object.keys(nestedSelect).length > 0 ? { select: nestedSelect } : true;
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
result[fieldName] = true;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
46
63
|
}
|
|
47
|
-
|
|
48
|
-
return buildPrismaSelect(simplifiedInfo.fields);
|
|
64
|
+
return result;
|
|
49
65
|
}
|
|
50
66
|
/**
|
|
51
|
-
*
|
|
67
|
+
* Aggregate field names that Prisma expects
|
|
68
|
+
*/
|
|
69
|
+
const AGGREGATE_FIELDS = ['_count', '_avg', '_sum', '_min', '_max'];
|
|
70
|
+
/**
|
|
71
|
+
* Transform GraphQL resolve info into Prisma aggregate arguments
|
|
52
72
|
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
73
|
+
* Unlike transformInfoIntoPrismaArgs, this function returns aggregate fields
|
|
74
|
+
* directly at the top level (e.g., { _count: true, _avg: { field: true } })
|
|
75
|
+
* rather than wrapped in a select object.
|
|
76
|
+
*
|
|
77
|
+
* @param info - GraphQL resolve info from the resolver
|
|
78
|
+
* @returns Prisma aggregate arguments
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* ```typescript
|
|
82
|
+
* @Query(() => AggregateUser)
|
|
83
|
+
* async aggregateUser(@Info() info: GraphQLResolveInfo, @Args() args: AggregateUserArgs) {
|
|
84
|
+
* const aggregateArgs = transformInfoIntoPrismaAggregateArgs(info);
|
|
85
|
+
* return prisma.user.aggregate({ ...args, ...aggregateArgs });
|
|
86
|
+
* }
|
|
87
|
+
* ```
|
|
55
88
|
*/
|
|
56
|
-
function
|
|
57
|
-
const
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
const
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
89
|
+
function transformInfoIntoPrismaAggregateArgs(info) {
|
|
90
|
+
const parsedInfo = (0, graphql_parse_resolve_info_1.parseResolveInfo)(info);
|
|
91
|
+
if (!parsedInfo)
|
|
92
|
+
return {};
|
|
93
|
+
return buildPrismaAggregateArgs(parsedInfo.fieldsByTypeName);
|
|
94
|
+
}
|
|
95
|
+
function buildPrismaAggregateArgs(fieldsByTypeName) {
|
|
96
|
+
const result = {};
|
|
97
|
+
for (const typeName in fieldsByTypeName) {
|
|
98
|
+
const fields = fieldsByTypeName[typeName];
|
|
99
|
+
for (const aggregateField of AGGREGATE_FIELDS) {
|
|
100
|
+
const fieldInfo = fields?.[aggregateField];
|
|
101
|
+
if (!fieldInfo)
|
|
102
|
+
continue;
|
|
103
|
+
const nestedFields = fieldInfo.fieldsByTypeName;
|
|
104
|
+
const nestedTypes = Object.keys(nestedFields);
|
|
105
|
+
if (nestedTypes.length === 0) {
|
|
106
|
+
if (aggregateField === '_count')
|
|
107
|
+
result._count = true;
|
|
108
|
+
continue;
|
|
72
109
|
}
|
|
73
|
-
|
|
74
|
-
const
|
|
75
|
-
|
|
76
|
-
|
|
110
|
+
const selectedFields = {};
|
|
111
|
+
for (const nestedTypeName of nestedTypes) {
|
|
112
|
+
const typeFields = nestedFields[nestedTypeName];
|
|
113
|
+
for (const nestedFieldName in typeFields) {
|
|
114
|
+
if (nestedFieldName === '_all') {
|
|
115
|
+
if (aggregateField === '_count') {
|
|
116
|
+
result._count = true;
|
|
117
|
+
break;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
selectedFields[nestedFieldName] = true;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
77
124
|
}
|
|
78
|
-
|
|
79
|
-
|
|
125
|
+
if (Object.keys(selectedFields).length > 0) {
|
|
126
|
+
result[aggregateField] = selectedFields;
|
|
127
|
+
}
|
|
128
|
+
else if (aggregateField === '_count') {
|
|
129
|
+
result._count = true;
|
|
80
130
|
}
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
// Scalar field
|
|
84
|
-
select[fieldName] = true;
|
|
85
131
|
}
|
|
86
132
|
}
|
|
87
|
-
|
|
88
|
-
return {};
|
|
89
|
-
}
|
|
90
|
-
return { select };
|
|
133
|
+
return result;
|
|
91
134
|
}
|
|
92
135
|
/**
|
|
93
136
|
* Get Prisma client from GraphQL context
|
|
@@ -113,42 +156,6 @@ function getPrismaFromContext(context) {
|
|
|
113
156
|
}
|
|
114
157
|
return prismaClient;
|
|
115
158
|
}
|
|
116
|
-
/**
|
|
117
|
-
* Transform count fields into Prisma _count select
|
|
118
|
-
*
|
|
119
|
-
* Handles the special _count field that aggregates relation counts
|
|
120
|
-
*
|
|
121
|
-
* @param fields - Parsed fields containing _count
|
|
122
|
-
* @returns Prisma _count select object
|
|
123
|
-
*/
|
|
124
|
-
function transformCountFieldIntoSelectRelationsCount(fields) {
|
|
125
|
-
const countField = fields['_count'];
|
|
126
|
-
if (!countField) {
|
|
127
|
-
return {};
|
|
128
|
-
}
|
|
129
|
-
const countNestedFields = countField.fieldsByTypeName;
|
|
130
|
-
const countTypes = Object.keys(countNestedFields);
|
|
131
|
-
if (countTypes.length === 0) {
|
|
132
|
-
return {};
|
|
133
|
-
}
|
|
134
|
-
const countSelect = {};
|
|
135
|
-
for (const typeName of countTypes) {
|
|
136
|
-
const typeFields = countNestedFields[typeName];
|
|
137
|
-
if (typeFields) {
|
|
138
|
-
for (const fieldName of Object.keys(typeFields)) {
|
|
139
|
-
countSelect[fieldName] = true;
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
if (Object.keys(countSelect).length === 0) {
|
|
144
|
-
return {};
|
|
145
|
-
}
|
|
146
|
-
return {
|
|
147
|
-
_count: {
|
|
148
|
-
select: countSelect,
|
|
149
|
-
},
|
|
150
|
-
};
|
|
151
|
-
}
|
|
152
159
|
/**
|
|
153
160
|
* Merge multiple Prisma select objects
|
|
154
161
|
*
|
|
@@ -157,126 +164,11 @@ function transformCountFieldIntoSelectRelationsCount(fields) {
|
|
|
157
164
|
*/
|
|
158
165
|
function mergePrismaSelects(...selects) {
|
|
159
166
|
const result = {};
|
|
160
|
-
for (const
|
|
161
|
-
if (
|
|
162
|
-
result.select = {
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
};
|
|
166
|
-
}
|
|
167
|
-
if (select.include) {
|
|
168
|
-
result.include = {
|
|
169
|
-
...result.include,
|
|
170
|
-
...select.include,
|
|
171
|
-
};
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
return result;
|
|
175
|
-
}
|
|
176
|
-
/**
|
|
177
|
-
* Check if a field is a relation based on Prisma schema info
|
|
178
|
-
*
|
|
179
|
-
* This is a simple heuristic - in generated code, we have full schema info
|
|
180
|
-
*
|
|
181
|
-
* @param fieldName - Name of the field
|
|
182
|
-
* @param modelFields - Map of field names to their types
|
|
183
|
-
* @returns true if the field is a relation
|
|
184
|
-
*/
|
|
185
|
-
function isRelationField(fieldName, modelFields) {
|
|
186
|
-
const field = modelFields.get(fieldName);
|
|
187
|
-
return field?.isRelation ?? false;
|
|
188
|
-
}
|
|
189
|
-
/**
|
|
190
|
-
* Apply pagination to Prisma args
|
|
191
|
-
*
|
|
192
|
-
* @param args - Existing Prisma args
|
|
193
|
-
* @param pagination - Pagination options
|
|
194
|
-
* @returns Prisma args with pagination
|
|
195
|
-
*/
|
|
196
|
-
function applyPagination(args, pagination) {
|
|
197
|
-
if (!pagination) {
|
|
198
|
-
return args;
|
|
199
|
-
}
|
|
200
|
-
return {
|
|
201
|
-
...args,
|
|
202
|
-
...(pagination.skip !== undefined && { skip: pagination.skip }),
|
|
203
|
-
...(pagination.take !== undefined && { take: pagination.take }),
|
|
204
|
-
...(pagination.cursor !== undefined && { cursor: pagination.cursor }),
|
|
205
|
-
};
|
|
206
|
-
}
|
|
207
|
-
/**
|
|
208
|
-
* Transform GraphQL resolve info into Prisma aggregate arguments
|
|
209
|
-
*
|
|
210
|
-
* Unlike regular queries, Prisma's aggregate() expects _count, _avg, etc.
|
|
211
|
-
* directly at the top level, not wrapped in a `select` object.
|
|
212
|
-
*
|
|
213
|
-
* @param info - GraphQL resolve info from the resolver
|
|
214
|
-
* @returns Prisma aggregate arguments
|
|
215
|
-
*
|
|
216
|
-
* @example
|
|
217
|
-
* ```typescript
|
|
218
|
-
* @Query(() => AggregateUser)
|
|
219
|
-
* async aggregateUser(@Info() info: GraphQLResolveInfo, @Args() args: AggregateUserArgs) {
|
|
220
|
-
* const aggregateArgs = transformInfoIntoPrismaAggregateArgs(info);
|
|
221
|
-
* return prisma.user.aggregate({ ...args, ...aggregateArgs });
|
|
222
|
-
* }
|
|
223
|
-
* ```
|
|
224
|
-
*/
|
|
225
|
-
function transformInfoIntoPrismaAggregateArgs(info) {
|
|
226
|
-
const parsedInfo = (0, graphql_parse_resolve_info_1.parseResolveInfo)(info);
|
|
227
|
-
if (!parsedInfo) {
|
|
228
|
-
return {};
|
|
229
|
-
}
|
|
230
|
-
const simplifiedInfo = (0, graphql_parse_resolve_info_1.simplifyParsedResolveInfoFragmentWithType)(parsedInfo, info.returnType);
|
|
231
|
-
return buildPrismaAggregateArgs(simplifiedInfo.fields);
|
|
232
|
-
}
|
|
233
|
-
/**
|
|
234
|
-
* Build Prisma aggregate arguments from parsed GraphQL fields
|
|
235
|
-
*
|
|
236
|
-
* @param fields - Parsed fields from graphql-parse-resolve-info
|
|
237
|
-
* @returns Prisma aggregate arguments
|
|
238
|
-
*/
|
|
239
|
-
function buildPrismaAggregateArgs(fields) {
|
|
240
|
-
const result = {};
|
|
241
|
-
for (const [fieldName, fieldInfo] of Object.entries(fields)) {
|
|
242
|
-
// Only process aggregate fields
|
|
243
|
-
if (!['_count', '_avg', '_sum', '_min', '_max'].includes(fieldName)) {
|
|
244
|
-
continue;
|
|
245
|
-
}
|
|
246
|
-
const nestedFields = fieldInfo.fieldsByTypeName;
|
|
247
|
-
const nestedTypes = Object.keys(nestedFields);
|
|
248
|
-
if (nestedTypes.length === 0) {
|
|
249
|
-
// No nested fields specified - select all
|
|
250
|
-
if (fieldName === '_count') {
|
|
251
|
-
result._count = true;
|
|
252
|
-
}
|
|
253
|
-
continue;
|
|
254
|
-
}
|
|
255
|
-
// Merge fields from all possible types
|
|
256
|
-
const fieldSelect = {};
|
|
257
|
-
for (const typeName of nestedTypes) {
|
|
258
|
-
const typeFields = nestedFields[typeName];
|
|
259
|
-
if (typeFields) {
|
|
260
|
-
for (const nestedFieldName of Object.keys(typeFields)) {
|
|
261
|
-
if (nestedFieldName === '_all') {
|
|
262
|
-
// Special _all field for _count
|
|
263
|
-
if (fieldName === '_count') {
|
|
264
|
-
result._count = true;
|
|
265
|
-
break;
|
|
266
|
-
}
|
|
267
|
-
}
|
|
268
|
-
else {
|
|
269
|
-
fieldSelect[nestedFieldName] = true;
|
|
270
|
-
}
|
|
271
|
-
}
|
|
272
|
-
}
|
|
273
|
-
}
|
|
274
|
-
if (Object.keys(fieldSelect).length > 0) {
|
|
275
|
-
result[fieldName] = fieldSelect;
|
|
276
|
-
}
|
|
277
|
-
else if (fieldName === '_count' && result._count !== true) {
|
|
278
|
-
result._count = true;
|
|
279
|
-
}
|
|
167
|
+
for (const s of selects) {
|
|
168
|
+
if (s.select)
|
|
169
|
+
result.select = { ...(result.select ?? {}), ...s.select };
|
|
170
|
+
if (s.include)
|
|
171
|
+
result.include = { ...(result.include ?? {}), ...s.include };
|
|
280
172
|
}
|
|
281
173
|
return result;
|
|
282
174
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/runtime/helpers.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/runtime/helpers.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@k0lyan/nestjs-prisma-graphql-generator",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.2",
|
|
4
4
|
"description": "Prisma generator for NestJS 11 GraphQL with optimized query building from GraphQL selections",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|