@pothos/plugin-prisma 3.9.0 → 3.10.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,11 @@
1
1
  # Change Log
2
2
 
3
+ ## 3.10.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 384b0fb6: Make findUnique optional by defaulting to id/unique fields defined in prisma schema
8
+
3
9
  ## 3.9.0
4
10
 
5
11
  ### Minor Changes
package/README.md CHANGED
@@ -30,9 +30,6 @@ breakdown of what the methods and options used in the example below.
30
30
  // Create an object type based on a prisma model
31
31
  // without providing any custom type information
32
32
  builder.prismaObject('User', {
33
- // findUnique is explained more below, and is
34
- // required to safely resolve queries in some edge cases
35
- findUnique: (user) => ({ id: user.id }),
36
33
  fields: (t) => ({
37
34
  // expose fields from the database
38
35
  id: t.exposeID('id'),
@@ -74,8 +71,7 @@ builder.prismaObject('User', {
74
71
 
75
72
  // Create a relay node based a prisma model
76
73
  builder.prismaNode('Post', {
77
- findUnique: (id) => ({ id }),
78
- id: { resolve: (post) => post.id },
74
+ id: { field: 'id' },
79
75
  fields: (t) => ({
80
76
  title: t.exposeString('title'),
81
77
  author: t.relation('author'),
@@ -141,9 +137,7 @@ query {
141
137
 
142
138
  Will result in 2 calls to prisma, one to resolve everything except `oldPosts`, and a second to
143
139
  resolve everything inside `oldPosts`. Prisma can only resolve each relation once in a single query,
144
- so we need a separate to handle the second `posts` relation. These additional queries will use the
145
- `findUnique` defined for the parent type to create a new efficient query to load any conflicting
146
- relations.
140
+ so we need a separate to handle the second `posts` relation.
147
141
 
148
142
  ## Install
149
143
 
@@ -263,7 +257,6 @@ const builder = new SchemaBuilder<{
263
257
  builder.prismaObject('User', {
264
258
  // Optional name for the object, defaults to the name of the prisma model
265
259
  name: 'PostAuthor',
266
- findUnique: (user) => ({ id: user.id }),
267
260
  fields: (t) => ({
268
261
  id: t.exposeID('id'),
269
262
  email: t.exposeString('email'),
@@ -271,7 +264,6 @@ builder.prismaObject('User', {
271
264
  });
272
265
 
273
266
  builder.prismaObject('Post', {
274
- findUnique: (post) => ({ id: post.id }),
275
267
  fields: (t) => ({
276
268
  id: t.exposeID('id'),
277
269
  title: t.exposeString('title'),
@@ -283,8 +275,6 @@ So far, this is just creating some simple object types. They work just like any
283
275
  Pothos. The main advantage of this is that we get the type information without using object refs, or
284
276
  needing imports from prisma client.
285
277
 
286
- The `findUnique` option is described more below.
287
-
288
278
  ## Adding prisma fields to non-prisma objects (including Query and Mutation)
289
279
 
290
280
  There is a new `t.prismaField` method which can be used to define fields that resolve to your prisma
@@ -341,7 +331,6 @@ builder.queryType({
341
331
  });
342
332
 
343
333
  builder.prismaObject('User', {
344
- findUnique: (user) => ({ id: user.id }),
345
334
  fields: (t) => ({
346
335
  id: t.exposeID('id'),
347
336
  email: t.exposeString('email'),
@@ -350,7 +339,6 @@ builder.prismaObject('User', {
350
339
  });
351
340
 
352
341
  builder.prismaObject('Post', {
353
- findUnique: (post) => ({ id: post.id }),
354
342
  fields: (t) => ({
355
343
  id: t.exposeID('id'),
356
344
  title: t.exposeString('title'),
@@ -393,26 +381,24 @@ the `me` `prismaField` would receive something like the following as its query p
393
381
  ```
394
382
 
395
383
  This will work perfectly for the majority of queries. There are a number of edge cases that make it
396
- impossible to resolve everything in a single query. When this happens the `findUnique` option is
397
- used to ensure that everything is still loaded correctly, and split into as few efficient queries as
398
- possible.
399
-
400
- ### Find Unique
384
+ impossible to resolve everything in a single query. When this happens Pothos will automatically
385
+ construct an additional query to ensure that everything is still loaded correctly, and split into as
386
+ few efficient queries as possible. This process is described in more detail below
401
387
 
402
- The `findUnique` function will receive an instance of the prisma model the current type is defining,
403
- and should return an object that will be passed as a `where` in a `prisma.findUnique`. Generally,
404
- this will just be something like: `user => { id: user.id }` where `id` is the primary key for the
405
- table.
388
+ ### Fallback queryies
406
389
 
407
- When the prisma plugin encounters a query where the requirements for a field can not be satisfied,
408
- it will call findUnique for the current prisma model, and include or select all properties that are
409
- required for the fields that could not be resolved without an additional query.
390
+ There are some cases where data can not be pre-loaded by a prisma field. In these cases, pothos will
391
+ issue a `findUnique` query for the parent of any fields that were not pre-loaded, and select the
392
+ missing relations so those fields can be resolved with the correct data. These queries should be
393
+ very efficient, are batched by pothos to combine requirements for multiple fields into one query,
394
+ and batched by Prisma to combine multiple queries (in an n+1 situation) to a single sql query.
410
395
 
411
396
  The following are some edge cases that could cause an additional query to be necessary:
412
397
 
413
398
  - The parent object was not loaded through a field defined with `t.prismaField`, or `t.relation`
414
399
  - The root `prismaField` did not correctly spread the `query` arguments in is prisma call.
415
- - The query selects multiple fields that use the same relation with different queries
400
+ - The query selects multiple fields that use the same relation with different filters, sorting, or
401
+ limits
416
402
  - The query contains multiple aliases for the same relation field with different arguments in a way
417
403
  that results in different query options for the relation.
418
404
  - A relation field has a query that is incompatible with the default includes of the parent object
@@ -420,32 +406,6 @@ The following are some edge cases that could cause an additional query to be nec
420
406
  All of the above should be relatively uncommon in normal usage, but the plugin ensures that these
421
407
  types of edge cases are automatically handled when they do occur.
422
408
 
423
- ### Without Find Unique
424
-
425
- This is generally _NOT RECOMMENDED_, but you can set `findUnique` to null for some prisma objects.
426
- Doing this will prevent the plugin from resolving queries for conflicting relations. Because of
427
- this, you will need to provide a `resolve` method when defining relations, and some other options
428
- (like field level selects, described below) will not be available. This `resolve` method is _ONLY
429
- CALLED AS A FALLBACK_ when the relation has not already been loaded. This means that you should not
430
- apply any sorting or filtering to the relation queried in the resolve method. Instead used the
431
- `query` option described in the next section
432
-
433
- ```typescript
434
- builder.prismaObject('User', {
435
- findUnique: null,
436
- fields: (t) => ({
437
- id: t.exposeID('id'),
438
- posts: t.relation('posts', {
439
- resolve: (query, user) =>
440
- db.post.findMany({
441
- ...query,
442
- where: { authorId: user.id },
443
- }),
444
- }),
445
- }),
446
- });
447
- ```
448
-
449
409
  ### Filters, Sorting, and arguments
450
410
 
451
411
  So far we have been describing very simple queries without any arguments, filtering, or sorting. For
@@ -456,7 +416,6 @@ can either be a query object, or a method that returns a query object based on t
456
416
 
457
417
  ```typescript
458
418
  builder.prismaObject('User', {
459
- findUnique: (user) => ({ id: user.id }),
460
419
  fields: (t) => ({
461
420
  id: t.exposeID('id'),
462
421
  posts: t.relation('posts', {
@@ -481,12 +440,8 @@ passed into the first argument of the parent `t.prismaField`, and can include th
481
440
  the context for the current request. Because it is used for pre-loading data, and solving n+1
482
441
  issues, it can not be passed the `parent` object because it may not be loaded yet.
483
442
 
484
- If your field has a `resolve` method the generated `query` will be passed in as part of the first
485
- arg to your resolve function
486
-
487
443
  ```typescript
488
444
  builder.prismaObject('User', {
489
- findUnique: null,
490
445
  fields: (t) => ({
491
446
  id: t.exposeID('id'),
492
447
  email: t.exposeString('email'),
@@ -501,19 +456,11 @@ builder.prismaObject('User', {
501
456
  createdAt: args.oldestFirst ? 'asc' : 'desc',
502
457
  },
503
458
  }),
504
- // optional: query here will contain the orderBy (and any other properties returned by the query method)
505
- resolve: (query, post) => db.post.findMany({ ...query, where: { id: post.authorId } }),
506
459
  }),
507
460
  }),
508
461
  });
509
462
  ```
510
463
 
511
- It is _VERY IMPORTANT_ to put all your filtering and sorting into the query method rather than your
512
- resolver because the resolver is only used as fallback, and any filtering that does not exist in the
513
- query method will not be applied correctly. If you have a where in both your query and your
514
- resolver, you will need to ensure these are merged correctly. It is generally better NOT to use a
515
- custom resolver.
516
-
517
464
  ## relationCount
518
465
 
519
466
  Prisma supports querying for
@@ -523,7 +470,6 @@ support any filters on the counts, but can give a total count for a relation.
523
470
 
524
471
  ```typescript
525
472
  builder.prismaObject('User', {
526
- findUnique: (user) => ({ id: user.id }),
527
473
  fields: (t) => ({
528
474
  id: t.exposeID('id'),
529
475
  postCount: t.relationCount('posts'),
@@ -543,7 +489,6 @@ builder.prismaObject('User', {
543
489
  include: {
544
490
  profile: true,
545
491
  },
546
- findUnique: (user) => ({ id: user.id }),
547
492
  fields: (t) => ({
548
493
  id: t.exposeID('id'),
549
494
  email: t.exposeString('email'),
@@ -571,7 +516,6 @@ builder.prismaObject('User', {
571
516
  select: {
572
517
  id: true,
573
518
  },
574
- findUnique: (user) => ({ id: user.id }),
575
519
  fields: (t) => ({
576
520
  id: t.exposeID('id'),
577
521
  email: t.exposeString('email'),
@@ -579,7 +523,6 @@ builder.prismaObject('User', {
579
523
  });
580
524
  ```
581
525
 
582
- At the very least, you will need to `select` the properties required by your `findUnique` function.
583
526
  The `t.expose*` and `t.relation` methods will all automatically add selections for the exposed
584
527
  fields _WHEN THEY ARE QUERIED_, ensuring that only the requested columns will be loaded from the
585
528
  database.
@@ -591,7 +534,6 @@ builder.prismaObject('User', {
591
534
  select: {
592
535
  id: true,
593
536
  },
594
- findUnique: (user) => ({ id: user.id }),
595
537
  fields: (t) => ({
596
538
  id: t.exposeID('id'),
597
539
  email: t.exposeString('email'),
@@ -617,7 +559,6 @@ selection for a field:
617
559
 
618
560
  ```ts
619
561
  const PostDraft = builder.prismaObject('Post', {
620
- findUnique: (post) => ({ id: post.id }),
621
562
  fields: (t) => ({
622
563
  title: t.exposeString('title'),
623
564
  commentFromDate: t.string({
@@ -660,8 +601,8 @@ model Media {
660
601
  id Int @id @default(autoincrement())
661
602
  url String
662
603
  posts PostMedia[]
663
- uploadedBy User @relation(fields: [uoloadedById], references: [id])
664
- uoloadedById Int
604
+ uploadedBy User @relation(fields: [uploadedById], references: [id])
605
+ uploadedById Int
665
606
  }
666
607
 
667
608
  model PostMedia {
@@ -677,7 +618,6 @@ You can define a media field that can pre-load the correct relations based on th
677
618
 
678
619
  ```ts
679
620
  const PostDraft = builder.prismaObject('Post', {
680
- findUnique: (post) => ({ id: post.id }),
681
621
  fields: (t) => ({
682
622
  title: t.exposeString('title'),
683
623
  media: t.field({
@@ -701,7 +641,6 @@ const PostDraft = builder.prismaObject('Post', {
701
641
  });
702
642
 
703
643
  const Media = builder.prismaObject('Media', {
704
- findUnique: (media) => ({ id: media.id }),
705
644
  select: {
706
645
  id: true,
707
646
  },
@@ -721,7 +660,6 @@ inside the returned type is.
721
660
 
722
661
  ```ts
723
662
  const PostRef = builder.prismaObject('Post', {
724
- findUnique: (post) => ({ id: post.id }),
725
663
  fields: (t) => ({
726
664
  title: t.exposeString('title'),
727
665
  content: t.exposeString('content'),
@@ -743,7 +681,6 @@ const PostPreview = builder.objectRef<Post>('PostPreview').implement({
743
681
  });
744
682
 
745
683
  builder.prismaObject('User', {
746
- findUnique: (user) => ({ id: user.id }),
747
684
  fields: (t) => ({
748
685
  id: t.exposeID('id'),
749
686
  postPreviews: t.field({
@@ -774,7 +711,6 @@ described above). Additional variants can be defined by providing a `variant` op
774
711
  ```typescript
775
712
  const Viewer = builder.prismaObject('User', {
776
713
  variant: 'Viewer',
777
- findUnique: (user) => ({ id: user.id }),
778
714
  fields: (t) => ({
779
715
  id: t.exposeID('id'),
780
716
  });
@@ -785,7 +721,6 @@ You can define variant fields that reference one variant from another:
785
721
  ```typescript
786
722
  const Viewer = builder.prismaObject('User', {
787
723
  variant: 'Viewer',
788
- findUnique: (user) => ({ id: user.id }),
789
724
  fields: (t) => ({
790
725
  id: t.exposeID('id'),
791
726
  // Using the model name ('User') will reference the primary variant
@@ -816,10 +751,8 @@ You can also use variants when defining relations by providing a `type` option:
816
751
  ```typescript
817
752
  const PostDraft = builder.prismaNode('Post', {
818
753
  variant: 'PostDraft'
819
- // This is used to load the node by id
820
- findUnique: (id) => ({ id }),
821
- // This is used to get the id from a node
822
- id: { resolve: (post) => post.id },
754
+ // This set's what database field to use for the nodes id field
755
+ id: { field: 'id' },
823
756
  // fields work just like they do for builder.prismaObject
824
757
  fields: (t) => ({
825
758
  title: t.exposeString('title'),
@@ -829,7 +762,6 @@ const PostDraft = builder.prismaNode('Post', {
829
762
 
830
763
  const Viewer = builder.prismaObject('User', {
831
764
  variant: 'Viewer',
832
- findUnique: (user) => ({ id: user.id }),
833
765
  fields: (t) => ({
834
766
  id: t.exposeID('id'),
835
767
  drafts: t.relation('posts', {
@@ -852,17 +784,15 @@ connections very easy.
852
784
  The `prismaNode` method works just like the `prismaObject` method with a couple of small
853
785
  differences:
854
786
 
855
- - the `findUnique` function now only receives an id. This is to support relays ability to load nodes
856
- by id.
857
787
  - there is a new `id` option that mirrors the `id` option from `node` method of the relay plugin,
858
- and must contain a resolve function that returns the id from an instance of the node.
788
+ and must contain a resolve function that returns the id from an instance of the node. Rather than
789
+ defining a resolver for the id field, you can set the `field` option to the name of a unique
790
+ column or index.
859
791
 
860
792
  ```typescript
861
793
  builder.prismaNode('Post', {
862
- // This is used to load the node by id
863
- findUnique: (id) => ({ id }),
864
- // This is used to get the id from a node
865
- id: { resolve: (post) => post.id },
794
+ // This set's what database field to use for the nodes id field
795
+ id: { field: 'id' },
866
796
  // fields work just like they do for builder.prismaObject
867
797
  fields: (t) => ({
868
798
  title: t.exposeString('title'),
@@ -871,6 +801,21 @@ builder.prismaNode('Post', {
871
801
  });
872
802
  ```
873
803
 
804
+ If you need to customize how ids are formatted, you can add a resolver for the `id`, and provide a
805
+ `findUnique` option that can be used to load the node by it's id. This is generally not necissary.
806
+
807
+ ```typescript
808
+ builder.prismaNode('Post', {
809
+ id: { resolve: (post) => String(post.id) },
810
+ // The return value will be passed as the `where` of a `prisma.post.findUnique`
811
+ findUnique: (id) => ({ id: Number.parseInt(id, 10) }),
812
+ fields: (t) => ({
813
+ title: t.exposeString('title'),
814
+ author: t.relation('author'),
815
+ }),
816
+ });
817
+ ```
818
+
874
819
  ### `prismaConnection`
875
820
 
876
821
  The `prismaConnection` method on a field builder can be used to create a relay `connection` field
@@ -926,8 +871,7 @@ of the current model.
926
871
 
927
872
  ```typescript
928
873
  builder.prismaNode('User', {
929
- findUnique: (id) => ({ id }),
930
- id: { resolve: (user) => user.id },
874
+ id: { field: 'id' },
931
875
  fields: (t) => ({
932
876
  // Connections can be very simple to define
933
877
  simplePosts: t.relatedConnection('posts', {
@@ -962,11 +906,6 @@ builder.prismaNode('User', {
962
906
  - `maxSize`: (default: 100) The maximum number of nodes returned for a connection.
963
907
  - `query`: A method that accepts the `args` and `context` for the connection field, and returns
964
908
  filtering and sorting logic that will be merged into the query for the relation.
965
- - `resolve`: (optional) Used as a fallback when a connection is not pre-loaded. It is optional, and
966
- generally should NOT be defined manually. If used it works like a combination of the `resolve`
967
- method of `relation` and `prismaConnection`. The default will use the `findUnique` of the current
968
- model, with an `include` for the current relation. It is also batched together with other
969
- relationships to improve query efficiency.
970
909
  - `totalCount`: when set to true, this will add a `totalCount` field to the connection object. see
971
910
  `relationCount` above for more details.
972
911
 
@@ -1098,5 +1037,5 @@ PostObject.implement({
1098
1037
  With this setup, a parent resolver has the option to include the author, but we have a fallback
1099
1038
  incase it does not.
1100
1039
 
1101
- There are other patterns like dataloaders than can be used to reduce n+1 issues, and make your graph
1102
- more efficient, but they are too complex to describe here.
1040
+ There are other patterns like data loaders than can be used to reduce n+1 issues, and make your
1041
+ graph more efficient, but they are too complex to describe here.
@@ -38,10 +38,10 @@ declare global {
38
38
  select: Select;
39
39
  include: Include;
40
40
  }>>;
41
- prismaNode: 'relay' extends PluginName ? <Name extends keyof Types['PrismaTypes'], Interfaces extends InterfaceParam<Types>[] = [], Include = unknown, Select = unknown>(name: Name, options: PrismaNodeOptions<Types, Types['PrismaTypes'][Name] & PrismaModelTypes, Interfaces, Include, Select, ShapeFromSelection<PrismaModelTypes & Types['PrismaTypes'][Name], {
41
+ prismaNode: 'relay' extends PluginName ? <Name extends keyof Types['PrismaTypes'], Interfaces extends InterfaceParam<Types>[] = [], Include = unknown, Select = unknown, UniqueField = unknown>(name: Name, options: PrismaNodeOptions<Types, Types['PrismaTypes'][Name] & PrismaModelTypes, Interfaces, Include, Select, ShapeFromSelection<PrismaModelTypes & Types['PrismaTypes'][Name], {
42
42
  select: Select;
43
43
  include: Include;
44
- }>>) => PrismaNodeRef<Types['PrismaTypes'][Name] & PrismaModelTypes, ShapeFromSelection<PrismaModelTypes & Types['PrismaTypes'][Name], {
44
+ }>, UniqueField>) => PrismaNodeRef<Types['PrismaTypes'][Name] & PrismaModelTypes, ShapeFromSelection<PrismaModelTypes & Types['PrismaTypes'][Name], {
45
45
  select: Select;
46
46
  include: Include;
47
47
  }>> : '@pothos/plugin-relay is required to use this method';
@@ -1 +1 @@
1
- {"version":3,"file":"global-types.d.ts","sourceRoot":"","sources":["../src/global-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"global-types.d.ts","sourceRoot":"","sources":["../src/global-types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { SchemaTypes } from '@pothos/core';
1
+ import { ObjectRef, SchemaTypes } from '@pothos/core';
2
2
  import { SelectionState } from './util/selections';
3
3
  export declare class ModelLoader {
4
4
  model: object;
@@ -10,7 +10,18 @@ export declare class ModelLoader {
10
10
  state: SelectionState;
11
11
  }>;
12
12
  constructor(model: object, builder: PothosSchemaTypes.SchemaBuilder<never>, modelName: string, findUnique: (args: unknown, ctx: {}) => unknown);
13
- static forRef<Types extends SchemaTypes>(modelName: string, findUnique: (args: unknown, ctx: {}) => unknown, builder: PothosSchemaTypes.SchemaBuilder<Types>): import("@pothos/core").ContextCache<ModelLoader, object, []>;
13
+ static forRef<Types extends SchemaTypes>(ref: ObjectRef<unknown>, modelName: string, findUnique: (args: unknown, ctx: {}) => unknown, builder: PothosSchemaTypes.SchemaBuilder<Types>): import("@pothos/core").ContextCache<ModelLoader, object, []>;
14
+ static getFindUnique(findBy: {
15
+ name: string | null;
16
+ fields: string[];
17
+ } | string): (model: Record<string, unknown>) => {};
18
+ static getDefaultFindBy<Types extends SchemaTypes>(ref: ObjectRef<unknown>, modelName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): string | {
19
+ name: string | null;
20
+ fields: string[];
21
+ };
22
+ static getDefaultFindUnique<Types extends SchemaTypes>(ref: ObjectRef<unknown>, modelName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): (model: Record<string, unknown>) => {};
23
+ static getDefaultIDSelection<Types extends SchemaTypes>(ref: ObjectRef<unknown>, modelName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): Record<string, boolean>;
24
+ static getFindUniqueForField<Types extends SchemaTypes>(ref: ObjectRef<unknown>, modelName: string, fieldName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): (model: Record<string, unknown>) => {};
14
25
  loadSelection(selection: SelectionState, context: object): Promise<Record<string, unknown>>;
15
26
  initLoad(state: SelectionState, context: {}): Promise<Record<string, unknown>>;
16
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"model-loader.d.ts","sourceRoot":"","sources":["../src/model-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,WAAW,EAAE,MAAM,cAAc,CAAC;AAG/D,OAAO,EAGL,cAAc,EAEf,MAAM,mBAAmB,CAAC;AAE3B,qBAAa,WAAW;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAChD,UAAU,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,KAAK,OAAO,CAAC;IAChD,SAAS,EAAE,MAAM,CAAC;IAElB,MAAM;iBACK,QAAQ,OAAO,MAAM,EAAE,OAAO,CAAC,CAAC;eAClC,cAAc;OAClB;gBAGH,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,KAAK,OAAO;IAQjD,MAAM,CAAC,MAAM,CAAC,KAAK,SAAS,WAAW,EACrC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,KAAK,OAAO,EAC/C,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC;IAO3C,aAAa,CAAC,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM;IAcxD,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE;CAuBlD"}
1
+ {"version":3,"file":"model-loader.d.ts","sourceRoot":"","sources":["../src/model-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,SAAS,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG1E,OAAO,EAGL,cAAc,EAEf,MAAM,mBAAmB,CAAC;AAE3B,qBAAa,WAAW;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAChD,UAAU,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,KAAK,OAAO,CAAC;IAChD,SAAS,EAAE,MAAM,CAAC;IAElB,MAAM;iBACK,QAAQ,OAAO,MAAM,EAAE,OAAO,CAAC,CAAC;eAClC,cAAc;OAClB;gBAGH,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,KAAK,OAAO;IAQjD,MAAM,CAAC,MAAM,CAAC,KAAK,SAAS,WAAW,EACrC,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,EACvB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,KAAK,OAAO,EAC/C,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC;IAiBjD,MAAM,CAAC,aAAa,CAClB,MAAM,EACF;QACE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,GACD,MAAM,GACT,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE;IAkBzC,MAAM,CAAC,gBAAgB,CAAC,KAAK,SAAS,WAAW,EAC/C,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,EACvB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC;cAWnC,MAAM,GAAG,IAAI;gBACX,MAAM,EAAE;;IAsBxB,MAAM,CAAC,oBAAoB,CAAC,KAAK,SAAS,WAAW,EACnD,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,EACvB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE;IAMzC,MAAM,CAAC,qBAAqB,CAAC,KAAK,SAAS,WAAW,EACpD,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,EACvB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAgB1B,MAAM,CAAC,qBAAqB,CAAC,KAAK,SAAS,WAAW,EACpD,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,EACvB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE;IAiCnC,aAAa,CAAC,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM;IAcxD,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE;CAuBlD"}
package/dts/types.d.ts CHANGED
@@ -60,11 +60,11 @@ export declare type PrismaObjectTypeOptions<Types extends SchemaTypes, Model ext
60
60
  } & ({
61
61
  include?: Include & Model['Include'];
62
62
  select?: never;
63
- findUnique: FindUnique & (((parent: Shape, context: Types['Context']) => Model['Where']) | null);
63
+ findUnique?: FindUnique & (((parent: Shape, context: Types['Context']) => Model['Where']) | null);
64
64
  } | {
65
65
  select: Model['Select'] & Select;
66
66
  include?: never;
67
- findUnique: (parent: Shape, context: Types['Context']) => Model['Where'];
67
+ findUnique?: (parent: Shape, context: Types['Context']) => Model['Where'];
68
68
  });
69
69
  declare type NameOrVariant = {
70
70
  name?: never;
@@ -73,15 +73,22 @@ declare type NameOrVariant = {
73
73
  name?: string;
74
74
  variant?: never;
75
75
  };
76
- export declare type PrismaNodeOptions<Types extends SchemaTypes, Model extends PrismaModelTypes, Interfaces extends InterfaceParam<Types>[], Include, Select, Shape extends object> = NameOrVariant & Omit<PothosSchemaTypes.ObjectTypeOptions<Types, Shape> | PothosSchemaTypes.ObjectTypeWithInterfaceOptions<Types, Shape, Interfaces>, 'fields' | 'isTypeOf'> & {
77
- id: Omit<FieldOptionsFromKind<Types, Shape, 'ID', false, {}, 'Object', OutputShape<Types, 'ID'>, MaybePromise<OutputShape<Types, 'ID'>>>, 'args' | 'nullable' | 'resolve' | 'type'> & {
76
+ export declare type PrismaNodeOptions<Types extends SchemaTypes, Model extends PrismaModelTypes, Interfaces extends InterfaceParam<Types>[], Include, Select, Shape extends object, UniqueField> = NameOrVariant & Omit<PothosSchemaTypes.ObjectTypeOptions<Types, Shape> | PothosSchemaTypes.ObjectTypeWithInterfaceOptions<Types, Shape, Interfaces>, 'fields' | 'isTypeOf'> & {
77
+ id: Omit<FieldOptionsFromKind<Types, Shape, 'ID', false, {}, 'Object', OutputShape<Types, 'ID'>, MaybePromise<OutputShape<Types, 'ID'>>>, 'args' | 'nullable' | 'resolve' | 'type'> & ({
78
+ field?: never;
78
79
  resolve: (parent: Shape, context: Types['Context']) => MaybePromise<OutputShape<Types, 'ID'>>;
79
- };
80
+ } | {
81
+ resolve?: never;
82
+ field: UniqueField extends keyof Model['Where'] ? UniqueField : keyof Model['Where'];
83
+ });
80
84
  fields?: PrismaObjectFieldsShape<Types, Model, false, Shape & {
81
85
  [prismaModelName]?: Model['Name'];
82
86
  }, Select>;
87
+ } & (UniqueField extends string ? {
88
+ findUnique?: (id: string, context: Types['Context']) => Model['Where'];
89
+ } : {
83
90
  findUnique: (id: string, context: Types['Context']) => Model['Where'];
84
- } & ({
91
+ }) & ({
85
92
  include?: Include & Model['Include'];
86
93
  select?: never;
87
94
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,11 @@
1
- import { MaybePromise } from '@pothos/core';
1
+ import { MaybePromise, SchemaTypes } from '@pothos/core';
2
2
  export declare function formatCursorChunk(value: unknown): string;
3
3
  export declare function formatCursor(fields: string | string[]): (value: Record<string, unknown>) => string;
4
4
  export declare function parseRawCursor(cursor: unknown): unknown;
5
+ export declare function parseID(id: string, dataType: string): unknown;
6
+ export declare function getDefaultIDSerializer<Types extends SchemaTypes>(modelName: string, fieldName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): (parent: Record<string, unknown>) => unknown;
7
+ export declare function getDefaultIDParser<Types extends SchemaTypes>(modelName: string, fieldName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>): (id: string) => unknown;
8
+ export declare function serializeID(id: unknown, dataType: string): string;
5
9
  export declare function parseCompositeCursor(fields: string[]): (cursor: string) => Record<string, unknown>;
6
10
  export interface PrismaCursorConnectionQueryOptions {
7
11
  args: PothosSchemaTypes.DefaultConnectionArguments;
@@ -1 +1 @@
1
- {"version":3,"file":"cursors.d.ts","sourceRoot":"","sources":["../../src/util/cursors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAK5C,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,UAa/C;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,WACrC,OAAO,MAAM,EAAE,OAAO,CAAC,YASvC;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,WAwB7C;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,YACnC,MAAM,6BAevB;AAED,MAAM,WAAW,kCAAkC;IACjD,IAAI,EAAE,iBAAiB,CAAC,0BAA0B,CAAC;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1D;AAED,UAAU,oCAAqC,SAAQ,kCAAkC;IACvF,KAAK,EAAE,EAAE,CAAC;IACV,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;CACpD;AAED,wBAAgB,2BAA2B,CAAC,EAC1C,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EACpC,OAA0B,EAC1B,WAA0B,EAC1B,WAAW,GACZ,EAAE,kCAAkC;;;;;;;;EAwCpC;AAED,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,EAAE,EAC/C,OAAO,EAAE,CAAC,EAAE,EACZ,IAAI,EAAE,iBAAiB,CAAC,0BAA0B,EAClD,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,EAC3B,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;gCAArB,aAAa,MAAM,CAAC;;;;;;;;;;;EA4BlD;AAED,wBAAsB,6BAA6B,CAAC,CAAC,SAAS,EAAE,EAC9D,OAAO,EAAE,oCAAoC,EAC7C,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,EAC3B,OAAO,EAAE,CAAC,KAAK,EAAE;IAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC;;;;;;;;;;;;GASjG"}
1
+ {"version":3,"file":"cursors.d.ts","sourceRoot":"","sources":["../../src/util/cursors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAOzD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,UAa/C;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,WACrC,OAAO,MAAM,EAAE,OAAO,CAAC,YASvC;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,WAwB7C;AAED,wBAAgB,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CA2B7D;AAED,wBAAgB,sBAAsB,CAAC,KAAK,SAAS,WAAW,EAC9D,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAsB9C;AAED,wBAAgB,kBAAkB,CAAC,KAAK,SAAS,WAAW,EAC1D,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAC9C,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAwCzB;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,UASxD;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,YACnC,MAAM,6BAevB;AAED,MAAM,WAAW,kCAAkC;IACjD,IAAI,EAAE,iBAAiB,CAAC,0BAA0B,CAAC;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1D;AAED,UAAU,oCAAqC,SAAQ,kCAAkC;IACvF,KAAK,EAAE,EAAE,CAAC;IACV,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;CACpD;AAED,wBAAgB,2BAA2B,CAAC,EAC1C,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EACpC,OAA0B,EAC1B,WAA0B,EAC1B,WAAW,GACZ,EAAE,kCAAkC;;;;;;;;EAwCpC;AAED,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,EAAE,EAC/C,OAAO,EAAE,CAAC,EAAE,EACZ,IAAI,EAAE,iBAAiB,CAAC,0BAA0B,EAClD,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,EAC3B,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;gCAArB,aAAa,MAAM,CAAC;;;;;;;;;;;EA4BlD;AAED,wBAAsB,6BAA6B,CAAC,CAAC,SAAS,EAAE,EAC9D,OAAO,EAAE,oCAAoC,EAC7C,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,EAC3B,OAAO,EAAE,CAAC,KAAK,EAAE;IAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC;;;;;;;;;;;;GASjG"}
@@ -11,9 +11,13 @@ export declare function getModel<Types extends SchemaTypes>(name: string, builde
11
11
  fields: import("./get-client").DMMFField[];
12
12
  fieldMap?: Record<string, import("./get-client").DMMFField> | undefined;
13
13
  primaryKey: {
14
- name: string;
14
+ name: string | null;
15
15
  fields: string[];
16
16
  } | null;
17
+ uniqueIndexes: {
18
+ name: string | null;
19
+ fields: string[];
20
+ }[];
17
21
  };
18
22
  export declare function getCursorFormatter<Types extends SchemaTypes>(name: string, builder: PothosSchemaTypes.SchemaBuilder<Types>, cursor: string): (value: Record<string, unknown>) => string;
19
23
  export declare function getCursorParser<Types extends SchemaTypes>(name: string, builder: PothosSchemaTypes.SchemaBuilder<Types>, cursor: string): (rawCursor: string) => {
@@ -1 +1 @@
1
- {"version":3,"file":"datamodel.d.ts","sourceRoot":"","sources":["../../src/util/datamodel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAI1E,eAAO,MAAM,MAAM,qEAAwE,CAAC;AAC5F,eAAO,MAAM,aAAa,2DAEQ,OAAO,OAAO,EAAE,KAAK,OAAO,UAC3D,CAAC;AAEJ,eAAO,MAAM,gBAAgB,mFAG1B,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,oCAejB;AAED,wBAAgB,QAAQ,CAAC,KAAK,SAAS,WAAW,EAChD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC;;;;;;;;EAUhD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,SAAS,WAAW,EAC1D,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,MAAM,EAAE,MAAM,8CAMf;AAED,wBAAgB,eAAe,CAAC,KAAK,SAAS,WAAW,EACvD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,MAAM,EAAE,MAAM,eAQK,MAAM;;EAG1B;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,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAI1E,eAAO,MAAM,MAAM,qEAAwE,CAAC;AAC5F,eAAO,MAAM,aAAa,2DAEQ,OAAO,OAAO,EAAE,KAAK,OAAO,UAC3D,CAAC;AAEJ,eAAO,MAAM,gBAAgB,mFAG1B,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,oCAejB;AAED,wBAAgB,QAAQ,CAAC,KAAK,SAAS,WAAW,EAChD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC;;;;;;;;;;;;EAUhD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,SAAS,WAAW,EAC1D,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,MAAM,EAAE,MAAM,8CAMf;AAED,wBAAgB,eAAe,CAAC,KAAK,SAAS,WAAW,EACvD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,MAAM,EAAE,MAAM,eAQK,MAAM;;EAG1B;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,kBAWvE"}