@pothos/plugin-drizzle 0.4.7 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/dts/index.d.ts +1 -0
- package/dts/index.d.ts.map +1 -1
- package/dts/model-loader.d.ts +0 -2
- package/dts/model-loader.d.ts.map +1 -1
- package/dts/utils/config.d.ts +1 -0
- package/dts/utils/config.d.ts.map +1 -1
- package/esm/index.d.ts +1 -0
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -0
- package/esm/index.js.map +1 -1
- package/esm/model-loader.d.ts +0 -2
- package/esm/model-loader.d.ts.map +1 -1
- package/esm/model-loader.js +2 -3
- package/esm/model-loader.js.map +1 -1
- package/esm/utils/config.d.ts +3 -0
- package/esm/utils/config.d.ts.map +1 -1
- package/esm/utils/config.js +2 -2
- package/esm/utils/config.js.map +1 -1
- package/lib/index.js +4 -0
- package/lib/index.js.map +1 -1
- package/lib/model-loader.js +2 -3
- package/lib/model-loader.js.map +1 -1
- package/lib/utils/config.js +5 -2
- package/lib/utils/config.js.map +1 -1
- package/package.json +5 -5
- package/src/index.ts +1 -0
- package/src/model-loader.ts +2 -4
- package/src/utils/config.ts +14 -12
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @pothos/plugin-drizzle
|
|
2
2
|
|
|
3
|
+
## 0.5.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 52a70e9: Load client when db request is initialized rather than caching on model loader
|
|
8
|
+
|
|
9
|
+
## 0.5.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- aadc82c: export client cache so it can be reset during request
|
|
14
|
+
|
|
3
15
|
## 0.4.7
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/dts/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import './field-builder';
|
|
|
3
3
|
import './schema-builder';
|
|
4
4
|
import { BasePlugin, type PothosOutputFieldConfig, type SchemaTypes } from '@pothos/core';
|
|
5
5
|
import type { GraphQLFieldResolver } from 'graphql';
|
|
6
|
+
export { drizzleClientCache } from './utils/config';
|
|
6
7
|
export * from './types';
|
|
7
8
|
declare const pluginName = "drizzle";
|
|
8
9
|
export default pluginName;
|
package/dts/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AACxB,OAAO,iBAAiB,CAAC;AACzB,OAAO,kBAAkB,CAAC;AAC1B,OAAsB,EACpB,UAAU,EAGV,KAAK,uBAAuB,EAC5B,KAAK,WAAW,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AACxB,OAAO,iBAAiB,CAAC;AACzB,OAAO,kBAAkB,CAAC;AAC1B,OAAsB,EACpB,UAAU,EAGV,KAAK,uBAAuB,EAC5B,KAAK,WAAW,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AASpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,cAAc,SAAS,CAAC;AAExB,QAAA,MAAM,UAAU,YAAY,CAAC;AAE7B,eAAe,UAAU,CAAC;AAE1B,qBAAa,mBAAmB,CAAC,KAAK,SAAS,WAAW,CAAE,SAAQ,UAAU,CAAC,KAAK,CAAC;IAC1E,mBAAmB,CAC1B,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,GAC1C,uBAAuB,CAAC,KAAK,CAAC,GAAG,IAAI;IA0E/B,WAAW,CAClB,QAAQ,EAAE,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAC1E,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,GAC1C,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CA2D3D"}
|
package/dts/model-loader.d.ts
CHANGED
|
@@ -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;
|
|
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"}
|
package/dts/utils/config.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export interface PothosDrizzleSchemaConfig extends RelationalSchemaConfig<Tables
|
|
|
5
5
|
dbToSchema: Record<string, TableRelationalConfig>;
|
|
6
6
|
columnToTsName: (column: Column) => string;
|
|
7
7
|
}
|
|
8
|
+
export declare const drizzleClientCache: import("@pothos/core").ContextCache<import("@pothos/core").ContextCache<DrizzleClient, object, []>, PothosSchemaTypes.SchemaBuilder<SchemaTypes>, []>;
|
|
8
9
|
export declare function getSchemaConfig<Types extends SchemaTypes>(builder: PothosSchemaTypes.SchemaBuilder<Types>): PothosDrizzleSchemaConfig;
|
|
9
10
|
export declare function getClient<Types extends SchemaTypes>(builder: PothosSchemaTypes.SchemaBuilder<Types>, context: object): DrizzleClient;
|
|
10
11
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -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,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAClD,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5C;
|
|
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,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAClD,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5C;AA2DD,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"}
|
package/esm/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import './field-builder.js';
|
|
|
3
3
|
import './schema-builder.js';
|
|
4
4
|
import { BasePlugin, type PothosOutputFieldConfig, type SchemaTypes } from '@pothos/core';
|
|
5
5
|
import type { GraphQLFieldResolver } from 'graphql';
|
|
6
|
+
export { drizzleClientCache } from './utils/config.js';
|
|
6
7
|
export * from './types.js';
|
|
7
8
|
declare const pluginName = "drizzle";
|
|
8
9
|
export default pluginName;
|
package/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AACxB,OAAO,iBAAiB,CAAC;AACzB,OAAO,kBAAkB,CAAC;AAC1B,OAAsB,EACpB,UAAU,EAGV,KAAK,uBAAuB,EAC5B,KAAK,WAAW,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AACxB,OAAO,iBAAiB,CAAC;AACzB,OAAO,kBAAkB,CAAC;AAC1B,OAAsB,EACpB,UAAU,EAGV,KAAK,uBAAuB,EAC5B,KAAK,WAAW,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AASpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,cAAc,SAAS,CAAC;AAExB,QAAA,MAAM,UAAU,YAAY,CAAC;AAE7B,eAAe,UAAU,CAAC;AAE1B,qBAAa,mBAAmB,CAAC,KAAK,SAAS,WAAW,CAAE,SAAQ,UAAU,CAAC,KAAK,CAAC;IAC1E,mBAAmB,CAC1B,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,GAC1C,uBAAuB,CAAC,KAAK,CAAC,GAAG,IAAI;IA0E/B,WAAW,CAClB,QAAQ,EAAE,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAC1E,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,GAC1C,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CA2D3D"}
|
package/esm/index.js
CHANGED
|
@@ -4,6 +4,7 @@ import './schema-builder.js';
|
|
|
4
4
|
import SchemaBuilder, { BasePlugin, createInputValueMapper, mapInputFields } from '@pothos/core';
|
|
5
5
|
import { extractFilters, extractOrderBy, remapFromGraphQLSingleInput } from './utils/drizzle-graphql.js';
|
|
6
6
|
import { getLoaderMapping, setLoaderMappings } from './utils/loader-map.js';
|
|
7
|
+
export { drizzleClientCache } from './utils/config.js';
|
|
7
8
|
export * from './types.js';
|
|
8
9
|
const pluginName = "drizzle";
|
|
9
10
|
export default pluginName;
|
package/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":["SchemaBuilder","BasePlugin","createInputValueMapper","mapInputFields","extractFilters","extractOrderBy","remapFromGraphQLSingleInput","getLoaderMapping","setLoaderMappings","pluginName","PothosDrizzlePlugin","onOutputFieldConfig","fieldConfig","argMappings","args","buildCache","inputField","type","kind","config","getTypeConfig","ref","extensions","drizzleGraphQL","argMapper","input","mappings","value","table","tableConfig","inputType","Error","argMappers","undefined","pothosOptions","select","pothosDrizzleSelect","ctx","nestedQuery","wrapResolve","resolver","parentConfig","parentType","parentTypes","Set","iface","interfaces","interfaceConfig","pothosDrizzleModel","add","name","modelLoader","pothosDrizzleLoader","parent","context","info","mapping","path","primaryKeys","pothosDrizzleTable","primaryKey","length","loadSelection","then","result","registerPlugin"],"mappings":"AAAA,OAAO,iBAAiB;AACxB,OAAO,kBAAkB;AACzB,OAAO,mBAAmB;AAC1B,OAAOA,iBACLC,UAAU,EACVC,sBAAsB,EACtBC,cAAc,QAGT,eAAe;AAItB,SACEC,cAAc,EACdC,cAAc,EACdC,2BAA2B,QACtB,0BAA0B;AACjC,SAASC,gBAAgB,EAAEC,iBAAiB,QAAQ,qBAAqB;
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":["SchemaBuilder","BasePlugin","createInputValueMapper","mapInputFields","extractFilters","extractOrderBy","remapFromGraphQLSingleInput","getLoaderMapping","setLoaderMappings","drizzleClientCache","pluginName","PothosDrizzlePlugin","onOutputFieldConfig","fieldConfig","argMappings","args","buildCache","inputField","type","kind","config","getTypeConfig","ref","extensions","drizzleGraphQL","argMapper","input","mappings","value","table","tableConfig","inputType","Error","argMappers","undefined","pothosOptions","select","pothosDrizzleSelect","ctx","nestedQuery","wrapResolve","resolver","parentConfig","parentType","parentTypes","Set","iface","interfaces","interfaceConfig","pothosDrizzleModel","add","name","modelLoader","pothosDrizzleLoader","parent","context","info","mapping","path","primaryKeys","pothosDrizzleTable","primaryKey","length","loadSelection","then","result","registerPlugin"],"mappings":"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"}
|
package/esm/model-loader.d.ts
CHANGED
|
@@ -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;
|
|
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"}
|
package/esm/model-loader.js
CHANGED
|
@@ -103,8 +103,9 @@ 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 =
|
|
108
|
+
const api = client.query[this.modelName];
|
|
108
109
|
const query = api.findMany({
|
|
109
110
|
...selectionToQuery(selection),
|
|
110
111
|
where: inArray(this.selectSQL, [
|
|
@@ -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() {
|
package/esm/model-loader.js.map
CHANGED
|
@@ -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","
|
|
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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"}
|
package/esm/utils/config.d.ts
CHANGED
|
@@ -5,6 +5,9 @@ export interface PothosDrizzleSchemaConfig extends RelationalSchemaConfig<Tables
|
|
|
5
5
|
dbToSchema: Record<string, TableRelationalConfig>;
|
|
6
6
|
columnToTsName: (column: Column) => string;
|
|
7
7
|
}
|
|
8
|
+
export declare const drizzleClientCache: import("@pothos/core").ContextCache<import("@pothos/core").ContextCache<DrizzleClient, object, [
|
|
9
|
+
]>, PothosSchemaTypes.SchemaBuilder<SchemaTypes>, [
|
|
10
|
+
]>;
|
|
8
11
|
export declare function getSchemaConfig<Types extends SchemaTypes>(builder: PothosSchemaTypes.SchemaBuilder<Types>): PothosDrizzleSchemaConfig;
|
|
9
12
|
export declare function getClient<Types extends SchemaTypes>(builder: PothosSchemaTypes.SchemaBuilder<Types>, context: object): DrizzleClient;
|
|
10
13
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -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,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAClD,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5C;
|
|
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,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAClD,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5C;AA2DD,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"}
|
package/esm/utils/config.js
CHANGED
|
@@ -38,7 +38,7 @@ const configCache = createContextCache((builder) => {
|
|
|
38
38
|
...config
|
|
39
39
|
};
|
|
40
40
|
});
|
|
41
|
-
const
|
|
41
|
+
export const drizzleClientCache = createContextCache((builder) => {
|
|
42
42
|
const clientConfig = builder.options.drizzle.client;
|
|
43
43
|
const getClient = typeof clientConfig === "function" ? createContextCache((ctx) => clientConfig(ctx)) : (_ctx) => clientConfig;
|
|
44
44
|
return createContextCache((context) => {
|
|
@@ -50,6 +50,6 @@ export function getSchemaConfig(builder) {
|
|
|
50
50
|
return configCache(builder);
|
|
51
51
|
}
|
|
52
52
|
export function getClient(builder, context) {
|
|
53
|
-
return
|
|
53
|
+
return drizzleClientCache(builder)(context);
|
|
54
54
|
}
|
|
55
55
|
//# sourceMappingURL=config.js.map
|
package/esm/utils/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/config.ts"],"names":["createContextCache","createTableRelationsHelpers","extractTablesRelationalConfig","getTableName","configCache","builder","config","options","drizzle","schema","tablesConfig","fullSchema","tables","tableNamesMap","client","_","dbToSchema","Object","values","reduce","acc","table","dbName","columnMappings","entries","columns","name","column","columnToTsName","tableName","columnName","Error","
|
|
1
|
+
{"version":3,"sources":["../../src/utils/config.ts"],"names":["createContextCache","createTableRelationsHelpers","extractTablesRelationalConfig","getTableName","configCache","builder","config","options","drizzle","schema","tablesConfig","fullSchema","tables","tableNamesMap","client","_","dbToSchema","Object","values","reduce","acc","table","dbName","columnMappings","entries","columns","name","column","columnToTsName","tableName","columnName","Error","drizzleClientCache","clientConfig","getClient","ctx","_ctx","context","getSchemaConfig"],"mappings":"AAAA,SAA2BA,kBAAkB,QAAQ,eAAe;AACpE,SAKEC,2BAA2B,EAC3BC,6BAA6B,EAC7BC,YAAY,QACP,cAAc;AAOrB,MAAMC,cAAcJ,mBAClB,CAACK;IACC,IAAIC;IACJ,IAAID,QAAQE,OAAO,CAACC,OAAO,CAACC,MAAM,EAAE;QAClC,MAAMC,eAAeR,8BACnBG,QAAQE,OAAO,CAACC,OAAO,CAACC,MAAM,EAC9BR;QAEFK,SAAS;YACPK,YAAYN,QAAQE,OAAO,CAACC,OAAO,CAACC,MAAM;YAC1CA,QAAQC,aAAaE,MAAM;YAC3BC,eAAeH,aAAaG,aAAa;QAC3C;IACF,OAAO;QACLP,SAAS,AAACD,QAAQE,OAAO,CAACC,OAAO,CAACM,MAAM,CACrCC,CAAC;IACN;IAEA,MAAMC,aAAaC,OAAOC,MAAM,CAACZ,OAAOG,MAAM,EAAEU,MAAM,CACpD,CAACC,KAAKC;QACJD,GAAG,CAACC,MAAMC,MAAM,CAAC,GAAGD;QACpB,OAAOD;IACT,GACA,CAAC;IAGH,MAAMG,iBAAiBN,OAAOC,MAAM,CAACF,YAAYG,MAAM,CACrD,CAACC,KAAKC;QACJD,GAAG,CAACC,MAAMC,MAAM,CAAC,GAAGL,OAAOO,OAAO,CAACH,MAAMI,OAAO,EAAEN,MAAM,CACtD,CAACC,KAAK,CAACM,MAAMC,OAAO;YAClBP,GAAG,CAACO,OAAOD,IAAI,CAAC,GAAGA;YACnB,OAAON;QACT,GACA,CAAC;QAEH,OAAOA;IACT,GACA,CAAC;IAGH,OAAO;QACLJ;QACAY,gBAAgB,CAACD;YACf,MAAME,YAAY1B,aAAawB,OAAON,KAAK;YAC3C,MAAMA,QAAQE,cAAc,CAACM,UAAU;YACvC,MAAMC,aAAaT,kBAAAA,4BAAAA,KAAO,CAACM,OAAOD,IAAI,CAAC;YAEvC,IAAI,CAACI,YAAY;gBACf,MAAM,IAAIC,MAAM,CAAC,kCAAkC,EAAEF,UAAU,CAAC,EAAEF,OAAOD,IAAI,CAAC,CAAC;YACjF;YAEA,OAAOI;QACT;QACA,GAAGxB,MAAM;IACX;AACF;AAGF,OAAO,MAAM0B,qBAAqBhC,mBAChC,CAACK;IACC,MAAM4B,eAAe5B,QAAQE,OAAO,CAACC,OAAO,CAACM,MAAM;IACnD,MAAMoB,YACJ,OAAOD,iBAAiB,aACpBjC,mBAAmB,CAACmC,MAAQF,aAAaE,QACzC,CAACC,OAAiBH;IAExB,OAAOjC,mBAAmB,CAACqC;QACzB,MAAMvB,SAASoB,UAAUG;QAEzB,OAAOvB;IACT;AACF,GACA;AAEF,OAAO,SAASwB,gBACdjC,OAA+C;IAE/C,OAAOD,YAAYC;AACrB;AAEA,OAAO,SAAS6B,UACd7B,OAA+C,EAC/CgC,OAAe;IAEf,OAAOL,mBAAmB3B,SAAkBgC;AAC9C"}
|
package/lib/index.js
CHANGED
|
@@ -14,6 +14,9 @@ _export(exports, {
|
|
|
14
14
|
},
|
|
15
15
|
default: function() {
|
|
16
16
|
return _default;
|
|
17
|
+
},
|
|
18
|
+
drizzleClientCache: function() {
|
|
19
|
+
return _config.drizzleClientCache;
|
|
17
20
|
}
|
|
18
21
|
});
|
|
19
22
|
require("./global-types");
|
|
@@ -22,6 +25,7 @@ require("./schema-builder");
|
|
|
22
25
|
const _core = /*#__PURE__*/ _interop_require_wildcard(require("@pothos/core"));
|
|
23
26
|
const _drizzlegraphql = require("./utils/drizzle-graphql");
|
|
24
27
|
const _loadermap = require("./utils/loader-map");
|
|
28
|
+
const _config = require("./utils/config");
|
|
25
29
|
_export_star(require("./types"), exports);
|
|
26
30
|
function _export_star(from, to) {
|
|
27
31
|
Object.keys(from).forEach(function(k) {
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":["PothosDrizzlePlugin","pluginName","BasePlugin","onOutputFieldConfig","fieldConfig","argMappings","mapInputFields","args","buildCache","inputField","type","kind","config","getTypeConfig","ref","extensions","drizzleGraphQL","argMapper","createInputValueMapper","input","mappings","value","table","tableConfig","inputType","extractOrderBy","extractFilters","remapFromGraphQLSingleInput","Error","argMappers","undefined","pothosOptions","select","pothosDrizzleSelect","ctx","nestedQuery","wrapResolve","resolver","parentConfig","parentType","parentTypes","Set","iface","interfaces","interfaceConfig","pothosDrizzleModel","add","name","modelLoader","pothosDrizzleLoader","parent","context","info","mapping","getLoaderMapping","path","setLoaderMappings","primaryKeys","pothosDrizzleTable","primaryKey","length","loadSelection","then","result","SchemaBuilder","registerPlugin"],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":["PothosDrizzlePlugin","drizzleClientCache","pluginName","BasePlugin","onOutputFieldConfig","fieldConfig","argMappings","mapInputFields","args","buildCache","inputField","type","kind","config","getTypeConfig","ref","extensions","drizzleGraphQL","argMapper","createInputValueMapper","input","mappings","value","table","tableConfig","inputType","extractOrderBy","extractFilters","remapFromGraphQLSingleInput","Error","argMappers","undefined","pothosOptions","select","pothosDrizzleSelect","ctx","nestedQuery","wrapResolve","resolver","parentConfig","parentType","parentTypes","Set","iface","interfaces","interfaceConfig","pothosDrizzleModel","add","name","modelLoader","pothosDrizzleLoader","parent","context","info","mapping","getLoaderMapping","path","setLoaderMappings","primaryKeys","pothosDrizzleTable","primaryKey","length","loadSelection","then","result","SchemaBuilder","registerPlugin"],"mappings":"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"}
|
package/lib/model-loader.js
CHANGED
|
@@ -112,8 +112,9 @@ 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 =
|
|
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, [
|
|
@@ -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() {
|
package/lib/model-loader.js.map
CHANGED
|
@@ -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","
|
|
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/lib/utils/config.js
CHANGED
|
@@ -9,6 +9,9 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
+
drizzleClientCache: function() {
|
|
13
|
+
return drizzleClientCache;
|
|
14
|
+
},
|
|
12
15
|
getClient: function() {
|
|
13
16
|
return getClient;
|
|
14
17
|
},
|
|
@@ -55,7 +58,7 @@ const configCache = (0, _core.createContextCache)((builder)=>{
|
|
|
55
58
|
...config
|
|
56
59
|
};
|
|
57
60
|
});
|
|
58
|
-
const
|
|
61
|
+
const drizzleClientCache = (0, _core.createContextCache)((builder)=>{
|
|
59
62
|
const clientConfig = builder.options.drizzle.client;
|
|
60
63
|
const getClient = typeof clientConfig === 'function' ? (0, _core.createContextCache)((ctx)=>clientConfig(ctx)) : (_ctx)=>clientConfig;
|
|
61
64
|
return (0, _core.createContextCache)((context)=>{
|
|
@@ -67,7 +70,7 @@ function getSchemaConfig(builder) {
|
|
|
67
70
|
return configCache(builder);
|
|
68
71
|
}
|
|
69
72
|
function getClient(builder, context) {
|
|
70
|
-
return
|
|
73
|
+
return drizzleClientCache(builder)(context);
|
|
71
74
|
}
|
|
72
75
|
|
|
73
76
|
//# sourceMappingURL=config.js.map
|
package/lib/utils/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/config.ts"],"names":["getClient","getSchemaConfig","configCache","createContextCache","builder","config","options","drizzle","schema","tablesConfig","extractTablesRelationalConfig","createTableRelationsHelpers","fullSchema","tables","tableNamesMap","client","_","dbToSchema","Object","values","reduce","acc","table","dbName","columnMappings","entries","columns","name","column","columnToTsName","tableName","getTableName","columnName","Error","
|
|
1
|
+
{"version":3,"sources":["../../src/utils/config.ts"],"names":["drizzleClientCache","getClient","getSchemaConfig","configCache","createContextCache","builder","config","options","drizzle","schema","tablesConfig","extractTablesRelationalConfig","createTableRelationsHelpers","fullSchema","tables","tableNamesMap","client","_","dbToSchema","Object","values","reduce","acc","table","dbName","columnMappings","entries","columns","name","column","columnToTsName","tableName","getTableName","columnName","Error","clientConfig","ctx","_ctx","context"],"mappings":";;;;;;;;;;;IA0EaA,kBAAkB;eAAlBA;;IAsBGC,SAAS;eAATA;;IANAC,eAAe;eAAfA;;;sBA1FqC;4BAS9C;AAOP,MAAMC,cAAcC,IAAAA,wBAAkB,EACpC,CAACC;IACC,IAAIC;IACJ,IAAID,QAAQE,OAAO,CAACC,OAAO,CAACC,MAAM,EAAE;QAClC,MAAMC,eAAeC,IAAAA,yCAA6B,EAChDN,QAAQE,OAAO,CAACC,OAAO,CAACC,MAAM,EAC9BG,uCAA2B;QAE7BN,SAAS;YACPO,YAAYR,QAAQE,OAAO,CAACC,OAAO,CAACC,MAAM;YAC1CA,QAAQC,aAAaI,MAAM;YAC3BC,eAAeL,aAAaK,aAAa;QAC3C;IACF,OAAO;QACLT,SAAS,AAACD,QAAQE,OAAO,CAACC,OAAO,CAACQ,MAAM,CACrCC,CAAC;IACN;IAEA,MAAMC,aAAaC,OAAOC,MAAM,CAACd,OAAOG,MAAM,EAAEY,MAAM,CACpD,CAACC,KAAKC;QACJD,GAAG,CAACC,MAAMC,MAAM,CAAC,GAAGD;QACpB,OAAOD;IACT,GACA,CAAC;IAGH,MAAMG,iBAAiBN,OAAOC,MAAM,CAACF,YAAYG,MAAM,CACrD,CAACC,KAAKC;QACJD,GAAG,CAACC,MAAMC,MAAM,CAAC,GAAGL,OAAOO,OAAO,CAACH,MAAMI,OAAO,EAAEN,MAAM,CACtD,CAACC,KAAK,CAACM,MAAMC,OAAO;YAClBP,GAAG,CAACO,OAAOD,IAAI,CAAC,GAAGA;YACnB,OAAON;QACT,GACA,CAAC;QAEH,OAAOA;IACT,GACA,CAAC;IAGH,OAAO;QACLJ;QACAY,gBAAgB,CAACD;YACf,MAAME,YAAYC,IAAAA,wBAAY,EAACH,OAAON,KAAK;YAC3C,MAAMA,QAAQE,cAAc,CAACM,UAAU;YACvC,MAAME,aAAaV,kBAAAA,4BAAAA,KAAO,CAACM,OAAOD,IAAI,CAAC;YAEvC,IAAI,CAACK,YAAY;gBACf,MAAM,IAAIC,MAAM,CAAC,kCAAkC,EAAEH,UAAU,CAAC,EAAEF,OAAOD,IAAI,CAAC,CAAC;YACjF;YAEA,OAAOK;QACT;QACA,GAAG3B,MAAM;IACX;AACF;AAGK,MAAMN,qBAAqBI,IAAAA,wBAAkB,EAClD,CAACC;IACC,MAAM8B,eAAe9B,QAAQE,OAAO,CAACC,OAAO,CAACQ,MAAM;IACnD,MAAMf,YACJ,OAAOkC,iBAAiB,aACpB/B,IAAAA,wBAAkB,EAAC,CAACgC,MAAQD,aAAaC,QACzC,CAACC,OAAiBF;IAExB,OAAO/B,IAAAA,wBAAkB,EAAC,CAACkC;QACzB,MAAMtB,SAASf,UAAUqC;QAEzB,OAAOtB;IACT;AACF;AAGK,SAASd,gBACdG,OAA+C;IAE/C,OAAOF,YAAYE;AACrB;AAEO,SAASJ,UACdI,OAA+C,EAC/CiC,OAAe;IAEf,OAAOtC,mBAAmBK,SAAkBiC;AAC9C"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pothos/plugin-drizzle",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.1",
|
|
4
4
|
"description": "A Pothos plugin for drizzle",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./dts/index.d.ts",
|
|
@@ -46,11 +46,11 @@
|
|
|
46
46
|
"graphql-scalars": "^1.23.0",
|
|
47
47
|
"graphql-tag": "^2.12.6",
|
|
48
48
|
"postgres": "^3.4.4",
|
|
49
|
-
"@pothos/core": "4.
|
|
50
|
-
"@pothos/plugin-
|
|
51
|
-
"@pothos/plugin-
|
|
52
|
-
"@pothos/plugin-with-input": "4.1.0",
|
|
49
|
+
"@pothos/core": "4.3.0",
|
|
50
|
+
"@pothos/plugin-add-graphql": "4.2.1",
|
|
51
|
+
"@pothos/plugin-relay": "4.3.0",
|
|
53
52
|
"@pothos/plugin-scope-auth": "4.1.0",
|
|
53
|
+
"@pothos/plugin-with-input": "4.1.0",
|
|
54
54
|
"@pothos/test-utils": "2.1.0"
|
|
55
55
|
},
|
|
56
56
|
"scripts": {
|
package/src/index.ts
CHANGED
package/src/model-loader.ts
CHANGED
|
@@ -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
|
-
|
|
171
|
+
client.query as Record<
|
|
174
172
|
string,
|
|
175
173
|
{ findMany: (...args: unknown[]) => Promise<Record<string, unknown>[]> }
|
|
176
174
|
>
|
package/src/utils/config.ts
CHANGED
|
@@ -72,19 +72,21 @@ const configCache = createContextCache(
|
|
|
72
72
|
},
|
|
73
73
|
);
|
|
74
74
|
|
|
75
|
-
const
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
75
|
+
export const drizzleClientCache = createContextCache(
|
|
76
|
+
(builder: PothosSchemaTypes.SchemaBuilder<SchemaTypes>) => {
|
|
77
|
+
const clientConfig = builder.options.drizzle.client;
|
|
78
|
+
const getClient =
|
|
79
|
+
typeof clientConfig === 'function'
|
|
80
|
+
? createContextCache((ctx) => clientConfig(ctx))
|
|
81
|
+
: (_ctx: object) => clientConfig;
|
|
81
82
|
|
|
82
|
-
|
|
83
|
-
|
|
83
|
+
return createContextCache((context: object) => {
|
|
84
|
+
const client = getClient(context);
|
|
84
85
|
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
}
|
|
86
|
+
return client;
|
|
87
|
+
});
|
|
88
|
+
},
|
|
89
|
+
);
|
|
88
90
|
|
|
89
91
|
export function getSchemaConfig<Types extends SchemaTypes>(
|
|
90
92
|
builder: PothosSchemaTypes.SchemaBuilder<Types>,
|
|
@@ -96,5 +98,5 @@ export function getClient<Types extends SchemaTypes>(
|
|
|
96
98
|
builder: PothosSchemaTypes.SchemaBuilder<Types>,
|
|
97
99
|
context: object,
|
|
98
100
|
) {
|
|
99
|
-
return
|
|
101
|
+
return drizzleClientCache(builder as never)(context);
|
|
100
102
|
}
|