@axinom/mosaic-graphql-common 0.27.0-rc.8 → 0.27.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/dist/plugins/bulk-edit/bulk-edit-async-plugin-factory.d.ts +2 -1
- package/dist/plugins/bulk-edit/bulk-edit-async-plugin-factory.d.ts.map +1 -1
- package/dist/plugins/bulk-edit/bulk-edit-async-plugin-factory.js +29 -15
- package/dist/plugins/bulk-edit/bulk-edit-async-plugin-factory.js.map +1 -1
- package/package.json +7 -7
- package/src/plugins/bulk-edit/bulk-edit-async-plugin-factory.ts +53 -18
|
@@ -6,7 +6,8 @@ import { Plugin } from 'postgraphile';
|
|
|
6
6
|
* @param tableName Name of the table to enable the BulkEdit mutation
|
|
7
7
|
* @param bulkEditMutationName Name of the BulkEdit mutation to be generated
|
|
8
8
|
* @param messageSettings The settings for the MultiTenantMessaging for the service that implements the ItemChangeCommand (e.g. ImageServiceMultiTenantMessagingSettings.ImageServicePerformItemChange)
|
|
9
|
+
* @param excludedForeignKeyRelations Optional array of FK table names to exclude from bulk edit operations
|
|
9
10
|
* @returns The Postgraphile plugin that enables the BulkEdit mutation.
|
|
10
11
|
*/
|
|
11
|
-
export declare const BulkEditAsyncPluginFactory: (tableName: string, bulkEditMutationName: string, getLongLivedToken: (originalToken: string, config: BasicDBConfig) => Promise<string
|
|
12
|
+
export declare const BulkEditAsyncPluginFactory: (tableName: string, bulkEditMutationName: string, getLongLivedToken: (originalToken: string, config: BasicDBConfig) => Promise<string>, excludedForeignKeyRelations?: string[]) => Plugin;
|
|
12
13
|
//# sourceMappingURL=bulk-edit-async-plugin-factory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bulk-edit-async-plugin-factory.d.ts","sourceRoot":"","sources":["../../../src/plugins/bulk-edit/bulk-edit-async-plugin-factory.ts"],"names":[],"mappings":"AAYA,OAAO,EAEL,aAAa,EAEd,MAAM,+BAA+B,CAAC;AAgBvC,OAAO,EAAqB,MAAM,EAAiB,MAAM,cAAc,CAAC;AAMxE
|
|
1
|
+
{"version":3,"file":"bulk-edit-async-plugin-factory.d.ts","sourceRoot":"","sources":["../../../src/plugins/bulk-edit/bulk-edit-async-plugin-factory.ts"],"names":[],"mappings":"AAYA,OAAO,EAEL,aAAa,EAEd,MAAM,+BAA+B,CAAC;AAgBvC,OAAO,EAAqB,MAAM,EAAiB,MAAM,cAAc,CAAC;AAMxE;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,cAC1B,MAAM,wBACK,MAAM,qCAEX,MAAM,UACb,aAAa,KAClB,QAAQ,MAAM,CAAC,gCACU,MAAM,EAAE,KACrC,MAqKF,CAAC"}
|
|
@@ -14,9 +14,10 @@ const pg_transactional_outbox_1 = require("pg-transactional-outbox");
|
|
|
14
14
|
* @param tableName Name of the table to enable the BulkEdit mutation
|
|
15
15
|
* @param bulkEditMutationName Name of the BulkEdit mutation to be generated
|
|
16
16
|
* @param messageSettings The settings for the MultiTenantMessaging for the service that implements the ItemChangeCommand (e.g. ImageServiceMultiTenantMessagingSettings.ImageServicePerformItemChange)
|
|
17
|
+
* @param excludedForeignKeyRelations Optional array of FK table names to exclude from bulk edit operations
|
|
17
18
|
* @returns The Postgraphile plugin that enables the BulkEdit mutation.
|
|
18
19
|
*/
|
|
19
|
-
const BulkEditAsyncPluginFactory = (tableName, bulkEditMutationName, getLongLivedToken) => {
|
|
20
|
+
const BulkEditAsyncPluginFactory = (tableName, bulkEditMutationName, getLongLivedToken, excludedForeignKeyRelations) => {
|
|
20
21
|
return (builder) => {
|
|
21
22
|
builder.hook('GraphQLObjectType:fields', (fields, build, ctx) => {
|
|
22
23
|
var _a;
|
|
@@ -36,8 +37,15 @@ const BulkEditAsyncPluginFactory = (tableName, bulkEditMutationName, getLongLive
|
|
|
36
37
|
const graphQLObjectType = build.getTypeByName(graphQLObjectTypeName);
|
|
37
38
|
const connectionFilterType = build.connectionFilterTypesByTypeName[`${graphQLObjectTypeName}Filter`];
|
|
38
39
|
const patchType = build.getTypeByName(inflection.patchType(graphQLObjectType.name));
|
|
39
|
-
|
|
40
|
-
const
|
|
40
|
+
// Check if there are any FK relations after filtering exclusions
|
|
41
|
+
const foreignKeyRelations = getAffectedForeignKeyRelations(pgTable, excludedForeignKeyRelations);
|
|
42
|
+
const hasForeignKeyRelations = foreignKeyRelations.length > 0;
|
|
43
|
+
const addInputTypeForFKs = hasForeignKeyRelations
|
|
44
|
+
? generateInputTypeForFKs(build, pgTable, 'Add', excludedForeignKeyRelations)
|
|
45
|
+
: undefined;
|
|
46
|
+
const removeInputTypeForFKs = hasForeignKeyRelations
|
|
47
|
+
? generateInputTypeForFKs(build, pgTable, 'Remove', excludedForeignKeyRelations)
|
|
48
|
+
: undefined;
|
|
41
49
|
const BulkEditPayloadType = getBulkEditPayloadType(build);
|
|
42
50
|
const args = {
|
|
43
51
|
filter: {
|
|
@@ -46,13 +54,17 @@ const BulkEditAsyncPluginFactory = (tableName, bulkEditMutationName, getLongLive
|
|
|
46
54
|
set: {
|
|
47
55
|
type: patchType,
|
|
48
56
|
},
|
|
49
|
-
|
|
57
|
+
};
|
|
58
|
+
if (removeInputTypeForFKs) {
|
|
59
|
+
args.relatedEntitiesToRemove = {
|
|
50
60
|
type: removeInputTypeForFKs,
|
|
51
|
-
}
|
|
52
|
-
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
if (addInputTypeForFKs) {
|
|
64
|
+
args.relatedEntitiesToAdd = {
|
|
53
65
|
type: addInputTypeForFKs,
|
|
54
|
-
}
|
|
55
|
-
}
|
|
66
|
+
};
|
|
67
|
+
}
|
|
56
68
|
const operation = {
|
|
57
69
|
type: BulkEditPayloadType,
|
|
58
70
|
args,
|
|
@@ -66,7 +78,7 @@ const BulkEditAsyncPluginFactory = (tableName, bulkEditMutationName, getLongLive
|
|
|
66
78
|
primaryKeyFieldName: inflection.column((_a = pgTable.primaryKeyConstraint) === null || _a === void 0 ? void 0 : _a.keyAttributes[0]),
|
|
67
79
|
}, build.graphql, input, context, resolveInfo.schema);
|
|
68
80
|
const { set, relatedEntitiesToRemove, relatedEntitiesToAdd } = input;
|
|
69
|
-
const { removals, additions } = getFkResolverPayload(build, pgTable, relatedEntitiesToRemove, relatedEntitiesToAdd);
|
|
81
|
+
const { removals, additions } = getFkResolverPayload(build, pgTable, relatedEntitiesToRemove, relatedEntitiesToAdd, excludedForeignKeyRelations);
|
|
70
82
|
await asyncResolverImplementation({
|
|
71
83
|
set: getMainResolverPayload(build, pgTable, set),
|
|
72
84
|
removals,
|
|
@@ -116,10 +128,10 @@ function getMainResolverPayload(build, pgTable, set) {
|
|
|
116
128
|
};
|
|
117
129
|
}
|
|
118
130
|
// TODO: Can be potentially optimized (i.e. with getAffectedForeignKeyRelations or with asyncResolverImplementation)
|
|
119
|
-
function getFkResolverPayload(build, pgTable, relatedEntitiesToRemove, relatedEntitiesToAdd) {
|
|
131
|
+
function getFkResolverPayload(build, pgTable, relatedEntitiesToRemove, relatedEntitiesToAdd, excludedForeignKeyRelations) {
|
|
120
132
|
var _a, _b;
|
|
121
133
|
const inflection = build.inflection;
|
|
122
|
-
const foreignKeyRelations = getAffectedForeignKeyRelations(pgTable);
|
|
134
|
+
const foreignKeyRelations = getAffectedForeignKeyRelations(pgTable, excludedForeignKeyRelations);
|
|
123
135
|
const fkProcessingMetadata = {};
|
|
124
136
|
for (const fkConstraint of foreignKeyRelations) {
|
|
125
137
|
const parentKey = fkConstraint.keyAttributes[fkConstraint.foreignKeyAttributeNums.indexOf((_b = (_a = pgTable.primaryKeyConstraint) === null || _a === void 0 ? void 0 : _a.keyAttributes[0].num) !== null && _b !== void 0 ? _b : -1)];
|
|
@@ -231,12 +243,12 @@ function mapGqlInputObjectToSqlColumnNames(sourceGqlInputObject, gqlToSqlColumnN
|
|
|
231
243
|
}, {});
|
|
232
244
|
}
|
|
233
245
|
// TODO: Handle `insertable` | `deletable` GRANTS for FK Relations
|
|
234
|
-
function generateInputTypeForFKs(build, pgTable, action) {
|
|
246
|
+
function generateInputTypeForFKs(build, pgTable, action, excludedForeignKeyRelations) {
|
|
235
247
|
var _a, _b;
|
|
236
248
|
const inflection = build.inflection;
|
|
237
249
|
const allFkInputTypesFieldMap = {};
|
|
238
250
|
// Filter only the interesting FK relations
|
|
239
|
-
const foreignKeyRelations = getAffectedForeignKeyRelations(pgTable);
|
|
251
|
+
const foreignKeyRelations = getAffectedForeignKeyRelations(pgTable, excludedForeignKeyRelations);
|
|
240
252
|
for (const fkConstraint of foreignKeyRelations) {
|
|
241
253
|
const parentPgTable = fkConstraint.foreignClass;
|
|
242
254
|
const parentKey = fkConstraint.keyAttributes[fkConstraint.foreignKeyAttributeNums.indexOf((_b = (_a = parentPgTable === null || parentPgTable === void 0 ? void 0 : parentPgTable.primaryKeyConstraint) === null || _a === void 0 ? void 0 : _a.keyAttributes[0].num) !== null && _b !== void 0 ? _b : -1)];
|
|
@@ -262,10 +274,12 @@ function generateInputTypeForFKs(build, pgTable, action) {
|
|
|
262
274
|
build.addType(BulkEditAddInputTypeForFK);
|
|
263
275
|
return BulkEditAddInputTypeForFK;
|
|
264
276
|
}
|
|
265
|
-
function getAffectedForeignKeyRelations(pgTable) {
|
|
277
|
+
function getAffectedForeignKeyRelations(pgTable, excludedForeignKeyRelations) {
|
|
266
278
|
return pgTable.foreignConstraints.filter((constraint) => constraint.type === 'f' &&
|
|
267
279
|
(constraint.isFake === undefined || constraint.isFake === false) &&
|
|
268
|
-
!constraint.name.startsWith('multitenancy_relation_')
|
|
280
|
+
!constraint.name.startsWith('multitenancy_relation_') &&
|
|
281
|
+
(!excludedForeignKeyRelations ||
|
|
282
|
+
!excludedForeignKeyRelations.includes(constraint.class.name)));
|
|
269
283
|
}
|
|
270
284
|
function getBulkEditPayloadType(build) {
|
|
271
285
|
const existingType = build.getTypeByName('BulkEditAsyncPayloadType');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bulk-edit-async-plugin-factory.js","sourceRoot":"","sources":["../../../src/plugins/bulk-edit/bulk-edit-async-plugin-factory.ts"],"names":[],"mappings":";;;AAAA,uDAAuD;AACvD,+DAKkC;AAClC,mEAAoE;AACpE,6DAGiC;AAYjC,mDAAoD;AACpD,qCAMiB;AACjB,qEAAyE;AAOzE;;;;;;;GAOG;AACI,MAAM,0BAA0B,GAAG,CACxC,SAAiB,EACjB,oBAA4B,EAC5B,iBAGoB,EACZ,EAAE;IACV,OAAO,CAAC,OAAsB,EAAQ,EAAE;QACtC,OAAO,CAAC,IAAI,CAAC,0BAA0B,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;;YAC9D,MAAM,UAAU,GAAe,KAAK,CAAC,UAAU,CAAC;YAEhD,IAAI,GAAG,CAAC,KAAK,CAAC,cAAc,IAAI,MAAM,KAAK,SAAS,EAAE;gBACpD,MAAM,4BAA4B,GAChC,KAAK,CAAC,4BAA4B,CAAC;gBAErC,MAAM,OAAO,GAAG,4BAA4B,CAAC,KAAK,CAAC,IAAI,CACrD,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,SAAS,CAChC,CAAC;gBAEF,IAAI,CAAC,OAAO,EAAE;oBACZ,4DAA4D;oBAC5D,OAAO,MAAM,CAAC;iBACf;gBAED,IAAI,CAAA,MAAA,OAAO,CAAC,oBAAoB,0CAAE,aAAa,CAAC,MAAM,MAAK,CAAC,EAAE;oBAC5D,wGAAwG;oBACxG,OAAO,MAAM,CAAC;iBACf;gBAED,MAAM,qBAAqB,GAAG,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBAC5D,MAAM,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;gBAErE,MAAM,oBAAoB,GACxB,KAAK,CAAC,+BAA+B,CACnC,GAAG,qBAAqB,QAAQ,CACjC,CAAC;gBAEJ,MAAM,SAAS,GAA2B,KAAK,CAAC,aAAa,CAC3D,UAAU,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAC7C,CAAC;gBAEF,MAAM,kBAAkB,GAAG,uBAAuB,CAChD,KAAK,EACL,OAAO,EACP,KAAK,CACN,CAAC;gBAEF,MAAM,qBAAqB,GAAG,uBAAuB,CACnD,KAAK,EACL,OAAO,EACP,QAAQ,CACT,CAAC;gBAEF,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;gBAE1D,MAAM,IAAI,GAAG;oBACX,MAAM,EAAE;wBACN,IAAI,EAAE,oBAAoB;qBAC3B;oBACD,GAAG,EAAE;wBACH,IAAI,EAAE,SAAS;qBAChB;oBACD,uBAAuB,EAAE;wBACvB,IAAI,EAAE,qBAAqB;qBAC5B;oBACD,oBAAoB,EAAE;wBACpB,IAAI,EAAE,kBAAkB;qBACzB;iBACF,CAAC;gBAEF,MAAM,SAAS,GAAG;oBAChB,IAAI,EAAE,mBAAmB;oBACzB,IAAI;oBACJ,KAAK,CAAC,OAAO,CACX,OAAgB,EAChB,KAKC,EACD,OAAmC,EACnC,WAAuC;;wBAEvC,MAAM,EACJ,MAAM,EACN,QAAQ,EACR,OAAO,EACP,SAAS,EACT,YAAY,EACZ,iBAAiB,GAClB,GAAG,OAAO,CAAC;wBAEZ,MAAM,cAAc,GAAG,MAAM,iBAAiB,CAC5C,QAAkB,EAClB,MAAuB,CACxB,CAAC;wBAEF,MAAM,SAAS,GAAG,MAAM,YAAY,CAClC;4BACE,UAAU,EAAE,oBAAoB,CAAC,IAAI;4BACrC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC;4BACtC,mBAAmB,EAAE,UAAU,CAAC,MAAM,CACpC,MAAA,OAAO,CAAC,oBAAoB,0CAAE,aAAa,CAAC,CAAC,CAAC,CAC/C;yBACF,EACD,KAAK,CAAC,OAAO,EACb,KAAK,EACL,OAAO,EACP,WAAW,CAAC,MAAM,CACnB,CAAC;wBAEF,MAAM,EAAE,GAAG,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,GAC1D,KAAK,CAAC;wBAER,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,oBAAoB,CAClD,KAAK,EACL,OAAO,EACP,uBAAuB,EACvB,oBAAoB,CACrB,CAAC;wBAEF,MAAM,2BAA2B,CAC/B;4BACE,GAAG,EAAE,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC;4BAChD,QAAQ;4BACR,SAAS;yBACV,EACD,SAAS,EACT,MAAuB,EACvB,SAAqB,EACrB,YAAwB,EACxB,cAAc,EACd,OAA2C,EAC3C,iBAAsC,CACvC,CAAC;wBAEF,OAAO;4BACL,gBAAgB,EAAE,SAAS;yBAC5B,CAAC;oBACJ,CAAC;iBACF,CAAC;gBAEF,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE;oBACnB,CAAC,oBAAoB,CAAC,EAAE,SAAS;iBAClC,CAAC,CAAC;aACJ;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC,CAAC;AAxJW,QAAA,0BAA0B,8BAwJrC;AAEF;;GAEG;AACH,MAAM,YAAY,GAAG,KAAK,EACxB,QAIC,EACD,OAAuB,EACvB,IAAoC,EACpC,OAAgB,EAChB,MAA6B,EACV,EAAE;;IACrB,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,OAAO,CACvC,MAAM,EACN,IAAA,oBAAW,EAAA;oCACqB,QAAQ,CAAC,UAAU;oBACnC,QAAQ,CAAC,SAAS;;cAExB,QAAQ,CAAC,mBAAmB;;;;KAIrC,EACD,SAAS,EACT,OAAO,EACP,IAAI,CACL,CAAC;IAEF,OAAO,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,0CAAE,QAAQ,0CAAE,KAAK,CAAC,GAAG,CAC3C,CAAC,MAA+B,EAAE,EAAE;QAClC,OAAO,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IAC9C,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AA+BF,SAAS,sBAAsB,CAC7B,KAAY,EACZ,OAAgB,EAChB,GAAuC;IAEvC,MAAM,UAAU,GAAe,KAAK,CAAC,UAAU,CAAC;IAEhD,OAAO;QACL,aAAa,EAAE,OAAO,CAAC,IAAI;QAC3B,2BAA2B,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,IAAI,EAAE,EAAE;YACxE,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;YAEzC,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC;QACN,SAAS,EAAE,GAAG;KACf,CAAC;AACJ,CAAC;AAED,oHAAoH;AACpH,SAAS,oBAAoB,CAC3B,KAAY,EACZ,OAAgB,EAChB,uBAIa,EACb,oBAIa;;IAKb,MAAM,UAAU,GAAe,KAAK,CAAC,UAAU,CAAC;IAChD,MAAM,mBAAmB,GAAG,8BAA8B,CAAC,OAAO,CAAC,CAAC;IAEpE,MAAM,oBAAoB,GAAyB,EAAE,CAAC;IAEtD,KAAK,MAAM,YAAY,IAAI,mBAAmB,EAAE;QAC9C,MAAM,SAAS,GACb,YAAY,CAAC,aAAa,CACxB,YAAY,CAAC,uBAAuB,CAAC,OAAO,CAC1C,MAAA,MAAA,OAAO,CAAC,oBAAoB,0CAAE,aAAa,CAAC,CAAC,EAAE,GAAG,mCAAI,CAAC,CAAC,CACzD,CACF,CAAC;QAEJ,oBAAoB,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG;YAC9C,6BAA6B,EAAE,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CACjE,CAAC,GAAQ,EAAE,IAAI,EAAE,EAAE;gBACjB,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;gBAEzC,OAAO,GAAG,CAAC;YACb,CAAC,EACD,EAAE,CACH;YACD,cAAc,EAAE,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC;YACtD,kBAAkB,EAAE,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC;YAChD,mBAAmB,EAAE,SAAS,CAAC,IAAI;SACpC,CAAC;KACH;IAED,MAAM,SAAS,GAAsB,EAAE,CAAC;IACxC,MAAM,QAAQ,GAAsB,EAAE,CAAC;IAEvC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE;QACvD,IAAI,oBAAoB,EAAE;YACxB,SAAS,CAAC,OAAO,CAAC,GAAG;gBACnB,mBAAmB,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC,mBAAmB;gBACtE,SAAS,EACP,oBAAoB,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC;gBACpE,6BAA6B,EAC3B,oBAAoB,CAAC,OAAO,CAAC,CAAC,6BAA6B;aAC9D,CAAC;SACH;QAED,IAAI,uBAAuB,EAAE;YAC3B,QAAQ,CAAC,OAAO,CAAC,GAAG;gBAClB,mBAAmB,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC,mBAAmB;gBACtE,SAAS,EACP,uBAAuB,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC;gBACvE,6BAA6B,EAC3B,oBAAoB,CAAC,OAAO,CAAC,CAAC,6BAA6B;aAC9D,CAAC;SACH;KACF;IAED,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;AACjC,CAAC;AAED,KAAK,UAAU,2BAA2B,CACxC,qBAA4C,EAC5C,SAAmB,EACnB,MAAqB,EACrB,SAAmB,EACnB,YAAsB,EACtB,cAAsB,EACtB,OAAyC,EACzC,iBAAoC;IAEpC,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;IACrD,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IAEjE,MAAM,UAAU,GAAG,IAAA,kCAAe,EAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;IAEtE,MAAM,IAAA,yCAAsB,EAC1B,IAAI,EACJ,wCAAc,CAAC,aAAa,EAC5B,UAAU,EACV,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,6BAA6B;QAC7B,KAAK,MAAM,SAAS,IAAI,SAAS,EAAE;YACjC,IAAI,qBAAqB,CAAC,GAAG,CAAC,SAAS,EAAE;gBACvC,wCAAwC;gBACxC,MAAM,gBAAgB,GAA6B;oBACjD,UAAU,EAAE,qBAAqB,CAAC,GAAG,CAAC,aAAa;oBACnD,MAAM,EAAE,kBAAkB;oBAC1B,qBAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;oBACxD,mBAAmB,EAAE,IAAI,CAAC,SAAS,CACjC,iCAAiC,CAC/B,qBAAqB,CAAC,GAAG,CAAC,SAAS,EACnC,qBAAqB,CAAC,GAAG,CAAC,2BAA2B,CACtD,CACF;iBACF,CAAC;gBAEF,+CAA+C;gBAE/C,MAAM,WAAW,CACf,MAAM,EACN,iBAAiB,EACjB,gBAAgB,EAChB,GAAG,EACH,cAAc,CACf,CAAC;aACH;YAED,IAAI,qBAAqB,CAAC,QAAQ,EAAE;gBAClC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;gBAEjE,+DAA+D;gBAC/D,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;oBACtC,MAAM,iBAAiB,GACrB,qBAAqB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;oBAC9C,IAAI,iBAAiB,CAAC,SAAS,EAAE;wBAC/B,wEAAwE;wBACxE,KAAK,MAAM,YAAY,IAAI,iBAAiB,CAAC,SAAS,EAAE;4BACtD,MAAM,aAAa,GAA6B;gCAC9C,UAAU,EAAE,WAAW;gCACvB,MAAM,EAAE,uBAAuB;gCAC/B,qBAAqB,EAAE,EAAE;gCACzB,mBAAmB,EAAE,IAAI,CAAC,SAAS,iBACjC,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,EAAE,SAAS,IAC/C,iCAAiC,CAClC,YAAY,EACZ,iBAAiB,CAAC,6BAA6B,CAChD,EACD;6BACH,CAAC;4BAEF,4CAA4C;4BAE5C,MAAM,WAAW,CACf,MAAM,EACN,iBAAiB,EACjB,aAAa,EACb,GAAG,EACH,cAAc,CACf,CAAC;yBACH;qBACF;iBACF;aACF;YAED,IAAI,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3D,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;gBAE9D,6DAA6D;gBAC7D,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;oBAC9B,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;oBACpE,IAAI,kBAAkB,CAAC,SAAS,EAAE;wBAChC,qEAAqE;wBACrE,KAAK,MAAM,SAAS,IAAI,kBAAkB,CAAC,SAAS,EAAE;4BACpD,MAAM,UAAU,GAA6B;gCAC3C,UAAU,EAAE,OAAO;gCACnB,MAAM,EAAE,oBAAoB;gCAC5B,qBAAqB,EAAE,EAAE;gCACzB,mBAAmB,EAAE,IAAI,CAAC,SAAS,iBACjC,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,EAAE,SAAS,IAChD,iCAAiC,CAClC,SAAS,EACT,kBAAkB,CAAC,6BAA6B,CACjD,EACD;6BACH,CAAC;4BAEF,yCAAyC;4BAEzC,MAAM,WAAW,CACf,MAAM,EACN,iBAAiB,EACjB,UAAU,EACV,GAAG,EACH,cAAc,CACf,CAAC;yBACH;qBACF;iBACF;aACF;SACF;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,MAAqB,EACrB,iBAAoC,EACpC,gBAA0C,EAC1C,MAAsB,EACtB,cAAsB;IAEtB,MAAM,eAAe,GACnB,gDAA8B,CAAC,4BAA4B,CACzD,MAAM,CAAC,SAAS,CACjB,CAAC;IAEJ,OAAO,iBAAiB,CACtB,2CAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,MAAM,EACN;QACE,QAAQ,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE;QACvC,WAAW,EAAE,YAAY;QACzB,OAAO,EAAE,GAAG,gBAAgB,CAAC,UAAU,EAAE;KAC1C,CACF,CAAC;AACJ,CAAC;AAED,SAAS,iCAAiC,CACxC,oBAEC,EACD,qBAEC;IAED,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAExD,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,YAAY,EAAE,EAAE;QACrD,GAAG,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;YACtC,oBAAoB,CAAC,YAAY,CAAC,CAAC;QAErC,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAED,kEAAkE;AAClE,SAAS,uBAAuB,CAC9B,KAAY,EACZ,OAAgB,EAChB,MAAwB;;IAExB,MAAM,UAAU,GAAe,KAAK,CAAC,UAAU,CAAC;IAChD,MAAM,uBAAuB,GAC3B,EAAE,CAAC;IAEL,2CAA2C;IAC3C,MAAM,mBAAmB,GAAG,8BAA8B,CAAC,OAAO,CAAC,CAAC;IAEpE,KAAK,MAAM,YAAY,IAAI,mBAAmB,EAAE;QAC9C,MAAM,aAAa,GAAG,YAAY,CAAC,YAAY,CAAC;QAEhD,MAAM,SAAS,GACb,YAAY,CAAC,aAAa,CACxB,YAAY,CAAC,uBAAuB,CAAC,OAAO,CAC1C,MAAA,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,oBAAoB,0CAAE,aAAa,CAAC,CAAC,EAAE,GAAG,mCAAI,CAAC,CAAC,CAChE,CACF,CAAC;QAEJ,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAExD,MAAM,YAAY,GAChB,KAAK,CAAC,oCAAoC,CACxC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAC1B,IAAI,CACL,CAAC;QAEJ,MAAM,2BAA2B,GAAyB,EAAE,CAAC;QAC7D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,EAAE;YACvD,IAAI,GAAG,KAAK,kBAAkB,EAAE;gBAC9B,2BAA2B,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC;aAClE;SACF;QAED,uBAAuB,CAAC,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,GAAG;YAChE,IAAI,EAAE,IAAI,qBAAW,CACnB,IAAI,gCAAsB,CAAC;gBACzB,IAAI,EAAE,gBAAgB,UAAU,CAAC,SAAS,CACxC,aAAa,CACd,GAAG,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO;gBAC5D,MAAM,EAAE,GAAG,EAAE,CAAC,mBACT,2BAA2B,EAC9B;aACH,CAAC,CACH;SACF,CAAC;KACH;IAED,MAAM,yBAAyB,GAAG,IAAI,gCAAsB,CAAC;QAC3D,IAAI,EAAE,gBAAgB,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,MAAM,OAAO;QACnE,MAAM,EAAE,GAAG,EAAE,CAAC,mBACT,uBAAuB,EAC1B;KACH,CAAC,CAAC;IAEH,KAAK,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAEzC,OAAO,yBAAyB,CAAC;AACnC,CAAC;AAED,SAAS,8BAA8B,CAAC,OAAgB;IACtD,OAAO,OAAO,CAAC,kBAAkB,CAAC,MAAM,CACtC,CAAC,UAA+C,EAAE,EAAE,CAClD,UAAU,CAAC,IAAI,KAAK,GAAG;QACvB,CAAC,UAAU,CAAC,MAAM,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,KAAK,KAAK,CAAC;QAChE,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,CACxD,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAY;IAC1C,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAAC,0BAA0B,CAAC,CAAC;IACrE,IAAI,YAAY,IAAI,YAAY,YAAY,2BAAiB,EAAE;QAC7D,OAAO,YAAY,CAAC;KACrB;IAED,MAAM,mBAAmB,GAAG,IAAI,2BAAiB,CAAC;QAChD,IAAI,EAAE,0BAA0B;QAChC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YACb,gBAAgB,EAAE;gBAChB,IAAI,EAAE,IAAI,qBAAW,CAAC,uBAAa,CAAC;aACrC;SACF,CAAC;KACH,CAAC,CAAC;IAEH,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAEnC,OAAO,mBAAmB,CAAC;AAC7B,CAAC"}
|
|
1
|
+
{"version":3,"file":"bulk-edit-async-plugin-factory.js","sourceRoot":"","sources":["../../../src/plugins/bulk-edit/bulk-edit-async-plugin-factory.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@axinom/mosaic-graphql-common",
|
|
3
|
-
"version": "0.27.0
|
|
3
|
+
"version": "0.27.0",
|
|
4
4
|
"description": "Common GraphQL and PostGraphile related functionality.",
|
|
5
5
|
"author": "Axinom",
|
|
6
6
|
"license": "PROPRIETARY",
|
|
@@ -31,12 +31,12 @@
|
|
|
31
31
|
"lint": "eslint . --ext .ts,.tsx,.js --color --cache"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@axinom/mosaic-db-common": "^0.51.0
|
|
35
|
-
"@axinom/mosaic-message-bus": "^0.44.0
|
|
34
|
+
"@axinom/mosaic-db-common": "^0.51.0",
|
|
35
|
+
"@axinom/mosaic-message-bus": "^0.44.0",
|
|
36
36
|
"@axinom/mosaic-message-bus-abstractions": "^0.24.0",
|
|
37
|
-
"@axinom/mosaic-messages": "^0.61.0
|
|
38
|
-
"@axinom/mosaic-service-common": "^0.63.0
|
|
39
|
-
"@axinom/mosaic-transactional-inbox-outbox": "^0.23.0
|
|
37
|
+
"@axinom/mosaic-messages": "^0.61.0",
|
|
38
|
+
"@axinom/mosaic-service-common": "^0.63.0",
|
|
39
|
+
"@axinom/mosaic-transactional-inbox-outbox": "^0.23.0",
|
|
40
40
|
"@graphile/pg-pubsub": "^4.12.3",
|
|
41
41
|
"endent": "^2.1.0",
|
|
42
42
|
"express": "^4.17.1",
|
|
@@ -66,5 +66,5 @@
|
|
|
66
66
|
"publishConfig": {
|
|
67
67
|
"access": "public"
|
|
68
68
|
},
|
|
69
|
-
"gitHead": "
|
|
69
|
+
"gitHead": "cbf19f8a2e0de34816bc9693ce891868a722544e"
|
|
70
70
|
}
|
|
@@ -42,6 +42,7 @@ type MinimalConfig = Pick<BasicConfig, 'serviceId'> &
|
|
|
42
42
|
* @param tableName Name of the table to enable the BulkEdit mutation
|
|
43
43
|
* @param bulkEditMutationName Name of the BulkEdit mutation to be generated
|
|
44
44
|
* @param messageSettings The settings for the MultiTenantMessaging for the service that implements the ItemChangeCommand (e.g. ImageServiceMultiTenantMessagingSettings.ImageServicePerformItemChange)
|
|
45
|
+
* @param excludedForeignKeyRelations Optional array of FK table names to exclude from bulk edit operations
|
|
45
46
|
* @returns The Postgraphile plugin that enables the BulkEdit mutation.
|
|
46
47
|
*/
|
|
47
48
|
export const BulkEditAsyncPluginFactory = (
|
|
@@ -51,6 +52,7 @@ export const BulkEditAsyncPluginFactory = (
|
|
|
51
52
|
originalToken: string,
|
|
52
53
|
config: BasicDBConfig,
|
|
53
54
|
) => Promise<string>,
|
|
55
|
+
excludedForeignKeyRelations?: string[],
|
|
54
56
|
): Plugin => {
|
|
55
57
|
return (builder: SchemaBuilder): void => {
|
|
56
58
|
builder.hook('GraphQLObjectType:fields', (fields, build, ctx) => {
|
|
@@ -86,34 +88,53 @@ export const BulkEditAsyncPluginFactory = (
|
|
|
86
88
|
inflection.patchType(graphQLObjectType.name),
|
|
87
89
|
);
|
|
88
90
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
+
// Check if there are any FK relations after filtering exclusions
|
|
92
|
+
const foreignKeyRelations = getAffectedForeignKeyRelations(
|
|
91
93
|
pgTable,
|
|
92
|
-
|
|
94
|
+
excludedForeignKeyRelations,
|
|
93
95
|
);
|
|
96
|
+
const hasForeignKeyRelations = foreignKeyRelations.length > 0;
|
|
94
97
|
|
|
95
|
-
const
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
98
|
+
const addInputTypeForFKs = hasForeignKeyRelations
|
|
99
|
+
? generateInputTypeForFKs(
|
|
100
|
+
build,
|
|
101
|
+
pgTable,
|
|
102
|
+
'Add',
|
|
103
|
+
excludedForeignKeyRelations,
|
|
104
|
+
)
|
|
105
|
+
: undefined;
|
|
106
|
+
|
|
107
|
+
const removeInputTypeForFKs = hasForeignKeyRelations
|
|
108
|
+
? generateInputTypeForFKs(
|
|
109
|
+
build,
|
|
110
|
+
pgTable,
|
|
111
|
+
'Remove',
|
|
112
|
+
excludedForeignKeyRelations,
|
|
113
|
+
)
|
|
114
|
+
: undefined;
|
|
100
115
|
|
|
101
116
|
const BulkEditPayloadType = getBulkEditPayloadType(build);
|
|
102
117
|
|
|
103
|
-
const args = {
|
|
118
|
+
const args: Record<string, { type: GraphQL.GraphQLInputType }> = {
|
|
104
119
|
filter: {
|
|
105
120
|
type: connectionFilterType,
|
|
106
121
|
},
|
|
107
122
|
set: {
|
|
108
123
|
type: patchType,
|
|
109
124
|
},
|
|
110
|
-
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
if (removeInputTypeForFKs) {
|
|
128
|
+
args.relatedEntitiesToRemove = {
|
|
111
129
|
type: removeInputTypeForFKs,
|
|
112
|
-
}
|
|
113
|
-
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
if (addInputTypeForFKs) {
|
|
134
|
+
args.relatedEntitiesToAdd = {
|
|
114
135
|
type: addInputTypeForFKs,
|
|
115
|
-
}
|
|
116
|
-
}
|
|
136
|
+
};
|
|
137
|
+
}
|
|
117
138
|
|
|
118
139
|
const operation = {
|
|
119
140
|
type: BulkEditPayloadType,
|
|
@@ -165,6 +186,7 @@ export const BulkEditAsyncPluginFactory = (
|
|
|
165
186
|
pgTable,
|
|
166
187
|
relatedEntitiesToRemove,
|
|
167
188
|
relatedEntitiesToAdd,
|
|
189
|
+
excludedForeignKeyRelations,
|
|
168
190
|
);
|
|
169
191
|
|
|
170
192
|
await asyncResolverImplementation(
|
|
@@ -296,12 +318,16 @@ function getFkResolverPayload(
|
|
|
296
318
|
[key: string]: [any];
|
|
297
319
|
}
|
|
298
320
|
| undefined,
|
|
321
|
+
excludedForeignKeyRelations?: string[],
|
|
299
322
|
): {
|
|
300
323
|
additions: FkResolverPayload;
|
|
301
324
|
removals: FkResolverPayload;
|
|
302
325
|
} {
|
|
303
326
|
const inflection: Inflection = build.inflection;
|
|
304
|
-
const foreignKeyRelations = getAffectedForeignKeyRelations(
|
|
327
|
+
const foreignKeyRelations = getAffectedForeignKeyRelations(
|
|
328
|
+
pgTable,
|
|
329
|
+
excludedForeignKeyRelations,
|
|
330
|
+
);
|
|
305
331
|
|
|
306
332
|
const fkProcessingMetadata: FKProcessingMetadata = {};
|
|
307
333
|
|
|
@@ -528,13 +554,17 @@ function generateInputTypeForFKs(
|
|
|
528
554
|
build: Build,
|
|
529
555
|
pgTable: PgClass,
|
|
530
556
|
action: 'Add' | 'Remove',
|
|
557
|
+
excludedForeignKeyRelations?: string[],
|
|
531
558
|
): GraphQLInputObjectType {
|
|
532
559
|
const inflection: Inflection = build.inflection;
|
|
533
560
|
const allFkInputTypesFieldMap: GraphQL.Thunk<GraphQL.GraphQLInputFieldConfigMap> =
|
|
534
561
|
{};
|
|
535
562
|
|
|
536
563
|
// Filter only the interesting FK relations
|
|
537
|
-
const foreignKeyRelations = getAffectedForeignKeyRelations(
|
|
564
|
+
const foreignKeyRelations = getAffectedForeignKeyRelations(
|
|
565
|
+
pgTable,
|
|
566
|
+
excludedForeignKeyRelations,
|
|
567
|
+
);
|
|
538
568
|
|
|
539
569
|
for (const fkConstraint of foreignKeyRelations) {
|
|
540
570
|
const parentPgTable = fkConstraint.foreignClass;
|
|
@@ -587,12 +617,17 @@ function generateInputTypeForFKs(
|
|
|
587
617
|
return BulkEditAddInputTypeForFK;
|
|
588
618
|
}
|
|
589
619
|
|
|
590
|
-
function getAffectedForeignKeyRelations(
|
|
620
|
+
function getAffectedForeignKeyRelations(
|
|
621
|
+
pgTable: PgClass,
|
|
622
|
+
excludedForeignKeyRelations?: string[],
|
|
623
|
+
): PgConstraint[] {
|
|
591
624
|
return pgTable.foreignConstraints.filter(
|
|
592
625
|
(constraint: PgConstraint & { isFake?: boolean }) =>
|
|
593
626
|
constraint.type === 'f' &&
|
|
594
627
|
(constraint.isFake === undefined || constraint.isFake === false) &&
|
|
595
|
-
!constraint.name.startsWith('multitenancy_relation_')
|
|
628
|
+
!constraint.name.startsWith('multitenancy_relation_') &&
|
|
629
|
+
(!excludedForeignKeyRelations ||
|
|
630
|
+
!excludedForeignKeyRelations.includes(constraint.class.name)),
|
|
596
631
|
);
|
|
597
632
|
}
|
|
598
633
|
|