@pothos/plugin-drizzle 0.8.1 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +92 -0
- package/TODO.md +25 -4
- package/dts/connection-helpers.d.ts +32 -0
- package/dts/connection-helpers.d.ts.map +1 -0
- package/dts/drizzle-field-builder.d.ts +18 -53
- package/dts/drizzle-field-builder.d.ts.map +1 -1
- package/dts/global-types.d.ts +22 -41
- package/dts/global-types.d.ts.map +1 -1
- package/dts/index.d.ts +4 -2
- package/dts/index.d.ts.map +1 -1
- package/dts/interface-ref.d.ts +3 -2
- package/dts/interface-ref.d.ts.map +1 -1
- package/dts/model-loader.d.ts +3 -2
- package/dts/model-loader.d.ts.map +1 -1
- package/dts/node-ref.d.ts +1 -1
- package/dts/node-ref.d.ts.map +1 -1
- package/dts/object-ref.d.ts +2 -2
- package/dts/object-ref.d.ts.map +1 -1
- package/dts/types.d.ts +61 -41
- package/dts/types.d.ts.map +1 -1
- package/dts/utils/config.d.ts +4 -3
- package/dts/utils/config.d.ts.map +1 -1
- package/dts/utils/cursors.d.ts +13 -7
- package/dts/utils/cursors.d.ts.map +1 -1
- package/dts/utils/drizzle-graphql.d.ts +0 -17
- package/dts/utils/drizzle-graphql.d.ts.map +1 -1
- package/dts/utils/map-query.d.ts.map +1 -1
- package/dts/utils/selections.d.ts +5 -5
- package/dts/utils/selections.d.ts.map +1 -1
- package/esm/connection-helpers.d.ts +34 -0
- package/esm/connection-helpers.d.ts.map +1 -0
- package/esm/connection-helpers.js +74 -0
- package/esm/connection-helpers.js.map +1 -0
- package/esm/drizzle-field-builder.d.ts +18 -73
- package/esm/drizzle-field-builder.d.ts.map +1 -1
- package/esm/drizzle-field-builder.js +25 -14
- package/esm/drizzle-field-builder.js.map +1 -1
- package/esm/field-builder.js +2 -3
- package/esm/field-builder.js.map +1 -1
- package/esm/global-types.d.ts +35 -60
- package/esm/global-types.d.ts.map +1 -1
- package/esm/global-types.js.map +1 -1
- package/esm/index.d.ts +4 -2
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +70 -61
- package/esm/index.js.map +1 -1
- package/esm/interface-ref.d.ts +3 -2
- package/esm/interface-ref.d.ts.map +1 -1
- package/esm/interface-ref.js.map +1 -1
- package/esm/model-loader.d.ts +3 -2
- package/esm/model-loader.d.ts.map +1 -1
- package/esm/model-loader.js +17 -10
- package/esm/model-loader.js.map +1 -1
- package/esm/node-ref.d.ts +1 -1
- package/esm/node-ref.d.ts.map +1 -1
- package/esm/object-ref.d.ts +2 -2
- package/esm/object-ref.d.ts.map +1 -1
- package/esm/schema-builder.js +111 -65
- package/esm/schema-builder.js.map +1 -1
- package/esm/types.d.ts +61 -41
- package/esm/types.d.ts.map +1 -1
- package/esm/types.js.map +1 -1
- package/esm/utils/config.d.ts +4 -3
- package/esm/utils/config.d.ts.map +1 -1
- package/esm/utils/config.js +32 -15
- package/esm/utils/config.js.map +1 -1
- package/esm/utils/cursors.d.ts +13 -7
- package/esm/utils/cursors.d.ts.map +1 -1
- package/esm/utils/cursors.js +137 -63
- package/esm/utils/cursors.js.map +1 -1
- package/esm/utils/drizzle-graphql.d.ts +0 -17
- package/esm/utils/drizzle-graphql.d.ts.map +1 -1
- package/esm/utils/drizzle-graphql.js +230 -198
- package/esm/utils/drizzle-graphql.js.map +1 -1
- package/esm/utils/map-query.d.ts.map +1 -1
- package/esm/utils/map-query.js +9 -5
- package/esm/utils/map-query.js.map +1 -1
- package/esm/utils/selections.d.ts +5 -5
- package/esm/utils/selections.d.ts.map +1 -1
- package/esm/utils/selections.js +19 -18
- package/esm/utils/selections.js.map +1 -1
- package/lib/connection-helpers.js +85 -0
- package/lib/connection-helpers.js.map +1 -0
- package/lib/drizzle-field-builder.js +24 -13
- package/lib/drizzle-field-builder.js.map +1 -1
- package/lib/field-builder.js +2 -3
- package/lib/field-builder.js.map +1 -1
- package/lib/index.js +75 -60
- package/lib/index.js.map +1 -1
- package/lib/interface-ref.js.map +1 -1
- package/lib/model-loader.js +17 -10
- package/lib/model-loader.js.map +1 -1
- package/lib/schema-builder.js +111 -65
- package/lib/schema-builder.js.map +1 -1
- package/lib/types.js.map +1 -1
- package/lib/utils/config.js +31 -14
- package/lib/utils/config.js.map +1 -1
- package/lib/utils/cursors.js +135 -63
- package/lib/utils/cursors.js.map +1 -1
- package/lib/utils/drizzle-graphql.js +230 -221
- package/lib/utils/drizzle-graphql.js.map +1 -1
- package/lib/utils/map-query.js +9 -5
- package/lib/utils/map-query.js.map +1 -1
- package/lib/utils/selections.js +18 -17
- package/lib/utils/selections.js.map +1 -1
- package/package.json +14 -14
- package/src/connection-helpers.ts +184 -0
- package/src/drizzle-field-builder.ts +30 -26
- package/src/field-builder.ts +4 -7
- package/src/global-types.ts +112 -119
- package/src/index.ts +90 -68
- package/src/interface-ref.ts +7 -3
- package/src/model-loader.ts +32 -17
- package/src/node-ref.ts +1 -1
- package/src/object-ref.ts +2 -2
- package/src/schema-builder.ts +114 -111
- package/src/types.ts +95 -62
- package/src/utils/config.ts +39 -30
- package/src/utils/cursors.ts +134 -101
- package/src/utils/drizzle-graphql.ts +273 -274
- package/src/utils/map-query.ts +19 -7
- package/src/utils/selections.ts +34 -28
package/lib/index.js
CHANGED
|
@@ -17,29 +17,22 @@ _export(exports, {
|
|
|
17
17
|
},
|
|
18
18
|
drizzleClientCache: function() {
|
|
19
19
|
return _config.drizzleClientCache;
|
|
20
|
+
},
|
|
21
|
+
drizzleConnectionHelpers: function() {
|
|
22
|
+
return _connectionhelpers.drizzleConnectionHelpers;
|
|
23
|
+
},
|
|
24
|
+
drizzleTableName: function() {
|
|
25
|
+
return _types.drizzleTableName;
|
|
20
26
|
}
|
|
21
27
|
});
|
|
22
28
|
require("./global-types");
|
|
23
29
|
require("./field-builder");
|
|
24
30
|
require("./schema-builder");
|
|
25
31
|
const _core = /*#__PURE__*/ _interop_require_wildcard(require("@pothos/core"));
|
|
26
|
-
const _drizzlegraphql = require("./utils/drizzle-graphql");
|
|
27
32
|
const _loadermap = require("./utils/loader-map");
|
|
28
33
|
const _config = require("./utils/config");
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
if (key in obj) {
|
|
32
|
-
Object.defineProperty(obj, key, {
|
|
33
|
-
value: value,
|
|
34
|
-
enumerable: true,
|
|
35
|
-
configurable: true,
|
|
36
|
-
writable: true
|
|
37
|
-
});
|
|
38
|
-
} else {
|
|
39
|
-
obj[key] = value;
|
|
40
|
-
}
|
|
41
|
-
return obj;
|
|
42
|
-
}
|
|
34
|
+
const _connectionhelpers = require("./connection-helpers");
|
|
35
|
+
const _types = _export_star(require("./types"), exports);
|
|
43
36
|
function _export_star(from, to) {
|
|
44
37
|
Object.keys(from).forEach(function(k) {
|
|
45
38
|
if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
|
|
@@ -97,55 +90,84 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
97
90
|
const pluginName = 'drizzle';
|
|
98
91
|
const _default = pluginName;
|
|
99
92
|
class PothosDrizzlePlugin extends _core.BasePlugin {
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
const
|
|
111
|
-
|
|
112
|
-
|
|
93
|
+
// private mappingCache = new Map<
|
|
94
|
+
// string,
|
|
95
|
+
// InputTypeFieldsMapping<Types, DrizzleGraphQLInputExtensions>
|
|
96
|
+
// >();
|
|
97
|
+
onTypeConfig(typeConfig) {
|
|
98
|
+
var _typeConfig_extensions;
|
|
99
|
+
if (typeConfig.kind !== 'Object' && typeConfig.kind !== 'Interface') {
|
|
100
|
+
return typeConfig;
|
|
101
|
+
}
|
|
102
|
+
let model = (_typeConfig_extensions = typeConfig.extensions) === null || _typeConfig_extensions === void 0 ? void 0 : _typeConfig_extensions.pothosDrizzleModel;
|
|
103
|
+
for (const iface of typeConfig.interfaces){
|
|
104
|
+
var _this_buildCache_getTypeConfig_extensions;
|
|
105
|
+
const interfaceModel = (_this_buildCache_getTypeConfig_extensions = this.buildCache.getTypeConfig(iface, 'Interface').extensions) === null || _this_buildCache_getTypeConfig_extensions === void 0 ? void 0 : _this_buildCache_getTypeConfig_extensions.pothosDrizzleModel;
|
|
106
|
+
if (interfaceModel) {
|
|
107
|
+
if (model && model !== interfaceModel) {
|
|
108
|
+
throw new _core.PothosSchemaError(`DrizzleObjects must be based on the same prisma model as any DrizzleInterfaces they extend. ${typeConfig.name} uses ${model} and ${iface.name} uses ${interfaceModel}`);
|
|
109
|
+
}
|
|
110
|
+
model = interfaceModel;
|
|
113
111
|
}
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
case 'insert':
|
|
121
|
-
return (0, _drizzlegraphql.remapFromGraphQLSingleInput)(input, tableConfig);
|
|
122
|
-
case 'update':
|
|
123
|
-
return (0, _drizzlegraphql.remapFromGraphQLSingleInput)(input, tableConfig);
|
|
124
|
-
default:
|
|
125
|
-
throw new Error(`Unknown drizzle input type: ${inputType}`);
|
|
112
|
+
}
|
|
113
|
+
return {
|
|
114
|
+
...typeConfig,
|
|
115
|
+
extensions: {
|
|
116
|
+
...typeConfig.extensions,
|
|
117
|
+
pothosDrizzleModel: model
|
|
126
118
|
}
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
onOutputFieldConfig(fieldConfig) {
|
|
122
|
+
var _fieldConfig_extensions;
|
|
123
|
+
// const argMappings = mapInputFields<Types, DrizzleGraphQLInputExtensions>(
|
|
124
|
+
// fieldConfig.args,
|
|
125
|
+
// this.buildCache,
|
|
126
|
+
// (inputField) => {
|
|
127
|
+
// if (inputField.type.kind === 'InputObject') {
|
|
128
|
+
// const config = this.buildCache.getTypeConfig(inputField.type.ref);
|
|
129
|
+
// return (config.extensions?.drizzleGraphQL as DrizzleGraphQLInputExtensions) ?? null;
|
|
130
|
+
// }
|
|
131
|
+
// return null;
|
|
132
|
+
// },
|
|
133
|
+
// this.mappingCache,
|
|
134
|
+
// );
|
|
135
|
+
// const argMapper = argMappings
|
|
136
|
+
// ? createInputValueMapper(argMappings, (input, mappings) => {
|
|
137
|
+
// if (!mappings.value) {
|
|
138
|
+
// return input;
|
|
139
|
+
// }
|
|
140
|
+
// const { table, tableConfig, inputType } = mappings.value;
|
|
141
|
+
// switch (inputType) {
|
|
142
|
+
// case 'orderBy':
|
|
143
|
+
// return extractOrderBy(tableConfig, input as never);
|
|
144
|
+
// case 'filters':
|
|
145
|
+
// return extractFilters(tableConfig, table, input as never);
|
|
146
|
+
// case 'insert':
|
|
147
|
+
// return remapFromGraphQLSingleInput(input as never, tableConfig);
|
|
148
|
+
// case 'update':
|
|
149
|
+
// return remapFromGraphQLSingleInput(input as never, tableConfig);
|
|
150
|
+
// default:
|
|
151
|
+
// throw new Error(`Unknown drizzle input type: ${inputType}`);
|
|
152
|
+
// }
|
|
153
|
+
// })
|
|
154
|
+
// : null;
|
|
155
|
+
// const argMappers: typeof fieldConfig.argMappers = argMapper
|
|
156
|
+
// ? [...(fieldConfig.argMappers ?? []), (args) => argMapper(args, undefined)]
|
|
157
|
+
// : fieldConfig.argMappers;
|
|
158
|
+
if (fieldConfig.kind === 'DrizzleObject' && fieldConfig.pothosOptions.select && !((_fieldConfig_extensions = fieldConfig.extensions) === null || _fieldConfig_extensions === void 0 ? void 0 : _fieldConfig_extensions.pothosDrizzleSelect)) {
|
|
134
159
|
const { select } = fieldConfig.pothosOptions;
|
|
135
160
|
return {
|
|
136
161
|
...fieldConfig,
|
|
137
|
-
argMappers,
|
|
162
|
+
// argMappers,
|
|
138
163
|
extensions: {
|
|
139
164
|
...fieldConfig.extensions,
|
|
140
|
-
pothosDrizzleSelect: typeof select === 'function' ? (args, ctx, nestedQuery)=>(
|
|
141
|
-
select: select(args, ctx, nestedQuery)
|
|
142
|
-
}) : select
|
|
165
|
+
pothosDrizzleSelect: typeof select === 'function' ? (args, ctx, nestedQuery)=>select(args, ctx, nestedQuery) : select
|
|
143
166
|
}
|
|
144
167
|
};
|
|
145
168
|
}
|
|
146
169
|
return {
|
|
147
|
-
...fieldConfig
|
|
148
|
-
argMappers
|
|
170
|
+
...fieldConfig
|
|
149
171
|
};
|
|
150
172
|
}
|
|
151
173
|
wrapResolve(resolver, fieldConfig) {
|
|
@@ -184,16 +206,9 @@ class PothosDrizzlePlugin extends _core.BasePlugin {
|
|
|
184
206
|
(0, _loadermap.setLoaderMappings)(context, info, mapping);
|
|
185
207
|
return resolver(parent, args, context, info);
|
|
186
208
|
}
|
|
187
|
-
const primaryKeys = parentConfig.extensions.pothosDrizzleTable.primaryKey;
|
|
188
|
-
if (!primaryKeys || primaryKeys.length === 0) {
|
|
189
|
-
throw new Error(`Field ${fieldConfig.name} not resolved in initial query and no primary key found for type ${parentConfig.name}`);
|
|
190
|
-
}
|
|
191
209
|
return modelLoader(context).loadSelection(info, parent).then((result)=>resolver(result, args, context, info));
|
|
192
210
|
};
|
|
193
211
|
}
|
|
194
|
-
constructor(...args){
|
|
195
|
-
super(...args), _define_property(this, "mappingCache", new Map());
|
|
196
|
-
}
|
|
197
212
|
}
|
|
198
213
|
_core.default.registerPlugin(pluginName, PothosDrizzlePlugin, {});
|
|
199
214
|
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":["PothosDrizzlePlugin","drizzleClientCache","
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":["PothosDrizzlePlugin","drizzleClientCache","drizzleConnectionHelpers","drizzleTableName","pluginName","BasePlugin","onTypeConfig","typeConfig","kind","model","extensions","pothosDrizzleModel","iface","interfaces","interfaceModel","buildCache","getTypeConfig","PothosSchemaError","name","onOutputFieldConfig","fieldConfig","pothosOptions","select","pothosDrizzleSelect","args","ctx","nestedQuery","wrapResolve","resolver","parentConfig","parentType","parentTypes","Set","interfaceConfig","add","modelLoader","pothosDrizzleLoader","Error","parent","context","info","mapping","getLoaderMapping","path","setLoaderMappings","loadSelection","then","result","SchemaBuilder","registerPlugin"],"mappings":"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"}
|
package/lib/interface-ref.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/interface-ref.ts"],"names":["DrizzleInterfaceRef","drizzleTableKey","InterfaceRef","constructor","name","tableName"],"mappings":";;;;+
|
|
1
|
+
{"version":3,"sources":["../src/interface-ref.ts"],"names":["DrizzleInterfaceRef","drizzleTableKey","InterfaceRef","constructor","name","tableName"],"mappings":";;;;+BAaaA;;;eAAAA;;;sBAbkC;2BAEQ;;;;;;;;;;;;;;IAgBpDC,mBAAAA,0BAAe;AALX,MAAMD,4BAIHE,kBAAY;IAKpBC,YAAYC,IAAY,EAAEC,SAAiB,CAAE;QAC3C,KAAK,CAACD,OALR,uBAACH,kBAAD,KAAA,IAEAI,uBAAAA,aAAAA,KAAAA;QAKE,IAAI,CAACA,SAAS,GAAGA;IACnB;AACF"}
|
package/lib/model-loader.js
CHANGED
|
@@ -47,7 +47,7 @@ class ModelLoader {
|
|
|
47
47
|
const selection = (0, _mapquery.selectionStateFromInfo)(this.config, this.context, info);
|
|
48
48
|
this.queryCache.set(key, {
|
|
49
49
|
selection,
|
|
50
|
-
query: (0, _selections.selectionToQuery)(selection)
|
|
50
|
+
query: (0, _selections.selectionToQuery)(this.config, selection)
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
53
|
return this.queryCache.get(key);
|
|
@@ -63,7 +63,7 @@ class ModelLoader {
|
|
|
63
63
|
});
|
|
64
64
|
this.queryCache.set(key, {
|
|
65
65
|
selection,
|
|
66
|
-
query: (0, _selections.selectionToQuery)(selection)
|
|
66
|
+
query: (0, _selections.selectionToQuery)(this.config, selection)
|
|
67
67
|
});
|
|
68
68
|
}
|
|
69
69
|
return this.queryCache.get(key);
|
|
@@ -117,14 +117,16 @@ class ModelLoader {
|
|
|
117
117
|
this.staged.delete(entry);
|
|
118
118
|
const api = client.query[this.modelName];
|
|
119
119
|
const query = api.findMany({
|
|
120
|
-
...(0, _selections.selectionToQuery)(selection),
|
|
121
|
-
where:
|
|
122
|
-
|
|
123
|
-
|
|
120
|
+
...(0, _selections.selectionToQuery)(this.config, selection),
|
|
121
|
+
where: {
|
|
122
|
+
RAW: (table)=>(0, _drizzleorm.inArray)(this.selectSQL(table), [
|
|
123
|
+
...entry.models.keys()
|
|
124
|
+
].map((model)=>this.sqlForModel(model)))
|
|
125
|
+
}
|
|
124
126
|
});
|
|
125
127
|
query.then((results)=>{
|
|
126
128
|
for (const [model, promise] of entry.models.entries()){
|
|
127
|
-
const result = results.find((row)=>this.
|
|
129
|
+
const result = results.find((row)=>this.primaryKey.every((key)=>row[key.name] === model[key.name]));
|
|
128
130
|
if (result) {
|
|
129
131
|
promise.resolve(result !== null && result !== void 0 ? result : null);
|
|
130
132
|
} else {
|
|
@@ -153,14 +155,19 @@ class ModelLoader {
|
|
|
153
155
|
_define_property(this, "config", void 0);
|
|
154
156
|
_define_property(this, "table", void 0);
|
|
155
157
|
_define_property(this, "columns", void 0);
|
|
158
|
+
_define_property(this, "primaryKey", void 0);
|
|
156
159
|
_define_property(this, "selectSQL", void 0);
|
|
157
160
|
this.context = context;
|
|
158
161
|
this.builder = builder;
|
|
159
162
|
this.modelName = modelName;
|
|
160
163
|
this.config = (0, _config.getSchemaConfig)(builder);
|
|
161
|
-
this.table = this.config.
|
|
162
|
-
this.
|
|
163
|
-
this.
|
|
164
|
+
this.table = this.config.relations.tablesConfig[modelName];
|
|
165
|
+
this.primaryKey = this.config.getPrimaryKey(modelName);
|
|
166
|
+
this.columns = columns !== null && columns !== void 0 ? columns : this.primaryKey;
|
|
167
|
+
this.selectSQL = (table)=>{
|
|
168
|
+
const columns = this.columns.map((column)=>Object.values(table).find((tblColumn)=>'columnType' in tblColumn && tblColumn.name === column.name));
|
|
169
|
+
return columns.length > 1 ? (0, _drizzleorm.sql)`(${_drizzleorm.sql.join(columns, (0, _drizzleorm.sql)`, `)})` : columns[0].getSQL();
|
|
170
|
+
};
|
|
164
171
|
}
|
|
165
172
|
}
|
|
166
173
|
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","client","getClient","then","delete","api","findMany","where","inArray","selectSQL","keys","results","entries","find","row","
|
|
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","delete","api","findMany","where","RAW","table","inArray","selectSQL","keys","results","entries","find","row","primaryKey","every","resolve","reject","err","catch","setTimeout","constructor","Set","getSchemaConfig","relations","tablesConfig","getPrimaryKey","column","Object","tblColumn","sql","join","getSQL","resolveFn","rejectFn","Promise"],"mappings":"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"}
|
package/lib/schema-builder.js
CHANGED
|
@@ -54,7 +54,6 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
54
54
|
}
|
|
55
55
|
const schemaBuilderProto = _core.default.prototype;
|
|
56
56
|
schemaBuilderProto.drizzleObject = function drizzleObject(table, { select, fields, ...options }) {
|
|
57
|
-
var _getSchemaConfig_schema;
|
|
58
57
|
var _options_variant, _ref;
|
|
59
58
|
const name = (_ref = (_options_variant = options.variant) !== null && _options_variant !== void 0 ? _options_variant : options.name) !== null && _ref !== void 0 ? _ref : table;
|
|
60
59
|
const ref = options.variant ? new _objectref.DrizzleObjectRef(options.variant, name) : (0, _refs.getRefFromModel)(table, this, 'object');
|
|
@@ -64,7 +63,7 @@ schemaBuilderProto.drizzleObject = function drizzleObject(table, { select, field
|
|
|
64
63
|
extensions: {
|
|
65
64
|
...options.extensions,
|
|
66
65
|
pothosDrizzleModel: table,
|
|
67
|
-
pothosDrizzleTable: (
|
|
66
|
+
pothosDrizzleTable: (0, _config.getSchemaConfig)(this).relations.tablesConfig[table],
|
|
68
67
|
pothosDrizzleSelect: select !== null && select !== void 0 ? select : {},
|
|
69
68
|
pothosDrizzleLoader: _modelloader.ModelLoader.forModel(table, this)
|
|
70
69
|
},
|
|
@@ -74,17 +73,15 @@ schemaBuilderProto.drizzleObject = function drizzleObject(table, { select, field
|
|
|
74
73
|
return ref;
|
|
75
74
|
};
|
|
76
75
|
schemaBuilderProto.drizzleInterface = function drizzleInterface(table, { select, fields, ...options }) {
|
|
77
|
-
var _getSchemaConfig_schema;
|
|
78
76
|
var _options_name;
|
|
79
77
|
const name = (_options_name = options.name) !== null && _options_name !== void 0 ? _options_name : table;
|
|
80
|
-
const ref =
|
|
81
|
-
ref.name = name !== null && name !== void 0 ? name : table;
|
|
78
|
+
const ref = new _interfaceref.DrizzleInterfaceRef(name, table);
|
|
82
79
|
this.interfaceType(ref, {
|
|
83
80
|
...options,
|
|
84
81
|
extensions: {
|
|
85
82
|
...options.extensions,
|
|
86
83
|
pothosDrizzleModel: table,
|
|
87
|
-
pothosDrizzleTable: (
|
|
84
|
+
pothosDrizzleTable: (0, _config.getSchemaConfig)(this).relations.tablesConfig[table],
|
|
88
85
|
pothosDrizzleSelect: select !== null && select !== void 0 ? select : {},
|
|
89
86
|
pothosDrizzleLoader: _modelloader.ModelLoader.forModel(table, this)
|
|
90
87
|
},
|
|
@@ -96,7 +93,7 @@ schemaBuilderProto.drizzleInterface = function drizzleInterface(table, { select,
|
|
|
96
93
|
schemaBuilderProto.drizzleNode = function drizzleNode(table, { id: { column, ...idOptions }, name, variant, ...options }) {
|
|
97
94
|
var _this_nodeInterfaceRef, _this;
|
|
98
95
|
const schemaConfig = (0, _config.getSchemaConfig)(this);
|
|
99
|
-
const tableConfig = schemaConfig.
|
|
96
|
+
const tableConfig = schemaConfig.relations.tablesConfig[table];
|
|
100
97
|
const idColumn = typeof column === 'function' ? column(tableConfig.columns) : column;
|
|
101
98
|
const idColumns = Array.isArray(idColumn) ? idColumn : [
|
|
102
99
|
idColumn
|
|
@@ -107,7 +104,13 @@ schemaBuilderProto.drizzleNode = function drizzleNode(table, { id: { column, ...
|
|
|
107
104
|
var _ref;
|
|
108
105
|
const typeName = (_ref = variant !== null && variant !== void 0 ? variant : name) !== null && _ref !== void 0 ? _ref : table;
|
|
109
106
|
const nodeRef = new _noderef.DrizzleNodeRef(typeName, table, {
|
|
110
|
-
parseId:
|
|
107
|
+
parseId: (id)=>{
|
|
108
|
+
const parsed = idParser(id);
|
|
109
|
+
if (Array.isArray(idColumn)) {
|
|
110
|
+
return parsed;
|
|
111
|
+
}
|
|
112
|
+
return parsed[schemaConfig.columnToTsName(idColumn)];
|
|
113
|
+
}
|
|
111
114
|
});
|
|
112
115
|
const modelLoader = _modelloader.ModelLoader.forModel(table, this, idColumns);
|
|
113
116
|
if (!interfaceRef) {
|
|
@@ -179,62 +182,105 @@ schemaBuilderProto.drizzleInterfaceFields = function drizzleInterfaceFields(type
|
|
|
179
182
|
this.configStore.onTypeConfig(ref, ({ name })=>{
|
|
180
183
|
this.configStore.addFields(ref, ()=>fields(new _drizzlefieldbuilder.DrizzleObjectFieldBuilder(name, this, ref.tableName, 'Interface')));
|
|
181
184
|
});
|
|
182
|
-
};
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
185
|
+
}; // schemaBuilderProto.drizzleGraphQLOrderBy = function drizzleGraphQLOrderBy(
|
|
186
|
+
// this: PothosSchemaTypes.SchemaBuilder<SchemaTypes>,
|
|
187
|
+
// table: string,
|
|
188
|
+
// type: GraphQLInputObjectType,
|
|
189
|
+
// options?: { extensions?: object },
|
|
190
|
+
// ) {
|
|
191
|
+
// return (
|
|
192
|
+
// this as typeof this & {
|
|
193
|
+
// addGraphQLInput: (
|
|
194
|
+
// type: GraphQLInputObjectType,
|
|
195
|
+
// options: Record<string, unknown>,
|
|
196
|
+
// ) => InputObjectRef<SchemaTypes, {}>;
|
|
197
|
+
// }
|
|
198
|
+
// ).addGraphQLInput(type, {
|
|
199
|
+
// ...options,
|
|
200
|
+
// extensions: {
|
|
201
|
+
// ...options?.extensions,
|
|
202
|
+
// drizzleGraphQL: {
|
|
203
|
+
// inputType: 'orderBy',
|
|
204
|
+
// table,
|
|
205
|
+
// tableConfig: getSchemaConfig(this).relations.tablesConfig[table],
|
|
206
|
+
// } satisfies DrizzleGraphQLInputExtensions,
|
|
207
|
+
// },
|
|
208
|
+
// });
|
|
209
|
+
// } as never;
|
|
210
|
+
// schemaBuilderProto.drizzleGraphQLFilters = function drizzleGraphQLFilters(
|
|
211
|
+
// this: PothosSchemaTypes.SchemaBuilder<SchemaTypes>,
|
|
212
|
+
// table: string,
|
|
213
|
+
// type: GraphQLInputObjectType,
|
|
214
|
+
// options?: { extensions?: object },
|
|
215
|
+
// ) {
|
|
216
|
+
// return (
|
|
217
|
+
// this as typeof this & {
|
|
218
|
+
// addGraphQLInput: (
|
|
219
|
+
// type: GraphQLInputObjectType,
|
|
220
|
+
// options: Record<string, unknown>,
|
|
221
|
+
// ) => InputObjectRef<SchemaTypes, {}>;
|
|
222
|
+
// }
|
|
223
|
+
// ).addGraphQLInput(type, {
|
|
224
|
+
// ...options,
|
|
225
|
+
// extensions: {
|
|
226
|
+
// ...options?.extensions,
|
|
227
|
+
// drizzleGraphQL: {
|
|
228
|
+
// inputType: 'filters',
|
|
229
|
+
// table,
|
|
230
|
+
// tableConfig: getSchemaConfig(this).relations.tablesConfig[table],
|
|
231
|
+
// } satisfies DrizzleGraphQLInputExtensions,
|
|
232
|
+
// },
|
|
233
|
+
// });
|
|
234
|
+
// } as never;
|
|
235
|
+
// schemaBuilderProto.drizzleGraphQLInsert = function drizzleGraphQLInsert(
|
|
236
|
+
// this: PothosSchemaTypes.SchemaBuilder<SchemaTypes>,
|
|
237
|
+
// table: string,
|
|
238
|
+
// type: GraphQLInputObjectType,
|
|
239
|
+
// options?: { extensions?: object },
|
|
240
|
+
// ) {
|
|
241
|
+
// return (
|
|
242
|
+
// this as typeof this & {
|
|
243
|
+
// addGraphQLInput: (
|
|
244
|
+
// type: GraphQLInputObjectType,
|
|
245
|
+
// options: Record<string, unknown>,
|
|
246
|
+
// ) => InputObjectRef<SchemaTypes, {}>;
|
|
247
|
+
// }
|
|
248
|
+
// ).addGraphQLInput(type, {
|
|
249
|
+
// ...options,
|
|
250
|
+
// extensions: {
|
|
251
|
+
// ...options?.extensions,
|
|
252
|
+
// drizzleGraphQL: {
|
|
253
|
+
// inputType: 'insert',
|
|
254
|
+
// table,
|
|
255
|
+
// tableConfig: getSchemaConfig(this).relations.tablesConfig[table],
|
|
256
|
+
// } satisfies DrizzleGraphQLInputExtensions,
|
|
257
|
+
// },
|
|
258
|
+
// });
|
|
259
|
+
// } as never;
|
|
260
|
+
// schemaBuilderProto.drizzleGraphQLUpdate = function drizzleGraphQLUpdate(
|
|
261
|
+
// this: PothosSchemaTypes.SchemaBuilder<SchemaTypes>,
|
|
262
|
+
// table: string,
|
|
263
|
+
// type: GraphQLInputObjectType,
|
|
264
|
+
// options?: { extensions?: object },
|
|
265
|
+
// ) {
|
|
266
|
+
// return (
|
|
267
|
+
// this as typeof this & {
|
|
268
|
+
// addGraphQLInput: (
|
|
269
|
+
// type: GraphQLInputObjectType,
|
|
270
|
+
// options: Record<string, unknown>,
|
|
271
|
+
// ) => InputObjectRef<SchemaTypes, {}>;
|
|
272
|
+
// }
|
|
273
|
+
// ).addGraphQLInput(type, {
|
|
274
|
+
// ...options,
|
|
275
|
+
// extensions: {
|
|
276
|
+
// ...options?.extensions,
|
|
277
|
+
// drizzleGraphQL: {
|
|
278
|
+
// inputType: 'update',
|
|
279
|
+
// table,
|
|
280
|
+
// tableConfig: getSchemaConfig(this).relations.tablesConfig[table],
|
|
281
|
+
// } satisfies DrizzleGraphQLInputExtensions,
|
|
282
|
+
// },
|
|
283
|
+
// });
|
|
284
|
+
// } as never;
|
|
239
285
|
|
|
240
286
|
//# sourceMappingURL=schema-builder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/schema-builder.ts"],"names":["schemaBuilderProto","SchemaBuilder","prototype","drizzleObject","table","select","fields","options","
|
|
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","getSchemaConfig","relations","tablesConfig","pothosDrizzleSelect","pothosDrizzleLoader","ModelLoader","forModel","DrizzleObjectFieldBuilder","undefined","drizzleInterface","DrizzleInterfaceRef","interfaceType","drizzleNode","id","column","idOptions","schemaConfig","tableConfig","idColumn","columns","idColumns","Array","isArray","interfaceRef","nodeInterfaceRef","resolve","getIDSerializer","idParser","getIDParser","typeName","nodeRef","DrizzleNodeRef","parseId","parsed","columnToTsName","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"],"mappings":";;;;8DAUO;qCAGmC;8BACN;6BACR;yBACG;2BACE;wBAED;yBACa;sBACb;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEhC,MAAMA,qBAAqBC,aAAa,CAACC,SAAS;AAElDF,mBAAmBG,aAAa,GAAG,SAASA,cAAcC,KAAK,EAAE,EAAEC,MAAM,EAAEC,MAAM,EAAE,GAAGC,SAAS;QAChFA,kBAAAA;IAAb,MAAMC,OAAOD,CAAAA,OAAAA,CAAAA,mBAAAA,QAAQE,OAAO,cAAfF,8BAAAA,mBAAmBA,QAAQC,IAAI,cAA/BD,kBAAAA,OAAmCH;IAEhD,MAAMM,MAAMH,QAAQE,OAAO,GACvB,IAAIE,2BAAgB,CAACJ,QAAQE,OAAO,EAAED,QACrCI,IAAAA,qBAAe,EAACR,OAAO,IAAI,EAAE;IAElCM,IAAIF,IAAI,GAAGA,iBAAAA,kBAAAA,OAAQJ;IAEnB,IAAI,CAACS,UAAU,CAACH,KAAK;QACnB,GAAIH,OAAO;QACXO,YAAY;YACV,GAAGP,QAAQO,UAAU;YACrBC,oBAAoBX;YACpBY,oBAAoBC,IAAAA,uBAAe,EAAC,IAAI,EAAEC,SAAS,CAACC,YAAY,CAACf,MAAM;YACvEgB,qBAAqBf,mBAAAA,oBAAAA,SAAU,CAAC;YAChCgB,qBAAqBC,wBAAW,CAACC,QAAQ,CAACnB,OAAO,IAAI;QACvD;QACAI;QACAF,QAAQA,SAAS,IAAMA,OAAO,IAAIkB,8CAAyB,CAACd,IAAIF,IAAI,EAAE,IAAI,EAAEJ,UAAUqB;IACxF;IAEA,OAAOf;AACT;AAEAV,mBAAmB0B,gBAAgB,GAAG,SAASA,iBAC7CtB,KAAK,EACL,EAAEC,MAAM,EAAEC,MAAM,EAAE,GAAGC,SAAS;QAEjBA;IAAb,MAAMC,OAAOD,CAAAA,gBAAAA,QAAQC,IAAI,cAAZD,2BAAAA,gBAAgBH;IAE7B,MAAMM,MAAM,IAAIiB,iCAAmB,CAACnB,MAAMJ;IAE1C,IAAI,CAACwB,aAAa,CAAClB,KAAK;QACtB,GAAIH,OAAO;QACXO,YAAY;YACV,GAAGP,QAAQO,UAAU;YACrBC,oBAAoBX;YACpBY,oBAAoBC,IAAAA,uBAAe,EAAC,IAAI,EAAEC,SAAS,CAACC,YAAY,CAACf,MAAM;YACvEgB,qBAAqBf,mBAAAA,oBAAAA,SAAU,CAAC;YAChCgB,qBAAqBC,wBAAW,CAACC,QAAQ,CAACnB,OAAO,IAAI;QACvD;QACAI;QACAF,QAAQA,SACJ,IAAMA,OAAO,IAAIkB,8CAAyB,CAACd,IAAIF,IAAI,EAAE,IAAI,EAAEJ,OAAO,gBAClEqB;IACN;IAEA,OAAOf;AACT;AAEAV,mBAAmB6B,WAAW,GAAG,SAASA,YAIxCzB,KAAsD,EACtD,EACE0B,IAAI,EAAEC,MAAM,EAAE,GAAGC,WAAW,EAC5BxB,IAAI,EACJC,OAAO,EACP,GAAGF,SAQJ;QAMoB,wBAAA;IAJrB,MAAM0B,eAAehB,IAAAA,uBAAe,EAAC,IAAI;IACzC,MAAMiB,cAAcD,aAAaf,SAAS,CAACC,YAAY,CAACf,MAAM;IAC9D,MAAM+B,WAAW,OAAOJ,WAAW,aAAaA,OAAOG,YAAYE,OAAO,IAAIL;IAC9E,MAAMM,YAAYC,MAAMC,OAAO,CAACJ,YAAYA,WAAW;QAACA;KAAS;IACjE,MAAMK,gBAAe,yBAAA,CAAA,QAAA,IAAI,EAACC,gBAAgB,cAArB,6CAAA,4BAAA;IACrB,MAAMC,UAAUC,IAAAA,wBAAe,EAACN,WAAWJ;IAC3C,MAAMW,WAAWC,IAAAA,oBAAW,EAACR;QACZ5B;IAAjB,MAAMqC,WAAWrC,CAAAA,OAAAA,oBAAAA,qBAAAA,UAAWD,kBAAXC,kBAAAA,OAAmBL;IACpC,MAAM2C,UAAU,IAAIC,uBAAc,CAACF,UAAU1C,OAAO;QAClD6C,SAAS,CAACnB;YACR,MAAMoB,SAASN,SAASd;YACxB,IAAIQ,MAAMC,OAAO,CAACJ,WAAW;gBAC3B,OAAOe;YACT;YAEA,OAAOA,MAAM,CAACjB,aAAakB,cAAc,CAAChB,UAAU;QACtD;IACF;IACA,MAAMiB,cAAc9B,wBAAW,CAACC,QAAQ,CAACnB,OAAO,IAAI,EAAEiC;IAEtD,IAAI,CAACG,cAAc;QACjB,MAAM,IAAIa,iBAAW,CAAC;IACxB;IAEA,MAAMC,kBAAkB;QACtB,GAAG/C,OAAO;QACVC;QACAC;QACA8C,YAAY;YAACf;SAAa;QAC1BgB,kBAAkB,OAChB1B,IACA2B,SACAC;YAEA,MAAMC,SAAS,MAAMP,YAAYK,SAASG,qBAAqB,CAACF,MAAMd,SAASd,KAAKgB;YAEpF,IAAIa,QAAQ;gBACVE,IAAAA,mBAAa,EAACF,QAAQb;YACxB;YAEA,OAAOa;QACT;IACF;IAEA,MAAMjD,MAAM,IAAI,CAACP,aAAa,CAACC,OAAOkD;IAEtC,IAAI/C,QAAQgD,UAAU,EAAE;QACtB7C,IAAIoD,aAAa,CAACvD,QAAQgD,UAAU;IACtC;IAEA,IAAI,CAACQ,WAAW,CAACC,YAAY,CAACtD,KAAK,CAACuD;YAGhC;YAAA;QAFF,IAAI,CAACC,WAAW,CACdxD,KACA,CAAA,0CAAA,6BAAA,AAAC,IAAI,CAACH,OAAO,CAAiD4D,YAAY,cAA1E,iDAAA,2BAA4EC,WAAW,cAAvF,oDAAA,yCACE,MACF,CAACC;gBAMM;mBALL,AACEA,EAGAC,QAAQ,CAAC;oBACN,6BAAA,AAAC,IAAI,CAAC/D,OAAO,CAAoD4D,YAAY,cAA7E,iDAAA,2BACCI,cAAc,AADlB;gBAEA,GAAGvC,SAAS;gBACZwC,UAAU;gBACVC,MAAM,CAAC;gBACP/B,SAAS,CAACgC,SACRC,IAAAA,mBAAa,EAACjC,QAAQgC,SAAS,CAAC5C,KAAQ,CAAA;4BACtC8C,MAAMX,WAAWzD,IAAI;4BACrBsB;wBACF,CAAA;YACJ;;IAEN;IAEA,IAAI,CAACiC,WAAW,CAACc,qBAAqB,CAAC9B,SAASrC;IAEhD,OAAOqC;AACT;AAEA/C,mBAAmB8E,kBAAkB,GAAG,SAASA,mBAAmBF,IAAI,EAAEG,SAAS,EAAEC,KAAK;IACxF,MAAMtE,MAAM,OAAOkE,SAAS,WAAWhE,IAAAA,qBAAe,EAACgE,MAAM,IAAI,IAAKA;IACtE,IAAI,CAACb,WAAW,CAACC,YAAY,CAACtD,KAAK,CAAC,EAAEF,IAAI,EAAE;QAC1C,IAAI,CAACuD,WAAW,CAACkB,SAAS,CAACvE,KAAK,IAAO,CAAA;gBACrC,CAACqE,UAAU,EAAEC,MAAM,IAAIxD,8CAAyB,CAAChB,MAAM,IAAI,EAAEE,IAAIwE,SAAS;YAC5E,CAAA;IACF;AACF;AAEAlF,mBAAmBmF,qBAAqB,GAAG,SAASA,sBAAsBP,IAAI,EAAEG,SAAS,EAAEC,KAAK;IAC9F,MAAMtE,MAAM,OAAOkE,SAAS,WAAWhE,IAAAA,qBAAe,EAACgE,MAAM,IAAI,IAAKA;IACtE,IAAI,CAACb,WAAW,CAACC,YAAY,CAACtD,KAAK,CAAC,EAAEF,IAAI,EAAE;QAC1C,IAAI,CAACuD,WAAW,CAACkB,SAAS,CAACvE,KAAK,IAAO,CAAA;gBACrC,CAACqE,UAAU,EAAEC,MAAM,IAAIxD,8CAAyB,CAAChB,MAAM,IAAI,EAAEE,IAAIwE,SAAS,EAAE;YAC9E,CAAA;IACF;AACF;AAEAlF,mBAAmBoF,mBAAmB,GAAG,SAASA,oBAAoBR,IAAI,EAAEtE,MAAM;IAChF,MAAMI,MAAM,OAAOkE,SAAS,WAAWhE,IAAAA,qBAAe,EAACgE,MAAM,IAAI,IAAKA;IACtE,IAAI,CAACb,WAAW,CAACC,YAAY,CAACtD,KAAK,CAAC,EAAEF,IAAI,EAAE;QAC1C,IAAI,CAACuD,WAAW,CAACkB,SAAS,CAACvE,KAAK,IAC9BJ,OAAO,IAAIkB,8CAAyB,CAAChB,MAAM,IAAI,EAAEE,IAAIwE,SAAS;IAElE;AACF;AAEAlF,mBAAmBqF,sBAAsB,GAAG,SAASA,uBAAuBT,IAAI,EAAEtE,MAAM;IACtF,MAAMI,MAAM,OAAOkE,SAAS,WAAWhE,IAAAA,qBAAe,EAACgE,MAAM,IAAI,IAAKA;IACtE,IAAI,CAACb,WAAW,CAACC,YAAY,CAACtD,KAAK,CAAC,EAAEF,IAAI,EAAE;QAC1C,IAAI,CAACuD,WAAW,CAACkB,SAAS,CAACvE,KAAK,IAC9BJ,OAAO,IAAIkB,8CAAyB,CAAChB,MAAM,IAAI,EAAEE,IAAIwE,SAAS,EAAE;IAEpE;AACF,GAEA,6EAA6E;CAC7E,wDAAwD;CACxD,mBAAmB;CACnB,kCAAkC;CAClC,uCAAuC;CACvC,MAAM;CACN,aAAa;CACb,8BAA8B;CAC9B,2BAA2B;CAC3B,wCAAwC;CACxC,4CAA4C;CAC5C,8CAA8C;CAC9C,QAAQ;CACR,8BAA8B;CAC9B,kBAAkB;CAClB,oBAAoB;CACpB,gCAAgC;CAChC,0BAA0B;CAC1B,gCAAgC;CAChC,iBAAiB;CACjB,4EAA4E;CAC5E,mDAAmD;CACnD,SAAS;CACT,QAAQ;CACR,cAAc;CAEd,6EAA6E;CAC7E,wDAAwD;CACxD,mBAAmB;CACnB,kCAAkC;CAClC,uCAAuC;CACvC,MAAM;CACN,aAAa;CACb,8BAA8B;CAC9B,2BAA2B;CAC3B,wCAAwC;CACxC,4CAA4C;CAC5C,8CAA8C;CAC9C,QAAQ;CACR,8BAA8B;CAC9B,kBAAkB;CAClB,oBAAoB;CACpB,gCAAgC;CAChC,0BAA0B;CAC1B,gCAAgC;CAChC,iBAAiB;CACjB,4EAA4E;CAC5E,mDAAmD;CACnD,SAAS;CACT,QAAQ;CACR,cAAc;CAEd,2EAA2E;CAC3E,wDAAwD;CACxD,mBAAmB;CACnB,kCAAkC;CAClC,uCAAuC;CACvC,MAAM;CACN,aAAa;CACb,8BAA8B;CAC9B,2BAA2B;CAC3B,wCAAwC;CACxC,4CAA4C;CAC5C,8CAA8C;CAC9C,QAAQ;CACR,8BAA8B;CAC9B,kBAAkB;CAClB,oBAAoB;CACpB,gCAAgC;CAChC,0BAA0B;CAC1B,+BAA+B;CAC/B,iBAAiB;CACjB,4EAA4E;CAC5E,mDAAmD;CACnD,SAAS;CACT,QAAQ;CACR,cAAc;CAEd,2EAA2E;CAC3E,wDAAwD;CACxD,mBAAmB;CACnB,kCAAkC;CAClC,uCAAuC;CACvC,MAAM;CACN,aAAa;CACb,8BAA8B;CAC9B,2BAA2B;CAC3B,wCAAwC;CACxC,4CAA4C;CAC5C,8CAA8C;CAC9C,QAAQ;CACR,8BAA8B;CAC9B,kBAAkB;CAClB,oBAAoB;CACpB,gCAAgC;CAChC,0BAA0B;CAC1B,+BAA+B;CAC/B,iBAAiB;CACjB,4EAA4E;CAC5E,mDAAmD;CACnD,SAAS;CACT,QAAQ;CACR,cAAc"}
|
package/lib/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/types.ts"],"names":["DrizzleObjectRef","drizzleTableName","Symbol","for"],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"sources":["../src/types.ts"],"names":["DrizzleObjectRef","drizzleTableName","Symbol","for"],"mappings":";;;;;;;;;;;IA+pBSA,gBAAgB;eAAhBA,2BAAgB;;IAhlBZC,gBAAgB;eAAhBA;;;2BAglBoB;AAhlB1B,MAAMA,mBAAmBC,OAAOC,GAAG,CAAC"}
|