@pothos/plugin-prisma 3.47.2 → 3.48.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 (45) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dts/connection-helpers.d.ts +1 -1
  3. package/dts/connection-helpers.d.ts.map +1 -1
  4. package/dts/global-types.d.ts +3 -3
  5. package/dts/global-types.d.ts.map +1 -1
  6. package/dts/prisma-field-builder.d.ts +12 -4
  7. package/dts/prisma-field-builder.d.ts.map +1 -1
  8. package/dts/types.d.ts +10 -0
  9. package/dts/types.d.ts.map +1 -1
  10. package/dts/util/cursors.d.ts +12 -13
  11. package/dts/util/cursors.d.ts.map +1 -1
  12. package/esm/connection-helpers.d.ts +1 -1
  13. package/esm/connection-helpers.d.ts.map +1 -1
  14. package/esm/connection-helpers.js +2 -2
  15. package/esm/connection-helpers.js.map +1 -1
  16. package/esm/field-builder.js +1 -0
  17. package/esm/field-builder.js.map +1 -1
  18. package/esm/global-types.d.ts +3 -3
  19. package/esm/global-types.d.ts.map +1 -1
  20. package/esm/global-types.js.map +1 -1
  21. package/esm/prisma-field-builder.d.ts +12 -4
  22. package/esm/prisma-field-builder.d.ts.map +1 -1
  23. package/esm/prisma-field-builder.js +2 -2
  24. package/esm/prisma-field-builder.js.map +1 -1
  25. package/esm/types.d.ts +14 -0
  26. package/esm/types.d.ts.map +1 -1
  27. package/esm/util/cursors.d.ts +12 -13
  28. package/esm/util/cursors.d.ts.map +1 -1
  29. package/esm/util/cursors.js +22 -12
  30. package/esm/util/cursors.js.map +1 -1
  31. package/lib/connection-helpers.js +2 -2
  32. package/lib/connection-helpers.js.map +1 -1
  33. package/lib/field-builder.js +1 -0
  34. package/lib/field-builder.js.map +1 -1
  35. package/lib/prisma-field-builder.js +2 -2
  36. package/lib/prisma-field-builder.js.map +1 -1
  37. package/lib/util/cursors.js +22 -12
  38. package/lib/util/cursors.js.map +1 -1
  39. package/package.json +11 -9
  40. package/src/connection-helpers.ts +3 -1
  41. package/src/field-builder.ts +1 -0
  42. package/src/global-types.ts +5 -2
  43. package/src/prisma-field-builder.ts +37 -6
  44. package/src/types.ts +18 -0
  45. package/src/util/cursors.ts +30 -11
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/cursors.ts"],"names":["formatCursorChunk","formatPrismaCursor","cursorFormatter","parsePrismaCursor","parseID","getDefaultIDSerializer","getDefaultIDParser","serializeID","parseCompositeCursor","prismaCursorConnectionQuery","wrapConnectionResult","resolvePrismaCursorConnection","getCursorFormatter","getCursorParser","DEFAULT_MAX_SIZE","DEFAULT_SIZE","value","Date","String","Number","PothosValidationError","record","fields","encodeBase64","JSON","stringify","map","name","cursor","decoded","decodeBase64","type","match","parseInt","parse","BigInt","id","dataType","parseFloat","Buffer","from","modelName","fieldName","builder","model","getModel","field","find","f","parent","primaryKey","join","n","kind","idx","index","uniqueIndexes","parts","Array","isArray","result","i","length","toString","parsed","forEach","args","ctx","maxSize","defaultSize","parseCursor","before","after","first","last","maxSizeForConnection","defaultSizeForConnection","take","Math","min","skip","results","totalCount","resolveNode","edges","gotFullResults","abs","hasNextPage","hasPreviousPage","nodes","slice","node","pageInfo","startCursor","endCursor","options","resolve","query","modelData","uniqueIndex","parser","rawCursor"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/util/cursors.ts"],"names":["formatCursorChunk","formatPrismaCursor","cursorFormatter","parsePrismaCursor","parseID","getDefaultIDSerializer","getDefaultIDParser","serializeID","parseCompositeCursor","prismaCursorConnectionQuery","wrapConnectionResult","resolvePrismaCursorConnection","getCursorFormatter","getCursorParser","DEFAULT_MAX_SIZE","DEFAULT_SIZE","value","Date","String","Number","PothosValidationError","record","fields","encodeBase64","JSON","stringify","map","name","cursor","decoded","decodeBase64","type","match","parseInt","parse","BigInt","id","dataType","parseFloat","Buffer","from","modelName","fieldName","builder","model","getModel","field","find","f","parent","primaryKey","join","n","kind","idx","index","uniqueIndexes","parts","Array","isArray","result","i","length","toString","parsed","forEach","args","ctx","maxSize","defaultSize","parseCursor","before","after","first","last","maxSizeForConnection","defaultSizeForConnection","take","Math","min","skip","results","totalCount","resolveNode","edges","gotFullResults","abs","hasNextPage","hasPreviousPage","nodes","slice","connection","pageInfo","startCursor","endCursor","node","options","resolve","query","modelData","uniqueIndex","parser","rawCursor"],"mappings":"AAAA,oCAAoC;;;;;;;;;;;IAcpBA,iBAAiB,MAAjBA;IAiBAC,kBAAkB,MAAlBA;IAIAC,eAAe,MAAfA;IAUAC,iBAAiB,MAAjBA;IA6BAC,OAAO,MAAPA;IA6BAC,sBAAsB,MAAtBA;IA4BAC,kBAAkB,MAAlBA;IA8CAC,WAAW,MAAXA;IAWAC,oBAAoB,MAApBA;IAkCAC,2BAA2B,MAA3BA;IAuDAC,oBAAoB,MAApBA;IAqDMC,6BAA6B,MAA7BA;IA8BNC,kBAAkB,MAAlBA;IAkBAC,eAAe,MAAfA;;sBAnXT;2BACkB;AAGzB,MAAMC,mBAAmB;AACzB,MAAMC,eAAe;AAEd,SAASf,kBAAkBgB,KAAc,EAAE;IAChD,IAAIA,iBAAiBC,MAAM;QACzB,OAAO,CAAC,EAAE,EAAEC,OAAOC,OAAOH,QAAQ,CAAC;IACrC,CAAC;IAED,OAAQ,OAAOA;QACb,KAAK;YACH,OAAO,CAAC,EAAE,EAAEA,MAAM,CAAC;QACrB,KAAK;YACH,OAAO,CAAC,EAAE,EAAEA,MAAM,CAAC;QACrB,KAAK;YACH,OAAO,CAAC,EAAE,EAAEA,MAAM,CAAC;QACrB;YACE,MAAM,IAAII,2BAAqB,CAAC,CAAC,wBAAwB,EAAE,OAAOJ,MAAM,CAAC,EAAE;IAC/E;AACF;AAEO,SAASf,mBAAmBoB,MAA+B,EAAEC,MAAyB,EAAE;IAC7F,OAAOpB,gBAAgBoB,QAAQD;AACjC;AAEO,SAASnB,gBAAgBoB,MAAyB,EAAE;IACzD,OAAO,CAACN,QAAmC;QACzC,IAAI,OAAOM,WAAW,UAAU;YAC9B,OAAOC,IAAAA,kBAAY,EAAC,CAAC,IAAI,EAAEvB,kBAAkBgB,KAAK,CAACM,OAAO,EAAE,CAAC;QAC/D,CAAC;QAED,OAAOC,IAAAA,kBAAY,EAAC,CAAC,MAAM,EAAEC,KAAKC,SAAS,CAACH,OAAOI,GAAG,CAAC,CAACC,OAASX,KAAK,CAACW,KAAK,GAAG,CAAC;IAClF;AACF;AAEO,SAASxB,kBAAkByB,MAAe,EAAE;IACjD,IAAI,OAAOA,WAAW,UAAU;QAC9B,MAAM,IAAIR,2BAAqB,CAAC,2BAA2B;IAC7D,CAAC;IAED,IAAI;QACF,MAAMS,UAAUC,IAAAA,kBAAY,EAACF;QAC7B,MAAM,GAAGG,MAAMf,MAAM,GAAGa,QAAQG,KAAK,CAAC;QAEtC,OAAQD;YACN,KAAK;gBACH,OAAOf;YACT,KAAK;gBACH,OAAOG,OAAOc,QAAQ,CAACjB,OAAO;YAChC,KAAK;gBACH,OAAO,IAAIC,KAAKE,OAAOc,QAAQ,CAACjB,OAAO;YACzC,KAAK;gBACH,OAAOQ,KAAKU,KAAK,CAAClB;YACpB,KAAK;gBACH,oEAAoE;gBACpE,OAAOmB,OAAOnB;YAChB;gBACE,MAAM,IAAII,2BAAqB,CAAC,CAAC,oBAAoB,EAAEW,KAAK,CAAC,EAAE;QACnE;IACF,EAAE,OAAM;QACN,MAAM,IAAIX,2BAAqB,CAAC,CAAC,gBAAgB,EAAEQ,OAAO,CAAC,EAAE;IAC/D;AACF;AAEO,SAASxB,QAAQgC,EAAU,EAAEC,QAAgB,EAAW;IAC7D,IAAI,CAACD,IAAI;QACP,OAAOA;IACT,CAAC;IAED,OAAQC;QACN,KAAK;YACH,OAAOD;QACT,KAAK;YACH,OAAOjB,OAAOc,QAAQ,CAACG,IAAI;QAC7B,KAAK;YACH,oEAAoE;YACpE,OAAOD,OAAOC;QAChB,KAAK;YACH,OAAOA,OAAO;QAChB,KAAK;QACL,KAAK;YACH,OAAOjB,OAAOmB,UAAU,CAACF;QAC3B,KAAK;YACH,OAAO,IAAInB,KAAKmB;QAClB,KAAK;YACH,OAAOZ,KAAKU,KAAK,CAACE;QACpB,KAAK;YACH,OAAOG,OAAOC,IAAI,CAACJ,IAAI;QACzB;YACE,OAAOA;IACX;AACF;AAEO,SAAS/B,uBACdoC,SAAiB,EACjBC,SAAiB,EACjBC,OAA+C,EACD;QASzCC,mBAA0BA;IAR/B,MAAMA,QAAQC,IAAAA,mBAAQ,EAACJ,WAAWE;IAElC,MAAMG,QAAQF,MAAMtB,MAAM,CAACyB,IAAI,CAAC,CAACC,IAAMA,EAAErB,IAAI,KAAKe;IAElD,IAAII,OAAO;QACT,OAAO,CAACG,SAAW1C,YAAY0C,MAAM,CAACP,UAAU,EAAEI,MAAMf,IAAI;IAC9D,CAAC;QAEIa;IAAL,IAAI,AAACA,CAAAA,CAAAA,yBAAAA,CAAAA,oBAAAA,MAAMM,UAAU,cAAhBN,+BAAAA,KAAAA,IAAAA,kBAAkBjB,IAAI,cAAtBiB,oCAAAA,yBAA0BA,CAAAA,qBAAAA,MAAMM,UAAU,cAAhBN,gCAAAA,KAAAA,IAAAA,mBAAkBtB,OAAO6B,IAAI,CAAC,IAAI,AAAD,MAAOT,WAAW;QAChF,MAAMpB,SAASsB,MAAMM,UAAU,CAAE5B,MAAM,CAACI,GAAG,CAAC,CAAC0B,IAAMR,MAAMtB,MAAM,CAACyB,IAAI,CAAC,CAACC,IAAMA,EAAErB,IAAI,KAAKyB;QACvF,OAAO,CAACH,SAAWzB,KAAKC,SAAS,CAACH,OAAOI,GAAG,CAAC,CAACsB,IAAMzC,YAAY0C,MAAM,CAACD,EAAErB,IAAI,CAAC,EAAEqB,EAAEK,IAAI;IACxF,CAAC;QAEgDC;IAAjD,MAAMC,QAAQX,MAAMY,aAAa,CAACT,IAAI,CAAC,CAACO,MAAQ,AAACA,CAAAA,CAAAA,YAAAA,IAAI3B,IAAI,cAAR2B,uBAAAA,YAAYA,IAAIhC,MAAM,CAAC6B,IAAI,CAAC,IAAI,AAAD,MAAOT;IAEvF,IAAIa,OAAO;QACT,MAAMjC,SAASiC,MAAMjC,MAAM,CAACI,GAAG,CAAC,CAAC0B,IAAMR,MAAMtB,MAAM,CAACyB,IAAI,CAAC,CAACC,IAAMA,EAAErB,IAAI,KAAKyB;QAC3E,OAAO,CAACH,SAAWzB,KAAKC,SAAS,CAACH,OAAOI,GAAG,CAAC,CAACsB,IAAMzC,YAAY0C,MAAM,CAACD,EAAErB,IAAI,CAAC,EAAEqB,EAAEK,IAAI;IACxF,CAAC;IAED,MAAM,IAAIjC,2BAAqB,CAAC,CAAC,eAAe,EAAEsB,UAAU,WAAW,EAAED,UAAU,CAAC,EAAE;AACxF;AAEO,SAASnC,mBACdmC,SAAiB,EACjBC,SAAiB,EACjBC,OAA+C,EACtB;QAepBC,mBAA0BA;IAd/B,IAAI,CAACF,WAAW;QACd,MAAM,IAAItB,2BAAqB,CAAC,sBAAsB;IACxD,CAAC;IACD,MAAMwB,QAAQC,IAAAA,mBAAQ,EAACJ,WAAWE;IAElC,MAAMG,QAAQF,MAAMtB,MAAM,CAACyB,IAAI,CAAC,CAACC,IAAMA,EAAErB,IAAI,KAAKe;IAElD,IAAII,OAAO;QACT,OAAO,CAACV,KAAOhC,QAAQgC,IAAIU,MAAMf,IAAI;IACvC,CAAC;QAEgDuB;IAAjD,MAAMC,QAAQX,MAAMY,aAAa,CAACT,IAAI,CAAC,CAACO,MAAQ,AAACA,CAAAA,CAAAA,YAAAA,IAAI3B,IAAI,cAAR2B,uBAAAA,YAAYA,IAAIhC,MAAM,CAAC6B,IAAI,CAAC,IAAI,AAAD,MAAOT;IAEvF,IAAIpB;QACCsB;IAAL,IAAI,AAACA,CAAAA,CAAAA,yBAAAA,CAAAA,oBAAAA,MAAMM,UAAU,cAAhBN,+BAAAA,KAAAA,IAAAA,kBAAkBjB,IAAI,cAAtBiB,oCAAAA,yBAA0BA,CAAAA,qBAAAA,MAAMM,UAAU,cAAhBN,gCAAAA,KAAAA,IAAAA,mBAAkBtB,OAAO6B,IAAI,CAAC,IAAI,AAAD,MAAOT,WAAW;QAChFpB,SAASsB,MAAMM,UAAU,CAAE5B,MAAM,CAACI,GAAG,CAAC,CAAC0B,IAAMR,MAAMtB,MAAM,CAACyB,IAAI,CAAC,CAACC,IAAMA,EAAErB,IAAI,KAAKyB;IACnF,OAAO,IAAIG,OAAO;QAChBjC,SAASiC,MAAMjC,MAAM,CAACI,GAAG,CAAC,CAAC0B,IAAMR,MAAMtB,MAAM,CAACyB,IAAI,CAAC,CAACC,IAAMA,EAAErB,IAAI,KAAKyB;IACvE,CAAC;IAED,IAAI,CAAC9B,QAAQ;QACX,MAAM,IAAIF,2BAAqB,CAAC,CAAC,eAAe,EAAEsB,UAAU,WAAW,EAAED,UAAU,CAAC,EAAE;IACxF,CAAC;IAED,OAAO,CAACL,KAAO;QACb,MAAMqB,QAAQjC,KAAKU,KAAK,CAACE;QAEzB,IAAI,CAACsB,MAAMC,OAAO,CAACF,QAAQ;YACzB,MAAM,IAAIrC,2BAAqB,CAAC,CAAC,wBAAwB,EAAEsB,UAAU,IAAI,EAAED,UAAU,CAAC,EAAE;QAC1F,CAAC;QAED,MAAMmB,SAAkC,CAAC;QAEzC,IAAK,IAAIC,IAAI,GAAGA,IAAIvC,OAAQwC,MAAM,EAAED,KAAK,EAAG;YAC1CD,MAAM,CAACtC,MAAO,CAACuC,EAAE,CAAClC,IAAI,CAAC,GAAGvB,QAAQqD,KAAK,CAACI,EAAE,EAAYvC,MAAO,CAACuC,EAAE,CAAC9B,IAAI;QACvE;QAEA,OAAO6B;IACT;AACF;AAEO,SAASrD,YAAY6B,EAAW,EAAEC,QAAgB,EAAE;IACzD,OAAQA;QACN,KAAK;YACH,OAAOb,KAAKC,SAAS,CAACW;QACxB,KAAK;YACH,OAAO,AAACA,GAAc2B,QAAQ,CAAC;QACjC;YACE,OAAO7C,OAAOkB;IAClB;AACF;AAEO,SAAS5B,qBAAqBc,MAAyB,EAAE;IAC9D,OAAO,CAACM,SAAoB;QAC1B,MAAMoC,SAAS7D,kBAAkByB;QAEjC,IAAI,CAAC8B,MAAMC,OAAO,CAACK,SAAS;YAC1B,MAAM,IAAI5C,2BAAqB,CAC7B,CAAC,sDAAsD,EAAE4C,OAAO,CAAC,EACjE;QACJ,CAAC;QAED,MAAM3C,SAAkC,CAAC;QAEzCC,OAAO2C,OAAO,CAAC,CAACnB,OAAOe,IAAM;YAC3BxC,MAAM,CAACyB,MAAM,GAAGkB,MAAM,CAACH,EAAE;QAC3B;QAEA,OAAOxC;IACT;AACF;AAgBO,SAASZ,4BAA4B,EAC1CyD,KAAI,EACJC,IAAG,EACHC,SAAUtD,iBAAgB,EAC1BuD,aAActD,aAAY,EAC1BuD,YAAW,EACwB,EAAE;IACrC,MAAM,EAAEC,OAAM,EAAEC,MAAK,EAAEC,MAAK,EAAEC,KAAI,EAAE,GAAGR;IACvC,IAAIO,SAAS,IAAI,IAAIA,QAAQ,GAAG;QAC9B,MAAM,IAAIrD,2BAAqB,CAAC,mDAAmD;IACrF,CAAC;IAED,IAAIsD,QAAQ,IAAI,IAAIA,OAAO,GAAG;QAC5B,MAAM,IAAItD,2BAAqB,CAAC,kDAAkD;IACpF,CAAC;IAED,IAAImD,UAAUC,OAAO;QACnB,MAAM,IAAIpD,2BAAqB,CAC7B,qEACA;IACJ,CAAC;IAED,IAAImD,UAAU,IAAI,IAAIE,SAAS,IAAI,EAAE;QACnC,MAAM,IAAIrD,2BAAqB,CAC7B,qEACA;IACJ,CAAC;IAED,IAAIoD,SAAS,IAAI,IAAIE,QAAQ,IAAI,EAAE;QACjC,MAAM,IAAItD,2BAAqB,CAC7B,mEACA;IACJ,CAAC;IAED,MAAMQ,SAAS2C,mBAAAA,oBAAAA,SAAUC,KAAK;IAE9B,MAAMG,uBAAuB,OAAOP,YAAY,aAAaA,QAAQF,MAAMC,OAAOC,OAAO;IACzF,MAAMQ,2BACJ,OAAOP,gBAAgB,aAAaA,YAAYH,MAAMC,OAAOE,WAAW;QAEtDI;IAApB,IAAII,OAAOC,KAAKC,GAAG,CAACN,CAAAA,OAAAA,kBAAAA,mBAAAA,QAASC,IAAI,cAAbD,kBAAAA,OAAiBG,wBAAwB,EAAED,wBAAwB;IAEvF,IAAIJ,UAAUG,MAAM;QAClBG,OAAO,CAACA;IACV,CAAC;IAED,OAAOjD,UAAU,IAAI,GACjB;QAAEiD;QAAMG,MAAM;IAAE,IAChB;QACEpD,QAAQ0C,YAAY1C;QACpBiD;QACAG,MAAM;IACR,CAAC;AACP;AAEO,SAAStE,qBACduC,MAAe,EACfgC,OAAqB,EACrBf,IAAkD,EAClDW,IAAY,EACZjD,MAA2B,EAC3BsD,UAAyD,EACzDC,WAAwC,EACxC;QAuCkCC,SACFA;IAvChC,MAAMC,iBAAiBJ,QAAQnB,MAAM,KAAKgB,KAAKQ,GAAG,CAACT;IACnD,MAAMU,cAAcrB,KAAKK,MAAM,GAAG,IAAI,GAAGL,KAAKQ,IAAI,GAAG,KAAK,GAAGW,cAAc;IAC3E,MAAMG,kBAAkBtB,KAAKM,KAAK,GAAG,IAAI,GAAGN,KAAKK,MAAM,IAAIL,KAAKQ,IAAI,GAAGW,iBAAiB,KAAK;IAC7F,MAAMI,QAAQJ,iBACVJ,QAAQS,KAAK,CAACb,OAAO,IAAI,IAAI,CAAC,EAAEA,OAAO,IAAII,QAAQnB,MAAM,GAAG,CAAC,CAAC,IAC9DmB,OAAO;IAEX,MAAMU,aAAa;QACjB1C;QACAiB;QACAgB;QACAE,OAAO,EAAE;QACTQ,UAAU;YACRC,aAAa,IAAI;YACjBC,WAAW,IAAI;YACfN;YACAD;QACF;IACF;IAEA,MAAMH,QAAQK,MAAM/D,GAAG,CAAC,CAACV,OAAOuC,QAC9BvC,SAAS,IAAI,GACT,IAAI,GACJmE,cACA;YACEQ;YACA,GAAG3E,KAAK;YACRY,QAAQA,OAAOZ;YACf+E,MAAMZ,YAAYnE;QACpB,IACA;YACE2E;YACA/D,QAAQA,OAAOZ;YACf+E,MAAM/E;QACR,CAAC;IAGP2E,WAAWP,KAAK,GAAGA;QACeA;IAAlCO,WAAWC,QAAQ,CAACC,WAAW,GAAGT,CAAAA,iBAAAA,CAAAA,UAAAA,KAAK,CAAC,EAAE,cAARA,qBAAAA,KAAAA,IAAAA,QAAUxD,MAAM,cAAhBwD,4BAAAA,iBAAoB,IAAI;QAC1BA;IAAhCO,WAAWC,QAAQ,CAACE,SAAS,GAAGV,CAAAA,kBAAAA,CAAAA,WAAAA,KAAK,CAACA,MAAMtB,MAAM,GAAG,EAAE,cAAvBsB,sBAAAA,KAAAA,IAAAA,SAAyBxD,MAAM,cAA/BwD,6BAAAA,kBAAmC,IAAI;IAEvE,OAAOO;AACT;AAEO,eAAehF,8BACpBqF,OAA6C,EAC7CpE,MAA2B,EAC3BqE,OAKgC,EAChC;IACA,MAAMC,QAAQzF,4BAA4BuF;IAC1C,MAAMf,UAAU,MAAMgB,QAAQ;QAC5B,GAAGD,QAAQE,KAAK;QAChB,GAAGA,KAAK;IACV;IAEA,IAAI,CAACjB,SAAS;QACZ,OAAOA;IACT,CAAC;IAED,OAAOvE,qBACLsF,QAAQ/C,MAAM,EACdgC,SACAe,QAAQ9B,IAAI,EACZgC,MAAMrB,IAAI,EACVjD,QACAoE,QAAQd,UAAU;AAEtB;AAEO,SAAStE,mBACde,IAAY,EACZgB,OAA+C,EAC/Cf,MAAc,EACd;QAEmBuE,uBAA8BA;IADjD,MAAMA,YAAYtD,IAAAA,mBAAQ,EAAClB,MAAMgB;QACdwD;IAAnB,MAAMjD,aAAaiD,CAAAA,6BAAAA,CAAAA,wBAAAA,UAAUjD,UAAU,cAApBiD,mCAAAA,KAAAA,IAAAA,sBAAsBxE,IAAI,cAA1BwE,wCAAAA,6BAA8BA,CAAAA,yBAAAA,UAAUjD,UAAU,cAApBiD,oCAAAA,KAAAA,IAAAA,uBAAsB7E,OAAO6B,IAAI,CAAC,IAAI;IACvF,IAAID,eAAetB,QAAQ;QACzB,OAAO1B,gBAAgBiG,UAAUjD,UAAU,CAAE5B,MAAM;IACrD,CAAC;QAGWgC;IADZ,MAAM8C,cAAcD,UAAU3C,aAAa,CAACT,IAAI,CAC9C,CAACO,MAAQ,AAACA,CAAAA,CAAAA,YAAAA,IAAI3B,IAAI,cAAR2B,uBAAAA,YAAYA,IAAIhC,MAAM,CAAC6B,IAAI,CAAC,IAAI,AAAD,MAAOvB;QAG3BwE;IAAvB,OAAOlG,gBAAgBkG,CAAAA,sBAAAA,wBAAAA,yBAAAA,KAAAA,IAAAA,YAAa9E,MAAM,cAAnB8E,iCAAAA,sBAAuBxE,MAAM;AACtD;AAEO,SAASf,gBACdc,IAAY,EACZgB,OAA+C,EAC/Cf,MAAc,EACd;QAEmBuE,uBAA8BA;IADjD,MAAMA,YAAYtD,IAAAA,mBAAQ,EAAClB,MAAMgB;QACdwD;IAAnB,MAAMjD,aAAaiD,CAAAA,6BAAAA,CAAAA,wBAAAA,UAAUjD,UAAU,cAApBiD,mCAAAA,KAAAA,IAAAA,sBAAsBxE,IAAI,cAA1BwE,wCAAAA,6BAA8BA,CAAAA,yBAAAA,UAAUjD,UAAU,cAApBiD,oCAAAA,KAAAA,IAAAA,uBAAsB7E,OAAO6B,IAAI,CAAC,IAAI;IAEvF,IAAIkD,SAASlG;IAEb,IAAI+C,eAAetB,QAAQ;QACzByE,SAAS7F,qBAAqB2F,UAAUjD,UAAU,CAAE5B,MAAM;IAC5D,OAAO;YAEOgC;QADZ,MAAM8C,cAAcD,UAAU3C,aAAa,CAACT,IAAI,CAC9C,CAACO,MAAQ,AAACA,CAAAA,CAAAA,YAAAA,IAAI3B,IAAI,cAAR2B,uBAAAA,YAAYA,IAAIhC,MAAM,CAAC6B,IAAI,CAAC,IAAI,AAAD,MAAOvB;QAGlD,IAAIwE,aAAa;YACfC,SAAS7F,qBAAqB4F,YAAY9E,MAAM;QAClD,CAAC;IACH,CAAC;IAED,OAAO,CAACgF,YAAuB,CAAA;YAC7B,CAAC1E,OAAO,EAAEyE,OAAOC;QACnB,CAAA;AACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pothos/plugin-prisma",
3
- "version": "3.47.2",
3
+ "version": "3.48.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",
@@ -26,7 +26,8 @@
26
26
  },
