@t4h.framework/dev 0.17.0 → 0.19.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 (101) hide show
  1. package/CHANGELOG.md +100 -0
  2. package/LICENSE +21 -0
  3. package/README.md +15 -2
  4. package/dist/AppProcess.d.ts +5 -1
  5. package/dist/AppProcess.js +3 -2
  6. package/dist/AppProcess.js.map +1 -1
  7. package/dist/Server.js +3 -1
  8. package/dist/Server.js.map +1 -1
  9. package/dist/claims.d.ts +3 -1
  10. package/dist/claims.js +14 -39
  11. package/dist/claims.js.map +1 -1
  12. package/dist/constants/panel-config.js +2 -2
  13. package/dist/constants/panel-config.js.map +1 -1
  14. package/dist/constants/server.d.ts +2 -0
  15. package/dist/constants/server.js +2 -0
  16. package/dist/constants/server.js.map +1 -1
  17. package/dist/http/create-app.js +12 -8
  18. package/dist/http/create-app.js.map +1 -1
  19. package/dist/http/middlewares/error-handler.middleware.js +2 -0
  20. package/dist/http/middlewares/error-handler.middleware.js.map +1 -1
  21. package/dist/integrations/cache.d.ts +6 -0
  22. package/dist/integrations/cache.js +4 -0
  23. package/dist/integrations/cache.js.map +1 -0
  24. package/dist/integrations/fs.d.ts +6 -0
  25. package/dist/integrations/fs.js +6 -0
  26. package/dist/integrations/fs.js.map +1 -0
  27. package/dist/integrations/http.d.ts +8 -0
  28. package/dist/integrations/http.js +12 -0
  29. package/dist/integrations/http.js.map +1 -0
  30. package/dist/integrations/index.d.ts +8 -0
  31. package/dist/integrations/index.js +42 -0
  32. package/dist/integrations/index.js.map +1 -0
  33. package/dist/integrations/orm.d.ts +8 -0
  34. package/dist/integrations/orm.js +6 -0
  35. package/dist/integrations/orm.js.map +1 -0
  36. package/dist/integrations/runtime-claims.d.ts +14 -0
  37. package/dist/integrations/runtime-claims.js +20 -0
  38. package/dist/integrations/runtime-claims.js.map +1 -0
  39. package/dist/integrations/sftp.d.ts +15 -0
  40. package/dist/integrations/sftp.js +13 -0
  41. package/dist/integrations/sftp.js.map +1 -0
  42. package/dist/integrations/smtp.d.ts +6 -0
  43. package/dist/integrations/smtp.js +6 -0
  44. package/dist/integrations/smtp.js.map +1 -0
  45. package/dist/models/JSONRPCError.d.ts +1 -0
  46. package/dist/models/JSONRPCError.js.map +1 -1
  47. package/dist/models/WorkflowRunActivity.d.ts +5 -1
  48. package/dist/models/WorkflowRunActivity.js +5 -0
  49. package/dist/models/WorkflowRunActivity.js.map +1 -1
  50. package/dist/models/WorkflowRunAsyncActivityPendingCallback.d.ts +21 -0
  51. package/dist/models/WorkflowRunAsyncActivityPendingCallback.js +20 -0
  52. package/dist/models/WorkflowRunAsyncActivityPendingCallback.js.map +1 -0
  53. package/dist/models/claims/DevGetActivityCallbackUrlClaim.d.ts +14 -0
  54. package/dist/models/claims/DevGetActivityCallbackUrlClaim.js +52 -0
  55. package/dist/models/claims/DevGetActivityCallbackUrlClaim.js.map +1 -0
  56. package/dist/models/claims/DevHttpClientRequestClaim.js +2 -0
  57. package/dist/models/claims/DevHttpClientRequestClaim.js.map +1 -1
  58. package/dist/models/claims/DevORMClaim.js +8 -6
  59. package/dist/models/claims/DevORMClaim.js.map +1 -1
  60. package/dist/repositories/WorkflowRunAsyncActivityPending.repository.d.ts +1 -0
  61. package/dist/repositories/WorkflowRunAsyncActivityPending.repository.js +13 -3
  62. package/dist/repositories/WorkflowRunAsyncActivityPending.repository.js.map +1 -1
  63. package/dist/repositories/WorkflowRunAsyncActivityPendingCallback.repository.d.ts +12 -0
  64. package/dist/repositories/WorkflowRunAsyncActivityPendingCallback.repository.js +61 -0
  65. package/dist/repositories/WorkflowRunAsyncActivityPendingCallback.repository.js.map +1 -0
  66. package/dist/services/CallbackToken.service.d.ts +5 -0
  67. package/dist/services/CallbackToken.service.js +23 -0
  68. package/dist/services/CallbackToken.service.js.map +1 -0
  69. package/dist/services/Database.service.d.ts +0 -5
  70. package/dist/services/Database.service.js +20 -8
  71. package/dist/services/Database.service.js.map +1 -1
  72. package/dist/services/WorkflowRunAsyncActivityFacade.service.d.ts +9 -4
  73. package/dist/services/WorkflowRunAsyncActivityFacade.service.js +14 -7
  74. package/dist/services/WorkflowRunAsyncActivityFacade.service.js.map +1 -1
  75. package/dist/tools/find-claim-by-constructor.d.ts +1 -1
  76. package/dist/tools/find-claim-by-constructor.js +4 -3
  77. package/dist/tools/find-claim-by-constructor.js.map +1 -1
  78. package/dist/tools/json-codec.d.ts +3 -20
  79. package/dist/tools/json-codec.js +7 -11
  80. package/dist/tools/json-codec.js.map +1 -1
  81. package/dist/transport/AppProcessJsonRpc.js +10 -0
  82. package/dist/transport/AppProcessJsonRpc.js.map +1 -1
  83. package/dist/use-cases/CreateWorkflowRunAsyncActivity.usecase.js +3 -1
  84. package/dist/use-cases/CreateWorkflowRunAsyncActivity.usecase.js.map +1 -1
  85. package/dist/use-cases/CreateWorkflowRunAsyncActivityPendingCallback.usecase.d.ts +16 -0
  86. package/dist/use-cases/CreateWorkflowRunAsyncActivityPendingCallback.usecase.js +81 -0
  87. package/dist/use-cases/CreateWorkflowRunAsyncActivityPendingCallback.usecase.js.map +1 -0
  88. package/dist/use-cases/ExecuteWorkflowRunActivity.usecase.js +2 -1
  89. package/dist/use-cases/ExecuteWorkflowRunActivity.usecase.js.map +1 -1
  90. package/dist/use-cases/ExecuteWorkflowRunAsyncActivity.usecase.d.ts +5 -1
  91. package/dist/use-cases/ExecuteWorkflowRunAsyncActivity.usecase.js +5 -3
  92. package/dist/use-cases/ExecuteWorkflowRunAsyncActivity.usecase.js.map +1 -1
  93. package/dist/use-cases/NextTickWorkflowRun.usecase.js +4 -2
  94. package/dist/use-cases/NextTickWorkflowRun.usecase.js.map +1 -1
  95. package/dist/use-cases/WorkflowRunAsyncActivityAdvance.usecase.d.ts +2 -1
  96. package/dist/use-cases/WorkflowRunAsyncActivityAdvance.usecase.js +2 -2
  97. package/dist/use-cases/WorkflowRunAsyncActivityAdvance.usecase.js.map +1 -1
  98. package/dist/workers/app-process.d.ts +4 -0
  99. package/dist/workers/app-process.js +7 -1
  100. package/dist/workers/app-process.js.map +1 -1
  101. package/package.json +61 -14
