@pothos/plugin-prisma 3.36.0 → 3.38.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.
Files changed (83) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +61 -44
  3. package/dts/connection-helpers.d.ts +17 -11
  4. package/dts/connection-helpers.d.ts.map +1 -1
  5. package/dts/index.d.ts +1 -1
  6. package/dts/index.d.ts.map +1 -1
  7. package/dts/prisma-field-builder.d.ts +2 -2
  8. package/dts/prisma-field-builder.d.ts.map +1 -1
  9. package/dts/types.d.ts +30 -30
  10. package/dts/types.d.ts.map +1 -1
  11. package/dts/util/cursors.d.ts +11 -5
  12. package/dts/util/cursors.d.ts.map +1 -1
  13. package/dts/util/relation-map.d.ts +1 -1
  14. package/dts/util/relation-map.d.ts.map +1 -1
  15. package/dts/util/selections.d.ts +1 -1
  16. package/dts/util/selections.d.ts.map +1 -1
  17. package/esm/connection-helpers.d.ts +17 -11
  18. package/esm/connection-helpers.d.ts.map +1 -1
  19. package/esm/connection-helpers.js +34 -2
  20. package/esm/connection-helpers.js.map +1 -1
  21. package/esm/field-builder.js +10 -10
  22. package/esm/field-builder.js.map +1 -1
  23. package/esm/generator.js +86 -74
  24. package/esm/generator.js.map +1 -1
  25. package/esm/index.d.ts +1 -1
  26. package/esm/index.d.ts.map +1 -1
  27. package/esm/index.js +5 -5
  28. package/esm/index.js.map +1 -1
  29. package/esm/model-loader.js +9 -9
  30. package/esm/model-loader.js.map +1 -1
  31. package/esm/prisma-field-builder.d.ts +2 -2
  32. package/esm/prisma-field-builder.d.ts.map +1 -1
  33. package/esm/prisma-field-builder.js +12 -12
  34. package/esm/prisma-field-builder.js.map +1 -1
  35. package/esm/schema-builder.js +13 -13
  36. package/esm/schema-builder.js.map +1 -1
  37. package/esm/types.d.ts +30 -30
  38. package/esm/types.d.ts.map +1 -1
  39. package/esm/util/cursors.d.ts +11 -5
  40. package/esm/util/cursors.d.ts.map +1 -1
  41. package/esm/util/cursors.js +33 -29
  42. package/esm/util/cursors.js.map +1 -1
  43. package/esm/util/get-client.js +2 -2
  44. package/esm/util/get-client.js.map +1 -1
  45. package/esm/util/loader-map.js +2 -2
  46. package/esm/util/loader-map.js.map +1 -1
  47. package/esm/util/map-query.js +24 -24
  48. package/esm/util/map-query.js.map +1 -1
  49. package/esm/util/relation-map.d.ts +1 -1
  50. package/esm/util/relation-map.d.ts.map +1 -1
  51. package/esm/util/selections.d.ts +1 -1
  52. package/esm/util/selections.d.ts.map +1 -1
  53. package/esm/util/selections.js +2 -2
  54. package/esm/util/selections.js.map +1 -1
  55. package/generated.ts +67 -0
  56. package/lib/connection-helpers.js +34 -2
  57. package/lib/connection-helpers.js.map +1 -1
  58. package/lib/field-builder.js +10 -10
  59. package/lib/field-builder.js.map +1 -1
  60. package/lib/generator.js +84 -72
  61. package/lib/generator.js.map +1 -1
  62. package/lib/index.js +5 -5
  63. package/lib/index.js.map +1 -1
  64. package/lib/model-loader.js +9 -9
  65. package/lib/model-loader.js.map +1 -1
  66. package/lib/prisma-field-builder.js +12 -12
  67. package/lib/prisma-field-builder.js.map +1 -1
  68. package/lib/schema-builder.js +13 -13
  69. package/lib/schema-builder.js.map +1 -1
  70. package/lib/util/cursors.js +33 -29
  71. package/lib/util/cursors.js.map +1 -1
  72. package/lib/util/get-client.js +2 -2
  73. package/lib/util/get-client.js.map +1 -1
  74. package/lib/util/loader-map.js +2 -2
  75. package/lib/util/loader-map.js.map +1 -1
  76. package/lib/util/map-query.js +24 -24
  77. package/lib/util/map-query.js.map +1 -1
  78. package/lib/util/selections.js +2 -2
  79. package/lib/util/selections.js.map +1 -1
  80. package/package.json +21 -11
  81. package/src/connection-helpers.ts +62 -5
  82. package/src/generator.ts +215 -193
  83. package/src/util/cursors.ts +8 -1
@@ -12,17 +12,25 @@ _export(exports, {
12
12
  prismaModelKey: ()=>prismaModelKey,
13
13
  prismaConnectionHelpers: ()=>prismaConnectionHelpers
14
14
  });
15
+ const _modelLoader = require("./model-loader");
15
16
  const _cursors = require("./util/cursors");
16
17
  const _datamodel = require("./util/datamodel");
18
+ const _getClient = require("./util/get-client");
19
+ const _relationMap = require("./util/relation-map");
20
+ const _selections = require("./util/selections");
17
21
  const prismaModelKey = Symbol.for('Pothos.prismaModelKey');
