@pothos/plugin-prisma 3.13.2 → 3.16.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 (66) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +2 -2
  3. package/dts/global-types.d.ts +2 -2
  4. package/dts/global-types.d.ts.map +1 -1
  5. package/dts/node-ref.d.ts +1 -2
  6. package/dts/node-ref.d.ts.map +1 -1
  7. package/dts/object-ref.d.ts +1 -1
  8. package/dts/object-ref.d.ts.map +1 -1
  9. package/dts/prisma-field-builder.d.ts.map +1 -1
  10. package/dts/types.d.ts +3 -3
  11. package/dts/types.d.ts.map +1 -1
  12. package/dts/util/cursors.d.ts.map +1 -1
  13. package/dts/util/datamodel.d.ts +0 -1
  14. package/dts/util/datamodel.d.ts.map +1 -1
  15. package/dts/util/get-client.d.ts +13 -13
  16. package/dts/util/get-client.d.ts.map +1 -1
  17. package/esm/global-types.js.map +1 -1
  18. package/esm/node-ref.js.map +1 -1
  19. package/esm/prisma-field-builder.js +3 -11
  20. package/esm/prisma-field-builder.js.map +1 -1
  21. package/esm/util/cursors.js +1 -0
  22. package/esm/util/cursors.js.map +1 -1
  23. package/esm/util/datamodel.js +2 -1
  24. package/esm/util/datamodel.js.map +1 -1
  25. package/esm/util/get-client.js.map +1 -1
  26. package/esm/util/selections.js +1 -1
  27. package/esm/util/selections.js.map +1 -1
  28. package/lib/generator.js +2 -2
  29. package/lib/generator.js.map +1 -1
  30. package/lib/global-types.js +1 -1
  31. package/lib/global-types.js.map +1 -1
  32. package/lib/index.js +4 -4
  33. package/lib/index.js.map +1 -1
  34. package/lib/node-ref.js.map +1 -1
  35. package/lib/object-ref.js +2 -2
  36. package/lib/object-ref.js.map +1 -1
  37. package/lib/prisma-field-builder.js +3 -11
  38. package/lib/prisma-field-builder.js.map +1 -1
  39. package/lib/schema-builder.js +2 -2
  40. package/lib/schema-builder.js.map +1 -1
  41. package/lib/util/cursors.js +8 -8
  42. package/lib/util/cursors.js.map +1 -1
  43. package/lib/util/datamodel.js +7 -7
  44. package/lib/util/datamodel.js.map +1 -1
  45. package/lib/util/deep-equal.js +1 -1
  46. package/lib/util/deep-equal.js.map +1 -1
  47. package/lib/util/get-client.js +1 -1
  48. package/lib/util/get-client.js.map +1 -1
  49. package/lib/util/loader-map.js +2 -2
  50. package/lib/util/loader-map.js.map +1 -1
  51. package/lib/util/map-query.js +3 -3
  52. package/lib/util/map-query.js.map +1 -1
  53. package/lib/util/relation-map.js +2 -2
  54. package/lib/util/relation-map.js.map +1 -1
  55. package/lib/util/selections.js +5 -5
  56. package/lib/util/selections.js.map +1 -1
  57. package/package.json +9 -9
  58. package/src/global-types.ts +5 -6
  59. package/src/node-ref.ts +1 -2
  60. package/src/object-ref.ts +1 -1
  61. package/src/prisma-field-builder.ts +9 -20
  62. package/src/types.ts +3 -3
  63. package/src/util/cursors.ts +1 -0
  64. package/src/util/datamodel.ts +2 -1
  65. package/src/util/get-client.ts +4 -7
  66. package/tsconfig.type.tsbuildinfo +1 -1
@@ -1,4 +1,4 @@
1
- "use strict";
1
+ /* eslint-disable no-param-reassign */ /* eslint-disable no-underscore-dangle */ "use strict";
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
@@ -9,12 +9,12 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
+ selectionCompatible: ()=>selectionCompatible,
13
+ stateCompatible: ()=>stateCompatible,
14
+ mergeState: ()=>mergeState,
12
15
  createState: ()=>createState,
13
16
  mergeSelection: ()=>mergeSelection,
14
- mergeState: ()=>mergeState,
15
- selectionCompatible: ()=>selectionCompatible,
16
- selectionToQuery: ()=>selectionToQuery,
17
- stateCompatible: ()=>stateCompatible
17
+ selectionToQuery: ()=>selectionToQuery
18
18
  });
19
19
  const _deepEqual = require("./deep-equal");
