@axinom/mosaic-graphql-common 0.28.0-rc.8 → 0.28.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.
@@ -1,5 +1,8 @@
1
- import { BasicDBConfig } from '@axinom/mosaic-service-common';
1
+ import { DbClient, PgAuthenticatedManagementSubject } from '@axinom/mosaic-db-common';
2
+ import { BasicConfig, BasicDBConfig, BasicManagedServiceConfig } from '@axinom/mosaic-service-common';
3
+ import { StoreInboxMessage } from '@axinom/mosaic-transactional-inbox-outbox';
2
4
  import { Plugin } from 'postgraphile';
5
+ type MinimalConfig = Pick<BasicConfig, 'serviceId'> & (Pick<BasicDBConfig, 'dbOwner'> & Pick<BasicManagedServiceConfig, 'dbEnvOwner'>);
3
6
  /**
4
7
  * This factory will generate a Postgraphile plugin that adds a mutation to the selected entities allowing the user to perform a bulk edit operation on the specified entity and its relations.
5
8
  *
@@ -10,4 +13,49 @@ import { Plugin } from 'postgraphile';
10
13
  * @returns The Postgraphile plugin that enables the BulkEdit mutation.
11
14
  */
12
15
  export declare const BulkEditAsyncPluginFactory: (tableName: string, bulkEditMutationName: string, getLongLivedToken: (originalToken: string, config: BasicDBConfig) => Promise<string>, excludedForeignKeyRelations?: string[]) => Plugin;
16
+ interface MainResolverPayload {
17
+ mainTableName: string;
18
+ gqlFieldNameToColumnNameMap: {
19
+ [key: string]: string;
20
+ };
21
+ inputData?: {
22
+ [key: string]: any;
23
+ };
24
+ }
25
+ interface FkResolverPayload {
26
+ [fKTableName: string]: {
27
+ parentKeyColumnName: string;
28
+ fkGqlFieldNameToColumnNameMap: {
29
+ [key: string]: string;
30
+ };
31
+ inputData?: {
32
+ [key: string]: any;
33
+ }[];
34
+ };
35
+ }
36
+ /**
37
+ * Metadata for clearing all entities in a foreign key relation
38
+ */
39
+ interface FkClearPayload {
40
+ [fKTableName: string]: {
41
+ parentKeyColumnName: string;
42
+ shouldClear: boolean;
43
+ };
44
+ }
45
+ /**
46
+ * Complete payload for bulk item change operations
47
+ * Contains metadata for all possible actions: set, clear, remove, and add
48
+ */
49
+ interface BulkItemChangePayload {
50
+ set: MainResolverPayload;
51
+ clears: FkClearPayload;
52
+ removals: FkResolverPayload;
53
+ additions: FkResolverPayload;
54
+ }
55
+ /**
56
+ * Exported for testing purposes
57
+ * @internal
58
+ */
59
+ export declare function asyncResolverImplementation(bulkItemChangePayload: BulkItemChangePayload, entityIds: string[], config: MinimalConfig, ownerPool: DbClient, envOwnerPool: DbClient, longLivedToken: string, subject: PgAuthenticatedManagementSubject, storeInboxMessage: StoreInboxMessage): Promise<void>;
60
+ export {};
13
61
  //# 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;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,cAC1B,MAAM,wBACK,MAAM,qCAEX,MAAM,UACb,aAAa,KAClB,QAAQ,MAAM,CAAC,gCACU,MAAM,EAAE,KACrC,MAqKF,CAAC"}
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":"AACA,OAAO,EACL,QAAQ,EACR,gCAAgC,EAGjC,MAAM,0BAA0B,CAAC;AAMlC,OAAO,EACL,WAAW,EACX,aAAa,EACb,yBAAyB,EAC1B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAgB9E,OAAO,EAAqB,MAAM,EAAiB,MAAM,cAAc,CAAC;AAExE,KAAK,aAAa,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,GACjD,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,GAC7B,IAAI,CAAC,yBAAyB,EAAE,YAAY,CAAC,CAAC,CAAC;AAEnD;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,cAC1B,MAAM,wBACK,MAAM,qCAEX,MAAM,UACb,aAAa,KAClB,QAAQ,MAAM,CAAC,gCACU,MAAM,EAAE,KACrC,MAwNF,CAAC;AAgDF,UAAU,mBAAmB;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,2BAA2B,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACvD,SAAS,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;CACpC;AAED,UAAU,iBAAiB;IACzB,CAAC,WAAW,EAAE,MAAM,GAAG;QACrB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,6BAA6B,EAAE;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,CAAC;QACzD,SAAS,CAAC,EAAE;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,EAAE,CAAC;KACtC,CAAC;CACH;AAED;;GAEG;AACH,UAAU,cAAc;IACtB,CAAC,WAAW,EAAE,MAAM,GAAG;QACrB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,WAAW,EAAE,OAAO,CAAC;KACtB,CAAC;CACH;AAED;;;GAGG;AACH,UAAU,qBAAqB;IAC7B,GAAG,EAAE,mBAAmB,CAAC;IACzB,MAAM,EAAE,cAAc,CAAC;IACvB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,SAAS,EAAE,iBAAiB,CAAC;CAC9B;AA8HD;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,qBAAqB,EAAE,qBAAqB,EAC5C,SAAS,EAAE,MAAM,EAAE,EACnB,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,QAAQ,EACnB,YAAY,EAAE,QAAQ,EACtB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,gCAAgC,EACzC,iBAAiB,EAAE,iBAAiB,GACnC,OAAO,CAAC,IAAI,CAAC,CA0Jf"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BulkEditAsyncPluginFactory = void 0;
3
+ exports.asyncResolverImplementation = exports.BulkEditAsyncPluginFactory = void 0;
4
4
  /* eslint-disable @typescript-eslint/no-explicit-any */
