@pothos/plugin-prisma 3.59.3 → 3.61.0
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/CHANGELOG.md +12 -0
- package/dts/index.d.ts.map +1 -1
- package/dts/prisma-field-builder.d.ts.map +1 -1
- package/dts/util/map-query.d.ts.map +1 -1
- package/esm/connection-helpers.js +1 -2
- package/esm/connection-helpers.js.map +1 -1
- package/esm/field-builder.js +25 -7
- package/esm/field-builder.js.map +1 -1
- package/esm/global-types.js.map +1 -1
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -1
- package/esm/index.js.map +1 -1
- package/esm/model-loader.js +8 -4
- package/esm/model-loader.js.map +1 -1
- package/esm/prisma-field-builder.d.ts.map +1 -1
- package/esm/prisma-field-builder.js +28 -14
- package/esm/prisma-field-builder.js.map +1 -1
- package/esm/util/cursors.js +18 -10
- package/esm/util/cursors.js.map +1 -1
- package/esm/util/deep-equal.js +4 -5
- package/esm/util/deep-equal.js.map +1 -1
- package/esm/util/description.js +2 -4
- package/esm/util/description.js.map +1 -1
- package/esm/util/map-query.d.ts.map +1 -1
- package/esm/util/map-query.js +18 -24
- package/esm/util/map-query.js.map +1 -1
- package/lib/connection-helpers.js +4 -5
- package/lib/connection-helpers.js.map +1 -1
- package/lib/field-builder.js +24 -7
- package/lib/field-builder.js.map +1 -1
- package/lib/index.js +12 -12
- package/lib/index.js.map +1 -1
- package/lib/model-loader.js +8 -4
- package/lib/model-loader.js.map +1 -1
- package/lib/object-ref.js +3 -3
- package/lib/object-ref.js.map +1 -1
- package/lib/prisma-field-builder.js +28 -14
- package/lib/prisma-field-builder.js.map +1 -1
- package/lib/util/cursors.js +37 -29
- package/lib/util/cursors.js.map +1 -1
- package/lib/util/datamodel.js +12 -12
- package/lib/util/datamodel.js.map +1 -1
- package/lib/util/deep-equal.js +4 -5
- package/lib/util/deep-equal.js.map +1 -1
- package/lib/util/description.js +2 -4
- package/lib/util/description.js.map +1 -1
- package/lib/util/loader-map.js +3 -3
- package/lib/util/loader-map.js.map +1 -1
- package/lib/util/map-query.js +21 -27
- package/lib/util/map-query.js.map +1 -1
- package/lib/util/relation-map.js +3 -3
- package/lib/util/relation-map.js.map +1 -1
- package/lib/util/selections.js +9 -9
- package/lib/util/selections.js.map +1 -1
- package/lib/util/usage.js +6 -6
- package/lib/util/usage.js.map +1 -1
- package/package.json +8 -8
- package/src/field-builder.ts +25 -4
- package/src/index.ts +3 -3
- package/src/prisma-field-builder.ts +40 -10
- package/src/util/map-query.ts +34 -28
package/lib/util/map-query.js
CHANGED
|
@@ -9,14 +9,14 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
+
getIndirectType: function() {
|
|
13
|
+
return getIndirectType;
|
|
14
|
+
},
|
|
12
15
|
queryFromInfo: function() {
|
|
13
16
|
return queryFromInfo;
|
|
14
17
|
},
|
|
15
18
|
selectionStateFromInfo: function() {
|
|
16
19
|
return selectionStateFromInfo;
|
|
17
|
-
},
|
|
18
|
-
getIndirectType: function() {
|
|
19
|
-
return getIndirectType;
|
|
20
20
|
}
|
|
21
21
|
});
|
|
22
22
|
const _graphql = require("graphql");
|
|
@@ -25,13 +25,12 @@ const _loadermap = require("./loader-map");
|
|
|
25
25
|
const _selections = require("./selections");
|
|
26
26
|
const _usage = require("./usage");
|
|
27
27
|
function addTypeSelectionsForField(type, context, info, state, selection, indirectPath) {
|
|
28
|
-
var _pothosPrismaIndirectInclude, _pothosPrismaIndirectInclude1;
|
|
29
28
|
if (selection.name.value.startsWith('__')) {
|
|
30
29
|
return;
|
|
31
30
|
}
|
|
32
31
|
var _type_extensions;
|
|
33
32
|
const { pothosPrismaInclude, pothosPrismaSelect, pothosPrismaIndirectInclude, pothosPrismaModel } = (_type_extensions = type.extensions) !== null && _type_extensions !== void 0 ? _type_extensions : {};
|
|
34
|
-
if (!!(
|
|
33
|
+
if (!!(pothosPrismaIndirectInclude === null || pothosPrismaIndirectInclude === void 0 ? void 0 : pothosPrismaIndirectInclude.path) && pothosPrismaIndirectInclude.path.length > 0 || !!(pothosPrismaIndirectInclude === null || pothosPrismaIndirectInclude === void 0 ? void 0 : pothosPrismaIndirectInclude.paths) && pothosPrismaIndirectInclude.paths.length === 0) {
|
|
35
34
|
var _pothosPrismaIndirectInclude_paths;
|
|
36
35
|
resolveIndirectIncludePaths(type, info, selection, [], (_pothosPrismaIndirectInclude_paths = pothosPrismaIndirectInclude.paths) !== null && _pothosPrismaIndirectInclude_paths !== void 0 ? _pothosPrismaIndirectInclude_paths : [
|
|
37
36
|
pothosPrismaIndirectInclude.path
|
|
@@ -74,7 +73,7 @@ function resolveIndirectIncludePaths(type, info, selection, pathPrefix, includeP
|
|
|
74
73
|
}
|
|
75
74
|
}
|
|
76
75
|
}
|
|
77
|
-
function resolveIndirectInclude(type, info, selection, includePath, path, resolve) {
|
|
76
|
+
function resolveIndirectInclude(type, info, selection, includePath, path, resolve, expectedType = type) {
|
|
78
77
|
if (includePath.length === 0) {
|
|
79
78
|
resolve(type, selection, path);
|
|
80
79
|
return;
|
|
@@ -86,7 +85,7 @@ function resolveIndirectInclude(type, info, selection, includePath, path, resolv
|
|
|
86
85
|
for (const sel of selection.selectionSet.selections){
|
|
87
86
|
switch(sel.kind){
|
|
88
87
|
case _graphql.Kind.FIELD:
|
|
89
|
-
if (!fieldSkipped(info, sel) && sel.name.value === include.name && ((0, _graphql.isObjectType)(type) || (0, _graphql.isInterfaceType)(type))) {
|
|
88
|
+
if (expectedType.name === type.name && !fieldSkipped(info, sel) && sel.name.value === include.name && ((0, _graphql.isObjectType)(type) || (0, _graphql.isInterfaceType)(type))) {
|
|
90
89
|
var _sel_alias;
|
|
91
90
|
const returnType = (0, _graphql.getNamedType)(type.getFields()[sel.name.value].type);
|
|
92
91
|
var _sel_alias_value;
|
|
@@ -97,13 +96,11 @@ function resolveIndirectInclude(type, info, selection, includePath, path, resolv
|
|
|
97
96
|
}
|
|
98
97
|
continue;
|
|
99
98
|
case _graphql.Kind.FRAGMENT_SPREAD:
|
|
100
|
-
|
|
101
|
-
resolveIndirectInclude(include.type ? info.schema.getType(include.type) : type, info, info.fragments[sel.name.value], includePath, path, resolve);
|
|
102
|
-
}
|
|
99
|
+
resolveIndirectInclude(info.schema.getType(info.fragments[sel.name.value].typeCondition.name.value), info, info.fragments[sel.name.value], includePath, path, resolve, include.type ? info.schema.getType(include.type) : expectedType);
|
|
103
100
|
continue;
|
|
104
101
|
case _graphql.Kind.INLINE_FRAGMENT:
|
|
105
102
|
if (!sel.typeCondition || !include.type || sel.typeCondition.name.value === include.type) {
|
|
106
|
-
resolveIndirectInclude(sel.typeCondition ? info.schema.getType(sel.typeCondition.name.value) : type, info, sel, includePath, path, resolve);
|
|
103
|
+
resolveIndirectInclude(sel.typeCondition ? info.schema.getType(sel.typeCondition.name.value) : type, info, sel, includePath, path, resolve, include.type ? info.schema.getType(include.type) : expectedType);
|
|
107
104
|
}
|
|
108
105
|
continue;
|
|
109
106
|
default:
|
|
@@ -111,28 +108,25 @@ function resolveIndirectInclude(type, info, selection, includePath, path, resolv
|
|
|
111
108
|
}
|
|
112
109
|
}
|
|
113
110
|
}
|
|
114
|
-
function addNestedSelections(type, context, info, state, selections, indirectPath) {
|
|
111
|
+
function addNestedSelections(type, context, info, state, selections, indirectPath, expectedType = type) {
|
|
115
112
|
let parentType = type;
|
|
116
113
|
for (const selection of selections.selections){
|
|
117
114
|
switch(selection.kind){
|
|
118
115
|
case _graphql.Kind.FIELD:
|
|
116
|
+
if (expectedType.name !== type.name) {
|
|
117
|
+
continue;
|
|
118
|
+
}
|
|
119
119
|
addFieldSelection(type, context, info, state, selection, indirectPath);
|
|
120
120
|
continue;
|
|
121
121
|
case _graphql.Kind.FRAGMENT_SPREAD:
|
|
122
122
|
var _parentType_extensions;
|
|
123
123
|
parentType = info.schema.getType(info.fragments[selection.name.value].typeCondition.name.value);
|
|
124
|
-
|
|
125
|
-
continue;
|
|
126
|
-
}
|
|
127
|
-
addNestedSelections(parentType, context, info, state, info.fragments[selection.name.value].selectionSet, indirectPath);
|
|
124
|
+
addNestedSelections(parentType, context, info, state, info.fragments[selection.name.value].selectionSet, indirectPath, ((_parentType_extensions = parentType.extensions) === null || _parentType_extensions === void 0 ? void 0 : _parentType_extensions.pothosPrismaModel) === type.extensions.pothosPrismaModel ? parentType : expectedType);
|
|
128
125
|
continue;
|
|
129
126
|
case _graphql.Kind.INLINE_FRAGMENT:
|
|
130
127
|
var _parentType_extensions1;
|
|
131
128
|
parentType = selection.typeCondition ? info.schema.getType(selection.typeCondition.name.value) : type;
|
|
132
|
-
|
|
133
|
-
continue;
|
|
134
|
-
}
|
|
135
|
-
addNestedSelections(parentType, context, info, state, selection.selectionSet, indirectPath);
|
|
129
|
+
addNestedSelections(parentType, context, info, state, selection.selectionSet, indirectPath, ((_parentType_extensions1 = parentType.extensions) === null || _parentType_extensions1 === void 0 ? void 0 : _parentType_extensions1.pothosPrismaModel) === type.extensions.pothosPrismaModel ? parentType : expectedType);
|
|
136
130
|
continue;
|
|
137
131
|
default:
|
|
138
132
|
throw new _core.PothosValidationError(`Unsupported selection kind ${selection.kind}`);
|
|
@@ -154,7 +148,6 @@ function addFieldSelection(type, context, info, state, selection, indirectPath)
|
|
|
154
148
|
if (typeof fieldSelect === 'function') {
|
|
155
149
|
const args = (0, _graphql.getArgumentValues)(field, selection, info.variableValues);
|
|
156
150
|
fieldSelectionMap = fieldSelect(args, context, (rawQuery, indirectInclude)=>{
|
|
157
|
-
var _normalizedIndirectInclude, _normalizedIndirectInclude1;
|
|
158
151
|
const returnType = (0, _graphql.getNamedType)(field.type);
|
|
159
152
|
const query = typeof rawQuery === 'function' ? rawQuery(args, context) : rawQuery;
|
|
160
153
|
const normalizedIndirectInclude = Array.isArray(indirectInclude) ? normalizeInclude(indirectInclude, getIndirectType(returnType, info)) : indirectInclude;
|
|
@@ -165,7 +158,7 @@ function addFieldSelection(type, context, info, state, selection, indirectPath)
|
|
|
165
158
|
...query
|
|
166
159
|
});
|
|
167
160
|
}
|
|
168
|
-
if (!!(
|
|
161
|
+
if (!!(normalizedIndirectInclude === null || normalizedIndirectInclude === void 0 ? void 0 : normalizedIndirectInclude.path) && normalizedIndirectInclude.path.length > 0 || !!(normalizedIndirectInclude === null || normalizedIndirectInclude === void 0 ? void 0 : normalizedIndirectInclude.paths) && normalizedIndirectInclude.paths.length > 0) {
|
|
169
162
|
var _this, _returnType_extensions;
|
|
170
163
|
var _path, _normalizedIndirectInclude_paths;
|
|
171
164
|
resolveIndirectIncludePaths(returnType, info, selection, (_path = (_this = (_returnType_extensions = returnType.extensions) === null || _returnType_extensions === void 0 ? void 0 : _returnType_extensions.pothosPrismaIndirectInclude) === null || _this === void 0 ? void 0 : _this.path) !== null && _path !== void 0 ? _path : [], (_normalizedIndirectInclude_paths = normalizedIndirectInclude.paths) !== null && _normalizedIndirectInclude_paths !== void 0 ? _normalizedIndirectInclude_paths : [
|
|
@@ -179,6 +172,9 @@ function addFieldSelection(type, context, info, state, selection, indirectPath)
|
|
|
179
172
|
mappings = fieldState.mappings;
|
|
180
173
|
return (0, _selections.selectionToQuery)(fieldState);
|
|
181
174
|
}, (path)=>{
|
|
175
|
+
if (path.length === 0) {
|
|
176
|
+
return selection;
|
|
177
|
+
}
|
|
182
178
|
const returnType = (0, _graphql.getNamedType)(field.type);
|
|
183
179
|
let node = null;
|
|
184
180
|
resolveIndirectInclude(returnType, info, selection, path.map((name)=>({
|
|
@@ -213,11 +209,10 @@ function queryFromInfo({ context, info, typeName, select, path = [], paths = [],
|
|
|
213
209
|
select
|
|
214
210
|
} : undefined;
|
|
215
211
|
if (path.length > 0 || paths.length > 0) {
|
|
216
|
-
var _pothosPrismaIndirectInclude;
|
|
217
212
|
var _returnType_extensions;
|
|
218
213
|
const { pothosPrismaIndirectInclude } = (_returnType_extensions = returnType.extensions) !== null && _returnType_extensions !== void 0 ? _returnType_extensions : {};
|
|
219
214
|
var _pothosPrismaIndirectInclude_path;
|
|
220
|
-
resolveIndirectInclude(returnType, info, info.fieldNodes[0], (_pothosPrismaIndirectInclude_path =
|
|
215
|
+
resolveIndirectInclude(returnType, info, info.fieldNodes[0], (_pothosPrismaIndirectInclude_path = pothosPrismaIndirectInclude === null || pothosPrismaIndirectInclude === void 0 ? void 0 : pothosPrismaIndirectInclude.path) !== null && _pothosPrismaIndirectInclude_path !== void 0 ? _pothosPrismaIndirectInclude_path : [], [], (indirectType, indirectField, subPath)=>{
|
|
221
216
|
resolveIndirectIncludePaths(indirectType, info, indirectField, [], paths.length > 0 ? paths.map((p)=>p.map((n)=>typeof n === 'string' ? {
|
|
222
217
|
name: n
|
|
223
218
|
} : n)) : [
|
|
@@ -294,13 +289,12 @@ function normalizeInclude(path, type) {
|
|
|
294
289
|
};
|
|
295
290
|
}
|
|
296
291
|
function fieldSkipped(info, selection) {
|
|
297
|
-
var _skip, _include;
|
|
298
292
|
const skip = (0, _graphql.getDirectiveValues)(_graphql.GraphQLSkipDirective, selection, info.variableValues);
|
|
299
|
-
if ((
|
|
293
|
+
if ((skip === null || skip === void 0 ? void 0 : skip.if) === true) {
|
|
300
294
|
return true;
|
|
301
295
|
}
|
|
302
296
|
const include = (0, _graphql.getDirectiveValues)(_graphql.GraphQLIncludeDirective, selection, info.variableValues);
|
|
303
|
-
if ((
|
|
297
|
+
if ((include === null || include === void 0 ? void 0 : include.if) === false) {
|
|
304
298
|
return true;
|
|
305
299
|
}
|
|
306
300
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/util/map-query.ts"],"names":["queryFromInfo","selectionStateFromInfo","getIndirectType","addTypeSelectionsForField","type","context","info","state","selection","indirectPath","pothosPrismaIndirectInclude","name","value","startsWith","pothosPrismaInclude","pothosPrismaSelect","pothosPrismaModel","extensions","path","length","paths","resolveIndirectIncludePaths","resolvedType","field","schema","getType","isObjectType","isInterfaceType","mode","mergeSelection","select","undefined","include","selectionSet","addNestedSelections","pathPrefix","includePaths","resolve","includePath","resolveIndirectInclude","rest","sel","selections","kind","Kind","FIELD","fieldSkipped","returnType","getNamedType","getFields","alias","FRAGMENT_SPREAD","fragments","typeCondition","INLINE_FRAGMENT","PothosValidationError","parentType","addFieldSelection","fieldSelect","fieldSelectionMap","mappings","args","getArgumentValues","variableValues","rawQuery","indirectInclude","normalizedIndirectInclude","query","Array","isArray","normalizeInclude","fieldState","createStateForType","Object","keys","resolvedField","selectionToQuery","node","map","_","selectionCompatible","typeName","withUsageCheck","getTypeMap","initialSelection","fieldNodes","indirectType","indirectField","subPath","p","n","nested","setLoaderMappings","wrapWithUsageCheck","parent","initialSelections","targetType","fieldMap","pothosPrismaFieldMap","createState","currentType","normalized","fieldName","push","skip","getDirectiveValues","GraphQLSkipDirective","if","GraphQLIncludeDirective"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../src/util/map-query.ts"],"names":["getIndirectType","queryFromInfo","selectionStateFromInfo","addTypeSelectionsForField","type","context","info","state","selection","indirectPath","name","value","startsWith","pothosPrismaInclude","pothosPrismaSelect","pothosPrismaIndirectInclude","pothosPrismaModel","extensions","path","length","paths","resolveIndirectIncludePaths","resolvedType","field","schema","getType","isObjectType","isInterfaceType","mode","mergeSelection","select","undefined","include","selectionSet","addNestedSelections","pathPrefix","includePaths","resolve","includePath","resolveIndirectInclude","expectedType","rest","sel","selections","kind","Kind","FIELD","fieldSkipped","returnType","getNamedType","getFields","alias","FRAGMENT_SPREAD","fragments","typeCondition","INLINE_FRAGMENT","PothosValidationError","parentType","addFieldSelection","fieldSelect","fieldSelectionMap","mappings","args","getArgumentValues","variableValues","rawQuery","indirectInclude","query","normalizedIndirectInclude","Array","isArray","normalizeInclude","fieldState","createStateForType","Object","keys","resolvedField","selectionToQuery","node","map","_","selectionCompatible","typeName","withUsageCheck","getTypeMap","initialSelection","fieldNodes","indirectType","indirectField","subPath","p","n","nested","setLoaderMappings","wrapWithUsageCheck","parent","initialSelections","targetType","fieldMap","pothosPrismaFieldMap","createState","currentType","normalized","fieldName","push","skip","getDirectiveValues","GraphQLSkipDirective","if","GraphQLIncludeDirective"],"mappings":"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"}
|
package/lib/util/relation-map.js
CHANGED
|
@@ -9,11 +9,11 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
getRelationMap: function() {
|
|
13
|
-
return getRelationMap;
|
|
14
|
-
},
|
|
15
12
|
createRelationMap: function() {
|
|
16
13
|
return createRelationMap;
|
|
14
|
+
},
|
|
15
|
+
getRelationMap: function() {
|
|
16
|
+
return getRelationMap;
|
|
17
17
|
}
|
|
18
18
|
});
|
|
19
19
|
const _core = require("@pothos/core");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/util/relation-map.ts"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../src/util/relation-map.ts"],"names":["createRelationMap","getRelationMap","createContextCache","datamodel","models","relationMap","Map","Array","isArray","forEach","model","set","name","relations","map","get","fields","field","kind","has","type","Object","keys","entries"],"mappings":";;;;;;;;;;;IAcgBA,iBAAiB;eAAjBA;;IAJHC,cAAc;eAAdA;;;sBAVsB;AAU5B,MAAMA,iBAAiBC,IAAAA,wBAAkB,EAC9C,CAACC,YAAoDH,kBAAkBG;AAGlE,SAASH,kBAAkB,EAAEI,MAAM,EAAwC;IAChF,MAAMC,cAA2B,IAAIC;IAErC,IAAIC,MAAMC,OAAO,CAACJ,SAAS;QACzBA,OAAOK,OAAO,CAAC,CAACC;YACdL,YAAYM,GAAG,CAACD,MAAME,IAAI,EAAE;gBAAEF,OAAOA,MAAME,IAAI;gBAAEC,WAAW,IAAIP;YAAM;QACxE;QAEAF,OAAOK,OAAO,CAAC,CAACC;YACd,MAAMI,MAAMT,YAAYU,GAAG,CAACL,MAAME,IAAI,EAAGC,SAAS;YAElDH,MAAMM,MAAM,CAACP,OAAO,CAAC,CAACQ;gBACpB,IAAIA,MAAMC,IAAI,KAAK,YAAYb,YAAYc,GAAG,CAACF,MAAMG,IAAI,GAAG;oBAC1DN,IAAIH,GAAG,CAACM,MAAML,IAAI,EAAEP,YAAYU,GAAG,CAACE,MAAMG,IAAI;gBAChD;YACF;QACF;IACF,OAAO;QACLC,OAAOC,IAAI,CAAClB,QAAQK,OAAO,CAAC,CAACG;YAC3BP,YAAYM,GAAG,CAACC,MAAM;gBAAEF,OAAOE;gBAAMC,WAAW,IAAIP;YAAM;QAC5D;QAEAe,OAAOE,OAAO,CAACnB,QAAQK,OAAO,CAAC,CAAC,CAACG,MAAMF,MAAM;YAC3C,MAAMI,MAAMT,YAAYU,GAAG,CAACH,MAAOC,SAAS;YAE5CH,MAAMM,MAAM,CAACP,OAAO,CAAC,CAACQ;gBACpB,IAAIA,MAAMC,IAAI,KAAK,YAAYb,YAAYc,GAAG,CAACF,MAAMG,IAAI,GAAG;oBAC1DN,IAAIH,GAAG,CAACM,MAAML,IAAI,EAAEP,YAAYU,GAAG,CAACE,MAAMG,IAAI;gBAChD;YACF;QACF;IACF;IAEA,OAAOf;AACT"}
|
package/lib/util/selections.js
CHANGED
|
@@ -9,23 +9,23 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
selectionCompatible: function() {
|
|
13
|
-
return selectionCompatible;
|
|
14
|
-
},
|
|
15
|
-
stateCompatible: function() {
|
|
16
|
-
return stateCompatible;
|
|
17
|
-
},
|
|
18
|
-
mergeState: function() {
|
|
19
|
-
return mergeState;
|
|
20
|
-
},
|
|
21
12
|
createState: function() {
|
|
22
13
|
return createState;
|
|
23
14
|
},
|
|
24
15
|
mergeSelection: function() {
|
|
25
16
|
return mergeSelection;
|
|
26
17
|
},
|
|
18
|
+
mergeState: function() {
|
|
19
|
+
return mergeState;
|
|
20
|
+
},
|
|
21
|
+
selectionCompatible: function() {
|
|
22
|
+
return selectionCompatible;
|
|
23
|
+
},
|
|
27
24
|
selectionToQuery: function() {
|
|
28
25
|
return selectionToQuery;
|
|
26
|
+
},
|
|
27
|
+
stateCompatible: function() {
|
|
28
|
+
return stateCompatible;
|
|
29
29
|
}
|
|
30
30
|
});
|
|
31
31
|
const _deepequal = require("./deep-equal");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/util/selections.ts"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../src/util/selections.ts"],"names":["createState","mergeSelection","mergeState","selectionCompatible","selectionToQuery","stateCompatible","state","selectionMap","ignoreQuery","Object","keys","query","length","select","include","some","key","compare","deepEqual","value","selections","k","counts","has","get","fieldMap","relations","newState","name","relationState","mode","fields","add","parent","Set","Map","mappings","forEach","merge","count","set","selection","childMap","relatedState","nestedIncludes","hasSelection","sel","relation","nested","size","_count","field"],"mappings":"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"}
|
package/lib/util/usage.js
CHANGED
|
@@ -9,17 +9,17 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
+
extendWithUsage: function() {
|
|
13
|
+
return extendWithUsage;
|
|
14
|
+
},
|
|
15
|
+
isUsed: function() {
|
|
16
|
+
return isUsed;
|
|
17
|
+
},
|
|
12
18
|
usageSymbol: function() {
|
|
13
19
|
return usageSymbol;
|
|
14
20
|
},
|
|
15
21
|
wrapWithUsageCheck: function() {
|
|
16
22
|
return wrapWithUsageCheck;
|
|
17
|
-
},
|
|
18
|
-
isUsed: function() {
|
|
19
|
-
return isUsed;
|
|
20
|
-
},
|
|
21
|
-
extendWithUsage: function() {
|
|
22
|
-
return extendWithUsage;
|
|
23
23
|
}
|
|
24
24
|
});
|
|
25
25
|
const usageSymbol = Symbol.for('Pothos.isUsed');
|
package/lib/util/usage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/util/usage.ts"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../src/util/usage.ts"],"names":["extendWithUsage","isUsed","usageSymbol","wrapWithUsageCheck","Symbol","for","obj","result","used","Object","defineProperty","get","set","value","enumerable","key","keys","configurable","original","extension"],"mappings":";;;;;;;;;;;IAqCgBA,eAAe;eAAfA;;IAJAC,MAAM;eAANA;;IAjCHC,WAAW;eAAXA;;IAEGC,kBAAkB;eAAlBA;;;AAFT,MAAMD,cAAcE,OAAOC,GAAG,CAAC;AAE/B,SAASF,mBAAqCG,GAAM;IACzD,MAAMC,SAAS,CAAC;IAChB,IAAIC,OAAO;IAEXC,OAAOC,cAAc,CAACH,QAAQL,aAAa;QACzCS;YACE,OAAOH;QACT;QACAI,KAAIC,KAAc;YAChBL,OAAOK;QACT;QACAC,YAAY;IACd;IAEA,KAAK,MAAMC,OAAON,OAAOO,IAAI,CAACV,KAAM;QAClC,2CAA2C;QAC3CE,OAAO;QACPC,OAAOC,cAAc,CAACH,QAAQQ,KAAK;YACjCD,YAAY;YACZG,cAAc;YACd,2DAA2D;YAC3DN;gBACEH,OAAO;gBACP,OAAOF,GAAG,CAACS,IAAe;YAC5B;QACF;IACF;IAEA,OAAOR;AACT;AAEO,SAASN,OAAOK,GAAW;IAChC,OAAO,CAAEJ,CAAAA,eAAeI,GAAE,KAAM,AAACA,GAAkC,CAACJ,YAAY;AAClF;AAEO,SAASF,gBACdkB,QAAW,EACXC,SAAY;IAEZ,IAAI,CAAEjB,CAAAA,eAAegB,QAAO,GAAI;QAC9B,OAAO;YAAE,GAAGA,QAAQ;YAAE,GAAGC,SAAS;QAAC;IACrC;IAEA,MAAMZ,SAAS;QAAE,GAAGY,SAAS;IAAC;IAE9B,KAAK,MAAMJ,OAAO;QAACb;WAAgBO,OAAOO,IAAI,CAACE;KAAU,CAAE;QACzD,IAAIH,OAAOR,QAAQ;YAEjB;QACF;QAEAE,OAAOC,cAAc,CAACH,QAAQQ,KAAK;YACjCD,YAAYC,QAAQb;YACpBe,cAAcF,QAAQb;YACtBS;gBACE,OAAOO,QAAQ,CAACH,IAAe;YACjC;QACF;IACF;IAEA,OAAOR;AACT"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pothos/plugin-prisma",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.61.0",
|
|
4
4
|
"description": "A Pothos plugin for more efficient integration with prisma",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./dts/index.d.ts",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"provenance": true
|
|
53
53
|
},
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@prisma/generator-helper": "^5.
|
|
55
|
+
"@prisma/generator-helper": "^5.4.1"
|
|
56
56
|
},
|
|
57
57
|
"prisma": {
|
|
58
58
|
"seed": "node prisma/seed.mjs"
|
|
@@ -64,15 +64,15 @@
|
|
|
64
64
|
"typescript": ">=4.7.2"
|
|
65
65
|
},
|
|
66
66
|
"devDependencies": {
|
|
67
|
-
"@prisma/client": "^5.
|
|
68
|
-
"graphql": "16.8.
|
|
67
|
+
"@prisma/client": "^5.4.1",
|
|
68
|
+
"graphql": "16.8.1",
|
|
69
69
|
"graphql-scalars": "^1.22.2",
|
|
70
70
|
"graphql-tag": "^2.12.6",
|
|
71
|
-
"prisma": "^5.
|
|
72
|
-
"@pothos/core": "3.
|
|
71
|
+
"prisma": "^5.4.1",
|
|
72
|
+
"@pothos/core": "3.38.0",
|
|
73
73
|
"@pothos/plugin-complexity": "3.13.0",
|
|
74
74
|
"@pothos/plugin-errors": "3.11.1",
|
|
75
|
-
"@pothos/plugin-relay": "3.
|
|
75
|
+
"@pothos/plugin-relay": "3.44.0",
|
|
76
76
|
"@pothos/plugin-simple-objects": "3.7.0",
|
|
77
77
|
"@pothos/test-utils": "1.4.8"
|
|
78
78
|
},
|
|
@@ -85,6 +85,6 @@
|
|
|
85
85
|
"build:esm": "cp -r dts/* esm/ && swc src -d esm --config-file ../../.swcrc -C module.type=es6 && pnpm esm:extensions",
|
|
86
86
|
"build:dts": "tsc",
|
|
87
87
|
"esm:extensions": "TS_NODE_PROJECT=../../tsconfig.json node -r @swc-node/register ../../scripts/esm-transformer.ts",
|
|
88
|
-
"test": "pnpm vitest --run --segfault-retry=3"
|
|
88
|
+
"test": "pnpm vitest --run --segfault-retry=3 --retry 3"
|
|
89
89
|
}
|
|
90
90
|
}
|
package/src/field-builder.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { GraphQLResolveInfo } from 'graphql';
|
|
1
|
+
import { getNamedType, GraphQLResolveInfo, isInterfaceType, isObjectType, Kind } from 'graphql';
|
|
2
2
|
import {
|
|
3
3
|
FieldKind,
|
|
4
4
|
FieldRef,
|
|
@@ -145,6 +145,21 @@ fieldBuilderProto.prismaConnection = function prismaConnection<
|
|
|
145
145
|
withUsageCheck: !!this.builder.options.prisma?.onUnusedQuery,
|
|
146
146
|
});
|
|
147
147
|
|
|
148
|
+
const returnType = getNamedType(info.returnType);
|
|
149
|
+
const fields =
|
|
150
|
+
isObjectType(returnType) || isInterfaceType(returnType) ? returnType.getFields() : {};
|
|
151
|
+
|
|
152
|
+
const selections = info.fieldNodes;
|
|
153
|
+
|
|
154
|
+
const totalCountOnly = selections.every(
|
|
155
|
+
(selection) =>
|
|
156
|
+
selection.selectionSet?.selections.length === 1 &&
|
|
157
|
+
selection.selectionSet.selections.every(
|
|
158
|
+
(s) =>
|
|
159
|
+
s.kind === Kind.FIELD && fields[s.name.value]?.extensions?.pothosPrismaTotalCount,
|
|
160
|
+
),
|
|
161
|
+
);
|
|
162
|
+
|
|
148
163
|
return resolvePrismaCursorConnection(
|
|
149
164
|
{
|
|
150
165
|
parent,
|
|
@@ -157,13 +172,16 @@ fieldBuilderProto.prismaConnection = function prismaConnection<
|
|
|
157
172
|
totalCount: totalCount && (() => totalCount(parent, args as never, context, info)),
|
|
158
173
|
},
|
|
159
174
|
formatCursor,
|
|
160
|
-
(q) =>
|
|
161
|
-
|
|
175
|
+
(q) => {
|
|
176
|
+
if (totalCountOnly) return [];
|
|
177
|
+
|
|
178
|
+
return checkIfQueryIsUsed(
|
|
162
179
|
this.builder,
|
|
163
180
|
query,
|
|
164
181
|
info,
|
|
165
182
|
resolve(q as never, parent, args as never, context, info) as never,
|
|
166
|
-
)
|
|
183
|
+
);
|
|
184
|
+
},
|
|
167
185
|
);
|
|
168
186
|
},
|
|
169
187
|
},
|
|
@@ -180,6 +198,9 @@ fieldBuilderProto.prismaConnection = function prismaConnection<
|
|
|
180
198
|
) => ({
|
|
181
199
|
totalCount: t.int({
|
|
182
200
|
nullable: false,
|
|
201
|
+
extensions: {
|
|
202
|
+
pothosPrismaTotalCount: true,
|
|
203
|
+
},
|
|
183
204
|
resolve: (parent, args, context) => parent.totalCount?.(),
|
|
184
205
|
}),
|
|
185
206
|
...(connectionOptions as { fields?: (t: unknown) => {} }).fields?.(t),
|
package/src/index.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import './global-types';
|
|
2
2
|
import './schema-builder';
|
|
3
3
|
import './field-builder';
|
|
4
|
-
import { GraphQLFieldResolver } from 'graphql';
|
|
4
|
+
import { GraphQLFieldResolver, GraphQLResolveInfo } from 'graphql';
|
|
5
5
|
import SchemaBuilder, {
|
|
6
6
|
BasePlugin,
|
|
7
7
|
BuildCache,
|
|
@@ -121,7 +121,7 @@ export class PrismaPlugin<Types extends SchemaTypes> extends BasePlugin<Types> {
|
|
|
121
121
|
|
|
122
122
|
const parentConfig = this.buildCache.getTypeConfig(fieldConfig.parentType);
|
|
123
123
|
const loadedCheck = fieldConfig.extensions?.pothosPrismaLoaded as
|
|
124
|
-
| ((val: unknown) => boolean)
|
|
124
|
+
| ((val: unknown, info: GraphQLResolveInfo) => boolean)
|
|
125
125
|
| undefined;
|
|
126
126
|
const loaderCache = parentConfig.extensions?.pothosPrismaLoader as (
|
|
127
127
|
model: unknown,
|
|
@@ -154,7 +154,7 @@ export class PrismaPlugin<Types extends SchemaTypes> extends BasePlugin<Types> {
|
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
156
|
|
|
157
|
-
if ((!loadedCheck || loadedCheck(parent)) && mapping) {
|
|
157
|
+
if ((!loadedCheck || loadedCheck(parent, info)) && mapping) {
|
|
158
158
|
setLoaderMappings(context, info, mapping);
|
|
159
159
|
|
|
160
160
|
return resolver(parent, args, context, info);
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
/* eslint-disable no-nested-ternary */
|
|
2
2
|
/* eslint-disable no-underscore-dangle */
|
|
3
|
-
import {
|
|
3
|
+
import {
|
|
4
|
+
FieldNode,
|
|
5
|
+
getNamedType,
|
|
6
|
+
GraphQLResolveInfo,
|
|
7
|
+
isInterfaceType,
|
|
8
|
+
isObjectType,
|
|
9
|
+
Kind,
|
|
10
|
+
} from 'graphql';
|
|
4
11
|
import {
|
|
5
12
|
CompatibleTypes,
|
|
6
13
|
ExposeNullability,
|
|
@@ -265,17 +272,17 @@ export class PrismaObjectFieldBuilder<
|
|
|
265
272
|
nestedQuery: (query: unknown, path?: unknown) => { select?: {} },
|
|
266
273
|
getSelection: (path: string[]) => FieldNode | null,
|
|
267
274
|
) => {
|
|
275
|
+
typeName ??= this.builder.configStore.getTypeConfig(ref).name;
|
|
268
276
|
const nested = nestedQuery(getQuery(args, context), {
|
|
269
|
-
getType: () =>
|
|
270
|
-
if (!typeName) {
|
|
271
|
-
typeName = this.builder.configStore.getTypeConfig(ref).name;
|
|
272
|
-
}
|
|
273
|
-
return typeName;
|
|
274
|
-
},
|
|
277
|
+
getType: () => typeName!,
|
|
275
278
|
paths: [[{ name: 'nodes' }], [{ name: 'edges' }, { name: 'node' }]],
|
|
276
279
|
}) as SelectionMap;
|
|
277
280
|
|
|
281
|
+
const selection = getSelection([])!;
|
|
278
282
|
const hasTotalCount = totalCount && !!getSelection(['totalCount']);
|
|
283
|
+
|
|
284
|
+
const totalCountOnly = selection.selectionSet?.selections.length === 1 && hasTotalCount;
|
|
285
|
+
|
|
279
286
|
const countSelect = this.builder.options.prisma.filterConnectionTotalCount
|
|
280
287
|
? nested.where
|
|
281
288
|
? { where: nested.where }
|
|
@@ -285,7 +292,9 @@ export class PrismaObjectFieldBuilder<
|
|
|
285
292
|
return {
|
|
286
293
|
select: {
|
|
287
294
|
...(hasTotalCount ? { _count: { select: { [name]: countSelect } } } : {}),
|
|
288
|
-
[name]:
|
|
295
|
+
[name]: totalCountOnly
|
|
296
|
+
? undefined
|
|
297
|
+
: nested?.select
|
|
289
298
|
? {
|
|
290
299
|
...nested,
|
|
291
300
|
select: {
|
|
@@ -309,7 +318,25 @@ export class PrismaObjectFieldBuilder<
|
|
|
309
318
|
extensions: {
|
|
310
319
|
...extensions,
|
|
311
320
|
pothosPrismaSelect: relationSelect,
|
|
312
|
-
pothosPrismaLoaded: (value: Record<string, unknown
|
|
321
|
+
pothosPrismaLoaded: (value: Record<string, unknown>, info: GraphQLResolveInfo) => {
|
|
322
|
+
const returnType = getNamedType(info.returnType);
|
|
323
|
+
const fields =
|
|
324
|
+
isObjectType(returnType) || isInterfaceType(returnType) ? returnType.getFields() : {};
|
|
325
|
+
|
|
326
|
+
const selections = info.fieldNodes;
|
|
327
|
+
|
|
328
|
+
const totalCountOnly = selections.every(
|
|
329
|
+
(selection) =>
|
|
330
|
+
selection.selectionSet?.selections.length === 1 &&
|
|
331
|
+
selection.selectionSet.selections.every(
|
|
332
|
+
(s) =>
|
|
333
|
+
s.kind === Kind.FIELD &&
|
|
334
|
+
fields[s.name.value]?.extensions?.pothosPrismaTotalCount,
|
|
335
|
+
),
|
|
336
|
+
);
|
|
337
|
+
|
|
338
|
+
return totalCountOnly || value[name] !== undefined;
|
|
339
|
+
},
|
|
313
340
|
pothosPrismaFallback:
|
|
314
341
|
resolve &&
|
|
315
342
|
((
|
|
@@ -342,7 +369,7 @@ export class PrismaObjectFieldBuilder<
|
|
|
342
369
|
|
|
343
370
|
return wrapConnectionResult(
|
|
344
371
|
parent,
|
|
345
|
-
(parent as Record<string, never>)[name],
|
|
372
|
+
(parent as Record<string, never>)[name] ?? [],
|
|
346
373
|
args,
|
|
347
374
|
connectionQuery.take,
|
|
348
375
|
formatCursor,
|
|
@@ -360,6 +387,9 @@ export class PrismaObjectFieldBuilder<
|
|
|
360
387
|
) => ({
|
|
361
388
|
totalCount: t.int({
|
|
362
389
|
nullable: false,
|
|
390
|
+
extensions: {
|
|
391
|
+
pothosPrismaTotalCount: true,
|
|
392
|
+
},
|
|
363
393
|
resolve: (parent, args, context) => parent.totalCount,
|
|
364
394
|
}),
|
|
365
395
|
...(connectionOptions as { fields?: (t: unknown) => {} }).fields?.(t),
|