drizzle-graphql-plus 0.8.11 → 0.8.13
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 +38 -5
- package/index.cjs.map +1 -1
- package/index.js +38 -5
- package/index.js.map +1 -1
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -311,9 +311,21 @@ var extractSelectedColumnsFromTree = (tree, table) => {
|
|
|
311
311
|
const treeEntries = Object.entries(tree);
|
|
312
312
|
const selectedColumns = [];
|
|
313
313
|
for (const [fieldName, fieldData] of treeEntries) {
|
|
314
|
-
if (
|
|
314
|
+
if (tableColumns[fieldData.name]) {
|
|
315
|
+
selectedColumns.push([fieldData.name, true]);
|
|
315
316
|
continue;
|
|
316
|
-
|
|
317
|
+
}
|
|
318
|
+
if (fieldData.fieldsByTypeName) {
|
|
319
|
+
for (const [typeName, typeFields] of Object.entries(
|
|
320
|
+
fieldData.fieldsByTypeName
|
|
321
|
+
)) {
|
|
322
|
+
for (const [subFieldName, subFieldData] of Object.entries(typeFields)) {
|
|
323
|
+
if (tableColumns[subFieldData.name]) {
|
|
324
|
+
selectedColumns.push([subFieldData.name, true]);
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
}
|
|
317
329
|
}
|
|
318
330
|
if (!selectedColumns.length) {
|
|
319
331
|
const columnKeys = Object.entries(tableColumns);
|
|
@@ -329,9 +341,24 @@ var extractSelectedColumnsFromTreeSQLFormat = (tree, table) => {
|
|
|
329
341
|
const treeEntries = Object.entries(tree);
|
|
330
342
|
const selectedColumns = [];
|
|
331
343
|
for (const [fieldName, fieldData] of treeEntries) {
|
|
332
|
-
if (
|
|
344
|
+
if (tableColumns[fieldData.name]) {
|
|
345
|
+
selectedColumns.push([fieldData.name, tableColumns[fieldData.name]]);
|
|
333
346
|
continue;
|
|
334
|
-
|
|
347
|
+
}
|
|
348
|
+
if (fieldData.fieldsByTypeName) {
|
|
349
|
+
for (const [typeName, typeFields] of Object.entries(
|
|
350
|
+
fieldData.fieldsByTypeName
|
|
351
|
+
)) {
|
|
352
|
+
for (const [subFieldName, subFieldData] of Object.entries(typeFields)) {
|
|
353
|
+
if (tableColumns[subFieldData.name]) {
|
|
354
|
+
selectedColumns.push([
|
|
355
|
+
subFieldData.name,
|
|
356
|
+
tableColumns[subFieldData.name]
|
|
357
|
+
]);
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
}
|
|
335
362
|
}
|
|
336
363
|
if (!selectedColumns.length) {
|
|
337
364
|
const columnKeys = Object.entries(tableColumns);
|
|
@@ -535,7 +562,13 @@ var generateTableInterfaceTypeCached = (table, tableName) => {
|
|
|
535
562
|
const tableFields = generateTableSelectTypeFieldsCached(table, tableName);
|
|
536
563
|
const interfaceType = new GraphQLInterfaceType({
|
|
537
564
|
name: `${capitalize(tableName)}Fields`,
|
|
538
|
-
fields: tableFields
|
|
565
|
+
fields: tableFields,
|
|
566
|
+
resolveType(obj) {
|
|
567
|
+
if (obj.__typename) {
|
|
568
|
+
return obj.__typename;
|
|
569
|
+
}
|
|
570
|
+
return null;
|
|
571
|
+
}
|
|
539
572
|
});
|
|
540
573
|
interfaceTypeMap.set(table, interfaceType);
|
|
541
574
|
return interfaceType;
|