n8n 1.112.5 → 1.113.1

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.
Files changed (124) hide show
  1. package/dist/active-executions.d.ts +3 -1
  2. package/dist/active-executions.js +6 -2
  3. package/dist/active-executions.js.map +1 -1
  4. package/dist/build.tsbuildinfo +1 -1
  5. package/dist/chat/chat-execution-manager.js +7 -1
  6. package/dist/chat/chat-execution-manager.js.map +1 -1
  7. package/dist/commands/export/entities.d.ts +14 -0
  8. package/dist/commands/export/entities.js +46 -0
  9. package/dist/commands/export/entities.js.map +1 -0
  10. package/dist/commands/import/entities.d.ts +14 -0
  11. package/dist/commands/import/entities.js +47 -0
  12. package/dist/commands/import/entities.js.map +1 -0
  13. package/dist/controllers/me.controller.d.ts +1 -0
  14. package/dist/controllers/me.controller.js +50 -21
  15. package/dist/controllers/me.controller.js.map +1 -1
  16. package/dist/controllers/role.controller.d.ts +3 -3
  17. package/dist/controllers/role.controller.js +9 -6
  18. package/dist/controllers/role.controller.js.map +1 -1
  19. package/dist/credentials/credentials-finder.service.d.ts +3 -1
  20. package/dist/credentials/credentials-finder.service.js +23 -10
  21. package/dist/credentials/credentials-finder.service.js.map +1 -1
  22. package/dist/credentials/credentials.service.ee.d.ts +3 -1
  23. package/dist/credentials/credentials.service.ee.js +7 -3
  24. package/dist/credentials/credentials.service.ee.js.map +1 -1
  25. package/dist/credentials/credentials.service.js +2 -2
  26. package/dist/credentials/credentials.service.js.map +1 -1
  27. package/dist/deprecation/deprecation.service.js +5 -0
  28. package/dist/deprecation/deprecation.service.js.map +1 -1
  29. package/dist/environments.ee/source-control/source-control-resource-helper.d.ts +4 -0
  30. package/dist/environments.ee/source-control/source-control-resource-helper.js +21 -0
  31. package/dist/environments.ee/source-control/source-control-resource-helper.js.map +1 -0
  32. package/dist/environments.ee/source-control/source-control-status.service.ee.d.ts +79 -0
  33. package/dist/environments.ee/source-control/source-control-status.service.ee.js +439 -0
  34. package/dist/environments.ee/source-control/source-control-status.service.ee.js.map +1 -0
  35. package/dist/environments.ee/source-control/source-control.service.ee.d.ts +22 -40
  36. package/dist/environments.ee/source-control/source-control.service.ee.js +23 -428
  37. package/dist/environments.ee/source-control/source-control.service.ee.js.map +1 -1
  38. package/dist/evaluation.ee/test-runner/test-runner.service.ee.js +13 -4
  39. package/dist/evaluation.ee/test-runner/test-runner.service.ee.js.map +1 -1
  40. package/dist/events/maps/relay.event-map.d.ts +3 -0
  41. package/dist/execution-lifecycle/execution-lifecycle-hooks.js +7 -3
  42. package/dist/execution-lifecycle/execution-lifecycle-hooks.js.map +1 -1
  43. package/dist/executions/execution.service.d.ts +5 -2
  44. package/dist/executions/execution.service.js +46 -24
  45. package/dist/executions/execution.service.js.map +1 -1
  46. package/dist/executions/executions.controller.d.ts +5 -0
  47. package/dist/executions/executions.controller.js +16 -4
  48. package/dist/executions/executions.controller.js.map +1 -1
  49. package/dist/modules/data-table/data-store-aggregate.controller.d.ts +1 -4
  50. package/dist/modules/data-table/data-store-aggregate.controller.js +3 -3
  51. package/dist/modules/data-table/data-store-aggregate.controller.js.map +1 -1
  52. package/dist/modules/data-table/data-store-proxy.service.d.ts +4 -0
  53. package/dist/modules/data-table/data-store-proxy.service.js +11 -1
  54. package/dist/modules/data-table/data-store-proxy.service.js.map +1 -1
  55. package/dist/modules/data-table/data-store-rows.repository.js +12 -2
  56. package/dist/modules/data-table/data-store-rows.repository.js.map +1 -1
  57. package/dist/modules/data-table/data-store-size-validator.service.d.ts +5 -5
  58. package/dist/modules/data-table/data-store-size-validator.service.js +16 -15
  59. package/dist/modules/data-table/data-store-size-validator.service.js.map +1 -1
  60. package/dist/modules/data-table/data-store.controller.js +1 -1
  61. package/dist/modules/data-table/data-store.controller.js.map +1 -1
  62. package/dist/modules/data-table/data-store.repository.d.ts +6 -2
  63. package/dist/modules/data-table/data-store.repository.js +117 -31
  64. package/dist/modules/data-table/data-store.repository.js.map +1 -1
  65. package/dist/modules/data-table/data-store.service.d.ts +8 -6
  66. package/dist/modules/data-table/data-store.service.js +51 -20
  67. package/dist/modules/data-table/data-store.service.js.map +1 -1
  68. package/dist/modules/data-table/utils/sql-utils.d.ts +2 -0
  69. package/dist/modules/data-table/utils/sql-utils.js +7 -2
  70. package/dist/modules/data-table/utils/sql-utils.js.map +1 -1
  71. package/dist/modules/external-secrets.ee/external-secrets-manager.ee.d.ts +1 -1
  72. package/dist/modules/external-secrets.ee/external-secrets-manager.ee.js +22 -9
  73. package/dist/modules/external-secrets.ee/external-secrets-manager.ee.js.map +1 -1
  74. package/dist/modules/insights/database/repositories/insights-by-period.repository.d.ts +6 -3
  75. package/dist/modules/insights/database/repositories/insights-by-period.repository.js +21 -8
  76. package/dist/modules/insights/database/repositories/insights-by-period.repository.js.map +1 -1
  77. package/dist/modules/insights/insights.controller.d.ts +1 -1
  78. package/dist/modules/insights/insights.controller.js +6 -2
  79. package/dist/modules/insights/insights.controller.js.map +1 -1
  80. package/dist/modules/insights/insights.service.d.ts +6 -3
  81. package/dist/modules/insights/insights.service.js +6 -3
  82. package/dist/modules/insights/insights.service.js.map +1 -1
  83. package/dist/permissions.ee/check-access.js +6 -3
  84. package/dist/permissions.ee/check-access.js.map +1 -1
  85. package/dist/public-api/v1/openapi.yml +1 -1
  86. package/dist/scaling/constants.d.ts +2 -2
  87. package/dist/scaling/pubsub/pubsub.event-map.d.ts +1 -0
  88. package/dist/scaling/pubsub/pubsub.types.d.ts +2 -1
  89. package/dist/services/export.service.d.ts +9 -0
  90. package/dist/services/export.service.js +107 -0
  91. package/dist/services/export.service.js.map +1 -0
  92. package/dist/services/frontend.service.js +1 -0
  93. package/dist/services/frontend.service.js.map +1 -1
  94. package/dist/services/project.service.ee.d.ts +4 -2
  95. package/dist/services/project.service.ee.js +19 -4
  96. package/dist/services/project.service.ee.js.map +1 -1
  97. package/dist/services/role-cache.service.d.ts +14 -0
  98. package/dist/services/role-cache.service.js +79 -0
  99. package/dist/services/role-cache.service.js.map +1 -0
  100. package/dist/services/role.service.d.ts +16 -4
  101. package/dist/services/role.service.js +30 -7
  102. package/dist/services/role.service.js.map +1 -1
  103. package/dist/sso.ee/saml/saml.service.ee.d.ts +8 -3
  104. package/dist/sso.ee/saml/saml.service.ee.js +49 -5
  105. package/dist/sso.ee/saml/saml.service.ee.js.map +1 -1
  106. package/dist/task-runners/task-managers/task-requester.d.ts +5 -0
  107. package/dist/task-runners/task-managers/task-requester.js +42 -0
  108. package/dist/task-runners/task-managers/task-requester.js.map +1 -1
  109. package/dist/task-runners/task-runner-module.d.ts +3 -1
  110. package/dist/task-runners/task-runner-module.js +8 -2
  111. package/dist/task-runners/task-runner-module.js.map +1 -1
  112. package/dist/utils/get-item-count-by-connection-type.d.ts +2 -0
  113. package/dist/utils/get-item-count-by-connection-type.js +20 -0
  114. package/dist/utils/get-item-count-by-connection-type.js.map +1 -0
  115. package/dist/webhooks/webhook-request-handler.js +4 -26
  116. package/dist/webhooks/webhook-request-handler.js.map +1 -1
  117. package/dist/workflows/workflow-finder.service.d.ts +3 -1
  118. package/dist/workflows/workflow-finder.service.js +13 -6
  119. package/dist/workflows/workflow-finder.service.js.map +1 -1
  120. package/dist/workflows/workflow-sharing.service.js +6 -2
  121. package/dist/workflows/workflow-sharing.service.js.map +1 -1
  122. package/dist/workflows/workflows.controller.js +1 -1
  123. package/dist/workflows/workflows.controller.js.map +1 -1
  124. package/package.json +27 -27
