n8n 1.90.2 → 1.91.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.
Files changed (324) hide show
  1. package/dist/abstract-server.js +2 -2
  2. package/dist/abstract-server.js.map +1 -1
  3. package/dist/active-workflow-manager.js +2 -2
  4. package/dist/active-workflow-manager.js.map +1 -1
  5. package/dist/build.tsbuildinfo +1 -1
  6. package/dist/commands/base-command.js +14 -7
  7. package/dist/commands/base-command.js.map +1 -1
  8. package/dist/commands/start.js +4 -3
  9. package/dist/commands/start.js.map +1 -1
  10. package/dist/config/index.d.ts +3 -1
  11. package/dist/config/index.js +0 -11
  12. package/dist/config/index.js.map +1 -1
  13. package/dist/config/schema.d.ts +8 -6
  14. package/dist/config/schema.js +8 -6
  15. package/dist/config/schema.js.map +1 -1
  16. package/dist/constants.d.ts +0 -42
  17. package/dist/constants.js +1 -43
  18. package/dist/constants.js.map +1 -1
  19. package/dist/{decorators/controller.registry.d.ts → controller.registry.d.ts} +5 -6
  20. package/dist/{decorators/controller.registry.js → controller.registry.js} +14 -36
  21. package/dist/controller.registry.js.map +1 -0
  22. package/dist/controllers/active-workflows.controller.js +1 -1
  23. package/dist/controllers/active-workflows.controller.js.map +1 -1
  24. package/dist/controllers/ai.controller.d.ts +5 -2
  25. package/dist/controllers/ai.controller.js +29 -2
  26. package/dist/controllers/ai.controller.js.map +1 -1
  27. package/dist/controllers/annotation-tags.controller.ee.js +1 -1
  28. package/dist/controllers/annotation-tags.controller.ee.js.map +1 -1
  29. package/dist/controllers/api-keys.controller.js +1 -1
  30. package/dist/controllers/api-keys.controller.js.map +1 -1
  31. package/dist/controllers/auth.controller.js +1 -1
  32. package/dist/controllers/auth.controller.js.map +1 -1
  33. package/dist/controllers/binary-data.controller.js +1 -1
  34. package/dist/controllers/binary-data.controller.js.map +1 -1
  35. package/dist/controllers/community-packages.controller.js +1 -1
  36. package/dist/controllers/community-packages.controller.js.map +1 -1
  37. package/dist/controllers/cta.controller.js +1 -1
  38. package/dist/controllers/cta.controller.js.map +1 -1
  39. package/dist/controllers/debug.controller.js +1 -1
  40. package/dist/controllers/debug.controller.js.map +1 -1
  41. package/dist/controllers/dynamic-node-parameters.controller.js +1 -1
  42. package/dist/controllers/dynamic-node-parameters.controller.js.map +1 -1
  43. package/dist/controllers/folder.controller.js +1 -1
  44. package/dist/controllers/folder.controller.js.map +1 -1
  45. package/dist/controllers/invitation.controller.js +1 -1
  46. package/dist/controllers/invitation.controller.js.map +1 -1
  47. package/dist/controllers/me.controller.js +1 -1
  48. package/dist/controllers/me.controller.js.map +1 -1
  49. package/dist/controllers/mfa.controller.js +1 -1
  50. package/dist/controllers/mfa.controller.js.map +1 -1
  51. package/dist/controllers/node-types.controller.js +1 -1
  52. package/dist/controllers/node-types.controller.js.map +1 -1
  53. package/dist/controllers/oauth/abstract-oauth.controller.d.ts +3 -3
  54. package/dist/controllers/oauth/abstract-oauth.controller.js +5 -5
  55. package/dist/controllers/oauth/abstract-oauth.controller.js.map +1 -1
  56. package/dist/controllers/oauth/oauth1-credential.controller.js +1 -1
  57. package/dist/controllers/oauth/oauth1-credential.controller.js.map +1 -1
  58. package/dist/controllers/oauth/oauth2-credential.controller.js +1 -1
  59. package/dist/controllers/oauth/oauth2-credential.controller.js.map +1 -1
  60. package/dist/controllers/orchestration.controller.js +1 -1
  61. package/dist/controllers/orchestration.controller.js.map +1 -1
  62. package/dist/controllers/owner.controller.js +1 -1
  63. package/dist/controllers/owner.controller.js.map +1 -1
  64. package/dist/controllers/password-reset.controller.js +1 -1
  65. package/dist/controllers/password-reset.controller.js.map +1 -1
  66. package/dist/controllers/project.controller.js +1 -1
  67. package/dist/controllers/project.controller.js.map +1 -1
  68. package/dist/controllers/role.controller.js +1 -1
  69. package/dist/controllers/role.controller.js.map +1 -1
  70. package/dist/controllers/tags.controller.js +1 -1
  71. package/dist/controllers/tags.controller.js.map +1 -1
  72. package/dist/controllers/translation.controller.js +1 -1
  73. package/dist/controllers/translation.controller.js.map +1 -1
  74. package/dist/controllers/user-settings.controller.js +1 -1
  75. package/dist/controllers/user-settings.controller.js.map +1 -1
  76. package/dist/controllers/users.controller.js +1 -1
  77. package/dist/controllers/users.controller.js.map +1 -1
  78. package/dist/controllers/workflow-statistics.controller.d.ts +3 -3
  79. package/dist/controllers/workflow-statistics.controller.js +6 -6
  80. package/dist/controllers/workflow-statistics.controller.js.map +1 -1
  81. package/dist/credentials/credentials-finder.service.d.ts +34 -0
  82. package/dist/credentials/credentials-finder.service.js +108 -0
  83. package/dist/credentials/credentials-finder.service.js.map +1 -0
  84. package/dist/credentials/credentials.controller.d.ts +3 -1
  85. package/dist/credentials/credentials.controller.js +15 -13
  86. package/dist/credentials/credentials.controller.js.map +1 -1
  87. package/dist/credentials/credentials.service.d.ts +3 -1
  88. package/dist/credentials/credentials.service.ee.d.ts +3 -1
  89. package/dist/credentials/credentials.service.ee.js +10 -5
  90. package/dist/credentials/credentials.service.ee.js.map +1 -1
  91. package/dist/credentials/credentials.service.js +8 -5
  92. package/dist/credentials/credentials.service.js.map +1 -1
  93. package/dist/databases/migrations/common/1675940580449-PurgeInvalidWorkflowConnections.d.ts +2 -2
  94. package/dist/databases/migrations/common/1675940580449-PurgeInvalidWorkflowConnections.js +7 -31
  95. package/dist/databases/migrations/common/1675940580449-PurgeInvalidWorkflowConnections.js.map +1 -1
  96. package/dist/databases/repositories/credentials.repository.d.ts +1 -6
  97. package/dist/databases/repositories/credentials.repository.js +2 -25
  98. package/dist/databases/repositories/credentials.repository.js.map +1 -1
  99. package/dist/databases/repositories/shared-credentials.repository.d.ts +4 -24
  100. package/dist/databases/repositories/shared-credentials.repository.js +27 -80
  101. package/dist/databases/repositories/shared-credentials.repository.js.map +1 -1
  102. package/dist/databases/repositories/shared-workflow.repository.d.ts +8 -32
  103. package/dist/databases/repositories/shared-workflow.repository.js +18 -62
  104. package/dist/databases/repositories/shared-workflow.repository.js.map +1 -1
  105. package/dist/databases/types.d.ts +0 -2
  106. package/dist/databases/types.js.map +1 -1
  107. package/dist/databases/utils/migration-helpers.js +0 -2
  108. package/dist/databases/utils/migration-helpers.js.map +1 -1
  109. package/dist/deprecation/deprecation.service.d.ts +3 -1
  110. package/dist/deprecation/deprecation.service.js +22 -4
  111. package/dist/deprecation/deprecation.service.js.map +1 -1
  112. package/dist/environments.ee/source-control/source-control.controller.ee.d.ts +3 -3
  113. package/dist/environments.ee/source-control/source-control.controller.ee.js +1 -1
  114. package/dist/environments.ee/source-control/source-control.controller.ee.js.map +1 -1
  115. package/dist/environments.ee/source-control/source-control.service.ee.d.ts +2 -2
  116. package/dist/environments.ee/variables/variables.controller.ee.js +1 -1
  117. package/dist/environments.ee/variables/variables.controller.ee.js.map +1 -1
  118. package/dist/errors/feature-not-licensed.error.d.ts +1 -1
  119. package/dist/errors/feature-not-licensed.error.js.map +1 -1
  120. package/dist/evaluation.ee/test-definitions.controller.ee.js +1 -1
  121. package/dist/evaluation.ee/test-definitions.controller.ee.js.map +1 -1
  122. package/dist/evaluation.ee/test-runs.controller.ee.js +1 -1
  123. package/dist/evaluation.ee/test-runs.controller.ee.js.map +1 -1
  124. package/dist/eventbus/event-bus.controller.js +1 -1
  125. package/dist/eventbus/event-bus.controller.js.map +1 -1
  126. package/dist/eventbus/message-event-bus-destination/message-event-bus-destination-webhook.ee.js +4 -35
  127. package/dist/eventbus/message-event-bus-destination/message-event-bus-destination-webhook.ee.js.map +1 -1
  128. package/dist/events/events.controller.js +1 -1
  129. package/dist/events/events.controller.js.map +1 -1
  130. package/dist/events/relays/log-streaming.event-relay.js +24 -24
  131. package/dist/events/relays/log-streaming.event-relay.js.map +1 -1
  132. package/dist/execution-lifecycle/execution-lifecycle-hooks.js +4 -4
  133. package/dist/execution-lifecycle/execution-lifecycle-hooks.js.map +1 -1
  134. package/dist/executions/executions.controller.js +1 -1
  135. package/dist/executions/executions.controller.js.map +1 -1
  136. package/dist/external-secrets.ee/errors/unknown-auth-type.error.js.map +1 -0
  137. package/dist/external-secrets.ee/external-secrets-manager.ee.d.ts +7 -6
  138. package/dist/external-secrets.ee/external-secrets-manager.ee.js +26 -23
  139. package/dist/external-secrets.ee/external-secrets-manager.ee.js.map +1 -1
  140. package/dist/external-secrets.ee/external-secrets-providers.ee.d.ts +2 -2
  141. package/dist/external-secrets.ee/external-secrets-providers.ee.js +2 -2
  142. package/dist/external-secrets.ee/external-secrets-providers.ee.js.map +1 -1
  143. package/dist/external-secrets.ee/external-secrets.config.d.ts +4 -0
  144. package/dist/external-secrets.ee/external-secrets.config.js +32 -0
  145. package/dist/external-secrets.ee/external-secrets.config.js.map +1 -0
  146. package/dist/external-secrets.ee/external-secrets.controller.ee.d.ts +7 -4
  147. package/dist/external-secrets.ee/external-secrets.controller.ee.js +36 -59
  148. package/dist/external-secrets.ee/external-secrets.controller.ee.js.map +1 -1
  149. package/dist/external-secrets.ee/external-secrets.service.ee.d.ts +2 -3
  150. package/dist/external-secrets.ee/external-secrets.service.ee.js +0 -18
  151. package/dist/external-secrets.ee/external-secrets.service.ee.js.map +1 -1
  152. package/dist/external-secrets.ee/providers/{aws-secrets/aws-secrets-manager.d.ts → aws-secrets-manager.d.ts} +13 -2
  153. package/dist/external-secrets.ee/providers/{aws-secrets/aws-secrets-manager.js → aws-secrets-manager.js} +65 -8
  154. package/dist/external-secrets.ee/providers/aws-secrets-manager.js.map +1 -0
  155. package/dist/external-secrets.ee/providers/azure-key-vault/azure-key-vault.d.ts +1 -1
  156. package/dist/external-secrets.ee/providers/azure-key-vault/azure-key-vault.js +1 -1
  157. package/dist/external-secrets.ee/providers/azure-key-vault/azure-key-vault.js.map +1 -1
  158. package/dist/external-secrets.ee/providers/azure-key-vault/types.d.ts +1 -1
  159. package/dist/external-secrets.ee/providers/gcp-secrets-manager/gcp-secrets-manager.d.ts +1 -1
  160. package/dist/external-secrets.ee/providers/gcp-secrets-manager/gcp-secrets-manager.js +1 -1
  161. package/dist/external-secrets.ee/providers/gcp-secrets-manager/gcp-secrets-manager.js.map +1 -1
  162. package/dist/external-secrets.ee/providers/gcp-secrets-manager/types.d.ts +1 -1
  163. package/dist/external-secrets.ee/providers/infisical.d.ts +1 -1
  164. package/dist/external-secrets.ee/providers/infisical.js.map +1 -1
  165. package/dist/external-secrets.ee/providers/vault.d.ts +2 -2
  166. package/dist/external-secrets.ee/providers/vault.js +4 -4
  167. package/dist/external-secrets.ee/providers/vault.js.map +1 -1
  168. package/dist/external-secrets.ee/types.d.ts +50 -0
  169. package/dist/external-secrets.ee/types.js +7 -0
  170. package/dist/external-secrets.ee/types.js.map +1 -0
  171. package/dist/interfaces.d.ts +1 -29
  172. package/dist/interfaces.js +0 -4
  173. package/dist/interfaces.js.map +1 -1
  174. package/dist/ldap.ee/ldap.controller.ee.js +1 -1
  175. package/dist/ldap.ee/ldap.controller.ee.js.map +1 -1
  176. package/dist/license/license.controller.js +1 -1
  177. package/dist/license/license.controller.js.map +1 -1
  178. package/dist/license.d.ts +1 -1
  179. package/dist/license.js +8 -7
  180. package/dist/license.js.map +1 -1
  181. package/dist/manual-execution.service.js +9 -0
  182. package/dist/manual-execution.service.js.map +1 -1
  183. package/dist/middlewares/list-query/index.js.map +1 -1
  184. package/dist/modules/insights/database/repositories/insights-by-period.repository.d.ts +1 -1
  185. package/dist/modules/insights/insights-collection.service.d.ts +22 -0
  186. package/dist/modules/insights/insights-collection.service.js +191 -0
  187. package/dist/modules/insights/insights-collection.service.js.map +1 -0
  188. package/dist/modules/insights/insights-compaction.service.d.ts +16 -0
  189. package/dist/modules/insights/insights-compaction.service.js +85 -0
  190. package/dist/modules/insights/insights-compaction.service.js.map +1 -0
  191. package/dist/modules/insights/insights.controller.d.ts +4 -4
  192. package/dist/modules/insights/insights.controller.js +28 -13
  193. package/dist/modules/insights/insights.controller.js.map +1 -1
  194. package/dist/modules/insights/insights.module.d.ts +4 -4
  195. package/dist/modules/insights/insights.module.js +22 -11
  196. package/dist/modules/insights/insights.module.js.map +1 -1
  197. package/dist/modules/insights/insights.service.d.ts +13 -29
  198. package/dist/modules/insights/insights.service.js +53 -226
  199. package/dist/modules/insights/insights.service.js.map +1 -1
  200. package/dist/public-api/v1/handlers/workflows/workflows.handler.js +9 -9
  201. package/dist/public-api/v1/handlers/workflows/workflows.handler.js.map +1 -1
  202. package/dist/public-api/v1/shared/middlewares/global.middleware.d.ts +1 -1
  203. package/dist/public-api/v1/shared/middlewares/global.middleware.js.map +1 -1
  204. package/dist/push/index.js +2 -2
  205. package/dist/push/index.js.map +1 -1
  206. package/dist/requests.d.ts +1 -27
  207. package/dist/requests.js.map +1 -1
  208. package/dist/scaling/multi-main-setup.ee.d.ts +4 -1
  209. package/dist/scaling/multi-main-setup.ee.js +14 -2
  210. package/dist/scaling/multi-main-setup.ee.js.map +1 -1
  211. package/dist/scaling/scaling.service.js +2 -2
  212. package/dist/scaling/scaling.service.js.map +1 -1
  213. package/dist/server.d.ts +1 -0
  214. package/dist/server.js +3 -2
  215. package/dist/server.js.map +1 -1
  216. package/dist/services/access.service.d.ts +3 -3
  217. package/dist/services/access.service.js +5 -5
  218. package/dist/services/access.service.js.map +1 -1
  219. package/dist/services/active-workflows.service.d.ts +3 -1
  220. package/dist/services/active-workflows.service.js +6 -3
  221. package/dist/services/active-workflows.service.js.map +1 -1
  222. package/dist/services/ai-workflow-builder.service.d.ts +17 -0
  223. package/dist/services/ai-workflow-builder.service.js +43 -0
  224. package/dist/services/ai-workflow-builder.service.js.map +1 -0
  225. package/dist/services/community-packages.service.js +12 -11
  226. package/dist/services/community-packages.service.js.map +1 -1
  227. package/dist/services/frontend.service.d.ts +3 -1
  228. package/dist/services/frontend.service.js +16 -5
  229. package/dist/services/frontend.service.js.map +1 -1
  230. package/dist/services/project.service.ee.js +1 -1
  231. package/dist/services/project.service.ee.js.map +1 -1
  232. package/dist/services/pruning/pruning.service.js +2 -2
  233. package/dist/services/pruning/pruning.service.js.map +1 -1
  234. package/dist/services/redis-client.service.js +2 -2
  235. package/dist/services/redis-client.service.js.map +1 -1
  236. package/dist/shutdown/shutdown.service.d.ts +5 -11
  237. package/dist/shutdown/shutdown.service.js +9 -15
  238. package/dist/shutdown/shutdown.service.js.map +1 -1
  239. package/dist/sso.ee/saml/routes/saml.controller.ee.d.ts +3 -1
  240. package/dist/sso.ee/saml/routes/saml.controller.ee.js +2 -2
  241. package/dist/sso.ee/saml/routes/saml.controller.ee.js.map +1 -1
  242. package/dist/task-runners/task-runner-module.js +2 -2
  243. package/dist/task-runners/task-runner-module.js.map +1 -1
  244. package/dist/task-runners/task-runner-process.js +4 -2
  245. package/dist/task-runners/task-runner-process.js.map +1 -1
  246. package/dist/telemetry/index.js +2 -2
  247. package/dist/telemetry/index.js.map +1 -1
  248. package/dist/webhooks/webhook.service.d.ts +1 -2
  249. package/dist/webhooks/webhook.types.d.ts +1 -0
  250. package/dist/webhooks/webhooks.controller.d.ts +7 -0
  251. package/dist/webhooks/webhooks.controller.js +45 -0
  252. package/dist/webhooks/webhooks.controller.js.map +1 -0
  253. package/dist/workflows/workflow-finder.service.d.ts +37 -0
  254. package/dist/workflows/workflow-finder.service.js +81 -0
  255. package/dist/workflows/workflow-finder.service.js.map +1 -0
  256. package/dist/workflows/workflow-history.ee/workflow-history.controller.ee.d.ts +2 -1
  257. package/dist/workflows/workflow-history.ee/workflow-history.controller.ee.js +10 -6
  258. package/dist/workflows/workflow-history.ee/workflow-history.controller.ee.js.map +1 -1
  259. package/dist/workflows/workflow-history.ee/workflow-history.service.ee.d.ts +3 -3
  260. package/dist/workflows/workflow-history.ee/workflow-history.service.ee.js +6 -6
  261. package/dist/workflows/workflow-history.ee/workflow-history.service.ee.js.map +1 -1
  262. package/dist/workflows/workflow.service.d.ts +3 -1
  263. package/dist/workflows/workflow.service.ee.d.ts +8 -4
  264. package/dist/workflows/workflow.service.ee.js +24 -9
  265. package/dist/workflows/workflow.service.ee.js.map +1 -1
  266. package/dist/workflows/workflow.service.js +7 -4
  267. package/dist/workflows/workflow.service.js.map +1 -1
  268. package/dist/workflows/workflows.controller.d.ts +3 -1
  269. package/dist/workflows/workflows.controller.js +11 -8
  270. package/dist/workflows/workflows.controller.js.map +1 -1
  271. package/package.json +18 -13
  272. package/dist/decorators/args.d.ts +0 -3
  273. package/dist/decorators/args.js +0 -13
  274. package/dist/decorators/args.js.map +0 -1
  275. package/dist/decorators/controller.registry.js.map +0 -1
  276. package/dist/decorators/debounce.d.ts +0 -1
  277. package/dist/decorators/debounce.js +0 -20
  278. package/dist/decorators/debounce.js.map +0 -1
  279. package/dist/decorators/index.d.ts +0 -7
  280. package/dist/decorators/index.js +0 -25
  281. package/dist/decorators/index.js.map +0 -1
  282. package/dist/decorators/licensed.d.ts +0 -2
  283. package/dist/decorators/licensed.js +0 -10
  284. package/dist/decorators/licensed.js.map +0 -1
  285. package/dist/decorators/middleware.d.ts +0 -1
  286. package/dist/decorators/middleware.js +0 -10
  287. package/dist/decorators/middleware.js.map +0 -1
  288. package/dist/decorators/module.d.ts +0 -14
  289. package/dist/decorators/module.js +0 -39
  290. package/dist/decorators/module.js.map +0 -1
  291. package/dist/decorators/on-shutdown.d.ts +0 -1
  292. package/dist/decorators/on-shutdown.js +0 -20
  293. package/dist/decorators/on-shutdown.js.map +0 -1
  294. package/dist/decorators/redactable.d.ts +0 -3
  295. package/dist/decorators/redactable.js +0 -28
  296. package/dist/decorators/redactable.js.map +0 -1
  297. package/dist/decorators/rest-controller.d.ts +0 -1
  298. package/dist/decorators/rest-controller.js +0 -12
  299. package/dist/decorators/rest-controller.js.map +0 -1
  300. package/dist/decorators/route.d.ts +0 -14
  301. package/dist/decorators/route.js +0 -19
  302. package/dist/decorators/route.js.map +0 -1
  303. package/dist/decorators/scoped.d.ts +0 -3
  304. package/dist/decorators/scoped.js +0 -13
  305. package/dist/decorators/scoped.js.map +0 -1
  306. package/dist/decorators/types.d.ts +0 -37
  307. package/dist/decorators/types.js +0 -3
  308. package/dist/decorators/types.js.map +0 -1
  309. package/dist/errors/external-secrets-provider-not-found.error.d.ts +0 -5
  310. package/dist/errors/external-secrets-provider-not-found.error.js +0 -12
  311. package/dist/errors/external-secrets-provider-not-found.error.js.map +0 -1
  312. package/dist/errors/unknown-auth-type.error.js.map +0 -1
  313. package/dist/external-secrets.ee/external-secrets-helper.ee.d.ts +0 -3
  314. package/dist/external-secrets.ee/external-secrets-helper.ee.js +0 -16
  315. package/dist/external-secrets.ee/external-secrets-helper.ee.js.map +0 -1
  316. package/dist/external-secrets.ee/providers/aws-secrets/aws-secrets-client.d.ts +0 -12
  317. package/dist/external-secrets.ee/providers/aws-secrets/aws-secrets-client.js +0 -136
  318. package/dist/external-secrets.ee/providers/aws-secrets/aws-secrets-client.js.map +0 -1
  319. package/dist/external-secrets.ee/providers/aws-secrets/aws-secrets-manager.js.map +0 -1
  320. package/dist/external-secrets.ee/providers/aws-secrets/types.d.ts +0 -43
  321. package/dist/external-secrets.ee/providers/aws-secrets/types.js +0 -3
  322. package/dist/external-secrets.ee/providers/aws-secrets/types.js.map +0 -1
  323. /package/dist/{errors → external-secrets.ee/errors}/unknown-auth-type.error.d.ts +0 -0
  324. /package/dist/{errors → external-secrets.ee/errors}/unknown-auth-type.error.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insights-collection.service.js","sourceRoot":"","sources":["../../../src/modules/insights/insights-collection.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { InsightsByPeriodRepository } from './database/repositories/insights-by-period.repository';