@@ -0,0 +1,5 @@
1
+ export declare class CallbackTokenService {
2
+ private readonly secret;
3
+ derive(activityId: string): string;
4
+ verify(activityId: string, token: string): boolean;
5
+ }
@@ -0,0 +1,23 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import crypto from 'node:crypto';
8
+ import { deriveCallbackToken, isCallbackTokenValid, } from '@t4h.framework/webhook';
9
+ import { Injectable } from 'pleroma';
10
+ let CallbackTokenService = class CallbackTokenService {
11
+ secret = crypto.randomBytes(32).toString('hex');
12
+ derive(activityId) {
13
+ return deriveCallbackToken(this.secret, activityId);
14
+ }
15
+ verify(activityId, token) {
16
+ return isCallbackTokenValid(this.secret, activityId, token);
17
+ }
18
+ };
19
+ CallbackTokenService = __decorate([
20
+ Injectable()
21
+ ], CallbackTokenService);
22
+ export { CallbackTokenService };
23
+ //# sourceMappingURL=CallbackToken.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CallbackToken.service.js","sourceRoot":"","sources":["../../src/services/CallbackToken.service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,MAAM,MAAM,aAAa,CAAA;AAEhC,OAAO,EACL,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAG7B,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IACd,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAEzD,MAAM,CAAC,UAAkB;QAC9B,OAAO,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IACrD,CAAC;IAEM,MAAM,CAAC,UAAkB,EAAE,KAAa;QAC7C,OAAO,oBAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAA;IAC7D,CAAC;CACF,CAAA;AAVY,oBAAoB;IADhC,UAAU,EAAE;GACA,oBAAoB,CAUhC"}
@@ -1,9 +1,4 @@
1
1
  import { DatabaseSync } from 'node:sqlite';
