@pothos/plugin-prisma 3.53.0 → 3.55.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/README.md +63 -1
- package/dts/connection-helpers.d.ts +3 -3
- package/dts/connection-helpers.d.ts.map +1 -1
- package/dts/global-types.d.ts +15 -4
- package/dts/global-types.d.ts.map +1 -1
- package/dts/index.d.ts +3 -1
- package/dts/index.d.ts.map +1 -1
- package/dts/interface-ref.d.ts +10 -0
- package/dts/interface-ref.d.ts.map +1 -0
- package/dts/model-loader.d.ts +7 -7
- package/dts/model-loader.d.ts.map +1 -1
- package/dts/prisma-field-builder.d.ts +4 -4
- package/dts/prisma-field-builder.d.ts.map +1 -1
- package/dts/types.d.ts +23 -7
- package/dts/types.d.ts.map +1 -1
- package/dts/util/datamodel.d.ts +3 -3
- package/dts/util/datamodel.d.ts.map +1 -1
- package/dts/util/map-query.d.ts +2 -1
- package/dts/util/map-query.d.ts.map +1 -1
- package/dts/util/usage.d.ts +4 -0
- package/dts/util/usage.d.ts.map +1 -0
- package/esm/connection-helpers.d.ts +3 -3
- package/esm/connection-helpers.d.ts.map +1 -1
- package/esm/connection-helpers.js.map +1 -1
- package/esm/field-builder.js +59 -17
- package/esm/field-builder.js.map +1 -1
- package/esm/global-types.d.ts +21 -10
- package/esm/global-types.d.ts.map +1 -1
- package/esm/global-types.js.map +1 -1
- package/esm/index.d.ts +3 -1
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +48 -3
- package/esm/index.js.map +1 -1
- package/esm/interface-ref.d.ts +10 -0
- package/esm/interface-ref.d.ts.map +1 -0
- package/esm/interface-ref.js +26 -0
- package/esm/interface-ref.js.map +1 -0
- package/esm/model-loader.d.ts +7 -7
- package/esm/model-loader.d.ts.map +1 -1
- package/esm/model-loader.js.map +1 -1
- package/esm/prisma-field-builder.d.ts +4 -4
- package/esm/prisma-field-builder.d.ts.map +1 -1
- package/esm/prisma-field-builder.js +3 -3
- package/esm/prisma-field-builder.js.map +1 -1
- package/esm/schema-builder.js +27 -0
- package/esm/schema-builder.js.map +1 -1
- package/esm/types.d.ts +25 -9
- package/esm/types.d.ts.map +1 -1
- package/esm/util/datamodel.d.ts +3 -3
- package/esm/util/datamodel.d.ts.map +1 -1
- package/esm/util/datamodel.js +3 -2
- package/esm/util/datamodel.js.map +1 -1
- package/esm/util/map-query.d.ts +2 -1
- package/esm/util/map-query.d.ts.map +1 -1
- package/esm/util/map-query.js +21 -14
- package/esm/util/map-query.js.map +1 -1
- package/esm/util/usage.d.ts +4 -0
- package/esm/util/usage.d.ts.map +1 -0
- package/esm/util/usage.js +29 -0
- package/esm/util/usage.js.map +1 -0
- package/lib/connection-helpers.js.map +1 -1
- package/lib/field-builder.js +62 -21
- package/lib/field-builder.js.map +1 -1
- package/lib/index.js +50 -2
- package/lib/index.js.map +1 -1
- package/lib/interface-ref.js +36 -0
- package/lib/interface-ref.js.map +1 -0
- package/lib/model-loader.js.map +1 -1
- package/lib/prisma-field-builder.js +3 -3
- package/lib/prisma-field-builder.js.map +1 -1
- package/lib/schema-builder.js +27 -0
- package/lib/schema-builder.js.map +1 -1
- package/lib/util/datamodel.js +3 -2
- package/lib/util/datamodel.js.map +1 -1
- package/lib/util/map-query.js +20 -13
- package/lib/util/map-query.js.map +1 -1
- package/lib/util/usage.js +51 -0
- package/lib/util/usage.js.map +1 -0
- package/package.json +2 -2
- package/src/connection-helpers.ts +6 -6
- package/src/field-builder.ts +90 -15
- package/src/global-types.ts +39 -11
- package/src/index.ts +56 -2
- package/src/interface-ref.ts +18 -0
- package/src/model-loader.ts +13 -7
- package/src/prisma-field-builder.ts +7 -10
- package/src/schema-builder.ts +44 -1
- package/src/types.ts +66 -9
- package/src/util/datamodel.ts +8 -3
- package/src/util/map-query.ts +38 -14
- package/src/util/usage.ts +33 -0
package/esm/index.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import './global-types.js';
|
|
2
2
|
import './schema-builder.js';
|
|
3
3
|
import './field-builder.js';
|
|
4
|
-
import SchemaBuilder, { BasePlugin } from '@pothos/core';
|
|
4
|
+
import SchemaBuilder, { BasePlugin, PothosSchemaError } from '@pothos/core';
|
|
5
5
|
import { PrismaObjectFieldBuilder as InternalPrismaObjectFieldBuilder } from './prisma-field-builder.js';
|
|
6
6
|
import { formatPrismaCursor, parsePrismaCursor } from './util/cursors.js';
|
|
7
7
|
import { getModel, getRefFromModel } from './util/datamodel.js';
|
|
8
8
|
import { getLoaderMapping, setLoaderMappings } from './util/loader-map.js';
|
|
9
9
|
import { queryFromInfo, selectionStateFromInfo } from './util/map-query.js';
|
|
10
10
|
export { prismaConnectionHelpers } from './connection-helpers.js';
|
|
11
|
+
export { PrismaInterfaceRef } from './interface-ref.js';
|
|
11
12
|
export { PrismaNodeRef } from './node-ref.js';
|
|
12
13
|
export { PrismaObjectRef } from './object-ref.js';
|
|
13
14
|
export * from './types.js';
|
|
@@ -16,6 +17,30 @@ export default pluginName;
|
|
|
16
17
|
export { formatPrismaCursor, getModel, getRefFromModel, parsePrismaCursor, queryFromInfo };
|
|
17
18
|
export const ObjectFieldBuilder = InternalPrismaObjectFieldBuilder;
|
|
18
19
|
export class PrismaPlugin extends BasePlugin {
|
|
20
|
+
onTypeConfig(typeConfig) {
|
|
21
|
+
var _typeConfig_extensions;
|
|
22
|
+
if (typeConfig.kind !== "Object" && typeConfig.kind !== "Interface") {
|
|
23
|
+
return typeConfig;
|
|
24
|
+
}
|
|
25
|
+
let model = (_typeConfig_extensions = typeConfig.extensions) === null || _typeConfig_extensions === void 0 ? void 0 : _typeConfig_extensions.pothosPrismaModel;
|
|
26
|
+
typeConfig.interfaces.forEach((iface) => {
|
|
27
|
+
var _this_buildCache_getTypeConfig_extensions;
|
|
28
|
+
const interfaceModel = (_this_buildCache_getTypeConfig_extensions = this.buildCache.getTypeConfig(iface, "Interface").extensions) === null || _this_buildCache_getTypeConfig_extensions === void 0 ? void 0 : _this_buildCache_getTypeConfig_extensions.pothosPrismaModel;
|
|
29
|
+
if (interfaceModel) {
|
|
30
|
+
if (model && model !== interfaceModel) {
|
|
31
|
+
throw new PothosSchemaError(`PrismaObjects must be based on the same prisma model as any PrismaInterfaces they extend. ${typeConfig.name} uses ${model} and ${iface.name} uses ${interfaceModel}`);
|
|
32
|
+
}
|
|
33
|
+
model = interfaceModel;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
return {
|
|
37
|
+
...typeConfig,
|
|
38
|
+
extensions: {
|
|
39
|
+
...typeConfig.extensions,
|
|
40
|
+
pothosPrismaModel: model
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
}
|
|
19
44
|
onOutputFieldConfig(fieldConfig) {
|
|
20
45
|
if (fieldConfig.kind === "PrismaObject" && fieldConfig.pothosOptions.select) {
|
|
21
46
|
const { select } = fieldConfig.pothosOptions;
|
|
@@ -36,12 +61,32 @@ export class PrismaPlugin extends BasePlugin {
|
|
|
36
61
|
if (fieldConfig.kind !== "PrismaObject" || !((_fieldConfig_extensions = fieldConfig.extensions) === null || _fieldConfig_extensions === void 0 ? void 0 : _fieldConfig_extensions.pothosPrismaSelect)) {
|
|
37
62
|
return resolver;
|
|
38
63
|
}
|
|
39
|
-
const parentConfig = this.buildCache.getTypeConfig(fieldConfig.parentType
|
|
64
|
+
const parentConfig = this.buildCache.getTypeConfig(fieldConfig.parentType);
|
|
40
65
|
const loadedCheck = (_fieldConfig_extensions1 = fieldConfig.extensions) === null || _fieldConfig_extensions1 === void 0 ? void 0 : _fieldConfig_extensions1.pothosPrismaLoaded;
|
|
41
66
|
const loaderCache = (_parentConfig_extensions = parentConfig.extensions) === null || _parentConfig_extensions === void 0 ? void 0 : _parentConfig_extensions.pothosPrismaLoader;
|
|
42
67
|
const fallback = (_fieldConfig_extensions2 = fieldConfig.extensions) === null || _fieldConfig_extensions2 === void 0 ? void 0 : _fieldConfig_extensions2.pothosPrismaFallback;
|
|
68
|
+
const parentTypes = new Set([
|
|
69
|
+
fieldConfig.parentType
|
|
70
|
+
]);
|
|
71
|
+
if (parentConfig.kind === "Interface" || parentConfig.kind === "Object") {
|
|
72
|
+
parentConfig.interfaces.forEach((iface) => {
|
|
73
|
+
var _interfaceConfig_extensions;
|
|
74
|
+
const interfaceConfig = this.buildCache.getTypeConfig(iface, "Interface");
|
|
75
|
+
if ((_interfaceConfig_extensions = interfaceConfig.extensions) === null || _interfaceConfig_extensions === void 0 ? void 0 : _interfaceConfig_extensions.pothosPrismaModel) {
|
|
76
|
+
parentTypes.add(interfaceConfig.name);
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
}
|
|
43
80
|
return (parent, args, context, info) => {
|
|
44
|
-
|
|
81
|
+
let mapping = getLoaderMapping(context, info.path, info.parentType.name);
|
|
82
|
+
if (!mapping) {
|
|
83
|
+
for (const parentType of parentTypes) {
|
|
84
|
+
mapping = getLoaderMapping(context, info.path, parentType);
|
|
85
|
+
if (mapping) {
|
|
86
|
+
break;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
45
90
|
if ((!loadedCheck || loadedCheck(parent)) && mapping) {
|
|
46
91
|
setLoaderMappings(context, info, mapping);
|
|
47
92
|
return resolver(parent, args, context, info);
|
package/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":["SchemaBuilder","BasePlugin","PrismaObjectFieldBuilder","InternalPrismaObjectFieldBuilder","formatPrismaCursor","parsePrismaCursor","getModel","getRefFromModel","getLoaderMapping","setLoaderMappings","queryFromInfo","selectionStateFromInfo","prismaConnectionHelpers","PrismaNodeRef","PrismaObjectRef","pluginName","ObjectFieldBuilder","PrismaPlugin","
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":["SchemaBuilder","BasePlugin","PothosSchemaError","PrismaObjectFieldBuilder","InternalPrismaObjectFieldBuilder","formatPrismaCursor","parsePrismaCursor","getModel","getRefFromModel","getLoaderMapping","setLoaderMappings","queryFromInfo","selectionStateFromInfo","prismaConnectionHelpers","PrismaInterfaceRef","PrismaNodeRef","PrismaObjectRef","pluginName","ObjectFieldBuilder","PrismaPlugin","onTypeConfig","typeConfig","kind","model","extensions","pothosPrismaModel","interfaces","forEach","iface","interfaceModel","buildCache","getTypeConfig","name","onOutputFieldConfig","fieldConfig","pothosOptions","select","pothosPrismaSelect","args","ctx","nestedQuery","wrapResolve","resolver","parentConfig","parentType","loadedCheck","pothosPrismaLoaded","loaderCache","pothosPrismaLoader","fallback","pothosPrismaFallback","parentTypes","Set","interfaceConfig","add","parent","context","info","mapping","path","selectionState","loadSelection","then","result","mappings","key","constructor","cache","registerPlugin"],"mappings":"AAAA,OAAO,iBAAiB;AACxB,OAAO,mBAAmB;AAC1B,OAAO,kBAAkB;AAEzB,OAAOA,iBACLC,UAAU,EAGVC,iBAAiB,QAGZ,eAAe;AAEtB,SAASC,4BAA4BC,gCAAgC,QAAQ,yBAAyB;AAEtG,SAASC,kBAAkB,EAAEC,iBAAiB,QAAQ,iBAAiB;AACvE,SAASC,QAAQ,EAAEC,eAAe,QAAQ,mBAAmB;AAC7D,SAASC,gBAAgB,EAAEC,iBAAiB,QAAQ,oBAAoB;AACxE,SAASC,aAAa,EAAEC,sBAAsB,QAAQ,mBAAmB;AAEzE,SAASC,uBAAuB,QAAQ,uBAAuB;AAC/D,SAASC,kBAAkB,QAAQ,kBAAkB;AACrD,SAASC,aAAa,QAAQ,aAAa;AAC3C,SAASC,eAAe,QAAQ,eAAe;AAC/C,cAAc,UAAU;AAExB,MAAMC,aAAa;AAEnB,eAAeA,WAAW;AAE1B,SAASZ,kBAAkB,EAAEE,QAAQ,EAAEC,eAAe,EAAEF,iBAAiB,EAAEK,aAAa,GAAG;AAO3F,OAAO,MAAMO,qBAAqBd,iCAQiD;AAEnF,OAAO,MAAMe,qBAAgDlB;IAKlDmB,aAAaC,UAA4B,EAAoB;YAKxDA;QAJZ,IAAIA,WAAWC,IAAI,KAAK,YAAYD,WAAWC,IAAI,KAAK,aAAa;YACnE,OAAOD;QACT;QAEA,IAAIE,SAAQF,yBAAAA,WAAWG,UAAU,cAArBH,6CAAAA,uBAAuBI,iBAAiB;QAEpDJ,WAAWK,UAAU,CAACC,OAAO,CAAC,CAACC;gBACN;YAAvB,MAAMC,kBAAiB,4CAAA,IAAI,CAACC,UAAU,CAACC,aAAa,CAACH,OAAO,aAAaJ,UAAU,cAA5D,gEAAA,0CACnBC,iBAAiB;YAErB,IAAII,gBAAgB;gBAClB,IAAIN,SAASA,UAAUM,gBAAgB;oBACrC,MAAM,IAAI3B,kBACR,CAAC,0FAA0F,EAAEmB,WAAWW,IAAI,CAAC,MAAM,EAAET,MAAM,KAAK,EAAEK,MAAMI,IAAI,CAAC,MAAM,EAAEH,eAAe,CAAC;gBAEzK;gBAEAN,QAAQM;YACV;QACF;QAEA,OAAO;YACL,GAAGR,UAAU;YACbG,YAAY;gBACV,GAAGH,WAAWG,UAAU;gBACxBC,mBAAmBF;YACrB;QACF;IACF;IAESU,oBACPC,WAA2C,EACJ;QACvC,IAAIA,YAAYZ,IAAI,KAAK,kBAAkBY,YAAYC,aAAa,CAACC,MAAM,EAAE;YAC3E,MAAM,EAAEA,MAAM,EAAE,GAAGF,YAAYC,aAAa;YAC5C,OAAO;gBACL,GAAGD,WAAW;gBACdV,YAAY;oBACV,GAAGU,YAAYV,UAAU;oBACzBa,oBACE,OAAOD,WAAW,aACd,CACEE,MACAC,KACAC,cACI,CAAA;4BACJJ,QAAQ,AAACA,OACPE,MACAC,KACAC;wBAEJ,CAAA,IACAJ;gBACR;YACF;QACF;QAEA,OAAOF;IACT;IAESO,YACPC,QAA0E,EAC1ER,WAA2C,EACc;YACbA,yBAKxBA,0BAGAS,0BAIHT;QAZjB,IAAIA,YAAYZ,IAAI,KAAK,kBAAkB,GAACY,0BAAAA,YAAYV,UAAU,cAAtBU,8CAAAA,wBAAwBG,kBAAkB,GAAE;YACtF,OAAOK;QACT;QAEA,MAAMC,eAAe,IAAI,CAACb,UAAU,CAACC,aAAa,CAACG,YAAYU,UAAU;QACzE,MAAMC,eAAcX,2BAAAA,YAAYV,UAAU,cAAtBU,+CAAAA,yBAAwBY,kBAAkB;QAG9D,MAAMC,eAAcJ,2BAAAA,aAAanB,UAAU,cAAvBmB,+CAAAA,yBAAyBK,kBAAkB;QAI/D,MAAMC,YAAWf,2BAAAA,YAAYV,UAAU,cAAtBU,+CAAAA,yBAAwBgB,oBAAoB;QAI7D,MAAMC,cAAc,IAAIC,IAAI;YAAClB,YAAYU,UAAU;SAAC;QAEpD,IAAID,aAAarB,IAAI,KAAK,eAAeqB,aAAarB,IAAI,KAAK,UAAU;YACvEqB,aAAajB,UAAU,CAACC,OAAO,CAAC,CAACC;oBAE3ByB;gBADJ,MAAMA,kBAAkB,IAAI,CAACvB,UAAU,CAACC,aAAa,CAACH,OAAO;gBAC7D,KAAIyB,8BAAAA,gBAAgB7B,UAAU,cAA1B6B,kDAAAA,4BAA4B5B,iBAAiB,EAAE;oBACjD0B,YAAYG,GAAG,CAACD,gBAAgBrB,IAAI;gBACtC;YACF;QACF;QAEA,OAAO,CAACuB,QAAQjB,MAAMkB,SAASC;YAC7B,IAAIC,UAAUjD,iBAAiB+C,SAASC,KAAKE,IAAI,EAAEF,KAAKb,UAAU,CAACZ,IAAI;YAEvE,IAAI,CAAC0B,SAAS;gBACZ,KAAK,MAAMd,cAAcO,YAAa;oBACpCO,UAAUjD,iBAAiB+C,SAASC,KAAKE,IAAI,EAAEf;oBAC/C,IAAIc,SAAS;wBACX;oBACF;gBACF;YACF;YAEA,IAAI,AAAC,CAAA,CAACb,eAAeA,YAAYU,OAAM,KAAMG,SAAS;gBACpDhD,kBAAkB8C,SAASC,MAAMC;gBAEjC,OAAOhB,SAASa,QAAQjB,MAAMkB,SAASC;YACzC;YAEA,IAAIR,UAAU;gBACZ,OAAOA,SAAStC,cAAc;oBAAE6C;oBAASC;gBAAK,IAAIF,QAAQjB,MAAMkB,SAASC;YAC3E;YAEA,MAAMG,iBAAiBhD,uBAAuB4C,SAASC;YAEvD,OAAOV,YAAYQ,QAChBM,aAAa,CAACD,gBAAgBJ,SAC9BM,IAAI,CAAC,CAACC;gBACL,MAAMC,WAAWJ,eAAeI,QAAQ,CAACP,KAAKE,IAAI,CAACM,GAAG,CAAC;gBAEvD,IAAID,UAAU;oBACZtD,kBAAkB8C,SAASC,MAAMO,SAASA,QAAQ;gBACpD;gBAEA,OAAOtB,SAASqB,QAAQzB,MAAMkB,SAASC;YACzC;QACJ;IACF;IApIAS,YAAYC,KAAwB,CAAE;QACpC,KAAK,CAACA,OAAOlD;IACf;AAmIF;AAEAjB,cAAcoE,cAAc,CAACnD,YAAYE"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { InterfaceRef } from '@pothos/core';
|
|
2
|
+
import { prismaModelKey, PrismaObjectRef } from './object-ref.js';
|
|
3
|
+
import type { PrismaModelTypes } from './types.js';
|
|
4
|
+
export type PrismaRef<Model extends PrismaModelTypes, T = {}> = PrismaObjectRef<Model, T> | PrismaInterfaceRef<Model, T>;
|
|
5
|
+
export declare class PrismaInterfaceRef<Model extends PrismaModelTypes, T = {}> extends InterfaceRef<T> {
|
|
6
|
+
[prismaModelKey]: Model;
|
|
7
|
+
modelName: string;
|
|
8
|
+
constructor(name: string, modelName: string);
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=interface-ref.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interface-ref.d.ts","sourceRoot":"","sources":["../src/interface-ref.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD,MAAM,MAAM,SAAS,CAAC,KAAK,SAAS,gBAAgB,EAAE,CAAC,GAAG,EAAE,IACxD,eAAe,CAAC,KAAK,EAAE,CAAC,CAAC,GACzB,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAEjC,qBAAa,kBAAkB,CAAC,KAAK,SAAS,gBAAgB,EAAE,CAAC,GAAG,EAAE,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IAC7F,CAAC,cAAc,CAAC,EAAG,KAAK,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;gBAEN,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAK5C"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
function _define_property(obj, key, value) {
|
|
2
|
+
if (key in obj) {
|
|
3
|
+
Object.defineProperty(obj, key, {
|
|
4
|
+
value: value,
|
|
5
|
+
enumerable: true,
|
|
6
|
+
configurable: true,
|
|
7
|
+
writable: true
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
else {
|
|
11
|
+
obj[key] = value;
|
|
12
|
+
}
|
|
13
|
+
return obj;
|
|
14
|
+
}
|
|
15
|
+
import { InterfaceRef } from '@pothos/core';
|
|
16
|
+
import { prismaModelKey } from './object-ref.js';
|
|
17
|
+
let _prismaModelKey = prismaModelKey;
|
|
18
|
+
export class PrismaInterfaceRef extends InterfaceRef {
|
|
19
|
+
constructor(name, modelName) {
|
|
20
|
+
super(name);
|
|
21
|
+
_define_property(this, _prismaModelKey, void 0);
|
|
22
|
+
_define_property(this, "modelName", void 0);
|
|
23
|
+
this.modelName = modelName;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=interface-ref.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/interface-ref.ts"],"names":["InterfaceRef","prismaModelKey","PrismaInterfaceRef","constructor","name","modelName"],"mappings":";;;;;;;;;;;;;AAAA,SAASA,YAAY,QAAQ,eAAe;AAC5C,SAASC,cAAc,QAAyB,eAAe;IAQ5DA,kBAAAA;AADH,OAAO,MAAMC,2BAAmEF;IAI9EG,YAAYC,IAAY,EAAEC,SAAiB,CAAE;QAC3C,KAAK,CAACD;QAJR,uBAACH,iBAAD,KAAA;QACAI,uBAAAA,aAAAA,KAAAA;QAKE,IAAI,CAACA,SAAS,GAAGA;IACnB;AACF"}
|
package/esm/model-loader.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ObjectRef, SchemaTypes } from '@pothos/core';
|
|
1
|
+
import { InterfaceRef, ObjectRef, SchemaTypes } from '@pothos/core';
|
|
2
2
|
import { SelectionState } from './util/selections.js';
|
|
3
3
|
export declare class ModelLoader {
|
|
4
4
|
model: object;
|
|
@@ -10,20 +10,20 @@ export declare class ModelLoader {
|
|
|
10
10
|
state: SelectionState;
|
|
11
11
|
}>;
|
|
12
12
|
constructor(model: object, builder: PothosSchemaTypes.SchemaBuilder<never>, modelName: string, findUnique: (model: Record<string, unknown>, ctx: {}) => unknown);
|
|
13
|
-
static forRef<Types extends SchemaTypes>(ref: ObjectRef<unknown>, modelName: string, findUnique: ((model: Record<string, unknown>, ctx: {}) => unknown) | undefined, builder: PothosSchemaTypes.SchemaBuilder<Types>): import("@pothos/core").ContextCache<ModelLoader, object, [
|
|
13
|
+
static forRef<Types extends SchemaTypes>(ref: ObjectRef<unknown> | InterfaceRef<unknown>, modelName: string, findUnique: ((model: Record<string, unknown>, ctx: {}) => unknown) | undefined, builder: PothosSchemaTypes.SchemaBuilder<Types>): import("@pothos/core").ContextCache<ModelLoader, object, [
|
|
14
14
|
]>;
|
|
15
15
|
static getFindUnique(findBy: {
|
|
16
16
|
name: string | null;
|
|
17
17
|
fields: string[];
|
|
18
18
|
} | string): (model: Record<string, unknown>) => {};
|
|
19
|
-
static getDefaultFindBy<Types extends SchemaTypes>(ref: ObjectRef<unknown>, modelName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): string | {
|
|
19
|
+
static getDefaultFindBy<Types extends SchemaTypes>(ref: ObjectRef<unknown> | InterfaceRef<unknown>, modelName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): string | {
|
|
20
20
|
name: string | null;
|
|
21
21
|
fields: string[];
|
|
22
22
|
};
|
|
23
|
-
static getDefaultFindUnique<Types extends SchemaTypes>(ref: ObjectRef<unknown>, modelName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): (model: Record<string, unknown>) => {};
|
|
24
|
-
static getDefaultIDSelection<Types extends SchemaTypes>(ref: ObjectRef<unknown>, modelName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): Record<string, boolean>;
|
|
25
|
-
static getCursorSelection<Types extends SchemaTypes>(ref: ObjectRef<unknown>, modelName: string, cursor: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): Record<string, boolean>;
|
|
26
|
-
static getFindUniqueForField<Types extends SchemaTypes>(ref: ObjectRef<unknown>, modelName: string, fieldName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): (model: Record<string, unknown>) => {};
|
|
23
|
+
static getDefaultFindUnique<Types extends SchemaTypes>(ref: ObjectRef<unknown> | InterfaceRef<unknown>, modelName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): (model: Record<string, unknown>) => {};
|
|
24
|
+
static getDefaultIDSelection<Types extends SchemaTypes>(ref: ObjectRef<unknown> | InterfaceRef<unknown>, modelName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): Record<string, boolean>;
|
|
25
|
+
static getCursorSelection<Types extends SchemaTypes>(ref: ObjectRef<unknown> | InterfaceRef<unknown>, modelName: string, cursor: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): Record<string, boolean>;
|
|
26
|
+
static getFindUniqueForField<Types extends SchemaTypes>(ref: ObjectRef<unknown> | InterfaceRef<unknown>, modelName: string, fieldName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): (model: Record<string, unknown>) => {};
|
|
27
27
|
loadSelection(selection: SelectionState, context: object): Promise<Record<string, unknown>>;
|
|
28
28
|
initLoad(state: SelectionState, context: {}): Promise<Record<string, unknown>>;
|
|
29
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-loader.d.ts","sourceRoot":"","sources":["../src/model-loader.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"model-loader.d.ts","sourceRoot":"","sources":["../src/model-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,YAAY,EACZ,SAAS,EAET,WAAW,EACZ,MAAM,cAAc,CAAC;AAGtB,OAAO,EAGL,cAAc,EAEf,MAAM,mBAAmB,CAAC;AAE3B,qBAAa,WAAW;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAChD,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,KAAK,OAAO,CAAC;IACjE,SAAS,EAAE,MAAM,CAAC;IAElB,MAAM;iBACK,QAAQ,OAAO,MAAM,EAAE,OAAO,CAAC,CAAC;eAClC,cAAc;OAClB;gBAGH,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,KAAK,OAAO;IAQlE,MAAM,CAAC,MAAM,CAAC,KAAK,SAAS,WAAW,EACrC,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,EAC/C,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,KAAK,OAAO,CAAC,GAAG,SAAS,EAC9E,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC;IAiBjD,MAAM,CAAC,aAAa,CAClB,MAAM,EACF;QACE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,GACD,MAAM,GACT,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE;IAkBzC,MAAM,CAAC,gBAAgB,CAAC,KAAK,SAAS,WAAW,EAC/C,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,EAC/C,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC;cAWnC,MAAM,GAAG,IAAI;gBACX,MAAM,EAAE;;IAsBxB,MAAM,CAAC,oBAAoB,CAAC,KAAK,SAAS,WAAW,EACnD,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,EAC/C,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE;IAMzC,MAAM,CAAC,qBAAqB,CAAC,KAAK,SAAS,WAAW,EACpD,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,EAC/C,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAgB1B,MAAM,CAAC,kBAAkB,CAAC,KAAK,SAAS,WAAW,EACjD,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,EAC/C,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAwB1B,MAAM,CAAC,qBAAqB,CAAC,KAAK,SAAS,WAAW,EACpD,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,EAC/C,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE;IAiCnC,aAAa,CAAC,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM;IAcxD,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE;CA8BlD"}
|
package/esm/model-loader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/model-loader.ts"],"names":["createContextCache","PothosSchemaError","getDelegateFromModel","getModel","getClient","mergeSelection","selectionCompatible","selectionToQuery","ModelLoader","forRef","ref","modelName","findUnique","builder","model","name","getDefaultFindUnique","getFindUnique","findBy","parent","fields","primaryKeyName","primaryKey","key","join","getDefaultFindBy","idField","find","field","isId","uniqueField","isRequired","isUnique","uniqueIndex","uniqueIndexes","idx","every","f","getDefaultIDSelection","result","getCursorSelection","cursor","index","filter","Boolean","selection","column","getFindUniqueForField","fieldName","some","loadSelection","context","query","entry","staged","state","promise","initLoad","Promise","resolve","then","delete","delegate","findUniqueOrThrow","where","rejectOnNotFound","add","constructor","Set"],"mappings":";;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"sources":["../src/model-loader.ts"],"names":["createContextCache","PothosSchemaError","getDelegateFromModel","getModel","getClient","mergeSelection","selectionCompatible","selectionToQuery","ModelLoader","forRef","ref","modelName","findUnique","builder","model","name","getDefaultFindUnique","getFindUnique","findBy","parent","fields","primaryKeyName","primaryKey","key","join","getDefaultFindBy","idField","find","field","isId","uniqueField","isRequired","isUnique","uniqueIndex","uniqueIndexes","idx","every","f","getDefaultIDSelection","result","getCursorSelection","cursor","index","filter","Boolean","selection","column","getFindUniqueForField","fieldName","some","loadSelection","context","query","entry","staged","state","promise","initLoad","Promise","resolve","then","delete","delegate","findUniqueOrThrow","where","rejectOnNotFound","add","constructor","Set"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CompatibleTypes, ExposeNullability, FieldKind, FieldRef, InputFieldMap, InterfaceParam, NormalizeArgs, ObjectRef, PluginName, SchemaTypes, ShapeFromTypeParam, TypeParam } from '@pothos/core';
|
|
2
|
-
import {
|
|
2
|
+
import { PrismaRef } from './interface-ref.js';
|
|
3
3
|
import { PrismaConnectionShape, PrismaModelTypes, RelatedConnectionOptions, RelatedFieldOptions, RelationCountOptions, ShapeFromConnection, TypesForRelation, VariantFieldOptions } from './types.js';
|
|
4
4
|
import { FieldMap } from './util/relation-map.js';
|
|
5
5
|
declare const RootBuilder: {
|
|
@@ -134,15 +134,15 @@ export declare class PrismaObjectFieldBuilder<Types extends SchemaTypes, Model e
|
|
|
134
134
|
node?: ShapeFromTypeParam<Types, Model["Shape"], false>;
|
|
135
135
|
}>
|
|
136
136
|
], 0>) => FieldRef<ShapeFromConnection<PothosSchemaTypes.ConnectionShapeHelper<Types, Shape, Nullable>>> : "@pothos/plugin-relay is required to use this method";
|
|
137
|
-
constructor(name: string, builder: PothosSchemaTypes.SchemaBuilder<Types>, model: string, fieldMap: FieldMap);
|
|
137
|
+
constructor(name: string, builder: PothosSchemaTypes.SchemaBuilder<Types>, model: string, fieldMap: FieldMap, graphqlKind?: PothosSchemaTypes.PothosKindToGraphQLType[FieldKind]);
|
|
138
138
|
relation<Field extends Model["RelationName"], Nullable extends boolean, Args extends InputFieldMap, ResolveReturnShape>(name: Field, ...allArgs: NormalizeArgs<[
|
|
139
139
|
options: RelatedFieldOptions<Types, Model, Field, Nullable, Args, ResolveReturnShape, NeedsResolve, Shape>
|
|
140
140
|
]>): FieldRef<Model["Relations"][Field]["Shape"], "Object">;
|
|
141
141
|
relationCount<Field extends Model["RelationName"]>(name: Field, ...allArgs: NormalizeArgs<[
|
|
142
142
|
options: RelationCountOptions<Types, Shape, NeedsResolve, TypesForRelation<Types, Model, Field>["Where"]>
|
|
143
143
|
]>): FieldRef<number, "Object">;
|
|
144
|
-
variant<Variant extends Model["Name"] |
|
|
145
|
-
options: VariantFieldOptions<Types, Model, Variant extends
|
|
144
|
+
variant<Variant extends Model["Name"] | PrismaRef<Model>, Args extends InputFieldMap, Nullable>(variant: Variant, ...allArgs: NormalizeArgs<[
|
|
145
|
+
options: VariantFieldOptions<Types, Model, Variant extends PrismaRef<Model> ? Variant : PrismaRef<Model>, Args, Nullable, Shape>
|
|
146
146
|
]>): FieldRef<Model["Shape"], "Object">;
|
|
147
147
|
expose<Type extends TypeParam<Types>, Nullable extends boolean, ResolveReturnShape, Name extends CompatibleTypes<Types, Model["Shape"], Type, true>>(...args: NormalizeArgs<[
|
|
148
148
|
name: Name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prisma-field-builder.d.ts","sourceRoot":"","sources":["../src/prisma-field-builder.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,SAAS,EACT,QAAQ,EACR,aAAa,EACb,cAAc,EAGd,aAAa,EACb,SAAS,EACT,UAAU,EAEV,WAAW,EACX,kBAAkB,EAClB,SAAS,EACV,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"prisma-field-builder.d.ts","sourceRoot":"","sources":["../src/prisma-field-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -108,7 +108,7 @@ export class PrismaObjectFieldBuilder extends RootBuilder {
|
|
|
108
108
|
expose(...args) {
|
|
109
109
|
var _typeConfig_extensions;
|
|
110
110
|
const [name, options = {}] = args;
|
|
111
|
-
const typeConfig = this.builder.configStore.getTypeConfig(this.typename
|
|
111
|
+
const typeConfig = this.builder.configStore.getTypeConfig(this.typename);
|
|
112
112
|
const usingSelect = !!((_typeConfig_extensions = typeConfig.extensions) === null || _typeConfig_extensions === void 0 ? void 0 : _typeConfig_extensions.pothosPrismaSelect);
|
|
113
113
|
return this.exposeField(name, {
|
|
114
114
|
...options,
|
|
@@ -131,8 +131,8 @@ export class PrismaObjectFieldBuilder extends RootBuilder {
|
|
|
131
131
|
});
|
|
132
132
|
};
|
|
133
133
|
}
|
|
134
|
-
constructor(name, builder, model, fieldMap) {
|
|
135
|
-
super(name, builder, "PrismaObject",
|
|
134
|
+
constructor(name, builder, model, fieldMap, graphqlKind = "Object") {
|
|
135
|
+
super(name, builder, "PrismaObject", graphqlKind);
|
|
136
136
|
_define_property(this, "model", void 0);
|
|
137
137
|
_define_property(this, "prismaFieldMap", void 0);
|
|
138
138
|
_define_property(this, "exposeBoolean", this.createExpose("Boolean"));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/prisma-field-builder.ts"],"names":["isThenable","ObjectRef","RootFieldBuilder","ModelLoader","getCursorFormatter","getCursorParser","prismaCursorConnectionQuery","wrapConnectionResult","getRefFromModel","getRelation","getFieldDescription","RootBuilder","PrismaObjectFieldBuilder","relation","name","allArgs","description","options","relationField","model","builder","ref","type","query","resolve","extensions","rest","relationSelect","args","context","nestedQuery","select","field","isList","pothosPrismaSelect","pothosPrismaLoaded","value","undefined","pothosPrismaFallback","q","parent","info","relationCount","where","countSelect","_count","nullable","variant","isNull","selfSelect","parentIsNull","then","resolved","expose","typeConfig","configStore","getTypeConfig","typename","usingSelect","exposeField","pothosPrismaVariant","createExpose","constructor","fieldMap","prismaFieldMap","exposeBoolean","exposeFloat","exposeInt","exposeID","exposeString","exposeBooleanList","exposeFloatList","exposeIntList","exposeIDList","exposeStringList","withAuth","relatedConnection","maxSize","defaultSize","cursor","cursorValue","totalCount","connectionOptions","edgeOptions","typeName","formatCursor","parseCursor","getQuery","ctx","connectionQuery","take","skip","fieldQuery","cursorSelection","getCursorSelection","getSelection","nested","getType","paths","hasTotalCount","prisma","filterConnectionTotalCount","fieldRef","connection","Promise","result","fields","t","int","addScopes","scopes","originalCreateField","createField","call","authScopes"],"mappings":"AAAA,oCAAoC,GACpC,uCAAuC;;;;;;;;;;;;;AAEvC,SAOEA,UAAU,EAGVC,SAAS,EAETC,gBAAgB,QAIX,eAAe;
|
|
1
|
+
{"version":3,"sources":["../src/prisma-field-builder.ts"],"names":["isThenable","ObjectRef","RootFieldBuilder","ModelLoader","getCursorFormatter","getCursorParser","prismaCursorConnectionQuery","wrapConnectionResult","getRefFromModel","getRelation","getFieldDescription","RootBuilder","PrismaObjectFieldBuilder","relation","name","allArgs","description","options","relationField","model","builder","ref","type","query","resolve","extensions","rest","relationSelect","args","context","nestedQuery","select","field","isList","pothosPrismaSelect","pothosPrismaLoaded","value","undefined","pothosPrismaFallback","q","parent","info","relationCount","where","countSelect","_count","nullable","variant","isNull","selfSelect","parentIsNull","then","resolved","expose","typeConfig","configStore","getTypeConfig","typename","usingSelect","exposeField","pothosPrismaVariant","createExpose","constructor","fieldMap","graphqlKind","prismaFieldMap","exposeBoolean","exposeFloat","exposeInt","exposeID","exposeString","exposeBooleanList","exposeFloatList","exposeIntList","exposeIDList","exposeStringList","withAuth","relatedConnection","maxSize","defaultSize","cursor","cursorValue","totalCount","connectionOptions","edgeOptions","typeName","formatCursor","parseCursor","getQuery","ctx","connectionQuery","take","skip","fieldQuery","cursorSelection","getCursorSelection","getSelection","nested","getType","paths","hasTotalCount","prisma","filterConnectionTotalCount","fieldRef","connection","Promise","result","fields","t","int","addScopes","scopes","originalCreateField","createField","call","authScopes"],"mappings":"AAAA,oCAAoC,GACpC,uCAAuC;;;;;;;;;;;;;AAEvC,SAOEA,UAAU,EAGVC,SAAS,EAETC,gBAAgB,QAIX,eAAe;AAEtB,SAASC,WAAW,QAAQ,iBAAiB;AAY7C,SACEC,kBAAkB,EAClBC,eAAe,EACfC,2BAA2B,EAC3BC,oBAAoB,QACf,iBAAiB;AACxB,SAASC,eAAe,EAAEC,WAAW,QAAQ,mBAAmB;AAChE,SAASC,mBAAmB,QAAQ,qBAAqB;AAGzD,iEAAiE;AACjE,MAAMC,cAQFT;AAuBJ,OAAO,MAAMU,iCAKHD;IAySRE,SAMEC,IAAW,EACX,GAAGC,OAaF,EACuD;QACxD,MAAM,CAAC,EAAEC,WAAW,EAAE,GAAGC,SAAS,GAAG,CAAC,CAAU,CAAC,GAAGF;QACpD,MAAMG,gBAAgBT,YAAY,IAAI,CAACU,KAAK,EAAE,IAAI,CAACC,OAAO,EAAEN;YAChDG;QAAZ,MAAMI,MAAMJ,CAAAA,gBAAAA,QAAQK,IAAI,cAAZL,2BAAAA,gBAAgBT,gBAAgBU,cAAcI,IAAI,EAAE,IAAI,CAACF,OAAO;QAE5E,MAAM,EAAEG,QAAQ,CAAC,CAAC,EAAEC,OAAO,EAAEC,UAAU,EAAE,GAAGC,MAAM,GAAGT;QAErD,MAAMU,iBAAiB,CACrBC,MACAC,SACAC,cACI,CAAA;gBAAEC,QAAQ;oBAAE,CAACjB,KAAK,EAAEgB,YAAYP;gBAAO;YAAE,CAAA;QAE/C,OAAO,IAAI,CAACS,KAAK,CAAC;YAChB,GAAIN,IAAI;YACRJ,MAAMJ,cAAce,MAAM,GAAG;gBAACZ;aAAI,GAAGA;YACrCL,aAAaN,oBAAoB,IAAI,CAACS,KAAK,EAAE,IAAI,CAACC,OAAO,EAAEN,MAAME;YACjES,YAAY;gBACV,GAAGA,UAAU;gBACbS,oBAAoBP;gBACpBQ,oBAAoB,CAACC,QAAmCA,KAAK,CAACtB,KAAK,KAAKuB;gBACxEC,sBACEd,WACC,CAAA,CAACe,GAAOC,QAAeZ,MAAUC,SAAaY,OAC7CjB,QACE;wBAAE,GAAGe,CAAC;wBAAE,GAAI,OAAOhB,UAAU,aAAaA,MAAMK,MAAMC,WAAWN,KAAK;oBAAE,GACxEiB,QACAZ,MACAC,SACAY,KACF;YACN;YACAjB,SAAS,CAACgB,SAAW,AAACA,MAAgC,CAAC1B,KAAK;QAC9D;IACF;IAEA4B,cACE5B,IAAW,EACX,GAAGC,OASF,EAC2B;QAC5B,MAAM,CAAC,EAAE4B,KAAK,EAAE,GAAG1B,SAAS,GAAG,CAAC,CAAU,CAAC,GAAGF;QAE9C,MAAM,EAAES,OAAO,EAAE,GAAGE,MAAM,GAAGT;QAE7B,MAAM2B,cACJ,OAAOD,UAAU,aACb,CAACf,MAAUC,UAAiB,CAAA;gBAC1BgB,QAAQ;oBACNd,QAAQ;wBACN,CAACjB,KAAK,EAAE;4BAAE6B,OAAO,AAACA,MAA8Cf,MAAMC;wBAAS;oBACjF;gBACF;YACF,CAAA,IACA;YACEgB,QAAQ;gBACNd,QAAQ;oBAAE,CAACjB,KAAK,EAAE6B,QAAQ;wBAAEA;oBAAM,IAAI;gBAAK;YAC7C;QACF;QAEN,OAAO,IAAI,CAACX,KAAK,CAAC;YAChB,GAAIN,IAAI;YACRJ,MAAM;YACNwB,UAAU;YACVf,QAAQa;YACRpB,SAAS,CAACgB,QAAQZ,MAAMC,SAASY;oBAC/B;wBAAA,iBAAA,AAACD,OAAwDK,MAAM,cAA/D,qCAAA,cAAiE,CAAC/B,KAAK;;QAC3E;IACF;IAEAiC,QACEA,OAAgB,EAChB,GAAGhC,OAWF,EACmC;YAY7BE;QAXP,MAAM,CAAC,EAAE+B,MAAM,EAAEF,QAAQ,EAAE,GAAG7B,SAAS,GAAG,CAAC,CAAU,CAAC,GAAGF;QACzD,MAAMM,MACJ,OAAO0B,YAAY,WAAWvC,gBAAgBuC,SAAS,IAAI,CAAC3B,OAAO,IAAI2B;QAEzE,MAAME,aAAa,CAACrB,MAAcC,SAAiBC,cACjDA,YAAY,CAAC;QAEf,OAAO,IAAI,CAACE,KAAK,CAAC;YAChB,GAAIf,OAAO;YACXK,MAAMD;YACNI,YAAY;oBACPR,WAAAA,qBAAAA,+BAAAA,SAASQ,UAAU,AAAtB;gBACAS,oBAAoBe;YACtB;YACAH,UAAUA,qBAAAA,sBAAAA,WAAY,CAAC,CAACE;YACxBxB,SAASwB,SACL,CAACR,QAAQZ,MAAMC,SAASY;gBACtB,MAAMS,eAAeF,OAAOR,QAAQZ,MAAeC,SAASY;gBAC5D,IAAIS,cAAc;oBAChB,IAAIlD,WAAWkD,eAAe;wBAC5B,OAAOA,aAAaC,IAAI,CAAC,CAACC,WAAcA,WAAW,OAAOZ;oBAC5D;oBACA,OAAO;gBACT;gBACA,OAAOA;YACT,IACA,CAACA,SAAWA;QAClB;IACF;IAEAa,OAME,GAAGzB,IAkBF,EACD;YAIsB0B;QAHtB,MAAM,CAACxC,MAAMG,UAAU,CAAC,CAAU,CAAC,GAAGW;QAEtC,MAAM0B,aAAa,IAAI,CAAClC,OAAO,CAACmC,WAAW,CAACC,aAAa,CAAC,IAAI,CAACC,QAAQ;QACvE,MAAMC,cAAc,CAAC,GAACJ,yBAAAA,WAAW7B,UAAU,cAArB6B,6CAAAA,uBAAuBpB,kBAAkB;QAE/D,OAAO,IAAI,CAACyB,WAAW,CAAwB7C,MAAe;YAC5D,GAAGG,OAAO;YACVD,aAAaN,oBACX,IAAI,CAACS,KAAK,EACV,IAAI,CAACC,OAAO,EACZN,MACAG,QAAQD,WAAW;YAErBS,YAAY;gBACV,GAAGR,QAAQQ,UAAU;gBACrBmC,qBAAqB9C;gBACrBoB,oBAAoBwB,eAAe;oBACjC,CAAC5C,KAAe,EAAE;gBACpB;YACF;QACF;IACF;IAEQ+C,aAA4CvC,IAAU,EAAE;QAC9D,OAAO,CAKL,GAAGM;YAoBH,MAAM,CAACd,MAAM,EAAEE,WAAW,EAAE,GAAGC,SAAS,GAAG,CAAC,CAAU,CAAC,GAAGW;YAE1D,OAAO,IAAI,CAACyB,MAAM,CAChBvC,MACA;gBACE,GAAGG,OAAO;gBACVK;YACF;QAEJ;IACF;IAlPAwC,YACEhD,IAAY,EACZM,OAA+C,EAC/CD,KAAa,EACb4C,QAAkB,EAClBC,cAAoE,QAAQ,CAC5E;QACA,KAAK,CAAClD,MAAMM,SAAS,gBAAgB4C;QAlSvC7C,uBAAAA,SAAAA,KAAAA;QACA8C,uBAAAA,kBAAAA,KAAAA;QAEAC,uBAAAA,iBAAgB,IAAI,CAACL,YAAY,CAAC;QAClCM,uBAAAA,eAAc,IAAI,CAACN,YAAY,CAAC;QAChCO,uBAAAA,aAAY,IAAI,CAACP,YAAY,CAAC;QAC9BQ,uBAAAA,YAAW,IAAI,CAACR,YAAY,CAAC;QAC7BS,uBAAAA,gBAAe,IAAI,CAACT,YAAY,CAAC;QACjCU,uBAAAA,qBAAoB,IAAI,CAACV,YAAY,CAAC;YAAC;SAAU;QACjDW,uBAAAA,mBAAkB,IAAI,CAACX,YAAY,CAAC;YAAC;SAAQ;QAC7CY,uBAAAA,iBAAgB,IAAI,CAACZ,YAAY,CAAC;YAAC;SAAM;QACzCa,uBAAAA,gBAAe,IAAI,CAACb,YAAY,CAAC;YAAC;SAAK;QACvCc,uBAAAA,oBAAmB,IAAI,CAACd,YAAY,CAAC;YAAC;SAAS;QAE/Ce,uBAAAA,YASiEA;QAEjEC,uBAAAA,qBAwE4D,SAASA,kBAEnE/D,IAAY,EACZ,EACEgE,OAAO,EACPC,WAAW,EACXC,QAAQC,WAAW,EACnB1D,KAAK,EACLC,OAAO,EACPC,UAAU,EACVyD,UAAU,EACVlE,WAAW,EACX,GAAGC,SAiBJ,EACDkE,oBAAoB,CAAC,CAAC,EACtBC,cAAc,CAAC,CAAC;YAEhB,MAAMlE,gBAAgBT,YAAY,IAAI,CAACU,KAAK,EAAE,IAAI,CAACC,OAAO,EAAEN;gBAChDG;YAAZ,MAAMI,MAAMJ,CAAAA,gBAAAA,QAAQK,IAAI,cAAZL,2BAAAA,gBAAgBT,gBAAgBU,cAAcI,IAAI,EAAE,IAAI,CAACF,OAAO;YAC5E,IAAIiE;YAEJ,MAAMC,eAAelF,mBAAmBc,cAAcI,IAAI,EAAE,IAAI,CAACF,OAAO,EAAE6D;YAC1E,MAAMM,cAAclF,gBAAgBa,cAAcI,IAAI,EAAE,IAAI,CAACF,OAAO,EAAE6D;YAEtE,MAAMO,WAAW,CAAC5D,MAAoD6D;gBACpE,MAAMC,kBAAkBpF,4BAA4B;oBAClDiF;oBACAE;oBACAX;oBACAC;oBACAnD;gBACF;oBAOM;gBALN,MAAM,EACJ+D,OAAOD,gBAAgBC,IAAI,EAC3BC,OAAOF,gBAAgBE,IAAI,EAC3BZ,SAASU,gBAAgBV,MAAM,EAC/B,GAAGa,YACJ,GAAI,CAAC,OAAA,OAAOtE,UAAU,aAAaA,MAAMK,MAAM6D,OAAOlE,mBAAjD,kBAAA,OACJ,CAAC;gBAEH,OAAO;oBACL,GAAGsE,UAAU;oBACb,GAAGH,eAAe;oBAClBC;oBACAC;oBACA,GAAIZ,SAAS;wBAAEA;oBAAO,IAAI,CAAC,CAAC;gBAC9B;YACF;YAEA,MAAMc,kBAAkB3F,YAAY4F,kBAAkB,CACpD1E,KACAH,cAAcI,IAAI,EAClB2D,aACA,IAAI,CAAC7D,OAAO;YAGd,MAAMO,iBAAiB,CACrBC,MACAC,SACAC,aACAkE;oBAsBYC;gBApBZ,MAAMA,SAASnE,YAAY0D,SAAS5D,MAAMC,UAAU;oBAClDqE,SAAS;wBACP,IAAI,CAACb,UAAU;4BACbA,WAAW,IAAI,CAACjE,OAAO,CAACmC,WAAW,CAACC,aAAa,CAACnC,KAAKP,IAAI;wBAC7D;wBACA,OAAOuE;oBACT;oBACAc,OAAO;wBAAC;4BAAC;gCAAErF,MAAM;4BAAQ;yBAAE;wBAAE;4BAAC;gCAAEA,MAAM;4BAAQ;4BAAG;gCAAEA,MAAM;4BAAO;yBAAE;qBAAC;gBACrE;gBAEA,MAAMsF,gBAAgBlB,cAAc,CAAC,CAACc,aAAa;oBAAC;iBAAa;gBACjE,MAAMpD,cAAc,IAAI,CAACxB,OAAO,CAACH,OAAO,CAACoF,MAAM,CAACC,0BAA0B,GACtEL,OAAOtD,KAAK,GACV;oBAAEA,OAAOsD,OAAOtD,KAAK;gBAAC,IACtB,OACF;gBAEJ,OAAO;oBACLZ,QAAQ;wBACN,GAAIqE,gBAAgB;4BAAEvD,QAAQ;gCAAEd,QAAQ;oCAAE,CAACjB,KAAK,EAAE8B;gCAAY;4BAAE;wBAAE,IAAI,CAAC,CAAC;wBACxE,CAAC9B,KAAK,EAAEmF,EAAAA,UAAAA,oBAAAA,8BAAAA,QAAQlE,MAAM,IAClB;4BACE,GAAGkE,MAAM;4BACTlE,QAAQ;gCACN,GAAG+D,eAAe;gCAClB,GAAGG,OAAOlE,MAAM;4BAClB;wBACF,IACAkE;oBACN;gBACF;YACF;YAEA,MAAMM,WAAW,AACf,IAAI,CAGJC,UAAU,CACV;gBACE,GAAGvF,OAAO;gBACVD,aAAaN,oBAAoB,IAAI,CAACS,KAAK,EAAE,IAAI,CAACC,OAAO,EAAEN,MAAME;gBACjES,YAAY;oBACV,GAAGA,UAAU;oBACbS,oBAAoBP;oBACpBQ,oBAAoB,CAACC,QAAmCA,KAAK,CAACtB,KAAK,KAAKuB;oBACxEC,sBACEd,WACC,CAAA,CACCe,GACAC,QACAZ,MACAC,SACAY,OAEAgE,QAAQjF,OAAO,CACbA,QACE;4BACE,GAAGe,CAAC;4BACJ,GAAGiD,SAAS5D,MAAMC,QAAQ;wBAC5B,GACAW,QACAZ,MACAC,SACAY,OAEFU,IAAI,CAAC,CAACuD,SAAWnG,qBAAqBiC,QAAQkE,QAAQ9E,MAAMW,EAAEoD,IAAI,EAAEL,cAAa;gBACzF;gBACAhE,MAAMD;gBACNG,SAAS,CACPgB,QACAZ,MACAC;wBAUE;oBARF,MAAM6D,kBAAkBF,SAAS5D,MAAMC;oBAEvC,OAAOtB,qBACLiC,QACA,AAACA,MAAgC,CAAC1B,KAAK,EACvCc,MACA8D,gBAAgBC,IAAI,EACpBL,eACA,iBAAA,AAAC9C,OAA+CK,MAAM,cAAtD,qCAAA,cAAwD,CAAC/B,KAAK;gBAElE;YACF,GACAqE,6BAA6BlF,YACzBkF,oBACA;gBACE,GAAGA,iBAAiB;gBACpBwB,QAAQzB,aACJ,CACE0B;wBAMG,2BAACzB;2BALA;wBACJD,YAAY0B,EAAEC,GAAG,CAAC;4BAChB/D,UAAU;4BACVtB,SAAS,CAACgB,QAAQZ,MAAMC,UAAYW,OAAO0C,UAAU;wBACvD;4BACG,4BAAA,CAACC,qBAAAA,mBAAsDwB,MAAM,cAA7D,gDAAA,+BAACxB,oBAA+DyB,EAAnE;oBACF;oBACA,AAACzB,kBAA4CwB,MAAM;YACzD,GACJvB;YAGF,OAAOmB;QACT;QAWE,IAAI,CAACpF,KAAK,GAAGA;QACb,IAAI,CAAC8C,cAAc,GAAGF;IACxB;AAwOF;AAEA,SAAS+C,UACPC,MAAe,EACf3F,OAAuE;IAEvE,MAAM4F,sBAAsB5F,QAAQ6F,WAAW;IAE/C,6CAA6C;IAC7C7F,QAAQ6F,WAAW,GAAG,SAASA,YAAYhG,OAAO;QAChD,OAAO+F,oBAAoBE,IAAI,CAAC,IAAI,EAAE;YACpCC,YAAYJ;YACZ,GAAG9F,OAAO;QACZ;IACF;IAEA,OAAOG;AACT;AAEA,SAASwD,SAEPmC,MAAU;IAEV,OAAOD,UACLC,QACA,IAAInG,yBACF,IAAI,CAAC6C,QAAQ,EACb,IAAI,CAACrC,OAAO,EACZ,IAAI,CAACD,KAAK,EACV,IAAI,CAAC8C,cAAc;AAGzB"}
|
package/esm/schema-builder.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import './global-types.js';
|
|
2
2
|
import SchemaBuilder, { brandWithType, completeValue, PothosError } from '@pothos/core';
|
|
3
|
+
import { PrismaInterfaceRef } from './interface-ref.js';
|
|
3
4
|
import { ModelLoader } from './model-loader.js';
|
|
4
5
|
import { PrismaNodeRef } from './node-ref.js';
|
|
5
6
|
import { PrismaObjectRef } from './object-ref.js';
|
|
@@ -37,6 +38,32 @@ schemaBuilderProto.prismaObject = function prismaObject(type, { fields, findUniq
|
|
|
37
38
|
});
|
|
38
39
|
return ref;
|
|
39
40
|
};
|
|
41
|
+
schemaBuilderProto.prismaInterface = function prismaInterface(type, { fields, findUnique, select, include, description, ...options }) {
|
|
42
|
+
const ref = options.variant ? new PrismaInterfaceRef(options.variant, type) : getRefFromModel(type, this, "interface");
|
|
43
|
+
var _options_variant, _ref;
|
|
44
|
+
const name = (_ref = (_options_variant = options.variant) !== null && _options_variant !== void 0 ? _options_variant : options.name) !== null && _ref !== void 0 ? _ref : type;
|
|
45
|
+
const fieldMap = getRelationMap(getDMMF(this)).get(type);
|
|
46
|
+
const idSelection = ModelLoader.getDefaultIDSelection(ref, type, this);
|
|
47
|
+
ref.name = name;
|
|
48
|
+
this.interfaceType(ref, {
|
|
49
|
+
...options,
|
|
50
|
+
description: getModelDescription(type, this, description),
|
|
51
|
+
extensions: {
|
|
52
|
+
...options.extensions,
|
|
53
|
+
pothosPrismaInclude: include,
|
|
54
|
+
pothosPrismaModel: type,
|
|
55
|
+
pothosPrismaFieldMap: fieldMap,
|
|
56
|
+
pothosPrismaSelect: select && {
|
|
57
|
+
...idSelection,
|
|
58
|
+
...select
|
|
59
|
+
},
|
|
60
|
+
pothosPrismaLoader: ModelLoader.forRef(ref, type, findUnique, this)
|
|
61
|
+
},
|
|
62
|
+
name,
|
|
63
|
+
fields: fields ? () => fields(new PrismaObjectFieldBuilder(name, this, type, getRelationMap(getDMMF(this)).get(type), "Interface")) : undefined
|
|
64
|
+
});
|
|
65
|
+
return ref;
|
|
66
|
+
};
|
|
40
67
|
schemaBuilderProto.prismaNode = function prismaNode(type, { id: { field, resolve: rawResolve, ...idOptions }, findUnique: rawFindUnique, name, variant, nullable, ...options }) {
|
|
41
68
|
var _this_nodeInterfaceRef, _this;
|
|
42
69
|
const fieldName = field;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/schema-builder.ts"],"names":["SchemaBuilder","brandWithType","completeValue","PothosError","ModelLoader","PrismaNodeRef","PrismaObjectRef","PrismaObjectFieldBuilder","getDefaultIDParser","getDefaultIDSerializer","getDelegateFromModel","getRefFromModel","getModelDescription","getClient","getDMMF","queryFromInfo","getRelationMap","schemaBuilderProto","prototype","prismaObject","type","fields","findUnique","select","include","description","options","ref","variant","name","fieldMap","get","idSelection","getDefaultIDSelection","objectType","extensions","pothosPrismaInclude","pothosPrismaModel","pothosPrismaFieldMap","pothosPrismaSelect","pothosPrismaLoader","forRef","undefined","prismaNode","id","field","resolve","rawResolve","idOptions","rawFindUnique","nullable","fieldName","interfaceRef","nodeInterfaceRef","idParser","typeName","nodeRef","parent","context","getFindUniqueForField","extendedOptions","interfaces","loadWithoutCache","info","query","delegate","record","findUniqueOrThrow","where","rejectOnNotFound","configStore","addInterfaces","onTypeConfig","nodeConfig","objectField","relayOptions","idFieldName","t","globalID","idFieldOptions","args","associateRefWithName","prismaObjectField","addFields","modelName","prismaObjectFields"],"mappings":"AAAA,OAAO,iBAAiB;AAExB,OAAOA,iBACLC,aAAa,EACbC,aAAa,EAIbC,WAAW,QAEN,eAAe;AACtB,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,aAAa,QAAQ,aAAa;AAC3C,SAASC,eAAe,QAAQ,eAAe;AAC/C,SAASC,wBAAwB,QAAQ,yBAAyB;AAElE,SAASC,kBAAkB,EAAEC,sBAAsB,QAAQ,iBAAiB;AAC5E,SAASC,oBAAoB,EAAEC,eAAe,QAAQ,mBAAmB;AACzE,SAASC,mBAAmB,QAAQ,qBAAqB;AACzD,SAASC,SAAS,EAAEC,OAAO,QAAQ,oBAAoB;AACvD,SAASC,aAAa,QAAQ,mBAAmB;AACjD,SAASC,cAAc,QAAQ,sBAAsB;AAErD,MAAMC,
|
|
1
|
+
{"version":3,"sources":["../src/schema-builder.ts"],"names":["SchemaBuilder","brandWithType","completeValue","PothosError","PrismaInterfaceRef","ModelLoader","PrismaNodeRef","PrismaObjectRef","PrismaObjectFieldBuilder","getDefaultIDParser","getDefaultIDSerializer","getDelegateFromModel","getRefFromModel","getModelDescription","getClient","getDMMF","queryFromInfo","getRelationMap","schemaBuilderProto","prototype","prismaObject","type","fields","findUnique","select","include","description","options","ref","variant","name","fieldMap","get","idSelection","getDefaultIDSelection","objectType","extensions","pothosPrismaInclude","pothosPrismaModel","pothosPrismaFieldMap","pothosPrismaSelect","pothosPrismaLoader","forRef","undefined","prismaInterface","interfaceType","prismaNode","id","field","resolve","rawResolve","idOptions","rawFindUnique","nullable","fieldName","interfaceRef","nodeInterfaceRef","idParser","typeName","nodeRef","parent","context","getFindUniqueForField","extendedOptions","interfaces","loadWithoutCache","info","query","delegate","record","findUniqueOrThrow","where","rejectOnNotFound","configStore","addInterfaces","onTypeConfig","nodeConfig","objectField","relayOptions","idFieldName","t","globalID","idFieldOptions","args","associateRefWithName","prismaObjectField","addFields","modelName","prismaObjectFields"],"mappings":"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"}
|
package/esm/types.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FieldNode, GraphQLResolveInfo } from 'graphql';
|
|
2
2
|
import { FieldKind, FieldMap, FieldNullability, FieldOptionsFromKind, InputFieldMap, InputFieldRef, InputFieldsFromShape, InputShapeFromFields, InterfaceParam, ListResolveValue, MaybePromise, Normalize, ObjectRef, OutputShape, OutputType, SchemaTypes, ShapeFromTypeParam, ShapeWithNullability, typeBrandKey, TypeParam } from '@pothos/core';
|
|
3
|
-
import {
|
|
3
|
+
import { PrismaInterfaceRef, PrismaRef } from './interface-ref.js';
|
|
4
4
|
import type { PrismaObjectFieldBuilder } from './prisma-field-builder.js';
|
|
5
5
|
export interface PrismaDelegate {
|
|
6
6
|
findUniqueOrThrow?: (...args: any[]) => Promise<unknown>;
|
|
@@ -74,6 +74,22 @@ export type PrismaObjectImplementationOptions<Types extends SchemaTypes, Model e
|
|
|
74
74
|
}), Select>;
|
|
75
75
|
};
|
|
76
76
|
export type PrismaObjectTypeOptions<Types extends SchemaTypes, Model extends PrismaModelTypes, Interfaces extends InterfaceParam<Types>[], FindUnique, Include, Select, Shape extends object> = PrismaObjectRefOptions<Types, Model, FindUnique, Include, Select, Shape> & PrismaObjectImplementationOptions<Types, Model, Interfaces, FindUnique, Select, Shape>;
|
|
77
|
+
export type PrismaInterfaceRefOptions<Types extends SchemaTypes, Model extends PrismaModelTypes, FindUnique, Include, Select, Shape extends object> = NameOrVariant & ({
|
|
78
|
+
include?: Include & Model["Include"];
|
|
79
|
+
select?: never;
|
|
80
|
+
findUnique?: FindUnique & (((parent: Shape, context: Types["Context"]) => Model["WhereUnique"]) | null);
|
|
81
|
+
} | {
|
|
82
|
+
select: Model["Select"] & Select;
|
|
83
|
+
include?: never;
|
|
84
|
+
findUnique?: (parent: Shape, context: Types["Context"]) => Model["WhereUnique"];
|
|
85
|
+
});
|
|
86
|
+
export type PrismaInterfaceImplementationOptions<Types extends SchemaTypes, Model extends PrismaModelTypes, Interfaces extends InterfaceParam<Types>[], FindUnique, Select, Shape extends object> = Omit<PothosSchemaTypes.InterfaceTypeOptions<Types, Shape, Interfaces>, "fields" | "description"> & {
|
|
87
|
+
description?: string | false;
|
|
88
|
+
fields?: PrismaObjectFieldsShape<Types, Model, FindUnique extends null ? true : false, Shape & (FindUnique extends null ? {} : {
|
|
89
|
+
[prismaModelName]?: Model["Name"];
|
|
90
|
+
}), Select>;
|
|
91
|
+
};
|
|
92
|
+
export type PrismaInterfaceTypeOptions<Types extends SchemaTypes, Model extends PrismaModelTypes, Interfaces extends InterfaceParam<Types>[], FindUnique, Include, Select, Shape extends object> = PrismaInterfaceRefOptions<Types, Model, FindUnique, Include, Select, Shape> & PrismaInterfaceImplementationOptions<Types, Model, Interfaces, FindUnique, Select, Shape>;
|
|
77
93
|
type NameOrVariant = {
|
|
78
94
|
name?: never;
|
|
79
95
|
variant?: string;
|
|
@@ -127,10 +143,10 @@ export type RelatedFieldOptions<Types extends SchemaTypes, Model extends PrismaM
|
|
|
127
143
|
resolve: (query: QueryFromRelation<Model, Field & keyof Model["Include"]>, parent: Shape, args: InputShapeFromFields<Args>, context: Types["Context"], info: GraphQLResolveInfo) => MaybePromise<ShapeWithNullability<Types, Model["Relations"][Field]["Shape"], Nullable>>;
|
|
128
144
|
}) & {
|
|
129
145
|
description?: string | false;
|
|
130
|
-
type?:
|
|
146
|
+
type?: PrismaRef<TypesForRelation<Types, Model, Field>>;
|
|
131
147
|
query?: QueryForField<Types, Args, Model["Include"][Field & keyof Model["Include"]]>;
|
|
132
148
|
};
|
|
133
|
-
export type VariantFieldOptions<Types extends SchemaTypes, Model extends PrismaModelTypes, Variant extends
|
|
149
|
+
export type VariantFieldOptions<Types extends SchemaTypes, Model extends PrismaModelTypes, Variant extends PrismaRef<Model>, Args extends InputFieldMap, isNull, Shape> = Omit<PothosSchemaTypes.ObjectFieldOptions<Types, Shape, Variant, unknown extends isNull ? false : true, Args, Model["Shape"]>, "resolve" | "type"> & {
|
|
134
150
|
isNull?: isNull & ((parent: Shape, args: InputShapeFromFields<Args>, context: Types["Context"], info: GraphQLResolveInfo) => MaybePromise<boolean>);
|
|
135
151
|
};
|
|
136
152
|
export type RelationCountOptions<Types extends SchemaTypes, Shape, NeedsResolve extends boolean, Where> = Omit<PothosSchemaTypes.ObjectFieldOptions<Types, Shape, "Int", false, {}, number>, "resolve" | "type"> & (NeedsResolve extends false ? {
|
|
@@ -140,20 +156,20 @@ export type RelationCountOptions<Types extends SchemaTypes, Shape, NeedsResolve
|
|
|
140
156
|
where?: Where | ((args: {}, context: Types["Context"]) => Where);
|
|
141
157
|
resolve: (parent: Shape, args: {}, context: Types["Context"], info: GraphQLResolveInfo) => MaybePromise<number>;
|
|
142
158
|
});
|
|
143
|
-
export type PrismaFieldOptions<Types extends SchemaTypes, ParentShape, Type extends
|
|
159
|
+
export type PrismaFieldOptions<Types extends SchemaTypes, ParentShape, Type extends PrismaRef<PrismaModelTypes> | keyof Types["PrismaTypes"] | [
|
|
144
160
|
keyof Types["PrismaTypes"]
|
|
145
161
|
] | [
|
|
146
|
-
|
|
162
|
+
PrismaRef<PrismaModelTypes>
|
|
147
163
|
], Model extends PrismaModelTypes, Param extends TypeParam<Types>, Args extends InputFieldMap, Nullable extends FieldNullability<Param>, ResolveShape, ResolveReturnShape, Kind extends FieldKind = FieldKind> = FieldOptionsFromKind<Types, ParentShape, Param, Nullable, Args, Kind, ResolveShape, ResolveReturnShape> extends infer FieldOptions ? Omit<FieldOptions, "resolve" | "type"> & {
|
|
148
164
|
type: Type;
|
|
149
165
|
resolve: FieldOptions extends {
|
|
150
166
|
resolve?: (parent: infer Parent, ...args: any[]) => unknown;
|
|
151
167
|
} ? PrismaFieldResolver<Types, Model, Parent, Param, Args, Nullable, ResolveReturnShape> : PrismaFieldResolver<Types, Model, ParentShape, Param, Args, Nullable, ResolveReturnShape>;
|
|
152
168
|
} : never;
|
|
153
|
-
export type PrismaFieldWithInputOptions<Types extends SchemaTypes, ParentShape, Kind extends FieldKind, Args extends Record<string, InputFieldRef<unknown, "Arg">>, Fields extends Record<string, InputFieldRef<unknown, "InputObject">>, Type extends
|
|
169
|
+
export type PrismaFieldWithInputOptions<Types extends SchemaTypes, ParentShape, Kind extends FieldKind, Args extends Record<string, InputFieldRef<unknown, "Arg">>, Fields extends Record<string, InputFieldRef<unknown, "InputObject">>, Type extends PrismaRef<PrismaModelTypes> | keyof Types["PrismaTypes"] | [
|
|
154
170
|
keyof Types["PrismaTypes"]
|
|
155
171
|
] | [
|
|
156
|
-
|
|
172
|
+
PrismaRef<PrismaModelTypes>
|
|
157
173
|
], Model extends PrismaModelTypes, Param extends TypeParam<Types>, Nullable extends FieldNullability<Param>, InputName extends string, ResolveShape, ResolveReturnShape, ArgRequired extends boolean> = Omit<PrismaFieldOptions<Types, ParentShape, Type, Model, Param, {
|
|
158
174
|
[K in InputName]: InputFieldRef<InputShapeFromFields<Fields> | (true extends ArgRequired ? never : null | undefined)>;
|
|
159
175
|
} & Args, Nullable, ResolveShape, ResolveReturnShape, Kind>, "args"> & PothosSchemaTypes.FieldWithInputBaseOptions<Types, {
|
|
@@ -169,7 +185,7 @@ export type PrismaFieldResolver<Types extends SchemaTypes, Model extends PrismaM
|
|
|
169
185
|
readonly (infer Item)[] | null | undefined
|
|
170
186
|
]
|
|
171
187
|
] ? ListResolveValue<Shape, Item, ResolveReturnShape> : MaybePromise<Shape> : never;
|
|
172
|
-
export type PrismaConnectionFieldOptions<Types extends SchemaTypes, ParentShape, Type extends
|
|
188
|
+
export type PrismaConnectionFieldOptions<Types extends SchemaTypes, ParentShape, Type extends PrismaRef<PrismaModelTypes> | PrismaInterfaceRef<PrismaModelTypes> | keyof Types["PrismaTypes"], Model extends PrismaModelTypes, Param extends OutputType<Types>, Nullable extends boolean, Args extends InputFieldMap, ResolveReturnShape, Kind extends FieldKind> = Omit<PothosSchemaTypes.ConnectionFieldOptions<Types, ParentShape, Param, Nullable, false, false, Args, ResolveReturnShape>, "resolve" | "type"> & Omit<FieldOptionsFromKind<Types, ParentShape, Param, Nullable, (InputFieldMap extends Args ? {} : Args) & InputFieldsFromShape<PothosSchemaTypes.DefaultConnectionArguments>, Kind, ParentShape, ResolveReturnShape>, "args" | "resolve" | "type"> & (InputShapeFromFields<Args> & PothosSchemaTypes.DefaultConnectionArguments extends infer ConnectionArgs ? {
|
|
173
189
|
type: Type;
|
|
174
190
|
cursor: UniqueFieldsFromWhereUnique<Model["WhereUnique"]>;
|
|
175
191
|
defaultSize?: number | ((args: ConnectionArgs, ctx: Types["Context"]) => number);
|
|
@@ -193,7 +209,7 @@ export type PrismaConnectionFieldOptions<Types extends SchemaTypes, ParentShape,
|
|
|
193
209
|
export type RelatedConnectionOptions<Types extends SchemaTypes, Model extends PrismaModelTypes, Field extends Model["ListRelations"], Nullable extends boolean, Args extends InputFieldMap, NeedsResolve extends boolean> = Omit<PothosSchemaTypes.ObjectFieldOptions<Types, Model["Shape"], ObjectRef<unknown>, Nullable, (InputFieldMap extends Args ? {} : Args) & InputFieldsFromShape<PothosSchemaTypes.DefaultConnectionArguments>, unknown>, "resolve" | "type" | "args" | "description"> & Omit<PothosSchemaTypes.ConnectionFieldOptions<Types, Model["Shape"], ObjectRef<unknown>, false, false, Nullable, Args, unknown>, "resolve" | "type"> & (InputShapeFromFields<Args> & PothosSchemaTypes.DefaultConnectionArguments extends infer ConnectionArgs ? {
|
|
194
210
|
description?: string | false;
|
|
195
211
|
query?: QueryForField<Types, Args, Model["Include"][Field & keyof Model["Include"]]>;
|
|
196
|
-
type?:
|
|
212
|
+
type?: PrismaRef<TypesForRelation<Types, Model, Field>>;
|
|
197
213
|
cursor: CursorFromRelation<Model, Field>;
|
|
198
214
|
defaultSize?: number | ((args: ConnectionArgs, ctx: Types["Context"]) => number);
|
|
199
215
|
maxSize?: number | ((args: ConnectionArgs, ctx: Types["Context"]) => number);
|