2
+ import { InsightsRawRepository } from './database/repositories/insights-raw.repository';
3
+ import { InsightsConfig } from './insights.config';
4
+ export declare class InsightsCompactionService {
5
+ private readonly insightsByPeriodRepository;
6
+ private readonly insightsRawRepository;
7
+ private readonly insightsConfig;
8
+ private compactInsightsTimer;
9
+ constructor(insightsByPeriodRepository: InsightsByPeriodRepository, insightsRawRepository: InsightsRawRepository, insightsConfig: InsightsConfig);
10
+ startCompactionTimer(): void;
11
+ stopCompactionTimer(): void;
12
+ compactInsights(): Promise<void>;
13
+ compactRawToHour(): Promise<number>;
14
+ compactHourToDay(): Promise<number>;
15
+ compactDayToWeek(): Promise<number>;
16
+ }
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.InsightsCompactionService = void 0;
13
+ const di_1 = require("@n8n/di");
14
+ const insights_by_period_repository_1 = require("./database/repositories/insights-by-period.repository");
15
+ const insights_raw_repository_1 = require("./database/repositories/insights-raw.repository");
16
+ const insights_config_1 = require("./insights.config");
17
+ let InsightsCompactionService = class InsightsCompactionService {
18
+ constructor(insightsByPeriodRepository, insightsRawRepository, insightsConfig) {
19
+ this.insightsByPeriodRepository = insightsByPeriodRepository;
20
+ this.insightsRawRepository = insightsRawRepository;
21
+ this.insightsConfig = insightsConfig;
22
+ }
23
+ startCompactionTimer() {
24
+ this.stopCompactionTimer();
25
+ this.compactInsightsTimer = setInterval(async () => await this.compactInsights(), this.insightsConfig.compactionIntervalMinutes * 60 * 1000);
26
+ }
27
+ stopCompactionTimer() {
28
+ if (this.compactInsightsTimer !== undefined) {
29
+ clearInterval(this.compactInsightsTimer);
30
+ this.compactInsightsTimer = undefined;
31
+ }
32
+ }
33
+ async compactInsights() {
34
+ let numberOfCompactedRawData;
35
+ do {
36
+ numberOfCompactedRawData = await this.compactRawToHour();
37
+ } while (numberOfCompactedRawData > 0);
38
+ let numberOfCompactedHourData;
39
+ do {
40
+ numberOfCompactedHourData = await this.compactHourToDay();
41
+ } while (numberOfCompactedHourData > 0);
42
+ let numberOfCompactedDayData;
43
+ do {
44
+ numberOfCompactedDayData = await this.compactDayToWeek();
45
+ } while (numberOfCompactedDayData > 0);
46
+ }
47
+ async compactRawToHour() {
48
+ const batchQuery = this.insightsRawRepository.getRawInsightsBatchQuery(this.insightsConfig.compactionBatchSize);
49
+ return await this.insightsByPeriodRepository.compactSourceDataIntoInsightPeriod({
50
+ sourceBatchQuery: batchQuery,
51
+ sourceTableName: this.insightsRawRepository.metadata.tableName,
52
+ periodUnitToCompactInto: 'hour',
53
+ });
54
+ }
55
+ async compactHourToDay() {
56
+ const batchQuery = this.insightsByPeriodRepository.getPeriodInsightsBatchQuery({
57
+ periodUnitToCompactFrom: 'hour',
58
+ compactionBatchSize: this.insightsConfig.compactionBatchSize,
59
+ maxAgeInDays: this.insightsConfig.compactionHourlyToDailyThresholdDays,
60
+ });
61
+ return await this.insightsByPeriodRepository.compactSourceDataIntoInsightPeriod({
62
+ sourceBatchQuery: batchQuery,
63
+ periodUnitToCompactInto: 'day',
64
+ });
65
+ }
66
+ async compactDayToWeek() {
67
+ const batchQuery = this.insightsByPeriodRepository.getPeriodInsightsBatchQuery({
68
+ periodUnitToCompactFrom: 'day',
69
+ compactionBatchSize: this.insightsConfig.compactionBatchSize,
70
+ maxAgeInDays: this.insightsConfig.compactionDailyToWeeklyThresholdDays,
71
+ });
72
+ return await this.insightsByPeriodRepository.compactSourceDataIntoInsightPeriod({
73
+ sourceBatchQuery: batchQuery,
74
+ periodUnitToCompactInto: 'week',
75
+ });
76
+ }
77
+ };
78
+ exports.InsightsCompactionService = InsightsCompactionService;
79
+ exports.InsightsCompactionService = InsightsCompactionService = __decorate([
80
+ (0, di_1.Service)(),
81
+ __metadata("design:paramtypes", [insights_by_period_repository_1.InsightsByPeriodRepository,
82
+ insights_raw_repository_1.InsightsRawRepository,
83
+ insights_config_1.InsightsConfig])
84
+ ], InsightsCompactionService);
85
+ //# sourceMappingURL=insights-compaction.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insights-compaction.service.js","sourceRoot":"","sources":["../../../src/modules/insights/insights-compaction.service.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import { ListInsightsWorkflowQueryDto } from '@n8n/api-types';
1
+ import { InsightsDateFilterDto, ListInsightsWorkflowQueryDto } from '@n8n/api-types';
2
2
  import type { InsightsSummary, InsightsByTime, InsightsByWorkflow } from '@n8n/api-types';