27
27
  "repository": {
28
28
  "type": "git",
29
- "url": "git+https://github.com/hayes/pothos.git"
29
+ "url": "git+https://github.com/hayes/pothos.git",
30
+ "directory": "packages/plugin-prisma"
30
31
  },
31
32
  "bin": {
32
33
  "prisma-pothos-types": "./bin/generator.js"
@@ -47,7 +48,8 @@
47
48
  "mongo"
48
49
  ],
49
50
  "publishConfig": {
50
- "access": "public"
51
+ "access": "public",
52
+ "provenance": true
51
53
  },
52
54
  "dependencies": {
53
55
  "@prisma/generator-helper": "^4.11.0"
@@ -67,12 +69,12 @@
67
69
  "graphql-scalars": "^1.20.4",
68
70
  "graphql-tag": "^2.12.6",
69
71
  "prisma": "^4.11.0",
70
- "@pothos/core": "3.29.0",
71
- "@pothos/plugin-complexity": "3.12.0",
72
- "@pothos/plugin-errors": "3.11.0",
73
- "@pothos/plugin-relay": "3.39.0",
74
- "@pothos/plugin-simple-objects": "3.6.7",
75
- "@pothos/test-utils": "1.4.7"
72
+ "@pothos/core": "3.30.0",
73
+ "@pothos/plugin-complexity": "3.12.1",
74
+ "@pothos/plugin-errors": "3.11.1",
75
+ "@pothos/plugin-relay": "3.42.0",
76
+ "@pothos/plugin-simple-objects": "3.6.8",
77
+ "@pothos/test-utils": "1.4.8"
76
78
  },
