@pothos/plugin-drizzle 0.5.0 → 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 +6 -0
- package/dts/model-loader.d.ts +0 -2
- package/dts/model-loader.d.ts.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/lib/model-loader.js +2 -3
- package/lib/model-loader.js.map +1 -1
- package/package.json +2 -2
- package/src/model-loader.ts +2 -4
package/CHANGELOG.md
CHANGED
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/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/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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pothos/plugin-drizzle",
|
|
3
|
-
"version": "0.5.
|
|
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",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"graphql-tag": "^2.12.6",
|
|
48
48
|
"postgres": "^3.4.4",
|
|
49
49
|
"@pothos/core": "4.3.0",
|
|
50
|
-
"@pothos/plugin-add-graphql": "4.2.
|
|
50
|
+
"@pothos/plugin-add-graphql": "4.2.1",
|
|
51
51
|
"@pothos/plugin-relay": "4.3.0",
|
|
52
52
|
"@pothos/plugin-scope-auth": "4.1.0",
|
|
53
53
|
"@pothos/plugin-with-input": "4.1.0",
|
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
|
>
|