3
3
  import { AuthenticatedRequest } from '../../requests';
4
4
  import { InsightsService } from './insights.service';
5
5
  export declare class InsightsController {
6
6
  private readonly insightsService;
7
- private readonly maxAgeInDaysFilteredInsights;
8
7
  constructor(insightsService: InsightsService);
9
- getInsightsSummary(): Promise<InsightsSummary>;
8
+ private getMaxAgeInDaysAndGranularity;
9
+ getInsightsSummary(_req: AuthenticatedRequest, _res: Response, payload?: InsightsDateFilterDto): Promise<InsightsSummary>;
10
10
  getInsightsByWorkflow(_req: AuthenticatedRequest, _res: Response, payload: ListInsightsWorkflowQueryDto): Promise<InsightsByWorkflow>;
11
- getInsightsByTime(): Promise<InsightsByTime[]>;
11
+ getInsightsByTime(_req: AuthenticatedRequest, _res: Response, payload: InsightsDateFilterDto): Promise<InsightsByTime[]>;
12
12
  }
@@ -14,32 +14,43 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.InsightsController = void 0;
16
16
  const api_types_1 = require("@n8n/api-types");
17
- const decorators_1 = require("../../decorators");
18
- const pagination_1 = require("../../middlewares/list-query/pagination");
19
- const sort_by_1 = require("../../middlewares/list-query/sort-by");
17
+ const decorators_1 = require("@n8n/decorators");
18
+ const forbidden_error_1 = require("../../errors/response-errors/forbidden.error");
20
19
  const insights_service_1 = require("./insights.service");
