@pothos/plugin-drizzle 0.1.0 → 0.2.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/drizzle-field-builder.d.ts +10 -10
- package/dts/drizzle-field-builder.d.ts.map +1 -1
- package/dts/model-loader.d.ts +2 -0
- package/dts/model-loader.d.ts.map +1 -1
- package/dts/types.d.ts +12 -6
- package/dts/types.d.ts.map +1 -1
- package/dts/utils/config.d.ts +3 -1
- package/dts/utils/config.d.ts.map +1 -1
- package/esm/drizzle-field-builder.d.ts +10 -10
- package/esm/drizzle-field-builder.d.ts.map +1 -1
- package/esm/model-loader.d.ts +2 -0
- package/esm/model-loader.d.ts.map +1 -1
- package/esm/src/drizzle-field-builder.js +6 -5
- package/esm/src/drizzle-field-builder.js.map +1 -1
- package/esm/src/field-builder.js +2 -2
- package/esm/src/field-builder.js.map +1 -1
- package/esm/src/model-loader.js +4 -2
- package/esm/src/model-loader.js.map +1 -1
- package/esm/src/schema-builder.js +14 -13
- package/esm/src/schema-builder.js.map +1 -1
- package/esm/src/types.js.map +1 -1
- package/esm/src/utils/config.js +26 -2
- package/esm/src/utils/config.js.map +1 -1
- package/esm/types.d.ts +12 -6
- package/esm/types.d.ts.map +1 -1
- package/esm/utils/config.d.ts +3 -1
- package/esm/utils/config.d.ts.map +1 -1
- package/lib/src/drizzle-field-builder.js +6 -5
- package/lib/src/drizzle-field-builder.js.map +1 -1
- package/lib/src/field-builder.js +2 -2
- package/lib/src/field-builder.js.map +1 -1
- package/lib/src/model-loader.js +3 -1
- package/lib/src/model-loader.js.map +1 -1
- package/lib/src/schema-builder.js +14 -13
- package/lib/src/schema-builder.js.map +1 -1
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/config.js +36 -5
- package/lib/src/utils/config.js.map +1 -1
- package/package.json +3 -3
- package/src/drizzle-field-builder.ts +10 -6
- package/src/field-builder.ts +3 -4
- package/src/model-loader.ts +6 -2
- package/src/schema-builder.ts +8 -7
- package/src/types.ts +16 -3
- package/src/utils/config.ts +47 -7
|
@@ -8,6 +8,7 @@ const _interfaceref = require("./interface-ref");
|
|
|
8
8
|
const _modelloader = require("./model-loader");
|
|
9
9
|
const _noderef = require("./node-ref");
|
|
10
10
|
const _objectref = require("./object-ref");
|
|
11
|
+
const _config = require("./utils/config");
|
|
11
12
|
const _cursors = require("./utils/cursors");
|
|
12
13
|
const _refs = require("./utils/refs");
|
|
13
14
|
function _getRequireWildcardCache(nodeInterop) {
|
|
@@ -53,7 +54,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
53
54
|
}
|
|
54
55
|
const schemaBuilderProto = _core.default.prototype;
|
|
55
56
|
schemaBuilderProto.drizzleObject = function drizzleObject(table, { select, fields, ...options }) {
|
|
56
|
-
var
|
|
57
|
+
var _getSchemaConfig_schema;
|
|
57
58
|
var _options_variant, _ref;
|
|
58
59
|
const name = (_ref = (_options_variant = options.variant) !== null && _options_variant !== void 0 ? _options_variant : options.name) !== null && _ref !== void 0 ? _ref : table;
|
|
59
60
|
const ref = options.variant ? new _objectref.DrizzleObjectRef(options.variant, name) : (0, _refs.getRefFromModel)(table, this, 'object');
|
|
@@ -63,7 +64,7 @@ schemaBuilderProto.drizzleObject = function drizzleObject(table, { select, field
|
|
|
63
64
|
extensions: {
|
|
64
65
|
...options.extensions,
|
|
65
66
|
pothosDrizzleModel: table,
|
|
66
|
-
pothosDrizzleTable: (
|
|
67
|
+
pothosDrizzleTable: (_getSchemaConfig_schema = (0, _config.getSchemaConfig)(this).schema) === null || _getSchemaConfig_schema === void 0 ? void 0 : _getSchemaConfig_schema[table],
|
|
67
68
|
pothosDrizzleSelect: select !== null && select !== void 0 ? select : {},
|
|
68
69
|
pothosDrizzleLoader: _modelloader.ModelLoader.forModel(table, this)
|
|
69
70
|
},
|
|
@@ -73,7 +74,7 @@ schemaBuilderProto.drizzleObject = function drizzleObject(table, { select, field
|
|
|
73
74
|
return ref;
|
|
74
75
|
};
|
|
75
76
|
schemaBuilderProto.drizzleInterface = function drizzleInterface(table, { select, fields, ...options }) {
|
|
76
|
-
var
|
|
77
|
+
var _getSchemaConfig_schema;
|
|
77
78
|
var _options_name;
|
|
78
79
|
const name = (_options_name = options.name) !== null && _options_name !== void 0 ? _options_name : table;
|
|
79
80
|
const ref = options.variant ? new _interfaceref.DrizzleInterfaceRef(options.variant, name) : (0, _refs.getRefFromModel)(table, this, 'interface');
|
|
@@ -83,7 +84,7 @@ schemaBuilderProto.drizzleInterface = function drizzleInterface(table, { select,
|
|
|
83
84
|
extensions: {
|
|
84
85
|
...options.extensions,
|
|
85
86
|
pothosDrizzleModel: table,
|
|
86
|
-
pothosDrizzleTable: (
|
|
87
|
+
pothosDrizzleTable: (_getSchemaConfig_schema = (0, _config.getSchemaConfig)(this).schema) === null || _getSchemaConfig_schema === void 0 ? void 0 : _getSchemaConfig_schema[table],
|
|
87
88
|
pothosDrizzleSelect: select !== null && select !== void 0 ? select : {},
|
|
88
89
|
pothosDrizzleLoader: _modelloader.ModelLoader.forModel(table, this)
|
|
89
90
|
},
|
|
@@ -94,7 +95,7 @@ schemaBuilderProto.drizzleInterface = function drizzleInterface(table, { select,
|
|
|
94
95
|
};
|
|
95
96
|
schemaBuilderProto.drizzleNode = function drizzleNode(table, { id: { column, ...idOptions }, name, variant, ...options }) {
|
|
96
97
|
var _this_nodeInterfaceRef, _this;
|
|
97
|
-
const tableConfig = this.
|
|
98
|
+
const tableConfig = (0, _config.getSchemaConfig)(this).schema[table];
|
|
98
99
|
const idColumn = typeof column === 'function' ? column(tableConfig.columns) : column;
|
|
99
100
|
const idColumns = Array.isArray(idColumn) ? idColumn : [
|
|
100
101
|
idColumn
|
|
@@ -177,7 +178,7 @@ schemaBuilderProto.drizzleInterfaceFields = function drizzleInterfaceFields(type
|
|
|
177
178
|
});
|
|
178
179
|
};
|
|
179
180
|
schemaBuilderProto.drizzleGraphQLOrderBy = function drizzleGraphQLOrderBy(table, type, options) {
|
|
180
|
-
var
|
|
181
|
+
var _getSchemaConfig_schema;
|
|
181
182
|
return this.addGraphQLInput(type, {
|
|
182
183
|
...options,
|
|
183
184
|
extensions: {
|
|
@@ -185,13 +186,13 @@ schemaBuilderProto.drizzleGraphQLOrderBy = function drizzleGraphQLOrderBy(table,
|
|
|
185
186
|
drizzleGraphQL: {
|
|
186
187
|
inputType: 'orderBy',
|
|
187
188
|
table,
|
|
188
|
-
tableConfig: (
|
|
189
|
+
tableConfig: (_getSchemaConfig_schema = (0, _config.getSchemaConfig)(this).schema) === null || _getSchemaConfig_schema === void 0 ? void 0 : _getSchemaConfig_schema[table]
|
|
189
190
|
}
|
|
190
191
|
}
|
|
191
192
|
});
|
|
192
193
|
};
|
|
193
194
|
schemaBuilderProto.drizzleGraphQLFilters = function drizzleGraphQLFilters(table, type, options) {
|
|
194
|
-
var
|
|
195
|
+
var _getSchemaConfig_schema;
|
|
195
196
|
return this.addGraphQLInput(type, {
|
|
196
197
|
...options,
|
|
197
198
|
extensions: {
|
|
@@ -199,13 +200,13 @@ schemaBuilderProto.drizzleGraphQLFilters = function drizzleGraphQLFilters(table,
|
|
|
199
200
|
drizzleGraphQL: {
|
|
200
201
|
inputType: 'filters',
|
|
201
202
|
table,
|
|
202
|
-
tableConfig: (
|
|
203
|
+
tableConfig: (_getSchemaConfig_schema = (0, _config.getSchemaConfig)(this).schema) === null || _getSchemaConfig_schema === void 0 ? void 0 : _getSchemaConfig_schema[table]
|
|
203
204
|
}
|
|
204
205
|
}
|
|
205
206
|
});
|
|
206
207
|
};
|
|
207
208
|
schemaBuilderProto.drizzleGraphQLInsert = function drizzleGraphQLInsert(table, type, options) {
|
|
208
|
-
var
|
|
209
|
+
var _getSchemaConfig_schema;
|
|
209
210
|
return this.addGraphQLInput(type, {
|
|
210
211
|
...options,
|
|
211
212
|
extensions: {
|
|
@@ -213,13 +214,13 @@ schemaBuilderProto.drizzleGraphQLInsert = function drizzleGraphQLInsert(table, t
|
|
|
213
214
|
drizzleGraphQL: {
|
|
214
215
|
inputType: 'insert',
|
|
215
216
|
table,
|
|
216
|
-
tableConfig: (
|
|
217
|
+
tableConfig: (_getSchemaConfig_schema = (0, _config.getSchemaConfig)(this).schema) === null || _getSchemaConfig_schema === void 0 ? void 0 : _getSchemaConfig_schema[table]
|
|
217
218
|
}
|
|
218
219
|
}
|
|
219
220
|
});
|
|
220
221
|
};
|
|
221
222
|
schemaBuilderProto.drizzleGraphQLUpdate = function drizzleGraphQLUpdate(table, type, options) {
|
|
222
|
-
var
|
|
223
|
+
var _getSchemaConfig_schema;
|
|
223
224
|
return this.addGraphQLInput(type, {
|
|
224
225
|
...options,
|
|
225
226
|
extensions: {
|
|
@@ -227,7 +228,7 @@ schemaBuilderProto.drizzleGraphQLUpdate = function drizzleGraphQLUpdate(table, t
|
|
|
227
228
|
drizzleGraphQL: {
|
|
228
229
|
inputType: 'update',
|
|
229
230
|
table,
|
|
230
|
-
tableConfig: (
|
|
231
|
+
tableConfig: (_getSchemaConfig_schema = (0, _config.getSchemaConfig)(this).schema) === null || _getSchemaConfig_schema === void 0 ? void 0 : _getSchemaConfig_schema[table]
|
|
231
232
|
}
|
|
232
233
|
}
|
|
233
234
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/schema-builder.ts"],"names":["schemaBuilderProto","SchemaBuilder","prototype","drizzleObject","table","select","fields","options","name","variant","ref","DrizzleObjectRef","getRefFromModel","objectType","extensions","pothosDrizzleModel","pothosDrizzleTable","
|
|
1
|
+
{"version":3,"sources":["../../src/schema-builder.ts"],"names":["schemaBuilderProto","SchemaBuilder","prototype","drizzleObject","table","select","fields","options","getSchemaConfig","name","variant","ref","DrizzleObjectRef","getRefFromModel","objectType","extensions","pothosDrizzleModel","pothosDrizzleTable","schema","pothosDrizzleSelect","pothosDrizzleLoader","ModelLoader","forModel","DrizzleObjectFieldBuilder","undefined","drizzleInterface","DrizzleInterfaceRef","interfaceType","drizzleNode","id","column","idOptions","tableConfig","idColumn","columns","idColumns","Array","isArray","interfaceRef","nodeInterfaceRef","resolve","getColumnSerializer","idParser","getColumnParser","typeName","nodeRef","DrizzleNodeRef","modelLoader","PothosError","extendedOptions","interfaces","loadWithoutCache","context","info","record","loadSelectionForField","brandWithType","addInterfaces","configStore","onTypeConfig","nodeConfig","objectField","relayOptions","idFieldName","t","globalID","idFieldOptions","nullable","args","parent","completeValue","type","associateParamWithRef","drizzleObjectField","fieldName","field","addFields","tableName","drizzleInterfaceField","drizzleObjectFields","drizzleInterfaceFields","drizzleGraphQLOrderBy","addGraphQLInput","drizzleGraphQL","inputType","drizzleGraphQLFilters","drizzleGraphQLInsert","drizzleGraphQLUpdate"],"mappings":"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"}
|
package/lib/src/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/types.ts"],"names":["drizzleTableName","Symbol","for"],"mappings":";;;;+
|
|
1
|
+
{"version":3,"sources":["../../src/types.ts"],"names":["drizzleTableName","Symbol","for"],"mappings":";;;;+BA8DaA;;;eAAAA;;;AAAN,MAAMA,mBAAmBC,OAAOC,GAAG,CAAC"}
|
package/lib/src/utils/config.js
CHANGED
|
@@ -2,14 +2,34 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
getClient: function() {
|
|
13
|
+
return getClient;
|
|
14
|
+
},
|
|
15
|
+
getSchemaConfig: function() {
|
|
8
16
|
return getSchemaConfig;
|
|
9
17
|
}
|
|
10
18
|
});
|
|
11
19
|
const _core = require("@pothos/core");
|
|
12
|
-
const
|
|
20
|
+
const _drizzleorm = require("drizzle-orm");
|
|
21
|
+
const configCache = (0, _core.createContextCache)((builder)=>{
|
|
22
|
+
let config;
|
|
23
|
+
if (builder.options.drizzle.schema) {
|
|
24
|
+
const tablesConfig = (0, _drizzleorm.extractTablesRelationalConfig)(builder.options.drizzle.schema, _drizzleorm.createTableRelationsHelpers);
|
|
25
|
+
config = {
|
|
26
|
+
fullSchema: builder.options.drizzle.schema,
|
|
27
|
+
schema: tablesConfig.tables,
|
|
28
|
+
tableNamesMap: tablesConfig.tableNamesMap
|
|
29
|
+
};
|
|
30
|
+
} else {
|
|
31
|
+
config = builder.options.drizzle.client._;
|
|
32
|
+
}
|
|
13
33
|
const dbToSchema = Object.values(config.schema).reduce((acc, table)=>{
|
|
14
34
|
acc[table.dbName] = table;
|
|
15
35
|
return acc;
|
|
@@ -19,8 +39,19 @@ const cache = (0, _core.createContextCache)((config)=>{
|
|
|
19
39
|
...config
|
|
20
40
|
};
|
|
21
41
|
});
|
|
42
|
+
const clientCache = (0, _core.createContextCache)((builder)=>{
|
|
43
|
+
const clientConfig = builder.options.drizzle.client;
|
|
44
|
+
const getClient = typeof clientConfig === 'function' ? (0, _core.createContextCache)((ctx)=>clientConfig(ctx)) : (_ctx)=>clientConfig;
|
|
45
|
+
return (0, _core.createContextCache)((context)=>{
|
|
46
|
+
const client = getClient(context);
|
|
47
|
+
return client;
|
|
48
|
+
});
|
|
49
|
+
});
|
|
22
50
|
function getSchemaConfig(builder) {
|
|
23
|
-
return
|
|
51
|
+
return configCache(builder);
|
|
52
|
+
}
|
|
53
|
+
function getClient(builder, context) {
|
|
54
|
+
return clientCache(builder)(context);
|
|
24
55
|
}
|
|
25
56
|
|
|
26
57
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/config.ts"],"names":["getSchemaConfig","
|
|
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","clientCache","clientConfig","ctx","_ctx","context"],"mappings":";;;;;;;;;;;IAkEgBA,SAAS;eAATA;;IANAC,eAAe;eAAfA;;;sBA5DqC;4BAO9C;AAMP,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,OAAO;QACLJ;QACA,GAAGZ,MAAM;IACX;AACF;AAGF,MAAMmB,cAAcrB,IAAAA,wBAAkB,EAAC,CAACC;IACtC,MAAMqB,eAAerB,QAAQE,OAAO,CAACC,OAAO,CAACQ,MAAM;IACnD,MAAMf,YACJ,OAAOyB,iBAAiB,aACpBtB,IAAAA,wBAAkB,EAAC,CAACuB,MAAQD,aAAaC,QACzC,CAACC,OAAiBF;IAExB,OAAOtB,IAAAA,wBAAkB,EAAC,CAACyB;QACzB,MAAMb,SAASf,UAAU4B;QAEzB,OAAOb;IACT;AACF;AAEO,SAASd,gBACdG,OAA+C;IAE/C,OAAOF,YAAYE;AACrB;AAEO,SAASJ,UACdI,OAA+C,EAC/CwB,OAAe;IAEf,OAAOJ,YAAYpB,SAAkBwB;AACvC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pothos/plugin-drizzle",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "A Pothos plugin for drizzle",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./dts/index.d.ts",
|
|
@@ -46,10 +46,10 @@
|
|
|
46
46
|
"graphql-scalars": "^1.23.0",
|
|
47
47
|
"graphql-tag": "^2.12.6",
|
|
48
48
|
"postgres": "^3.4.4",
|
|
49
|
-
"@pothos/plugin-add-graphql": "4.1.0",
|
|
50
49
|
"@pothos/core": "4.1.0",
|
|
51
|
-
"@pothos/plugin-relay": "4.1.0",
|
|
52
50
|
"@pothos/plugin-scope-auth": "4.1.0",
|
|
51
|
+
"@pothos/plugin-relay": "4.1.0",
|
|
52
|
+
"@pothos/plugin-add-graphql": "4.1.0",
|
|
53
53
|
"@pothos/plugin-with-input": "4.1.0",
|
|
54
54
|
"@pothos/test-utils": "2.1.0"
|
|
55
55
|
},
|
|
@@ -32,6 +32,7 @@ import type {
|
|
|
32
32
|
TypesForRelation,
|
|
33
33
|
VariantFieldOptions,
|
|
34
34
|
} from './types';
|
|
35
|
+
import { getSchemaConfig } from './utils/config';
|
|
35
36
|
import {
|
|
36
37
|
drizzleCursorConnectionQuery,
|
|
37
38
|
getCursorFormatter,
|
|
@@ -195,10 +196,12 @@ export class DrizzleObjectFieldBuilder<
|
|
|
195
196
|
connectionOptions = {},
|
|
196
197
|
edgeOptions = {},
|
|
197
198
|
) {
|
|
198
|
-
const relationField =
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
199
|
+
const relationField = getSchemaConfig(this.builder).schema?.[this.table].relations[
|
|
200
|
+
name as string
|
|
201
|
+
];
|
|
202
|
+
const relatedModel = getSchemaConfig(this.builder).schema?.[
|
|
203
|
+
relationField?.referencedTableName!
|
|
204
|
+
]!;
|
|
202
205
|
|
|
203
206
|
if (!relationField) {
|
|
204
207
|
throw new PothosSchemaError(
|
|
@@ -381,8 +384,9 @@ export class DrizzleObjectFieldBuilder<
|
|
|
381
384
|
>
|
|
382
385
|
): FieldRef<Types, TypesForRelation<Types, TableConfig['relations'][Field]>, 'Object'> {
|
|
383
386
|
const [options = {} as never] = allArgs;
|
|
384
|
-
const relationField =
|
|
385
|
-
|
|
387
|
+
const relationField = getSchemaConfig(this.builder).schema?.[this.table].relations[
|
|
388
|
+
name as string
|
|
389
|
+
];
|
|
386
390
|
|
|
387
391
|
if (!relationField) {
|
|
388
392
|
throw new PothosSchemaError(
|
package/src/field-builder.ts
CHANGED
|
@@ -125,10 +125,9 @@ fieldBuilderProto.drizzleConnection = function drizzleConnection<
|
|
|
125
125
|
context: {},
|
|
126
126
|
info: GraphQLResolveInfo,
|
|
127
127
|
) => {
|
|
128
|
-
const drizzleModel =
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
]!;
|
|
128
|
+
const drizzleModel = getSchemaConfig(this.builder).schema?.[
|
|
129
|
+
typeof type === 'string' ? type : (ref as DrizzleRef<SchemaTypes>).tableName
|
|
130
|
+
]!;
|
|
132
131
|
|
|
133
132
|
return resolveDrizzleCursorConnection(
|
|
134
133
|
drizzleModel,
|
package/src/model-loader.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { type SchemaTypes, createContextCache } from '@pothos/core';
|
|
2
2
|
import { type Column, type TableRelationalConfig, inArray, sql } from 'drizzle-orm';
|
|
3
3
|
import type { GraphQLResolveInfo } from 'graphql';
|
|
4
|
-
import
|
|
4
|
+
import type { DrizzleClient } from './types';
|
|
5
|
+
import { type PothosDrizzleSchemaConfig, getClient, getSchemaConfig } from './utils/config';
|
|
5
6
|
import { cacheKey, setLoaderMappings } from './utils/loader-map';
|
|
6
7
|
import { selectionStateFromInfo, stateFromInfo } from './utils/map-query';
|
|
7
8
|
import {
|
|
@@ -35,6 +36,7 @@ export class ModelLoader {
|
|
|
35
36
|
table: TableRelationalConfig;
|
|
36
37
|
columns: Column[];
|
|
37
38
|
selectSQL;
|
|
39
|
+
client: DrizzleClient;
|
|
38
40
|
|
|
39
41
|
constructor(
|
|
40
42
|
context: object,
|
|
@@ -52,6 +54,8 @@ export class ModelLoader {
|
|
|
52
54
|
this.columns.length > 1
|
|
53
55
|
? sql`(${sql.join(this.columns, sql`, `)})`
|
|
54
56
|
: this.columns[0].getSQL();
|
|
57
|
+
|
|
58
|
+
this.client = getClient(builder, context);
|
|
55
59
|
}
|
|
56
60
|
|
|
57
61
|
static forModel<Types extends SchemaTypes>(
|
|
@@ -166,7 +170,7 @@ export class ModelLoader {
|
|
|
166
170
|
nextTick.promise
|
|
167
171
|
.then(() => {
|
|
168
172
|
const api = (
|
|
169
|
-
this.
|
|
173
|
+
this.client.query as Record<
|
|
170
174
|
string,
|
|
171
175
|
{ findMany: (...args: unknown[]) => Promise<Record<string, unknown>[]> }
|
|
172
176
|
>
|
package/src/schema-builder.ts
CHANGED
|
@@ -16,6 +16,7 @@ import { ModelLoader } from './model-loader';
|
|
|
16
16
|
import { DrizzleNodeRef } from './node-ref';
|
|
17
17
|
import { DrizzleObjectRef } from './object-ref';
|
|
18
18
|
import type { DrizzleGraphQLInputExtensions, DrizzleNodeOptions } from './types';
|
|
19
|
+
import { getSchemaConfig } from './utils/config';
|
|
19
20
|
import { getColumnParser, getColumnSerializer } from './utils/cursors';
|
|
20
21
|
import { getRefFromModel } from './utils/refs';
|
|
21
22
|
|
|
@@ -35,7 +36,7 @@ schemaBuilderProto.drizzleObject = function drizzleObject(table, { select, field
|
|
|
35
36
|
extensions: {
|
|
36
37
|
...options.extensions,
|
|
37
38
|
pothosDrizzleModel: table,
|
|
38
|
-
pothosDrizzleTable: this.
|
|
39
|
+
pothosDrizzleTable: getSchemaConfig(this).schema?.[table],
|
|
39
40
|
pothosDrizzleSelect: select ?? {},
|
|
40
41
|
pothosDrizzleLoader: ModelLoader.forModel(table, this),
|
|
41
42
|
},
|
|
@@ -63,7 +64,7 @@ schemaBuilderProto.drizzleInterface = function drizzleInterface(
|
|
|
63
64
|
extensions: {
|
|
64
65
|
...options.extensions,
|
|
65
66
|
pothosDrizzleModel: table,
|
|
66
|
-
pothosDrizzleTable: this.
|
|
67
|
+
pothosDrizzleTable: getSchemaConfig(this).schema?.[table],
|
|
67
68
|
pothosDrizzleSelect: select ?? {},
|
|
68
69
|
pothosDrizzleLoader: ModelLoader.forModel(table, this),
|
|
69
70
|
},
|
|
@@ -88,7 +89,7 @@ schemaBuilderProto.drizzleNode = function drizzleNode(
|
|
|
88
89
|
...options
|
|
89
90
|
}: DrizzleNodeOptions<SchemaTypes, keyof SchemaTypes['DrizzleRelationSchema'], {}, {}, []>,
|
|
90
91
|
) {
|
|
91
|
-
const tableConfig = this.
|
|
92
|
+
const tableConfig = getSchemaConfig(this).schema![table];
|
|
92
93
|
const idColumn = typeof column === 'function' ? column(tableConfig.columns) : column;
|
|
93
94
|
const idColumns = Array.isArray(idColumn) ? idColumn : [idColumn];
|
|
94
95
|
const interfaceRef = this.nodeInterfaceRef?.();
|
|
@@ -214,7 +215,7 @@ schemaBuilderProto.drizzleGraphQLOrderBy = function drizzleGraphQLOrderBy(
|
|
|
214
215
|
drizzleGraphQL: {
|
|
215
216
|
inputType: 'orderBy',
|
|
216
217
|
table,
|
|
217
|
-
tableConfig: this.
|
|
218
|
+
tableConfig: getSchemaConfig(this).schema?.[table]!,
|
|
218
219
|
} satisfies DrizzleGraphQLInputExtensions,
|
|
219
220
|
},
|
|
220
221
|
});
|
|
@@ -240,7 +241,7 @@ schemaBuilderProto.drizzleGraphQLFilters = function drizzleGraphQLFilters(
|
|
|
240
241
|
drizzleGraphQL: {
|
|
241
242
|
inputType: 'filters',
|
|
242
243
|
table,
|
|
243
|
-
tableConfig: this.
|
|
244
|
+
tableConfig: getSchemaConfig(this).schema?.[table]!,
|
|
244
245
|
} satisfies DrizzleGraphQLInputExtensions,
|
|
245
246
|
},
|
|
246
247
|
});
|
|
@@ -266,7 +267,7 @@ schemaBuilderProto.drizzleGraphQLInsert = function drizzleGraphQLInsert(
|
|
|
266
267
|
drizzleGraphQL: {
|
|
267
268
|
inputType: 'insert',
|
|
268
269
|
table,
|
|
269
|
-
tableConfig: this.
|
|
270
|
+
tableConfig: getSchemaConfig(this).schema?.[table]!,
|
|
270
271
|
} satisfies DrizzleGraphQLInputExtensions,
|
|
271
272
|
},
|
|
272
273
|
});
|
|
@@ -292,7 +293,7 @@ schemaBuilderProto.drizzleGraphQLUpdate = function drizzleGraphQLUpdate(
|
|
|
292
293
|
drizzleGraphQL: {
|
|
293
294
|
inputType: 'update',
|
|
294
295
|
table,
|
|
295
|
-
tableConfig: this.
|
|
296
|
+
tableConfig: getSchemaConfig(this).schema?.[table]!,
|
|
296
297
|
} satisfies DrizzleGraphQLInputExtensions,
|
|
297
298
|
},
|
|
298
299
|
});
|
package/src/types.ts
CHANGED
|
@@ -41,11 +41,24 @@ import type { DrizzleRef } from './interface-ref';
|
|
|
41
41
|
import type { IndirectInclude } from './utils/map-query';
|
|
42
42
|
import type { SelectionMap } from './utils/selections';
|
|
43
43
|
|
|
44
|
-
export
|
|
45
|
-
|
|
44
|
+
export type DrizzleClient = {
|
|
45
|
+
_: Partial<RelationalSchemaConfig<TablesRelationalConfig>>;
|
|
46
|
+
query: {};
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
export type DrizzlePluginOptions<Types extends SchemaTypes> = {
|
|
46
50
|
maxConnectionSize?: number;
|
|
47
51
|
defaultConnectionSize?: number;
|
|
48
|
-
}
|
|
52
|
+
} & (
|
|
53
|
+
| {
|
|
54
|
+
client: DrizzleClient;
|
|
55
|
+
schema?: Record<string, unknown>;
|
|
56
|
+
}
|
|
57
|
+
| {
|
|
58
|
+
client: (ctx: Types['Context']) => DrizzleClient;
|
|
59
|
+
schema: Record<string, unknown>;
|
|
60
|
+
}
|
|
61
|
+
);
|
|
49
62
|
|
|
50
63
|
export const drizzleTableName = Symbol.for('Pothos.drizzleTableName');
|
|
51
64
|
|
package/src/utils/config.ts
CHANGED
|
@@ -1,15 +1,34 @@
|
|
|
1
1
|
import { type SchemaTypes, createContextCache } from '@pothos/core';
|
|
2
|
-
import
|
|
3
|
-
RelationalSchemaConfig,
|
|
4
|
-
TableRelationalConfig,
|
|
5
|
-
TablesRelationalConfig,
|
|
2
|
+
import {
|
|
3
|
+
type RelationalSchemaConfig,
|
|
4
|
+
type TableRelationalConfig,
|
|
5
|
+
type TablesRelationalConfig,
|
|
6
|
+
createTableRelationsHelpers,
|
|
7
|
+
extractTablesRelationalConfig,
|
|
6
8
|
} from 'drizzle-orm';
|
|
9
|
+
import type { DrizzleClient } from '../types';
|
|
7
10
|
|
|
8
11
|
export interface PothosDrizzleSchemaConfig extends RelationalSchemaConfig<TablesRelationalConfig> {
|
|
9
12
|
dbToSchema: Record<string, TableRelationalConfig>;
|
|
10
13
|
}
|
|
11
|
-
const
|
|
12
|
-
(
|
|
14
|
+
const configCache = createContextCache(
|
|
15
|
+
(builder: PothosSchemaTypes.SchemaBuilder<SchemaTypes>): PothosDrizzleSchemaConfig => {
|
|
16
|
+
let config: RelationalSchemaConfig<TablesRelationalConfig>;
|
|
17
|
+
if (builder.options.drizzle.schema) {
|
|
18
|
+
const tablesConfig = extractTablesRelationalConfig(
|
|
19
|
+
builder.options.drizzle.schema,
|
|
20
|
+
createTableRelationsHelpers,
|
|
21
|
+
);
|
|
22
|
+
config = {
|
|
23
|
+
fullSchema: builder.options.drizzle.schema,
|
|
24
|
+
schema: tablesConfig.tables,
|
|
25
|
+
tableNamesMap: tablesConfig.tableNamesMap,
|
|
26
|
+
};
|
|
27
|
+
} else {
|
|
28
|
+
config = (builder.options.drizzle.client as DrizzleClient)
|
|
29
|
+
._ as RelationalSchemaConfig<TablesRelationalConfig>;
|
|
30
|
+
}
|
|
31
|
+
|
|
13
32
|
const dbToSchema = Object.values(config.schema).reduce<Record<string, TableRelationalConfig>>(
|
|
14
33
|
(acc, table) => {
|
|
15
34
|
acc[table.dbName] = table;
|
|
@@ -25,8 +44,29 @@ const cache = createContextCache(
|
|
|
25
44
|
},
|
|
26
45
|
);
|
|
27
46
|
|
|
47
|
+
const clientCache = createContextCache((builder: PothosSchemaTypes.SchemaBuilder<SchemaTypes>) => {
|
|
48
|
+
const clientConfig = builder.options.drizzle.client;
|
|
49
|
+
const getClient =
|
|
50
|
+
typeof clientConfig === 'function'
|
|
51
|
+
? createContextCache((ctx) => clientConfig(ctx))
|
|
52
|
+
: (_ctx: object) => clientConfig;
|
|
53
|
+
|
|
54
|
+
return createContextCache((context: object) => {
|
|
55
|
+
const client = getClient(context);
|
|
56
|
+
|
|
57
|
+
return client;
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
|
|
28
61
|
export function getSchemaConfig<Types extends SchemaTypes>(
|
|
29
62
|
builder: PothosSchemaTypes.SchemaBuilder<Types>,
|
|
30
63
|
) {
|
|
31
|
-
return
|
|
64
|
+
return configCache(builder as never);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export function getClient<Types extends SchemaTypes>(
|
|
68
|
+
builder: PothosSchemaTypes.SchemaBuilder<Types>,
|
|
69
|
+
context: object,
|
|
70
|
+
) {
|
|
71
|
+
return clientCache(builder as never)(context);
|
|
32
72
|
}
|