@pothos/plugin-drizzle 0.5.0 → 0.5.2

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,17 @@
1
1
  # @pothos/plugin-drizzle
2
2
 
3
+ ## 0.5.2
4
+
5
+ ### Patch Changes
6
+
7
+ - c71b6bd: fix: drizzle plugin model loader when multiple models are requested
8
+
9
+ ## 0.5.1
10
+
11
+ ### Patch Changes
12
+
13
+ - 52a70e9: Load client when db request is initialized rather than caching on model loader
14
+
3
15
  ## 0.5.0
4
16
 
5
17
  ### Minor Changes
@@ -1,7 +1,6 @@
1
1
  import { type SchemaTypes } from '@pothos/core';
2
2
  import { type Column, type TableRelationalConfig } from 'drizzle-orm';
3
3
  import type { GraphQLResolveInfo } from 'graphql';
4
- import type { DrizzleClient } from './types';
5
4
  import { type PothosDrizzleSchemaConfig } from './utils/config';
6
5
  import { type SelectionMap, type SelectionState } from './utils/selections';
7
6
  interface ResolvablePromise<T> {
@@ -25,7 +24,6 @@ export declare class ModelLoader {
25
24
  table: TableRelationalConfig;
26
25
  columns: Column[];
27
26
  selectSQL: import("drizzle-orm").SQL<unknown>;
28
- client: DrizzleClient;
29
27
  constructor(context: object, builder: PothosSchemaTypes.SchemaBuilder<never>, modelName: string, columns?: Column[]);
30
28
  static forModel<Types extends SchemaTypes>(modelName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>, columns?: Column[]): import("@pothos/core").ContextCache<ModelLoader, object, []>;
31
29
  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;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,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;IACV,MAAM,EAAE,aAAa,CAAC;gBAGpB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAAE;IAgBpB,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;mBAxDK,cAAc;eAAS,YAAY;;IAqE7E,oBAAoB,CAAC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM;mBArErB,cAAc;eAAS,YAAY;;IAwFvE,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;CA8DlD"}
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,7 +1,6 @@
1
1
  import { type SchemaTypes } from '@pothos/core';
2
2
  import { type Column, type TableRelationalConfig } from 'drizzle-orm';
3
3
  import type { GraphQLResolveInfo } from 'graphql';
4
- import type { DrizzleClient } from './types.js';
5
4
  import { type PothosDrizzleSchemaConfig } from './utils/config.js';
6
5
  import { type SelectionMap, type SelectionState } from './utils/selections.js';
7
6
  interface ResolvablePromise<T> {
@@ -25,7 +24,6 @@ export declare class ModelLoader {
25
24
  table: TableRelationalConfig;
26
25
  columns: Column[];
27
26
  selectSQL: import("drizzle-orm").SQL<unknown>;
28
- client: DrizzleClient;
29
27
  constructor(context: object, builder: PothosSchemaTypes.SchemaBuilder<never>, modelName: string, columns?: Column[]);
30
28
  static forModel<Types extends SchemaTypes>(modelName: string, builder: PothosSchemaTypes.SchemaBuilder<Types>, columns?: Column[]): import("@pothos/core").ContextCache<ModelLoader, object, [
31
29
  ]>;
@@ -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;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,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;IACV,MAAM,EAAE,aAAa,CAAC;gBAGpB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAC/C,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAAE;IAgBpB,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;mBAxDK,cAAc;eAAS,YAAY;;IAqE7E,oBAAoB,CAAC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM;mBArErB,cAAc;eAAS,YAAY;;IAwFvE,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;CA8DlD"}
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"}
@@ -103,13 +103,14 @@ export class ModelLoader {
103
103
  };
104
104
  this.staged.add(entry);
105
105
  const nextTick = createResolvablePromise();
106
+ const client = getClient(this.builder, this.context);
106
107
  nextTick.promise.then(() => {
107
- const api = this.client.query[this.modelName];
108
+ const api = client.query[this.modelName];
108
109
  const query = api.findMany({
109
110
  ...selectionToQuery(selection),
110
111
  where: inArray(this.selectSQL, [
111
- entry.models.keys()
112
- ].map(([model]) => this.sqlForModel(model)))
112
+ ...entry.models.keys()
113
+ ].map((model) => this.sqlForModel(model)))
113
114
  });
114
115
  query.then((results) => {
115
116
  for (const [model, promise] of entry.models.entries()) {
@@ -144,7 +145,6 @@ export class ModelLoader {
144
145
  _define_property(this, "table", void 0);
145
146
  _define_property(this, "columns", void 0);
146
147
  _define_property(this, "selectSQL", void 0);
147
- _define_property(this, "client", void 0);
148
148
  this.context = context;
149
149
  this.builder = builder;
150
150
  this.modelName = modelName;
@@ -152,7 +152,6 @@ export class ModelLoader {
152
152
  this.table = this.config.schema[modelName];
153
153
  this.columns = columns !== null && columns !== void 0 ? columns : this.table.primaryKey;
154
154
  this.selectSQL = this.columns.length > 1 ? sql `(${sql.join(this.columns, sql `, `)})` : this.columns[0].getSQL();
155
- this.client = getClient(builder, context);
156
155
  }
157
156
  }
158
157
  function createResolvablePromise() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/model-loader.ts"],"names":["createContextCache","inArray","sql","getClient","getSchemaConfig","cacheKey","setLoaderMappings","selectionStateFromInfo","stateFromInfo","mergeSelection","selectionCompatible","selectionToQuery","ModelLoader","forModel","modelName","builder","columns","model","sqlForModel","values","map","key","columnName","name","Error","length","getSelection","info","parentType","path","queryCache","has","selection","config","context","set","query","get","getSelectionForField","typeName","loadSelection","result","stageQuery","mappings","loadSelectionForField","returnType","entry","staged","state","models","createResolvablePromise","promise","initLoad","Map","add","nextTick","then","api","client","findMany","where","selectSQL","keys","results","entries","find","row","table","primaryKey","every","resolve","reject","err","catch","setTimeout","constructor","Set","schema","join","getSQL","resolveFn","rejectFn","Promise"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/model-loader.ts"],"names":["createContextCache","inArray","sql","getClient","getSchemaConfig","cacheKey","setLoaderMappings","selectionStateFromInfo","stateFromInfo","mergeSelection","selectionCompatible","selectionToQuery","ModelLoader","forModel","modelName","builder","columns","model","sqlForModel","values","map","key","columnName","name","Error","length","getSelection","info","parentType","path","queryCache","has","selection","config","context","set","query","get","getSelectionForField","typeName","loadSelection","result","stageQuery","mappings","loadSelectionForField","returnType","entry","staged","state","models","createResolvablePromise","promise","initLoad","Map","add","nextTick","client","then","api","findMany","where","selectSQL","keys","results","entries","find","row","table","primaryKey","every","resolve","reject","err","catch","setTimeout","constructor","Set","schema","join","getSQL","resolveFn","rejectFn","Promise"],"mappings":"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"}
@@ -112,13 +112,14 @@ class ModelLoader {
112
112
  };
113
113
  this.staged.add(entry);
114
114
  const nextTick = createResolvablePromise();
115
+ const client = (0, _config.getClient)(this.builder, this.context);
115
116
  nextTick.promise.then(()=>{
116
- const api = this.client.query[this.modelName];
117
+ const api = client.query[this.modelName];
117
118
  const query = api.findMany({
118
119
  ...(0, _selections.selectionToQuery)(selection),
119
120
  where: (0, _drizzleorm.inArray)(this.selectSQL, [
120
- entry.models.keys()
121
- ].map(([model])=>this.sqlForModel(model)))
121
+ ...entry.models.keys()
122
+ ].map((model)=>this.sqlForModel(model)))
122
123
  });
123
124
  query.then((results)=>{
124
125
  for (const [model, promise] of entry.models.entries()){
@@ -152,7 +153,6 @@ class ModelLoader {
152
153
  _define_property(this, "table", void 0);
153
154
  _define_property(this, "columns", void 0);
154
155
  _define_property(this, "selectSQL", void 0);
155
- _define_property(this, "client", void 0);
156
156
  this.context = context;
157
157
  this.builder = builder;
158
158
  this.modelName = modelName;
@@ -160,7 +160,6 @@ class ModelLoader {
160
160
  this.table = this.config.schema[modelName];
161
161
  this.columns = columns !== null && columns !== void 0 ? columns : this.table.primaryKey;
162
162
  this.selectSQL = this.columns.length > 1 ? (0, _drizzleorm.sql)`(${_drizzleorm.sql.join(this.columns, (0, _drizzleorm.sql)`, `)})` : this.columns[0].getSQL();
163
- this.client = (0, _config.getClient)(builder, context);
164
163
  }
165
164
  }
166
165
  function createResolvablePromise() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/model-loader.ts"],"names":["ModelLoader","forModel","modelName","builder","columns","createContextCache","model","sqlForModel","values","map","key","columnName","name","Error","length","getSelection","info","cacheKey","parentType","path","queryCache","has","selection","selectionStateFromInfo","config","context","set","query","selectionToQuery","get","getSelectionForField","typeName","stateFromInfo","loadSelection","result","stageQuery","mappings","setLoaderMappings","loadSelectionForField","returnType","entry","staged","selectionCompatible","state","mergeSelection","models","createResolvablePromise","promise","initLoad","Map","add","nextTick","then","api","client","findMany","where","inArray","selectSQL","keys","results","entries","find","row","table","primaryKey","every","resolve","reject","err","catch","setTimeout","constructor","Set","getSchemaConfig","schema","sql","join","getSQL","getClient","resolveFn","rejectFn","Promise"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/model-loader.ts"],"names":["ModelLoader","forModel","modelName","builder","columns","createContextCache","model","sqlForModel","values","map","key","columnName","name","Error","length","getSelection","info","cacheKey","parentType","path","queryCache","has","selection","selectionStateFromInfo","config","context","set","query","selectionToQuery","get","getSelectionForField","typeName","stateFromInfo","loadSelection","result","stageQuery","mappings","setLoaderMappings","loadSelectionForField","returnType","entry","staged","selectionCompatible","state","mergeSelection","models","createResolvablePromise","promise","initLoad","Map","add","nextTick","client","getClient","then","api","findMany","where","inArray","selectSQL","keys","results","entries","find","row","table","primaryKey","every","resolve","reject","err","catch","setTimeout","constructor","Set","getSchemaConfig","schema","sql","join","getSQL","resolveFn","rejectFn","Promise"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pothos/plugin-drizzle",
3
- "version": "0.5.0",
3
+ "version": "0.5.2",
4
4
  "description": "A Pothos plugin for drizzle",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./dts/index.d.ts",
@@ -46,12 +46,12 @@
46
46
  "graphql-scalars": "^1.23.0",
47
47
  "graphql-tag": "^2.12.6",
48
48
  "postgres": "^3.4.4",
49
- "@pothos/core": "4.3.0",
50
- "@pothos/plugin-add-graphql": "4.2.0",
51
49
  "@pothos/plugin-relay": "4.3.0",
50
+ "@pothos/core": "4.3.0",
52
51
  "@pothos/plugin-scope-auth": "4.1.0",
53
52
  "@pothos/plugin-with-input": "4.1.0",
54
- "@pothos/test-utils": "2.1.0"
53
+ "@pothos/test-utils": "2.1.0",
54
+ "@pothos/plugin-add-graphql": "4.2.1"
55
55
  },
56
56
  "scripts": {
57
57
  "type": "tsc --project tsconfig.type.json",
@@ -36,7 +36,6 @@ export class ModelLoader {
36
36
  table: TableRelationalConfig;
37
37
  columns: Column[];
38
38
  selectSQL;
39
- client: DrizzleClient;
40
39
 
41
40
  constructor(
42
41
  context: object,
@@ -54,8 +53,6 @@ export class ModelLoader {
54
53
  this.columns.length > 1
55
54
  ? sql`(${sql.join(this.columns, sql`, `)})`
56
55
  : this.columns[0].getSQL();
57
-
58
- this.client = getClient(builder, context);
59
56
  }
60
57
 
61
58
  static forModel<Types extends SchemaTypes>(
@@ -166,11 +163,12 @@ export class ModelLoader {
166
163
  this.staged.add(entry);
167
164
 
168
165
  const nextTick = createResolvablePromise<void>();
166
+ const client = getClient(this.builder, this.context);
169
167
 
170
168
  nextTick.promise
171
169
  .then(() => {
172
170
  const api = (
173
- this.client.query as Record<
171
+ client.query as Record<
174
172
  string,
175
173
  { findMany: (...args: unknown[]) => Promise<Record<string, unknown>[]> }
176
174
  >
@@ -180,7 +178,7 @@ export class ModelLoader {
180
178
  ...selectionToQuery(selection),
181
179
  where: inArray(
182
180
  this.selectSQL,
183
- [entry.models.keys()].map(([model]) => this.sqlForModel(model)),
181
+ [...entry.models.keys()].map((model) => this.sqlForModel(model)),
184
182
  ),
185
183
  });
186
184