20
20
  function selectionCompatible(state, selectionMap, ignoreQuery = false) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/selections.ts"],"names":["createState","mergeSelection","mergeState","selectionCompatible","selectionToQuery","stateCompatible","state","selectionMap","ignoreQuery","Object","keys","query","length","select","include","some","key","compare","deepEqual","value","fieldMap","relations","has","get","newState","name","relationState","mode","fields","add","parent","Set","counts","Map","mappings","forEach","merge","count","selection","childMap","relatedState","set","nestedIncludes","hasSelection","sel","relation","nested","size","_count","field"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/util/selections.ts"],"names":["selectionCompatible","stateCompatible","mergeState","createState","mergeSelection","selectionToQuery","state","selectionMap","ignoreQuery","Object","keys","query","length","select","include","some","key","compare","deepEqual","value","fieldMap","relations","has","get","newState","name","relationState","mode","fields","add","parent","Set","counts","Map","mappings","forEach","merge","count","selection","childMap","relatedState","set","nestedIncludes","hasSelection","sel","relation","nested","size","_count","field"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pothos/plugin-prisma",
3
- "version": "3.13.2",
3
+ "version": "3.16.0",
4
4
  "description": "A Pothos plugin for more efficient integration with prisma",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./dts/index.d.ts",
@@ -37,7 +37,7 @@
37
37
  "access": "public"
38
38
  },
39
39
  "dependencies": {
40
- "@prisma/generator-helper": "^4.0.0"
40
+ "@prisma/generator-helper": "^4.1.0"
41
41
  },
42
42
  "prisma": {
43
43
  "seed": "node prisma/seed.mjs"
@@ -49,15 +49,15 @@
49
49
  "typescript": ">=4.7.2"
50
50
  },
51
51
  "devDependencies": {
52
- "@pothos/core": "3.12.2",
53
- "@pothos/plugin-errors": "3.4.2",
54
- "@pothos/plugin-relay": "3.16.0",
55
- "@pothos/plugin-complexity": "3.5.0",
56
- "@pothos/test-utils": "1.2.3",
57
- "@prisma/client": "^4.0.0",
52
+ "@pothos/core": "3.13.0",
53
+ "@pothos/plugin-complexity": "3.6.0",
54
+ "@pothos/plugin-errors": "3.5.0",
55
+ "@pothos/plugin-relay": "3.17.0",
56
+ "@pothos/test-utils": "1.3.0",
57
+ "@prisma/client": "^4.1.0",
58
58
  "graphql": "16.5.0",
59
59
  "graphql-tag": "^2.12.6",
60
- "prisma": "^4.0.0"
60
+ "prisma": "^4.1.0"
61
61
  },
62
62
  "scripts": {
63
63
  "generate": "prisma generate",
@@ -17,19 +17,18 @@ import PrismaNodeRef from './node-ref';
17
17
  import { prismaModelKey, PrismaObjectRef } from './object-ref';
18
18
  import { PrismaObjectFieldBuilder as InternalPrismaObjectFieldBuilder } from './prisma-field-builder';
19
19
  import {
20
+ PrismaClient,
20
21
  PrismaConnectionFieldOptions,
21
22
  PrismaFieldOptions,
22
23
  PrismaModelTypes,
23
24
  PrismaNodeOptions,
24
- PrismaObjectTypeOptions,
25
- } from './types';
26
- import {
27
- PrismaClient,
28
25
  PrismaObjectFieldOptions,
29
- PrismaPlugin,
26
+ PrismaObjectTypeOptions,
30
27
  ShapeFromConnection,
31
28
  ShapeFromSelection,
32
- } from '.';
29
+ } from './types';
30
+
31
+ import type { PrismaPlugin } from '.';
33
32
 