21
20
  let InsightsController = class InsightsController {
22
21
  constructor(insightsService) {
23
22
  this.insightsService = insightsService;
24
- this.maxAgeInDaysFilteredInsights = 7;
25
23
  }
26
- async getInsightsSummary() {
24
+ getMaxAgeInDaysAndGranularity(payload) {
25
+ try {
26
+ return this.insightsService.getMaxAgeInDaysAndGranularity(payload.dateRange ?? 'week');
27
+ }
28
+ catch (error) {
29
+ throw new forbidden_error_1.ForbiddenError(error.message);
30
+ }
31
+ }
32
+ async getInsightsSummary(_req, _res, payload = { dateRange: 'week' }) {
33
+ const dateRangeAndMaxAgeInDays = this.getMaxAgeInDaysAndGranularity(payload);
27
34
  return await this.insightsService.getInsightsSummary({
28
- periodLengthInDays: this.maxAgeInDaysFilteredInsights,
35
+ periodLengthInDays: dateRangeAndMaxAgeInDays.maxAgeInDays,
29
36
  });
30
37
  }
31
38
  async getInsightsByWorkflow(_req, _res, payload) {
39
+ const dateRangeAndMaxAgeInDays = this.getMaxAgeInDaysAndGranularity({
40
+ dateRange: payload.dateRange ?? 'week',
41
+ });
32
42
  return await this.insightsService.getInsightsByWorkflow({
33
- maxAgeInDays: this.maxAgeInDaysFilteredInsights,
43
+ maxAgeInDays: dateRangeAndMaxAgeInDays.maxAgeInDays,
34
44
  skip: payload.skip,
35
45
  take: payload.take,
36
46
  sortBy: payload.sortBy,
37
47
  });
38
48
  }
39
- async getInsightsByTime() {
49
+ async getInsightsByTime(_req, _res, payload) {
50
+ const dateRangeAndMaxAgeInDays = this.getMaxAgeInDaysAndGranularity(payload);
40
51
  return await this.insightsService.getInsightsByTime({
41
- maxAgeInDays: this.maxAgeInDaysFilteredInsights,
42
- periodUnit: 'day',
52
+ maxAgeInDays: dateRangeAndMaxAgeInDays.maxAgeInDays,
53
+ periodUnit: dateRangeAndMaxAgeInDays.granularity,
43
54
  });
44
55
  }
45
56
  };
@@ -47,12 +58,14 @@ exports.InsightsController = InsightsController;
47
58
  __decorate([
48
59
  (0, decorators_1.Get)('/summary'),
49
60
  (0, decorators_1.GlobalScope)('insights:list'),
61
+ __param(2, decorators_1.Query),
50
62
  __metadata("design:type", Function),
51
- __metadata("design:paramtypes", []),
63
+ __metadata("design:paramtypes", [Object, Response,
64
+ api_types_1.InsightsDateFilterDto]),
52
65
  __metadata("design:returntype", Promise)
53
66
  ], InsightsController.prototype, "getInsightsSummary", null);
54
67
  __decorate([
55
- (0, decorators_1.Get)('/by-workflow', { middlewares: [pagination_1.paginationListQueryMiddleware, sort_by_1.sortByQueryMiddleware] }),
68
+ (0, decorators_1.Get)('/by-workflow'),
56
69
  (0, decorators_1.GlobalScope)('insights:list'),
57
70
  (0, decorators_1.Licensed)('feat:insights:viewDashboard'),
58
71
  __param(2, decorators_1.Query),
@@ -65,8 +78,10 @@ __decorate([
65
78
  (0, decorators_1.Get)('/by-time'),
66
79
  (0, decorators_1.GlobalScope)('insights:list'),
67
80
  (0, decorators_1.Licensed)('feat:insights:viewDashboard'),
81
+ __param(2, decorators_1.Query),
68
82
  __metadata("design:type", Function),
69
- __metadata("design:paramtypes", []),
83
+ __metadata("design:paramtypes", [Object, Response,
84
+ api_types_1.InsightsDateFilterDto]),
70
85
  __metadata("design:returntype", Promise)
71
86
  ], InsightsController.prototype, "getInsightsByTime", null);
72
87
  exports.InsightsController = InsightsController = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"insights.controller.js","sourceRoot":"","sources":["../../../src/modules/insights/insights.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,8CAA8D;AAG9D,6CAAiF;AACjF,oEAAoF;AACpF,8DAAyE;AAGzE,yDAAqD;AAG9C,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAG9B,YAA6B,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;QAF5C,iCAA4B,GAAG,CAAC,CAAC;IAEc,CAAC;IAI3D,AAAN,KAAK,CAAC,kBAAkB;QACvB,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC;YACpD,kBAAkB,EAAE,IAAI,CAAC,4BAA4B;SACrD,CAAC,CAAC;IACJ,CAAC;IAKK,AAAN,KAAK,CAAC,qBAAqB,CAC1B,IAA0B,EAC1B,IAAc,EACP,OAAqC;QAE5C,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,qBAAqB,CAAC;YACvD,YAAY,EAAE,IAAI,CAAC,4BAA4B;YAC/C,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE,OAAO,CAAC,MAAM;SACtB,CAAC,CAAC;IACJ,CAAC;IAKK,AAAN,KAAK,CAAC,iBAAiB;QACtB,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC;YACnD,YAAY,EAAE,IAAI,CAAC,4BAA4B;YAC/C,UAAU,EAAE,KAAK;SACjB,CAAC,CAAC;IACJ,CAAC;CACD,CAAA;AAtCY,gDAAkB;AAOxB;IAFL,IAAA,gBAAG,EAAC,UAAU,CAAC;IACf,IAAA,wBAAW,EAAC,eAAe,CAAC;;;;4DAK5B;AAKK;IAHL,IAAA,gBAAG,EAAC,cAAc,EAAE,EAAE,WAAW,EAAE,CAAC,0CAA6B,EAAE,+BAAqB,CAAC,EAAE,CAAC;IAC5F,IAAA,wBAAW,EAAC,eAAe,CAAC;IAC5B,IAAA,qBAAQ,EAAC,6BAA6B,CAAC;IAItC,WAAA,kBAAK,CAAA;;6CADA,QAAQ;QACE,wCAA4B;;+DAQ5C;AAKK;IAHL,IAAA,gBAAG,EAAC,UAAU,CAAC;IACf,IAAA,wBAAW,EAAC,eAAe,CAAC;IAC5B,IAAA,qBAAQ,EAAC,6BAA6B,CAAC;;;;2DAMvC;6BArCW,kBAAkB;IAD9B,IAAA,2BAAc,EAAC,WAAW,CAAC;qCAImB,kCAAe;GAHjD,kBAAkB,CAsC9B"}
1
+ {"version":3,"file":"insights.controller.js","sourceRoot":"","sources":["../../../src/modules/insights/insights.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,8CAAqF;AAErF,gDAAoF;AAGpF,8EAA0E;AAG1E,yDAAqD;AAG9C,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC9B,YAA6B,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;IAAG,CAAC;IAMzD,6BAA6B,CAAC,OAA8B;QACnE,IAAI,CAAC;YACJ,OAAO,IAAI,CAAC,eAAe,CAAC,6BAA6B,CAAC,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC;QACxF,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACzB,MAAM,IAAI,gCAAc,CAAE,KAAmB,CAAC,OAAO,CAAC,CAAC;QACxD,CAAC;IACF,CAAC;IAIK,AAAN,KAAK,CAAC,kBAAkB,CACvB,IAA0B,EAC1B,IAAc,EACP,UAAiC,EAAE,SAAS,EAAE,MAAM,EAAE;QAE7D,MAAM,wBAAwB,GAAG,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC;QAC7E,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC;YACpD,kBAAkB,EAAE,wBAAwB,CAAC,YAAY;SACzD,CAAC,CAAC;IACJ,CAAC;IAKK,AAAN,KAAK,CAAC,qBAAqB,CAC1B,IAA0B,EAC1B,IAAc,EACP,OAAqC;QAE5C,MAAM,wBAAwB,GAAG,IAAI,CAAC,6BAA6B,CAAC;YACnE,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,MAAM;SACtC,CAAC,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,qBAAqB,CAAC;YACvD,YAAY,EAAE,wBAAwB,CAAC,YAAY;YACnD,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE,OAAO,CAAC,MAAM;SACtB,CAAC,CAAC;IACJ,CAAC;IAKK,AAAN,KAAK,CAAC,iBAAiB,CACtB,IAA0B,EAC1B,IAAc,EACP,OAA8B;QAErC,MAAM,wBAAwB,GAAG,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC;QAC7E,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC;YACnD,YAAY,EAAE,wBAAwB,CAAC,YAAY;YACnD,UAAU,EAAE,wBAAwB,CAAC,WAAW;SAChD,CAAC,CAAC;IACJ,CAAC;CACD,CAAA;AA7DY,gDAAkB;AAiBxB;IAFL,IAAA,gBAAG,EAAC,UAAU,CAAC;IACf,IAAA,wBAAW,EAAC,eAAe,CAAC;IAI3B,WAAA,kBAAK,CAAA;;6CADA,QAAQ;QACE,iCAAqB;;4DAMrC;AAKK;IAHL,IAAA,gBAAG,EAAC,cAAc,CAAC;IACnB,IAAA,wBAAW,EAAC,eAAe,CAAC;IAC5B,IAAA,qBAAQ,EAAC,6BAA6B,CAAC;IAItC,WAAA,kBAAK,CAAA;;6CADA,QAAQ;QACE,wCAA4B;;+DAW5C;AAKK;IAHL,IAAA,gBAAG,EAAC,UAAU,CAAC;IACf,IAAA,wBAAW,EAAC,eAAe,CAAC;IAC5B,IAAA,qBAAQ,EAAC,6BAA6B,CAAC;IAItC,WAAA,kBAAK,CAAA;;6CADA,QAAQ;QACE,iCAAqB;;2DAOrC;6BA5DW,kBAAkB;IAD9B,IAAA,2BAAc,EAAC,WAAW,CAAC;qCAEmB,kCAAe;GADjD,kBAAkB,CA6D9B"}
@@ -1,15 +1,15 @@
1
+ import type { BaseN8nModule } from '@n8n/decorators';
1
2
  import type { ExecutionLifecycleHooks } from 'n8n-core';
2
3
  import { InstanceSettings, Logger } from 'n8n-core';
3
- import type { BaseN8nModule } from '../../decorators/module';
4
- import { OrchestrationService } from '../../services/orchestration.service';
5
4
  import { InsightsService } from './insights.service';
6
5
  import './insights.controller';
7
6
  export declare class InsightsModule implements BaseN8nModule {
8
7
  private readonly logger;
9
8
  private readonly insightsService;
10
9
  private readonly instanceSettings;
11
- private readonly orchestrationService;
12
- constructor(logger: Logger, insightsService: InsightsService, instanceSettings: InstanceSettings, orchestrationService: OrchestrationService);
10
+ constructor(logger: Logger, insightsService: InsightsService, instanceSettings: InstanceSettings);
13
11
  initialize(): void;
14
12
  registerLifecycleHooks(hooks: ExecutionLifecycleHooks): void;
13
+ startBackgroundProcess(): void;
14
+ stopBackgroundProcess(): void;
15
15
  }
@@ -10,27 +10,21 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.InsightsModule = void 0;
13
+ const decorators_1 = require("@n8n/decorators");
13
14
  const n8n_core_1 = require("n8n-core");
14
- const module_1 = require("../../decorators/module");
15
- const orchestration_service_1 = require("../../services/orchestration.service");
16
15
  const insights_service_1 = require("./insights.service");
17
16
  require("./insights.controller");
18
17
  let InsightsModule = class InsightsModule {
19
- constructor(logger, insightsService, instanceSettings, orchestrationService) {
18
+ constructor(logger, insightsService, instanceSettings) {
20
19
  this.logger = logger;
21
20
  this.insightsService = insightsService;
22
21
  this.instanceSettings = instanceSettings;
23
- this.orchestrationService = orchestrationService;
24
22
  this.logger = this.logger.scoped('insights');
25
23
  }
26
24
  initialize() {
27
25
  if (this.instanceSettings.isLeader) {
28
26
  this.insightsService.startBackgroundProcess();
29
27
  }
30
- if (this.instanceSettings.isMultiMain) {
31
- this.orchestrationService.multiMainSetup.on('leader-takeover', () => this.insightsService.startBackgroundProcess());
32
- this.orchestrationService.multiMainSetup.on('leader-stepdown', () => this.insightsService.stopBackgroundProcess());
33
- }
34
28
  }
35
29
  registerLifecycleHooks(hooks) {
36
30
  const insightsService = this.insightsService;
@@ -38,13 +32,30 @@ let InsightsModule = class InsightsModule {
38
32
  await insightsService.workflowExecuteAfterHandler(this, fullRunData);
39
33
  });
40
34
  }
35
+ startBackgroundProcess() {
36
+ this.insightsService.startBackgroundProcess();
37
+ }
38
+ stopBackgroundProcess() {
39
+ this.insightsService.stopBackgroundProcess();
40
+ }
41
41
  };
42
42
  exports.InsightsModule = InsightsModule;
43
+ __decorate([
44
+ (0, decorators_1.OnLeaderTakeover)(),
45
+ __metadata("design:type", Function),
46
+ __metadata("design:paramtypes", []),
47
+ __metadata("design:returntype", void 0)
48
+ ], InsightsModule.prototype, "startBackgroundProcess", null);
49
+ __decorate([
50
+ (0, decorators_1.OnLeaderStepdown)(),
51
+ __metadata("design:type", Function),
52
+ __metadata("design:paramtypes", []),
53
+ __metadata("design:returntype", void 0)
54
+ ], InsightsModule.prototype, "stopBackgroundProcess", null);
43
55
  exports.InsightsModule = InsightsModule = __decorate([
44
- (0, module_1.N8nModule)(),
56
+ (0, decorators_1.N8nModule)(),
45
57
  __metadata("design:paramtypes", [n8n_core_1.Logger,
46
58
  insights_service_1.InsightsService,
47
- n8n_core_1.InstanceSettings,
48
- orchestration_service_1.OrchestrationService])
59
+ n8n_core_1.InstanceSettings])
49
60
  ], InsightsModule);
50
61
  //# sourceMappingURL=insights.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"insights.module.js","sourceRoot":"","sources":["../../../src/modules/insights/insights.module.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,uCAAoD;AAGpD,gDAAgD;AAChD,4EAAwE;AAExE,yDAAqD;AACrD,iCAA+B;AAGxB,IAAM,cAAc,GAApB,MAAM,cAAc;IAC1B,YACkB,MAAc,EACd,eAAgC,EAChC,gBAAkC,EAClC,oBAA0C;QAH1C,WAAM,GAAN,MAAM,CAAQ;QACd,oBAAe,GAAf,eAAe,CAAiB;QAChC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,yBAAoB,GAApB,oBAAoB,CAAsB;QAE3D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;IAED,UAAU;QAGT,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;YACpC,IAAI,CAAC,eAAe,CAAC,sBAAsB,EAAE,CAAC;QAC/C,CAAC;QAED,IAAI,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;YACvC,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE,CACnE,IAAI,CAAC,eAAe,CAAC,sBAAsB,EAAE,CAC7C,CAAC;YACF,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE,CACnE,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,CAC5C,CAAC;QACH,CAAC;IACF,CAAC;IAED,sBAAsB,CAAC,KAA8B;QACpD,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAE7C,KAAK,CAAC,UAAU,CAAC,sBAAsB,EAAE,KAAK,WAAW,WAAW;YACnE,MAAM,eAAe,CAAC,2BAA2B,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;IACJ,CAAC;CACD,CAAA;AAlCY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,kBAAS,GAAE;qCAGe,iBAAM;QACG,kCAAe;QACd,2BAAgB;QACZ,4CAAoB;GALhD,cAAc,CAkC1B"}
1
+ {"version":3,"file":"insights.module.js","sourceRoot":"","sources":["../../../src/modules/insights/insights.module.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,gDAAgF;AAEhF,uCAAoD;AAEpD,yDAAqD;AAErD,iCAA+B;AAGxB,IAAM,cAAc,GAApB,MAAM,cAAc;IAC1B,YACkB,MAAc,EACd,eAAgC,EAChC,gBAAkC;QAFlC,WAAM,GAAN,MAAM,CAAQ;QACd,oBAAe,GAAf,eAAe,CAAiB;QAChC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAEnD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;IAED,UAAU;QAGT,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;YACpC,IAAI,CAAC,eAAe,CAAC,sBAAsB,EAAE,CAAC;QAC/C,CAAC;IACF,CAAC;IAED,sBAAsB,CAAC,KAA8B;QACpD,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAE7C,KAAK,CAAC,UAAU,CAAC,sBAAsB,EAAE,KAAK,WAAW,WAAW;YACnE,MAAM,eAAe,CAAC,2BAA2B,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;IACJ,CAAC;IAGD,sBAAsB;QACrB,IAAI,CAAC,eAAe,CAAC,sBAAsB,EAAE,CAAC;IAC/C,CAAC;IAGD,qBAAqB;QACpB,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,CAAC;IAC9C,CAAC;CACD,CAAA;AAlCY,wCAAc;AA0B1B;IADC,IAAA,6BAAgB,GAAE;;;;4DAGlB;AAGD;IADC,IAAA,6BAAgB,GAAE;;;;2DAGlB;yBAjCW,cAAc;IAD1B,IAAA,sBAAS,GAAE;qCAGe,iBAAM;QACG,kCAAe;QACd,2BAAgB;GAJxC,cAAc,CAkC1B"}
@@ -1,42 +1,23 @@
1
- import type { InsightsSummary } from '@n8n/api-types';
1
+ import { type InsightsSummary, type InsightsDateRange } from '@n8n/api-types';
2
2
  import { Logger } from 'n8n-core';
3
3
  import type { ExecutionLifecycleHooks } from 'n8n-core';
4
4
  import { type IRun } from 'n8n-workflow';
5
- import { SharedWorkflowRepository } from '../../databases/repositories/shared-workflow.repository';
6
- import { InsightsRaw } from '../../modules/insights/database/entities/insights-raw';
5
+ import { License } from '../../license';
7
6
  import type { PeriodUnit } from './database/entities/insights-shared';
8
7
  import { InsightsByPeriodRepository } from './database/repositories/insights-by-period.repository';
9
- import { InsightsRawRepository } from './database/repositories/insights-raw.repository';
10
- type BufferedInsight = Pick<InsightsRaw, 'type' | 'value' | 'timestamp'> & {
11
- workflowId: string;
12
- workflowName: string;
13
- };
8
+ import { InsightsCollectionService } from './insights-collection.service';
9
+ import { InsightsCompactionService } from './insights-compaction.service';
14
10
  export declare class InsightsService {
15
- private readonly sharedWorkflowRepository;
16
11
  private readonly insightsByPeriodRepository;
17
- private readonly insightsRawRepository;
12
+ private readonly compactionService;
13
+ private readonly collectionService;
14
+ private readonly license;
18
15
  private readonly logger;
19
- private readonly cachedMetadata;
20
- private compactInsightsTimer;
21
- private bufferedInsights;
22
- private flushInsightsRawBufferTimer;
23
- private isAsynchronouslySavingInsights;
24
- private flushesInProgress;
25
- constructor(sharedWorkflowRepository: SharedWorkflowRepository, insightsByPeriodRepository: InsightsByPeriodRepository, insightsRawRepository: InsightsRawRepository, logger: Logger);
16
+ constructor(insightsByPeriodRepository: InsightsByPeriodRepository, compactionService: InsightsCompactionService, collectionService: InsightsCollectionService, license: License, logger: Logger);
26
17
  startBackgroundProcess(): void;
27
18
  stopBackgroundProcess(): void;
28
- private startCompactionScheduler;
29
- private stopCompactionScheduler;
30
- private startFlushingScheduler;
31
- private stopFlushingScheduler;
32
19
  shutdown(): Promise<void>;
33
20
  workflowExecuteAfterHandler(ctx: ExecutionLifecycleHooks, fullRunData: IRun): Promise<void>;
34
- saveInsightsMetadataAndRaw(insightsRawToInsertBuffer: Set<BufferedInsight>): Promise<void>;
35
- flushEvents(): Promise<void>;
36
- compactInsights(): Promise<void>;
37
- compactRawToHour(): Promise<number>;
38
- compactHourToDay(): Promise<number>;
39
- compactDayToWeek(): Promise<number>;
40
21
  getInsightsSummary({ periodLengthInDays, }: {
41
22
  periodLengthInDays: number;
42
23
  }): Promise<InsightsSummary>;
@@ -53,8 +34,8 @@ export declare class InsightsService {
53
34
  workflowName: string;
54
35
  failed: number;
55
36
  projectName: string;
56
- succeeded: number;
57
37
  total: number;
38
+ succeeded: number;
58
39
  failureRate: number;
59
40
  runTime: number;
60
41
  averageRunTime: number;
@@ -75,5 +56,8 @@ export declare class InsightsService {
75
56
  timeSaved: number;
76
57
  };
77
58
  }[]>;
59
+ getAvailableDateRanges(): InsightsDateRange[];
60
+ getMaxAgeInDaysAndGranularity(dateRangeKey: InsightsDateRange['key']): InsightsDateRange & {
61
+ maxAgeInDays: number;
62
+ };
78
63
  }
79
- export {};