18
22
  function prismaConnectionHelpers(builder, refOrType, options) {
19
23
  const modelName = typeof refOrType === 'string' ? refOrType : refOrType.modelName;
24
+ const ref = typeof refOrType === 'string' ? (0, _datamodel.getRefFromModel)(modelName, builder) : refOrType;
20
25
  const formatCursor = (0, _cursors.getCursorFormatter)(modelName, builder, options.cursor);
21
26
  const parseCursor = (0, _cursors.getCursorParser)(modelName, builder, options.cursor);
27
+ const cursorSelection = _modelLoader.ModelLoader.getCursorSelection(ref, modelName, options.cursor, builder);
28
+ const fieldMap = (0, _relationMap.getRelationMap)((0, _getClient.getDMMF)(builder)).get(modelName);
22
29
  function resolve(list, args, ctx) {
23
- return (0, _cursors.wrapConnectionResult)(list, args, getQuery(args, ctx).take, formatCursor);
30
+ var _ref;
31
+ return (0, _cursors.wrapConnectionResult)(list, args, getQueryArgs(args, ctx).take, formatCursor, null, (_ref = options === null || options === void 0 ? void 0 : options.resolveNode) !== null && _ref !== void 0 ? _ref : (edge)=>edge);
24
32
  }
25
- function getQuery(args, ctx) {
33
+ function getQueryArgs(args, ctx) {
26
34
  return (0, _cursors.prismaCursorConnectionQuery)({
27
35
  args,
28
36
  ctx,
@@ -31,9 +39,33 @@ function prismaConnectionHelpers(builder, refOrType, options) {
31
39
  parseCursor
32
40
  });
33
41
  }
42
+ function getQuery(args, ctx, nestedSelection) {
43
+ const nestedSelect = options.select ? {
44
+ select: options.select((sel)=>nestedSelection(sel, [
45
+ 'edges',
46
+ 'node'
47
+ ]))
48
+ } : nestedSelection(true, [
49
+ 'edges',
50
+ 'node'
51
+ ]);
52
+ const selectState = (0, _selections.createState)(fieldMap, 'select');
53
+ (0, _selections.mergeSelection)(selectState, {
54
+ select: cursorSelection
55
+ });
56
+ if (typeof nestedSelect === 'object' && nestedSelect) {
57
+ (0, _selections.mergeSelection)(selectState, nestedSelect);
58
+ }
59
+ return {
60
+ ...getQueryArgs(args, ctx),
61
+ ...(0, _selections.selectionToQuery)(selectState)
62
+ };
63
+ }
64
+ var _options_select;
34
65
  return {
35
66
  ref: typeof refOrType === 'string' ? (0, _datamodel.getRefFromModel)(refOrType, builder) : refOrType,
36
67
  resolve,
68
+ select: (_options_select = options.select) !== null && _options_select !== void 0 ? _options_select : {},
37
69
  getQuery
38
70
  };
39
71
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/connection-helpers.ts"],"names":["prismaModelKey","prismaConnectionHelpers","Symbol","for","builder","refOrType","options","modelName","formatCursor","getCursorFormatter","cursor","parseCursor","getCursorParser","resolve","list","args","ctx","wrapConnectionResult","getQuery","take","prismaCursorConnectionQuery","maxSize","defaultSize","ref","getRefFromModel"],"mappings":"AAAA;;;;;;;;;;;IAWaA,cAAc,MAAdA;IAEGC,uBAAuB,MAAvBA;;yBALT;2BACyB;AAEzB,MAAMD,iBAAiBE,OAAOC,GAAG,CAAC;AAElC,SAASF,wBAQdG,OAA+C,EAC/CC,SAAoB,EACpBC,OAMC,EACD;IACA,MAAMC,YACJ,OAAOF,cAAc,WAAWA,YAAY,AAACA,UAAqCE,SAAS;IAC7F,MAAMC,eAAeC,IAAAA,2BAAkB,EAACF,WAAWH,SAASE,QAAQI,MAAM;IAC1E,MAAMC,cAAcC,IAAAA,wBAAe,EAACL,WAAWH,SAASE,QAAQI,MAAM;IAEtE,SAASG,QACPC,IAAoB,EACpBC,IAAkD,EAClDC,GAAqB,EACrB;QACA,OAAOC,IAAAA,6BAAoB,EAACH,MAAMC,MAAMG,SAASH,MAAMC,KAAKG,IAAI,EAAEX;IACpE;IAEA,SAASU,SAASH,IAAkD,EAAEC,GAAqB,EAAE;QAC3F,OAAOI,IAAAA,oCAA2B,EAAC;YACjCL;YACAC;YACAK,SAAS,OAAOf,QAAQe,OAAO,KAAK,aAAaf,QAAQe,OAAO,CAACN,MAAMC,OAAOV,QAAQe,OAAO;YAC7FC,aACE,OAAOhB,QAAQgB,WAAW,KAAK,aAC3BhB,QAAQgB,WAAW,CAACP,MAAMC,OAC1BV,QAAQgB,WAAW;YACzBX;QACF;IACF;IAEA,OAAO;QACLY,KAAM,OAAOlB,cAAc,WACvBmB,IAAAA,0BAAe,EAACnB,WAAWD,WAC3BC,SAAS;QACbQ;QACAK;IACF;AACF"}
1
+ {"version":3,"sources":["../src/connection-helpers.ts"],"names":["prismaModelKey","prismaConnectionHelpers","Symbol","for","builder","refOrType","options","modelName","ref","getRefFromModel","formatCursor","getCursorFormatter","cursor","parseCursor","getCursorParser","cursorSelection","ModelLoader","getCursorSelection","fieldMap","getRelationMap","getDMMF","get","resolve","list","args","ctx","wrapConnectionResult","getQueryArgs","take","resolveNode","edge","prismaCursorConnectionQuery","maxSize","defaultSize","getQuery","nestedSelection","nestedSelect","select","sel","selectState","createState","mergeSelection","selectionToQuery"],"mappings":"AAAA;;;;;;;;;;;IAeaA,cAAc,MAAdA;IAEGC,uBAAuB,MAAvBA;;6BAhBY;yBAQrB;2BACyB;2BACR;6BACO;4BAC+B;AAEvD,MAAMD,iBAAiBE,OAAOC,GAAG,CAAC;AAElC,SAASF,wBAadG,OAA+C,EAC/CC,SAAoB,EACpBC,OAQC,EACD;IACA,MAAMC,YACJ,OAAOF,cAAc,WAAWA,YAAY,AAACA,UAAqCE,SAAS;IAC7F,MAAMC,MACJ,OAAOH,cAAc,WACjBI,IAAAA,0BAAe,EAACF,WAAWH,WAC1BC,SAAgC;IACvC,MAAMK,eAAeC,IAAAA,2BAAkB,EAACJ,WAAWH,SAASE,QAAQM,MAAM;IAC1E,MAAMC,cAAcC,IAAAA,wBAAe,EAACP,WAAWH,SAASE,QAAQM,MAAM;IACtE,MAAMG,kBAAkBC,wBAAW,CAACC,kBAAkB,CAACT,KAAKD,WAAWD,QAAQM,MAAM,EAAER;IACvF,MAAMc,WAAWC,IAAAA,2BAAc,EAACC,IAAAA,kBAAO,EAAChB,UAAUiB,GAAG,CAACd;IAEtD,SAASe,QACPC,IAAwB,EACxBC,IAAkD,EAClDC,GAAqB,EACrB;YAOE;QANF,OAAOC,IAAAA,6BAAoB,EACzBH,MACAC,MACAG,aAAaH,MAAMC,KAAKG,IAAI,EAC5BlB,cACA,IAAI,EACJ,CAAA,OAACJ,oBAAAA,qBAAAA,KAAAA,IAAAA,QAASuB,WAAW,cAArB,kBAAA,OAAoC,CAACC,OAAkBA,IAAK;IAUhE;IAEA,SAASH,aAAaH,IAAkD,EAAEC,GAAqB,EAAE;QAC/F,OAAOM,IAAAA,oCAA2B,EAAC;YACjCP;YACAC;YACAO,SAAS,OAAO1B,QAAQ0B,OAAO,KAAK,aAAa1B,QAAQ0B,OAAO,CAACR,MAAMC,OAAOnB,QAAQ0B,OAAO;YAC7FC,aACE,OAAO3B,QAAQ2B,WAAW,KAAK,aAC3B3B,QAAQ2B,WAAW,CAACT,MAAMC,OAC1BnB,QAAQ2B,WAAW;YACzBpB;QACF;IACF;IAEA,SAASqB,SACPV,IAAkD,EAClDC,GAAqB,EACrBU,eAA2E,EAC3E;QACA,MAAMC,eAA+C9B,QAAQ+B,MAAM,GAC/D;YAAEA,QAAQ/B,QAAQ+B,MAAM,CAAC,CAACC,MAAQH,gBAAgBG,KAAK;oBAAC;oBAAS;iBAAO;QAAG,IAC3EH,gBAAgB,IAAI,EAAE;YAAC;YAAS;SAAO,CAAC;QAE5C,MAAMI,cAAcC,IAAAA,uBAAW,EAACtB,UAAU;QAE1CuB,IAAAA,0BAAc,EAACF,aAAa;YAAEF,QAAQtB;QAAgB;QAEtD,IAAI,OAAOqB,iBAAiB,YAAYA,cAAc;YACpDK,IAAAA,0BAAc,EAACF,aAAaH;QAC9B,CAAC;QAED,OAAO;YACL,GAAGT,aAAaH,MAAMC,IAAI;YAC1B,GAAGiB,IAAAA,4BAAgB,EAACH,YAAY;QAClC;IAEF;QAOUjC;IALV,OAAO;QACLE,KAAM,OAAOH,cAAc,WACvBI,IAAAA,0BAAe,EAACJ,WAAWD,WAC3BC,SAAS;QACbiB;QACAe,QAAQ/B,CAAAA,kBAAAA,QAAQ+B,MAAM,cAAd/B,6BAAAA,kBAAkB,CAAC,CAAC;QAC5B4B;IACF;AACF"}
@@ -57,16 +57,16 @@ fieldBuilderProto.prismaFieldWithInput = function prismaFieldWithInput({ type ,
57
57
  });
58
58
  };
59
59
  fieldBuilderProto.prismaConnection = function prismaConnection({ type , cursor , maxSize , defaultSize , resolve , totalCount , ...options }, connectionOptions = {}, edgeOptions = {}) {
60
- var ref;
61
- const ref1 = typeof type === 'string' ? (0, _datamodel.getRefFromModel)(type, this.builder) : type;
62
- const typeName = this.builder.configStore.getTypeConfig(ref1).name;
63
- const model = (ref = this.builder.configStore.getTypeConfig(ref1).extensions) === null || ref === void 0 ? void 0 : ref.pothosPrismaModel;
60
+ var _this_builder_configStore_getTypeConfig_extensions;
61
+ const ref = typeof type === 'string' ? (0, _datamodel.getRefFromModel)(type, this.builder) : type;
62
+ const typeName = this.builder.configStore.getTypeConfig(ref).name;
63
+ const model = (_this_builder_configStore_getTypeConfig_extensions = this.builder.configStore.getTypeConfig(ref).extensions) === null || _this_builder_configStore_getTypeConfig_extensions === void 0 ? void 0 : _this_builder_configStore_getTypeConfig_extensions.pothosPrismaModel;
64
64
  const formatCursor = (0, _cursors.getCursorFormatter)(model, this.builder, cursor);
65
65
  const parseCursor = (0, _cursors.getCursorParser)(model, this.builder, cursor);
66
- const cursorSelection = _modelLoader.ModelLoader.getCursorSelection(ref1, model, cursor, this.builder);
66
+ const cursorSelection = _modelLoader.ModelLoader.getCursorSelection(ref, model, cursor, this.builder);
67
67
  const fieldRef = this.connection({
68
68
  ...options,
69
- type: ref1,
69
+ type: ref,
70
70
  resolve: (parent, args, context, info)=>(0, _cursors.resolvePrismaCursorConnection)({
71
71
  query: (0, _mapQuery.queryFromInfo)({
72
72
  context,
@@ -88,16 +88,16 @@ fieldBuilderProto.prismaConnection = function prismaConnection({ type , cursor ,
88
88
  }, connectionOptions instanceof _core.ObjectRef ? connectionOptions : {
89
89
  ...connectionOptions,
90
90
  fields: totalCount ? (t)=>{
91
- var ref;
91
+ var _connectionOptions_fields;
92
92
  return {
93
93
  totalCount: t.int({
94
94
  nullable: false,
95
95
  resolve: (parent, args, context)=>{
96
- var ref;
97
- return (ref = parent.totalCount) === null || ref === void 0 ? void 0 : ref.call(parent);
96
+ var _parent_totalCount;
97
+ return (_parent_totalCount = parent.totalCount) === null || _parent_totalCount === void 0 ? void 0 : _parent_totalCount.call(parent);
98
98
  }
99
99
  }),
100
- ...(ref = connectionOptions.fields) === null || ref === void 0 ? void 0 : ref.call(connectionOptions, t)
100
+ ...(_connectionOptions_fields = connectionOptions.fields) === null || _connectionOptions_fields === void 0 ? void 0 : _connectionOptions_fields.call(connectionOptions, t)
101
101
  };
102
102
  } : connectionOptions.fields,
103
103
  extensions: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/field-builder.ts"],"names":["fieldBuilderProto","RootFieldBuilder","prototype","prismaField","type","resolve","options","modelOrRef","Array","isArray","typeRef","getRefFromModel","builder","typeParam","field","parent","args","context","info","query","queryFromInfo","prismaFieldWithInput","fieldWithInput","prismaConnection","cursor","maxSize","defaultSize","totalCount","connectionOptions","edgeOptions","ref","typeName","configStore","getTypeConfig","name","model","extensions","pothosPrismaModel","formatCursor","getCursorFormatter","parseCursor","getCursorParser","cursorSelection","ModelLoader","getCursorSelection","fieldRef","connection","resolvePrismaCursorConnection","select","path","ctx","ObjectRef","fields","t","int","nullable"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/field-builder.ts"],"names":["fieldBuilderProto","RootFieldBuilder","prototype","prismaField","type","resolve","options","modelOrRef","Array","isArray","typeRef","getRefFromModel","builder","typeParam","field","parent","args","context","info","query","queryFromInfo","prismaFieldWithInput","fieldWithInput","prismaConnection","cursor","maxSize","defaultSize","totalCount","connectionOptions","edgeOptions","ref","typeName","configStore","getTypeConfig","name","model","extensions","pothosPrismaModel","formatCursor","getCursorFormatter","parseCursor","getCursorParser","cursorSelection","ModelLoader","getCursorSelection","fieldRef","connection","resolvePrismaCursorConnection","select","path","ctx","ObjectRef","fields","t","int","nullable"],"mappings":"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"}
package/lib/generator.js CHANGED
@@ -72,83 +72,95 @@ const defaultOutput = (0, _path.resolve)(__dirname, '../generated.ts');
72
72
  defaultOutput
73
73
  }),
74
74
  onGenerate: async (options)=>{
75
+ var _options_generator_output;
75
76
  checkTSVersion();
76
77
  const config = options.generator.config;
77
- var _clientOutput;
78
- const prismaLocation = (_clientOutput = config.clientOutput) !== null && _clientOutput !== void 0 ? _clientOutput : options.otherGenerators.find((gen)=>gen.provider.value === 'prisma-client-js').output.value;
79
- const importStatement = _typescript.default.factory.createImportDeclaration([], [], _typescript.default.factory.createImportClause(true, undefined, _typescript.default.factory.createNamedImports([
80
- _typescript.default.factory.createImportSpecifier(false, undefined, _typescript.default.factory.createIdentifier('Prisma')),
81
- ...options.dmmf.datamodel.models.map((model)=>_typescript.default.factory.createImportSpecifier(false, undefined, _typescript.default.factory.createIdentifier(model.name)))
82
- ])), _typescript.default.factory.createStringLiteral(prismaLocation));
83
- function getOrderByTypeName(type) {
84
- var ref;
85
- const possibleTypes = [
86
- `${type}OrderByWithRelationInput`,
87
- `${type}OrderByWithRelationAndSearchRelevanceInput`
88
- ];
89
- const orderBy = (ref = options.dmmf.schema.inputObjectTypes.prisma) === null || ref === void 0 ? void 0 : ref.find((inputType)=>possibleTypes.includes(inputType.name));
90
- if (!orderBy) {
91
- return possibleTypes[0];
92
- }
93
- return orderBy.name;
78
+ var _config_clientOutput;
79
+ const prismaLocation = (_config_clientOutput = config.clientOutput) !== null && _config_clientOutput !== void 0 ? _config_clientOutput : options.otherGenerators.find((gen)=>gen.provider.value === 'prisma-client-js').output.value;
80
+ var _options_generator_output_value;
81
+ const outputLocation = (_options_generator_output_value = (_options_generator_output = options.generator.output) === null || _options_generator_output === void 0 ? void 0 : _options_generator_output.value) !== null && _options_generator_output_value !== void 0 ? _options_generator_output_value : defaultOutput;
82
+ const prismaTypes = buildTypes(options.dmmf);
83
+ await generateOutput(options.dmmf, prismaTypes, prismaLocation, outputLocation);
84
+ if (outputLocation === defaultOutput) {
85
+ await generateOutput(options.dmmf, prismaTypes, prismaLocation.replace('../', '../../'), outputLocation.replace('/generated.ts', '/esm/generated.ts'));
94
86
  }
95
- const modelTypes = options.dmmf.datamodel.models.map((model)=>{
96
- const relations = model.fields.filter((field)=>!!field.relationName);
97
- const listRelations = model.fields.filter((field)=>!!field.relationName && field.isList);
98
- return _typescript.default.factory.createPropertySignature([], model.name, undefined, _typescript.default.factory.createTypeLiteralNode([
99
- _typescript.default.factory.createPropertySignature([], 'Name', undefined, _typescript.default.factory.createLiteralTypeNode(_typescript.default.factory.createStringLiteral(model.name))),
100
- _typescript.default.factory.createPropertySignature([], 'Shape', undefined, _typescript.default.factory.createTypeReferenceNode(model.name)),
101
- _typescript.default.factory.createPropertySignature([], 'Include', undefined, relations.length > 0 ? _typescript.default.factory.createTypeReferenceNode(`Prisma.${model.name}Include`) : _typescript.default.factory.createTypeReferenceNode('never')),
102
- _typescript.default.factory.createPropertySignature([], 'Select', undefined, _typescript.default.factory.createTypeReferenceNode(`Prisma.${model.name}Select`)),
103
- _typescript.default.factory.createPropertySignature([], 'OrderBy', undefined, _typescript.default.factory.createTypeReferenceNode(`Prisma.${getOrderByTypeName(model.name)}`)),
104
- _typescript.default.factory.createPropertySignature([], 'WhereUnique', undefined, _typescript.default.factory.createTypeReferenceNode(`Prisma.${model.name}WhereUniqueInput`)),
105
- _typescript.default.factory.createPropertySignature([], 'Where', undefined, _typescript.default.factory.createTypeReferenceNode(`Prisma.${model.name}WhereInput`)),
106
- _typescript.default.factory.createPropertySignature([], 'RelationName', undefined, relations.length > 0 ? _typescript.default.factory.createUnionTypeNode(relations.map((field)=>_typescript.default.factory.createLiteralTypeNode(_typescript.default.factory.createStringLiteral(field.name)))) : _typescript.default.factory.createTypeReferenceNode('never')),
107
- _typescript.default.factory.createPropertySignature([], 'ListRelations', undefined, listRelations.length > 0 ? _typescript.default.factory.createUnionTypeNode(listRelations.map((field)=>_typescript.default.factory.createLiteralTypeNode(_typescript.default.factory.createStringLiteral(field.name)))) : _typescript.default.factory.createTypeReferenceNode('never')),
108
- _typescript.default.factory.createPropertySignature([], 'Relations', undefined, _typescript.default.factory.createTypeLiteralNode(relations.map((field)=>{
109
- const typeName = field.type;
110
- return _typescript.default.factory.createPropertySignature([], field.name, undefined, _typescript.default.factory.createTypeLiteralNode([
111
- _typescript.default.factory.createPropertySignature([], 'Shape', undefined, field.isList ? _typescript.default.factory.createArrayTypeNode(_typescript.default.factory.createTypeReferenceNode(typeName)) : field.isRequired ? _typescript.default.factory.createTypeReferenceNode(typeName) : _typescript.default.factory.createUnionTypeNode([
112
- _typescript.default.factory.createTypeReferenceNode(typeName),
113
- _typescript.default.factory.createLiteralTypeNode(_typescript.default.factory.createNull())
114
- ])),
115
- _typescript.default.factory.createPropertySignature([], 'Types', undefined, _typescript.default.factory.createIndexedAccessTypeNode(_typescript.default.factory.createTypeReferenceNode('PrismaTypes'), _typescript.default.factory.createLiteralTypeNode(_typescript.default.factory.createStringLiteral(typeName))))
116
- ]));
117
- })))
118
- ]));
119
- });
120
- const prismaTypes = _typescript.default.factory.createInterfaceDeclaration([], [
121
- _typescript.default.factory.createModifier(_typescript.SyntaxKind.ExportKeyword),
122
- _typescript.default.factory.createModifier(_typescript.SyntaxKind.DefaultKeyword)
123
- ], 'PrismaTypes', [], [], modelTypes);
124
- const printer = _typescript.default.createPrinter({});
125
- const sourcefile = _typescript.default.createSourceFile(options.generator.output.value, '', _typescript.ScriptTarget.ESNext, false, _typescript.ScriptKind.TS);
126
- const nodes = _typescript.default.factory.createNodeArray([
127
- importStatement,
128
- prismaTypes
129
- ]);
130
- const result = printer.printList(_typescript.ListFormat.SourceFileStatements, nodes, sourcefile);
131
- await new Promise((resolve, reject)=>{
132
- (0, _fs.mkdir)((0, _path.dirname)(sourcefile.fileName), {
133
- recursive: true
134
- }, (err)=>{
135
- if (err) {
136
- reject(err);
137
- } else {
138
- resolve();
139
- }
140
- });
87
+ }
88
+ });
89
+ async function generateOutput(dmmf, prismaTypes, prismaLocation, outputLocation) {
90
+ const importStatement = _typescript.default.factory.createImportDeclaration([], [], _typescript.default.factory.createImportClause(true, undefined, _typescript.default.factory.createNamedImports([
91
+ _typescript.default.factory.createImportSpecifier(false, undefined, _typescript.default.factory.createIdentifier('Prisma')),
92
+ ...dmmf.datamodel.models.map((model)=>_typescript.default.factory.createImportSpecifier(false, undefined, _typescript.default.factory.createIdentifier(model.name)))
93
+ ])), _typescript.default.factory.createStringLiteral(prismaLocation));
94
+ const printer = _typescript.default.createPrinter({});
95
+ const sourcefile = _typescript.default.createSourceFile(outputLocation, '', _typescript.ScriptTarget.ESNext, false, _typescript.ScriptKind.TS);
96
+ const nodes = _typescript.default.factory.createNodeArray([
97
+ importStatement,
98
+ prismaTypes
99
+ ]);
100
+ const result = printer.printList(_typescript.ListFormat.SourceFileStatements, nodes, sourcefile);
101
+ await new Promise((resolve, reject)=>{
102
+ (0, _fs.mkdir)((0, _path.dirname)(sourcefile.fileName), {
103
+ recursive: true
104
+ }, (err)=>{
105
+ if (err) {
106
+ reject(err);
107
+ } else {
108
+ resolve();
109
+ }
141
110
  });
142
- return new Promise((resolve, reject)=>{
143
- (0, _fs.writeFile)(sourcefile.fileName, `/* eslint-disable */\n${result}`, (err)=>{
144
- if (err) {
145
- reject(err);
146
- } else {
147
- resolve();
148
- }
149
- });
111
+ });
112
+ return new Promise((resolve, reject)=>{
113
+ (0, _fs.writeFile)(sourcefile.fileName, `/* eslint-disable */\n${result}`, (err)=>{
114
+ if (err) {
115
+ reject(err);
116
+ } else {
117
+ resolve();
118
+ }
150
119
  });
120
+ });
121
+ }
122
+ function buildTypes(dmmf) {
123
+ function getOrderByTypeName(type) {
124
+ var _dmmf_schema_inputObjectTypes_prisma;
125
+ const possibleTypes = [
126
+ `${type}OrderByWithRelationInput`,
127
+ `${type}OrderByWithRelationAndSearchRelevanceInput`
128
+ ];
129
+ const orderBy = (_dmmf_schema_inputObjectTypes_prisma = dmmf.schema.inputObjectTypes.prisma) === null || _dmmf_schema_inputObjectTypes_prisma === void 0 ? void 0 : _dmmf_schema_inputObjectTypes_prisma.find((inputType)=>possibleTypes.includes(inputType.name));
130
+ if (!orderBy) {
131
+ return possibleTypes[0];
132
+ }
133
+ return orderBy.name;
151
134
  }
152
- });
135
+ const modelTypes = dmmf.datamodel.models.map((model)=>{
136
+ const relations = model.fields.filter((field)=>!!field.relationName);
137
+ const listRelations = model.fields.filter((field)=>!!field.relationName && field.isList);
138
+ return _typescript.default.factory.createPropertySignature([], model.name, undefined, _typescript.default.factory.createTypeLiteralNode([
139
+ _typescript.default.factory.createPropertySignature([], 'Name', undefined, _typescript.default.factory.createLiteralTypeNode(_typescript.default.factory.createStringLiteral(model.name))),
140
+ _typescript.default.factory.createPropertySignature([], 'Shape', undefined, _typescript.default.factory.createTypeReferenceNode(model.name)),
141
+ _typescript.default.factory.createPropertySignature([], 'Include', undefined, relations.length > 0 ? _typescript.default.factory.createTypeReferenceNode(`Prisma.${model.name}Include`) : _typescript.default.factory.createTypeReferenceNode('never')),
142
+ _typescript.default.factory.createPropertySignature([], 'Select', undefined, _typescript.default.factory.createTypeReferenceNode(`Prisma.${model.name}Select`)),
143
+ _typescript.default.factory.createPropertySignature([], 'OrderBy', undefined, _typescript.default.factory.createTypeReferenceNode(`Prisma.${getOrderByTypeName(model.name)}`)),
144
+ _typescript.default.factory.createPropertySignature([], 'WhereUnique', undefined, _typescript.default.factory.createTypeReferenceNode(`Prisma.${model.name}WhereUniqueInput`)),
145
+ _typescript.default.factory.createPropertySignature([], 'Where', undefined, _typescript.default.factory.createTypeReferenceNode(`Prisma.${model.name}WhereInput`)),
146
+ _typescript.default.factory.createPropertySignature([], 'RelationName', undefined, relations.length > 0 ? _typescript.default.factory.createUnionTypeNode(relations.map((field)=>_typescript.default.factory.createLiteralTypeNode(_typescript.default.factory.createStringLiteral(field.name)))) : _typescript.default.factory.createTypeReferenceNode('never')),
147
+ _typescript.default.factory.createPropertySignature([], 'ListRelations', undefined, listRelations.length > 0 ? _typescript.default.factory.createUnionTypeNode(listRelations.map((field)=>_typescript.default.factory.createLiteralTypeNode(_typescript.default.factory.createStringLiteral(field.name)))) : _typescript.default.factory.createTypeReferenceNode('never')),
148
+ _typescript.default.factory.createPropertySignature([], 'Relations', undefined, _typescript.default.factory.createTypeLiteralNode(relations.map((field)=>{
149
+ const typeName = field.type;
150
+ return _typescript.default.factory.createPropertySignature([], field.name, undefined, _typescript.default.factory.createTypeLiteralNode([
151
+ _typescript.default.factory.createPropertySignature([], 'Shape', undefined, field.isList ? _typescript.default.factory.createArrayTypeNode(_typescript.default.factory.createTypeReferenceNode(typeName)) : field.isRequired ? _typescript.default.factory.createTypeReferenceNode(typeName) : _typescript.default.factory.createUnionTypeNode([
152
+ _typescript.default.factory.createTypeReferenceNode(typeName),
153
+ _typescript.default.factory.createLiteralTypeNode(_typescript.default.factory.createNull())
154
+ ])),
155
+ _typescript.default.factory.createPropertySignature([], 'Types', undefined, _typescript.default.factory.createIndexedAccessTypeNode(_typescript.default.factory.createTypeReferenceNode('PrismaTypes'), _typescript.default.factory.createLiteralTypeNode(_typescript.default.factory.createStringLiteral(typeName))))
156
+ ]));
157
+ })))
158
+ ]));
159
+ });
160
+ return _typescript.default.factory.createInterfaceDeclaration([], [
161
+ _typescript.default.factory.createModifier(_typescript.SyntaxKind.ExportKeyword),
162
+ _typescript.default.factory.createModifier(_typescript.SyntaxKind.DefaultKeyword)
163
+ ], 'PrismaTypes', [], [], modelTypes);
164
+ }
153
165
 
154
166
  //# sourceMappingURL=generator.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/generator.ts"],"names":["MIN_TS_VERSION","checkTSVersion","versionParts","version","split","i","part","Number","parseInt","Error","join","defaultOutput","resolvePath","__dirname","generatorHandler","onManifest","prettyName","requiresGenerators","onGenerate","options","config","generator","prismaLocation","clientOutput","otherGenerators","find","gen","provider","value","output","importStatement","ts","factory","createImportDeclaration","createImportClause","undefined","createNamedImports","createImportSpecifier","createIdentifier","dmmf","datamodel","models","map","model","name","createStringLiteral","getOrderByTypeName","type","possibleTypes","orderBy","schema","inputObjectTypes","prisma","inputType","includes","modelTypes","relations","fields","filter","field","relationName","listRelations","isList","createPropertySignature","createTypeLiteralNode","createLiteralTypeNode","createTypeReferenceNode","length","createUnionTypeNode","typeName","createArrayTypeNode","isRequired","createNull","createIndexedAccessTypeNode","prismaTypes","createInterfaceDeclaration","createModifier","SyntaxKind","ExportKeyword","DefaultKeyword","printer","createPrinter","sourcefile","createSourceFile","ScriptTarget","ESNext","ScriptKind","TS","nodes","createNodeArray","result","printList","ListFormat","SourceFileStatements","Promise","resolve","reject","mkdir","dirname","fileName","recursive","err","writeFile"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/generator.ts"],"names":["MIN_TS_VERSION","checkTSVersion","versionParts","version","split","i","part","Number","parseInt","Error","join","defaultOutput","resolvePath","__dirname","generatorHandler","onManifest","prettyName","requiresGenerators","onGenerate","options","config","generator","prismaLocation","clientOutput","otherGenerators","find","gen","provider","value","output","outputLocation","prismaTypes","buildTypes","dmmf","generateOutput","replace","importStatement","ts","factory","createImportDeclaration","createImportClause","undefined","createNamedImports","createImportSpecifier","createIdentifier","datamodel","models","map","model","name","createStringLiteral","printer","createPrinter","sourcefile","createSourceFile","ScriptTarget","ESNext","ScriptKind","TS","nodes","createNodeArray","result","printList","ListFormat","SourceFileStatements","Promise","resolve","reject","mkdir","dirname","fileName","recursive","err","writeFile","getOrderByTypeName","type","possibleTypes","orderBy","schema","inputObjectTypes","prisma","inputType","includes","modelTypes","relations","fields","filter","field","relationName","listRelations","isList","createPropertySignature","createTypeLiteralNode","createLiteralTypeNode","createTypeReferenceNode","length","createUnionTypeNode","typeName","createArrayTypeNode","isRequired","createNull","createIndexedAccessTypeNode","createInterfaceDeclaration","createModifier","SyntaxKind","ExportKeyword","DefaultKeyword"],"mappings":"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"}
package/lib/index.js CHANGED
@@ -97,14 +97,14 @@ class PrismaPlugin extends _core.BasePlugin {
97
97
  return fieldConfig;
98
98
  }
99
99
  wrapResolve(resolver, fieldConfig) {
100
- var ref, ref1, ref2, ref3;
101
- if (fieldConfig.kind !== 'PrismaObject' || !((ref = fieldConfig.extensions) === null || ref === void 0 ? void 0 : ref.pothosPrismaSelect)) {
100
+ var _fieldConfig_extensions, _fieldConfig_extensions1, _parentConfig_extensions, _fieldConfig_extensions2;
101
+ if (fieldConfig.kind !== 'PrismaObject' || !((_fieldConfig_extensions = fieldConfig.extensions) === null || _fieldConfig_extensions === void 0 ? void 0 : _fieldConfig_extensions.pothosPrismaSelect)) {
102
102
  return resolver;
103
103
  }
104
104
  const parentConfig = this.buildCache.getTypeConfig(fieldConfig.parentType, 'Object');
105
- const loadedCheck = (ref1 = fieldConfig.extensions) === null || ref1 === void 0 ? void 0 : ref1.pothosPrismaLoaded;
106
- const loaderCache = (ref2 = parentConfig.extensions) === null || ref2 === void 0 ? void 0 : ref2.pothosPrismaLoader;
107
- const fallback = (ref3 = fieldConfig.extensions) === null || ref3 === void 0 ? void 0 : ref3.pothosPrismaFallback;
105
+ const loadedCheck = (_fieldConfig_extensions1 = fieldConfig.extensions) === null || _fieldConfig_extensions1 === void 0 ? void 0 : _fieldConfig_extensions1.pothosPrismaLoaded;
106
+ const loaderCache = (_parentConfig_extensions = parentConfig.extensions) === null || _parentConfig_extensions === void 0 ? void 0 : _parentConfig_extensions.pothosPrismaLoader;
107
+ const fallback = (_fieldConfig_extensions2 = fieldConfig.extensions) === null || _fieldConfig_extensions2 === void 0 ? void 0 : _fieldConfig_extensions2.pothosPrismaFallback;
108
108
  return (parent, args, context, info)=>{
109
109
  const mapping = (0, _loaderMap.getLoaderMapping)(context, info.path, info.parentType.name);
110
110
  if ((!loadedCheck || loadedCheck(parent)) && mapping) {
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":["prismaConnectionHelpers","PrismaNodeRef","PrismaObjectRef","queryFromInfo","ObjectFieldBuilder","PrismaPlugin","pluginName","InternalPrismaObjectFieldBuilder","BasePlugin","onOutputFieldConfig","fieldConfig","kind","pothosOptions","select","extensions","pothosPrismaSelect","args","ctx","nestedQuery","wrapResolve","resolver","parentConfig","buildCache","getTypeConfig","parentType","loadedCheck","pothosPrismaLoaded","loaderCache","pothosPrismaLoader","fallback","pothosPrismaFallback","parent","context","info","mapping","getLoaderMapping","path","name","setLoaderMappings","selectionState","selectionStateFromInfo","loadSelection","then","result","mappings","key","constructor","cache","SchemaBuilder","registerPlugin"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/index.ts"],"names":["prismaConnectionHelpers","PrismaNodeRef","PrismaObjectRef","queryFromInfo","ObjectFieldBuilder","PrismaPlugin","pluginName","InternalPrismaObjectFieldBuilder","BasePlugin","onOutputFieldConfig","fieldConfig","kind","pothosOptions","select","extensions","pothosPrismaSelect","args","ctx","nestedQuery","wrapResolve","resolver","parentConfig","buildCache","getTypeConfig","parentType","loadedCheck","pothosPrismaLoaded","loaderCache","pothosPrismaLoader","fallback","pothosPrismaFallback","parent","context","info","mapping","getLoaderMapping","path","name","setLoaderMappings","selectionState","selectionStateFromInfo","loadSelection","then","result","mappings","key","constructor","cache","SchemaBuilder","registerPlugin"],"mappings":"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"}
@@ -39,8 +39,8 @@ class ModelLoader {
39
39
  const uniqueField = model.fields.find((field)=>field.isRequired && field.isUnique);
40
40
  const uniqueIndex = model.uniqueIndexes.find((idx)=>{
41
41
  return idx.fields.every((field)=>{
42
- var ref;
43
- return (ref = model.fields.find((f)=>f.name === field)) === null || ref === void 0 ? void 0 : ref.isRequired;
42
+ var _model_fields_find;
43
+ return (_model_fields_find = model.fields.find((f)=>f.name === field)) === null || _model_fields_find === void 0 ? void 0 : _model_fields_find.isRequired;
44
44
  });
45
45
  });
46
46
  let findBy;
@@ -83,11 +83,11 @@ class ModelLoader {
83
83
  [field.name]: true
84
84
  };
85
85
  }
86
- var _name;
86
+ var _idx_name;
87
87
  const index = [
88
88
  model.primaryKey,
89
89
  ...model.uniqueIndexes
90
- ].filter(Boolean).find((idx)=>((_name = idx.name) !== null && _name !== void 0 ? _name : idx.fields.join('_')) === cursor);
90
+ ].filter(Boolean).find((idx)=>((_idx_name = idx.name) !== null && _idx_name !== void 0 ? _idx_name : idx.fields.join('_')) === cursor);
91
91
  if (!index) {
92
92
  throw new Error(`Can't find "${cursor}" field or index for ${ref.name}`);
93
93
  }
@@ -98,15 +98,15 @@ class ModelLoader {
98
98
  return selection;
99
99
  }
100
100
  static getFindUniqueForField(ref, modelName, fieldName, builder) {
101
- var ref1, ref2;
101
+ var _model_primaryKey, _model_primaryKey1;
102
102
  const model = (0, _datamodel.getModel)(modelName, builder);
103
- var _name;
104
- const uniqueIndex = model.uniqueIndexes.find((idx)=>((_name = idx.name) !== null && _name !== void 0 ? _name : idx.fields.join('_')) === fieldName);
103
+ var _idx_name;
104
+ const uniqueIndex = model.uniqueIndexes.find((idx)=>((_idx_name = idx.name) !== null && _idx_name !== void 0 ? _idx_name : idx.fields.join('_')) === fieldName);
105
105
  let findBy;
106
- var ref3;
106
+ var _model_primaryKey_name;
107
107
  if (model.fields.some((field)=>field.name === fieldName)) {
108
108
  findBy = fieldName;
109
- } else if (model.primaryKey && ((ref3 = (ref1 = model.primaryKey) === null || ref1 === void 0 ? void 0 : ref1.name) !== null && ref3 !== void 0 ? ref3 : (ref2 = model.primaryKey) === null || ref2 === void 0 ? void 0 : ref2.fields.join('_')) === fieldName) {
109
+ } else if (model.primaryKey && ((_model_primaryKey_name = (_model_primaryKey = model.primaryKey) === null || _model_primaryKey === void 0 ? void 0 : _model_primaryKey.name) !== null && _model_primaryKey_name !== void 0 ? _model_primaryKey_name : (_model_primaryKey1 = model.primaryKey) === null || _model_primaryKey1 === void 0 ? void 0 : _model_primaryKey1.fields.join('_')) === fieldName) {
110
110
  findBy = model.primaryKey;
111
111
  } else if (uniqueIndex) {
112
112
  findBy = uniqueIndex;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/model-loader.ts"],"names":["ModelLoader","forRef","ref","modelName","findUnique","builder","createContextCache","model","Error","name","getDefaultFindUnique","getFindUnique","findBy","parent","fields","primaryKeyName","primaryKey","key","join","getDefaultFindBy","getModel","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","selectionToQuery","entry","staged","selectionCompatible","state","mergeSelection","promise","initLoad","Promise","resolve","then","delete","delegate","getDelegateFromModel","getClient","findUniqueOrThrow","where","rejectOnNotFound","add","constructor","Set"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/model-loader.ts"],"names":["ModelLoader","forRef","ref","modelName","findUnique","builder","createContextCache","model","Error","name","getDefaultFindUnique","getFindUnique","findBy","parent","fields","primaryKeyName","primaryKey","key","join","getDefaultFindBy","getModel","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","selectionToQuery","entry","staged","selectionCompatible","state","mergeSelection","promise","initLoad","Promise","resolve","then","delete","delegate","getDelegateFromModel","getClient","findUniqueOrThrow","where","rejectOnNotFound","add","constructor","Set"],"mappings":"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"}
@@ -17,8 +17,8 @@ class PrismaObjectFieldBuilder extends RootBuilder {
17
17
  relation(name, ...allArgs) {
18
18
  const [{ description , ...options } = {}] = allArgs;
19
19
  const relationField = (0, _datamodel.getRelation)(this.model, this.builder, name);
20
- var _type;
21
- const ref = (_type = options.type) !== null && _type !== void 0 ? _type : (0, _datamodel.getRefFromModel)(relationField.type, this.builder);
20
+ var _options_type;
21
+ const ref = (_options_type = options.type) !== null && _options_type !== void 0 ? _options_type : (0, _datamodel.getRefFromModel)(relationField.type, this.builder);
22
22
  const { query ={} , resolve , extensions , ...rest } = options;
23
23
  const relationSelect = (args, context, nestedQuery)=>({
24
24
  select: {
@@ -69,8 +69,8 @@ class PrismaObjectFieldBuilder extends RootBuilder {
69
69
  nullable: false,
70
70
  select: countSelect,
71
71
  resolve: (parent, args, context, info)=>{
72
- var ref;
73
- return (ref = parent._count) === null || ref === void 0 ? void 0 : ref[name];
72
+ var _parent__count;
73
+ return (_parent__count = parent._count) === null || _parent__count === void 0 ? void 0 : _parent__count[name];
74
74
  }
75
75
  });
76
76
  }
@@ -99,10 +99,10 @@ class PrismaObjectFieldBuilder extends RootBuilder {
99
99
  });
100
100
  }
101
101
  expose(...args) {
102
- var ref;
102
+ var _typeConfig_extensions;
103
103
  const [name, options = {}] = args;
104
104
  const typeConfig = this.builder.configStore.getTypeConfig(this.typename, 'Object');
105
- const usingSelect = !!((ref = typeConfig.extensions) === null || ref === void 0 ? void 0 : ref.pothosPrismaSelect);
105
+ const usingSelect = !!((_typeConfig_extensions = typeConfig.extensions) === null || _typeConfig_extensions === void 0 ? void 0 : _typeConfig_extensions.pothosPrismaSelect);
106
106
  return this.exposeField(name, {
107
107
  ...options,
108
108
  extensions: {
@@ -149,8 +149,8 @@ class PrismaObjectFieldBuilder extends RootBuilder {
149
149
  this.withAuth = withAuth;
150
150
  this.relatedConnection = function relatedConnection(name, { maxSize , defaultSize , cursor , query , resolve , extensions , totalCount , description , ...options }, connectionOptions = {}, edgeOptions = {}) {
151
151
  const relationField = (0, _datamodel.getRelation)(this.model, this.builder, name);
152
- var _type;
153
- const ref = (_type = options.type) !== null && _type !== void 0 ? _type : (0, _datamodel.getRefFromModel)(relationField.type, this.builder);
152
+ var _options_type;
153
+ const ref = (_options_type = options.type) !== null && _options_type !== void 0 ? _options_type : (0, _datamodel.getRefFromModel)(relationField.type, this.builder);
154
154
  let typeName;
155
155
  const formatCursor = (0, _cursors.getCursorFormatter)(relationField.type, this.builder, cursor);
156
156
  const parseCursor = (0, _cursors.getCursorParser)(relationField.type, this.builder, cursor);
@@ -221,20 +221,20 @@ class PrismaObjectFieldBuilder extends RootBuilder {
221
221
  },
222
222
  type: ref,
223
223
  resolve: (parent, args, context)=>{
224
- var ref;
224
+ var _parent__count;
225
225
  const connectionQuery = getQuery(args, context);
226
- return (0, _cursors.wrapConnectionResult)(parent[name], args, connectionQuery.take, formatCursor, (ref = parent._count) === null || ref === void 0 ? void 0 : ref[name]);
226
+ return (0, _cursors.wrapConnectionResult)(parent[name], args, connectionQuery.take, formatCursor, (_parent__count = parent._count) === null || _parent__count === void 0 ? void 0 : _parent__count[name]);
227
227
  }
228
228
  }, connectionOptions instanceof _core.ObjectRef ? connectionOptions : {
229
229
  ...connectionOptions,
230
230
  fields: totalCount ? (t)=>{
231
- var ref;
231
+ var _connectionOptions_fields;
232
232
  return {
233
233
  totalCount: t.int({
234
234
  nullable: false,
235
235
  resolve: (parent, args, context)=>parent.totalCount
236
236
  }),
237
- ...(ref = connectionOptions.fields) === null || ref === void 0 ? void 0 : ref.call(connectionOptions, t)
237
+ ...(_connectionOptions_fields = connectionOptions.fields) === null || _connectionOptions_fields === void 0 ? void 0 : _connectionOptions_fields.call(connectionOptions, t)
238
238
  };
239
239
  } : connectionOptions.fields
240
240
  }, edgeOptions);