5
5
  const mosaic_db_common_1 = require("@axinom/mosaic-db-common");
6
6
  const mosaic_message_bus_1 = require("@axinom/mosaic-message-bus");
@@ -40,12 +40,15 @@ const BulkEditAsyncPluginFactory = (tableName, bulkEditMutationName, getLongLive
40
40
  // Check if there are any FK relations after filtering exclusions
41
41
  const foreignKeyRelations = getAffectedForeignKeyRelations(pgTable, excludedForeignKeyRelations);
42
42
  const hasForeignKeyRelations = foreignKeyRelations.length > 0;
43
- const addInputTypeForFKs = hasForeignKeyRelations
44
- ? generateInputTypeForFKs(build, pgTable, 'Add', excludedForeignKeyRelations)
43
+ const clearInputTypeForFKs = hasForeignKeyRelations
44
+ ? generateClearInputTypeForFKs(build, pgTable, excludedForeignKeyRelations)
45
45
  : undefined;
46
46
  const removeInputTypeForFKs = hasForeignKeyRelations
47
47
  ? generateInputTypeForFKs(build, pgTable, 'Remove', excludedForeignKeyRelations)
48
48
  : undefined;
49
+ const addInputTypeForFKs = hasForeignKeyRelations
50
+ ? generateInputTypeForFKs(build, pgTable, 'Add', excludedForeignKeyRelations)
51
+ : undefined;
49
52
  const BulkEditPayloadType = getBulkEditPayloadType(build);
50
53
  const args = {
51
54
  filter: {
@@ -55,6 +58,11 @@ const BulkEditAsyncPluginFactory = (tableName, bulkEditMutationName, getLongLive
55
58
  type: patchType,
56
59
  },
57
60
  };
61
+ if (clearInputTypeForFKs) {
62
+ args.relatedEntitiesToClear = {
63
+ type: clearInputTypeForFKs,
64
+ };
65
+ }
58
66
  if (removeInputTypeForFKs) {
59
67
  args.relatedEntitiesToRemove = {
60
68
  type: removeInputTypeForFKs,
@@ -71,16 +79,32 @@ const BulkEditAsyncPluginFactory = (tableName, bulkEditMutationName, getLongLive
71
79
  async resolve(_parent, input, context, resolveInfo) {
72
80
  var _a;
73
81
  const { config, jwtToken, subject, ownerPool, envOwnerPool, storeInboxMessage, } = context;
82
+ if (config === undefined) {
83
+ throw new Error(`The service config [field: config] was unable to be resolved from the GQL context for the Bulk Edit operations.`);
84
+ }
85
+ if (jwtToken === undefined) {
86
+ throw new Error(`The JWT token [field: jwtToken] was unable to be resolved from the GQL context for the Bulk Edit operations.`);
87
+ }
88
+ if (subject === undefined) {
89
+ throw new Error(`The authenticated subject [field: subject] was unable to be resolved from the GQL context for the Bulk Edit operations.`);
90
+ }
91
+ if (envOwnerPool === undefined && ownerPool === undefined) {
92
+ throw new Error(`The DB connection pool [fields: envOwnerPool, ownerPool] was unable to be resolved from the GQL context for the Bulk Edit operations.`);
93
+ }
94
+ if (storeInboxMessage === undefined) {
95
+ throw new Error(`The storeInboxMessage function [field: storeInboxMessage] was unable to be resolved from the GQL context for the Bulk Edit operations. Ensure that the service uses the Transactional Inbox-Outbox implementation.`);
96
+ }
74
97
  const longLivedToken = await getLongLivedToken(jwtToken, config);
75
98
  const entityIds = await getEntityIds({
76
99
  filterName: connectionFilterType.name,
77
100
  queryName: inflection.allRows(pgTable),
78
101
  primaryKeyFieldName: inflection.column((_a = pgTable.primaryKeyConstraint) === null || _a === void 0 ? void 0 : _a.keyAttributes[0]),
79
102
  }, build.graphql, input, context, resolveInfo.schema);
80
- const { set, relatedEntitiesToRemove, relatedEntitiesToAdd } = input;
81
- const { removals, additions } = getFkResolverPayload(build, pgTable, relatedEntitiesToRemove, relatedEntitiesToAdd, excludedForeignKeyRelations);
103
+ const { set, relatedEntitiesToClear, relatedEntitiesToRemove, relatedEntitiesToAdd, } = input;
104
+ const { clears, removals, additions } = getFkResolverPayload(build, pgTable, relatedEntitiesToClear, relatedEntitiesToRemove, relatedEntitiesToAdd, excludedForeignKeyRelations);
82
105
  await asyncResolverImplementation({
83
106
  set: getMainResolverPayload(build, pgTable, set),
107
+ clears,
84
108
  removals,
85
109
  additions,
86
110
  }, entityIds, config, ownerPool, envOwnerPool, longLivedToken, subject, storeInboxMessage);
@@ -127,8 +151,18 @@ function getMainResolverPayload(build, pgTable, set) {
127
151
  inputData: set,
128
152
  };
129
153
  }
130
- // TODO: Can be potentially optimized (i.e. with getAffectedForeignKeyRelations or with asyncResolverImplementation)
131
- function getFkResolverPayload(build, pgTable, relatedEntitiesToRemove, relatedEntitiesToAdd, excludedForeignKeyRelations) {
154
+ /**
155
+ * Processes foreign key relation inputs and converts them into structured payloads
156
+ * for additions, removals, and clears operations.
157
+ *
158
+ * @returns Object containing metadata for all FK operations:
159
+ * - clears: Boolean flags for clearing all entities in a relation
160
+ * - removals: Specific entities to remove from relations
161
+ * - additions: Specific entities to add to relations
162
+ *
163
+ * TODO: Can be potentially optimized (i.e. with getAffectedForeignKeyRelations or with asyncResolverImplementation)
164
+ */
165
+ function getFkResolverPayload(build, pgTable, relatedEntitiesToClear, relatedEntitiesToRemove, relatedEntitiesToAdd, excludedForeignKeyRelations) {
132
166
  var _a, _b;
133
167
  const inflection = build.inflection;
134
168
  const foreignKeyRelations = getAffectedForeignKeyRelations(pgTable, excludedForeignKeyRelations);
@@ -145,15 +179,18 @@ function getFkResolverPayload(build, pgTable, relatedEntitiesToRemove, relatedEn
145
179
  parentKeyColumnName: parentKey.name,
146
180
  };
147
181
  }
148
- const additions = {};
182
+ const clears = {};
149
183
  const removals = {};
184
+ const additions = {};
150
185
  for (const fkProps of Object.keys(fkProcessingMetadata)) {
151
- if (relatedEntitiesToAdd) {
152
- additions[fkProps] = {
153
- parentKeyColumnName: fkProcessingMetadata[fkProps].parentKeyColumnName,
154
- inputData: relatedEntitiesToAdd[fkProcessingMetadata[fkProps].fkGqlFieldName],
155
- fkGqlFieldNameToColumnNameMap: fkProcessingMetadata[fkProps].fkGqlFieldNameToColumnNameMap,
156
- };
186
+ if (relatedEntitiesToClear) {
187
+ const shouldClear = relatedEntitiesToClear[fkProcessingMetadata[fkProps].fkGqlFieldName];
188
+ if (shouldClear) {
189
+ clears[fkProps] = {
190
+ parentKeyColumnName: fkProcessingMetadata[fkProps].parentKeyColumnName,
191
+ shouldClear: true,
192
+ };
193
+ }
157
194
  }
158
195
  if (relatedEntitiesToRemove) {
159
196
  removals[fkProps] = {
@@ -162,18 +199,33 @@ function getFkResolverPayload(build, pgTable, relatedEntitiesToRemove, relatedEn
162
199
  fkGqlFieldNameToColumnNameMap: fkProcessingMetadata[fkProps].fkGqlFieldNameToColumnNameMap,
163
200
  };
164
201
  }
202
+ if (relatedEntitiesToAdd) {
203
+ additions[fkProps] = {
204
+ parentKeyColumnName: fkProcessingMetadata[fkProps].parentKeyColumnName,
205
+ inputData: relatedEntitiesToAdd[fkProcessingMetadata[fkProps].fkGqlFieldName],
206
+ fkGqlFieldNameToColumnNameMap: fkProcessingMetadata[fkProps].fkGqlFieldNameToColumnNameMap,
207
+ };
208
+ }
165
209
  }
166
- return { additions, removals };
210
+ return { clears, removals, additions };
167
211
  }
212
+ /**
213
+ * Exported for testing purposes
214
+ * @internal
215
+ */
168
216
  async function asyncResolverImplementation(bulkItemChangePayload, entityIds, config, ownerPool, envOwnerPool, longLivedToken, subject, storeInboxMessage) {
169
217
  const pool = envOwnerPool ? envOwnerPool : ownerPool;
170
218
  const dbRole = envOwnerPool ? config.dbEnvOwner : config.dbOwner;
171
219
  const pgSettings = (0, mosaic_db_common_1.buildPgSettings)(subject, dbRole, config.serviceId);
172
220
  await (0, mosaic_db_common_1.transactionWithContext)(pool, pg_transactional_outbox_1.IsolationLevel.ReadCommitted, pgSettings, async (txn) => {
173
- // Iterate all the entity IDs
221
+ // Process each entity ID and send messages in this order:
222
+ // 1. SET_FIELD_VALUES (update main entity fields)
223
+ // 2. CLEAR_RELATED_ENTITIES (clear all FK relations)
224
+ // 3. REMOVE_RELATED_ENTITY (remove specific FK entities, skip if cleared)
225
+ // 4. ADD_RELATED_ENTITY (add new FK entities)
174
226
  for (const entity_id of entityIds) {
227
+ // SET_FIELD_VALUES
175
228
  if (bulkItemChangePayload.set.inputData) {
176
- // Generate the SET_FIELD_VALUES payload
177
229
  const actionSetPayload = {
178
230
  table_name: bulkItemChangePayload.set.mainTableName,
179
231
  action: 'SET_FIELD_VALUES',
@@ -183,13 +235,37 @@ async function asyncResolverImplementation(bulkItemChangePayload, entityIds, con
183
235
  // TODO: Add a DEBUG log for `actionSetPayload`
184
236
  await sendMessage(config, storeInboxMessage, actionSetPayload, txn, longLivedToken);
185
237
  }
238
+ // CLEAR_RELATED_ENTITIES - Process clears FIRST before any deletions
239
+ const clearedRelations = new Set();
240
+ if (bulkItemChangePayload.clears) {
241
+ const fkTableNames = Object.keys(bulkItemChangePayload.clears);
242
+ for (const fkTableName of fkTableNames) {
243
+ const fkClearMetadata = bulkItemChangePayload.clears[fkTableName];
244
+ if (fkClearMetadata.shouldClear) {
245
+ clearedRelations.add(fkTableName); // Track cleared relations
246
+ const clearPayload = {
247
+ table_name: fkTableName,
248
+ action: 'CLEAR_RELATED_ENTITIES',
249
+ stringified_condition: JSON.stringify({
250
+ [fkClearMetadata.parentKeyColumnName]: entity_id,
251
+ }),
252
+ stringified_payload: JSON.stringify({}),
253
+ };
254
+ // TODO: Add a DEBUG log for `clearPayload`
255
+ await sendMessage(config, storeInboxMessage, clearPayload, txn, longLivedToken);
256
+ }
257
+ }
258
+ }
259
+ // REMOVE_RELATED_ENTITY - Skip if relation is being cleared
186
260
  if (bulkItemChangePayload.removals) {
187
261
  const fkTableNames = Object.keys(bulkItemChangePayload.removals);
188
- // Iterate each related FK table where entities will be removed
189
262
  for (const fkTableName of fkTableNames) {
263
+ // Skip if this relation is being cleared (optimization)
264
+ if (clearedRelations.has(fkTableName)) {
265
+ continue;
266
+ }
190
267
  const fkRemovalMetadata = bulkItemChangePayload.removals[fkTableName];
191
268
  if (fkRemovalMetadata.inputData) {
192
- // Generate the REMOVE_RELATED_ENTITY payload per entity of the FK table
193
269
  for (const itemToRemove of fkRemovalMetadata.inputData) {
194
270
  const removePayload = {
195
271
  table_name: fkTableName,
@@ -203,16 +279,15 @@ async function asyncResolverImplementation(bulkItemChangePayload, entityIds, con
203
279
  }
204
280
  }
205
281
  }
206
- if (Object.keys(bulkItemChangePayload.additions).length > 0) {
207
- const fkTables = Object.keys(bulkItemChangePayload.additions);
208
- // Iterate each related FK table where entities will be added
209
- for (const fkTable of fkTables) {
210
- const fkAdditionMetadata = bulkItemChangePayload.additions[fkTable];
282
+ // ADD_RELATED_ENTITY
283
+ if (bulkItemChangePayload.additions) {
284
+ const fkTableNames = Object.keys(bulkItemChangePayload.additions);
285
+ for (const fkTableName of fkTableNames) {
286
+ const fkAdditionMetadata = bulkItemChangePayload.additions[fkTableName];
211
287
  if (fkAdditionMetadata.inputData) {
212
- // Generate the ADD_RELATED_ENTITY payload per entity of the FK table
213
288
  for (const itemToAdd of fkAdditionMetadata.inputData) {
214
289
  const addPayload = {
215
- table_name: fkTable,
290
+ table_name: fkTableName,
216
291
  action: 'ADD_RELATED_ENTITY',
217
292
  stringified_condition: '',
218
293
  stringified_payload: JSON.stringify(Object.assign({ [fkAdditionMetadata.parentKeyColumnName]: entity_id }, mapGqlInputObjectToSqlColumnNames(itemToAdd, fkAdditionMetadata.fkGqlFieldNameToColumnNameMap))),
@@ -226,6 +301,7 @@ async function asyncResolverImplementation(bulkItemChangePayload, entityIds, con
226
301
  }
227
302
  });
228
303
  }
304
+ exports.asyncResolverImplementation = asyncResolverImplementation;
229
305
  async function sendMessage(config, storeInboxMessage, changeSetPayload, client, longLivedToken) {
230
306
  const messageSettings = mosaic_messages_1.CommonServiceMessagingSettings.GetPerformItemChangeSettings(config.serviceId);
231
307
  return storeInboxMessage(mosaic_message_bus_1.MULTIPLE_AGGREGATE_IDS, messageSettings, changeSetPayload, client, {
@@ -242,6 +318,25 @@ function mapGqlInputObjectToSqlColumnNames(sourceGqlInputObject, gqlToSqlColumnN
242
318
  return map;
243
319
  }, {});
244
320
  }
321
+ // Generate input type for clearing FK relations (boolean flags)
322
+ function generateClearInputTypeForFKs(build, pgTable, excludedForeignKeyRelations) {
323
+ const inflection = build.inflection;
324
+ const clearInputFieldsMap = {};
325
+ // Filter only the interesting FK relations
326
+ const foreignKeyRelations = getAffectedForeignKeyRelations(pgTable, excludedForeignKeyRelations);
327
+ for (const fkConstraint of foreignKeyRelations) {
328
+ // Add a boolean field for each FK relation
329
+ clearInputFieldsMap[inflection.allRows(fkConstraint.class)] = {
330
+ type: graphql_1.GraphQLBoolean,
331
+ };
332
+ }
333
+ const ClearInputType = new graphql_1.GraphQLInputObjectType({
334
+ name: `BulkEditAsync${inflection.tableType(pgTable)}ClearInput`,
335
+ fields: () => (Object.assign({}, clearInputFieldsMap)),
336
+ });
337
+ build.addType(ClearInputType);
338
+ return ClearInputType;
339
+ }
245
340
  // TODO: Handle `insertable` | `deletable` GRANTS for FK Relations
246
341
  function generateInputTypeForFKs(build, pgTable, action, excludedForeignKeyRelations) {
247
342
  var _a, _b;
@@ -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":"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"}
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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"}
@@ -4,5 +4,12 @@ import { StoreOutboxMessage, TypedTransactionalMessage } from '@axinom/mosaic-tr
4
4
  import { ClientBase } from 'pg';
5
5
  import { DatabaseClient } from 'pg-transactional-outbox';
6
6
  export declare function handlePerformItemChangeCommand(payload: PerformItemChangeCommand, client: ClientBase): Promise<void>;
7
- export declare function handlePerformItemChangeCommandError(config: BasicConfig, error: Error, message: TypedTransactionalMessage<PerformItemChangeCommand>, storeOutboxMessage: StoreOutboxMessage, client: DatabaseClient): Promise<void>;
7
+ /**
8
+ * !NOTE!
9
+ *
10
+ * This is a temporary stub implementation that needs to be properly implemented later.
11
+ * The idea is to have a way to track failed item change commands and notify the users
12
+ * or systems about the failures.
13
+ */
14
+ export declare function handlePerformItemChangeCommandError(_config: BasicConfig, _error: Error, _message: TypedTransactionalMessage<PerformItemChangeCommand>, _storeOutboxMessage: StoreOutboxMessage, _client: DatabaseClient): Promise<void>;
8
15
  //# sourceMappingURL=bulk-edit-item-change-handler-helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bulk-edit-item-change-handler-helpers.d.ts","sourceRoot":"","sources":["../../../src/plugins/bulk-edit/bulk-edit-item-change-handler-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EAC1B,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,UAAU,EAAe,MAAM,IAAI,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAoDzD,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,wBAAwB,EACjC,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,IAAI,CAAC,CAwCf;AAED,wBAAsB,mCAAmC,CACvD,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,yBAAyB,CAAC,wBAAwB,CAAC,EAC5D,kBAAkB,EAAE,kBAAkB,EACtC,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC,CAoBf"}
1
+ {"version":3,"file":"bulk-edit-item-change-handler-helpers.d.ts","sourceRoot":"","sources":["../../../src/plugins/bulk-edit/bulk-edit-item-change-handler-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EAC1B,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,UAAU,EAAe,MAAM,IAAI,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAoEzD,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,wBAAwB,EACjC,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED;;;;;;GAMG;AACH,wBAAsB,mCAAmC,CACvD,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,KAAK,EACb,QAAQ,EAAE,yBAAyB,CAAC,wBAAwB,CAAC,EAC7D,mBAAmB,EAAE,kBAAkB,EACvC,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,IAAI,CAAC,CAoBf"}
@@ -1,62 +1,68 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.handlePerformItemChangeCommandError = exports.handlePerformItemChangeCommand = void 0;
4
- async function insert(client, tableName, jsonObject) {
5
- const columns = Object.keys(jsonObject).join(', ');
4
+ async function upsert(client, tableName, jsonObject) {
5
+ const columns = Object.keys(jsonObject)
6
+ .map((col) => `"${col}"`)
7
+ .join(', ');
6
8
  const values = Object.values(jsonObject);
7
9
  const placeholders = values.map((_, index) => `$${index + 1}`).join(', ');
8
- const query = `INSERT INTO ${tableName} (${columns}) VALUES (${placeholders}) RETURNING *`;
10
+ const query = `INSERT INTO "${tableName}" (${columns}) VALUES (${placeholders}) ON CONFLICT DO NOTHING RETURNING *`;
9
11
  return client.query(query, values);
10
12
  }
11
13
  async function update(client, tableName, jsonObject, condition) {
12
14
  const setClause = Object.keys(jsonObject)
13
- .map((key, index) => `${key} = $${index + 1}`)
15
+ .map((key, index) => `"${key}" = $${index + 1}`)
14
16
  .join(', ');
15
17
  const values = Object.values(jsonObject);
16
- const conditionClause = Object.keys(condition)
17
- .map((key, index) => `${key} = $${index + 1 + values.length}`)
18
- .join(' AND ');
19
- const conditionValues = Object.values(condition);
20
- const query = `UPDATE ${tableName} SET ${setClause} WHERE ${conditionClause} RETURNING *`;
18
+ const { clause: conditionClause, values: conditionValues } = buildWhereClause(condition, values.length);
19
+ const query = `UPDATE "${tableName}" SET ${setClause} WHERE ${conditionClause} RETURNING *`;
21
20
  return client.query(query, [...values, ...conditionValues]);
22
21
  }
23
- async function deletes(client, tableName, jsonObject) {
24
- const conditionClause = Object.keys(jsonObject)
25
- .map((key, index) => `${key} = $${index + 1}`)
22
+ /**
23
+ * Helper to build WHERE clause from a condition object
24
+ */
25
+ function buildWhereClause(condition, parameterOffset = 0) {
26
+ const values = Object.values(condition);
27
+ const clause = Object.keys(condition)
28
+ .map((key, index) => `"${key}" = $${index + 1 + parameterOffset}`)
26
29
  .join(' AND ');
27
- const conditionValues = Object.values(jsonObject);
28
- const query = `DELETE FROM ${tableName} WHERE ${conditionClause} RETURNING *`;
29
- return client.query(query, conditionValues);
30
+ return { clause, values };
31
+ }
32
+ /**
33
+ * Deletes records from a table matching the given condition
34
+ */
35
+ async function deleteWhere(client, tableName, condition) {
36
+ const { clause, values } = buildWhereClause(condition);
37
+ const query = `DELETE FROM "${tableName}" WHERE ${clause} RETURNING *`;
38
+ return client.query(query, values);
30
39
  }
31
40
  async function handlePerformItemChangeCommand(payload, client) {
32
- try {
33
- if (payload.action === 'SET_FIELD_VALUES') {
41
+ switch (payload.action) {
42
+ case 'SET_FIELD_VALUES':
34
43
  await update(client, payload.table_name, JSON.parse(payload.stringified_payload), { id: JSON.parse(payload.stringified_condition).id });
35
- }
36
- else if (payload.action === 'REMOVE_RELATED_ENTITY') {
37
- await deletes(client, payload.table_name, JSON.parse(payload.stringified_payload));
38
- }
39
- else if (payload.action === 'ADD_RELATED_ENTITY') {
40
- await insert(client, payload.table_name, JSON.parse(payload.stringified_payload));
41
- }
42
- // TODO: Publish success event or implement a JOB tracking/monitoring mechanism
43
- }
44
- catch (error) {
45
- // TODO: If error is a known/expected one like `duplicate key value violates unique constraint` we ignore it, else we throw it and bubble up.
46
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
47
- const errorAsAny = error;
48
- if (errorAsAny.message &&
49
- typeof errorAsAny.message === 'string' &&
50
- errorAsAny.message.startsWith('duplicate key value violates unique constraint')) {
51
- // Skipping duplicate key error
52
- }
53
- else {
54
- throw error;
55
- }
44
+ break;
45
+ case 'CLEAR_RELATED_ENTITIES':
46
+ await deleteWhere(client, payload.table_name, JSON.parse(payload.stringified_condition));
47
+ break;
48
+ case 'REMOVE_RELATED_ENTITY':
49
+ await deleteWhere(client, payload.table_name, JSON.parse(payload.stringified_payload));
50
+ break;
51
+ case 'ADD_RELATED_ENTITY':
52
+ await upsert(client, payload.table_name, JSON.parse(payload.stringified_payload));
53
+ break;
56
54
  }
55
+ // TODO: Publish success event or implement a JOB tracking/monitoring mechanism
57
56
  }
58
57
  exports.handlePerformItemChangeCommand = handlePerformItemChangeCommand;
59
- async function handlePerformItemChangeCommandError(config, error, message, storeOutboxMessage, client) {
58
+ /**
59
+ * !NOTE!
60
+ *
61
+ * This is a temporary stub implementation that needs to be properly implemented later.
62
+ * The idea is to have a way to track failed item change commands and notify the users
63
+ * or systems about the failures.
64
+ */
65
+ async function handlePerformItemChangeCommandError(_config, _error, _message, _storeOutboxMessage, _client) {
60
66
  // TODO: Publish failed event or implement a JOB tracking/monitoring mechanism
61
67
  //
62
68
  // await storeOutboxMessage<PerformItemChangeFailedEvent>(
@@ -1 +1 @@
1
- {"version":3,"file":"bulk-edit-item-change-handler-helpers.js","sourceRoot":"","sources":["../../../src/plugins/bulk-edit/bulk-edit-item-change-handler-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bulk-edit-item-change-handler-helpers.js","sourceRoot":"","sources":["../../../src/plugins/bulk-edit/bulk-edit-item-change-handler-helpers.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.28.0-rc.8",
3
+ "version": "0.28.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.52.0-rc.8",
35
- "@axinom/mosaic-message-bus": "^0.45.0-rc.8",
34
+ "@axinom/mosaic-db-common": "^0.52.0",
35
+ "@axinom/mosaic-message-bus": "^0.45.0",
36
36
  "@axinom/mosaic-message-bus-abstractions": "^0.24.0",
37
- "@axinom/mosaic-messages": "^0.62.0-rc.8",
38
- "@axinom/mosaic-service-common": "^0.64.0-rc.8",
39
- "@axinom/mosaic-transactional-inbox-outbox": "^0.24.0-rc.8",
37
+ "@axinom/mosaic-messages": "^0.62.0",
38
+ "@axinom/mosaic-service-common": "^0.64.0",
39
+ "@axinom/mosaic-transactional-inbox-outbox": "^0.24.0",
40
40
  "@graphile/pg-pubsub": "^4.12.3",
41
41
  "endent": "^2.1.0",
42
42
  "express": "^4.17.1",
@@ -48,7 +48,7 @@
48
48
  "jest": "^29",
49
49
  "jest-expect-message": "^1.1.3",
50
50
  "pg": "^8.11.3",
51
- "pg-transactional-outbox": "^0.5.7",
51
+ "pg-transactional-outbox": "^0.6.4",
52
52
  "postgraphile": "^4.13.0"
53
53
  },
54
54
  "devDependencies": {
@@ -66,5 +66,5 @@
66
66
  "publishConfig": {
67
67
  "access": "public"
68
68
  },
69
- "gitHead": "b423cad67c00b75057d5304354ba9429e69d2d03"
69
+ "gitHead": "c484ceff643b3ac656a5a5aebb30394be58ee2e0"
70
70
  }