drizzle-graphql-plus 0.8.11 → 0.8.12
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/index.cjs +46 -5
- package/index.cjs.map +1 -1
- package/index.js +46 -5
- package/index.js.map +1 -1
- package/package.json +1 -1
package/index.cjs
CHANGED
|
@@ -278,9 +278,25 @@ var extractSelectedColumnsFromTree = (tree, table) => {
|
|
|
278
278
|
const treeEntries = Object.entries(tree);
|
|
279
279
|
const selectedColumns = [];
|
|
280
280
|
for (const [fieldName, fieldData] of treeEntries) {
|
|
281
|
-
if (
|
|
281
|
+
if (tableColumns[fieldData.name]) {
|
|
282
|
+
selectedColumns.push([fieldData.name, true]);
|
|
282
283
|
continue;
|
|
283
|
-
|
|
284
|
+
}
|
|
285
|
+
if (fieldData.fieldsByTypeName) {
|
|
286
|
+
for (const [typeName, typeFields] of Object.entries(
|
|
287
|
+
fieldData.fieldsByTypeName
|
|
288
|
+
)) {
|
|
289
|
+
if (typeName.endsWith("Fields")) {
|
|
290
|
+
for (const [subFieldName, subFieldData] of Object.entries(
|
|
291
|
+
typeFields
|
|
292
|
+
)) {
|
|
293
|
+
if (tableColumns[subFieldData.name]) {
|
|
294
|
+
selectedColumns.push([subFieldData.name, true]);
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
}
|
|
284
300
|
}
|
|
285
301
|
if (!selectedColumns.length) {
|
|
286
302
|
const columnKeys = Object.entries(tableColumns);
|
|
@@ -296,9 +312,28 @@ var extractSelectedColumnsFromTreeSQLFormat = (tree, table) => {
|
|
|
296
312
|
const treeEntries = Object.entries(tree);
|
|
297
313
|
const selectedColumns = [];
|
|
298
314
|
for (const [fieldName, fieldData] of treeEntries) {
|
|
299
|
-
if (
|
|
315
|
+
if (tableColumns[fieldData.name]) {
|
|
316
|
+
selectedColumns.push([fieldData.name, tableColumns[fieldData.name]]);
|
|
300
317
|
continue;
|
|
301
|
-
|
|
318
|
+
}
|
|
319
|
+
if (fieldData.fieldsByTypeName) {
|
|
320
|
+
for (const [typeName, typeFields] of Object.entries(
|
|
321
|
+
fieldData.fieldsByTypeName
|
|
322
|
+
)) {
|
|
323
|
+
if (typeName.endsWith("Fields")) {
|
|
324
|
+
for (const [subFieldName, subFieldData] of Object.entries(
|
|
325
|
+
typeFields
|
|
326
|
+
)) {
|
|
327
|
+
if (tableColumns[subFieldData.name]) {
|
|
328
|
+
selectedColumns.push([
|
|
329
|
+
subFieldData.name,
|
|
330
|
+
tableColumns[subFieldData.name]
|
|
331
|
+
]);
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
}
|
|
302
337
|
}
|
|
303
338
|
if (!selectedColumns.length) {
|
|
304
339
|
const columnKeys = Object.entries(tableColumns);
|
|
@@ -502,7 +537,13 @@ var generateTableInterfaceTypeCached = (table, tableName) => {
|
|
|
502
537
|
const tableFields = generateTableSelectTypeFieldsCached(table, tableName);
|
|
503
538
|
const interfaceType = new import_graphql3.GraphQLInterfaceType({
|
|
504
539
|
name: `${capitalize(tableName)}Fields`,
|
|
505
|
-
fields: tableFields
|
|
540
|
+
fields: tableFields,
|
|
541
|
+
resolveType(obj) {
|
|
542
|
+
if (obj.__typename) {
|
|
543
|
+
return obj.__typename;
|
|
544
|
+
}
|
|
545
|
+
return null;
|
|
546
|
+
}
|
|
506
547
|
});
|
|
507
548
|
interfaceTypeMap.set(table, interfaceType);
|
|
508
549
|
return interfaceType;
|