@pothos/plugin-prisma 3.38.1 → 3.40.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/README.md +314 -234
- package/dts/global-types.d.ts +5 -5
- package/dts/global-types.d.ts.map +1 -1
- package/dts/index.d.ts +2 -1
- package/dts/index.d.ts.map +1 -1
- package/dts/prisma-field-builder.d.ts +4 -4
- package/dts/prisma-field-builder.d.ts.map +1 -1
- package/dts/util/cursors.d.ts +3 -2
- package/dts/util/cursors.d.ts.map +1 -1
- package/esm/global-types.d.ts +9 -5
- package/esm/global-types.d.ts.map +1 -1
- package/esm/global-types.js.map +1 -1
- package/esm/index.d.ts +2 -1
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +2 -1
- package/esm/index.js.map +1 -1
- package/esm/prisma-field-builder.d.ts +6 -4
- package/esm/prisma-field-builder.d.ts.map +1 -1
- package/esm/prisma-field-builder.js.map +1 -1
- package/esm/util/cursors.d.ts +3 -2
- package/esm/util/cursors.d.ts.map +1 -1
- package/esm/util/cursors.js +9 -6
- package/esm/util/cursors.js.map +1 -1
- package/lib/index.js +3 -0
- package/lib/index.js.map +1 -1
- package/lib/prisma-field-builder.js.map +1 -1
- package/lib/util/cursors.js +12 -8
- package/lib/util/cursors.js.map +1 -1
- package/package.json +3 -3
- package/src/global-types.ts +13 -2
- package/src/index.ts +2 -1
- package/src/prisma-field-builder.ts +7 -2
- package/src/util/cursors.ts +10 -6
package/lib/util/cursors.js
CHANGED
|
@@ -10,8 +10,9 @@ function _export(target, all) {
|
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
12
|
formatCursorChunk: ()=>formatCursorChunk,
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
formatPrismaCursor: ()=>formatPrismaCursor,
|
|
14
|
+
cursorFormatter: ()=>cursorFormatter,
|
|
15
|
+
parsePrismaCursor: ()=>parsePrismaCursor,
|
|
15
16
|
parseID: ()=>parseID,
|
|
16
17
|
getDefaultIDSerializer: ()=>getDefaultIDSerializer,
|
|
17
18
|
getDefaultIDParser: ()=>getDefaultIDParser,
|
|
@@ -42,7 +43,10 @@ function formatCursorChunk(value) {
|
|
|
42
43
|
throw new TypeError(`Unsupported cursor type ${typeof value}`);
|
|
43
44
|
}
|
|
44
45
|
}
|
|
45
|
-
function
|
|
46
|
+
function formatPrismaCursor(record, fields) {
|
|
47
|
+
return cursorFormatter(fields)(record);
|
|
48
|
+
}
|
|
49
|
+
function cursorFormatter(fields) {
|
|
46
50
|
return (value)=>{
|
|
47
51
|
if (typeof fields === 'string') {
|
|
48
52
|
return (0, _core.encodeBase64)(`GPC:${formatCursorChunk(value[fields])}`);
|
|
@@ -50,7 +54,7 @@ function formatCursor(fields) {
|
|
|
50
54
|
return (0, _core.encodeBase64)(`GPC:J:${JSON.stringify(fields.map((name)=>value[name]))}`);
|
|
51
55
|
};
|
|
52
56
|
}
|
|
53
|
-
function
|
|
57
|
+
function parsePrismaCursor(cursor) {
|
|
54
58
|
if (typeof cursor !== 'string') {
|
|
55
59
|
throw new TypeError('Cursor must be a string');
|
|
56
60
|
}
|
|
@@ -169,7 +173,7 @@ function serializeID(id, dataType) {
|
|
|
169
173
|
}
|
|
170
174
|
function parseCompositeCursor(fields) {
|
|
171
175
|
return (cursor)=>{
|
|
172
|
-
const parsed =
|
|
176
|
+
const parsed = parsePrismaCursor(cursor);
|
|
173
177
|
if (!Array.isArray(parsed)) {
|
|
174
178
|
throw new TypeError(`Expected compound cursor to contain an array, but got ${parsed}`);
|
|
175
179
|
}
|
|
@@ -253,19 +257,19 @@ function getCursorFormatter(name, builder, cursor) {
|
|
|
253
257
|
var _modelData_primaryKey_name;
|
|
254
258
|
const primaryKey = (_modelData_primaryKey_name = (_modelData_primaryKey = modelData.primaryKey) === null || _modelData_primaryKey === void 0 ? void 0 : _modelData_primaryKey.name) !== null && _modelData_primaryKey_name !== void 0 ? _modelData_primaryKey_name : (_modelData_primaryKey1 = modelData.primaryKey) === null || _modelData_primaryKey1 === void 0 ? void 0 : _modelData_primaryKey1.fields.join('_');
|
|
255
259
|
if (primaryKey === cursor) {
|
|
256
|
-
return
|
|
260
|
+
return cursorFormatter(modelData.primaryKey.fields);
|
|
257
261
|
}
|
|
258
262
|
var _idx_name;
|
|
259
263
|
const uniqueIndex = modelData.uniqueIndexes.find((idx)=>((_idx_name = idx.name) !== null && _idx_name !== void 0 ? _idx_name : idx.fields.join('_')) === cursor);
|
|
260
264
|
var _uniqueIndex_fields;
|
|
261
|
-
return
|
|
265
|
+
return cursorFormatter((_uniqueIndex_fields = uniqueIndex === null || uniqueIndex === void 0 ? void 0 : uniqueIndex.fields) !== null && _uniqueIndex_fields !== void 0 ? _uniqueIndex_fields : cursor);
|
|
262
266
|
}
|
|
263
267
|
function getCursorParser(name, builder, cursor) {
|
|
264
268
|
var _modelData_primaryKey, _modelData_primaryKey1;
|
|
265
269
|
const modelData = (0, _datamodel.getModel)(name, builder);
|
|
266
270
|
var _modelData_primaryKey_name;
|
|
267
271
|
const primaryKey = (_modelData_primaryKey_name = (_modelData_primaryKey = modelData.primaryKey) === null || _modelData_primaryKey === void 0 ? void 0 : _modelData_primaryKey.name) !== null && _modelData_primaryKey_name !== void 0 ? _modelData_primaryKey_name : (_modelData_primaryKey1 = modelData.primaryKey) === null || _modelData_primaryKey1 === void 0 ? void 0 : _modelData_primaryKey1.fields.join('_');
|
|
268
|
-
let parser =
|
|
272
|
+
let parser = parsePrismaCursor;
|
|
269
273
|
if (primaryKey === cursor) {
|
|
270
274
|
parser = parseCompositeCursor(modelData.primaryKey.fields);
|
|
271
275
|
} else {
|
package/lib/util/cursors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/util/cursors.ts"],"names":["formatCursorChunk","formatCursor","parseRawCursor","parseID","getDefaultIDSerializer","getDefaultIDParser","serializeID","parseCompositeCursor","prismaCursorConnectionQuery","wrapConnectionResult","resolvePrismaCursorConnection","getCursorFormatter","getCursorParser","DEFAULT_MAX_SIZE","DEFAULT_SIZE","value","Date","String","Number","TypeError","fields","encodeBase64","JSON","stringify","map","name","cursor","decoded","decodeBase64","type","match","parseInt","parse","BigInt","Error","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","record","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","TypeError","record","fields","encodeBase64","JSON","stringify","map","name","cursor","decoded","decodeBase64","type","match","parseInt","parse","BigInt","Error","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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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pothos/plugin-prisma",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.40.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",
|
|
@@ -66,10 +66,10 @@
|
|
|
66
66
|
"graphql": "16.6.0",
|
|
67
67
|
"graphql-tag": "^2.12.6",
|
|
68
68
|
"prisma": "^4.7.1",
|
|
69
|
-
"@pothos/core": "3.
|
|
69
|
+
"@pothos/core": "3.24.0",
|
|
70
70
|
"@pothos/plugin-complexity": "3.11.7",
|
|
71
71
|
"@pothos/plugin-errors": "3.9.0",
|
|
72
|
-
"@pothos/plugin-relay": "3.
|
|
72
|
+
"@pothos/plugin-relay": "3.32.0",
|
|
73
73
|
"@pothos/plugin-simple-objects": "3.6.7",
|
|
74
74
|
"@pothos/test-utils": "1.4.7"
|
|
75
75
|
},
|
package/src/global-types.ts
CHANGED
|
@@ -233,6 +233,8 @@ declare global {
|
|
|
233
233
|
? T
|
|
234
234
|
: PrismaModelTypes & Types['PrismaTypes'][Type & keyof Types['PrismaTypes']],
|
|
235
235
|
Shape = Type extends PrismaObjectRef<PrismaModelTypes, infer S> ? S : Model['Shape'],
|
|
236
|
+
ConnectionInterfaces extends InterfaceParam<Types>[] = [],
|
|
237
|
+
EdgeInterfaces extends InterfaceParam<Types>[] = [],
|
|
236
238
|
>(
|
|
237
239
|
options: PrismaConnectionFieldOptions<
|
|
238
240
|
Types,
|
|
@@ -253,11 +255,18 @@ declare global {
|
|
|
253
255
|
ObjectRef<Shape>,
|
|
254
256
|
false,
|
|
255
257
|
false,
|
|
256
|
-
ResolveReturnShape
|
|
258
|
+
ResolveReturnShape,
|
|
259
|
+
ConnectionInterfaces
|
|
257
260
|
>
|
|
258
261
|
| ObjectRef<ShapeFromConnection<ConnectionShapeHelper<Types, Shape, false>>>,
|
|
259
262
|
edgeOptions:
|
|
260
|
-
| ConnectionEdgeObjectOptions<
|
|
263
|
+
| ConnectionEdgeObjectOptions<
|
|
264
|
+
Types,
|
|
265
|
+
ObjectRef<Shape>,
|
|
266
|
+
false,
|
|
267
|
+
ResolveReturnShape,
|
|
268
|
+
EdgeInterfaces
|
|
269
|
+
>
|
|
261
270
|
| ObjectRef<{
|
|
262
271
|
cursor: string;
|
|
263
272
|
node?: Shape | null | undefined;
|
|
@@ -334,6 +343,7 @@ declare global {
|
|
|
334
343
|
EdgeNullability extends FieldNullability<[unknown]>,
|
|
335
344
|
NodeNullability extends boolean,
|
|
336
345
|
Resolved,
|
|
346
|
+
Interfaces extends InterfaceParam<Types>[] = [],
|
|
337
347
|
> {}
|
|
338
348
|
|
|
339
349
|
export interface ConnectionEdgeObjectOptions<
|
|
@@ -341,6 +351,7 @@ declare global {
|
|
|
341
351
|
Type extends OutputType<Types>,
|
|
342
352
|
NodeNullability extends boolean,
|
|
343
353
|
Resolved,
|
|
354
|
+
Interfaces extends InterfaceParam<Types>[] = [],
|
|
344
355
|
> {}
|
|
345
356
|
|
|
346
357
|
export interface DefaultConnectionArguments {
|
package/src/index.ts
CHANGED
|
@@ -10,6 +10,7 @@ import SchemaBuilder, {
|
|
|
10
10
|
import { PrismaObjectFieldBuilder as InternalPrismaObjectFieldBuilder } from './field-builder';
|
|
11
11
|
import { ModelLoader } from './model-loader';
|
|
12
12
|
import { PrismaModelTypes } from './types';
|
|
13
|
+
import { formatPrismaCursor, parsePrismaCursor } from './util/cursors';
|
|
13
14
|
import { getLoaderMapping, setLoaderMappings } from './util/loader-map';
|
|
14
15
|
import { queryFromInfo, selectionStateFromInfo } from './util/map-query';
|
|
15
16
|
|
|
@@ -22,7 +23,7 @@ const pluginName = 'prisma' as const;
|
|
|
22
23
|
|
|
23
24
|
export default pluginName;
|
|
24
25
|
|
|
25
|
-
export { queryFromInfo };
|
|
26
|
+
export { formatPrismaCursor, parsePrismaCursor, queryFromInfo };
|
|
26
27
|
|
|
27
28
|
export type PrismaObjectFieldBuilder<
|
|
28
29
|
Types extends SchemaTypes,
|
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
FieldKind,
|
|
7
7
|
FieldRef,
|
|
8
8
|
InputFieldMap,
|
|
9
|
+
InterfaceParam,
|
|
9
10
|
isThenable,
|
|
10
11
|
MaybePromise,
|
|
11
12
|
NormalizeArgs,
|
|
@@ -106,6 +107,8 @@ export class PrismaObjectFieldBuilder<
|
|
|
106
107
|
Nullable extends boolean,
|
|
107
108
|
Args extends InputFieldMap,
|
|
108
109
|
ResolveReturnShape,
|
|
110
|
+
ConnectionInterfaces extends InterfaceParam<Types>[] = [],
|
|
111
|
+
EdgeInterfaces extends InterfaceParam<Types>[] = [],
|
|
109
112
|
>(
|
|
110
113
|
field: Field,
|
|
111
114
|
options: RelatedConnectionOptions<Types, Model, Field, Nullable, Args, NeedsResolve>,
|
|
@@ -117,7 +120,8 @@ export class PrismaObjectFieldBuilder<
|
|
|
117
120
|
ObjectRef<Shape>,
|
|
118
121
|
false,
|
|
119
122
|
false,
|
|
120
|
-
ResolveReturnShape
|
|
123
|
+
ResolveReturnShape,
|
|
124
|
+
ConnectionInterfaces
|
|
121
125
|
>
|
|
122
126
|
| ObjectRef<
|
|
123
127
|
ShapeFromConnection<PothosSchemaTypes.ConnectionShapeHelper<Types, Shape, false>>
|
|
@@ -127,7 +131,8 @@ export class PrismaObjectFieldBuilder<
|
|
|
127
131
|
Types,
|
|
128
132
|
ObjectRef<Shape>,
|
|
129
133
|
false,
|
|
130
|
-
ResolveReturnShape
|
|
134
|
+
ResolveReturnShape,
|
|
135
|
+
EdgeInterfaces
|
|
131
136
|
>
|
|
132
137
|
| ObjectRef<{
|
|
133
138
|
cursor: string;
|
package/src/util/cursors.ts
CHANGED
|
@@ -23,7 +23,11 @@ export function formatCursorChunk(value: unknown) {
|
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
export function
|
|
26
|
+
export function formatPrismaCursor(record: Record<string, unknown>, fields: string | string[]) {
|
|
27
|
+
return cursorFormatter(fields)(record);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export function cursorFormatter(fields: string | string[]) {
|
|
27
31
|
return (value: Record<string, unknown>) => {
|
|
28
32
|
if (typeof fields === 'string') {
|
|
29
33
|
return encodeBase64(`GPC:${formatCursorChunk(value[fields])}`);
|
|
@@ -33,7 +37,7 @@ export function formatCursor(fields: string | string[]) {
|
|
|
33
37
|
};
|
|
34
38
|
}
|
|
35
39
|
|
|
36
|
-
export function
|
|
40
|
+
export function parsePrismaCursor(cursor: unknown) {
|
|
37
41
|
if (typeof cursor !== 'string') {
|
|
38
42
|
throw new TypeError('Cursor must be a string');
|
|
39
43
|
}
|
|
@@ -178,7 +182,7 @@ export function serializeID(id: unknown, dataType: string) {
|
|
|
178
182
|
|
|
179
183
|
export function parseCompositeCursor(fields: string[]) {
|
|
180
184
|
return (cursor: unknown) => {
|
|
181
|
-
const parsed =
|
|
185
|
+
const parsed = parsePrismaCursor(cursor) as unknown[];
|
|
182
186
|
|
|
183
187
|
if (!Array.isArray(parsed)) {
|
|
184
188
|
throw new TypeError(`Expected compound cursor to contain an array, but got ${parsed}`);
|
|
@@ -320,14 +324,14 @@ export function getCursorFormatter<Types extends SchemaTypes>(
|
|
|
320
324
|
const modelData = getModel(name, builder);
|
|
321
325
|
const primaryKey = modelData.primaryKey?.name ?? modelData.primaryKey?.fields.join('_');
|
|
322
326
|
if (primaryKey === cursor) {
|
|
323
|
-
return
|
|
327
|
+
return cursorFormatter(modelData.primaryKey!.fields);
|
|
324
328
|
}
|
|
325
329
|
|
|
326
330
|
const uniqueIndex = modelData.uniqueIndexes.find(
|
|
327
331
|
(idx) => (idx.name ?? idx.fields.join('_')) === cursor,
|
|
328
332
|
);
|
|
329
333
|
|
|
330
|
-
return
|
|
334
|
+
return cursorFormatter(uniqueIndex?.fields ?? cursor);
|
|
331
335
|
}
|
|
332
336
|
|
|
333
337
|
export function getCursorParser<Types extends SchemaTypes>(
|
|
@@ -338,7 +342,7 @@ export function getCursorParser<Types extends SchemaTypes>(
|
|
|
338
342
|
const modelData = getModel(name, builder);
|
|
339
343
|
const primaryKey = modelData.primaryKey?.name ?? modelData.primaryKey?.fields.join('_');
|
|
340
344
|
|
|
341
|
-
let parser =
|
|
345
|
+
let parser = parsePrismaCursor;
|
|
342
346
|
|
|
343
347
|
if (primaryKey === cursor) {
|
|
344
348
|
parser = parseCompositeCursor(modelData.primaryKey!.fields);
|