@@ -14,9 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.SourceControlService = void 0;
16
16
  const backend_common_1 = require("@n8n/backend-common");
17
- const db_1 = require("@n8n/db");
18
17
  const di_1 = require("@n8n/di");
19
- const permissions_1 = require("@n8n/permissions");
20
18
  const fs_1 = require("fs");
21
19
  const n8n_workflow_1 = require("n8n-workflow");
22
20
  const path_1 = __importDefault(require("path"));
@@ -26,22 +24,23 @@ const source_control_git_service_ee_1 = require("./source-control-git.service.ee
26
24
  const source_control_helper_ee_1 = require("./source-control-helper.ee");
27
25
  const source_control_import_service_ee_1 = require("./source-control-import.service.ee");
28
26
  const source_control_preferences_service_ee_1 = require("./source-control-preferences.service.ee");
27
+ const source_control_status_service_ee_1 = require("./source-control-status.service.ee");
29
28
  const source_control_scoped_service_1 = require("./source-control-scoped.service");
30
29
  const source_control_context_1 = require("./types/source-control-context");
31
30
  const bad_request_error_1 = require("../../errors/response-errors/bad-request.error");
32
31
  const forbidden_error_1 = require("../../errors/response-errors/forbidden.error");
33
32
  const event_service_1 = require("../../events/event.service");
33
+ const source_control_resource_helper_1 = require("./source-control-resource-helper");
34
34
  let SourceControlService = class SourceControlService {
35
- constructor(logger, gitService, sourceControlPreferencesService, sourceControlExportService, sourceControlImportService, sourceControlScopedService, tagRepository, folderRepository, eventService) {
35
+ constructor(logger, gitService, sourceControlPreferencesService, sourceControlExportService, sourceControlImportService, sourceControlScopedService, eventService, sourceControlStatusService) {
36
36
  this.logger = logger;
37
37
  this.gitService = gitService;
38
38
  this.sourceControlPreferencesService = sourceControlPreferencesService;
39
39
  this.sourceControlExportService = sourceControlExportService;
40
40
  this.sourceControlImportService = sourceControlImportService;
41
41
  this.sourceControlScopedService = sourceControlScopedService;
42
- this.tagRepository = tagRepository;
43
- this.folderRepository = folderRepository;
44
42
  this.eventService = eventService;
43
+ this.sourceControlStatusService = sourceControlStatusService;
45
44
  const { gitFolder, sshFolder, sshKeyName } = sourceControlPreferencesService;
46
45
  this.gitFolder = gitFolder;
47
46
  this.sshFolder = sshFolder;
@@ -190,7 +189,7 @@ let SourceControlService = class SourceControlService {
190
189
  file: normalizedPath,
191
190
  };
192
191
  });
193
- const allowedResources = (await this.getStatus(user, {
192
+ const allowedResources = (await this.sourceControlStatusService.getStatus(user, {
194
193
  direction: 'push',
195
194
  verbose: false,
196
195
  preferLocalVersion: true,
@@ -228,9 +227,9 @@ let SourceControlService = class SourceControlService {
228
227
  }
229
228
  });
230
229
  this.sourceControlExportService.rmFilesFromExportFolder(filesToBeDeleted);
231
- const workflowsToBeExported = filesToPush.filter((e) => e.type === 'workflow' && e.status !== 'deleted');
230
+ const workflowsToBeExported = (0, source_control_resource_helper_1.getNonDeletedResources)(filesToPush, 'workflow');
232
231
  await this.sourceControlExportService.exportWorkflowsToWorkFolder(workflowsToBeExported);
233
- const credentialsToBeExported = filesToPush.filter((e) => e.type === 'credential' && e.status !== 'deleted');
232
+ const credentialsToBeExported = (0, source_control_resource_helper_1.getNonDeletedResources)(filesToPush, 'credential');
234
233
  const credentialExportResult = await this.sourceControlExportService.exportCredentialsToWorkFolder(credentialsToBeExported);
235
234
  if (credentialExportResult.missingIds && credentialExportResult.missingIds.length > 0) {
236
235
  credentialExportResult.missingIds.forEach((id) => {
@@ -240,12 +239,12 @@ let SourceControlService = class SourceControlService {
240
239
  }
241
240
  filesToBePushed.add((0, source_control_helper_ee_1.getTagsPath)(this.gitFolder));
242
241
  await this.sourceControlExportService.exportTagsToWorkFolder(context);
243
- const folderChanges = filesToPush.find((e) => e.type === 'folders');
242
+ const folderChanges = (0, source_control_resource_helper_1.filterByType)(filesToPush, 'folders')[0];
244
243
  if (folderChanges) {
245
244
  filesToBePushed.add(folderChanges.file);
246
245
  await this.sourceControlExportService.exportFoldersToWorkFolder(context);
247
246
  }
248
- const variablesChanges = filesToPush.find((e) => e.type === 'variables');
247
+ const variablesChanges = (0, source_control_resource_helper_1.filterByType)(filesToPush, 'variables')[0];
249
248
  if (variablesChanges) {
250
249
  filesToBePushed.add(variablesChanges.file);
251
250
  await this.sourceControlExportService.exportVariablesToWorkFolder();
@@ -267,39 +266,9 @@ let SourceControlService = class SourceControlService {
267
266
  getConflicts(files) {
268
267
  return files.filter((file) => file.conflict || file.status === 'modified');
269
268
  }
270
- getWorkflowsToImport(files) {
271
- return files.filter((e) => e.type === 'workflow' && e.status !== 'deleted');
272
- }
273
- getWorkflowsToDelete(files) {
274
- return files.filter((e) => e.type === 'workflow' && e.status === 'deleted');
275
- }
276
- getCredentialsToImport(files) {
277
- return files.filter((e) => e.type === 'credential' && e.status !== 'deleted');
278
- }
279
- getCredentialsToDelete(files) {
280
- return files.filter((e) => e.type === 'credential' && e.status === 'deleted');
281
- }
282
- getTagsToImport(files) {
283
- return files.find((e) => e.type === 'tags' && e.status !== 'deleted');
284
- }
285
- getTagsToDelete(files) {
286
- return files.filter((e) => e.type === 'tags' && e.status === 'deleted');
287
- }
288
- getVariablesToImport(files) {
289
- return files.find((e) => e.type === 'variables' && e.status !== 'deleted');
290
- }
291
- getFoldersToImport(files) {
292
- return files.find((e) => e.type === 'folders' && e.status !== 'deleted');
293
- }
294
- getFoldersToDelete(files) {
295
- return files.filter((e) => e.type === 'folders' && e.status === 'deleted');
296
- }
297
- getVariablesToDelete(files) {
298
- return files.filter((e) => e.type === 'variables' && e.status === 'deleted');
299
- }
300
269
  async pullWorkfolder(user, options) {
301
270
  await this.sanityCheck();
302
- const statusResult = (await this.getStatus(user, {
271
+ const statusResult = (await this.sourceControlStatusService.getStatus(user, {
303
272
  direction: 'pull',
304
273
  verbose: false,
305
274
  preferLocalVersion: false,
@@ -314,31 +283,31 @@ let SourceControlService = class SourceControlService {
314
283
  };
315
284
  }
316
285
  }
317
- const foldersToBeImported = this.getFoldersToImport(statusResult);
286
+ const foldersToBeImported = (0, source_control_resource_helper_1.getNonDeletedResources)(statusResult, 'folders')[0];
318
287
  if (foldersToBeImported) {
319
288
  await this.sourceControlImportService.importFoldersFromWorkFolder(user, foldersToBeImported);
320
289
  }
321
- const workflowsToBeImported = this.getWorkflowsToImport(statusResult);
290
+ const workflowsToBeImported = (0, source_control_resource_helper_1.getNonDeletedResources)(statusResult, 'workflow');
322
291
  await this.sourceControlImportService.importWorkflowFromWorkFolder(workflowsToBeImported, user.id);
323
- const workflowsToBeDeleted = this.getWorkflowsToDelete(statusResult);
292
+ const workflowsToBeDeleted = (0, source_control_resource_helper_1.getDeletedResources)(statusResult, 'workflow');
324
293
  await this.sourceControlImportService.deleteWorkflowsNotInWorkfolder(user, workflowsToBeDeleted);
325
- const credentialsToBeImported = this.getCredentialsToImport(statusResult);
294
+ const credentialsToBeImported = (0, source_control_resource_helper_1.getNonDeletedResources)(statusResult, 'credential');
326
295
  await this.sourceControlImportService.importCredentialsFromWorkFolder(credentialsToBeImported, user.id);
327
- const credentialsToBeDeleted = this.getCredentialsToDelete(statusResult);
296
+ const credentialsToBeDeleted = (0, source_control_resource_helper_1.getDeletedResources)(statusResult, 'credential');
328
297
  await this.sourceControlImportService.deleteCredentialsNotInWorkfolder(user, credentialsToBeDeleted);
329
- const tagsToBeImported = this.getTagsToImport(statusResult);
298
+ const tagsToBeImported = (0, source_control_resource_helper_1.getNonDeletedResources)(statusResult, 'tags')[0];
330
299
  if (tagsToBeImported) {
331
300
  await this.sourceControlImportService.importTagsFromWorkFolder(tagsToBeImported);
332
301
  }
333
- const tagsToBeDeleted = this.getTagsToDelete(statusResult);
302
+ const tagsToBeDeleted = (0, source_control_resource_helper_1.getDeletedResources)(statusResult, 'tags');
334
303
  await this.sourceControlImportService.deleteTagsNotInWorkfolder(tagsToBeDeleted);
335
- const variablesToBeImported = this.getVariablesToImport(statusResult);
304
+ const variablesToBeImported = (0, source_control_resource_helper_1.getNonDeletedResources)(statusResult, 'variables')[0];
336
305
  if (variablesToBeImported) {
337
306
  await this.sourceControlImportService.importVariablesFromWorkFolder(variablesToBeImported);
338
307
  }
339
- const variablesToBeDeleted = this.getVariablesToDelete(statusResult);
308
+ const variablesToBeDeleted = (0, source_control_resource_helper_1.getDeletedResources)(statusResult, 'variables');
340
309
  await this.sourceControlImportService.deleteVariablesNotInWorkfolder(variablesToBeDeleted);
341
- const foldersToBeDeleted = this.getFoldersToDelete(statusResult);
310
+ const foldersToBeDeleted = (0, source_control_resource_helper_1.getDeletedResources)(statusResult, 'folders');
342
311
  await this.sourceControlImportService.deleteFoldersNotInWorkfolder(foldersToBeDeleted);
343
312
  this.eventService.emit('source-control-user-finished-pull-ui', (0, source_control_helper_ee_1.getTrackingInformationFromPullResult)(user.id, statusResult));
344
313
  return {
@@ -348,380 +317,7 @@ let SourceControlService = class SourceControlService {
348
317
  }
349
318
  async getStatus(user, options) {
350
319
  await this.sanityCheck();
351
- const context = new source_control_context_1.SourceControlContext(user);
352
- if (options.direction === 'pull' && !(0, permissions_1.hasGlobalScope)(user, 'sourceControl:pull')) {
353
- throw new forbidden_error_1.ForbiddenError('You do not have permission to pull from source control');
354
- }
355
- const sourceControlledFiles = [];
356
- await this.resetWorkfolder();
357
- const { wfRemoteVersionIds, wfLocalVersionIds, wfMissingInLocal, wfMissingInRemote, wfModifiedInEither, } = await this.getStatusWorkflows(options, context, sourceControlledFiles);
358
- const { credMissingInLocal, credMissingInRemote, credModifiedInEither } = await this.getStatusCredentials(options, context, sourceControlledFiles);
359
- const { varMissingInLocal, varMissingInRemote, varModifiedInEither } = await this.getStatusVariables(options, sourceControlledFiles);
360
- const { tagsMissingInLocal, tagsMissingInRemote, tagsModifiedInEither, mappingsMissingInLocal, mappingsMissingInRemote, } = await this.getStatusTagsMappings(options, context, sourceControlledFiles);
361
- const { foldersMissingInLocal, foldersMissingInRemote, foldersModifiedInEither } = await this.getStatusFoldersMapping(options, context, sourceControlledFiles);
362
- if (options.direction === 'push') {
363
- this.eventService.emit('source-control-user-started-push-ui', (0, source_control_helper_ee_1.getTrackingInformationFromPrePushResult)(user.id, sourceControlledFiles));
364
- }
365
- else if (options.direction === 'pull') {
366
- this.eventService.emit('source-control-user-started-pull-ui', (0, source_control_helper_ee_1.getTrackingInformationFromPullResult)(user.id, sourceControlledFiles));
367
- }
368
- if (options?.verbose) {
369
- return {
370
- wfRemoteVersionIds,
371
- wfLocalVersionIds,
372
- wfMissingInLocal,
373
- wfMissingInRemote,
374
- wfModifiedInEither,
375
- credMissingInLocal,
376
- credMissingInRemote,
377
- credModifiedInEither,
378
- varMissingInLocal,
379
- varMissingInRemote,
380
- varModifiedInEither,
381
- tagsMissingInLocal,
382
- tagsMissingInRemote,
383
- tagsModifiedInEither,
384
- mappingsMissingInLocal,
385
- mappingsMissingInRemote,
386
- foldersMissingInLocal,
387
- foldersMissingInRemote,
388
- foldersModifiedInEither,
389
- sourceControlledFiles,
390
- };
391
- }
392
- else {
393
- return sourceControlledFiles;
394
- }
395
- }
396
- async getStatusWorkflows(options, context, sourceControlledFiles) {
397
- const wfRemoteVersionIds = await this.sourceControlImportService.getRemoteVersionIdsFromFiles(context);
398
- const wfLocalVersionIds = await this.sourceControlImportService.getLocalVersionIdsFromDb(context);
399
- let outOfScopeWF = [];
400
- if (!context.hasAccessToAllProjects()) {
401
- outOfScopeWF = await this.sourceControlImportService.getAllLocalVersionIdsFromDb();
402
- outOfScopeWF = outOfScopeWF.filter((wf) => !wfLocalVersionIds.some((local) => local.id === wf.id));
403
- }
404
- const wfMissingInLocal = wfRemoteVersionIds
405
- .filter((remote) => wfLocalVersionIds.findIndex((local) => local.id === remote.id) === -1)
406
- .filter((remote) => !outOfScopeWF.some((outOfScope) => outOfScope.id === remote.id));
407
- const wfMissingInRemote = wfLocalVersionIds.filter((local) => wfRemoteVersionIds.findIndex((remote) => remote.id === local.id) === -1);
408
- const wfModifiedInEither = [];
409
- wfLocalVersionIds.forEach((localWorkflow) => {
410
- const remoteWorkflowWithSameId = wfRemoteVersionIds.find((removeWorkflow) => removeWorkflow.id === localWorkflow.id);
411
- if (!remoteWorkflowWithSameId) {
412
- return;
413
- }
414
- if ((0, source_control_helper_ee_1.isWorkflowModified)(localWorkflow, remoteWorkflowWithSameId)) {
415
- let name = (options?.preferLocalVersion ? localWorkflow?.name : remoteWorkflowWithSameId?.name) ??
416
- 'Workflow';
417
- if (localWorkflow.name &&
418
- remoteWorkflowWithSameId?.name &&
419
- localWorkflow.name !== remoteWorkflowWithSameId.name) {
420
- name = options?.preferLocalVersion
421
- ? `${localWorkflow.name} (Remote: ${remoteWorkflowWithSameId.name})`
422
- : (name = `${remoteWorkflowWithSameId.name} (Local: ${localWorkflow.name})`);
423
- }
424
- wfModifiedInEither.push({
425
- ...localWorkflow,
426
- name,
427
- versionId: options.preferLocalVersion
428
- ? localWorkflow.versionId
429
- : remoteWorkflowWithSameId.versionId,
430
- localId: localWorkflow.versionId,
431
- remoteId: remoteWorkflowWithSameId.versionId,
432
- });
433
- }
434
- });
435
- wfMissingInLocal.forEach((item) => {
436
- sourceControlledFiles.push({
437
- id: item.id,
438
- name: item.name ?? 'Workflow',
439
- type: 'workflow',
440
- status: options.direction === 'push' ? 'deleted' : 'created',
441
- location: options.direction === 'push' ? 'local' : 'remote',
442
- conflict: false,
443
- file: item.filename,
444
- updatedAt: item.updatedAt ?? new Date().toISOString(),
445
- owner: item.owner,
446
- });
447
- });
448
- wfMissingInRemote.forEach((item) => {
449
- sourceControlledFiles.push({
450
- id: item.id,
451
- name: item.name ?? 'Workflow',
452
- type: 'workflow',
453
- status: options.direction === 'push' ? 'created' : 'deleted',
454
- location: options.direction === 'push' ? 'local' : 'remote',
455
- conflict: options.direction === 'push' ? false : true,
456
- file: item.filename,
457
- updatedAt: item.updatedAt ?? new Date().toISOString(),
458
- owner: item.owner,
459
- });
460
- });
461
- wfModifiedInEither.forEach((item) => {
462
- sourceControlledFiles.push({
463
- id: item.id,
464
- name: item.name ?? 'Workflow',
465
- type: 'workflow',
466
- status: 'modified',
467
- location: options.direction === 'push' ? 'local' : 'remote',
468
- conflict: true,
469
- file: item.filename,
470
- updatedAt: item.updatedAt ?? new Date().toISOString(),
471
- owner: item.owner,
472
- });
473
- });
474
- return {
475
- wfRemoteVersionIds,
476
- wfLocalVersionIds,
477
- wfMissingInLocal,
478
- wfMissingInRemote,
479
- wfModifiedInEither,
480
- };
481
- }
482
- async getStatusCredentials(options, context, sourceControlledFiles) {
483
- const credRemoteIds = await this.sourceControlImportService.getRemoteCredentialsFromFiles(context);
484
- const credLocalIds = await this.sourceControlImportService.getLocalCredentialsFromDb(context);
485
- const credMissingInLocal = credRemoteIds.filter((remote) => credLocalIds.findIndex((local) => local.id === remote.id) === -1);
486
- const credMissingInRemote = credLocalIds.filter((local) => credRemoteIds.findIndex((remote) => remote.id === local.id) === -1);
487
- const credModifiedInEither = [];
488
- credLocalIds.forEach((local) => {
489
- const mismatchingCreds = credRemoteIds.find((remote) => {
490
- return remote.id === local.id && (remote.name !== local.name || remote.type !== local.type);
491
- });
492
- if (mismatchingCreds) {
493
- credModifiedInEither.push({
494
- ...local,
495
- name: options?.preferLocalVersion ? local.name : mismatchingCreds.name,
496
- });
497
- }
498
- });
499
- credMissingInLocal.forEach((item) => {
500
- sourceControlledFiles.push({
501
- id: item.id,
502
- name: item.name ?? 'Credential',
503
- type: 'credential',
504
- status: options.direction === 'push' ? 'deleted' : 'created',
505
- location: options.direction === 'push' ? 'local' : 'remote',
506
- conflict: false,
507
- file: item.filename,
508
- updatedAt: new Date().toISOString(),
509
- owner: item.ownedBy,
510
- });
511
- });
512
- credMissingInRemote.forEach((item) => {
513
- sourceControlledFiles.push({
514
- id: item.id,
515
- name: item.name ?? 'Credential',
516
- type: 'credential',
517
- status: options.direction === 'push' ? 'created' : 'deleted',
518
- location: options.direction === 'push' ? 'local' : 'remote',
519
- conflict: options.direction === 'push' ? false : true,
520
- file: item.filename,
521
- updatedAt: new Date().toISOString(),
522
- owner: item.ownedBy,
523
- });
524
- });
525
- credModifiedInEither.forEach((item) => {
526
- sourceControlledFiles.push({
527
- id: item.id,
528
- name: item.name ?? 'Credential',
529
- type: 'credential',
530
- status: 'modified',
531
- location: options.direction === 'push' ? 'local' : 'remote',
532
- conflict: true,
533
- file: item.filename,
534
- updatedAt: new Date().toISOString(),
535
- owner: item.ownedBy,
536
- });
537
- });
538
- return {
539
- credMissingInLocal,
540
- credMissingInRemote,
541
- credModifiedInEither,
542
- };
543
- }
544
- async getStatusVariables(options, sourceControlledFiles) {
545
- const varRemoteIds = await this.sourceControlImportService.getRemoteVariablesFromFile();
546
- const varLocalIds = await this.sourceControlImportService.getLocalVariablesFromDb();
547
- const varMissingInLocal = varRemoteIds.filter((remote) => varLocalIds.findIndex((local) => local.id === remote.id) === -1);
548
- const varMissingInRemote = varLocalIds.filter((local) => varRemoteIds.findIndex((remote) => remote.id === local.id) === -1);
549
- const varModifiedInEither = [];
550
- varLocalIds.forEach((local) => {
551
- const mismatchingIds = varRemoteIds.find((remote) => (remote.id === local.id && remote.key !== local.key) ||
552
- (remote.id !== local.id && remote.key === local.key));
553
- if (mismatchingIds) {
554
- varModifiedInEither.push(options.preferLocalVersion ? local : mismatchingIds);
555
- }
556
- });
557
- varMissingInLocal.forEach((item) => {
558
- sourceControlledFiles.push({
559
- id: item.id,
560
- name: item.key,
561
- type: 'variables',
562
- status: options.direction === 'push' ? 'deleted' : 'created',
563
- location: options.direction === 'push' ? 'local' : 'remote',
564
- conflict: false,
565
- file: (0, source_control_helper_ee_1.getVariablesPath)(this.gitFolder),
566
- updatedAt: new Date().toISOString(),
567
- });
568
- });
569
- varMissingInRemote.forEach((item) => {
570
- sourceControlledFiles.push({
571
- id: item.id,
572
- name: item.key,
573
- type: 'variables',
574
- status: options.direction === 'push' ? 'created' : 'deleted',
575
- location: options.direction === 'push' ? 'local' : 'remote',
576
- conflict: options.direction === 'push' ? false : true,
577
- file: (0, source_control_helper_ee_1.getVariablesPath)(this.gitFolder),
578
- updatedAt: new Date().toISOString(),
579
- });
580
- });
581
- varModifiedInEither.forEach((item) => {
582
- sourceControlledFiles.push({
583
- id: item.id,
584
- name: item.key,
585
- type: 'variables',
586
- status: 'modified',
587
- location: options.direction === 'push' ? 'local' : 'remote',
588
- conflict: true,
589
- file: (0, source_control_helper_ee_1.getVariablesPath)(this.gitFolder),
590
- updatedAt: new Date().toISOString(),
591
- });
592
- });
593
- return {
594
- varMissingInLocal,
595
- varMissingInRemote,
596
- varModifiedInEither,
597
- };
598
- }
599
- async getStatusTagsMappings(options, context, sourceControlledFiles) {
600
- const lastUpdatedTag = await this.tagRepository.find({
601
- order: { updatedAt: 'DESC' },
602
- take: 1,
603
- select: ['updatedAt'],
604
- });
605
- const lastUpdatedDate = lastUpdatedTag[0]?.updatedAt ?? new Date();
606
- const tagMappingsRemote = await this.sourceControlImportService.getRemoteTagsAndMappingsFromFile(context);
607
- const tagMappingsLocal = await this.sourceControlImportService.getLocalTagsAndMappingsFromDb(context);
608
- const tagsMissingInLocal = tagMappingsRemote.tags.filter((remote) => tagMappingsLocal.tags.findIndex((local) => local.id === remote.id) === -1);
609
- const tagsMissingInRemote = tagMappingsLocal.tags.filter((local) => tagMappingsRemote.tags.findIndex((remote) => remote.id === local.id) === -1);
610
- const tagsModifiedInEither = [];
611
- tagMappingsLocal.tags.forEach((local) => {
612
- const mismatchingIds = tagMappingsRemote.tags.find((remote) => remote.id === local.id && remote.name !== local.name);
613
- if (!mismatchingIds) {
614
- return;
615
- }
616
- tagsModifiedInEither.push(options.preferLocalVersion ? local : mismatchingIds);
617
- });
618
- const mappingsMissingInLocal = tagMappingsRemote.mappings.filter((remote) => tagMappingsLocal.mappings.findIndex((local) => local.tagId === remote.tagId && local.workflowId === remote.workflowId) === -1);
619
- const mappingsMissingInRemote = tagMappingsLocal.mappings.filter((local) => tagMappingsRemote.mappings.findIndex((remote) => remote.tagId === local.tagId && remote.workflowId === remote.workflowId) === -1);
620
- tagsMissingInLocal.forEach((item) => {
621
- sourceControlledFiles.push({
622
- id: item.id,
623
- name: item.name,
624
- type: 'tags',
625
- status: options.direction === 'push' ? 'deleted' : 'created',
626
- location: options.direction === 'push' ? 'local' : 'remote',
627
- conflict: false,
628
- file: (0, source_control_helper_ee_1.getTagsPath)(this.gitFolder),
629
- updatedAt: lastUpdatedDate.toISOString(),
630
- });
631
- });
632
- tagsMissingInRemote.forEach((item) => {
633
- sourceControlledFiles.push({
634
- id: item.id,
635
- name: item.name,
636
- type: 'tags',
637
- status: options.direction === 'push' ? 'created' : 'deleted',
638
- location: options.direction === 'push' ? 'local' : 'remote',
639
- conflict: options.direction === 'push' ? false : true,
640
- file: (0, source_control_helper_ee_1.getTagsPath)(this.gitFolder),
641
- updatedAt: lastUpdatedDate.toISOString(),
642
- });
643
- });
644
- tagsModifiedInEither.forEach((item) => {
645
- sourceControlledFiles.push({
646
- id: item.id,
647
- name: item.name,
648
- type: 'tags',
649
- status: 'modified',
650
- location: options.direction === 'push' ? 'local' : 'remote',
651
- conflict: true,
652
- file: (0, source_control_helper_ee_1.getTagsPath)(this.gitFolder),
653
- updatedAt: lastUpdatedDate.toISOString(),
654
- });
655
- });
656
- return {
657
- tagsMissingInLocal,
658
- tagsMissingInRemote,
659
- tagsModifiedInEither,
660
- mappingsMissingInLocal,
661
- mappingsMissingInRemote,
662
- };
663
- }
664
- async getStatusFoldersMapping(options, context, sourceControlledFiles) {
665
- const lastUpdatedFolder = await this.folderRepository.find({
666
- order: { updatedAt: 'DESC' },
667
- take: 1,
668
- select: ['updatedAt'],
669
- });
670
- const lastUpdatedDate = lastUpdatedFolder[0]?.updatedAt ?? new Date();
671
- const foldersMappingsRemote = await this.sourceControlImportService.getRemoteFoldersAndMappingsFromFile(context);
672
- const foldersMappingsLocal = await this.sourceControlImportService.getLocalFoldersAndMappingsFromDb(context);
673
- const foldersMissingInLocal = foldersMappingsRemote.folders.filter((remote) => foldersMappingsLocal.folders.findIndex((local) => local.id === remote.id) === -1);
674
- const foldersMissingInRemote = foldersMappingsLocal.folders.filter((local) => foldersMappingsRemote.folders.findIndex((remote) => remote.id === local.id) === -1);
675
- const foldersModifiedInEither = [];
676
- foldersMappingsLocal.folders.forEach((local) => {
677
- const mismatchingIds = foldersMappingsRemote.folders.find((remote) => remote.id === local.id &&
678
- (remote.name !== local.name || remote.parentFolderId !== local.parentFolderId));
679
- if (!mismatchingIds) {
680
- return;
681
- }
682
- foldersModifiedInEither.push(options.preferLocalVersion ? local : mismatchingIds);
683
- });
684
- foldersMissingInLocal.forEach((item) => {
685
- sourceControlledFiles.push({
686
- id: item.id,
687
- name: item.name,
688
- type: 'folders',
689
- status: options.direction === 'push' ? 'deleted' : 'created',
690
- location: options.direction === 'push' ? 'local' : 'remote',
691
- conflict: false,
692
- file: (0, source_control_helper_ee_1.getFoldersPath)(this.gitFolder),
693
- updatedAt: lastUpdatedDate.toISOString(),
694
- });
695
- });
696
- foldersMissingInRemote.forEach((item) => {
697
- sourceControlledFiles.push({
698
- id: item.id,
699
- name: item.name,
700
- type: 'folders',
701
- status: options.direction === 'push' ? 'created' : 'deleted',
702
- location: options.direction === 'push' ? 'local' : 'remote',
703
- conflict: options.direction === 'push' ? false : true,
704
- file: (0, source_control_helper_ee_1.getFoldersPath)(this.gitFolder),
705
- updatedAt: lastUpdatedDate.toISOString(),
706
- });
707
- });
708
- foldersModifiedInEither.forEach((item) => {
709
- sourceControlledFiles.push({
710
- id: item.id,
711
- name: item.name,
712
- type: 'folders',
713
- status: 'modified',
714
- location: options.direction === 'push' ? 'local' : 'remote',
715
- conflict: true,
716
- file: (0, source_control_helper_ee_1.getFoldersPath)(this.gitFolder),
717
- updatedAt: lastUpdatedDate.toISOString(),
718
- });
719
- });
720
- return {
721
- foldersMissingInLocal,
722
- foldersMissingInRemote,
723
- foldersModifiedInEither,
724
- };
320
+ return await this.sourceControlStatusService.getStatus(user, options);
725
321
  }
726
322
  async setGitUserDetails(name = constants_1.SOURCE_CONTROL_DEFAULT_NAME, email = constants_1.SOURCE_CONTROL_DEFAULT_EMAIL) {
727
323
  await this.sanityCheck();
@@ -756,8 +352,7 @@ exports.SourceControlService = SourceControlService = __decorate([
756
352
  source_control_export_service_ee_1.SourceControlExportService,
757
353
  source_control_import_service_ee_1.SourceControlImportService,
758
354
  source_control_scoped_service_1.SourceControlScopedService,
759
- db_1.TagRepository,
760
- db_1.FolderRepository,
761
- event_service_1.EventService])
355
+ event_service_1.EventService,
356
+ source_control_status_service_ee_1.SourceControlStatusService])
762
357
  ], SourceControlService);
763
358
  //# sourceMappingURL=source-control.service.ee.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"source-control.service.ee.js","sourceRoot":"","sources":["../../../src/environments.ee/source-control/source-control.service.ee.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source-control.service.ee.js","sourceRoot":"","sources":["../../../src/environments.ee/source-control/source-control.service.ee.ts"],"names":[],"mappings":"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"}