@pothos/plugin-drizzle 0.8.0 → 0.9.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 (122) hide show
  1. package/CHANGELOG.md +98 -0
  2. package/TODO.md +25 -4
  3. package/dts/connection-helpers.d.ts +32 -0
  4. package/dts/connection-helpers.d.ts.map +1 -0
  5. package/dts/drizzle-field-builder.d.ts +18 -53
  6. package/dts/drizzle-field-builder.d.ts.map +1 -1
  7. package/dts/global-types.d.ts +22 -41
  8. package/dts/global-types.d.ts.map +1 -1
  9. package/dts/index.d.ts +4 -2
  10. package/dts/index.d.ts.map +1 -1
  11. package/dts/interface-ref.d.ts +3 -2
  12. package/dts/interface-ref.d.ts.map +1 -1
  13. package/dts/model-loader.d.ts +3 -2
  14. package/dts/model-loader.d.ts.map +1 -1
  15. package/dts/node-ref.d.ts +1 -1
  16. package/dts/node-ref.d.ts.map +1 -1
  17. package/dts/object-ref.d.ts +2 -2
  18. package/dts/object-ref.d.ts.map +1 -1
  19. package/dts/types.d.ts +61 -41
  20. package/dts/types.d.ts.map +1 -1
  21. package/dts/utils/config.d.ts +4 -3
  22. package/dts/utils/config.d.ts.map +1 -1
  23. package/dts/utils/cursors.d.ts +13 -7
  24. package/dts/utils/cursors.d.ts.map +1 -1
  25. package/dts/utils/drizzle-graphql.d.ts +0 -17
  26. package/dts/utils/drizzle-graphql.d.ts.map +1 -1
  27. package/dts/utils/map-query.d.ts.map +1 -1
  28. package/dts/utils/selections.d.ts +5 -5
  29. package/dts/utils/selections.d.ts.map +1 -1
  30. package/esm/connection-helpers.d.ts +34 -0
  31. package/esm/connection-helpers.d.ts.map +1 -0
  32. package/esm/connection-helpers.js +74 -0
  33. package/esm/connection-helpers.js.map +1 -0
  34. package/esm/drizzle-field-builder.d.ts +18 -73
  35. package/esm/drizzle-field-builder.d.ts.map +1 -1
  36. package/esm/drizzle-field-builder.js +25 -14
  37. package/esm/drizzle-field-builder.js.map +1 -1
  38. package/esm/field-builder.js +2 -3
  39. package/esm/field-builder.js.map +1 -1
  40. package/esm/global-types.d.ts +35 -60
  41. package/esm/global-types.d.ts.map +1 -1
  42. package/esm/global-types.js.map +1 -1
  43. package/esm/index.d.ts +4 -2
  44. package/esm/index.d.ts.map +1 -1
  45. package/esm/index.js +70 -61
  46. package/esm/index.js.map +1 -1
  47. package/esm/interface-ref.d.ts +3 -2
  48. package/esm/interface-ref.d.ts.map +1 -1
  49. package/esm/interface-ref.js.map +1 -1
  50. package/esm/model-loader.d.ts +3 -2
  51. package/esm/model-loader.d.ts.map +1 -1
  52. package/esm/model-loader.js +18 -10
  53. package/esm/model-loader.js.map +1 -1
  54. package/esm/node-ref.d.ts +1 -1
  55. package/esm/node-ref.d.ts.map +1 -1
  56. package/esm/object-ref.d.ts +2 -2
  57. package/esm/object-ref.d.ts.map +1 -1
  58. package/esm/schema-builder.js +111 -65
  59. package/esm/schema-builder.js.map +1 -1
  60. package/esm/types.d.ts +61 -41
  61. package/esm/types.d.ts.map +1 -1
  62. package/esm/types.js.map +1 -1
  63. package/esm/utils/config.d.ts +4 -3
  64. package/esm/utils/config.d.ts.map +1 -1
  65. package/esm/utils/config.js +32 -15
  66. package/esm/utils/config.js.map +1 -1
  67. package/esm/utils/cursors.d.ts +13 -7
  68. package/esm/utils/cursors.d.ts.map +1 -1
  69. package/esm/utils/cursors.js +137 -63
  70. package/esm/utils/cursors.js.map +1 -1
  71. package/esm/utils/drizzle-graphql.d.ts +0 -17
  72. package/esm/utils/drizzle-graphql.d.ts.map +1 -1
  73. package/esm/utils/drizzle-graphql.js +230 -198
  74. package/esm/utils/drizzle-graphql.js.map +1 -1
  75. package/esm/utils/map-query.d.ts.map +1 -1
  76. package/esm/utils/map-query.js +9 -5
  77. package/esm/utils/map-query.js.map +1 -1
  78. package/esm/utils/selections.d.ts +5 -5
  79. package/esm/utils/selections.d.ts.map +1 -1
  80. package/esm/utils/selections.js +19 -18
  81. package/esm/utils/selections.js.map +1 -1
  82. package/lib/connection-helpers.js +85 -0
  83. package/lib/connection-helpers.js.map +1 -0
  84. package/lib/drizzle-field-builder.js +24 -13
  85. package/lib/drizzle-field-builder.js.map +1 -1
  86. package/lib/field-builder.js +2 -3
  87. package/lib/field-builder.js.map +1 -1
  88. package/lib/index.js +75 -60
  89. package/lib/index.js.map +1 -1
  90. package/lib/interface-ref.js.map +1 -1
  91. package/lib/model-loader.js +18 -10
  92. package/lib/model-loader.js.map +1 -1
  93. package/lib/schema-builder.js +111 -65
  94. package/lib/schema-builder.js.map +1 -1
  95. package/lib/types.js.map +1 -1
  96. package/lib/utils/config.js +31 -14
  97. package/lib/utils/config.js.map +1 -1
  98. package/lib/utils/cursors.js +135 -63
  99. package/lib/utils/cursors.js.map +1 -1
  100. package/lib/utils/drizzle-graphql.js +230 -221
  101. package/lib/utils/drizzle-graphql.js.map +1 -1
  102. package/lib/utils/map-query.js +9 -5
  103. package/lib/utils/map-query.js.map +1 -1
  104. package/lib/utils/selections.js +18 -17
  105. package/lib/utils/selections.js.map +1 -1
  106. package/package.json +14 -14
  107. package/src/connection-helpers.ts +184 -0
  108. package/src/drizzle-field-builder.ts +30 -26
  109. package/src/field-builder.ts +4 -7
  110. package/src/global-types.ts +112 -119
  111. package/src/index.ts +90 -68
  112. package/src/interface-ref.ts +7 -3
  113. package/src/model-loader.ts +33 -17
  114. package/src/node-ref.ts +1 -1
  115. package/src/object-ref.ts +2 -2
  116. package/src/schema-builder.ts +114 -111
  117. package/src/types.ts +95 -62
  118. package/src/utils/config.ts +39 -30
  119. package/src/utils/cursors.ts +134 -101
  120. package/src/utils/drizzle-graphql.ts +273 -274
  121. package/src/utils/map-query.ts +19 -7
  122. package/src/utils/selections.ts +34 -28
@@ -1,7 +1,8 @@
1
1
  import { InterfaceRef, type SchemaTypes } from '@pothos/core';
2
+ import type { DrizzleNodeRef } from './node-ref';
2
3
  import { type DrizzleObjectRef, drizzleTableKey } from './object-ref';
3
- export type DrizzleRef<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationSchema'] = keyof Types['DrizzleRelationSchema'], T = {}> = DrizzleInterfaceRef<Types, Table, T> | DrizzleObjectRef<Types, Table, T>;
4
- export declare class DrizzleInterfaceRef<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationSchema'] = keyof Types['DrizzleRelationSchema'], T = {}> extends InterfaceRef<Types, T> {
4
+ export type DrizzleRef<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationsConfig'] = keyof Types['DrizzleRelationsConfig'], T = {}> = DrizzleInterfaceRef<Types, Table, T> | DrizzleObjectRef<Types, Table, T> | DrizzleNodeRef<Types, Table, T>;
5
+ export declare class DrizzleInterfaceRef<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationsConfig'] = keyof Types['DrizzleRelationsConfig'], T = {}> extends InterfaceRef<Types, T> {
5
6
  [drizzleTableKey]: Table;
6
7
  tableName: string;
7
8
  constructor(name: string, tableName: string);