77
79
  "scripts": {
78
80
  "generate": "prisma generate",
@@ -51,12 +51,14 @@ export function prismaConnectionHelpers<
51
51
  const cursorSelection = ModelLoader.getCursorSelection(ref, modelName, options.cursor, builder);
52
52
  const fieldMap = getRelationMap(getDMMF(builder)).get(modelName)!;
53
53
 
54
- function resolve(
54
+ function resolve<Parent = unknown>(
55
55
  list: (EdgeShape & {})[],
56
56
  args: PothosSchemaTypes.DefaultConnectionArguments,
57
57
  ctx: Types['Context'],
58
+ parent?: Parent,
58
59
  ) {
59
60
  return wrapConnectionResult(
61
+ parent,
60
62
  list,
61
63
  args,
62
64
  getQueryArgs(args, ctx).take,
@@ -119,6 +119,7 @@ fieldBuilderProto.prismaConnection = function prismaConnection<
119
119
  ) =>
120
120
  resolvePrismaCursorConnection(
121
121
  {
122
+ parent,
122
123
  query: queryFromInfo({
123
124
  context,
124
125
  info,
@@ -1,5 +1,6 @@
1
1
  /* eslint-disable @typescript-eslint/no-unused-vars */
2
2
  /* eslint-disable @typescript-eslint/no-empty-interface */
3
+ import { A } from 'vitest/dist/types-fafda418';
3
4
  import {
4
5
  FieldKind,
5
6
  FieldMap,
@@ -7,6 +8,7 @@ import {
7
8
  FieldRef,
8
9
  InputFieldMap,
9
10
  InputFieldRef,
11
+ InputShapeFromFields,
10
12
  InterfaceParam,
11
13
  NormalizeArgs,
12
14
  OutputType,
@@ -21,6 +23,7 @@ import { PrismaObjectFieldBuilder as InternalPrismaObjectFieldBuilder } from './
21
23
  import {
22
24
  PrismaClient,
23
25
  PrismaConnectionFieldOptions,
26
+ PrismaConnectionShape,
24
27
  PrismaFieldOptions,
25
28
  PrismaFieldWithInputOptions,
26
29
  prismaModelName,
@@ -260,7 +263,7 @@ declare global {
260
263
  ObjectRef<Shape>,
261
264
  false,
262
265
  false,
263
- ResolveReturnShape,
266
+ PrismaConnectionShape<Types, Shape, ParentShape, Args>,
264
267
  ConnectionInterfaces
265
268
  >
266
269
  | ObjectRef<ShapeFromConnection<ConnectionShapeHelper<Types, Shape, false>>>,
@@ -269,7 +272,7 @@ declare global {
269
272
  Types,
270
273
  ObjectRef<Shape>,
271
274
  false,
272
- ResolveReturnShape,
275
+ PrismaConnectionShape<Types, Shape, ParentShape, Args>,
273
276
  EdgeInterfaces
274
277
  >
275
278
  | ObjectRef<{
@@ -20,6 +20,7 @@ import {
20
20
  import { ModelLoader } from './model-loader';
21
21
  import { PrismaObjectRef } from './object-ref';
22
22
  import {
23
+ PrismaConnectionShape,
23
24
  PrismaModelTypes,
24
25
  RelatedConnectionOptions,
25
26
  RelatedFieldOptions,
@@ -107,7 +108,6 @@ export class PrismaObjectFieldBuilder<
107
108
  Field extends Model['ListRelations'],
108
109
  Nullable extends boolean,
109
110
  Args extends InputFieldMap,
110
- ResolveReturnShape,
111
111
  ConnectionInterfaces extends InterfaceParam<Types>[] = [],
112
112
  EdgeInterfaces extends InterfaceParam<Types>[] = [],
113
113
  >(
@@ -118,10 +118,25 @@ export class PrismaObjectFieldBuilder<
118
118
  connectionOptions:
119
119
  | PothosSchemaTypes.ConnectionObjectOptions<
120
120
  Types,
121
- ObjectRef<Shape>,
121
+ ObjectRef<
122
+ ShapeFromTypeParam<
123
+ Types,
124
+ [ObjectRef<Model['Relations'][Field & keyof Model['Relations']]['Shape']>],
125
+ Nullable
126
+ >
127
+ >,
122
128
  false,
123
129
  false,
124
- ResolveReturnShape,
130
+ PrismaConnectionShape<
131
+ Types,
132
+ ShapeFromTypeParam<
133
+ Types,
134
+ [ObjectRef<Model['Relations'][Field & keyof Model['Relations']]['Shape']>],
135
+ Nullable
136
+ >,
137
+ Shape,
138
+ Args
139
+ >,
125
140
  ConnectionInterfaces
126
141
  >
127
142
  | ObjectRef<
@@ -130,9 +145,24 @@ export class PrismaObjectFieldBuilder<
130
145
  edgeOptions:
131
146
  | PothosSchemaTypes.ConnectionEdgeObjectOptions<
132
147
  Types,
133
- ObjectRef<Shape>,
148
+ ObjectRef<
149
+ ShapeFromTypeParam<
150
+ Types,
151
+ [ObjectRef<Model['Relations'][Field & keyof Model['Relations']]['Shape']>],
152
+ Nullable
153
+ >
154
+ >,
134
155
  false,
135
- ResolveReturnShape,
156
+ PrismaConnectionShape<
157
+ Types,
158
+ ShapeFromTypeParam<
159
+ Types,
160
+ [ObjectRef<Model['Relations'][Field & keyof Model['Relations']]['Shape']>],
161
+ Nullable
162
+ >,
163
+ Shape,
164
+ Args
165
+ >,
136
166
  EdgeInterfaces
137
167
  >
138
168
  | ObjectRef<{
@@ -289,7 +319,7 @@ export class PrismaObjectFieldBuilder<
289
319
  context,
290
320
  info,
291
321
  ),
292
- ).then((result) => wrapConnectionResult(result, args, q.take, formatCursor))),
322
+ ).then((result) => wrapConnectionResult(parent, result, args, q.take, formatCursor))),
293
323
  },
294
324
  type: ref,
295
325
  resolve: (
@@ -300,6 +330,7 @@ export class PrismaObjectFieldBuilder<
300
330
  const connectionQuery = getQuery(args, context);
301
331
 
302
332
  return wrapConnectionResult(
333
+ parent,
303
334
  (parent as Record<string, never>)[name],
304
335
  args,
305
336
  connectionQuery.take,
package/src/types.ts CHANGED
@@ -752,6 +752,24 @@ export interface IndirectInclude {
752
752
 
753
753
  export type ShapeFromConnection<T> = T extends { shape: unknown } ? T['shape'] : never;
754
754
 
755
+ export type PrismaConnectionShape<
756
+ Types extends SchemaTypes,
757
+ T,
758
+ Parent,
759
+ Args extends InputFieldMap,
760
+ > = (
761
+ ShapeFromConnection<PothosSchemaTypes.ConnectionShapeHelper<Types, T, false>> extends infer Shape
762
+ ? Shape & {
763
+ parent: Parent;
764
+ args: InputShapeFromFields<Args> & PothosSchemaTypes.DefaultConnectionArguments;
765
+ }
766
+ : never
767
+ ) extends infer C
768
+ ? [C] extends [{ edges: MaybePromise<readonly (infer Edge)[]> }]
769
+ ? Omit<C, 'edges'> & { edges: MaybePromise<(Edge & { connection: C })[]> }
770
+ : C
771
+ : never;
772
+
755
773
  export type UniqueFieldsExtendedWhereUnique<T> = NonNullable<
756
774
  T extends infer O
757
775
  ? {
@@ -215,6 +215,7 @@ export interface PrismaCursorConnectionQueryOptions {
215
215
  }
216
216
 
217
217
  interface ResolvePrismaCursorConnectionOptions extends PrismaCursorConnectionQueryOptions {
218
+ parent?: unknown;
218
219
  query: {};
219
220
  totalCount?: number | (() => MaybePromise<number>);
220
221
  }
@@ -275,6 +276,7 @@ export function prismaCursorConnectionQuery({
275
276
  }
276
277
 
277
278
  export function wrapConnectionResult<T extends {}>(
279
+ parent: unknown,
278
280
  results: readonly T[],
279
281
  args: PothosSchemaTypes.DefaultConnectionArguments,
280
282
  take: number,
@@ -289,31 +291,41 @@ export function wrapConnectionResult<T extends {}>(
289
291
  ? results.slice(take < 0 ? 1 : 0, take < 0 ? results.length : -1)
290
292
  : results;
291
293
 
294
+ const connection = {
295
+ parent,
296
+ args,
297
+ totalCount,
298
+ edges: [] as ({ cursor: string; node: unknown } | null)[],
299
+ pageInfo: {
300
+ startCursor: null as string | null,
301
+ endCursor: null as string | null,
302
+ hasPreviousPage,
303
+ hasNextPage,
304
+ },
305
+ };
306
+
292
307
  const edges = nodes.map((value, index) =>
293
308
  value == null
294
309
  ? null
295
310
  : resolveNode
296
311
  ? {
312
+ connection,
297
313
  ...value,
298
314
  cursor: cursor(value),
299
315
  node: resolveNode(value),
300
316
  }
301
317
  : {
318
+ connection,
302
319
  cursor: cursor(value),
303
320
  node: value,
304
321
  },
305
322
  );
306
323
 
307
- return {
308
- totalCount,
309
- edges,
310
- pageInfo: {
311
- startCursor: edges[0]?.cursor,
312
- endCursor: edges[edges.length - 1]?.cursor,
313
- hasPreviousPage,
314
- hasNextPage,
315
- },
316
- };
324
+ connection.edges = edges;
325
+ connection.pageInfo.startCursor = edges[0]?.cursor ?? null;
326
+ connection.pageInfo.endCursor = edges[edges.length - 1]?.cursor ?? null;
327
+
328
+ return connection;
317
329
  }
318
330
 
319
331
  export async function resolvePrismaCursorConnection<T extends {}>(
@@ -336,7 +348,14 @@ export async function resolvePrismaCursorConnection<T extends {}>(
336
348
  return results;
337
349
  }
338
350
 
339
- return wrapConnectionResult(results, options.args, query.take, cursor, options.totalCount);
351
+ return wrapConnectionResult(
352
+ options.parent,
353
+ results,
354
+ options.args,
355
+ query.take,
356
+ cursor,
357
+ options.totalCount,
358
+ );
340
359
  }
341
360
 
342
361
  export function getCursorFormatter<Types extends SchemaTypes>(