@pothos/plugin-prisma 3.50.0 → 3.51.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 CHANGED
@@ -1,5 +1,18 @@
1
1
  # Change Log
2
2
 
3
+ ## 3.51.0
4
+
5
+ ### Minor Changes
6
+
7
+ - dbdb6f03: Fix compatability with prisma@4.13.*
8
+
9
+ ## 3.50.1
10
+
11
+ ### Patch Changes
12
+
13
+ - 5b6007cd: Prevent unavailable prisma CreateInput types from being referenced by pothos generated
14
+ types.
15
+
3
16
  ## 3.50.0
4
17
 
5
18
  ### Minor Changes
@@ -8,7 +8,6 @@ export declare function getRefFromModel<Types extends SchemaTypes>(name: string,
8
8
  export declare function getRelation<Types extends SchemaTypes>(name: string, builder: PothosSchemaTypes.SchemaBuilder<Types>, relation: string): import("./get-client").DMMFField;
9
9
  export declare function getFieldData<Types extends SchemaTypes>(name: string, builder: PothosSchemaTypes.SchemaBuilder<Types>, fieldName: string): import("./get-client").DMMFField;
10
10
  export declare function getModel<Types extends SchemaTypes>(name: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): {
11
- name: string;
12
11
  fields: import("./get-client").DMMFField[];
13
12
  primaryKey: {
14
13
  name: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"datamodel.d.ts","sourceRoot":"","sources":["../../src/util/datamodel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAqB,WAAW,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG1E,eAAO,MAAM,MAAM,qEAAwE,CAAC;AAC5F,eAAO,MAAM,aAAa,kDAEQ,OAAO,OAAO,EAAE,KAAK,OAAO,UAC3D,CAAC;AAEJ,eAAO,MAAM,gBAAgB,0EAG1B,CAAC;AAEJ,wBAAgB,eAAe,CAAC,KAAK,SAAS,WAAW,EACvD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,eAAe,CAAC,gBAAgB,CAAC,CAWnC;AAED,wBAAgB,WAAW,CAAC,KAAK,SAAS,WAAW,EACnD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,QAAQ,EAAE,MAAM,oCAWjB;AAED,wBAAgB,YAAY,CAAC,KAAK,SAAS,WAAW,EACpD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,SAAS,EAAE,MAAM,oCAWlB;AAED,wBAAgB,QAAQ,CAAC,KAAK,SAAS,WAAW,EAChD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC;;;;;;;;;;;;EAUhD;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,kBAWvE"}
1
+ {"version":3,"file":"datamodel.d.ts","sourceRoot":"","sources":["../../src/util/datamodel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAqB,WAAW,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG1E,eAAO,MAAM,MAAM,qEAAwE,CAAC;AAC5F,eAAO,MAAM,aAAa,kDAEQ,OAAO,OAAO,EAAE,KAAK,OAAO,UAC3D,CAAC;AAEJ,eAAO,MAAM,gBAAgB,0EAG1B,CAAC;AAEJ,wBAAgB,eAAe,CAAC,KAAK,SAAS,WAAW,EACvD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,eAAe,CAAC,gBAAgB,CAAC,CAWnC;AAED,wBAAgB,WAAW,CAAC,KAAK,SAAS,WAAW,EACnD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,QAAQ,EAAE,MAAM,oCAWjB;AAED,wBAAgB,YAAY,CAAC,KAAK,SAAS,WAAW,EACpD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,SAAS,EAAE,MAAM,oCAWlB;AAED,wBAAgB,QAAQ,CAAC,KAAK,SAAS,WAAW,EAChD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC;;;;;;;;;;;EAahD;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,kBAWvE"}
@@ -14,7 +14,7 @@ export interface DMMFField {
14
14
  relationFromFields?: string[];
15
15
  isUpdatedAt?: boolean;
16
16
  }
17
- interface DMMF {
17
+ export interface DMMF {
18
18
  datamodel: {
19
19
  models: {
20
20
  name: string;
@@ -31,7 +31,20 @@ interface DMMF {
31
31
  }[];
32
32
  };
33
33
  }
34
+ export interface RuntimeDataModel {
35
+ models: Record<string, {
36
+ fields: DMMFField[];
37
+ primaryKey: {
38
+ name: string | null;
39
+ fields: string[];
40
+ } | null;
41
+ uniqueIndexes: {
42
+ name: string | null;
43
+ fields: string[];
44
+ }[];
45
+ documentation?: string;
46
+ }>;
47
+ }
34
48
  export declare function getClient<Types extends SchemaTypes>(builder: PothosSchemaTypes.SchemaBuilder<Types>, context: Types['Context']): PrismaClient;
35
- export declare function getDMMF<Types extends SchemaTypes>(builder: PothosSchemaTypes.SchemaBuilder<Types>): DMMF;
36
- export {};
49
+ export declare function getDMMF<Types extends SchemaTypes>(builder: PothosSchemaTypes.SchemaBuilder<Types>): DMMF['datamodel'] | RuntimeDataModel;
37
50
  //# sourceMappingURL=get-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-client.d.ts","sourceRoot":"","sources":["../../src/util/get-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,WAAW,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,UAAU,IAAI;IACZ,SAAS,EAAE;QACT,MAAM,EAAE;YACN,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,SAAS,EAAE,CAAC;YACpB,UAAU,EAAE;gBAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;gBAAC,MAAM,EAAE,MAAM,EAAE,CAAA;aAAE,GAAG,IAAI,CAAC;YAC7D,aAAa,EAAE;gBAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;gBAAC,MAAM,EAAE,MAAM,EAAE,CAAA;aAAE,EAAE,CAAC;YAC3D,aAAa,CAAC,EAAE,MAAM,CAAC;SACxB,EAAE,CAAC;KACL,CAAC;CACH;AAWD,wBAAgB,SAAS,CAAC,KAAK,SAAS,WAAW,EACjD,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,GACxB,YAAY,CAMd;AAED,wBAAgB,OAAO,CAAC,KAAK,SAAS,WAAW,EAC/C,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,IAAI,CAWN"}
1
+ {"version":3,"file":"get-client.d.ts","sourceRoot":"","sources":["../../src/util/get-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,WAAW,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,IAAI;IACnB,SAAS,EAAE;QACT,MAAM,EAAE;YACN,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,SAAS,EAAE,CAAC;YACpB,UAAU,EAAE;gBAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;gBAAC,MAAM,EAAE,MAAM,EAAE,CAAA;aAAE,GAAG,IAAI,CAAC;YAC7D,aAAa,EAAE;gBAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;gBAAC,MAAM,EAAE,MAAM,EAAE,CAAA;aAAE,EAAE,CAAC;YAC3D,aAAa,CAAC,EAAE,MAAM,CAAC;SACxB,EAAE,CAAC;KACL,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CACZ,MAAM,EACN;QACE,MAAM,EAAE,SAAS,EAAE,CAAC;QACpB,UAAU,EAAE;YAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YAAC,MAAM,EAAE,MAAM,EAAE,CAAA;SAAE,GAAG,IAAI,CAAC;QAC7D,aAAa,EAAE;YAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YAAC,MAAM,EAAE,MAAM,EAAE,CAAA;SAAE,EAAE,CAAC;QAC3D,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CACF,CAAC;CACH;AAWD,wBAAgB,SAAS,CAAC,KAAK,SAAS,WAAW,EACjD,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,GACxB,YAAY,CAMd;AAED,wBAAgB,OAAO,CAAC,KAAK,SAAS,WAAW,EAC/C,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,IAAI,CAAC,WAAW,CAAC,GAAG,gBAAgB,CAYtC"}
@@ -1,11 +1,23 @@
1
- import { DMMF } from '@prisma/generator-helper';
1
+ import { DMMF, RuntimeDataModel } from './get-client';
2
2
  export interface FieldMap {
3
3
  model: string;
4
4
  relations: Map<string, FieldMap>;
5
5
  }
6
6
  export type RelationMap = Map<string, FieldMap>;
7
7
  export declare const getRelationMap: import("@pothos/core").ContextCache<RelationMap, {
8
- datamodel: unknown;
9
- }, []>;
10
- export declare function createRelationMap({ models }: DMMF.Datamodel): RelationMap;
8
+ models: {
9
+ name: string;
10
+ fields: import("./get-client").DMMFField[];
11
+ primaryKey: {
12
+ name: string | null;
13
+ fields: string[];
14
+ } | null;
15
+ uniqueIndexes: {
16
+ name: string | null;
17
+ fields: string[];
18
+ }[];
19
+ documentation?: string | undefined;
20
+ }[];
21
+ } | RuntimeDataModel, []>;
22
+ export declare function createRelationMap({ models }: DMMF['datamodel'] | RuntimeDataModel): RelationMap;
11
23
  //# sourceMappingURL=relation-map.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"relation-map.d.ts","sourceRoot":"","sources":["../../src/util/relation-map.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAEhD,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CAClC;AAED,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAEhD,eAAO,MAAM,cAAc;eAA0C,OAAO;MAE3E,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,SAAS,eAkB3D"}
1
+ {"version":3,"file":"relation-map.d.ts","sourceRoot":"","sources":["../../src/util/relation-map.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEtD,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CAClC;AAED,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAEhD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;yBAE1B,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,gBAAgB,eAkCjF"}
package/esm/generator.js CHANGED
@@ -98,6 +98,7 @@ function buildTypes(dmmf, config) {
98
98
  const modelTypes = dmmf.datamodel.models.map((model) => {
99
99
  const relations = model.fields.filter((field) => !!field.relationName);
100
100
  const listRelations = model.fields.filter((field) => !!field.relationName && field.isList);
101
+ const createInputUnavailable = !dmmf.schema.inputObjectTypes.prisma.some((input) => input.name === `${model.name}CreateInput`);
101
102
  return ts.factory.createPropertySignature([], model.name, undefined, ts.factory.createTypeLiteralNode([
102
103
  ts.factory.createPropertySignature([], "Name", undefined, ts.factory.createLiteralTypeNode(ts.factory.createStringLiteral(model.name))),
103
104
  ts.factory.createPropertySignature([], "Shape", undefined, ts.factory.createTypeReferenceNode(model.name)),
@@ -107,7 +108,7 @@ function buildTypes(dmmf, config) {
107
108
  ts.factory.createPropertySignature([], "WhereUnique", undefined, ts.factory.createTypeReferenceNode(`Prisma.${model.name}WhereUniqueInput`)),
108
109
  ts.factory.createPropertySignature([], "Where", undefined, ts.factory.createTypeReferenceNode(`Prisma.${model.name}WhereInput`)),
109
110
  ...prismaUtils ? [
110
- ts.factory.createPropertySignature([], "Create", undefined, ts.factory.createTypeReferenceNode(`Prisma.${model.name}CreateInput`)),
111
+ ts.factory.createPropertySignature([], "Create", undefined, createInputUnavailable ? ts.factory.createTypeLiteralNode([]) : ts.factory.createTypeReferenceNode(`Prisma.${model.name}CreateInput`)),
111
112
  ts.factory.createPropertySignature([], "Update", undefined, ts.factory.createTypeReferenceNode(`Prisma.${model.name}UpdateInput`))
112
113
  ] : [
113
114
  ts.factory.createPropertySignature([], "Create", undefined, ts.factory.createTypeLiteralNode([])),
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/generator.ts"],"names":["mkdir","writeFile","dirname","join","resolve","resolvePath","ts","ListFormat","ScriptKind","ScriptTarget","SyntaxKind","version","generatorHandler","MIN_TS_VERSION","versionParts","split","map","part","Number","parseInt","modifiersArg","checkTSVersion","i","Error","defaultOutput","__dirname","onManifest","prettyName","requiresGenerators","onGenerate","options","config","generator","prismaLocation","clientOutput","otherGenerators","find","gen","provider","value","output","outputLocation","prismaTypes","buildTypes","dmmf","generateOutput","replace","importStatement","factory","createImportDeclaration","createImportClause","undefined","createNamedImports","createImportSpecifier","createIdentifier","datamodel","models","model","name","createStringLiteral","printer","createPrinter","sourcefile","createSourceFile","ESNext","TS","nodes","createNodeArray","result","printList","SourceFileStatements","Promise","reject","fileName","recursive","err","getOrderByTypeName","type","possibleTypes","orderBy","schema","inputObjectTypes","prisma","inputType","includes","prismaUtils","modelTypes","relations","fields","filter","field","relationName","listRelations","isList","createPropertySignature","createTypeLiteralNode","createLiteralTypeNode","createTypeReferenceNode","length","createUnionTypeNode","typeName","createArrayTypeNode","isRequired","createNull","createInterfaceDeclaration","createModifier","ExportKeyword","DefaultKeyword"],"mappings":"AAAA,wCAAwC,GACxC,0CAA0C,GAC1C,mCAAmC,GACnC,oCAAoC,GACpC,SAASA,KAAK,EAAEC,SAAS,QAAQ,KAAK;AACtC,SAASC,OAAO,EAAEC,IAAI,EAAEC,WAAWC,WAAW,QAAQ,OAAO;AAC7D,OAAOC,MAAMC,UAAU,EAAEC,UAAU,EAAEC,YAAY,EAAEC,UAAU,EAAEC,OAAO,QAAQ,aAAa;AAC3F,SAAeC,gBAAgB,QAAQ,2BAA2B;AAElE,MAAMC,iBAAiB;IAAC;IAAG;IAAG;CAAE;AAEhC,MAAMC,eAAeH,QAAQI,KAAK,CAAC,SAASC,GAAG,CAAC,CAACC,OAASC,OAAOC,QAAQ,CAACF,MAAM;AAChF,MAAMG,eAAgBN,YAAY,CAAC,EAAE,IAAI,IAAI,EAAE,GAAG;IAAC,EAAE;CAAC;AAEtD,SAASO,iBAAiB;IACxB,IAAK,IAAIC,IAAI,GAAGA,IAAI,GAAGA,KAAK,EAAG;QAC7B,MAAML,OAAOH,YAAY,CAACQ,EAAE;QAC5B,IAAIL,OAAOJ,cAAc,CAACS,EAAE,EAAE;YAC5B,MAAM,IAAIC,MACR,CAAC,mDAAmD,EAAEV,eAAeV,IAAI,CAAC,KAAK,CAAC,EAChF;QACJ,CAAC;QAED,IAAIc,OAAOJ,cAAc,CAACS,EAAE,EAAE;YAC5B;QACF,CAAC;IACH;AACF;AAEA,MAAME,gBAAgBnB,YAAYoB,WAAW;AAE7Cb,iBAAiB;IACfc,YAAY,IAAO,CAAA;YACjBC,YAAY;YACZC,oBAAoB;gBAAC;aAAmB;YACxCJ;QACF,CAAA;IACAK,YAAY,OAAOC,UAAY;YAQNA;QAPvBT;QACA,MAAMU,SAASD,QAAQE,SAAS,CAACD,MAAM;YAErCA;QADF,MAAME,iBACJF,CAAAA,uBAAAA,OAAOG,YAAY,cAAnBH,kCAAAA,uBACAD,QAAQK,eAAe,CAACC,IAAI,CAAC,CAACC,MAAQA,IAAIC,QAAQ,CAACC,KAAK,KAAK,oBAAqBC,MAAM,CACrFD,KAAK,AAAC;YAEYT;QAAvB,MAAMW,iBAAiBX,CAAAA,kCAAAA,CAAAA,4BAAAA,QAAQE,SAAS,CAACQ,MAAM,cAAxBV,uCAAAA,KAAAA,IAAAA,0BAA0BS,KAAK,cAA/BT,6CAAAA,kCAAmCN,aAAa;QACvE,MAAMkB,cAAcC,WAAWb,QAAQc,IAAI,EAAEb;QAE7C,MAAMc,eAAef,QAAQc,IAAI,EAAEF,aAAaT,gBAAgBQ;QAEhE,IAAIA,mBAAmBjB,eAAe;YACpC,MAAMqB,eACJf,QAAQc,IAAI,EACZF,aACAvC,KAAK8B,eAAea,OAAO,CAAC,OAAO,WAAW,aAC9CL,eAAeK,OAAO,CAAC,iBAAiB;QAE5C,CAAC;IACH;AACF;AAEA,eAAeD,eACbD,IAAmB,EACnBF,WAAoC,EACpCT,cAAsB,EACtBQ,cAAsB,EACtB;IACA,MAAMM,kBAAkBzC,GAAG0C,OAAO,CAACC,uBAAuB,IACrD7B,cACH,EAAE,EACFd,GAAG0C,OAAO,CAACE,kBAAkB,CAC3B,IAAI,EACJC,WACA7C,GAAG0C,OAAO,CAACI,kBAAkB,CAAC;QAC5B9C,GAAG0C,OAAO,CAACK,qBAAqB,CAAC,KAAK,EAAEF,WAAW7C,GAAG0C,OAAO,CAACM,gBAAgB,CAAC;WAC5EV,KAAKW,SAAS,CAACC,MAAM,CAACxC,GAAG,CAAC,CAACyC,QAC5BnD,GAAG0C,OAAO,CAACK,qBAAqB,CAC9B,KAAK,EACLF,WACA7C,GAAG0C,OAAO,CAACM,gBAAgB,CAACG,MAAMC,IAAI;KAG3C,IAEHpD,GAAG0C,OAAO,CAACW,mBAAmB,CAAC1B;IAGjC,MAAM2B,UAAUtD,GAAGuD,aAAa,CAAC,CAAC;IAElC,MAAMC,aAAaxD,GAAGyD,gBAAgB,CACpCtB,gBACA,IACAhC,aAAauD,MAAM,EACnB,KAAK,EACLxD,WAAWyD,EAAE;IAGf,MAAMC,QAAQ5D,GAAG0C,OAAO,CAACmB,eAAe,CAAC;QAACpB;QAAiBL;KAAY;IAEvE,MAAM0B,SAASR,QAAQS,SAAS,CAAC9D,WAAW+D,oBAAoB,EAAEJ,OAAOJ;IAEzE,MAAM,IAAIS,QAAc,CAACnE,SAASoE,SAAW;QAC3CxE,MAAME,QAAQ4D,WAAWW,QAAQ,GAAG;YAAEC,WAAW,IAAI;QAAC,GAAG,CAACC,MAAQ;YAChE,IAAIA,KAAK;gBACPH,OAAOG;YACT,OAAO;gBACLvE;YACF,CAAC;QACH;IACF;IAEA,OAAO,IAAImE,QAAc,CAACnE,SAASoE,SAAW;QAC5CvE,UAAU6D,WAAWW,QAAQ,EAAE,CAAC,sBAAsB,EAAEL,OAAO,CAAC,EAAE,CAACO,MAAQ;YACzE,IAAIA,KAAK;gBACPH,OAAOG;YACT,OAAO;gBACLvE;YACF,CAAC;QACH;IACF;AACF;AAEA,SAASuC,WAAWC,IAAmB,EAAEb,MAAgC,EAAE;IACzE,SAAS6C,mBAAmBC,IAAY,EAAE;YAMxBjC;QALhB,MAAMkC,gBAAgB;YACpB,CAAC,EAAED,KAAK,wBAAwB,CAAC;YACjC,CAAC,EAAEA,KAAK,0CAA0C,CAAC;SACpD;QAED,MAAME,UAAUnC,CAAAA,uCAAAA,KAAKoC,MAAM,CAACC,gBAAgB,CAACC,MAAM,cAAnCtC,kDAAAA,KAAAA,IAAAA,qCAAqCR,KAAK,CAAC+C,YACzDL,cAAcM,QAAQ,CAACD,UAAUzB,IAAI;QAGvC,IAAI,CAACqB,SAAS;YACZ,OAAOD,aAAa,CAAC,EAAE;QACzB,CAAC;QAED,OAAOC,QAAQrB,IAAI;IACrB;IAEA,MAAM2B,cAActD,OAAOsD,WAAW,KAAK;IAE3C,MAAMC,aAAa1C,KAAKW,SAAS,CAACC,MAAM,CAACxC,GAAG,CAAC,CAACyC,QAAU;QACtD,MAAM8B,YAAY9B,MAAM+B,MAAM,CAACC,MAAM,CAAC,CAACC,QAAU,CAAC,CAACA,MAAMC,YAAY;QACrE,MAAMC,gBAAgBnC,MAAM+B,MAAM,CAACC,MAAM,CAAC,CAACC,QAAU,CAAC,CAACA,MAAMC,YAAY,IAAID,MAAMG,MAAM;QAEzF,OAAOvF,GAAG0C,OAAO,CAAC8C,uBAAuB,CACvC,EAAE,EACFrC,MAAMC,IAAI,EACVP,WAEA7C,GAAG0C,OAAO,CAAC+C,qBAAqB,CAAC;YAC/BzF,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,QACA3C,WACA7C,GAAG0C,OAAO,CAACgD,qBAAqB,CAAC1F,GAAG0C,OAAO,CAACW,mBAAmB,CAACF,MAAMC,IAAI;YAE5EpD,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,SACA3C,WACA7C,GAAG0C,OAAO,CAACiD,uBAAuB,CAACxC,MAAMC,IAAI;YAE/CpD,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,WACA3C,WACAoC,UAAUW,MAAM,GAAG,IACf5F,GAAG0C,OAAO,CAACiD,uBAAuB,CAAC,CAAC,OAAO,EAAExC,MAAMC,IAAI,CAAC,OAAO,CAAC,IAChEpD,GAAG0C,OAAO,CAACiD,uBAAuB,CAAC,QAAQ;YAEjD3F,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,UACA3C,WACA7C,GAAG0C,OAAO,CAACiD,uBAAuB,CAAC,CAAC,OAAO,EAAExC,MAAMC,IAAI,CAAC,MAAM,CAAC;YAEjEpD,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,WACA3C,WACA7C,GAAG0C,OAAO,CAACiD,uBAAuB,CAAC,CAAC,OAAO,EAAErB,mBAAmBnB,MAAMC,IAAI,EAAE,CAAC;YAE/EpD,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,eACA3C,WACA7C,GAAG0C,OAAO,CAACiD,uBAAuB,CAAC,CAAC,OAAO,EAAExC,MAAMC,IAAI,CAAC,gBAAgB,CAAC;YAE3EpD,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,SACA3C,WACA7C,GAAG0C,OAAO,CAACiD,uBAAuB,CAAC,CAAC,OAAO,EAAExC,MAAMC,IAAI,CAAC,UAAU,CAAC;eAEjE2B,cACA;gBACE/E,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,UACA3C,WACA7C,GAAG0C,OAAO,CAACiD,uBAAuB,CAAC,CAAC,OAAO,EAAExC,MAAMC,IAAI,CAAC,WAAW,CAAC;gBAEtEpD,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,UACA3C,WACA7C,GAAG0C,OAAO,CAACiD,uBAAuB,CAAC,CAAC,OAAO,EAAExC,MAAMC,IAAI,CAAC,WAAW,CAAC;aAEvE,GACD;gBACEpD,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,UACA3C,WACA7C,GAAG0C,OAAO,CAAC+C,qBAAqB,CAAC,EAAE;gBAErCzF,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,UACA3C,WACA7C,GAAG0C,OAAO,CAAC+C,qBAAqB,CAAC,EAAE;aAEtC;YACLzF,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,gBACA3C,WACAoC,UAAUW,MAAM,GAAG,IACf5F,GAAG0C,OAAO,CAACmD,mBAAmB,CAC5BZ,UAAUvE,GAAG,CAAC,CAAC0E,QACbpF,GAAG0C,OAAO,CAACgD,qBAAqB,CAAC1F,GAAG0C,OAAO,CAACW,mBAAmB,CAAC+B,MAAMhC,IAAI,OAG9EpD,GAAG0C,OAAO,CAACiD,uBAAuB,CAAC,QAAQ;YAEjD3F,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,iBACA3C,WACAyC,cAAcM,MAAM,GAAG,IACnB5F,GAAG0C,OAAO,CAACmD,mBAAmB,CAC5BP,cAAc5E,GAAG,CAAC,CAAC0E,QACjBpF,GAAG0C,OAAO,CAACgD,qBAAqB,CAAC1F,GAAG0C,OAAO,CAACW,mBAAmB,CAAC+B,MAAMhC,IAAI,OAG9EpD,GAAG0C,OAAO,CAACiD,uBAAuB,CAAC,QAAQ;YAEjD3F,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,aACA3C,WACA7C,GAAG0C,OAAO,CAAC+C,qBAAqB,CAC9BR,UAAUvE,GAAG,CAAC,CAAC0E,QAAU;gBACvB,MAAMU,WAAWV,MAAMb,IAAI;gBAE3B,OAAOvE,GAAG0C,OAAO,CAAC8C,uBAAuB,CACvC,EAAE,EACFJ,MAAMhC,IAAI,EACVP,WACA7C,GAAG0C,OAAO,CAAC+C,qBAAqB,CAAC;oBAC/BzF,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,SACA3C,WACAuC,MAAMG,MAAM,GACRvF,GAAG0C,OAAO,CAACqD,mBAAmB,CAAC/F,GAAG0C,OAAO,CAACiD,uBAAuB,CAACG,aAClEV,MAAMY,UAAU,GAChBhG,GAAG0C,OAAO,CAACiD,uBAAuB,CAACG,YACnC9F,GAAG0C,OAAO,CAACmD,mBAAmB,CAAC;wBAC7B7F,GAAG0C,OAAO,CAACiD,uBAAuB,CAACG;wBACnC9F,GAAG0C,OAAO,CAACgD,qBAAqB,CAAC1F,GAAG0C,OAAO,CAACuD,UAAU;qBACvD,CAAC;oBAERjG,GAAG0C,OAAO,CAAC8C,uBAAuB,CAChC,EAAE,EACF,QACA3C,WACA7C,GAAG0C,OAAO,CAACgD,qBAAqB,CAAC1F,GAAG0C,OAAO,CAACW,mBAAmB,CAACyC;iBAEnE;YAEL;SAGL;IAEL;IAEA,OAAO9F,GAAG0C,OAAO,CAACwD,0BAA0B,IACvCpF,cACH;QACEd,GAAG0C,OAAO,CAACyD,cAAc,CAAC/F,WAAWgG,aAAa;QAClDpG,GAAG0C,OAAO,CAACyD,cAAc,CAAC/F,WAAWiG,cAAc;KACpD,EACD,eACA,EAAE,EACF,EAAE,EACFrB;AAEJ"}
1
+ {"version":3,"sources":["../src/generator.ts"],"names":["mkdir","writeFile","dirname","join","resolve","resolvePath","ts","ListFormat","ScriptKind","ScriptTarget","SyntaxKind","version","generatorHandler","MIN_TS_VERSION","versionParts","split","map","part","Number","parseInt","modifiersArg","checkTSVersion","i","Error","defaultOutput","__dirname","onManifest","prettyName","requiresGenerators","onGenerate","options","config","generator","prismaLocation","clientOutput","otherGenerators","find","gen","provider","value","output","outputLocation","prismaTypes","buildTypes","dmmf","generateOutput","replace","importStatement","factory","createImportDeclaration","createImportClause","undefined","createNamedImports","createImportSpecifier","createIdentifier","datamodel","models","model","name","createStringLiteral","printer","createPrinter","sourcefile","createSourceFile","ESNext","TS","nodes","createNodeArray","result","printList","SourceFileStatements","Promise","reject","fileName","recursive","err","getOrderByTypeName","type","possibleTypes","orderBy","schema","inputObjectTypes","prisma","inputType","includes","prismaUtils","modelTypes","relations","fields","filter","field","relationName","listRelations","isList","createInputUnavailable","some","input","createPropertySignature","createTypeLiteralNode","createLiteralTypeNode","createTypeReferenceNode","length","createUnionTypeNode","typeName","createArrayTypeNode","isRequired","createNull","createInterfaceDeclaration","createModifier","ExportKeyword","DefaultKeyword"],"mappings":"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"}
@@ -8,7 +8,6 @@ export declare function getRefFromModel<Types extends SchemaTypes>(name: string,
8
8
  export declare function getRelation<Types extends SchemaTypes>(name: string, builder: PothosSchemaTypes.SchemaBuilder<Types>, relation: string): import("./get-client.js").DMMFField;
9
9
  export declare function getFieldData<Types extends SchemaTypes>(name: string, builder: PothosSchemaTypes.SchemaBuilder<Types>, fieldName: string): import("./get-client.js").DMMFField;
10
10
  export declare function getModel<Types extends SchemaTypes>(name: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): {
11
- name: string;
12
11
  fields: import("./get-client.js").DMMFField[];
13
12
  primaryKey: {
14
13
  name: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"datamodel.d.ts","sourceRoot":"","sources":["../../src/util/datamodel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAqB,WAAW,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG1E,eAAO,MAAM,MAAM,qEAAwE,CAAC;AAC5F,eAAO,MAAM,aAAa,kDAEQ,OAAO,OAAO,EAAE,KAAK,OAAO,UAC3D,CAAC;AAEJ,eAAO,MAAM,gBAAgB,0EAG1B,CAAC;AAEJ,wBAAgB,eAAe,CAAC,KAAK,SAAS,WAAW,EACvD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,eAAe,CAAC,gBAAgB,CAAC,CAWnC;AAED,wBAAgB,WAAW,CAAC,KAAK,SAAS,WAAW,EACnD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,QAAQ,EAAE,MAAM,oCAWjB;AAED,wBAAgB,YAAY,CAAC,KAAK,SAAS,WAAW,EACpD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,SAAS,EAAE,MAAM,oCAWlB;AAED,wBAAgB,QAAQ,CAAC,KAAK,SAAS,WAAW,EAChD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC;;;;;;;;;;;;EAUhD;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,kBAWvE"}
1
+ {"version":3,"file":"datamodel.d.ts","sourceRoot":"","sources":["../../src/util/datamodel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAqB,WAAW,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG1E,eAAO,MAAM,MAAM,qEAAwE,CAAC;AAC5F,eAAO,MAAM,aAAa,kDAEQ,OAAO,OAAO,EAAE,KAAK,OAAO,UAC3D,CAAC;AAEJ,eAAO,MAAM,gBAAgB,0EAG1B,CAAC;AAEJ,wBAAgB,eAAe,CAAC,KAAK,SAAS,WAAW,EACvD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,eAAe,CAAC,gBAAgB,CAAC,CAWnC;AAED,wBAAgB,WAAW,CAAC,KAAK,SAAS,WAAW,EACnD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,QAAQ,EAAE,MAAM,oCAWjB;AAED,wBAAgB,YAAY,CAAC,KAAK,SAAS,WAAW,EACpD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,SAAS,EAAE,MAAM,oCAWlB;AAED,wBAAgB,QAAQ,CAAC,KAAK,SAAS,WAAW,EAChD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC;;;;;;;;;;;EAahD;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,kBAWvE"}
@@ -31,7 +31,7 @@ export function getFieldData(name, builder, fieldName) {
31
31
  }
32
32
  export function getModel(name, builder) {
33
33
  const dmmf = getDMMF(builder);
34
- const modelData = dmmf.datamodel.models.find((model) => model.name === name);
34
+ const modelData = Array.isArray(dmmf.models) ? dmmf.models.find((model) => model.name === name) : dmmf.models[name];
35
35
  if (!modelData) {
36
36
  throw new PothosSchemaError(`Model '${name}' not found in DMMF`);
37
37
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/datamodel.ts"],"names":["PothosSchemaError","PrismaObjectRef","getDMMF","refMap","WeakMap","findUniqueMap","includeForRefMap","getRefFromModel","name","builder","has","set","Map","cache","get","getRelation","relation","fieldData","getFieldData","kind","fieldName","modelData","getModel","fields","find","field","dmmf","datamodel","models","model","getDelegateFromModel","client","lowerCase","slice","toLowerCase","delegate"],"mappings":"AAAA,SAAoBA,iBAAiB,QAAqB,eAAe;AACzE,SAASC,eAAe,QAAQ,gBAAgB;AAEhD,SAASC,OAAO,QAAQ,eAAe;AAEvC,OAAO,MAAMC,SAAS,IAAIC,UAAkE;AAC5F,OAAO,MAAMC,gBAAgB,IAAID,UAG7B;AAEJ,OAAO,MAAME,mBAAmB,IAAIF,UAGhC;AAEJ,OAAO,SAASG,gBACdC,IAAY,EACZC,OAA+C,EACZ;IACnC,IAAI,CAACN,OAAOO,GAAG,CAACD,UAAU;QACxBN,OAAOQ,GAAG,CAACF,SAAS,IAAIG;IAC1B,CAAC;IACD,MAAMC,QAAQV,OAAOW,GAAG,CAACL;IAEzB,IAAI,CAACI,MAAMH,GAAG,CAACF,OAAO;QACpBK,MAAMF,GAAG,CAACH,MAAM,IAAIP,gBAAgBO,MAAMA;IAC5C,CAAC;IAED,OAAOK,MAAMC,GAAG,CAACN;AACnB,CAAC;AAED,OAAO,SAASO,YACdP,IAAY,EACZC,OAA+C,EAC/CO,QAAgB,EAChB;IACA,MAAMC,YAAYC,aAAaV,MAAMC,SAASO;IAE9C,IAAIC,UAAUE,IAAI,KAAK,UAAU;QAC/B,MAAM,IAAInB,kBACR,CAAC,MAAM,EAAEgB,SAAS,WAAW,EAAER,KAAK,qBAAqB,EAAES,UAAUE,IAAI,CAAC,CAAC,CAAC,EAC5E;IACJ,CAAC;IAED,OAAOF;AACT,CAAC;AAED,OAAO,SAASC,aACdV,IAAY,EACZC,OAA+C,EAC/CW,SAAiB,EACjB;IACA,MAAMC,YAAYC,SAASd,MAAMC;IAEjC,MAAMQ,YAAYI,UAAUE,MAAM,CAACC,IAAI,CAAC,CAACC,QAAUA,MAAMjB,IAAI,KAAKY;IAElE,IAAI,CAACH,WAAW;QACd,MAAM,IAAIjB,kBAAkB,CAAC,OAAO,EAAEoB,UAAU,sBAAsB,EAAEZ,KAAK,CAAC,CAAC,EAAE;IACnF,CAAC;IAED,OAAOS;AACT,CAAC;AAED,OAAO,SAASK,SACdd,IAAY,EACZC,OAA+C,EAC/C;IACA,MAAMiB,OAAOxB,QAAQO;IACrB,MAAMY,YAAYK,KAAKC,SAAS,CAACC,MAAM,CAACJ,IAAI,CAAC,CAACK,QAAUA,MAAMrB,IAAI,KAAKA;IAEvE,IAAI,CAACa,WAAW;QACd,MAAM,IAAIrB,kBAAkB,CAAC,OAAO,EAAEQ,KAAK,mBAAmB,CAAC,EAAE;IACnE,CAAC;IAED,OAAOa;AACT,CAAC;AAED,OAAO,SAASS,qBAAqBC,MAAoB,EAAEF,KAAa,EAAE;IACxE,MAAMG,YAAY,CAAC,EAAEH,MAAMI,KAAK,CAAC,GAAG,GAAGC,WAAW,GAAG,EAAEL,MAAMI,KAAK,CAAC,GAAG,CAAC;IAEvE,MAAME,WACJH,aAAaD,SAAS,AAACA,MAAiD,CAACC,UAAU,GAAG,IAAI;IAE5F,IAAI,CAACG,UAAU;QACb,MAAM,IAAInC,kBAAkB,CAAC,kCAAkC,EAAE6B,MAAM,CAAC,EAAE;IAC5E,CAAC;IAED,OAAOM;AACT,CAAC"}
1
+ {"version":3,"sources":["../../src/util/datamodel.ts"],"names":["PothosSchemaError","PrismaObjectRef","getDMMF","refMap","WeakMap","findUniqueMap","includeForRefMap","getRefFromModel","name","builder","has","set","Map","cache","get","getRelation","relation","fieldData","getFieldData","kind","fieldName","modelData","getModel","fields","find","field","dmmf","Array","isArray","models","model","getDelegateFromModel","client","lowerCase","slice","toLowerCase","delegate"],"mappings":"AAAA,SAAoBA,iBAAiB,QAAqB,eAAe;AACzE,SAASC,eAAe,QAAQ,gBAAgB;AAEhD,SAASC,OAAO,QAAQ,eAAe;AAEvC,OAAO,MAAMC,SAAS,IAAIC,UAAkE;AAC5F,OAAO,MAAMC,gBAAgB,IAAID,UAG7B;AAEJ,OAAO,MAAME,mBAAmB,IAAIF,UAGhC;AAEJ,OAAO,SAASG,gBACdC,IAAY,EACZC,OAA+C,EACZ;IACnC,IAAI,CAACN,OAAOO,GAAG,CAACD,UAAU;QACxBN,OAAOQ,GAAG,CAACF,SAAS,IAAIG;IAC1B,CAAC;IACD,MAAMC,QAAQV,OAAOW,GAAG,CAACL;IAEzB,IAAI,CAACI,MAAMH,GAAG,CAACF,OAAO;QACpBK,MAAMF,GAAG,CAACH,MAAM,IAAIP,gBAAgBO,MAAMA;IAC5C,CAAC;IAED,OAAOK,MAAMC,GAAG,CAACN;AACnB,CAAC;AAED,OAAO,SAASO,YACdP,IAAY,EACZC,OAA+C,EAC/CO,QAAgB,EAChB;IACA,MAAMC,YAAYC,aAAaV,MAAMC,SAASO;IAE9C,IAAIC,UAAUE,IAAI,KAAK,UAAU;QAC/B,MAAM,IAAInB,kBACR,CAAC,MAAM,EAAEgB,SAAS,WAAW,EAAER,KAAK,qBAAqB,EAAES,UAAUE,IAAI,CAAC,CAAC,CAAC,EAC5E;IACJ,CAAC;IAED,OAAOF;AACT,CAAC;AAED,OAAO,SAASC,aACdV,IAAY,EACZC,OAA+C,EAC/CW,SAAiB,EACjB;IACA,MAAMC,YAAYC,SAASd,MAAMC;IAEjC,MAAMQ,YAAYI,UAAUE,MAAM,CAACC,IAAI,CAAC,CAACC,QAAUA,MAAMjB,IAAI,KAAKY;IAElE,IAAI,CAACH,WAAW;QACd,MAAM,IAAIjB,kBAAkB,CAAC,OAAO,EAAEoB,UAAU,sBAAsB,EAAEZ,KAAK,CAAC,CAAC,EAAE;IACnF,CAAC;IAED,OAAOS;AACT,CAAC;AAED,OAAO,SAASK,SACdd,IAAY,EACZC,OAA+C,EAC/C;IACA,MAAMiB,OAAOxB,QAAQO;IAErB,MAAMY,YAAYM,MAAMC,OAAO,CAACF,KAAKG,MAAM,IACvCH,KAAKG,MAAM,CAACL,IAAI,CAAC,CAACM,QAAUA,MAAMtB,IAAI,KAAKA,QAC3CkB,KAAKG,MAAM,CAACrB,KAAK;IAErB,IAAI,CAACa,WAAW;QACd,MAAM,IAAIrB,kBAAkB,CAAC,OAAO,EAAEQ,KAAK,mBAAmB,CAAC,EAAE;IACnE,CAAC;IAED,OAAOa;AACT,CAAC;AAED,OAAO,SAASU,qBAAqBC,MAAoB,EAAEF,KAAa,EAAE;IACxE,MAAMG,YAAY,CAAC,EAAEH,MAAMI,KAAK,CAAC,GAAG,GAAGC,WAAW,GAAG,EAAEL,MAAMI,KAAK,CAAC,GAAG,CAAC;IAEvE,MAAME,WACJH,aAAaD,SAAS,AAACA,MAAiD,CAACC,UAAU,GAAG,IAAI;IAE5F,IAAI,CAACG,UAAU;QACb,MAAM,IAAIpC,kBAAkB,CAAC,kCAAkC,EAAE8B,MAAM,CAAC,EAAE;IAC5E,CAAC;IAED,OAAOM;AACT,CAAC"}
@@ -14,7 +14,7 @@ export interface DMMFField {
14
14
  relationFromFields?: string[];
15
15
  isUpdatedAt?: boolean;
16
16
  }
17
- interface DMMF {
17
+ export interface DMMF {
18
18
  datamodel: {
19
19
  models: {
20
20
  name: string;
@@ -31,7 +31,20 @@ interface DMMF {
31
31
  }[];
32
32
  };
33
33
  }
34
+ export interface RuntimeDataModel {
35
+ models: Record<string, {
36
+ fields: DMMFField[];
37
+ primaryKey: {
38
+ name: string | null;
39
+ fields: string[];
40
+ } | null;
41
+ uniqueIndexes: {
42
+ name: string | null;
43
+ fields: string[];
44
+ }[];
45
+ documentation?: string;
46
+ }>;
47
+ }
34
48
  export declare function getClient<Types extends SchemaTypes>(builder: PothosSchemaTypes.SchemaBuilder<Types>, context: Types["Context"]): PrismaClient;
35
- export declare function getDMMF<Types extends SchemaTypes>(builder: PothosSchemaTypes.SchemaBuilder<Types>): DMMF;
36
- export {};
49
+ export declare function getDMMF<Types extends SchemaTypes>(builder: PothosSchemaTypes.SchemaBuilder<Types>): DMMF["datamodel"] | RuntimeDataModel;
37
50
  //# sourceMappingURL=get-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-client.d.ts","sourceRoot":"","sources":["../../src/util/get-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,WAAW,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,UAAU,IAAI;IACZ,SAAS,EAAE;QACT,MAAM,EAAE;YACN,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,SAAS,EAAE,CAAC;YACpB,UAAU,EAAE;gBAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;gBAAC,MAAM,EAAE,MAAM,EAAE,CAAA;aAAE,GAAG,IAAI,CAAC;YAC7D,aAAa,EAAE;gBAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;gBAAC,MAAM,EAAE,MAAM,EAAE,CAAA;aAAE,EAAE,CAAC;YAC3D,aAAa,CAAC,EAAE,MAAM,CAAC;SACxB,EAAE,CAAC;KACL,CAAC;CACH;AAWD,wBAAgB,SAAS,CAAC,KAAK,SAAS,WAAW,EACjD,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,GACxB,YAAY,CAMd;AAED,wBAAgB,OAAO,CAAC,KAAK,SAAS,WAAW,EAC/C,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,IAAI,CAWN"}
1
+ {"version":3,"file":"get-client.d.ts","sourceRoot":"","sources":["../../src/util/get-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,WAAW,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,IAAI;IACnB,SAAS,EAAE;QACT,MAAM,EAAE;YACN,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,SAAS,EAAE,CAAC;YACpB,UAAU,EAAE;gBAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;gBAAC,MAAM,EAAE,MAAM,EAAE,CAAA;aAAE,GAAG,IAAI,CAAC;YAC7D,aAAa,EAAE;gBAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;gBAAC,MAAM,EAAE,MAAM,EAAE,CAAA;aAAE,EAAE,CAAC;YAC3D,aAAa,CAAC,EAAE,MAAM,CAAC;SACxB,EAAE,CAAC;KACL,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CACZ,MAAM,EACN;QACE,MAAM,EAAE,SAAS,EAAE,CAAC;QACpB,UAAU,EAAE;YAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YAAC,MAAM,EAAE,MAAM,EAAE,CAAA;SAAE,GAAG,IAAI,CAAC;QAC7D,aAAa,EAAE;YAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YAAC,MAAM,EAAE,MAAM,EAAE,CAAA;SAAE,EAAE,CAAC;QAC3D,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CACF,CAAC;CACH;AAWD,wBAAgB,SAAS,CAAC,KAAK,SAAS,WAAW,EACjD,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,GACxB,YAAY,CAMd;AAED,wBAAgB,OAAO,CAAC,KAAK,SAAS,WAAW,EAC/C,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,IAAI,CAAC,WAAW,CAAC,GAAG,gBAAgB,CAYtC"}
@@ -7,11 +7,12 @@ export function getClient(builder, context) {
7
7
  return builder.options.prisma.client;
8
8
  }
9
9
  export function getDMMF(builder) {
10
+ var _client__baseDmmf;
10
11
  if ("dmmf" in builder.options.prisma && builder.options.prisma.dmmf) {
11
- return builder.options.prisma.dmmf;
12
+ return builder.options.prisma.dmmf.datamodel;
12
13
  }
13
14
  const client = builder.options.prisma.client;
14
- var _client__baseDmmf;
15
- return (_client__baseDmmf = client._baseDmmf) !== null && _client__baseDmmf !== void 0 ? _client__baseDmmf : client._dmmf;
15
+ var _client__runtimeDataModel, _ref;
16
+ return (_ref = (_client__runtimeDataModel = client._runtimeDataModel) !== null && _client__runtimeDataModel !== void 0 ? _client__runtimeDataModel : (_client__baseDmmf = client._baseDmmf) === null || _client__baseDmmf === void 0 ? void 0 : _client__baseDmmf.datamodel) !== null && _ref !== void 0 ? _ref : client._dmmf.datamodel;
16
17
  }
17
18
  //# sourceMappingURL=get-client.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/get-client.ts"],"names":["createContextCache","prismaClientCache","builder","context","options","prisma","client","getClient","getDMMF","dmmf","_baseDmmf","_dmmf"],"mappings":"AAAA,uCAAuC,GACvC,SAASA,kBAAkB,QAAqB,eAAe;AA8B/D,MAAMC,oBAAoBD,mBACxB,CAA4BE,UAC1BF,mBAAmB,CAACG,UAClB,OAAOD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM,KAAK,aACrCJ,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM,CAACH,WAC9BD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM;AAIvC,OAAO,SAASC,UACdL,OAA+C,EAC/CC,OAAyB,EACX;IACd,IAAI,OAAOD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM,KAAK,YAAY;QACvD,OAAOL,kBAAkBC,SAASC;IACpC,CAAC;IAED,OAAOD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM;AACtC,CAAC;AAED,OAAO,SAASE,QACdN,OAA+C,EACzC;IACN,IAAI,UAAUA,QAAQE,OAAO,CAACC,MAAM,IAAIH,QAAQE,OAAO,CAACC,MAAM,CAACI,IAAI,EAAE;QACnE,OAAOP,QAAQE,OAAO,CAACC,MAAM,CAACI,IAAI;IACpC,CAAC;IAED,MAAMH,SAASJ,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM;QAKrCA;IAAP,OAAOA,CAAAA,oBAAAA,OAAOI,SAAS,cAAhBJ,+BAAAA,oBAAoBA,OAAOK,KAAK;AACzC,CAAC"}
1
+ {"version":3,"sources":["../../src/util/get-client.ts"],"names":["createContextCache","prismaClientCache","builder","context","options","prisma","client","getClient","getDMMF","dmmf","datamodel","_runtimeDataModel","_baseDmmf","_dmmf"],"mappings":"AAAA,uCAAuC,GACvC,SAASA,kBAAkB,QAAqB,eAAe;AA0C/D,MAAMC,oBAAoBD,mBACxB,CAA4BE,UAC1BF,mBAAmB,CAACG,UAClB,OAAOD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM,KAAK,aACrCJ,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM,CAACH,WAC9BD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM;AAIvC,OAAO,SAASC,UACdL,OAA+C,EAC/CC,OAAyB,EACX;IACd,IAAI,OAAOD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM,KAAK,YAAY;QACvD,OAAOL,kBAAkBC,SAASC;IACpC,CAAC;IAED,OAAOD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM;AACtC,CAAC;AAED,OAAO,SAASE,QACdN,OAA+C,EACT;QAWHI;IAVnC,IAAI,UAAUJ,QAAQE,OAAO,CAACC,MAAM,IAAIH,QAAQE,OAAO,CAACC,MAAM,CAACI,IAAI,EAAE;QACnE,OAAO,AAACP,QAAQE,OAAO,CAACC,MAAM,CAACI,IAAI,CAAUC,SAAS;IACxD,CAAC;IAED,MAAMJ,SAASJ,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM;QAMrCA,2BAAAA;IAAP,OAAOA,CAAAA,OAAAA,CAAAA,4BAAAA,OAAOK,iBAAiB,cAAxBL,uCAAAA,4BAA4BA,CAAAA,oBAAAA,OAAOM,SAAS,cAAhBN,+BAAAA,KAAAA,IAAAA,kBAAkBI,SAAS,cAAvDJ,kBAAAA,OAA2DA,OAAOO,KAAK,CAACH,SAAS;AAC1F,CAAC"}
@@ -1,12 +1,24 @@
1
- import { DMMF } from '@prisma/generator-helper';
1
+ import { DMMF, RuntimeDataModel } from './get-client.js';
2
2
  export interface FieldMap {
3
3
  model: string;
4
4
  relations: Map<string, FieldMap>;
5
5
  }
6
6
  export type RelationMap = Map<string, FieldMap>;
7
7
  export declare const getRelationMap: import("@pothos/core").ContextCache<RelationMap, {
8
- datamodel: unknown;
9
- }, [
8
+ models: {
9
+ name: string;
10
+ fields: import("./get-client.js").DMMFField[];
11
+ primaryKey: {
12
+ name: string | null;
13
+ fields: string[];
14
+ } | null;
15
+ uniqueIndexes: {
16
+ name: string | null;
17
+ fields: string[];
18
+ }[];
19
+ documentation?: string | undefined;
20
+ }[];
21
+ } | RuntimeDataModel, [
10
22
  ]>;
11
- export declare function createRelationMap({ models }: DMMF.Datamodel): RelationMap;
23
+ export declare function createRelationMap({ models }: DMMF["datamodel"] | RuntimeDataModel): RelationMap;
12
24
  //# sourceMappingURL=relation-map.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"relation-map.d.ts","sourceRoot":"","sources":["../../src/util/relation-map.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAEhD,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CAClC;AAED,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAEhD,eAAO,MAAM,cAAc;eAA0C,OAAO;MAE3E,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,SAAS,eAkB3D"}
1
+ {"version":3,"file":"relation-map.d.ts","sourceRoot":"","sources":["../../src/util/relation-map.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEtD,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CAClC;AAED,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAEhD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;yBAE1B,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,gBAAgB,eAkCjF"}
@@ -1,21 +1,39 @@
1
1
  import { createContextCache } from '@pothos/core';
2
- export const getRelationMap = createContextCache((dmmf) => createRelationMap(dmmf.datamodel));
2
+ export const getRelationMap = createContextCache((datamodel) => createRelationMap(datamodel));
3
3
  export function createRelationMap({ models }) {
4
4
  const relationMap = new Map();
5
- models.forEach((model) => {
6
- relationMap.set(model.name, {
7
- model: model.name,
8
- relations: new Map()
5
+ if (Array.isArray(models)) {
6
+ models.forEach((model) => {
7
+ relationMap.set(model.name, {
8
+ model: model.name,
9
+ relations: new Map()
10
+ });
9
11
  });
10
- });
11
- models.forEach((model) => {
12
- const map = relationMap.get(model.name).relations;
13
- model.fields.forEach((field) => {
14
- if (field.kind === "object" && relationMap.has(field.type)) {
15
- map.set(field.name, relationMap.get(field.type));
16
- }
12
+ models.forEach((model) => {
13
+ const map = relationMap.get(model.name).relations;
14
+ model.fields.forEach((field) => {
15
+ if (field.kind === "object" && relationMap.has(field.type)) {
16
+ map.set(field.name, relationMap.get(field.type));
17
+ }
18
+ });
17
19
  });
18
- });
20
+ }
21
+ else {
22
+ Object.keys(models).forEach((name) => {
23
+ relationMap.set(name, {
24
+ model: name,
25
+ relations: new Map()
26
+ });
27
+ });
28
+ Object.entries(models).forEach(([name, model]) => {
29
+ const map = relationMap.get(name).relations;
30
+ model.fields.forEach((field) => {
31
+ if (field.kind === "object" && relationMap.has(field.type)) {
32
+ map.set(field.name, relationMap.get(field.type));
33
+ }
34
+ });
35
+ });
36
+ }
19
37
  return relationMap;
20
38
  }
21
39
  //# sourceMappingURL=relation-map.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/relation-map.ts"],"names":["createContextCache","getRelationMap","dmmf","createRelationMap","datamodel","models","relationMap","Map","forEach","model","set","name","relations","map","get","fields","field","kind","has","type"],"mappings":"AAAA,SAASA,kBAAkB,QAAQ,eAAe;AAUlD,OAAO,MAAMC,iBAAiBD,mBAAmB,CAACE,OAChDC,kBAAkBD,KAAKE,SAAS,GAChC;AAEF,OAAO,SAASD,kBAAkB,EAAEE,OAAM,EAAkB,EAAE;IAC5D,MAAMC,cAA2B,IAAIC;IAErCF,OAAOG,OAAO,CAAC,CAACC,QAAU;QACxBH,YAAYI,GAAG,CAACD,MAAME,IAAI,EAAE;YAAEF,OAAOA,MAAME,IAAI;YAAEC,WAAW,IAAIL;QAAM;IACxE;IAEAF,OAAOG,OAAO,CAAC,CAACC,QAAU;QACxB,MAAMI,MAAMP,YAAYQ,GAAG,CAACL,MAAME,IAAI,EAAGC,SAAS;QAElDH,MAAMM,MAAM,CAACP,OAAO,CAAC,CAACQ,QAAU;YAC9B,IAAIA,MAAMC,IAAI,KAAK,YAAYX,YAAYY,GAAG,CAACF,MAAMG,IAAI,GAAG;gBAC1DN,IAAIH,GAAG,CAACM,MAAML,IAAI,EAAEL,YAAYQ,GAAG,CAACE,MAAMG,IAAI;YAChD,CAAC;QACH;IACF;IAEA,OAAOb;AACT,CAAC"}
1
+ {"version":3,"sources":["../../src/util/relation-map.ts"],"names":["createContextCache","getRelationMap","datamodel","createRelationMap","models","relationMap","Map","Array","isArray","forEach","model","set","name","relations","map","get","fields","field","kind","has","type","Object","keys","entries"],"mappings":"AAAA,SAASA,kBAAkB,QAAQ,eAAe;AAUlD,OAAO,MAAMC,iBAAiBD,mBAC5B,CAACE,YAAoDC,kBAAkBD,YACvE;AAEF,OAAO,SAASC,kBAAkB,EAAEC,OAAM,EAAwC,EAAE;IAClF,MAAMC,cAA2B,IAAIC;IAErC,IAAIC,MAAMC,OAAO,CAACJ,SAAS;QACzBA,OAAOK,OAAO,CAAC,CAACC,QAAU;YACxBL,YAAYM,GAAG,CAACD,MAAME,IAAI,EAAE;gBAAEF,OAAOA,MAAME,IAAI;gBAAEC,WAAW,IAAIP;YAAM;QACxE;QAEAF,OAAOK,OAAO,CAAC,CAACC,QAAU;YACxB,MAAMI,MAAMT,YAAYU,GAAG,CAACL,MAAME,IAAI,EAAGC,SAAS;YAElDH,MAAMM,MAAM,CAACP,OAAO,CAAC,CAACQ,QAAU;gBAC9B,IAAIA,MAAMC,IAAI,KAAK,YAAYb,YAAYc,GAAG,CAACF,MAAMG,IAAI,GAAG;oBAC1DN,IAAIH,GAAG,CAACM,MAAML,IAAI,EAAEP,YAAYU,GAAG,CAACE,MAAMG,IAAI;gBAChD,CAAC;YACH;QACF;IACF,OAAO;QACLC,OAAOC,IAAI,CAAClB,QAAQK,OAAO,CAAC,CAACG,OAAS;YACpCP,YAAYM,GAAG,CAACC,MAAM;gBAAEF,OAAOE;gBAAMC,WAAW,IAAIP;YAAM;QAC5D;QAEAe,OAAOE,OAAO,CAACnB,QAAQK,OAAO,CAAC,CAAC,CAACG,MAAMF,MAAM,GAAK;YAChD,MAAMI,MAAMT,YAAYU,GAAG,CAACH,MAAOC,SAAS;YAE5CH,MAAMM,MAAM,CAACP,OAAO,CAAC,CAACQ,QAAU;gBAC9B,IAAIA,MAAMC,IAAI,KAAK,YAAYb,YAAYc,GAAG,CAACF,MAAMG,IAAI,GAAG;oBAC1DN,IAAIH,GAAG,CAACM,MAAML,IAAI,EAAEP,YAAYU,GAAG,CAACE,MAAMG,IAAI;gBAChD,CAAC;YACH;QACF;IACF,CAAC;IAED,OAAOf;AACT,CAAC"}
package/lib/generator.js CHANGED
@@ -139,6 +139,7 @@ function buildTypes(dmmf, config) {
139
139
  const modelTypes = dmmf.datamodel.models.map((model)=>{
140
140
  const relations = model.fields.filter((field)=>!!field.relationName);
141
141
  const listRelations = model.fields.filter((field)=>!!field.relationName && field.isList);
142
+ const createInputUnavailable = !dmmf.schema.inputObjectTypes.prisma.some((input)=>input.name === `${model.name}CreateInput`);
142
143
  return _typescript.default.factory.createPropertySignature([], model.name, undefined, _typescript.default.factory.createTypeLiteralNode([
143
144
  _typescript.default.factory.createPropertySignature([], 'Name', undefined, _typescript.default.factory.createLiteralTypeNode(_typescript.default.factory.createStringLiteral(model.name))),
144
145
  _typescript.default.factory.createPropertySignature([], 'Shape', undefined, _typescript.default.factory.createTypeReferenceNode(model.name)),
@@ -148,7 +149,7 @@ function buildTypes(dmmf, config) {
148
149
  _typescript.default.factory.createPropertySignature([], 'WhereUnique', undefined, _typescript.default.factory.createTypeReferenceNode(`Prisma.${model.name}WhereUniqueInput`)),
149
150
  _typescript.default.factory.createPropertySignature([], 'Where', undefined, _typescript.default.factory.createTypeReferenceNode(`Prisma.${model.name}WhereInput`)),
150
151
  ...prismaUtils ? [
151
- _typescript.default.factory.createPropertySignature([], 'Create', undefined, _typescript.default.factory.createTypeReferenceNode(`Prisma.${model.name}CreateInput`)),
152
+ _typescript.default.factory.createPropertySignature([], 'Create', undefined, createInputUnavailable ? _typescript.default.factory.createTypeLiteralNode([]) : _typescript.default.factory.createTypeReferenceNode(`Prisma.${model.name}CreateInput`)),
152
153
  _typescript.default.factory.createPropertySignature([], 'Update', undefined, _typescript.default.factory.createTypeReferenceNode(`Prisma.${model.name}UpdateInput`))
153
154
  ] : [
154
155
  _typescript.default.factory.createPropertySignature([], 'Create', undefined, _typescript.default.factory.createTypeLiteralNode([])),
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/generator.ts"],"names":["MIN_TS_VERSION","versionParts","version","split","map","part","Number","parseInt","modifiersArg","checkTSVersion","i","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","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","prismaUtils","modelTypes","relations","fields","filter","field","relationName","listRelations","isList","createPropertySignature","createTypeLiteralNode","createLiteralTypeNode","createTypeReferenceNode","length","createUnionTypeNode","typeName","createArrayTypeNode","isRequired","createNull","createInterfaceDeclaration","createModifier","SyntaxKind","ExportKeyword","DefaultKeyword"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/generator.ts"],"names":["MIN_TS_VERSION","versionParts","version","split","map","part","Number","parseInt","modifiersArg","checkTSVersion","i","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","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","prismaUtils","modelTypes","relations","fields","filter","field","relationName","listRelations","isList","createInputUnavailable","some","input","createPropertySignature","createTypeLiteralNode","createLiteralTypeNode","createTypeReferenceNode","length","createUnionTypeNode","typeName","createArrayTypeNode","isRequired","createNull","createInterfaceDeclaration","createModifier","SyntaxKind","ExportKeyword","DefaultKeyword"],"mappings":"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"}
@@ -51,7 +51,7 @@ function getFieldData(name, builder, fieldName) {
51
51
  }
52
52
  function getModel(name, builder) {
53
53
  const dmmf = (0, _getClient.getDMMF)(builder);
54
- const modelData = dmmf.datamodel.models.find((model)=>model.name === name);
54
+ const modelData = Array.isArray(dmmf.models) ? dmmf.models.find((model)=>model.name === name) : dmmf.models[name];
55
55
  if (!modelData) {
56
56
  throw new _core.PothosSchemaError(`Model '${name}' not found in DMMF`);
57
57
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/datamodel.ts"],"names":["refMap","findUniqueMap","includeForRefMap","getRefFromModel","getRelation","getFieldData","getModel","getDelegateFromModel","WeakMap","name","builder","has","set","Map","cache","get","PrismaObjectRef","relation","fieldData","kind","PothosSchemaError","fieldName","modelData","fields","find","field","dmmf","getDMMF","datamodel","models","model","client","lowerCase","slice","toLowerCase","delegate"],"mappings":";;;;;;;;;;;IAKaA,MAAM,MAANA;IACAC,aAAa,MAAbA;IAKAC,gBAAgB,MAAhBA;IAKGC,eAAe,MAAfA;IAgBAC,WAAW,MAAXA;IAgBAC,YAAY,MAAZA;IAgBAC,QAAQ,MAARA;IAcAC,oBAAoB,MAApBA;;sBA9E0C;2BAC1B;2BAER;AAEjB,MAAMP,SAAS,IAAIQ;AACnB,MAAMP,gBAAgB,IAAIO;AAK1B,MAAMN,mBAAmB,IAAIM;AAK7B,SAASL,gBACdM,IAAY,EACZC,OAA+C,EACZ;IACnC,IAAI,CAACV,OAAOW,GAAG,CAACD,UAAU;QACxBV,OAAOY,GAAG,CAACF,SAAS,IAAIG;IAC1B,CAAC;IACD,MAAMC,QAAQd,OAAOe,GAAG,CAACL;IAEzB,IAAI,CAACI,MAAMH,GAAG,CAACF,OAAO;QACpBK,MAAMF,GAAG,CAACH,MAAM,IAAIO,0BAAe,CAACP,MAAMA;IAC5C,CAAC;IAED,OAAOK,MAAMC,GAAG,CAACN;AACnB;AAEO,SAASL,YACdK,IAAY,EACZC,OAA+C,EAC/CO,QAAgB,EAChB;IACA,MAAMC,YAAYb,aAAaI,MAAMC,SAASO;IAE9C,IAAIC,UAAUC,IAAI,KAAK,UAAU;QAC/B,MAAM,IAAIC,uBAAiB,CACzB,CAAC,MAAM,EAAEH,SAAS,WAAW,EAAER,KAAK,qBAAqB,EAAES,UAAUC,IAAI,CAAC,CAAC,CAAC,EAC5E;IACJ,CAAC;IAED,OAAOD;AACT;AAEO,SAASb,aACdI,IAAY,EACZC,OAA+C,EAC/CW,SAAiB,EACjB;IACA,MAAMC,YAAYhB,SAASG,MAAMC;IAEjC,MAAMQ,YAAYI,UAAUC,MAAM,CAACC,IAAI,CAAC,CAACC,QAAUA,MAAMhB,IAAI,KAAKY;IAElE,IAAI,CAACH,WAAW;QACd,MAAM,IAAIE,uBAAiB,CAAC,CAAC,OAAO,EAAEC,UAAU,sBAAsB,EAAEZ,KAAK,CAAC,CAAC,EAAE;IACnF,CAAC;IAED,OAAOS;AACT;AAEO,SAASZ,SACdG,IAAY,EACZC,OAA+C,EAC/C;IACA,MAAMgB,OAAOC,IAAAA,kBAAO,EAACjB;IACrB,MAAMY,YAAYI,KAAKE,SAAS,CAACC,MAAM,CAACL,IAAI,CAAC,CAACM,QAAUA,MAAMrB,IAAI,KAAKA;IAEvE,IAAI,CAACa,WAAW;QACd,MAAM,IAAIF,uBAAiB,CAAC,CAAC,OAAO,EAAEX,KAAK,mBAAmB,CAAC,EAAE;IACnE,CAAC;IAED,OAAOa;AACT;AAEO,SAASf,qBAAqBwB,MAAoB,EAAED,KAAa,EAAE;IACxE,MAAME,YAAY,CAAC,EAAEF,MAAMG,KAAK,CAAC,GAAG,GAAGC,WAAW,GAAG,EAAEJ,MAAMG,KAAK,CAAC,GAAG,CAAC;IAEvE,MAAME,WACJH,aAAaD,SAAS,AAACA,MAAiD,CAACC,UAAU,GAAG,IAAI;IAE5F,IAAI,CAACG,UAAU;QACb,MAAM,IAAIf,uBAAiB,CAAC,CAAC,kCAAkC,EAAEU,MAAM,CAAC,EAAE;IAC5E,CAAC;IAED,OAAOK;AACT"}
1
+ {"version":3,"sources":["../../src/util/datamodel.ts"],"names":["refMap","findUniqueMap","includeForRefMap","getRefFromModel","getRelation","getFieldData","getModel","getDelegateFromModel","WeakMap","name","builder","has","set","Map","cache","get","PrismaObjectRef","relation","fieldData","kind","PothosSchemaError","fieldName","modelData","fields","find","field","dmmf","getDMMF","Array","isArray","models","model","client","lowerCase","slice","toLowerCase","delegate"],"mappings":";;;;;;;;;;;IAKaA,MAAM,MAANA;IACAC,aAAa,MAAbA;IAKAC,gBAAgB,MAAhBA;IAKGC,eAAe,MAAfA;IAgBAC,WAAW,MAAXA;IAgBAC,YAAY,MAAZA;IAgBAC,QAAQ,MAARA;IAiBAC,oBAAoB,MAApBA;;sBAjF0C;2BAC1B;2BAER;AAEjB,MAAMP,SAAS,IAAIQ;AACnB,MAAMP,gBAAgB,IAAIO;AAK1B,MAAMN,mBAAmB,IAAIM;AAK7B,SAASL,gBACdM,IAAY,EACZC,OAA+C,EACZ;IACnC,IAAI,CAACV,OAAOW,GAAG,CAACD,UAAU;QACxBV,OAAOY,GAAG,CAACF,SAAS,IAAIG;IAC1B,CAAC;IACD,MAAMC,QAAQd,OAAOe,GAAG,CAACL;IAEzB,IAAI,CAACI,MAAMH,GAAG,CAACF,OAAO;QACpBK,MAAMF,GAAG,CAACH,MAAM,IAAIO,0BAAe,CAACP,MAAMA;IAC5C,CAAC;IAED,OAAOK,MAAMC,GAAG,CAACN;AACnB;AAEO,SAASL,YACdK,IAAY,EACZC,OAA+C,EAC/CO,QAAgB,EAChB;IACA,MAAMC,YAAYb,aAAaI,MAAMC,SAASO;IAE9C,IAAIC,UAAUC,IAAI,KAAK,UAAU;QAC/B,MAAM,IAAIC,uBAAiB,CACzB,CAAC,MAAM,EAAEH,SAAS,WAAW,EAAER,KAAK,qBAAqB,EAAES,UAAUC,IAAI,CAAC,CAAC,CAAC,EAC5E;IACJ,CAAC;IAED,OAAOD;AACT;AAEO,SAASb,aACdI,IAAY,EACZC,OAA+C,EAC/CW,SAAiB,EACjB;IACA,MAAMC,YAAYhB,SAASG,MAAMC;IAEjC,MAAMQ,YAAYI,UAAUC,MAAM,CAACC,IAAI,CAAC,CAACC,QAAUA,MAAMhB,IAAI,KAAKY;IAElE,IAAI,CAACH,WAAW;QACd,MAAM,IAAIE,uBAAiB,CAAC,CAAC,OAAO,EAAEC,UAAU,sBAAsB,EAAEZ,KAAK,CAAC,CAAC,EAAE;IACnF,CAAC;IAED,OAAOS;AACT;AAEO,SAASZ,SACdG,IAAY,EACZC,OAA+C,EAC/C;IACA,MAAMgB,OAAOC,IAAAA,kBAAO,EAACjB;IAErB,MAAMY,YAAYM,MAAMC,OAAO,CAACH,KAAKI,MAAM,IACvCJ,KAAKI,MAAM,CAACN,IAAI,CAAC,CAACO,QAAUA,MAAMtB,IAAI,KAAKA,QAC3CiB,KAAKI,MAAM,CAACrB,KAAK;IAErB,IAAI,CAACa,WAAW;QACd,MAAM,IAAIF,uBAAiB,CAAC,CAAC,OAAO,EAAEX,KAAK,mBAAmB,CAAC,EAAE;IACnE,CAAC;IAED,OAAOa;AACT;AAEO,SAASf,qBAAqByB,MAAoB,EAAED,KAAa,EAAE;IACxE,MAAME,YAAY,CAAC,EAAEF,MAAMG,KAAK,CAAC,GAAG,GAAGC,WAAW,GAAG,EAAEJ,MAAMG,KAAK,CAAC,GAAG,CAAC;IAEvE,MAAME,WACJH,aAAaD,SAAS,AAACA,MAAiD,CAACC,UAAU,GAAG,IAAI;IAE5F,IAAI,CAACG,UAAU;QACb,MAAM,IAAIhB,uBAAiB,CAAC,CAAC,kCAAkC,EAAEW,MAAM,CAAC,EAAE;IAC5E,CAAC;IAED,OAAOK;AACT"}
@@ -21,12 +21,13 @@ function getClient(builder, context) {
21
21
  return builder.options.prisma.client;
22
22
  }
23
23
  function getDMMF(builder) {
24
+ var _client__baseDmmf;
24
25
  if ('dmmf' in builder.options.prisma && builder.options.prisma.dmmf) {
25
- return builder.options.prisma.dmmf;
26
+ return builder.options.prisma.dmmf.datamodel;
26
27
  }
27
28
  const client = builder.options.prisma.client;
28
- var _client__baseDmmf;
29
- return (_client__baseDmmf = client._baseDmmf) !== null && _client__baseDmmf !== void 0 ? _client__baseDmmf : client._dmmf;
29
+ var _client__runtimeDataModel, _ref;
30
+ return (_ref = (_client__runtimeDataModel = client._runtimeDataModel) !== null && _client__runtimeDataModel !== void 0 ? _client__runtimeDataModel : (_client__baseDmmf = client._baseDmmf) === null || _client__baseDmmf === void 0 ? void 0 : _client__baseDmmf.datamodel) !== null && _ref !== void 0 ? _ref : client._dmmf.datamodel;
30
31
  }
31
32
 
32
33
  //# sourceMappingURL=get-client.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/get-client.ts"],"names":["getClient","getDMMF","prismaClientCache","createContextCache","builder","context","options","prisma","client","dmmf","_baseDmmf","_dmmf"],"mappings":"AAAA,uCAAuC;;;;;;;;;;;IAwCvBA,SAAS,MAATA;IAWAC,OAAO,MAAPA;;sBAlDgC;AA8BhD,MAAMC,oBAAoBC,IAAAA,wBAAkB,EAC1C,CAA4BC,UAC1BD,IAAAA,wBAAkB,EAAC,CAACE,UAClB,OAAOD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM,KAAK,aACrCJ,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM,CAACH,WAC9BD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM;AAIhC,SAASR,UACdI,OAA+C,EAC/CC,OAAyB,EACX;IACd,IAAI,OAAOD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM,KAAK,YAAY;QACvD,OAAON,kBAAkBE,SAASC;IACpC,CAAC;IAED,OAAOD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM;AACtC;AAEO,SAASP,QACdG,OAA+C,EACzC;IACN,IAAI,UAAUA,QAAQE,OAAO,CAACC,MAAM,IAAIH,QAAQE,OAAO,CAACC,MAAM,CAACE,IAAI,EAAE;QACnE,OAAOL,QAAQE,OAAO,CAACC,MAAM,CAACE,IAAI;IACpC,CAAC;IAED,MAAMD,SAASJ,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM;QAKrCA;IAAP,OAAOA,CAAAA,oBAAAA,OAAOE,SAAS,cAAhBF,+BAAAA,oBAAoBA,OAAOG,KAAK;AACzC"}
1
+ {"version":3,"sources":["../../src/util/get-client.ts"],"names":["getClient","getDMMF","prismaClientCache","createContextCache","builder","context","options","prisma","client","dmmf","datamodel","_runtimeDataModel","_baseDmmf","_dmmf"],"mappings":"AAAA,uCAAuC;;;;;;;;;;;IAoDvBA,SAAS,MAATA;IAWAC,OAAO,MAAPA;;sBA9DgC;AA0ChD,MAAMC,oBAAoBC,IAAAA,wBAAkB,EAC1C,CAA4BC,UAC1BD,IAAAA,wBAAkB,EAAC,CAACE,UAClB,OAAOD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM,KAAK,aACrCJ,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM,CAACH,WAC9BD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM;AAIhC,SAASR,UACdI,OAA+C,EAC/CC,OAAyB,EACX;IACd,IAAI,OAAOD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM,KAAK,YAAY;QACvD,OAAON,kBAAkBE,SAASC;IACpC,CAAC;IAED,OAAOD,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM;AACtC;AAEO,SAASP,QACdG,OAA+C,EACT;QAWHI;IAVnC,IAAI,UAAUJ,QAAQE,OAAO,CAACC,MAAM,IAAIH,QAAQE,OAAO,CAACC,MAAM,CAACE,IAAI,EAAE;QACnE,OAAO,AAACL,QAAQE,OAAO,CAACC,MAAM,CAACE,IAAI,CAAUC,SAAS;IACxD,CAAC;IAED,MAAMF,SAASJ,QAAQE,OAAO,CAACC,MAAM,CAACC,MAAM;QAMrCA,2BAAAA;IAAP,OAAOA,CAAAA,OAAAA,CAAAA,4BAAAA,OAAOG,iBAAiB,cAAxBH,uCAAAA,4BAA4BA,CAAAA,oBAAAA,OAAOI,SAAS,cAAhBJ,+BAAAA,KAAAA,IAAAA,kBAAkBE,SAAS,cAAvDF,kBAAAA,OAA2DA,OAAOK,KAAK,CAACH,SAAS;AAC1F"}
@@ -13,23 +13,40 @@ _export(exports, {
13
13
  createRelationMap: ()=>createRelationMap
14
14
  });
15
15
  const _core = require("@pothos/core");
16
- const getRelationMap = (0, _core.createContextCache)((dmmf)=>createRelationMap(dmmf.datamodel));
16
+ const getRelationMap = (0, _core.createContextCache)((datamodel)=>createRelationMap(datamodel));
17
17
  function createRelationMap({ models }) {
18
18
  const relationMap = new Map();
19
- models.forEach((model)=>{
20
- relationMap.set(model.name, {
21
- model: model.name,
22
- relations: new Map()
19
+ if (Array.isArray(models)) {
20
+ models.forEach((model)=>{
21
+ relationMap.set(model.name, {
22
+ model: model.name,
23
+ relations: new Map()
24
+ });
23
25
  });
24
- });
25
- models.forEach((model)=>{
26
- const map = relationMap.get(model.name).relations;
27
- model.fields.forEach((field)=>{
28
- if (field.kind === 'object' && relationMap.has(field.type)) {
29
- map.set(field.name, relationMap.get(field.type));
30
- }
26
+ models.forEach((model)=>{
27
+ const map = relationMap.get(model.name).relations;
28
+ model.fields.forEach((field)=>{
29
+ if (field.kind === 'object' && relationMap.has(field.type)) {
30
+ map.set(field.name, relationMap.get(field.type));
31
+ }
32
+ });
31
33
  });
32
- });
34
+ } else {
35
+ Object.keys(models).forEach((name)=>{
36
+ relationMap.set(name, {
37
+ model: name,
38
+ relations: new Map()
39
+ });
40
+ });
41
+ Object.entries(models).forEach(([name, model])=>{
42
+ const map = relationMap.get(name).relations;
43
+ model.fields.forEach((field)=>{
44
+ if (field.kind === 'object' && relationMap.has(field.type)) {
45
+ map.set(field.name, relationMap.get(field.type));
46
+ }
47
+ });
48
+ });
49
+ }
33
50
  return relationMap;
34
51
  }
35
52
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/relation-map.ts"],"names":["getRelationMap","createRelationMap","createContextCache","dmmf","datamodel","models","relationMap","Map","forEach","model","set","name","relations","map","get","fields","field","kind","has","type"],"mappings":";;;;;;;;;;;IAUaA,cAAc,MAAdA;IAIGC,iBAAiB,MAAjBA;;sBAdmB;AAU5B,MAAMD,iBAAiBE,IAAAA,wBAAkB,EAAC,CAACC,OAChDF,kBAAkBE,KAAKC,SAAS;AAG3B,SAASH,kBAAkB,EAAEI,OAAM,EAAkB,EAAE;IAC5D,MAAMC,cAA2B,IAAIC;IAErCF,OAAOG,OAAO,CAAC,CAACC,QAAU;QACxBH,YAAYI,GAAG,CAACD,MAAME,IAAI,EAAE;YAAEF,OAAOA,MAAME,IAAI;YAAEC,WAAW,IAAIL;QAAM;IACxE;IAEAF,OAAOG,OAAO,CAAC,CAACC,QAAU;QACxB,MAAMI,MAAMP,YAAYQ,GAAG,CAACL,MAAME,IAAI,EAAGC,SAAS;QAElDH,MAAMM,MAAM,CAACP,OAAO,CAAC,CAACQ,QAAU;YAC9B,IAAIA,MAAMC,IAAI,KAAK,YAAYX,YAAYY,GAAG,CAACF,MAAMG,IAAI,GAAG;gBAC1DN,IAAIH,GAAG,CAACM,MAAML,IAAI,EAAEL,YAAYQ,GAAG,CAACE,MAAMG,IAAI;YAChD,CAAC;QACH;IACF;IAEA,OAAOb;AACT"}
1
+ {"version":3,"sources":["../../src/util/relation-map.ts"],"names":["getRelationMap","createRelationMap","createContextCache","datamodel","models","relationMap","Map","Array","isArray","forEach","model","set","name","relations","map","get","fields","field","kind","has","type","Object","keys","entries"],"mappings":";;;;;;;;;;;IAUaA,cAAc,MAAdA;IAIGC,iBAAiB,MAAjBA;;sBAdmB;AAU5B,MAAMD,iBAAiBE,IAAAA,wBAAkB,EAC9C,CAACC,YAAoDF,kBAAkBE;AAGlE,SAASF,kBAAkB,EAAEG,OAAM,EAAwC,EAAE;IAClF,MAAMC,cAA2B,IAAIC;IAErC,IAAIC,MAAMC,OAAO,CAACJ,SAAS;QACzBA,OAAOK,OAAO,CAAC,CAACC,QAAU;YACxBL,YAAYM,GAAG,CAACD,MAAME,IAAI,EAAE;gBAAEF,OAAOA,MAAME,IAAI;gBAAEC,WAAW,IAAIP;YAAM;QACxE;QAEAF,OAAOK,OAAO,CAAC,CAACC,QAAU;YACxB,MAAMI,MAAMT,YAAYU,GAAG,CAACL,MAAME,IAAI,EAAGC,SAAS;YAElDH,MAAMM,MAAM,CAACP,OAAO,CAAC,CAACQ,QAAU;gBAC9B,IAAIA,MAAMC,IAAI,KAAK,YAAYb,YAAYc,GAAG,CAACF,MAAMG,IAAI,GAAG;oBAC1DN,IAAIH,GAAG,CAACM,MAAML,IAAI,EAAEP,YAAYU,GAAG,CAACE,MAAMG,IAAI;gBAChD,CAAC;YACH;QACF;IACF,OAAO;QACLC,OAAOC,IAAI,CAAClB,QAAQK,OAAO,CAAC,CAACG,OAAS;YACpCP,YAAYM,GAAG,CAACC,MAAM;gBAAEF,OAAOE;gBAAMC,WAAW,IAAIP;YAAM;QAC5D;QAEAe,OAAOE,OAAO,CAACnB,QAAQK,OAAO,CAAC,CAAC,CAACG,MAAMF,MAAM,GAAK;YAChD,MAAMI,MAAMT,YAAYU,GAAG,CAACH,MAAOC,SAAS;YAE5CH,MAAMM,MAAM,CAACP,OAAO,CAAC,CAACQ,QAAU;gBAC9B,IAAIA,MAAMC,IAAI,KAAK,YAAYb,YAAYc,GAAG,CAACF,MAAMG,IAAI,GAAG;oBAC1DN,IAAIH,GAAG,CAACM,MAAML,IAAI,EAAEP,YAAYU,GAAG,CAACE,MAAMG,IAAI;gBAChD,CAAC;YACH;QACF;IACF,CAAC;IAED,OAAOf;AACT"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pothos/plugin-prisma",
3
- "version": "3.50.0",
3
+ "version": "3.51.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",
@@ -64,11 +64,11 @@
64
64
  "typescript": ">=4.7.2"
65
65
  },
66
66
  "devDependencies": {
67
- "@prisma/client": "^4.11.0",
67
+ "@prisma/client": "^4.14.0",
68
68
  "graphql": "16.6.0",
69
69
  "graphql-scalars": "^1.20.4",
70
70
  "graphql-tag": "^2.12.6",
71
- "prisma": "^4.11.0",
71
+ "prisma": "^4.14.0",
72
72
  "@pothos/core": "3.30.0",
73
73
  "@pothos/plugin-complexity": "3.12.1",
74
74
  "@pothos/plugin-errors": "3.11.1",
package/src/generator.ts CHANGED
@@ -144,6 +144,10 @@ function buildTypes(dmmf: DMMF.Document, config: { prismaUtils?: string }) {
144
144
  const relations = model.fields.filter((field) => !!field.relationName);
145
145
  const listRelations = model.fields.filter((field) => !!field.relationName && field.isList);
146
146
 
147
+ const createInputUnavailable = !dmmf.schema.inputObjectTypes.prisma.some(
148
+ (input) => input.name === `${model.name}CreateInput`,
149
+ );
150
+
147
151
  return ts.factory.createPropertySignature(
148
152
  [],
149
153
  model.name,
@@ -200,7 +204,9 @@ function buildTypes(dmmf: DMMF.Document, config: { prismaUtils?: string }) {
200
204
  [],
201
205
  'Create',
202
206
  undefined,
203
- ts.factory.createTypeReferenceNode(`Prisma.${model.name}CreateInput`),
207
+ createInputUnavailable
208
+ ? ts.factory.createTypeLiteralNode([])
209
+ : ts.factory.createTypeReferenceNode(`Prisma.${model.name}CreateInput`),
204
210
  ),
205
211
  ts.factory.createPropertySignature(
206
212
  [],
@@ -67,7 +67,10 @@ export function getModel<Types extends SchemaTypes>(
67
67
  builder: PothosSchemaTypes.SchemaBuilder<Types>,
68
68
  ) {
69
69
  const dmmf = getDMMF(builder);
70
- const modelData = dmmf.datamodel.models.find((model) => model.name === name);
70
+
71
+ const modelData = Array.isArray(dmmf.models)
72
+ ? dmmf.models.find((model) => model.name === name)
73
+ : dmmf.models[name];
71
74
 
72
75
  if (!modelData) {
73
76
  throw new PothosSchemaError(`Model '${name}' not found in DMMF`);
@@ -17,7 +17,7 @@ export interface DMMFField {
17
17
  isUpdatedAt?: boolean;
18
18
  }
19
19
 
20
- interface DMMF {
20
+ export interface DMMF {
21
21
  datamodel: {
22
22
  models: {
23
23
  name: string;
@@ -29,6 +29,18 @@ interface DMMF {
29
29
  };
30
30
  }
31
31
 
32
+ export interface RuntimeDataModel {
33
+ models: Record<
34
+ string,
35
+ {
36
+ fields: DMMFField[];
37
+ primaryKey: { name: string | null; fields: string[] } | null;
38
+ uniqueIndexes: { name: string | null; fields: string[] }[];
39
+ documentation?: string;
40
+ }
41
+ >;
42
+ }
43
+
32
44
  const prismaClientCache = createContextCache(
33
45
  <Types extends SchemaTypes>(builder: PothosSchemaTypes.SchemaBuilder<Types>) =>
34
46
  createContextCache((context: object) =>
@@ -51,15 +63,16 @@ export function getClient<Types extends SchemaTypes>(
51
63
 
52
64
  export function getDMMF<Types extends SchemaTypes>(
53
65
  builder: PothosSchemaTypes.SchemaBuilder<Types>,
54
- ): DMMF {
66
+ ): DMMF['datamodel'] | RuntimeDataModel {
55
67
  if ('dmmf' in builder.options.prisma && builder.options.prisma.dmmf) {
56
- return builder.options.prisma.dmmf as DMMF;
68
+ return (builder.options.prisma.dmmf as DMMF).datamodel;
57
69
  }
58
70
 
59
71
  const client = builder.options.prisma.client as unknown as {
60
72
  _baseDmmf?: DMMF;
61
73
  _dmmf: DMMF;
74
+ _runtimeDataModel: RuntimeDataModel;
62
75
  };
63
76
 
64
- return client._baseDmmf ?? client._dmmf;
77
+ return client._runtimeDataModel ?? client._baseDmmf?.datamodel ?? client._dmmf.datamodel;
65
78
  }
@@ -1,5 +1,5 @@
1
1
  import { createContextCache } from '@pothos/core';
2
- import { DMMF } from '@prisma/generator-helper';
2
+ import { DMMF, RuntimeDataModel } from './get-client';
3
3
 
4
4
  export interface FieldMap {
5
5
  model: string;
@@ -8,26 +8,42 @@ export interface FieldMap {
8
8
 
9
9
  export type RelationMap = Map<string, FieldMap>;
10
10
 
11
- export const getRelationMap = createContextCache((dmmf: { datamodel: unknown }) =>
12
- createRelationMap(dmmf.datamodel as DMMF.Datamodel),
11
+ export const getRelationMap = createContextCache(
12
+ (datamodel: DMMF['datamodel'] | RuntimeDataModel) => createRelationMap(datamodel),
13
13
  );
14
14
 
15
- export function createRelationMap({ models }: DMMF.Datamodel) {
15
+ export function createRelationMap({ models }: DMMF['datamodel'] | RuntimeDataModel) {
16
16
  const relationMap: RelationMap = new Map();
17
17
 
18
- models.forEach((model) => {
19
- relationMap.set(model.name, { model: model.name, relations: new Map() });
20
- });
18
+ if (Array.isArray(models)) {
19
+ models.forEach((model) => {
20
+ relationMap.set(model.name, { model: model.name, relations: new Map() });
21
+ });
22
+
23
+ models.forEach((model) => {
24
+ const map = relationMap.get(model.name)!.relations;
25
+
26
+ model.fields.forEach((field) => {
27
+ if (field.kind === 'object' && relationMap.has(field.type)) {
28
+ map.set(field.name, relationMap.get(field.type)!);
29
+ }
30
+ });
31
+ });
32
+ } else {
33
+ Object.keys(models).forEach((name) => {
34
+ relationMap.set(name, { model: name, relations: new Map() });
35
+ });
21
36
 
22
- models.forEach((model) => {
23
- const map = relationMap.get(model.name)!.relations;
37
+ Object.entries(models).forEach(([name, model]) => {
38
+ const map = relationMap.get(name)!.relations;
24
39
 
25
- model.fields.forEach((field) => {
26
- if (field.kind === 'object' && relationMap.has(field.type)) {
27
- map.set(field.name, relationMap.get(field.type)!);
28
- }
40
+ model.fields.forEach((field) => {
41
+ if (field.kind === 'object' && relationMap.has(field.type)) {
42
+ map.set(field.name, relationMap.get(field.type)!);
43
+ }
44
+ });
29
45
  });
30
- });
46
+ }
31
47
 
32
48
  return relationMap;
33
49
  }