2
- /**
3
- * In-memory SQLite. Every app process boot starts from an empty schema on
4
- * purpose: the dev server does not carry migrations, durability belongs to
5
- * the production runtime.
6
- */
7
2
  export declare class DatabaseService {
8
3
  readonly db: DatabaseSync;
9
4
  constructor();
@@ -6,7 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { DatabaseSync } from 'node:sqlite';
8
8
  import { Injectable } from 'pleroma';
9
- import { jsonCodec } from '../tools/json-codec.js';
9
+ import { getJsonCodec } from '../tools/json-codec.js';
10
10
  const SCHEMA = `
11
11
  CREATE TABLE workflow_runs (
12
12
  id TEXT PRIMARY KEY,
@@ -49,11 +49,26 @@ CREATE TABLE workflow_run_async_activity_pendings (
49
49
  timeout_at INTEGER,
50
50
  result TEXT,
51
51
  payload TEXT,
52
+ auth TEXT,
53
+ last_callback_id TEXT,
52
54
  created_at INTEGER NOT NULL,
53
55
  updated_at INTEGER NOT NULL,
54
56
  UNIQUE (activity_id, position)
55
57
  );
56
58
 
59
+ CREATE TABLE workflow_run_async_activity_pending_callbacks (
60
+ id TEXT PRIMARY KEY,
61
+ pending_id TEXT NOT NULL REFERENCES workflow_run_async_activity_pendings (id) ON DELETE CASCADE,
62
+ method TEXT NOT NULL,
63
+ request TEXT NOT NULL,
64
+ status TEXT NOT NULL CHECK (status IN ('received', 'advanced', 'rejected')) DEFAULT 'received',
65
+ created_at INTEGER NOT NULL,
66
+ updated_at INTEGER NOT NULL
67
+ );
68
+
69
+ CREATE INDEX workflow_run_async_activity_pending_callbacks_pending_idx
70
+ ON workflow_run_async_activity_pending_callbacks (pending_id);
71
+
57
72
  CREATE TABLE workflow_run_logs (
58
73
  id INTEGER PRIMARY KEY AUTOINCREMENT,
59
74
  run_id TEXT NOT NULL REFERENCES workflow_runs (id) ON DELETE CASCADE,
@@ -62,11 +77,6 @@ CREATE TABLE workflow_run_logs (
62
77
  at INTEGER NOT NULL
63
78
  );
64
79
  `;
65
- /**
66
- * In-memory SQLite. Every app process boot starts from an empty schema on
67
- * purpose: the dev server does not carry migrations, durability belongs to
68
- * the production runtime.
69
- */
70
80
  let DatabaseService = class DatabaseService {
71
81
  db = new DatabaseSync(':memory:');
72
82
  constructor() {
@@ -88,12 +98,14 @@ let DatabaseService = class DatabaseService {
88
98
  async encode(value) {
89
99
  if (value === undefined)
90
100
  return null;
91
- return await jsonCodec.stringify(value, {});
101
+ const codec = await getJsonCodec();
102
+ return await codec.stringify(value, {});
92
103
  }
93
104
  async decode(text) {
94
105
  if (text === null)
95
106
  return undefined;
96
- return await jsonCodec.parse(text, {});
107
+ const codec = await getJsonCodec();
108
+ return await codec.parse(text, {});
97
109
  }
98
110
  close() {
99
111
  this.db.close();
@@ -1 +1 @@
1
- {"version":3,"file":"Database.service.js","sourceRoot":"","sources":["../../src/services/Database.service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEpC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAElD,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDd,CAAA;AAED;;;;GAIG;AAEI,IAAM,eAAe,GAArB,MAAM,eAAe;IACV,EAAE,GAAG,IAAI,YAAY,CAAC,UAAU,CAAC,CAAA;IAEjD;QACE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;QAExC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACtB,CAAC;IAEM,WAAW,CAAI,EAAW;QAC/B,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAErB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,EAAE,EAAE,CAAA;YAEnB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAEtB,OAAO,MAAM,CAAA;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAExB,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,KAAc;QAChC,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,IAAI,CAAA;QAEpC,OAAO,MAAM,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IAC7C,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,IAAmB;QACrC,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,SAAS,CAAA;QAEnC,OAAO,MAAM,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACxC,CAAC;IAEM,KAAK;QACV,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAA;IACjB,CAAC;CACF,CAAA;AAxCY,eAAe;IAD3B,UAAU,EAAE;GACA,eAAe,CAwC3B"}
1
+ {"version":3,"file":"Database.service.js","sourceRoot":"","sources":["../../src/services/Database.service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEpC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErD,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqEd,CAAA;AAGM,IAAM,eAAe,GAArB,MAAM,eAAe;IACV,EAAE,GAAG,IAAI,YAAY,CAAC,UAAU,CAAC,CAAA;IAEjD;QACE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;QAExC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACtB,CAAC;IAEM,WAAW,CAAI,EAAW;QAC/B,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAErB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,EAAE,EAAE,CAAA;YAEnB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAEtB,OAAO,MAAM,CAAA;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAExB,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,KAAc;QAChC,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,IAAI,CAAA;QAEpC,MAAM,KAAK,GAAG,MAAM,YAAY,EAAE,CAAA;QAElC,OAAO,MAAM,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IACzC,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,IAAmB;QACrC,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,SAAS,CAAA;QAEnC,MAAM,KAAK,GAAG,MAAM,YAAY,EAAE,CAAA;QAElC,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACpC,CAAC;IAEM,KAAK;QACV,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAA;IACjB,CAAC;CACF,CAAA;AA5CY,eAAe;IAD3B,UAAU,EAAE;GACA,eAAe,CA4C3B"}
@@ -1,13 +1,18 @@
1
+ import type { AsyncActivityAdvanceContext } from '@t4h.framework/core';
2
+ import type { CallbackRequest } from '@t4h.framework/webhook';
1
3
  import type { WorkflowRunActivity } from '../models/WorkflowRunActivity.js';
2
4
  import { CreateWorkflowRunAsyncActivity } from '../use-cases/CreateWorkflowRunAsyncActivity.usecase.js';
3
- import { ExecuteWorkflowRunAsyncActivity } from '../use-cases/ExecuteWorkflowRunAsyncActivity.usecase.js';
5
+ import { CreateWorkflowRunAsyncActivityPendingCallback } from '../use-cases/CreateWorkflowRunAsyncActivityPendingCallback.usecase.js';
6
+ import { ExecuteWorkflowRunAsyncActivity, type ExecuteWorkflowRunAsyncActivityOptions } from '../use-cases/ExecuteWorkflowRunAsyncActivity.usecase.js';
4
7
  import { WorkflowRunAsyncActivityAdvance } from '../use-cases/WorkflowRunAsyncActivityAdvance.usecase.js';
5
8
  export declare class WorkflowRunAsyncActivityFacade {
6
9
  private readonly createWorkflowRunAsyncActivity;
7
10
  private readonly workflowRunAsyncActivityAdvance;
8
11
  private readonly executeWorkflowRunAsyncActivity;
9
- constructor(createWorkflowRunAsyncActivity: CreateWorkflowRunAsyncActivity, workflowRunAsyncActivityAdvance: WorkflowRunAsyncActivityAdvance, executeWorkflowRunAsyncActivity: ExecuteWorkflowRunAsyncActivity);
12
+ private readonly createWorkflowRunAsyncActivityPendingCallback;
13
+ constructor(createWorkflowRunAsyncActivity: CreateWorkflowRunAsyncActivity, workflowRunAsyncActivityAdvance: WorkflowRunAsyncActivityAdvance, executeWorkflowRunAsyncActivity: ExecuteWorkflowRunAsyncActivity, createWorkflowRunAsyncActivityPendingCallback: CreateWorkflowRunAsyncActivityPendingCallback);
10
14
  create(activity: WorkflowRunActivity, input: unknown): Promise<import("../models/WorkflowRunActivity.js").WorkflowRunAsyncActivityPending>;
11
- advance(activityId: string, payload: unknown): Promise<import("../use-cases/WorkflowRunAsyncActivityAdvance.usecase.js").WorkflowRunAsyncActivityAdvanceOutput>;
12
- execute(pendingId: string): Promise<void>;
15
+ advance(activityId: string, payload: unknown, context?: AsyncActivityAdvanceContext): Promise<import("../use-cases/WorkflowRunAsyncActivityAdvance.usecase.js").WorkflowRunAsyncActivityAdvanceOutput>;
16
+ execute(pendingId: string, options?: ExecuteWorkflowRunAsyncActivityOptions): Promise<void>;
17
+ createPendingCallback(activityId: string, token: string, request: CallbackRequest): Promise<import("../use-cases/WorkflowRunAsyncActivityAdvance.usecase.js").WorkflowRunAsyncActivityAdvanceOutput>;
13
18
  }
@@ -9,32 +9,39 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
9
9
  };
10
10
  import { Inject, Injectable } from 'pleroma';
11
11
  import { CreateWorkflowRunAsyncActivity } from '../use-cases/CreateWorkflowRunAsyncActivity.usecase.js';
12
- import { ExecuteWorkflowRunAsyncActivity } from '../use-cases/ExecuteWorkflowRunAsyncActivity.usecase.js';
12
+ import { CreateWorkflowRunAsyncActivityPendingCallback } from '../use-cases/CreateWorkflowRunAsyncActivityPendingCallback.usecase.js';
13
+ import { ExecuteWorkflowRunAsyncActivity, } from '../use-cases/ExecuteWorkflowRunAsyncActivity.usecase.js';
13
14
  import { WorkflowRunAsyncActivityAdvance } from '../use-cases/WorkflowRunAsyncActivityAdvance.usecase.js';
14
15
  let WorkflowRunAsyncActivityFacade = class WorkflowRunAsyncActivityFacade {
15
16
  createWorkflowRunAsyncActivity;
16
17
  workflowRunAsyncActivityAdvance;
17
18
  executeWorkflowRunAsyncActivity;
18
- constructor(createWorkflowRunAsyncActivity, workflowRunAsyncActivityAdvance, executeWorkflowRunAsyncActivity) {
19
+ createWorkflowRunAsyncActivityPendingCallback;
20
+ constructor(createWorkflowRunAsyncActivity, workflowRunAsyncActivityAdvance, executeWorkflowRunAsyncActivity, createWorkflowRunAsyncActivityPendingCallback) {
19
21
  this.createWorkflowRunAsyncActivity = createWorkflowRunAsyncActivity;
20
22
  this.workflowRunAsyncActivityAdvance = workflowRunAsyncActivityAdvance;
21
23
  this.executeWorkflowRunAsyncActivity = executeWorkflowRunAsyncActivity;
24
+ this.createWorkflowRunAsyncActivityPendingCallback = createWorkflowRunAsyncActivityPendingCallback;
22
25
  }
23
26
  create(activity, input) {
24
27
  return this.createWorkflowRunAsyncActivity.create(activity, input);
25
28
  }
26
- advance(activityId, payload) {
27
- return this.workflowRunAsyncActivityAdvance.advance(activityId, payload);
29
+ advance(activityId, payload, context) {
30
+ return this.workflowRunAsyncActivityAdvance.advance(activityId, payload, context);
28
31
  }
29
- execute(pendingId) {
30
- return this.executeWorkflowRunAsyncActivity.execute(pendingId);
32
+ execute(pendingId, options) {
33
+ return this.executeWorkflowRunAsyncActivity.execute(pendingId, options);
34
+ }
35
+ createPendingCallback(activityId, token, request) {
36
+ return this.createWorkflowRunAsyncActivityPendingCallback.create(activityId, token, request);
31
37
  }
32
38
  };
33
39
  WorkflowRunAsyncActivityFacade = __decorate([
34
40
  Injectable(),
35
41
  __param(0, Inject(() => CreateWorkflowRunAsyncActivity)),
36
42
  __param(1, Inject(() => WorkflowRunAsyncActivityAdvance)),
37
- __param(2, Inject(() => ExecuteWorkflowRunAsyncActivity))
43
+ __param(2, Inject(() => ExecuteWorkflowRunAsyncActivity)),
44
+ __param(3, Inject(() => CreateWorkflowRunAsyncActivityPendingCallback))
38
45
  ], WorkflowRunAsyncActivityFacade);
39
46
  export { WorkflowRunAsyncActivityFacade };
40
47
  //# sourceMappingURL=WorkflowRunAsyncActivityFacade.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WorkflowRunAsyncActivityFacade.service.js","sourceRoot":"","sources":["../../src/services/WorkflowRunAsyncActivityFacade.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAG5C,OAAO,EAAE,8BAA8B,EAAE,MAAM,wDAAwD,CAAA;AACvG,OAAO,EAAE,+BAA+B,EAAE,MAAM,yDAAyD,CAAA;AACzG,OAAO,EAAE,+BAA+B,EAAE,MAAM,yDAAyD,CAAA;AAGlG,IAAM,8BAA8B,GAApC,MAAM,8BAA8B;IAGtB;IAGA;IAGA;IARnB,YAEmB,8BAA8D,EAG9D,+BAAgE,EAGhE,+BAAgE;QANhE,mCAA8B,GAA9B,8BAA8B,CAAgC;QAG9D,oCAA+B,GAA/B,+BAA+B,CAAiC;QAGhE,oCAA+B,GAA/B,+BAA+B,CAAiC;IAChF,CAAC;IAEG,MAAM,CAAC,QAA6B,EAAE,KAAc;QACzD,OAAO,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;IACpE,CAAC;IAEM,OAAO,CAAC,UAAkB,EAAE,OAAgB;QACjD,OAAO,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAC1E,CAAC;IAEM,OAAO,CAAC,SAAiB;QAC9B,OAAO,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAChE,CAAC;CACF,CAAA;AAvBY,8BAA8B;IAD1C,UAAU,EAAE;IAGR,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,8BAA8B,CAAC,CAAA;IAG5C,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,+BAA+B,CAAC,CAAA;IAG7C,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,+BAA+B,CAAC,CAAA;GARrC,8BAA8B,CAuB1C"}
1
+ {"version":3,"file":"WorkflowRunAsyncActivityFacade.service.js","sourceRoot":"","sources":["../../src/services/WorkflowRunAsyncActivityFacade.service.ts"],"names":[],"mappings":";;;;;;;;;AAEA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAG5C,OAAO,EAAE,8BAA8B,EAAE,MAAM,wDAAwD,CAAA;AACvG,OAAO,EAAE,6CAA6C,EAAE,MAAM,uEAAuE,CAAA;AACrI,OAAO,EACL,+BAA+B,GAEhC,MAAM,yDAAyD,CAAA;AAChE,OAAO,EAAE,+BAA+B,EAAE,MAAM,yDAAyD,CAAA;AAGlG,IAAM,8BAA8B,GAApC,MAAM,8BAA8B;IAGtB;IAGA;IAGA;IAGA;IAXnB,YAEmB,8BAA8D,EAG9D,+BAAgE,EAGhE,+BAAgE,EAGhE,6CAA4F;QAT5F,mCAA8B,GAA9B,8BAA8B,CAAgC;QAG9D,oCAA+B,GAA/B,+BAA+B,CAAiC;QAGhE,oCAA+B,GAA/B,+BAA+B,CAAiC;QAGhE,kDAA6C,GAA7C,6CAA6C,CAA+C;IAC5G,CAAC;IAEG,MAAM,CAAC,QAA6B,EAAE,KAAc;QACzD,OAAO,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;IACpE,CAAC;IAEM,OAAO,CACZ,UAAkB,EAClB,OAAgB,EAChB,OAAqC;QAErC,OAAO,IAAI,CAAC,+BAA+B,CAAC,OAAO,CACjD,UAAU,EACV,OAAO,EACP,OAAO,CACR,CAAA;IACH,CAAC;IAEM,OAAO,CACZ,SAAiB,EACjB,OAAgD;QAEhD,OAAO,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACzE,CAAC;IAEM,qBAAqB,CAC1B,UAAkB,EAClB,KAAa,EACb,OAAwB;QAExB,OAAO,IAAI,CAAC,6CAA6C,CAAC,MAAM,CAC9D,UAAU,EACV,KAAK,EACL,OAAO,CACR,CAAA;IACH,CAAC;CACF,CAAA;AAjDY,8BAA8B;IAD1C,UAAU,EAAE;IAGR,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,8BAA8B,CAAC,CAAA;IAG5C,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,+BAA+B,CAAC,CAAA;IAG7C,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,+BAA+B,CAAC,CAAA;IAG7C,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,6CAA6C,CAAC,CAAA;GAXnD,8BAA8B,CAiD1C"}
@@ -1 +1 @@
1
- export declare function findClaimByConstructor<T>(constructor: new () => T): T;
1
+ export declare function findClaimByConstructor<T>(constructor: new () => T): Promise<T>;
@@ -1,6 +1,7 @@
1
- import { claims } from '../claims.js';
2
- export function findClaimByConstructor(constructor) {
3
- const provider = claims.find(claim => claim.value instanceof constructor);
1
+ import { getClaims } from '../claims.js';
2
+ export async function findClaimByConstructor(constructor) {
3
+ const providers = await getClaims();
4
+ const provider = providers.find(claim => claim.value instanceof constructor);
4
5
  if (!provider)
5
6
  throw new Error(`Claim not found: ${constructor.name}`);
6
7
  return provider.value;
@@ -1 +1 @@
1
- {"version":3,"file":"find-claim-by-constructor.js","sourceRoot":"","sources":["../../src/tools/find-claim-by-constructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAErC,MAAM,UAAU,sBAAsB,CAAI,WAAwB;IAChE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,YAAY,WAAW,CAAC,CAAA;IAEzE,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;IAEtE,OAAO,QAAQ,CAAC,KAAU,CAAA;AAC5B,CAAC"}
1
+ {"version":3,"file":"find-claim-by-constructor.js","sourceRoot":"","sources":["../../src/tools/find-claim-by-constructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,WAAwB;IAExB,MAAM,SAAS,GAAG,MAAM,SAAS,EAAE,CAAA;IAEnC,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,YAAY,WAAW,CAAC,CAAA;IAE5E,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;IAEtE,OAAO,QAAQ,CAAC,KAAU,CAAA;AAC5B,CAAC"}
@@ -1,21 +1,4 @@
1
- import { Binary } from '@t4h.framework/core';
2
- import { SftpBinary } from '@t4h.framework/sftp';
3
1
  import { JSONCodec, JSONCodecKind } from '../models/JSONCodec.js';
4
- import { JSONCodecKindFrameworkSerializableClass as Kind } from '../models/JSONCodecKindFrameworkSerializableClass.js';
5
- export declare const jsonCodec: JSONCodec<[JSONCodecKind<"date", string, Date, {}, {}>, JSONCodecKind<"binary", {
6
- path: string;
7
- contentType: string;
8
- contentLength: number;
9
- range: {
10
- start: number;
11
- end: number;
12
- } | undefined;
13
- encoding: BufferEncoding | undefined;
14
- }, Binary, {}, {}>, JSONCodecKind<"sftp:binary", {
15
- connectionString: string;
16
- file: {
17
- filepath: string;
18
- contentType: string;
19
- contentLength: number;
20
- };
21
- }, SftpBinary, {}, {}>, Kind<"orm", import("@t4h.framework/core").SerializableClass>, Kind<"http:body", import("@t4h.framework/core").SerializableClass>, Kind<"oauth2:client-credentials-grant", import("@t4h.framework/core").SerializableClass>, Kind<"oauth2:grant-resource-owner-password", import("@t4h.framework/core").SerializableClass>]>;
2
+ type Kinds = readonly JSONCodecKind<any, any, any, any, any>[];
3
+ export declare const getJsonCodec: () => Promise<JSONCodec<Kinds>>;
4
+ export {};
@@ -1,21 +1,17 @@
1
1
  import { Binary } from '@t4h.framework/core';
2
- import { Body, OAuth2ClientCredentials, OAuth2GrantResourceOwnerPassword, } from '@t4h.framework/http';
3
- import { ORM } from '@t4h.framework/orm';
4
- import { SftpBinary } from '@t4h.framework/sftp';
2
+ import { getIntegrations } from '../integrations/index.js';
5
3
  import { DevFileBinary } from '../models/DevFileBinary.js';
6
4
  import { JSONCodec, JSONCodecKind } from '../models/JSONCodec.js';
7
- import { JSONCodecKindFrameworkSerializableClass as Kind } from '../models/JSONCodecKindFrameworkSerializableClass.js';
8
- import { SftpClient } from '../models/SftpClient.js';
9
5
  const jsonDateKind = new JSONCodecKind('date', value => value instanceof Date, (date) => date.toISOString(), (date) => new Date(date));
10
6
  const jsonFileBinaryKind = new JSONCodecKind('binary', value => value instanceof DevFileBinary, (binary) => {
11
7
  if (!(binary instanceof DevFileBinary))
12
8
  throw new TypeError('Unsupported binary instance');
13
9
  return binary.toJSON();
14
10
  }, json => DevFileBinary.from(json));
15
- const jsonSftpBinaryKind = new JSONCodecKind('sftp:binary', value => value instanceof SftpBinary, (binary) => {
16
- if (!(binary instanceof SftpBinary))
17
- throw new TypeError('Unsupported binary instance');
18
- return binary.toJSON();
19
- }, json => SftpBinary.from(json.connectionString, json.file, binary => SftpClient.stream(binary.connectionString, binary.filepath)));
20
- export const jsonCodec = new JSONCodec(jsonDateKind, jsonFileBinaryKind, jsonSftpBinaryKind, new Kind('orm', ORM), new Kind('http:body', Body), new Kind('oauth2:client-credentials-grant', OAuth2ClientCredentials), new Kind('oauth2:grant-resource-owner-password', OAuth2GrantResourceOwnerPassword));
11
+ const load = async () => {
12
+ const integrations = await getIntegrations();
13
+ return new JSONCodec(jsonDateKind, jsonFileBinaryKind, ...integrations.flatMap(({ kinds }) => kinds ?? []));
14
+ };
15
+ let codec;
16
+ export const getJsonCodec = () => (codec ??= load());
21
17
  //# sourceMappingURL=json-codec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"json-codec.js","sourceRoot":"","sources":["../../src/tools/json-codec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EACL,IAAI,EACJ,uBAAuB,EACvB,gCAAgC,GACjC,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACjE,OAAO,EAAE,uCAAuC,IAAI,IAAI,EAAE,MAAM,sDAAsD,CAAA;AACtH,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,MAAM,YAAY,GAAG,IAAI,aAAa,CACpC,MAAM,EACN,KAAK,CAAC,EAAE,CAAC,KAAK,YAAY,IAAI,EAC9B,CAAC,IAAU,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAClC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CACjC,CAAA;AAED,MAAM,kBAAkB,GAAG,IAAI,aAAa,CAC1C,QAAQ,EACR,KAAK,CAAC,EAAE,CAAC,KAAK,YAAY,aAAa,EACvC,CAAC,MAAc,EAAE,EAAE;IACjB,IAAI,CAAC,CAAC,MAAM,YAAY,aAAa,CAAC;QACpC,MAAM,IAAI,SAAS,CAAC,6BAA6B,CAAC,CAAA;IAEpD,OAAO,MAAM,CAAC,MAAM,EAAE,CAAA;AACxB,CAAC,EACD,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CACjC,CAAA;AAED,MAAM,kBAAkB,GAAG,IAAI,aAAa,CAC1C,aAAa,EACb,KAAK,CAAC,EAAE,CAAC,KAAK,YAAY,UAAU,EACpC,CAAC,MAAkB,EAAE,EAAE;IACrB,IAAI,CAAC,CAAC,MAAM,YAAY,UAAU,CAAC;QACjC,MAAM,IAAI,SAAS,CAAC,6BAA6B,CAAC,CAAA;IAEpD,OAAO,MAAM,CAAC,MAAM,EAAE,CAAA;AACxB,CAAC,EACD,IAAI,CAAC,EAAE,CACL,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CACzD,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,QAAQ,CAAC,CAC5D,CACJ,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,SAAS,CACpC,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,IAAI,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EACpB,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAC3B,IAAI,IAAI,CAAC,iCAAiC,EAAE,uBAAuB,CAAC,EACpE,IAAI,IAAI,CACN,sCAAsC,EACtC,gCAAgC,CACjC,CACF,CAAA"}
1
+ {"version":3,"file":"json-codec.js","sourceRoot":"","sources":["../../src/tools/json-codec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAIjE,MAAM,YAAY,GAAG,IAAI,aAAa,CACpC,MAAM,EACN,KAAK,CAAC,EAAE,CAAC,KAAK,YAAY,IAAI,EAC9B,CAAC,IAAU,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAClC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CACjC,CAAA;AAED,MAAM,kBAAkB,GAAG,IAAI,aAAa,CAC1C,QAAQ,EACR,KAAK,CAAC,EAAE,CAAC,KAAK,YAAY,aAAa,EACvC,CAAC,MAAc,EAAE,EAAE;IACjB,IAAI,CAAC,CAAC,MAAM,YAAY,aAAa,CAAC;QACpC,MAAM,IAAI,SAAS,CAAC,6BAA6B,CAAC,CAAA;IAEpD,OAAO,MAAM,CAAC,MAAM,EAAE,CAAA;AACxB,CAAC,EACD,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CACjC,CAAA;AAED,MAAM,IAAI,GAAG,KAAK,IAA+B,EAAE;IACjD,MAAM,YAAY,GAAG,MAAM,eAAe,EAAE,CAAA;IAE5C,OAAO,IAAI,SAAS,CAClB,YAAY,EACZ,kBAAkB,EAClB,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CACpD,CAAA;AACH,CAAC,CAAA;AAED,IAAI,KAA4C,CAAA;AAEhD,MAAM,CAAC,MAAM,YAAY,GAAG,GAA8B,EAAE,CAAC,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC,CAAA"}
@@ -24,6 +24,11 @@ const PageQuery = Type.Object({
24
24
  limit: Type.Optional(Type.Integer({ minimum: 1, maximum: 100 })),
25
25
  offset: Type.Optional(Type.Integer({ minimum: 0 })),
26
26
  });
27
+ const CallbackRequest = Type.Object({
28
+ method: Type.String(),
29
+ headers: Type.Record(Type.String(), Type.Union([Type.String(), Type.Array(Type.String())])),
30
+ rawBody: Type.String(),
31
+ });
27
32
  export const handlers = new Set();
28
33
  handlers.add(() => {
29
34
  return new JSONRPCServerMethod('workflow.run', { schema: [Type.String(), Type.Any()] }, (workflowId, input) => container.resolve(WorkflowRunFacade).run(workflowId, input));
@@ -51,6 +56,11 @@ handlers.add(() => {
51
56
  handlers.add(() => {
52
57
  return new JSONRPCServerMethod('workflow.async-activities.advance', { schema: [Type.String(), Type.Any()] }, (id, payload) => container.resolve(WorkflowRunAsyncActivityFacade).advance(id, payload));
53
58
  });
59
+ handlers.add(() => {
60
+ return new JSONRPCServerMethod('workflow.async-activities.pending-callbacks.create', { schema: [Type.String(), Type.String(), CallbackRequest] }, (activityId, token, request) => container
61
+ .resolve(WorkflowRunAsyncActivityFacade)
62
+ .createPendingCallback(activityId, token, request));
63
+ });
54
64
  handlers.add(() => {
55
65
  return new JSONRPCServerMethod('workflow.async-activities.waiting.list', { schema: [PageQuery] }, query => container
56
66
  .resolve(WorkflowRunAsyncActivityPendingRepository)
@@ -1 +1 @@
1
- {"version":3,"file":"AppProcessJsonRpc.js","sourceRoot":"","sources":["../../src/transport/AppProcessJsonRpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AppProcessJsonRpc.js","sourceRoot":"","sources":["../../src/transport/AppProcessJsonRpc.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
9
9
  };
10
10
  import { AsyncActivity, AsyncActivityResultFulfilled, AsyncActivityResultPending, AsyncActivityResultRejected, Claim, Internals, } from '@t4h.framework/core';
11
11
  import { Inject, Injectable } from 'pleroma';
12
- import { claims } from '../claims.js';
12
+ import { getClaims } from '../claims.js';
13
13
  import { WorkflowRunAsyncActivityPending, } from '../models/WorkflowRunActivity.js';
14
14
  import { WorkflowRunActivityRepository } from '../repositories/WorkflowRunActivity.repository.js';
15
15
  import { WorkflowRunAsyncActivityPendingRepository } from '../repositories/WorkflowRunAsyncActivityPending.repository.js';
@@ -32,6 +32,7 @@ let CreateWorkflowRunAsyncActivity = class CreateWorkflowRunAsyncActivity {
32
32
  }
33
33
  async create(activity, input) {
34
34
  const Activity = this.activityRegistry.getActivityConstructor(activity.type);
35
+ const claims = await getClaims();
35
36
  const bootstrap = await Claim.run(claims, () => Internals.runActivity(Activity, { claims, env, id: activity.id }, async (instance) => {
36
37
  if (!(instance instanceof AsyncActivity))
37
38
  throw new Error(`Activity is not an async activity: ${instance.constructor.name}`);
@@ -43,6 +44,7 @@ let CreateWorkflowRunAsyncActivity = class CreateWorkflowRunAsyncActivity {
43
44
  schema: bootstrap.schema,
44
45
  timeoutAt: bootstrap.timeoutAt,
45
46
  result: bootstrap.payload,
47
+ auth: bootstrap.auth,
46
48
  });
47
49
  await this.workflowRunAsyncActivityPendingRepository.create(pending);
48
50
  if (pending.timeoutAt)
@@ -1 +1 @@
1
- {"version":3,"file":"CreateWorkflowRunAsyncActivity.usecase.js","sourceRoot":"","sources":["../../src/use-cases/CreateWorkflowRunAsyncActivity.usecase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CreateWorkflowRunAsyncActivity.usecase.js","sourceRoot":"","sources":["../../src/use-cases/CreateWorkflowRunAsyncActivity.usecase.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { type CallbackRequest } from '@t4h.framework/webhook';
2
+ import { WorkflowRunAsyncActivityAdvance } from './WorkflowRunAsyncActivityAdvance.usecase.js';
3
+ import { WorkflowRunActivityRepository } from '../repositories/WorkflowRunActivity.repository.js';
4
+ import { WorkflowRunAsyncActivityPendingRepository } from '../repositories/WorkflowRunAsyncActivityPending.repository.js';
5
+ import { WorkflowRunAsyncActivityPendingCallbackRepository } from '../repositories/WorkflowRunAsyncActivityPendingCallback.repository.js';
6
+ import { CallbackTokenService } from '../services/CallbackToken.service.js';
7
+ export declare const CALLBACK_RETRY_AFTER_IN_SECONDS = 1;
8
+ export declare class CreateWorkflowRunAsyncActivityPendingCallback {
9
+ private readonly workflowRunActivityRepository;
10
+ private readonly workflowRunAsyncActivityPendingRepository;
11
+ private readonly workflowRunAsyncActivityPendingCallbackRepository;
12
+ private readonly callbackToken;
13
+ private readonly workflowRunAsyncActivityAdvance;
14
+ constructor(workflowRunActivityRepository: WorkflowRunActivityRepository, workflowRunAsyncActivityPendingRepository: WorkflowRunAsyncActivityPendingRepository, workflowRunAsyncActivityPendingCallbackRepository: WorkflowRunAsyncActivityPendingCallbackRepository, callbackToken: CallbackTokenService, workflowRunAsyncActivityAdvance: WorkflowRunAsyncActivityAdvance);
15
+ create(activityId: string, token: string, request: CallbackRequest): Promise<import("./WorkflowRunAsyncActivityAdvance.usecase.js").WorkflowRunAsyncActivityAdvanceOutput>;
16
+ }
@@ -0,0 +1,81 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
8
+ return function (target, key) { decorator(target, key, paramIndex); }
9
+ };
10
+ import { flattenHeaders, parseCallbackBody, verifyCallbackAuth, } from '@t4h.framework/webhook';
11
+ import { Inject, Injectable } from 'pleroma';
12
+ import { WorkflowRunAsyncActivityAdvance } from './WorkflowRunAsyncActivityAdvance.usecase.js';
13
+ import { JSONRPCError } from '../models/JSONRPCError.js';
14
+ import { WorkflowRunAsyncActivityPendingCallback } from '../models/WorkflowRunAsyncActivityPendingCallback.js';
15
+ import { WorkflowRunActivityRepository } from '../repositories/WorkflowRunActivity.repository.js';
16
+ import { WorkflowRunAsyncActivityPendingRepository } from '../repositories/WorkflowRunAsyncActivityPending.repository.js';
17
+ import { WorkflowRunAsyncActivityPendingCallbackRepository } from '../repositories/WorkflowRunAsyncActivityPendingCallback.repository.js';
18
+ import { CallbackTokenService } from '../services/CallbackToken.service.js';
19
+ export const CALLBACK_RETRY_AFTER_IN_SECONDS = 1;
20
+ let CreateWorkflowRunAsyncActivityPendingCallback = class CreateWorkflowRunAsyncActivityPendingCallback {
21
+ workflowRunActivityRepository;
22
+ workflowRunAsyncActivityPendingRepository;
23
+ workflowRunAsyncActivityPendingCallbackRepository;
24
+ callbackToken;
25
+ workflowRunAsyncActivityAdvance;
26
+ constructor(workflowRunActivityRepository, workflowRunAsyncActivityPendingRepository, workflowRunAsyncActivityPendingCallbackRepository, callbackToken, workflowRunAsyncActivityAdvance) {
27
+ this.workflowRunActivityRepository = workflowRunActivityRepository;
28
+ this.workflowRunAsyncActivityPendingRepository = workflowRunAsyncActivityPendingRepository;
29
+ this.workflowRunAsyncActivityPendingCallbackRepository = workflowRunAsyncActivityPendingCallbackRepository;
30
+ this.callbackToken = callbackToken;
31
+ this.workflowRunAsyncActivityAdvance = workflowRunAsyncActivityAdvance;
32
+ }
33
+ async create(activityId, token, request) {
34
+ if (!this.callbackToken.verify(activityId, token))
35
+ throw new JSONRPCError(`Unknown callback: ${activityId}`, {
36
+ data: { status: 404 },
37
+ });
38
+ const activity = await this.workflowRunActivityRepository.findById(activityId);
39
+ const pending = activity &&
40
+ (await this.workflowRunAsyncActivityPendingRepository.findLastByActivityId(activityId));
41
+ if (!activity || !pending)
42
+ throw new JSONRPCError('Callback arrived before the activity settled', {
43
+ data: {
44
+ status: 503,
45
+ headers: { 'Retry-After': String(CALLBACK_RETRY_AFTER_IN_SECONDS) },
46
+ },
47
+ });
48
+ if (pending.status !== 'pending')
49
+ throw new JSONRPCError('Activity is no longer waiting for a callback', {
50
+ data: { status: 410 },
51
+ });
52
+ if (!(await verifyCallbackAuth(pending.auth, request)))
53
+ throw new JSONRPCError('Callback authentication failed', {
54
+ data: { status: 401 },
55
+ });
56
+ const headers = flattenHeaders(request.headers);
57
+ const callback = new WorkflowRunAsyncActivityPendingCallback(pending.id, request.method, { headers, body: request.rawBody });
58
+ this.workflowRunAsyncActivityPendingCallbackRepository.create(callback);
59
+ this.workflowRunAsyncActivityPendingRepository.setLastCallback(pending.id, callback.id);
60
+ try {
61
+ const output = await this.workflowRunAsyncActivityAdvance.advance(activityId, parseCallbackBody(headers['content-type'], request.rawBody), { method: request.method, headers });
62
+ this.workflowRunAsyncActivityPendingCallbackRepository.updateStatus(callback.id, 'advanced');
63
+ return output;
64
+ }
65
+ catch (error) {
66
+ if (error instanceof JSONRPCError && error.data?.status === 400)
67
+ this.workflowRunAsyncActivityPendingCallbackRepository.updateStatus(callback.id, 'rejected');
68
+ throw error;
69
+ }
70
+ }
71
+ };
72
+ CreateWorkflowRunAsyncActivityPendingCallback = __decorate([
73
+ Injectable(),
74
+ __param(0, Inject(() => WorkflowRunActivityRepository)),
75
+ __param(1, Inject(() => WorkflowRunAsyncActivityPendingRepository)),
76
+ __param(2, Inject(() => WorkflowRunAsyncActivityPendingCallbackRepository)),
77
+ __param(3, Inject(() => CallbackTokenService)),
78
+ __param(4, Inject(() => WorkflowRunAsyncActivityAdvance))
79
+ ], CreateWorkflowRunAsyncActivityPendingCallback);
80
+ export { CreateWorkflowRunAsyncActivityPendingCallback };
81
+ //# sourceMappingURL=CreateWorkflowRunAsyncActivityPendingCallback.usecase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateWorkflowRunAsyncActivityPendingCallback.usecase.js","sourceRoot":"","sources":["../../src/use-cases/CreateWorkflowRunAsyncActivityPendingCallback.usecase.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
9
9
  };
10
10
  import { Claim, Internals, SyncActivity } from '@t4h.framework/core';
11
11
  import { Inject, Injectable } from 'pleroma';
12
- import { claims } from '../claims.js';
12
+ import { getClaims } from '../claims.js';
13
13
  import { WorkflowRunActivityRepository } from '../repositories/WorkflowRunActivity.repository.js';
14
14
  import { ActivityRegistryService } from '../services/ActivityRegistry.service.js';
15
15
  import { toRejectedReason } from '../tools/to-rejected-reason.js';
@@ -23,6 +23,7 @@ let ExecuteWorkflowRunActivity = class ExecuteWorkflowRunActivity {
23
23
  }
24
24
  async execute(activity, input) {
25
25
  const Activity = this.activityRegistry.getActivityConstructor(activity.type);
26
+ const claims = await getClaims();
26
27
  let output;
27
28
  try {
28
29
  output = await Claim.run(claims, () => Internals.runActivity(Activity, { claims, env, id: activity.id }, async (instance) => {
@@ -1 +1 @@
1
- {"version":3,"file":"ExecuteWorkflowRunActivity.usecase.js","sourceRoot":"","sources":["../../src/use-cases/ExecuteWorkflowRunActivity.usecase.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAErC,OAAO,EAAE,6BAA6B,EAAE,MAAM,mDAAmD,CAAA;AACjG,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAA;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAA;AAGxC,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IAGlB;IAGA;IALnB,YAEmB,6BAA4D,EAG5D,gBAAyC;QAHzC,kCAA6B,GAA7B,6BAA6B,CAA+B;QAG5D,qBAAgB,GAAhB,gBAAgB,CAAyB;IACzD,CAAC;IAEG,KAAK,CAAC,OAAO,CAClB,QAA6B,EAC7B,KAAc;QAEd,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAE5E,IAAI,MAAe,CAAA;QAEnB,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,CACpC,SAAS,CAAC,WAAW,CACnB,QAAQ,EACR,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,EAChC,KAAK,EAAC,QAAQ,EAAC,EAAE;gBACf,IAAI,CAAC,CAAC,QAAQ,YAAY,YAAY,CAAC;oBACrC,MAAM,IAAI,KAAK,CACb,oCAAoC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,CAChE,CAAA;gBAEH,OAAO,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YAC5B,CAAC,CACF,CACF,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAC3C,QAAQ,CAAC,EAAE,EACX,gBAAgB,CAAC,KAAK,CAAC,CACxB,CAAA;YAED,MAAM,KAAK,CAAA;QACb,CAAC;QAED,MAAM,IAAI,CAAC,6BAA6B,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;IACxE,CAAC;CACF,CAAA;AA3CY,0BAA0B;IADtC,UAAU,EAAE;IAGR,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,6BAA6B,CAAC,CAAA;IAG3C,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,CAAA;GAL7B,0BAA0B,CA2CtC"}
1
+ {"version":3,"file":"ExecuteWorkflowRunActivity.usecase.js","sourceRoot":"","sources":["../../src/use-cases/ExecuteWorkflowRunActivity.usecase.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC,OAAO,EAAE,6BAA6B,EAAE,MAAM,mDAAmD,CAAA;AACjG,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAA;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAA;AAGxC,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IAGlB;IAGA;IALnB,YAEmB,6BAA4D,EAG5D,gBAAyC;QAHzC,kCAA6B,GAA7B,6BAA6B,CAA+B;QAG5D,qBAAgB,GAAhB,gBAAgB,CAAyB;IACzD,CAAC;IAEG,KAAK,CAAC,OAAO,CAClB,QAA6B,EAC7B,KAAc;QAEd,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAE5E,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAA;QAEhC,IAAI,MAAe,CAAA;QAEnB,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,CACpC,SAAS,CAAC,WAAW,CACnB,QAAQ,EACR,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,EAChC,KAAK,EAAC,QAAQ,EAAC,EAAE;gBACf,IAAI,CAAC,CAAC,QAAQ,YAAY,YAAY,CAAC;oBACrC,MAAM,IAAI,KAAK,CACb,oCAAoC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,CAChE,CAAA;gBAEH,OAAO,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YAC5B,CAAC,CACF,CACF,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAC3C,QAAQ,CAAC,EAAE,EACX,gBAAgB,CAAC,KAAK,CAAC,CACxB,CAAA;YAED,MAAM,KAAK,CAAA;QACb,CAAC;QAED,MAAM,IAAI,CAAC,6BAA6B,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;IACxE,CAAC;CACF,CAAA;AA7CY,0BAA0B;IADtC,UAAU,EAAE;IAGR,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,6BAA6B,CAAC,CAAA;IAG3C,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,CAAA;GAL7B,0BAA0B,CA6CtC"}
@@ -1,3 +1,4 @@
1
+ import { type AsyncActivityAdvanceContext } from '@t4h.framework/core';
1
2
  import { WorkflowRunRepository } from '../repositories/WorkflowRun.repository.js';
2
3
  import { WorkflowRunActivityRepository } from '../repositories/WorkflowRunActivity.repository.js';
3
4
  import { WorkflowRunAsyncActivityPendingRepository } from '../repositories/WorkflowRunAsyncActivityPending.repository.js';
@@ -7,6 +8,9 @@ import { TimeoutSchedulerService } from '../services/TimeoutScheduler.service.js
7
8
  import { WorkflowRunEventsService } from '../services/WorkflowRunEvents.service.js';
8
9
  import { WorkflowRunFacade } from '../services/WorkflowRunFacade.service.js';
9
10
  import { WorkflowRunLockService } from '../services/WorkflowRunLock.service.js';
11
+ export interface ExecuteWorkflowRunAsyncActivityOptions {
12
+ context?: AsyncActivityAdvanceContext;
13
+ }
10
14
  export declare class ExecuteWorkflowRunAsyncActivity {
11
15
  private readonly workflowRunRepository;
12
16
  private readonly workflowRunActivityRepository;
@@ -18,5 +22,5 @@ export declare class ExecuteWorkflowRunAsyncActivity {
18
22
  private readonly context;
19
23
  private readonly events;
20
24
  constructor(workflowRunRepository: WorkflowRunRepository, workflowRunActivityRepository: WorkflowRunActivityRepository, workflowRunAsyncActivityPendingRepository: WorkflowRunAsyncActivityPendingRepository, activityRegistry: ActivityRegistryService, timeoutScheduler: TimeoutSchedulerService, workflowRun: WorkflowRunFacade, lock: WorkflowRunLockService, context: RuntimeContextService, events: WorkflowRunEventsService);
21
- execute(pendingId: string): Promise<void>;
25
+ execute(pendingId: string, { context }?: ExecuteWorkflowRunAsyncActivityOptions): Promise<void>;
22
26
  }
@@ -9,7 +9,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
9
9
  };
10
10
  import { AsyncActivity, AsyncActivityResultFulfilled, AsyncActivityResultPending, AsyncActivityResultRejected, Claim, Internals, } from '@t4h.framework/core';
11
11
  import { Inject, Injectable } from 'pleroma';
12
- import { claims } from '../claims.js';
12
+ import { getClaims } from '../claims.js';
13
13
  import { WorkflowRunAsyncActivityPending } from '../models/WorkflowRunActivity.js';
14
14
  import { WorkflowRunRepository } from '../repositories/WorkflowRun.repository.js';
15
15
  import { WorkflowRunActivityRepository } from '../repositories/WorkflowRunActivity.repository.js';
@@ -42,7 +42,7 @@ let ExecuteWorkflowRunAsyncActivity = class ExecuteWorkflowRunAsyncActivity {
42
42
  this.context = context;
43
43
  this.events = events;
44
44
  }
45
- async execute(pendingId) {
45
+ async execute(pendingId, { context } = {}) {
46
46
  const pending = await this.workflowRunAsyncActivityPendingRepository.findById(pendingId);
47
47
  if (!pending)
48
48
  throw new Error(`Unknown async activity pending: ${pendingId}`);
@@ -60,6 +60,7 @@ let ExecuteWorkflowRunAsyncActivity = class ExecuteWorkflowRunAsyncActivity {
60
60
  const Activity = this.activityRegistry.getActivityConstructor(activity.type);
61
61
  const isTimedOut = current.timeoutAt !== undefined &&
62
62
  current.timeoutAt.getTime() <= Date.now();
63
+ const claims = await getClaims();
63
64
  const result = await this.context.run({ runId: run.id, workflowId: run.workflow, activityId: activity.id }, () => Claim.run(claims, () => Internals.runActivity(Activity, { claims, env, id: activity.id }, async (instance) => {
64
65
  if (!(instance instanceof AsyncActivity))
65
66
  throw new Error(`Activity is not an async activity: ${instance.constructor.name}`);
@@ -67,7 +68,7 @@ let ExecuteWorkflowRunAsyncActivity = class ExecuteWorkflowRunAsyncActivity {
67
68
  return instance.onTimeout
68
69
  ? instance.onTimeout(current.toResultPending())
69
70
  : new AsyncActivityResultRejected({ reason: 'timeout' });
70
- return instance.advance(current.payload, (root ?? current).toResultPending());
71
+ return instance.advance(current.payload, (root ?? current).toResultPending(), context);
71
72
  })));
72
73
  this.timeoutScheduler.cancel(current.id);
73
74
  if (result instanceof AsyncActivityResultPending) {
@@ -78,6 +79,7 @@ let ExecuteWorkflowRunAsyncActivity = class ExecuteWorkflowRunAsyncActivity {
78
79
  schema: result.schema,
79
80
  timeoutAt: result.timeoutAt,
80
81
  result: result.payload,
82
+ auth: result.auth,
81
83
  });
82
84
  await this.workflowRunAsyncActivityPendingRepository.create(next);
83
85
  this.events.runUpdated(run.id);