@@ -1 +1 @@
1
- {"version":3,"file":"interface-ref.d.ts","sourceRoot":"","sources":["../src/interface-ref.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,KAAK,gBAAgB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEtE,MAAM,MAAM,UAAU,CACpB,KAAK,SAAS,WAAW,EACzB,KAAK,SAAS,MAAM,KAAK,CAAC,uBAAuB,CAAC,GAAG,MAAM,KAAK,CAAC,uBAAuB,CAAC,EACzF,CAAC,GAAG,EAAE,IACJ,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;AAE7E,qBAAa,mBAAmB,CAC9B,KAAK,SAAS,WAAW,EACzB,KAAK,SAAS,MAAM,KAAK,CAAC,uBAAuB,CAAC,GAAG,MAAM,KAAK,CAAC,uBAAuB,CAAC,EACzF,CAAC,GAAG,EAAE,CACN,SAAQ,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9B,CAAC,eAAe,CAAC,EAAG,KAAK,CAAC;IAE1B,SAAS,EAAE,MAAM,CAAC;gBAEN,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAK5C"}
1
+ {"version":3,"file":"interface-ref.d.ts","sourceRoot":"","sources":["../src/interface-ref.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,KAAK,gBAAgB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEtE,MAAM,MAAM,UAAU,CACpB,KAAK,SAAS,WAAW,EACzB,KAAK,SAAS,MAAM,KAAK,CAAC,wBAAwB,CAAC,GAAG,MAAM,KAAK,CAAC,wBAAwB,CAAC,EAC3F,CAAC,GAAG,EAAE,IAEJ,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,GACpC,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,GACjC,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;AAEpC,qBAAa,mBAAmB,CAC9B,KAAK,SAAS,WAAW,EACzB,KAAK,SAAS,MAAM,KAAK,CAAC,wBAAwB,CAAC,GAAG,MAAM,KAAK,CAAC,wBAAwB,CAAC,EAC3F,CAAC,GAAG,EAAE,CACN,SAAQ,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9B,CAAC,eAAe,CAAC,EAAG,KAAK,CAAC;IAE1B,SAAS,EAAE,MAAM,CAAC;gBAEN,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAK5C"}
@@ -1,5 +1,5 @@
1
1
  import { type SchemaTypes } from '@pothos/core';
2
- import { type Column, type TableRelationalConfig } from 'drizzle-orm';
2
+ import { type AnyTable, type Column, type SQL, type TableRelationalConfig } from 'drizzle-orm';
3
3
  import type { GraphQLResolveInfo } from 'graphql';
4
4
  import { type PothosDrizzleSchemaConfig } from './utils/config';
5
5
  import { type SelectionMap, type SelectionState } from './utils/selections';
@@ -23,7 +23,8 @@ export declare class ModelLoader {
23
23
  config: PothosDrizzleSchemaConfig;
24
24
  table: TableRelationalConfig;
25
25
  columns: Column[];
26
- selectSQL: import("drizzle-orm").SQL<unknown>;
26
+ primaryKey: Column[];
27
+ selectSQL: (table: AnyTable<{}>) => SQL;
27
28
  constructor(context: object, builder: PothosSchemaTypes.SchemaBuilder<never>, modelName: string, columns?: Column[]);
28
29
  static forModel<Types extends SchemaTypes>(modelName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>, columns?: Column[]): import("@pothos/core").ContextCache<ModelLoader, object, []>;
29
30
  sqlForModel(model: object): string | number | (string | number)[];
@@ -1 +1 @@
1
- {"version":3,"file":"model-loader.d.ts","sourceRoot":"","sources":["../src/model-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAsB,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,qBAAqB,EAAgB,MAAM,aAAa,CAAC;AACpF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,OAAO,EAAE,KAAK,yBAAyB,EAA8B,MAAM,gBAAgB,CAAC;AAG5F,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,cAAc,EAIpB,MAAM,oBAAoB,CAAC;AAE5B,UAAU,iBAAiB,CAAC,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC5B,MAAM,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;CAChC;AACD,qBAAa,WAAW;IACtB,OAAO,EAAE,MAAM,CAAC;IAEhB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAEhD,SAAS,EAAE,MAAM,CAAC;IAElB,UAAU;mBAAgC,cAAc;eAAS,YAAY;OAAM;IAEnF,MAAM;eACG,cAAc;gBACb,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;OACnE;IAEL,MAAM,EAAE,yBAAyB,CAAC;IAClC,KAAK,EAAE,qBAAqB,CAAC;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,qCAAC;gBAGR,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAAE;IAcpB,MAAM,CAAC,QAAQ,CAAC,KAAK,SAAS,WAAW,EACvC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,OAAO,CAAC,EAAE,MAAM,EAAE;IAOpB,WAAW,CAAC,KAAK,EAAE,MAAM;IAazB,YAAY,CAAC,IAAI,EAAE,kBAAkB;mBArDK,cAAc;eAAS,YAAY;;IAkE7E,oBAAoB,CAAC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM;mBAlErB,cAAc;eAAS,YAAY;;IAqFvE,aAAa,CAAC,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM;IAgBrD,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAYvF,UAAU,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM;IAgBxE,QAAQ,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM;CA+DlD"}
1
+ {"version":3,"file":"model-loader.d.ts","sourceRoot":"","sources":["../src/model-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAsB,MAAM,cAAc,CAAC;AACpE,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,MAAM,EACX,KAAK,GAAG,EACR,KAAK,qBAAqB,EAG3B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,KAAK,yBAAyB,EAA8B,MAAM,gBAAgB,CAAC;AAG5F,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,cAAc,EAIpB,MAAM,oBAAoB,CAAC;AAE5B,UAAU,iBAAiB,CAAC,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC5B,MAAM,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;CAChC;AACD,qBAAa,WAAW;IACtB,OAAO,EAAE,MAAM,CAAC;IAEhB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAEhD,SAAS,EAAE,MAAM,CAAC;IAElB,UAAU;mBAAgC,cAAc;eAAS,YAAY;OAAM;IAEnF,MAAM;eACG,cAAc;gBACb,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;OACnE;IAEL,MAAM,EAAE,yBAAyB,CAAC;IAClC,KAAK,EAAE,qBAAqB,CAAC;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC;gBAGtC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAAE;IAmBpB,MAAM,CAAC,QAAQ,CAAC,KAAK,SAAS,WAAW,EACvC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,OAAO,CAAC,EAAE,MAAM,EAAE;IAOpB,WAAW,CAAC,KAAK,EAAE,MAAM;IAazB,YAAY,CAAC,IAAI,EAAE,kBAAkB;mBA3DK,cAAc;eAAS,YAAY;;IAwE7E,oBAAoB,CAAC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM;mBAxErB,cAAc;eAAS,YAAY;;IA2FvE,aAAa,CAAC,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM;IAgBrD,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAYvF,UAAU,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM;IAgBxE,QAAQ,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM;CAmElD"}
package/dts/node-ref.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import type { SchemaTypes } from '@pothos/core';
2
2
  import { DrizzleObjectRef } from './object-ref';
3
3
  export declare const relayIDShapeKey: unique symbol;
4
- export declare class DrizzleNodeRef<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationSchema'] = keyof Types['DrizzleRelationSchema'], T = {}, IDShape = string> extends DrizzleObjectRef<Types, Table, T> {
4
+ export declare class DrizzleNodeRef<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationsConfig'] = keyof Types['DrizzleRelationsConfig'], T = {}, IDShape = string> extends DrizzleObjectRef<Types, Table, T> {
5
5
  [relayIDShapeKey]: IDShape;
6
6
  parseId: ((id: string, ctx: object) => IDShape) | undefined;
7
7
  constructor(name: string, tableName: string, options: {
@@ -1 +1 @@
1
- {"version":3,"file":"node-ref.d.ts","sourceRoot":"","sources":["../src/node-ref.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,eAAe,eAAuC,CAAC;AAEpE,qBAAa,cAAc,CACzB,KAAK,SAAS,WAAW,EACzB,KAAK,SAAS,MAAM,KAAK,CAAC,uBAAuB,CAAC,GAAG,MAAM,KAAK,CAAC,uBAAuB,CAAC,EACzF,CAAC,GAAG,EAAE,EACN,OAAO,GAAG,MAAM,CAChB,SAAQ,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IACzC,CAAC,eAAe,CAAC,EAAG,OAAO,CAAC;IAC5B,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC;gBAG1D,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE;QACP,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;KAChD;CAKJ"}
1
+ {"version":3,"file":"node-ref.d.ts","sourceRoot":"","sources":["../src/node-ref.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,eAAe,eAAuC,CAAC;AAEpE,qBAAa,cAAc,CACzB,KAAK,SAAS,WAAW,EACzB,KAAK,SAAS,MAAM,KAAK,CAAC,wBAAwB,CAAC,GAAG,MAAM,KAAK,CAAC,wBAAwB,CAAC,EAC3F,CAAC,GAAG,EAAE,EACN,OAAO,GAAG,MAAM,CAChB,SAAQ,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IACzC,CAAC,eAAe,CAAC,EAAG,OAAO,CAAC;IAC5B,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC;gBAG1D,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE;QACP,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;KAChD;CAKJ"}
@@ -1,8 +1,8 @@
1
1
  import { ObjectRef, type SchemaTypes, abstractReturnShapeKey } from '@pothos/core';
2
2
  import type { WithBrand } from './types';
3
3
  export declare const drizzleTableKey: unique symbol;
4
- export declare class DrizzleObjectRef<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationSchema'] = keyof Types['DrizzleRelationSchema'], T = {}> extends ObjectRef<Types, T> {
5
- [drizzleTableKey]: Types['DrizzleRelationSchema'][Table];
4
+ export declare class DrizzleObjectRef<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationsConfig'] = keyof Types['DrizzleRelationsConfig'], T = {}> extends ObjectRef<Types, T> {
5
+ [drizzleTableKey]: Types['DrizzleRelationsConfig'][Table];
6
6
  [abstractReturnShapeKey]: WithBrand<T>;
7
7
  tableName: string;
8
8
  constructor(name: string, tableName: string);
@@ -1 +1 @@
1
- {"version":3,"file":"object-ref.d.ts","sourceRoot":"","sources":["../src/object-ref.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,KAAK,WAAW,EAChB,sBAAsB,EAGvB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC,eAAO,MAAM,eAAe,eAAuC,CAAC;AAEpE,qBAAa,gBAAgB,CAC3B,KAAK,SAAS,WAAW,EACzB,KAAK,SAAS,MAAM,KAAK,CAAC,uBAAuB,CAAC,GAAG,MAAM,KAAK,CAAC,uBAAuB,CAAC,EACzF,CAAC,GAAG,EAAE,CACN,SAAQ,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;IAC3B,CAAC,eAAe,CAAC,EAAG,KAAK,CAAC,uBAAuB,CAAC,CAAC,KAAK,CAAC,CAAC;IAE1D,CAAC,sBAAsB,CAAC,EAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAExC,SAAS,EAAE,MAAM,CAAC;gBAEN,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAM3C,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,EACxB,KAAK,EAAE,CAAC,GACP,CAAC,SAAS,CAAC,EAAE,GAAG;SAAG,CAAC,IAAI,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAAE,GAAG,SAAS,CAAC,CAAC,CAAC;IAcrE,QAAQ,CAAC,KAAK,EAAE,OAAO;CAQxB"}
1
+ {"version":3,"file":"object-ref.d.ts","sourceRoot":"","sources":["../src/object-ref.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,KAAK,WAAW,EAChB,sBAAsB,EAGvB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC,eAAO,MAAM,eAAe,eAAuC,CAAC;AAEpE,qBAAa,gBAAgB,CAC3B,KAAK,SAAS,WAAW,EACzB,KAAK,SAAS,MAAM,KAAK,CAAC,wBAAwB,CAAC,GAAG,MAAM,KAAK,CAAC,wBAAwB,CAAC,EAC3F,CAAC,GAAG,EAAE,CACN,SAAQ,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;IAC3B,CAAC,eAAe,CAAC,EAAG,KAAK,CAAC,wBAAwB,CAAC,CAAC,KAAK,CAAC,CAAC;IAE3D,CAAC,sBAAsB,CAAC,EAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAExC,SAAS,EAAE,MAAM,CAAC;gBAEN,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAM3C,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,EACxB,KAAK,EAAE,CAAC,GACP,CAAC,SAAS,CAAC,EAAE,GAAG;SAAG,CAAC,IAAI,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAAE,GAAG,SAAS,CAAC,CAAC,CAAC;IAcrE,QAAQ,CAAC,KAAK,EAAE,OAAO;CAQxB"}
package/dts/types.d.ts CHANGED
@@ -1,12 +1,17 @@
1
1
  import { type ArgumentRef, type FieldKind, type FieldMap, type FieldNullability, type FieldOptionsFromKind, type InferredFieldOptionKeys, type InferredFieldOptionsByKind, type InputFieldMap, type InputFieldsFromShape, type InputShapeFromFields, type InterfaceParam, type InterfaceRef, type InterfaceTypeOptions, type ListResolveValue, type MaybePromise, type Normalize, type ObjectRef, type ObjectTypeOptions, type OutputShape, type OutputType, type SchemaTypes, type ShapeFromTypeParam, type TypeParam, typeBrandKey } from '@pothos/core';
2
- import type { BuildQueryResult, Column, DBQueryConfig, Many, Relation, RelationalSchemaConfig, SQL, TableRelationalConfig, TablesRelationalConfig } from 'drizzle-orm';
2
+ import type { AnyRelations, BuildQueryResult, Column, DBQueryConfig, Many, Relation, Table, TableRelationalConfig } from 'drizzle-orm';
3
3
  import type { FieldNode, GraphQLResolveInfo } from 'graphql';
4
4
  import type { DrizzleObjectFieldBuilder } from './drizzle-field-builder';
5
5
  import type { DrizzleRef } from './interface-ref';
6
6
  import type { IndirectInclude } from './utils/map-query';
7
7
  import type { SelectionMap } from './utils/selections';
8
8
  export type DrizzleClient = {
9
- _: Partial<RelationalSchemaConfig<TablesRelationalConfig>>;
9
+ readonly _: {
10
+ readonly schema: unknown;
11
+ readonly fullSchema: Record<string, unknown>;
12
+ readonly tableNamesMap: Record<string, string>;
13
+ readonly relations: AnyRelations;
14
+ };
10
15
  query: {};
11
16
  };
12
17
  export type DrizzlePluginOptions<Types extends SchemaTypes> = {
@@ -15,10 +20,22 @@ export type DrizzlePluginOptions<Types extends SchemaTypes> = {
15
20
  skipDeferredFragments?: boolean;
16
21
  } & ({
17
22
  client: DrizzleClient;
18
- schema?: Record<string, unknown>;
23
+ getTableConfig: (table: Table) => {
24
+ primaryKeys: {
25
+ readonly columns: Column[];
26
+ }[];
27
+ readonly columns: Column[];
28
+ };
29
+ relations?: Types['DrizzleRelations'];
19
30
  } | {
20
31
  client: (ctx: Types['Context']) => DrizzleClient;
21
- schema: Record<string, unknown>;
32
+ getTableConfig: (table: Table) => {
33
+ primaryKeys: {
34
+ readonly columns: Column[];
35
+ }[];
36
+ readonly columns: Column[];
37
+ };
38
+ relations?: Types['DrizzleRelations'];
22
39
  });
23
40
  export declare const drizzleTableName: unique symbol;
24
41
  type NameOrVariant = {
@@ -28,44 +45,51 @@ type NameOrVariant = {
28
45
  name?: string;
29
46
  variant?: never;
30
47
  };
31
- export type DrizzleObjectOptions<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationSchema'], Shape, Selection, Interfaces extends InterfaceParam<Types>[]> = Omit<ObjectTypeOptions<Types, ObjectRef<Types, Shape>, Shape, Interfaces>, 'fields'> & NameOrVariant & {
48
+ export type DrizzleObjectOptions<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationsConfig'], Shape, Selection, Interfaces extends InterfaceParam<Types>[]> = Omit<ObjectTypeOptions<Types, ObjectRef<Types, Shape>, Shape, Interfaces>, 'fields'> & NameOrVariant & {
32
49
  select?: Selection;
33
- fields?: (t: DrizzleObjectFieldBuilder<Types, Types['DrizzleRelationSchema'][Table], Shape & {
50
+ fields?: (t: DrizzleObjectFieldBuilder<Types, Types['DrizzleRelationsConfig'][Table], Shape & {
34
51
  [drizzleTableName]?: Table;
35
52
  }>) => FieldMap;
36
53
  };
37
- export type DrizzleInterfaceOptions<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationSchema'], Shape, Selection, Interfaces extends InterfaceParam<Types>[]> = Omit<InterfaceTypeOptions<Types, InterfaceRef<Types, Shape>, Shape, Interfaces> & {
54
+ export type DrizzleInterfaceOptions<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationsConfig'], Shape, Selection, Interfaces extends InterfaceParam<Types>[]> = Omit<InterfaceTypeOptions<Types, InterfaceRef<Types, Shape>, Shape, Interfaces> & {
38
55
  name: string;
39
56
  select?: Selection;
40
57
  }, 'fields'> & NameOrVariant & {
41
- fields?: (t: DrizzleObjectFieldBuilder<Types, Types['DrizzleRelationSchema'][Table], Shape & {
58
+ fields?: (t: DrizzleObjectFieldBuilder<Types, Types['DrizzleRelationsConfig'][Table], Shape & {
42
59
  [drizzleTableName]?: Table;
43
60
  }>) => FieldMap;
44
61
  };
45
- export type DrizzleNodeOptions<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationSchema'], Shape, Selection, Interfaces extends InterfaceParam<Types>[], IDColumn extends Column> = NameOrVariant & Omit<PothosSchemaTypes.ObjectTypeOptions<Types, Shape> | PothosSchemaTypes.ObjectTypeWithInterfaceOptions<Types, Shape, Interfaces>, 'fields' | 'isTypeOf'> & {
62
+ export type DrizzleNodeOptions<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationsConfig'], Shape, Selection, Interfaces extends InterfaceParam<Types>[], IDColumns> = NameOrVariant & Omit<PothosSchemaTypes.ObjectTypeOptions<Types, Shape> | PothosSchemaTypes.ObjectTypeWithInterfaceOptions<Types, Shape, Interfaces>, 'fields' | 'isTypeOf'> & {
46
63
  id: Omit<FieldOptionsFromKind<Types, Shape, 'ID', false, {}, 'Object', OutputShape<Types, 'ID'>, MaybePromise<OutputShape<Types, 'ID'>>>, 'args' | 'nullable' | 'type' | InferredFieldOptionKeys> & {
47
- column: IDColumn | IDColumn[] | ((columns: Types['DrizzleRelationSchema'][Table]['columns']) => IDColumn | IDColumn[]);
64
+ column: IDColumns & (Column | Column[] | ((columns: Types['DrizzleRelationsConfig'][Table]['columns']) => Column | Column[]));
48
65
  };
49
66
  name: string;
50
67
  select?: Selection;
51
- fields?: (t: DrizzleObjectFieldBuilder<Types, Types['DrizzleRelationSchema'][Table], Shape & {
68
+ fields?: (t: DrizzleObjectFieldBuilder<Types, Types['DrizzleRelationsConfig'][Table], Shape & {
52
69
  [drizzleTableName]?: Table;
53
70
  }>) => FieldMap;
54
71
  };
55
- export type DrizzleFieldOptions<Types extends SchemaTypes, ParentShape, Table extends keyof Types['DrizzleRelationSchema'], Type extends TypeParam<Types>, Nullable extends FieldNullability<Type>, Args extends InputFieldMap, Kind extends FieldKind, ResolveShape, ResolveReturnShape, Param> = Omit<FieldOptionsFromKind<Types, ParentShape, Type, Nullable, Args, Kind, ResolveShape, ResolveReturnShape>, 'resolve' | 'type'> & {
72
+ export type ShapeFromIdColumns<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationsConfig'], IDColumns> = IDColumns extends Column ? IDColumns['_']['data'] : IDColumns extends Column[] ? {
73
+ [K in IDColumns[number]['_']['name']]: Extract<IDColumns[number], {
74
+ _: {
75
+ name: K;
76
+ };
77
+ }>['_']['data'];
78
+ } : IDColumns extends ((...args: any[]) => infer R extends Column | Column[]) ? ShapeFromIdColumns<Types, Table, R> : never;
79
+ export type DrizzleFieldOptions<Types extends SchemaTypes, ParentShape, Table extends keyof Types['DrizzleRelationsConfig'], Type extends TypeParam<Types>, Nullable extends FieldNullability<Type>, Args extends InputFieldMap, Kind extends FieldKind, ResolveShape, ResolveReturnShape, Param> = Omit<FieldOptionsFromKind<Types, ParentShape, Type, Nullable, Args, Kind, ResolveShape, ResolveReturnShape>, 'resolve' | 'type'> & {
56
80
  type: Param;
57
81
  resolve: (query: <T extends QueryForDrizzleField<Types, Param, Table>>(selection?: T) => T, parent: ParentShape, args: InputShapeFromFields<Args>, ctx: Types['Context'], info: GraphQLResolveInfo) => MaybePromise<ShapeFromTypeParam<Types, Type, Nullable>>;
58
82
  };
59
- export type DrizzleFieldWithInputOptions<Types extends SchemaTypes, ParentShape, Table extends keyof Types['DrizzleRelationSchema'], Type extends TypeParam<Types>, Nullable extends FieldNullability<Type>, Args extends InputFieldMap, Kind extends FieldKind, ResolveShape, ResolveReturnShape, Param, InputName extends string, Fields extends InputFieldMap, ArgRequired extends boolean> = Omit<DrizzleFieldOptions<Types, ParentShape, Table, Type, Nullable, Args & {
83
+ export type DrizzleFieldWithInputOptions<Types extends SchemaTypes, ParentShape, Table extends keyof Types['DrizzleRelationsConfig'], Type extends TypeParam<Types>, Nullable extends FieldNullability<Type>, Args extends InputFieldMap, Kind extends FieldKind, ResolveShape, ResolveReturnShape, Param, InputName extends string, Fields extends InputFieldMap, ArgRequired extends boolean> = Omit<DrizzleFieldOptions<Types, ParentShape, Table, Type, Nullable, Args & {
60
84
  [K in InputName]: ArgumentRef<Types, InputShapeFromFields<Fields> | (true extends ArgRequired ? never : null | undefined)>;
61
85
  }, Kind, ResolveShape, ResolveReturnShape, Param>, 'args'> & PothosSchemaTypes.FieldWithInputBaseOptions<Types, Args, Fields, InputName, ArgRequired>;
62
- export type DrizzleObjectFieldOptions<Types extends SchemaTypes, ParentShape, Type extends TypeParam<Types>, Nullable extends FieldNullability<Type>, Args extends InputFieldMap, Select, ResolveReturnShape, ShapeWithSelection = Normalize<Omit<unknown extends Select ? ParentShape : BuildQueryResult<Types['DrizzleRelationSchema'], ExtractTable<Types, ParentShape>, Record<string, unknown> & (Select extends (...args: any[]) => infer R ? R : Select)> & ParentShape, typeof drizzleTableName>>> = PothosSchemaTypes.ObjectFieldOptions<Types, ShapeWithSelection, Type, Nullable, Args, ResolveReturnShape> & InferredFieldOptionsByKind<Types, Types['InferredFieldOptionsKind'], ShapeWithSelection, Type, Nullable, Args, ResolveReturnShape> & {
63
- select?: Select & (DBQueryConfig<'one', false, Types['DrizzleRelationSchema'], ExtractTable<Types, ParentShape>> | ((args: InputShapeFromFields<Args>, ctx: Types['Context'], nestedSelection: <Selection extends boolean | {}>(selection?: Selection, path?: string[]) => Selection) => DBQueryConfig<'one', false, Types['DrizzleRelationSchema'], ExtractTable<Types, ParentShape>>));
86
+ export type DrizzleObjectFieldOptions<Types extends SchemaTypes, ParentShape, Type extends TypeParam<Types>, Nullable extends FieldNullability<Type>, Args extends InputFieldMap, Select, ResolveReturnShape, ShapeWithSelection = Normalize<Omit<unknown extends Select ? ParentShape : BuildQueryResult<Types['DrizzleRelationsConfig'], ExtractTable<Types, ParentShape>, Record<string, unknown> & (Select extends (...args: any[]) => infer R ? R : Select)> & ParentShape, typeof drizzleTableName>>> = PothosSchemaTypes.ObjectFieldOptions<Types, ShapeWithSelection, Type, Nullable, Args, ResolveReturnShape> & InferredFieldOptionsByKind<Types, Types['InferredFieldOptionsKind'], ShapeWithSelection, Type, Nullable, Args, ResolveReturnShape> & {
87
+ select?: Select & (DBQueryConfig<'one', Types['DrizzleRelationsConfig'], ExtractTable<Types, ParentShape>> | ((args: InputShapeFromFields<Args>, ctx: Types['Context'], nestedSelection: <Selection extends boolean | {}>(selection?: Selection, path?: string[]) => Selection) => DBQueryConfig<'one', Types['DrizzleRelationsConfig'], ExtractTable<Types, ParentShape>>));
64
88
  };
65
- export type DrizzleFieldSelection = DBQueryConfig<'one', false> | ((args: {}, ctx: object, mergeNestedSelection: (selection: SelectionMap | boolean | ((args: object, context: object) => DBQueryConfig<'one', false>), path?: IndirectInclude | string[], type?: string) => DBQueryConfig<'one', false> | boolean, resolveSelection: (path: string[]) => FieldNode | null) => SelectionMap);
89
+ export type DrizzleFieldSelection = DBQueryConfig<'one'> | ((args: {}, ctx: object, mergeNestedSelection: (selection: SelectionMap | boolean | ((args: object, context: object) => DBQueryConfig<'one'>), path?: IndirectInclude | string[], type?: string) => DBQueryConfig<'one'> | boolean, resolveSelection: (path: string[]) => FieldNode | null) => SelectionMap);
66
90
  export type ExtractTable<Types extends SchemaTypes, Shape> = Shape extends {
67
- [drizzleTableName]?: keyof Types['DrizzleRelationSchema'];
68
- } ? Types['DrizzleRelationSchema'][NonNullable<Shape[typeof drizzleTableName]>] : never;
91
+ [drizzleTableName]?: keyof Types['DrizzleRelationsConfig'];
92
+ } ? Types['DrizzleRelationsConfig'][NonNullable<Shape[typeof drizzleTableName]>] : never;
69
93
  export type RelatedFieldOptions<Types extends SchemaTypes, Table extends TableRelationalConfig, Field extends keyof Table['relations'], Nullable extends boolean, Args extends InputFieldMap, ResolveReturnShape, Shape> = Omit<DrizzleObjectFieldOptions<Types, Shape, RefForRelation<Types, Table['relations'][Field]>, Nullable, Args, {
70
94
  columns: {};
71
95
  with: {
@@ -76,53 +100,49 @@ export type RelatedFieldOptions<Types extends SchemaTypes, Table extends TableRe
76
100
  type?: ObjectRef<Types, TypesForRelation<Types, Table['relations'][Field]>>;
77
101
  query?: QueryForField<Types, Args, Table['relations'][Field]>;
78
102
  };
79
- export type VariantFieldOptions<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationSchema'], Variant extends DrizzleRef<any, Table> | Table, Args extends InputFieldMap, isNull, Shape, ResolveShape, ResolveReturnShape> = Omit<FieldOptionsFromKind<Types, Shape, Variant extends DrizzleRef<any> ? Variant : DrizzleRef<any, Table>, unknown extends isNull ? false : true, Args, 'DrizzleObject', ResolveShape, ResolveReturnShape>, InferredFieldOptionKeys | 'type'> & {
80
- isNull?: isNull & ((parent: Normalize<Omit<unknown extends ResolveShape ? Shape : BuildQueryResult<Types['DrizzleRelationSchema'], ExtractTable<Types, Shape>, Record<string, unknown> & (ResolveShape extends (...args: any[]) => infer R ? R : ResolveShape)> & Shape, typeof drizzleTableName>>, args: InputShapeFromFields<Args>, context: Types['Context'], info: GraphQLResolveInfo) => MaybePromise<boolean>);
103
+ export type VariantFieldOptions<Types extends SchemaTypes, Table extends keyof Types['DrizzleRelationsConfig'], Variant extends DrizzleRef<any, Table> | Table, Args extends InputFieldMap, isNull, Shape, ResolveShape, ResolveReturnShape> = Omit<FieldOptionsFromKind<Types, Shape, Variant extends DrizzleRef<any> ? Variant : DrizzleRef<any, Table>, unknown extends isNull ? false : true, Args, 'DrizzleObject', ResolveShape, ResolveReturnShape>, InferredFieldOptionKeys | 'type'> & {
104
+ isNull?: isNull & ((parent: Normalize<Omit<unknown extends ResolveShape ? Shape : BuildQueryResult<Types['DrizzleRelationsConfig'], ExtractTable<Types, Shape>, Record<string, unknown> & (ResolveShape extends (...args: any[]) => infer R ? R : ResolveShape)> & Shape, typeof drizzleTableName>>, args: InputShapeFromFields<Args>, context: Types['Context'], info: GraphQLResolveInfo) => MaybePromise<boolean>);
81
105
  };
82
106
  export type RefForRelation<Types extends SchemaTypes, Rel extends Relation> = Rel extends {
83
107
  $relationBrand: 'One';
84
108
  } ? ObjectRef<Types, TypesForRelation<Types, Rel>> : [ObjectRef<Types, TypesForRelation<Types, Rel>>];
85
- export type TypesForRelation<Types extends SchemaTypes, Rel extends Relation> = BuildQueryResult<Types['DrizzleRelationSchema'], Types['DrizzleRelationSchemaByDbName'][Rel['referencedTableName']], true>;
109
+ export type TypesForRelation<Types extends SchemaTypes, Rel extends Relation> = BuildQueryResult<Types['DrizzleRelationsConfig'], Types['DrizzleRelationsConfig'][Rel['targetTable']['_']['name']], true>;
86
110
  export type QueryForField<Types extends SchemaTypes, Args extends InputFieldMap, Rel extends Relation> = (Rel extends {
87
111
  $relationBrand: 'One';
88
- } ? Omit<DBQueryConfig<'one', false, Types['DrizzleRelationSchema'], Types['DrizzleRelationSchemaByDbName'][Rel['referencedTableName']]>, 'columns' | 'extra' | 'with'> : Omit<DBQueryConfig<'many', false, Types['DrizzleRelationSchema'], Types['DrizzleRelationSchemaByDbName'][Rel['referencedTableName']]>, 'columns' | 'extra' | 'with'>) extends infer QueryConfig ? QueryConfig | ((args: InputShapeFromFields<Args>, context: Types['Context']) => QueryConfig) : never;
89
- export type QueryForDrizzleField<Types extends SchemaTypes, Param, Table extends keyof Types['DrizzleRelationSchema']> = Omit<DBQueryConfig<'many', true, Types['DrizzleRelationSchema'], Types['DrizzleRelationSchema'][Table]>, Param extends [unknown] ? never : 'limit'>;
90
- export type QueryForRelatedConnection<Types extends SchemaTypes, Table extends TableRelationalConfig, Args> = Omit<DBQueryConfig<'many', false, Types['DrizzleRelationSchema'], Table>, 'orderBy' | 'limit' | 'offset' | 'columns' | 'extra' | 'with'> & {
91
- orderBy?: ConnectionOrderBy | ((columns: Table['columns']) => ConnectionOrderBy);
112
+ } ? Omit<DBQueryConfig<'one', Types['DrizzleRelationsConfig'], Types['DrizzleRelationsConfig'][Rel['targetTable']['_']['name']]>, 'columns' | 'extra' | 'with'> : Omit<DBQueryConfig<'many', Types['DrizzleRelationsConfig'], Types['DrizzleRelationsConfig'][Rel['targetTable']['_']['name']]>, 'columns' | 'extra' | 'with'>) extends infer QueryConfig ? QueryConfig | ((args: InputShapeFromFields<Args>, context: Types['Context']) => QueryConfig) : never;
113
+ export type QueryForDrizzleField<Types extends SchemaTypes, Param, Table extends keyof Types['DrizzleRelationsConfig']> = Omit<DBQueryConfig<'many', Types['DrizzleRelationsConfig'], Types['DrizzleRelationsConfig'][Table], true>, Param extends [unknown] ? never : 'limit'>;
114
+ export type QueryForRelatedConnection<Types extends SchemaTypes, Table extends TableRelationalConfig, Args> = Omit<DBQueryConfig<'many', Types['DrizzleRelationsConfig'], Table>, 'limit' | 'offset' | 'columns' | 'extra' | 'with' | 'orderBy'> & {
115
+ orderBy?: ConnectionOrderBy<Table> | ((columns: Table['columns']) => ConnectionOrderBy<Table>);
92
116
  } extends infer QueryConfig ? QueryConfig | ((args: Args, context: Types['Context']) => QueryConfig) : never;
93
- export type QueryForDrizzleConnection<Types extends SchemaTypes, Table extends TableRelationalConfig> = Omit<DBQueryConfig<'many', false, Types['DrizzleRelationSchema'], Table>, 'orderBy' | 'limit' | 'offset'> & {
94
- orderBy?: ConnectionOrderBy | ((columns: Table['columns']) => ConnectionOrderBy);
117
+ export type QueryForDrizzleConnection<Types extends SchemaTypes, Table extends TableRelationalConfig> = Omit<DBQueryConfig<'many', Types['DrizzleRelationsConfig'], Table>, 'limit' | 'offset' | 'orderBy'> & {
118
+ orderBy?: ConnectionOrderBy<Table> | ((columns: Table['columns']) => ConnectionOrderBy<Table>);
95
119
  };
96
120
  export type ListRelation<T extends TableRelationalConfig> = {
97
- [K in keyof T['relations']]: T['relations'][K] extends Many<string> ? K : never;
121
+ [K in keyof T['relations']]: T['relations'][K] extends Many<string, string> ? K : never;
98
122
  }[keyof T['relations']];
99
123
  export type DrizzleConnectionFieldOptions<Types extends SchemaTypes, ParentShape, Type extends // biome-ignore lint/suspicious/noExplicitAny: <explanation>
100
- DrizzleRef<any, keyof Types['DrizzleRelationSchema']> | keyof Types['DrizzleRelationSchema'], TableConfig extends TableRelationalConfig, Param extends OutputType<Types>, Nullable extends boolean, Args extends InputFieldMap, ResolveReturnShape, Kind extends FieldKind> = Omit<FieldOptionsFromKind<Types, ParentShape, Param, Nullable, InputFieldsFromShape<Types, PothosSchemaTypes.DefaultConnectionArguments, 'Arg'> & (InputFieldMap extends Args ? {} : Args), Kind, ParentShape, ResolveReturnShape>, 'args' | 'resolve' | 'type'> & Omit<PothosSchemaTypes.ConnectionFieldOptions<Types, ParentShape, Param, Nullable, false, false, Args, ResolveReturnShape>, 'resolve' | 'type'> & (InputShapeFromFields<Args> & PothosSchemaTypes.DefaultConnectionArguments extends infer ConnectionArgs ? {
124
+ DrizzleRef<any, keyof Types['DrizzleRelationsConfig']> | keyof Types['DrizzleRelationsConfig'], TableConfig extends TableRelationalConfig, Param extends OutputType<Types>, Nullable extends boolean, Args extends InputFieldMap, ResolveReturnShape, Kind extends FieldKind> = Omit<FieldOptionsFromKind<Types, ParentShape, Param, Nullable, InputFieldsFromShape<Types, PothosSchemaTypes.DefaultConnectionArguments, 'Arg'> & (InputFieldMap extends Args ? {} : Args), Kind, ParentShape, ResolveReturnShape>, 'args' | 'resolve' | 'type'> & Omit<PothosSchemaTypes.ConnectionFieldOptions<Types, ParentShape, Param, Nullable, false, false, Args, ResolveReturnShape>, 'resolve' | 'type'> & (InputShapeFromFields<Args> & PothosSchemaTypes.DefaultConnectionArguments extends infer ConnectionArgs ? {
101
125
  type: Type;
102
126
  defaultSize?: number | ((args: ConnectionArgs, ctx: Types['Context']) => number);
103
127
  maxSize?: number | ((args: ConnectionArgs, ctx: Types['Context']) => number);
104
128
  resolve: (query: <T extends QueryForRelatedConnection<Types, TableConfig, ConnectionArgs>>(selection?: T) => Omit<T, 'orderBy'> & {
105
- orderBy: SQL;
129
+ orderBy: {
130
+ [K in keyof TableConfig['columns']]?: 'asc' | 'desc' | undefined;
131
+ };
106
132
  }, parent: ParentShape, args: ConnectionArgs, context: Types['Context'], info: GraphQLResolveInfo) => ShapeFromTypeParam<Types, [Param], Nullable> extends infer Shape ? [Shape] extends [[readonly (infer Item)[] | null | undefined]] ? ListResolveValue<Shape, Item, ResolveReturnShape> : MaybePromise<Shape> : never;
107
133
  } : never);
108
- export type RelatedConnectionOptions<Types extends SchemaTypes, Shape, Table extends TableRelationalConfig, Field extends keyof Table['relations'], Nullable extends boolean, Args extends InputFieldMap, NodeTable extends TableRelationalConfig = Types['DrizzleRelationSchemaByDbName'][Table['relations'][Field]['referencedTableName']]> = Omit<PothosSchemaTypes.ObjectFieldOptions<Types, Shape, ObjectRef<Types, unknown>, Nullable, InputFieldsFromShape<Types, PothosSchemaTypes.DefaultConnectionArguments, 'InputObject'> & (InputFieldMap extends Args ? {} : Args), unknown>, 'args' | 'resolve' | 'type'> & Omit<PothosSchemaTypes.ConnectionFieldOptions<Types, Shape, ObjectRef<Types, unknown>, false, false, Nullable, Args, unknown>, 'resolve' | 'type'> & (InputShapeFromFields<Args> & PothosSchemaTypes.DefaultConnectionArguments extends infer ConnectionArgs ? {
134
+ export type RelatedConnectionOptions<Types extends SchemaTypes, Shape, Table extends TableRelationalConfig, Field extends keyof Table['relations'], Nullable extends boolean, Args extends InputFieldMap, NodeTable extends TableRelationalConfig = Types['DrizzleRelationsConfig'][Table['relations'][Field]['targetTable']['_']['name']]> = Omit<PothosSchemaTypes.ObjectFieldOptions<Types, Shape, ObjectRef<Types, unknown>, Nullable, InputFieldsFromShape<Types, PothosSchemaTypes.DefaultConnectionArguments, 'InputObject'> & (InputFieldMap extends Args ? {} : Args), unknown>, 'args' | 'resolve' | 'type'> & Omit<PothosSchemaTypes.ConnectionFieldOptions<Types, Shape, ObjectRef<Types, unknown>, false, false, Nullable, Args, unknown>, 'resolve' | 'type'> & (InputShapeFromFields<Args> & PothosSchemaTypes.DefaultConnectionArguments extends infer ConnectionArgs ? {
109
135
  resolve?: (parent: Shape, args: ConnectionArgs, context: Types['Context'], info: GraphQLResolveInfo) => MaybePromise<ShapeFromTypeParam<Types, [
110
136
  ObjectRef<Types, TypesForRelation<Types, Table['relations'][Field]>>
111
137
  ], Nullable>>;
112
138
  query?: QueryForRelatedConnection<Types, NodeTable, ConnectionArgs>;
113
- type?: DrizzleRef<any, Table['relations'][Field]['referencedTableName']>;
139
+ type?: DrizzleRef<any, Table['relations'][Field]['targetTable']['_']['name']>;
114
140
  defaultSize?: number | ((args: ConnectionArgs, ctx: Types['Context']) => number);
115
141
  maxSize?: number | ((args: ConnectionArgs, ctx: Types['Context']) => number);
116
142
  } : never);
117
- export type ConnectionOrderBy = Column | {
118
- asc: Column;
119
- } | {
120
- desc: Column;
121
- } | (Column | {
122
- asc: Column;
123
- } | {
124
- desc: Column;
125
- })[];
143
+ export type ConnectionOrderBy<T extends TableRelationalConfig> = Column | Column[] | {
144
+ [K in keyof T['columns']]?: 'asc' | 'desc' | undefined;
145
+ };
126
146
  export type ShapeFromConnection<T> = T extends {
127
147
  shape: unknown;
128
148
  } ? T['shape'] : never;
@@ -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,9 +1,10 @@
1
1
  import { type SchemaTypes } from '@pothos/core';
2
- import { type Column, type RelationalSchemaConfig, type TableRelationalConfig, type TablesRelationalConfig } from 'drizzle-orm';
2
+ import { type AnyRelations, type Column } from 'drizzle-orm';
3
3
  import type { DrizzleClient } from '../types';
4
- export interface PothosDrizzleSchemaConfig extends RelationalSchemaConfig<TablesRelationalConfig> {
4
+ export interface PothosDrizzleSchemaConfig {
5
5
  skipDeferredFragments: boolean;
6
- dbToSchema: Record<string, TableRelationalConfig>;
6
+ relations: AnyRelations;
7
+ getPrimaryKey: (tableName: string) => Column[];
7
8
  columnToTsName: (column: Column) => string;
8
9
  }
9
10
  export declare const drizzleClientCache: import("@pothos/core").ContextCache<import("@pothos/core").ContextCache<DrizzleClient, object, []>, PothosSchemaTypes.SchemaBuilder<SchemaTypes>, []>;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAsB,MAAM,cAAc,CAAC;AACpE,OAAO,EACL,KAAK,MAAM,EACX,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAI5B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,yBAA0B,SAAQ,sBAAsB,CAAC,sBAAsB,CAAC;IAC/F,qBAAqB,EAAE,OAAO,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAClD,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5C;AA4DD,eAAO,MAAM,kBAAkB,uJAc9B,CAAC;AAEF,wBAAgB,eAAe,CAAC,KAAK,SAAS,WAAW,EACvD,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,6BAGhD;AAED,wBAAgB,SAAS,CAAC,KAAK,SAAS,WAAW,EACjD,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,OAAO,EAAE,MAAM,iBAGhB"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAsB,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,MAAM,EAA4B,MAAM,aAAa,CAAC;AACvF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,yBAAyB;IACxC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,SAAS,EAAE,YAAY,CAAC;IACxB,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;IAC/C,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5C;AA4ED,eAAO,MAAM,kBAAkB,uJAc9B,CAAC;AAEF,wBAAgB,eAAe,CAAC,KAAK,SAAS,WAAW,EACvD,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,6BAGhD;AAED,wBAAgB,SAAS,CAAC,KAAK,SAAS,WAAW,EACjD,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,OAAO,EAAE,MAAM,iBAGhB"}
@@ -1,5 +1,5 @@
1
1
  import { type MaybePromise, type SchemaTypes } from '@pothos/core';
2
- import { type Column, type SQL, type TableRelationalConfig } from 'drizzle-orm';
2
+ import type { Column, SQL, TableConfig, TableRelationalConfig } from 'drizzle-orm';
3
3
  import type { GraphQLResolveInfo } from 'graphql';
4
4
  import type { ConnectionOrderBy, QueryForDrizzleConnection } from '../types';
5
5
  import type { PothosDrizzleSchemaConfig } from './config';
@@ -21,17 +21,22 @@ export interface DrizzleCursorConnectionQueryOptions {
21
21
  ctx: {};
22
22
  defaultSize?: number | ((args: {}, ctx: {}) => number);
23
23
  maxSize?: number | ((args: {}, ctx: {}) => number);
24
- orderBy: ConnectionOrderBy;
24
+ orderBy: ConnectionOrderBy<TableRelationalConfig>;
25
25
  where?: SQL;
26
+ config: PothosDrizzleSchemaConfig;
27
+ table: TableRelationalConfig | TableConfig;
26
28
  }
27
- export declare function drizzleCursorConnectionQuery({ args, ctx, maxSize, defaultSize, orderBy, where, }: DrizzleCursorConnectionQueryOptions): {
29
+ export declare function drizzleCursorConnectionQuery({ args, ctx, maxSize, defaultSize, orderBy, where, config, table, }: DrizzleCursorConnectionQueryOptions): {
28
30
  cursorColumns: Column<import("drizzle-orm").ColumnBaseConfig<import("drizzle-orm").ColumnDataType, string>, object, object>[];
29
31
  columns: Record<string, boolean>;
30
- orderBy: SQL<unknown>[];
32
+ orderBy: {
33
+ [k: string]: "asc" | "desc";
34
+ };
31
35
  limit: number;
32
- where: SQL<unknown> | undefined;
36
+ where: {};
33
37
  };
34
- export declare function wrapConnectionResult<T extends {}>(results: readonly T[], args: PothosSchemaTypes.DefaultConnectionArguments, limit: number, cursor: (node: T) => string, resolveNode?: (node: Record<string, unknown>) => unknown): {
38
+ export declare function wrapConnectionResult<T extends {}>(results: readonly T[], args: PothosSchemaTypes.DefaultConnectionArguments, limit: number, cursor: (node: T) => string, resolveNode?: (node: Record<string, unknown>) => unknown, parent?: unknown): {
39
+ parent: unknown;
35
40
  args: PothosSchemaTypes.DefaultConnectionArguments;
36
41
  edges: ({
37
42
  cursor: string;
@@ -44,7 +49,8 @@ export declare function wrapConnectionResult<T extends {}>(results: readonly T[]
44
49
  hasNextPage: boolean;
45
50
  };
46
51
  };
47
- export declare function resolveDrizzleCursorConnection<T extends {}>(table: TableRelationalConfig, info: GraphQLResolveInfo, typeName: string, config: PothosDrizzleSchemaConfig, options: Omit<DrizzleCursorConnectionQueryOptions, 'orderBy'>, resolve: (queryFn: (query: QueryForDrizzleConnection<SchemaTypes, TableRelationalConfig>) => SelectionMap) => MaybePromise<readonly T[]>): Promise<{
52
+ export declare function resolveDrizzleCursorConnection<T extends {}>(tableName: string, info: GraphQLResolveInfo, typeName: string, config: PothosDrizzleSchemaConfig, options: Omit<DrizzleCursorConnectionQueryOptions, 'orderBy' | 'config' | 'table'>, resolve: (queryFn: (query: QueryForDrizzleConnection<SchemaTypes, TableRelationalConfig>) => SelectionMap) => MaybePromise<readonly T[]>): Promise<{
53
+ parent: unknown;
48
54
  args: PothosSchemaTypes.DefaultConnectionArguments;
49
55
  edges: ({
50
56
  cursor: string;
@@ -1 +1 @@
1
- {"version":3,"file":"cursors.d.ts","sourceRoot":"","sources":["../../src/utils/cursors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cursors.d.ts","sourceRoot":"","sources":["../../src/utils/cursors.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1 @@
1
- import { type Column, type SQL, type TableRelationalConfig } from 'drizzle-orm';
2
- export declare const remapFromGraphQLCore: (value: any, column: Column, columnName: string) => any;
3
- export declare const remapFromGraphQLSingleInput: (queryInput: Record<string, any>, table: TableRelationalConfig) => Record<string, any>;
4
- export declare const remapFromGraphQLArrayInput: (queryInput: Record<string, any>[], table: TableRelationalConfig) => Record<string, any>[];
5
- export type OrderByArgs<TTable extends TableRelationalConfig> = {
6
- [Key in keyof TTable['columns']]?: {
7
- direction: 'asc' | 'desc';
8
- priority: number;
9
- };
10
- };
11
- export declare const extractOrderBy: <TTable extends TableRelationalConfig, TArgs extends OrderByArgs<any> = OrderByArgs<TTable>>(table: TTable, orderArgs: TArgs) => SQL[];
12
- export declare const extractFiltersColumn: <TColumn extends Column>(column: TColumn, columnName: string, operators: Record<string, unknown> & {
13
- OR?: Record<string, unknown>[];
14
- }) => SQL | undefined;
15
- export declare const extractFilters: <TTable extends TableRelationalConfig>(table: TTable, tableName: string, filters: Record<string, unknown> & {
16
- OR?: Record<string, unknown>[];
17
- }) => SQL | undefined;
18
1
  //# sourceMappingURL=drizzle-graphql.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"drizzle-graphql.d.ts","sourceRoot":"","sources":["../../src/utils/drizzle-graphql.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EACX,KAAK,GAAG,EAER,KAAK,qBAAqB,EAI3B,MAAM,aAAa,CAAC;AAIrB,eAAO,MAAM,oBAAoB,UAAW,GAAG,UAAU,MAAM,cAAc,MAAM,QA2DlF,CAAC;AAEF,eAAO,MAAM,2BAA2B,eAE1B,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,SACxB,qBAAqB,wBAqB7B,CAAC;AAEF,eAAO,MAAM,0BAA0B,eAEzB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,SAC1B,qBAAqB,0BAO7B,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,MAAM,SAAS,qBAAqB,IAAI;KAC7D,GAAG,IAAI,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;QACjC,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC;KAClB;CACF,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,MAAM,SAAS,qBAAqB,EAEpC,KAAK,SAAS,WAAW,CAAC,GAAG,CAAC,+BAEvB,MAAM,aACF,KAAK,KACf,GAAG,EAeL,CAAC;AAIF,eAAO,MAAM,oBAAoB,GAAI,OAAO,SAAS,MAAM,UACjD,OAAO,cACH,MAAM,aACP,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;CAAE,KACtE,GAAG,GAAG,SA4ER,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,MAAM,SAAS,qBAAqB,SAC1D,MAAM,aACF,MAAM,WACR,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IACjC,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;CAChC,KACA,GAAG,GAAG,SAyCR,CAAC"}
1
+ {"version":3,"file":"drizzle-graphql.d.ts","sourceRoot":"","sources":["../../src/utils/drizzle-graphql.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"map-query.d.ts","sourceRoot":"","sources":["../../src/utils/map-query.ts"],"names":[],"mappings":"AAEA,OAAO,EAOL,KAAK,gBAAgB,EAErB,KAAK,kBAAkB,EASxB,MAAM,SAAS,CAAC;AAEjB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAE1D,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,cAAc,EAKpB,MAAM,cAAc,CAAC;AAGtB,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzC,KAAK,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,EAAE,CAAC;CAC7C;AAsXD,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,YAAY;IAC1D,MAAM,EAAE,yBAAyB,CAAC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,kBAAkB,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,aAAa,CAAC,CAAC,SAAS,YAAY,EAAE,EACpD,cAAc,EACd,GAAG,OAAO,EACX,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,CAQ7B;AAED,wBAAgB,aAAa,CAAC,CAAC,SAAS,YAAY,EAAE,EACpD,MAAM,EACN,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,IAAS,EACT,KAAU,GACX,EAAE,oBAAoB,CAAC,CAAC,CAAC,kBAwDzB;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,yBAAyB,EACjC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,kBAAkB,EACxB,QAAQ,CAAC,EAAE,MAAM,kBAelB;AA+BD,wBAAgB,eAAe,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,oBAU/E;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,gBAAgB,EACtB,YAAY,CAAC,EAAE,gBAAgB,GAC9B,eAAe,CA+BjB"}
1
+ {"version":3,"file":"map-query.d.ts","sourceRoot":"","sources":["../../src/utils/map-query.ts"],"names":[],"mappings":"AAEA,OAAO,EAOL,KAAK,gBAAgB,EAErB,KAAK,kBAAkB,EASxB,MAAM,SAAS,CAAC;AAEjB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAE1D,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,cAAc,EAKpB,MAAM,cAAc,CAAC;AAGtB,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzC,KAAK,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,EAAE,CAAC;CAC7C;AAsXD,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,YAAY;IAC1D,MAAM,EAAE,yBAAyB,CAAC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,kBAAkB,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,aAAa,CAAC,CAAC,SAAS,YAAY,EAAE,EACpD,cAAc,EACd,GAAG,OAAO,EACX,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,CAQ7B;AAED,wBAAgB,aAAa,CAAC,CAAC,SAAS,YAAY,EAAE,EACpD,MAAM,EACN,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,IAAS,EACT,KAAU,GACX,EAAE,oBAAoB,CAAC,CAAC,CAAC,kBAoEzB;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,yBAAyB,EACjC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,kBAAkB,EACxB,QAAQ,CAAC,EAAE,MAAM,kBAelB;AA+BD,wBAAgB,eAAe,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,oBAU/E;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,gBAAgB,EACtB,YAAY,CAAC,EAAE,gBAAgB,GAC9B,eAAe,CA+BjB"}
@@ -1,4 +1,4 @@
1
- import { type DBQueryConfig, type SQL, type TableRelationalConfig } from 'drizzle-orm';
1
+ import { type DBQueryConfig, type TableRelationalConfig } from 'drizzle-orm';
2
2
  import type { PothosDrizzleSchemaConfig } from './config';
3
3
  import type { LoaderMappings } from './loader-map';
4
4
  export interface SelectionState {
@@ -7,17 +7,17 @@ export interface SelectionState {
7
7
  allColumns: boolean;
8
8
  columns: Set<string>;
9
9
  with: Map<string, SelectionState>;
10
- extras: Map<string, SQL.Aliased>;
10
+ extras: Map<string, NonNullable<SelectionMap['extras']>[string]>;
11
11
  mappings: LoaderMappings;
12
12
  parent?: SelectionState;
13
13
  depth: number;
14
14
  skipDeferredFragments: boolean;
15
15
  }
16
- export type SelectionMap = DBQueryConfig<'one', false>;
16
+ export type SelectionMap = DBQueryConfig<'one'>;
17
17
  export declare function selectionCompatible(state: SelectionState, selectionMap: SelectionMap | boolean, ignoreQuery?: boolean): boolean;
18
18
  export declare function stateCompatible(state: SelectionState, newState: SelectionState, ignoreQuery?: boolean): boolean;
19
19
  export declare function mergeState(state: SelectionState, newState: SelectionState): void;
20
20
  export declare function createState(table: TableRelationalConfig, skipDeferredFragments: boolean, parent?: SelectionState): SelectionState;
21
- export declare function mergeSelection(config: PothosDrizzleSchemaConfig, state: SelectionState, { with: withSelection, extras, columns, ...query }: SelectionMap): void;
22
- export declare function selectionToQuery(state: SelectionState): SelectionMap;
21
+ export declare function mergeSelection(config: PothosDrizzleSchemaConfig, state: SelectionState, selection: SelectionMap | boolean): void;
22
+ export declare function selectionToQuery(config: PothosDrizzleSchemaConfig, state: SelectionState): SelectionMap;
23
23
  //# sourceMappingURL=selections.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"selections.d.ts","sourceRoot":"","sources":["../../src/utils/selections.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,GAAG,EACR,KAAK,qBAAqB,EAE3B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAE1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,qBAAqB,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAClC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IACjC,QAAQ,EAAE,cAAc,CAAC;IACzB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAEvD,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,cAAc,EACrB,YAAY,EAAE,YAAY,GAAG,OAAO,EACpC,WAAW,UAAQ,GAClB,OAAO,CAmCT;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,cAAc,EACxB,WAAW,UAAQ,GAClB,OAAO,CAQT;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,cAAc,QAoBzE;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,qBAAqB,EAC5B,qBAAqB,EAAE,OAAO,EAC9B,MAAM,CAAC,EAAE,cAAc,GACtB,cAAc,CAahB;AAED,wBAAgB,cAAc,CAC5B,MAAM,EAAE,yBAAyB,EACjC,KAAK,EAAE,cAAc,EACrB,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,EAAE,YAAY,QAsDjE;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,cAAc,GAAG,YAAY,CA8BpE"}
1
+ {"version":3,"file":"selections.d.ts","sourceRoot":"","sources":["../../src/utils/selections.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,aAAa,EAIlB,KAAK,qBAAqB,EAE3B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAE1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,qBAAqB,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAClC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACjE,QAAQ,EAAE,cAAc,CAAC;IACzB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;AAEhD,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,cAAc,EACrB,YAAY,EAAE,YAAY,GAAG,OAAO,EACpC,WAAW,UAAQ,GAClB,OAAO,CA+BT;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,cAAc,EACxB,WAAW,UAAQ,GAClB,OAAO,CAQT;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,cAAc,QAoBzE;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,qBAAqB,EAC5B,qBAAqB,EAAE,OAAO,EAC9B,MAAM,CAAC,EAAE,cAAc,GACtB,cAAc,CAahB;AAED,wBAAgB,cAAc,CAC5B,MAAM,EAAE,yBAAyB,EACjC,KAAK,EAAE,cAAc,EACrB,SAAS,EAAE,YAAY,GAAG,OAAO,QAyDlC;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,yBAAyB,EACjC,KAAK,EAAE,cAAc,GACpB,YAAY,CAgCd"}
@@ -0,0 +1,34 @@
1
+ import type { InputFieldMap, InputShapeFromFields, SchemaTypes } from '@pothos/core';
2
+ import type { BuildQueryResult, DBQueryConfig, TableRelationalConfig } from 'drizzle-orm';
3
+ import type { DrizzleRef } from './interface-ref.js';
4
+ import type { QueryForDrizzleConnection } from './types.js';
5
+ export declare function drizzleConnectionHelpers<Types extends SchemaTypes, Type extends DrizzleRef<Types> | keyof Types["DrizzleRelationsConfig"], Selection extends DBQueryConfig<"one", Types["DrizzleRelationsConfig"], Table> | true, Table extends TableRelationalConfig = Types["DrizzleRelationsConfig"][Type extends DrizzleRef<Types, infer T> ? T : Type], Shape = Type extends DrizzleRef<any, keyof Types["DrizzleRelationsConfig"], infer S> ? S : BuildQueryResult<Types["DrizzleRelationsConfig"], Table, true>, EdgeShape = true extends Selection ? Shape : BuildQueryResult<Types["DrizzleRelationsConfig"], Table, Selection>, NodeShape = EdgeShape, ExtraArgs extends InputFieldMap = {}>(builder: PothosSchemaTypes.SchemaBuilder<Types>, refOrType: Type, { select, resolveNode, query, args: createArgs, maxSize, defaultSize, }: {
6
+ args?: (t: PothosSchemaTypes.InputFieldBuilder<Types, "Arg">) => ExtraArgs;
7
+ select?: (nestedSelection: <T extends true | {}>(selection?: T) => T, args: InputShapeFromFields<ExtraArgs> & PothosSchemaTypes.DefaultConnectionArguments, ctx: Types["Context"]) => Selection;
8
+ query?: QueryForDrizzleConnection<Types, Table> extends infer QueryConfig ? QueryConfig | ((args: InputShapeFromFields<ExtraArgs>, context: Types["Context"]) => QueryConfig) : never;
9
+ defaultSize?: number | ((args: InputShapeFromFields<ExtraArgs> & PothosSchemaTypes.DefaultConnectionArguments, ctx: Types["Context"]) => number);
10
+ maxSize?: number | ((args: PothosSchemaTypes.DefaultConnectionArguments, ctx: Types["Context"]) => number);
11
+ resolveNode?: (edge: EdgeShape) => NodeShape;
12
+ }): {
13
+ ref: DrizzleRef<Types, Type extends DrizzleRef<Types, infer T> ? T : Type, Shape>;
14
+ resolve: <Parent = unknown>(list: (EdgeShape & {})[], args: InputShapeFromFields<ExtraArgs> & PothosSchemaTypes.DefaultConnectionArguments, ctx: Types["Context"], parent?: Parent) => {
15
+ edges: (Omit<EdgeShape, "cursor" | "node"> & {
16
+ node: NodeShape;
17
+ cursor: string;
18
+ })[];
19
+ pageInfo: {
20
+ startCursor: string | null;
21
+ endCursor: string | null;
22
+ hasPreviousPage: boolean;
23
+ hasNextPage: boolean;
24
+ };
25
+ };
26
+ select: {};
27
+ getQuery: (args: InputShapeFromFields<ExtraArgs> & PothosSchemaTypes.DefaultConnectionArguments, ctx: Types["Context"], nestedSelection: <T extends true | {}>(selection?: T, path?: string[]) => T) => Omit<Selection, "orderBy"> & {
28
+ orderBy: {
29
+ [K in keyof Table["columns"]]?: "asc" | "desc" | undefined;
30
+ };
31
+ };
32
+ getArgs: () => ExtraArgs;
33
+ };
34
+ //# sourceMappingURL=connection-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-helpers.d.ts","sourceRoot":"","sources":["../src/connection-helpers.ts"],"names":[],"mappings":"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"}