34
33
  declare global {
35
34
  export namespace PothosSchemaTypes {
package/src/node-ref.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  import { abstractReturnShapeKey, brandWithType, typeBrandKey } from '@pothos/core';
2
2
  import { PrismaObjectRef } from './object-ref';
3
- import { WithBrand } from './types';
4
- import { PrismaModelTypes } from '.';
3
+ import type { PrismaModelTypes, WithBrand } from './types';
5
4
 
6
5
  export default class PrismaNodeRef<Model extends PrismaModelTypes, T> extends PrismaObjectRef<
7
6
  Model,
package/src/object-ref.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { ObjectRef } from '@pothos/core';
2
- import { PrismaModelTypes } from '.';
2
+ import type { PrismaModelTypes } from './types';
3
3
 
4
4
  export const prismaModelKey = Symbol.for('Pothos.prismaModelKey');
5
5
 
@@ -179,26 +179,15 @@ export class PrismaObjectFieldBuilder<
179
179
  context: object,
180
180
  nestedQuery: (query: unknown, path: unknown) => unknown,
181
181
  ) => {
182
- const nested = nestedQuery(
183
- {
184
- ...((typeof query === 'function' ? query(args, context) : query) as {}),
185
- ...prismaCursorConnectionQuery({
186
- parseCursor,
187
- maxSize,
188
- defaultSize,
189
- args,
190
- }),
191
- },
192
- {
193
- getType: () => {
194
- if (!typeName) {
195
- typeName = this.builder.configStore.getTypeConfig(ref).name;
196
- }
197
- return typeName;
198
- },
199
- path: [{ name: 'edges' }, { name: 'node' }],
182
+ const nested = nestedQuery(getQuery(args, context), {
183
+ getType: () => {
184
+ if (!typeName) {
185
+ typeName = this.builder.configStore.getTypeConfig(ref).name;
186
+ }
187
+ return typeName;
200
188
  },
201
- ) as SelectionMap;
189
+ path: [{ name: 'edges' }, { name: 'node' }],
190
+ }) as SelectionMap;
202
191
 
203
192
  return {
204
193
  select: {
@@ -239,7 +228,7 @@ export class PrismaObjectFieldBuilder<
239
228
  resolve(
240
229
  {
241
230
  ...q,
242
- ...(typeof query === 'function' ? query(args, context) : query),
231
+ ...getQuery(args, context),
243
232
  } as never,
244
233
  parent,
245
234
  args,
package/src/types.ts CHANGED
@@ -20,7 +20,7 @@ import {
20
20
  typeBrandKey,
21
21
  TypeParam,
22
22
  } from '@pothos/core';
23
- import { PrismaObjectFieldBuilder } from './field-builder';
23
+ import type { PrismaObjectFieldBuilder } from './field-builder';
24
24
  import { PrismaObjectRef } from './object-ref';
25
25
 
26
26
  export interface PrismaDelegate {
@@ -557,7 +557,7 @@ export type RelatedConnectionOptions<
557
557
  args: InputShapeFromFields<Args>,
558
558
  context: Types['Context'],
559
559
  info: GraphQLResolveInfo,
560
- ) => MaybePromise<Model['Relations'][Field & keyof Model['Relations']]>;
560
+ ) => MaybePromise<Model['Relations'][Field & keyof Model['Relations']]['Shape']>;
561
561
  }
562
562
  : {
563
563
  resolve: (
@@ -571,7 +571,7 @@ export type RelatedConnectionOptions<
571
571
  args: InputShapeFromFields<Args>,
572
572
  context: Types['Context'],
573
573
  info: GraphQLResolveInfo,
574
- ) => MaybePromise<Model['Relations'][Field & keyof Model['Relations']]>;
574
+ ) => MaybePromise<Model['Relations'][Field & keyof Model['Relations']]['Shape']>;
575
575
  });
576
576
 
577
577
  export type WithBrand<T> = T & { [typeBrandKey]: string };
@@ -1,5 +1,6 @@
1
1
  /* eslint-disable no-nested-ternary */
2
2
  import { MaybePromise, SchemaTypes } from '@pothos/core';
3
+ // eslint-disable-next-line import/no-cycle
3
4
  import { getModel } from './datamodel';
4
5
  import { DMMFField } from './get-client';
5
6
 
@@ -1,6 +1,7 @@
1
1
  import { ObjectRef, SchemaTypes } from '@pothos/core';
2
2
  import { PrismaObjectRef } from '../object-ref';
3
3
  import { PrismaClient, PrismaDelegate, PrismaModelTypes } from '../types';
4
+ // eslint-disable-next-line import/no-cycle
4
5
  import { formatCursor, parseCompositeCursor, parseRawCursor } from './cursors';
5
6
  import { getDMMF } from './get-client';
6
7
 
@@ -56,7 +57,7 @@ export function getModel<Types extends SchemaTypes>(
56
57
  builder: PothosSchemaTypes.SchemaBuilder<Types>,
57
58
  ) {
58
59
  const dmmf = getDMMF(builder);
59
- const modelData = dmmf.modelMap[name];
60
+ const modelData = dmmf.datamodel.models.find((model) => model.name === name);
60
61
 
61
62
  if (!modelData) {
62
63
  throw new Error(`Model '${name}' not found in DMMF`);
@@ -13,17 +13,14 @@ export interface DMMFField {
13
13
  }
14
14
 
15
15
  interface DMMF {
16
- datamodel: unknown;
17
- modelMap: Record<
18
- string,
19
- {
16
+ datamodel: {
17
+ models: {
20
18
  name: string;
21
19
  fields: DMMFField[];
22
- fieldMap?: Record<string, DMMFField>;
23
20
  primaryKey: { name: string | null; fields: string[] } | null;
24
21
  uniqueIndexes: { name: string | null; fields: string[] }[];
25
- }
26
- >;
22
+ }[];
23
+ };
27
24
  }
28
25
 
29
26
  const prismaClientCache = createContextCache(