@t4h.framework/dev 0.0.0-experimental-5535fb8-124ed92bbb5f8ca2e9fd

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 (165) hide show
  1. package/.ai/skills/framework-dev/SKILL.md +346 -0
  2. package/README.md +172 -0
  3. package/dist/DevServer.d.ts +24 -0
  4. package/dist/DevServer.js +87 -0
  5. package/dist/DevServer.js.map +1 -0
  6. package/dist/__tests__/fixtures.d.ts +57 -0
  7. package/dist/__tests__/fixtures.js +31 -0
  8. package/dist/__tests__/fixtures.js.map +1 -0
  9. package/dist/claims.d.ts +2 -0
  10. package/dist/claims.js +54 -0
  11. package/dist/claims.js.map +1 -0
  12. package/dist/index.d.ts +15 -0
  13. package/dist/index.js +16 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/models/DevFileBinary.d.ts +15 -0
  16. package/dist/models/DevFileBinary.js +27 -0
  17. package/dist/models/DevFileBinary.js.map +1 -0
  18. package/dist/models/InMemoryDatabase.d.ts +20 -0
  19. package/dist/models/InMemoryDatabase.js +86 -0
  20. package/dist/models/InMemoryDatabase.js.map +1 -0
  21. package/dist/models/JSONCodec.d.ts +30 -0
  22. package/dist/models/JSONCodec.js +110 -0
  23. package/dist/models/JSONCodec.js.map +1 -0
  24. package/dist/models/JSONCodecKindFrameworkSerializableClass.d.ts +8 -0
  25. package/dist/models/JSONCodecKindFrameworkSerializableClass.js +7 -0
  26. package/dist/models/JSONCodecKindFrameworkSerializableClass.js.map +1 -0
  27. package/dist/models/JSONRPCClient.d.ts +11 -0
  28. package/dist/models/JSONRPCClient.js +50 -0
  29. package/dist/models/JSONRPCClient.js.map +1 -0
  30. package/dist/models/JSONRPCServer.d.ts +63 -0
  31. package/dist/models/JSONRPCServer.js +61 -0
  32. package/dist/models/JSONRPCServer.js.map +1 -0
  33. package/dist/models/WorkflowRun.d.ts +18 -0
  34. package/dist/models/WorkflowRun.js +20 -0
  35. package/dist/models/WorkflowRun.js.map +1 -0
  36. package/dist/models/WorkflowRunActivity.d.ts +40 -0
  37. package/dist/models/WorkflowRunActivity.js +52 -0
  38. package/dist/models/WorkflowRunActivity.js.map +1 -0
  39. package/dist/models/claims/DevCacheClaim.d.ts +6 -0
  40. package/dist/models/claims/DevCacheClaim.js +12 -0
  41. package/dist/models/claims/DevCacheClaim.js.map +1 -0
  42. package/dist/models/claims/DevFileSystemClaim.d.ts +7 -0
  43. package/dist/models/claims/DevFileSystemClaim.js +30 -0
  44. package/dist/models/claims/DevFileSystemClaim.js.map +1 -0
  45. package/dist/models/claims/DevGetActivityUniqueIdentifierClaim.d.ts +7 -0
  46. package/dist/models/claims/DevGetActivityUniqueIdentifierClaim.js +31 -0
  47. package/dist/models/claims/DevGetActivityUniqueIdentifierClaim.js.map +1 -0
  48. package/dist/models/claims/DevGetProjectUniqueIdentifierClaim.d.ts +6 -0
  49. package/dist/models/claims/DevGetProjectUniqueIdentifierClaim.js +13 -0
  50. package/dist/models/claims/DevGetProjectUniqueIdentifierClaim.js.map +1 -0
  51. package/dist/models/claims/DevGetProjectVersionUniqueIdentifierClaim.d.ts +6 -0
  52. package/dist/models/claims/DevGetProjectVersionUniqueIdentifierClaim.js +13 -0
  53. package/dist/models/claims/DevGetProjectVersionUniqueIdentifierClaim.js.map +1 -0
  54. package/dist/models/claims/DevGetProjectVersionWorkflowUniqueIdentifierClaim.d.ts +7 -0
  55. package/dist/models/claims/DevGetProjectVersionWorkflowUniqueIdentifierClaim.js +31 -0
  56. package/dist/models/claims/DevGetProjectVersionWorkflowUniqueIdentifierClaim.js.map +1 -0
  57. package/dist/models/claims/DevGetWorkflowUniqueIdentifierClaim.d.ts +7 -0
  58. package/dist/models/claims/DevGetWorkflowUniqueIdentifierClaim.js +31 -0
  59. package/dist/models/claims/DevGetWorkflowUniqueIdentifierClaim.js.map +1 -0
  60. package/dist/models/claims/DevHttpClientRequestClaim.d.ts +5 -0
  61. package/dist/models/claims/DevHttpClientRequestClaim.js +39 -0
  62. package/dist/models/claims/DevHttpClientRequestClaim.js.map +1 -0
  63. package/dist/models/claims/DevORMClaim.d.ts +8 -0
  64. package/dist/models/claims/DevORMClaim.js +39 -0
  65. package/dist/models/claims/DevORMClaim.js.map +1 -0
  66. package/dist/models/claims/DevSftpClaim.d.ts +20 -0
  67. package/dist/models/claims/DevSftpClaim.js +148 -0
  68. package/dist/models/claims/DevSftpClaim.js.map +1 -0
  69. package/dist/models/claims/DevSmtpSendEmailClaim.d.ts +6 -0
  70. package/dist/models/claims/DevSmtpSendEmailClaim.js +32 -0
  71. package/dist/models/claims/DevSmtpSendEmailClaim.js.map +1 -0
  72. package/dist/models/claims/DevWorkflowClaim.d.ts +7 -0
  73. package/dist/models/claims/DevWorkflowClaim.js +38 -0
  74. package/dist/models/claims/DevWorkflowClaim.js.map +1 -0
  75. package/dist/repositories/WorkflowRun.repository.d.ts +8 -0
  76. package/dist/repositories/WorkflowRun.repository.js +27 -0
  77. package/dist/repositories/WorkflowRun.repository.js.map +1 -0
  78. package/dist/repositories/WorkflowRunActivity.repository.d.ts +8 -0
  79. package/dist/repositories/WorkflowRunActivity.repository.js +36 -0
  80. package/dist/repositories/WorkflowRunActivity.repository.js.map +1 -0
  81. package/dist/services/BuildWorkflowRunResult.service.d.ts +8 -0
  82. package/dist/services/BuildWorkflowRunResult.service.js +49 -0
  83. package/dist/services/BuildWorkflowRunResult.service.js.map +1 -0
  84. package/dist/services/RuntimeContext.service.d.ts +10 -0
  85. package/dist/services/RuntimeContext.service.js +22 -0
  86. package/dist/services/RuntimeContext.service.js.map +1 -0
  87. package/dist/services/TimeoutScheduler.service.d.ts +5 -0
  88. package/dist/services/TimeoutScheduler.service.js +33 -0
  89. package/dist/services/TimeoutScheduler.service.js.map +1 -0
  90. package/dist/services/WorkflowRunAsyncActivityFacade.service.d.ts +20 -0
  91. package/dist/services/WorkflowRunAsyncActivityFacade.service.js +54 -0
  92. package/dist/services/WorkflowRunAsyncActivityFacade.service.js.map +1 -0
  93. package/dist/services/WorkflowRunFacade.service.d.ts +13 -0
  94. package/dist/services/WorkflowRunFacade.service.js +40 -0
  95. package/dist/services/WorkflowRunFacade.service.js.map +1 -0
  96. package/dist/services/WorkflowRunSyncActivityFacade.service.d.ts +7 -0
  97. package/dist/services/WorkflowRunSyncActivityFacade.service.js +26 -0
  98. package/dist/services/WorkflowRunSyncActivityFacade.service.js.map +1 -0
  99. package/dist/tools/build-tools.d.ts +6 -0
  100. package/dist/tools/build-tools.js +7 -0
  101. package/dist/tools/build-tools.js.map +1 -0
  102. package/dist/tools/find-claim-by-constructor.d.ts +1 -0
  103. package/dist/tools/find-claim-by-constructor.js +8 -0
  104. package/dist/tools/find-claim-by-constructor.js.map +1 -0
  105. package/dist/tools/is-workflow-waiting.d.ts +4 -0
  106. package/dist/tools/is-workflow-waiting.js +12 -0
  107. package/dist/tools/is-workflow-waiting.js.map +1 -0
  108. package/dist/tools/json-codec.d.ts +8 -0
  109. package/dist/tools/json-codec.js +14 -0
  110. package/dist/tools/json-codec.js.map +1 -0
  111. package/dist/tools/json-schema-to-inquirer-question.d.ts +11 -0
  112. package/dist/tools/json-schema-to-inquirer-question.js +34 -0
  113. package/dist/tools/json-schema-to-inquirer-question.js.map +1 -0
  114. package/dist/tools/mkdir-out-dir-project-from-ts-config-path-and-json-package-path.d.ts +1 -0
  115. package/dist/tools/mkdir-out-dir-project-from-ts-config-path-and-json-package-path.js +11 -0
  116. package/dist/tools/mkdir-out-dir-project-from-ts-config-path-and-json-package-path.js.map +1 -0
  117. package/dist/tools/resolve-package-json-path.d.ts +1 -0
  118. package/dist/tools/resolve-package-json-path.js +21 -0
  119. package/dist/tools/resolve-package-json-path.js.map +1 -0
  120. package/dist/tools/resolve-tsconfig-path-from-package-json-path.d.ts +1 -0
  121. package/dist/tools/resolve-tsconfig-path-from-package-json-path.js +14 -0
  122. package/dist/tools/resolve-tsconfig-path-from-package-json-path.js.map +1 -0
  123. package/dist/tools/ts-build-watch.d.ts +12 -0
  124. package/dist/tools/ts-build-watch.js +46 -0
  125. package/dist/tools/ts-build-watch.js.map +1 -0
  126. package/dist/tools/ts-build.d.ts +6 -0
  127. package/dist/tools/ts-build.js +37 -0
  128. package/dist/tools/ts-build.js.map +1 -0
  129. package/dist/tools/up-app.d.ts +2 -0
  130. package/dist/tools/up-app.js +10 -0
  131. package/dist/tools/up-app.js.map +1 -0
  132. package/dist/transport/DevServerJsonRpc.d.ts +2 -0
  133. package/dist/transport/DevServerJsonRpc.js +42 -0
  134. package/dist/transport/DevServerJsonRpc.js.map +1 -0
  135. package/dist/use-cases/CallbackWorkflowRunAsyncActivity.usecase.d.ts +14 -0
  136. package/dist/use-cases/CallbackWorkflowRunAsyncActivity.usecase.js +64 -0
  137. package/dist/use-cases/CallbackWorkflowRunAsyncActivity.usecase.js.map +1 -0
  138. package/dist/use-cases/CreateWorkflowRun.usecase.d.ts +14 -0
  139. package/dist/use-cases/CreateWorkflowRun.usecase.js +43 -0
  140. package/dist/use-cases/CreateWorkflowRun.usecase.js.map +1 -0
  141. package/dist/use-cases/CreateWorkflowRunAsyncActivity.usecase.d.ts +9 -0
  142. package/dist/use-cases/CreateWorkflowRunAsyncActivity.usecase.js +68 -0
  143. package/dist/use-cases/CreateWorkflowRunAsyncActivity.usecase.js.map +1 -0
  144. package/dist/use-cases/NextTickWorkflowRun.usecase.d.ts +20 -0
  145. package/dist/use-cases/NextTickWorkflowRun.usecase.js +151 -0
  146. package/dist/use-cases/NextTickWorkflowRun.usecase.js.map +1 -0
  147. package/dist/use-cases/TimeoutWorkflowRunAsyncActivity.usecase.d.ts +8 -0
  148. package/dist/use-cases/TimeoutWorkflowRunAsyncActivity.usecase.js +38 -0
  149. package/dist/use-cases/TimeoutWorkflowRunAsyncActivity.usecase.js.map +1 -0
  150. package/dist/use-cases/WorkflowRunAsyncActivity.usecase.d.ts +7 -0
  151. package/dist/use-cases/WorkflowRunAsyncActivity.usecase.js +44 -0
  152. package/dist/use-cases/WorkflowRunAsyncActivity.usecase.js.map +1 -0
  153. package/dist/use-cases/WorkflowRunAsyncActivityAdvance.usecase.d.ts +10 -0
  154. package/dist/use-cases/WorkflowRunAsyncActivityAdvance.usecase.js +57 -0
  155. package/dist/use-cases/WorkflowRunAsyncActivityAdvance.usecase.js.map +1 -0
  156. package/dist/use-cases/WorkflowRunBuildHistory.usecase.d.ts +8 -0
  157. package/dist/use-cases/WorkflowRunBuildHistory.usecase.js +41 -0
  158. package/dist/use-cases/WorkflowRunBuildHistory.usecase.js.map +1 -0
  159. package/dist/use-cases/WorkflowRunSyncActivity.usecase.d.ts +4 -0
  160. package/dist/use-cases/WorkflowRunSyncActivity.usecase.js +26 -0
  161. package/dist/use-cases/WorkflowRunSyncActivity.usecase.js.map +1 -0
  162. package/dist/workers/app-process.d.ts +3 -0
  163. package/dist/workers/app-process.js +42 -0
  164. package/dist/workers/app-process.js.map +1 -0
  165. package/package.json +78 -0
@@ -0,0 +1,61 @@
1
+ import { Ajv } from 'ajv';
2
+ import Type from 'typebox';
3
+ const ajv = new Ajv();
4
+ export class JSONRPCServerMethod {
5
+ name;
6
+ schema;
7
+ validate;
8
+ fn;
9
+ constructor(name, configOrFn, maybeFn) {
10
+ if (typeof configOrFn === 'function') {
11
+ this.name = name;
12
+ this.schema = [];
13
+ this.fn = configOrFn;
14
+ }
15
+ else if (typeof maybeFn === 'function') {
16
+ this.name = name;
17
+ this.schema = configOrFn.schema ?? [];
18
+ this.fn = maybeFn;
19
+ }
20
+ else
21
+ throw new Error('Invalid constructor arguments');
22
+ this.validate = this.schema.map(schema => ajv.compile(schema));
23
+ }
24
+ async call(params) {
25
+ if (!Array.isArray(params))
26
+ return this.call([params]);
27
+ const isValid = this.validate.every((validate, index) => validate(params[index]));
28
+ if (!isValid)
29
+ throw new Error('Invalid parameters');
30
+ return await this.fn(...params);
31
+ }
32
+ }
33
+ export class JSONRPCServer {
34
+ methods;
35
+ send;
36
+ constructor(methods, send) {
37
+ this.methods = methods;
38
+ this.send = send;
39
+ }
40
+ async handle(message) {
41
+ if (typeof message === 'string')
42
+ return this.handle(JSON.parse(message));
43
+ if (Buffer.isBuffer(message))
44
+ return this.handle(message.toString());
45
+ if (typeof message !== 'object')
46
+ return;
47
+ if (!message)
48
+ return;
49
+ if (!('method' in message))
50
+ return;
51
+ const method = this.methods.find(method => method.name === message.method);
52
+ if (!method)
53
+ throw new Error(`Method ${message.method} not found`);
54
+ const result = (await method.call(message.params)) ?? null;
55
+ await this.send(JSON.stringify({ jsonrpc: '2.0', id: message.id, result }));
56
+ }
57
+ async notify(method, ...params) {
58
+ await this.send(JSON.stringify({ jsonrpc: '2.0', method, params }));
59
+ }
60
+ }
61
+ //# sourceMappingURL=JSONRPCServer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JSONRPCServer.js","sourceRoot":"","sources":["../../src/models/JSONRPCServer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { Log } from '@t4h.framework/core';
2
+ import { WorkflowRunActivity } from './WorkflowRunActivity.js';
3
+ export type WorkflowRunStatus = 'running' | 'fulfilled' | 'rejected';
4
+ export declare class WorkflowRun {
5
+ id: string;
6
+ readonly workflow: string;
7
+ readonly input: unknown;
8
+ status: WorkflowRunStatus;
9
+ output?: unknown;
10
+ rejectedReason?: {
11
+ message: string;
12
+ stack?: string;
13
+ };
14
+ parent?: WorkflowRun;
15
+ parentActivity?: WorkflowRunActivity;
16
+ readonly logs: Log[];
17
+ constructor(workflow: string, input: unknown, id?: string);
18
+ }
@@ -0,0 +1,20 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { WorkflowRunActivity } from './WorkflowRunActivity.js';
3
+ export class WorkflowRun {
4
+ id;
5
+ workflow;
6
+ input;
7
+ status;
8
+ output;
9
+ rejectedReason;
10
+ parent;
11
+ parentActivity;
12
+ logs = [];
13
+ constructor(workflow, input, id = randomUUID()) {
14
+ this.id = id;
15
+ this.workflow = workflow;
16
+ this.input = input;
17
+ this.status = 'running';
18
+ }
19
+ }
20
+ //# sourceMappingURL=WorkflowRun.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkflowRun.js","sourceRoot":"","sources":["../../src/models/WorkflowRun.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAIxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAI9D,MAAM,OAAO,WAAW;IACf,EAAE,CAAQ;IACD,QAAQ,CAAQ;IAChB,KAAK,CAAS;IACvB,MAAM,CAAmB;IACzB,MAAM,CAAU;IAChB,cAAc,CAAsC;IACpD,MAAM,CAAc;IACpB,cAAc,CAAsB;IAC3B,IAAI,GAAU,EAAE,CAAA;IAEhC,YAAY,QAAgB,EAAE,KAAc,EAAE,KAAa,UAAU,EAAE;QACrE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;IACzB,CAAC;CACF"}
@@ -0,0 +1,40 @@
1
+ import { AsyncActivityResultPending, type ActivityConstructor, type AnyActivity } from '@t4h.framework/core';
2
+ import type Type from 'typebox';
3
+ import type { WorkflowRun } from './WorkflowRun.js';
4
+ export declare class WorkflowRunActivity {
5
+ readonly id: string;
6
+ readonly run: WorkflowRun;
7
+ readonly type: 'sync' | 'async';
8
+ readonly constructable: ActivityConstructor<AnyActivity>;
9
+ output?: unknown;
10
+ asyncActivity?: WorkflowRunAsyncActivity;
11
+ constructor(run: WorkflowRun, target: ActivityConstructor<AnyActivity>, id?: string);
12
+ }
13
+ export type AsyncActivityPendingStatus = 'pending' | 'fulfilled' | 'rejected';
14
+ export declare class WorkflowRunAsyncActivity {
15
+ readonly activity: WorkflowRunActivity;
16
+ status: AsyncActivityPendingStatus;
17
+ readonly pendingAsyncActivities: WorkflowRunAsyncActivityPending[];
18
+ get lastPendingAsyncActivity(): WorkflowRunAsyncActivityPending | undefined;
19
+ constructor(activity: WorkflowRunActivity);
20
+ }
21
+ interface WorkflowRunAsyncActivityPendingOptions {
22
+ schema?: Type.TSchema;
23
+ timeoutAt?: Date;
24
+ previous?: WorkflowRunAsyncActivityPending;
25
+ bootstrap: AsyncActivityResultPending;
26
+ status: AsyncActivityPendingStatus;
27
+ payload?: unknown;
28
+ }
29
+ export declare class WorkflowRunAsyncActivityPending {
30
+ readonly asyncActivity: WorkflowRunAsyncActivity;
31
+ readonly id: string;
32
+ schema?: Type.TSchema;
33
+ timeoutAt?: Date;
34
+ previous?: WorkflowRunAsyncActivityPending;
35
+ bootstrap: AsyncActivityResultPending;
36
+ status: AsyncActivityPendingStatus;
37
+ payload?: unknown;
38
+ constructor(asyncActivity: WorkflowRunAsyncActivity, options?: WorkflowRunAsyncActivityPendingOptions);
39
+ }
40
+ export {};
@@ -0,0 +1,52 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { AsyncActivityResultPending, SyncActivity, } from '@t4h.framework/core';
3
+ export class WorkflowRunActivity {
4
+ id;
5
+ run;
6
+ type;
7
+ constructable;
8
+ output;
9
+ asyncActivity;
10
+ constructor(run, target, id = randomUUID()) {
11
+ this.id = id;
12
+ this.run = run;
13
+ this.type = target.prototype instanceof SyncActivity ? 'sync' : 'async';
14
+ this.constructable = target;
15
+ if (this.type === 'async') {
16
+ this.asyncActivity = new WorkflowRunAsyncActivity(this);
17
+ }
18
+ }
19
+ }
20
+ export class WorkflowRunAsyncActivity {
21
+ activity;
22
+ status = 'pending';
23
+ pendingAsyncActivities = [];
24
+ get lastPendingAsyncActivity() {
25
+ return this.pendingAsyncActivities[this.pendingAsyncActivities.length - 1];
26
+ }
27
+ constructor(activity) {
28
+ this.activity = activity;
29
+ }
30
+ }
31
+ export class WorkflowRunAsyncActivityPending {
32
+ asyncActivity;
33
+ id = randomUUID();
34
+ schema;
35
+ timeoutAt;
36
+ previous;
37
+ bootstrap;
38
+ status = 'pending';
39
+ payload;
40
+ constructor(asyncActivity, options) {
41
+ this.asyncActivity = asyncActivity;
42
+ if (!options)
43
+ return;
44
+ this.schema = options.schema;
45
+ this.timeoutAt = options.timeoutAt;
46
+ this.previous = options.previous;
47
+ this.bootstrap = options.bootstrap;
48
+ this.status = options.status;
49
+ this.payload = options.payload;
50
+ }
51
+ }
52
+ //# sourceMappingURL=WorkflowRunActivity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkflowRunActivity.js","sourceRoot":"","sources":["../../src/models/WorkflowRunActivity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,OAAO,EACL,0BAA0B,EAC1B,YAAY,GAGb,MAAM,qBAAqB,CAAA;AAK5B,MAAM,OAAO,mBAAmB;IACd,EAAE,CAAQ;IACV,GAAG,CAAa;IAChB,IAAI,CAAkB;IACtB,aAAa,CAAkC;IACxD,MAAM,CAAU;IAChB,aAAa,CAA2B;IAE/C,YACE,GAAgB,EAChB,MAAwC,EACxC,KAAa,UAAU,EAAE;QAEzB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,SAAS,YAAY,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAA;QACvE,IAAI,CAAC,aAAa,GAAG,MAAM,CAAA;QAE3B,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,wBAAwB,CAAC,IAAI,CAAC,CAAA;QACzD,CAAC;IACH,CAAC;CACF;AAID,MAAM,OAAO,wBAAwB;IACnB,QAAQ,CAAsB;IACvC,MAAM,GAA+B,SAAS,CAAA;IACrC,sBAAsB,GAAsC,EAAE,CAAA;IAE9E,IAAW,wBAAwB;QACjC,OAAO,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAC5E,CAAC;IAED,YAAY,QAA6B;QACvC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;CACF;AAWD,MAAM,OAAO,+BAA+B;IAUxB;IATF,EAAE,GAAW,UAAU,EAAE,CAAA;IAClC,MAAM,CAAe;IACrB,SAAS,CAAO;IAChB,QAAQ,CAAkC;IAC1C,SAAS,CAA6B;IACtC,MAAM,GAA+B,SAAS,CAAA;IAC9C,OAAO,CAAU;IAExB,YACkB,aAAuC,EACvD,OAAgD;QADhC,kBAAa,GAAb,aAAa,CAA0B;QAGvD,IAAI,CAAC,OAAO;YAAE,OAAM;QAEpB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC5B,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;QAClC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;QAChC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;QAClC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;IAChC,CAAC;CACF"}
@@ -0,0 +1,6 @@
1
+ import { CacheClaim } from '@t4h.framework/cache';
2
+ import type { Serializable } from '@t4h.framework/core';
3
+ export declare class DevCacheClaim extends CacheClaim {
4
+ get<T extends Serializable>(key: string): T | undefined | Promise<T | undefined>;
5
+ set(key: string, value: Serializable): Promise<void>;
6
+ }
@@ -0,0 +1,12 @@
1
+ import { CacheClaim } from '@t4h.framework/cache';
2
+ const cache = new Map();
3
+ export class DevCacheClaim extends CacheClaim {
4
+ get(key) {
5
+ return cache.get(key);
6
+ }
7
+ set(key, value) {
8
+ cache.set(key, value);
9
+ return Promise.resolve();
10
+ }
11
+ }
12
+ //# sourceMappingURL=DevCacheClaim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DevCacheClaim.js","sourceRoot":"","sources":["../../../src/models/claims/DevCacheClaim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAGjD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAwB,CAAA;AAE7C,MAAM,OAAO,aAAc,SAAQ,UAAU;IACpC,GAAG,CACR,GAAW;QAEX,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAkB,CAAA;IACxC,CAAC;IAEM,GAAG,CAAC,GAAW,EAAE,KAAmB;QACzC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QAErB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { Readable } from 'node:stream';
2
+ import { FileSystemClaim } from '@t4h.framework/fs';
3
+ import { DevFileBinary } from '../DevFileBinary.js';
4
+ export declare class DevFileSystemClaim extends FileSystemClaim {
5
+ write(filepath: string, readable: Readable): Promise<DevFileBinary>;
6
+ read(filepath: string): Promise<DevFileBinary>;
7
+ }
@@ -0,0 +1,30 @@
1
+ import fs from 'node:fs';
2
+ import os from 'node:os';
3
+ import path from 'node:path';
4
+ import { Readable } from 'node:stream';
5
+ import { FileSystemClaim } from '@t4h.framework/fs';
6
+ import mime from 'mime-types';
7
+ import { DevFileBinary } from '../DevFileBinary.js';
8
+ export class DevFileSystemClaim extends FileSystemClaim {
9
+ async write(filepath, readable) {
10
+ const { base } = path.parse(filepath);
11
+ const tempDir = await fs.promises.mkdtemp(path.join(os.tmpdir(), 'fs-'));
12
+ const _filepath = path.join(tempDir, filepath);
13
+ await fs.promises.writeFile(_filepath, readable);
14
+ const stat = await fs.promises.stat(_filepath);
15
+ return DevFileBinary.from({
16
+ path: _filepath,
17
+ contentType: mime.lookup(base) || 'application/octet-stream',
18
+ contentLength: stat.size,
19
+ });
20
+ }
21
+ async read(filepath) {
22
+ const stat = await fs.promises.stat(filepath);
23
+ return DevFileBinary.from({
24
+ path: filepath,
25
+ contentType: mime.lookup(path.extname(filepath)) || 'application/octet-stream',
26
+ contentLength: stat.size,
27
+ });
28
+ }
29
+ }
30
+ //# sourceMappingURL=DevFileSystemClaim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DevFileSystemClaim.js","sourceRoot":"","sources":["../../../src/models/claims/DevFileSystemClaim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,IAAI,MAAM,YAAY,CAAA;AAE7B,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,MAAM,OAAO,kBAAmB,SAAQ,eAAe;IAC9C,KAAK,CAAC,KAAK,CAChB,QAAgB,EAChB,QAAkB;QAElB,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAErC,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC,CAAA;QAExE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAE9C,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAEhD,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAE9C,OAAO,aAAa,CAAC,IAAI,CAAC;YACxB,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,0BAA0B;YAC5D,aAAa,EAAE,IAAI,CAAC,IAAI;SACzB,CAAC,CAAA;IACJ,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,QAAgB;QAChC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAE7C,OAAO,aAAa,CAAC,IAAI,CAAC;YACxB,IAAI,EAAE,QAAQ;YACd,WAAW,EACT,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,0BAA0B;YACnE,aAAa,EAAE,IAAI,CAAC,IAAI;SACzB,CAAC,CAAA;IACJ,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { GetActivityUniqueIdentifierClaim } from '@t4h.framework/core';
2
+ import { RuntimeContextService } from '../../services/RuntimeContext.service.js';
3
+ export declare class DevGetActivityUniqueIdentifierClaim extends GetActivityUniqueIdentifierClaim {
4
+ private readonly context;
5
+ constructor(context: RuntimeContextService);
6
+ getActivityUniqueIdentifier(): string;
7
+ }
@@ -0,0 +1,31 @@
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 { GetActivityUniqueIdentifierClaim } from '@t4h.framework/core';
11
+ import { Inject, Injectable } from 'pleroma';
12
+ import { RuntimeContextService } from '../../services/RuntimeContext.service.js';
13
+ let DevGetActivityUniqueIdentifierClaim = class DevGetActivityUniqueIdentifierClaim extends GetActivityUniqueIdentifierClaim {
14
+ context;
15
+ constructor(context) {
16
+ super();
17
+ this.context = context;
18
+ }
19
+ getActivityUniqueIdentifier() {
20
+ const context = this.context.getContext();
21
+ if (!context)
22
+ throw new Error('Activity unique identifier requested outside of a workflow run');
23
+ return context.activityId;
24
+ }
25
+ };
26
+ DevGetActivityUniqueIdentifierClaim = __decorate([
27
+ Injectable(),
28
+ __param(0, Inject(() => RuntimeContextService))
29
+ ], DevGetActivityUniqueIdentifierClaim);
30
+ export { DevGetActivityUniqueIdentifierClaim };
31
+ //# sourceMappingURL=DevGetActivityUniqueIdentifierClaim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DevGetActivityUniqueIdentifierClaim.js","sourceRoot":"","sources":["../../../src/models/claims/DevGetActivityUniqueIdentifierClaim.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,qBAAqB,CAAA;AACtE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAA;AAGzE,IAAM,mCAAmC,GAAzC,MAAM,mCAAoC,SAAQ,gCAAgC;IAGpE;IAFnB,YAEmB,OAA8B;QAE/C,KAAK,EAAE,CAAA;QAFU,YAAO,GAAP,OAAO,CAAuB;IAGjD,CAAC;IAEM,2BAA2B;QAChC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAA;QAEzC,IAAI,CAAC,OAAO;YACV,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAA;QAEH,OAAO,OAAO,CAAC,UAAU,CAAA;IAC3B,CAAC;CACF,CAAA;AAlBY,mCAAmC;IAD/C,UAAU,EAAE;IAGR,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAA;GAF3B,mCAAmC,CAkB/C"}
@@ -0,0 +1,6 @@
1
+ import { GetProjectUniqueIdentifierClaim } from '@t4h.framework/runtime-claims';
2
+ export declare class DevGetProjectUniqueIdentifierClaim extends GetProjectUniqueIdentifierClaim {
3
+ private readonly id;
4
+ constructor(id?: string);
5
+ getProjectUniqueIdentifier(): string;
6
+ }
@@ -0,0 +1,13 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { GetProjectUniqueIdentifierClaim } from '@t4h.framework/runtime-claims';
3
+ export class DevGetProjectUniqueIdentifierClaim extends GetProjectUniqueIdentifierClaim {
4
+ id;
5
+ constructor(id = randomUUID()) {
6
+ super();
7
+ this.id = id;
8
+ }
9
+ getProjectUniqueIdentifier() {
10
+ return this.id;
11
+ }
12
+ }
13
+ //# sourceMappingURL=DevGetProjectUniqueIdentifierClaim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DevGetProjectUniqueIdentifierClaim.js","sourceRoot":"","sources":["../../../src/models/claims/DevGetProjectUniqueIdentifierClaim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAA;AAE/E,MAAM,OAAO,kCAAmC,SAAQ,+BAA+B;IACxD;IAA7B,YAA6B,KAAa,UAAU,EAAE;QACpD,KAAK,EAAE,CAAA;QADoB,OAAE,GAAF,EAAE,CAAuB;IAEtD,CAAC;IAEM,0BAA0B;QAC/B,OAAO,IAAI,CAAC,EAAE,CAAA;IAChB,CAAC;CACF"}
@@ -0,0 +1,6 @@
1
+ import { GetProjectVersionUniqueIdentifierClaim } from '@t4h.framework/runtime-claims';
2
+ export declare class DevGetProjectVersionUniqueIdentifierClaim extends GetProjectVersionUniqueIdentifierClaim {
3
+ private readonly id;
4
+ constructor(id?: string);
5
+ getProjectVersionUniqueIdentifier(): string;
6
+ }
@@ -0,0 +1,13 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { GetProjectVersionUniqueIdentifierClaim } from '@t4h.framework/runtime-claims';
3
+ export class DevGetProjectVersionUniqueIdentifierClaim extends GetProjectVersionUniqueIdentifierClaim {
4
+ id;
5
+ constructor(id = randomUUID()) {
6
+ super();
7
+ this.id = id;
8
+ }
9
+ getProjectVersionUniqueIdentifier() {
10
+ return this.id;
11
+ }
12
+ }
13
+ //# sourceMappingURL=DevGetProjectVersionUniqueIdentifierClaim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DevGetProjectVersionUniqueIdentifierClaim.js","sourceRoot":"","sources":["../../../src/models/claims/DevGetProjectVersionUniqueIdentifierClaim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,OAAO,EAAE,sCAAsC,EAAE,MAAM,+BAA+B,CAAA;AAEtF,MAAM,OAAO,yCAA0C,SAAQ,sCAAsC;IACtE;IAA7B,YAA6B,KAAa,UAAU,EAAE;QACpD,KAAK,EAAE,CAAA;QADoB,OAAE,GAAF,EAAE,CAAuB;IAEtD,CAAC;IAEM,iCAAiC;QACtC,OAAO,IAAI,CAAC,EAAE,CAAA;IAChB,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { GetProjectVersionWorkflowUniqueIdentifierClaim } from '@t4h.framework/runtime-claims';
2
+ import { RuntimeContextService } from '../../services/RuntimeContext.service.js';
3
+ export declare class DevGetProjectVersionWorkflowUniqueIdentifierClaim extends GetProjectVersionWorkflowUniqueIdentifierClaim {
4
+ private readonly context;
5
+ constructor(context: RuntimeContextService);
6
+ getProjectVersionWorkflowUniqueIdentifier(): string | null;
7
+ }
@@ -0,0 +1,31 @@
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 { GetProjectVersionWorkflowUniqueIdentifierClaim } from '@t4h.framework/runtime-claims';
11
+ import { Inject, Injectable } from 'pleroma';
12
+ import { RuntimeContextService } from '../../services/RuntimeContext.service.js';
13
+ let DevGetProjectVersionWorkflowUniqueIdentifierClaim = class DevGetProjectVersionWorkflowUniqueIdentifierClaim extends GetProjectVersionWorkflowUniqueIdentifierClaim {
14
+ context;
15
+ constructor(context) {
16
+ super();
17
+ this.context = context;
18
+ }
19
+ getProjectVersionWorkflowUniqueIdentifier() {
20
+ const context = this.context.getContext();
21
+ if (!context)
22
+ throw new Error('Project version workflow unique identifier requested outside of a workflow run');
23
+ return context.runId;
24
+ }
25
+ };
26
+ DevGetProjectVersionWorkflowUniqueIdentifierClaim = __decorate([
27
+ Injectable(),
28
+ __param(0, Inject(() => RuntimeContextService))
29
+ ], DevGetProjectVersionWorkflowUniqueIdentifierClaim);
30
+ export { DevGetProjectVersionWorkflowUniqueIdentifierClaim };
31
+ //# sourceMappingURL=DevGetProjectVersionWorkflowUniqueIdentifierClaim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DevGetProjectVersionWorkflowUniqueIdentifierClaim.js","sourceRoot":"","sources":["../../../src/models/claims/DevGetProjectVersionWorkflowUniqueIdentifierClaim.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,8CAA8C,EAAE,MAAM,+BAA+B,CAAA;AAC9F,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAA;AAGzE,IAAM,iDAAiD,GAAvD,MAAM,iDAAkD,SAAQ,8CAA8C;IAGhG;IAFnB,YAEmB,OAA8B;QAE/C,KAAK,EAAE,CAAA;QAFU,YAAO,GAAP,OAAO,CAAuB;IAGjD,CAAC;IAEM,yCAAyC;QAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAA;QAEzC,IAAI,CAAC,OAAO;YACV,MAAM,IAAI,KAAK,CACb,gFAAgF,CACjF,CAAA;QAEH,OAAO,OAAO,CAAC,KAAK,CAAA;IACtB,CAAC;CACF,CAAA;AAlBY,iDAAiD;IAD7D,UAAU,EAAE;IAGR,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAA;GAF3B,iDAAiD,CAkB7D"}
@@ -0,0 +1,7 @@
1
+ import { GetWorkflowUniqueIdentifierClaim } from '@t4h.framework/core';
2
+ import { RuntimeContextService } from '../../services/RuntimeContext.service.js';
3
+ export declare class DevGetWorkflowUniqueIdentifierClaim extends GetWorkflowUniqueIdentifierClaim {
4
+ private readonly context;
5
+ constructor(context: RuntimeContextService);
6
+ getWorkflowUniqueIdentifier(): string;
7
+ }
@@ -0,0 +1,31 @@
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 { GetWorkflowUniqueIdentifierClaim } from '@t4h.framework/core';
11
+ import { Inject, Injectable } from 'pleroma';
12
+ import { RuntimeContextService } from '../../services/RuntimeContext.service.js';
13
+ let DevGetWorkflowUniqueIdentifierClaim = class DevGetWorkflowUniqueIdentifierClaim extends GetWorkflowUniqueIdentifierClaim {
14
+ context;
15
+ constructor(context) {
16
+ super();
17
+ this.context = context;
18
+ }
19
+ getWorkflowUniqueIdentifier() {
20
+ const context = this.context.getContext();
21
+ if (!context)
22
+ throw new Error('Project version workflow unique identifier requested outside of a workflow run');
23
+ return context.workflowId;
24
+ }
25
+ };
26
+ DevGetWorkflowUniqueIdentifierClaim = __decorate([
27
+ Injectable(),
28
+ __param(0, Inject(() => RuntimeContextService))
29
+ ], DevGetWorkflowUniqueIdentifierClaim);
30
+ export { DevGetWorkflowUniqueIdentifierClaim };
31
+ //# sourceMappingURL=DevGetWorkflowUniqueIdentifierClaim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DevGetWorkflowUniqueIdentifierClaim.js","sourceRoot":"","sources":["../../../src/models/claims/DevGetWorkflowUniqueIdentifierClaim.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,qBAAqB,CAAA;AACtE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAA;AAGzE,IAAM,mCAAmC,GAAzC,MAAM,mCAAoC,SAAQ,gCAAgC;IAGpE;IAFnB,YAEmB,OAA8B;QAE/C,KAAK,EAAE,CAAA;QAFU,YAAO,GAAP,OAAO,CAAuB;IAGjD,CAAC;IAEM,2BAA2B;QAChC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAA;QAEzC,IAAI,CAAC,OAAO;YACV,MAAM,IAAI,KAAK,CACb,gFAAgF,CACjF,CAAA;QAEH,OAAO,OAAO,CAAC,UAAU,CAAA;IAC3B,CAAC;CACF,CAAA;AAlBY,mCAAmC;IAD/C,UAAU,EAAE;IAGR,WAAA,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAA;GAF3B,mCAAmC,CAkB/C"}
@@ -0,0 +1,5 @@
1
+ import { HttpClientRequestClaim, type HttpClientRequestClaimInput, type HttpClientRequestClaimOutput } from '@t4h.framework/http';
2
+ export declare class DevHttpClientRequestClaim extends HttpClientRequestClaim {
3
+ request(input: HttpClientRequestClaimInput): Promise<HttpClientRequestClaimOutput>;
4
+ private toUndiciFormData;
5
+ }
@@ -0,0 +1,39 @@
1
+ import { HttpClientRequestClaim, } from '@t4h.framework/http';
2
+ import { Agent, request, interceptors, FormData } from 'undici';
3
+ function isFormData(value) {
4
+ return (value?.[Symbol.toStringTag] === 'FormData' &&
5
+ typeof value?.entries === 'function');
6
+ }
7
+ export class DevHttpClientRequestClaim extends HttpClientRequestClaim {
8
+ async request(input) {
9
+ if (input.body instanceof URLSearchParams)
10
+ input.body = Buffer.from(input.body.toString());
11
+ if (isFormData(input.body))
12
+ Object.assign(input, {
13
+ body: this.toUndiciFormData(input.body),
14
+ });
15
+ const response = await request(input.url, {
16
+ method: input.method,
17
+ body: input.body,
18
+ headers: input.headers,
19
+ dispatcher: new Agent().compose(interceptors.redirect({ maxRedirections: 5 })),
20
+ });
21
+ const res = {
22
+ status: response.statusCode,
23
+ headers: response.headers,
24
+ body: response.body,
25
+ };
26
+ return res;
27
+ }
28
+ toUndiciFormData(webFormData) {
29
+ const formData = new FormData();
30
+ for (const [key, value] of webFormData.entries()) {
31
+ if (value instanceof File)
32
+ formData.append(key, value, value.name);
33
+ else
34
+ formData.append(key, value);
35
+ }
36
+ return formData;
37
+ }
38
+ }
39
+ //# sourceMappingURL=DevHttpClientRequestClaim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DevHttpClientRequestClaim.js","sourceRoot":"","sources":["../../../src/models/claims/DevHttpClientRequestClaim.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,GAGvB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAE/D,SAAS,UAAU,CAAC,KAAU;IAC5B,OAAO,CACL,KAAK,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,UAAU;QAC1C,OAAO,KAAK,EAAE,OAAO,KAAK,UAAU,CACrC,CAAA;AACH,CAAC;AAED,MAAM,OAAO,yBAA0B,SAAQ,sBAAsB;IAC5D,KAAK,CAAC,OAAO,CAClB,KAAkC;QAElC,IAAI,KAAK,CAAC,IAAI,YAAY,eAAe;YACvC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QAEjD,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;YACxB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;gBACnB,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC;aACxC,CAAC,CAAA;QAEJ,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;YACxC,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,UAAU,EAAE,IAAI,KAAK,EAAE,CAAC,OAAO,CAC7B,YAAY,CAAC,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC,CAC9C;SACF,CAAC,CAAA;QAEF,MAAM,GAAG,GAAG;YACV,MAAM,EAAE,QAAQ,CAAC,UAAU;YAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;SACpB,CAAA;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;IAEO,gBAAgB,CAAC,WAAgC;QACvD,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAA;QAE/B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YACjD,IAAI,KAAK,YAAY,IAAI;gBAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;;gBAC7D,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QAClC,CAAC;QAED,OAAO,QAAQ,CAAA;IACjB,CAAC;CACF"}
@@ -0,0 +1,8 @@
1
+ import { ORMClaim, type SerializableCreateInput, type SerializableFindInput, type SerializableGetSnapshotInput, type SerializableRemoveInput, type SerializableUpdateInput, type SerializedRow } from '@t4h.framework/orm';
2
+ export declare class DevORMClaim extends ORMClaim<string> {
3
+ find(input: SerializableFindInput): string[];
4
+ create(input: SerializableCreateInput): string[];
5
+ getSnapshot(input: SerializableGetSnapshotInput<string>): SerializedRow | null;
6
+ update(input: SerializableUpdateInput<string>): void;
7
+ remove(input: SerializableRemoveInput<string>): void;
8
+ }
@@ -0,0 +1,39 @@
1
+ import fs from 'node:fs';
2
+ import path from 'node:path';
3
+ import { ORMClaim, } from '@t4h.framework/orm';
4
+ import { jsonCodec } from '../../tools/json-codec.js';
5
+ import { InMemoryDatabase } from '../InMemoryDatabase.js';
6
+ const dbPath = path.join(process.cwd(), 'db.json');
7
+ const initial = fs.existsSync(dbPath) ? fs.readFileSync(dbPath, 'utf8') : '{}';
8
+ const json = await jsonCodec.parse(initial, {});
9
+ const db = new InMemoryDatabase(json);
10
+ db.on('change', async () => {
11
+ fs.writeFileSync(dbPath, await jsonCodec.stringify(db.toJSON(), {}));
12
+ });
13
+ export class DevORMClaim extends ORMClaim {
14
+ find(input) {
15
+ return db
16
+ .table(input.table)
17
+ .find(input)
18
+ .map(row => row.id);
19
+ }
20
+ create(input) {
21
+ return db.table(input.table).insert(input.data);
22
+ }
23
+ getSnapshot(input) {
24
+ const [row] = db.table(input.table).find({
25
+ where: { id: input.ref },
26
+ limit: 1,
27
+ });
28
+ if (!row)
29
+ return null;
30
+ return row;
31
+ }
32
+ update(input) {
33
+ db.table(input.table).update({ id: input.ref }, input.data);
34
+ }
35
+ remove(input) {
36
+ db.table(input.table).delete({ id: input.ref });
37
+ }
38
+ }
39
+ //# sourceMappingURL=DevORMClaim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DevORMClaim.js","sourceRoot":"","sources":["../../../src/models/claims/DevORMClaim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EACL,QAAQ,GAOT,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAEzD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAA;AAElD,MAAM,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AAE9E,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;AAE/C,MAAM,EAAE,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAA;AAErC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;IACzB,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;AACtE,CAAC,CAAC,CAAA;AAEF,MAAM,OAAO,WAAY,SAAQ,QAAgB;IACxC,IAAI,CAAC,KAA4B;QACtC,OAAO,EAAE;aACN,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;aAClB,IAAI,CAAC,KAAK,CAAC;aACX,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACvB,CAAC;IAEM,MAAM,CAAC,KAA8B;QAC1C,OAAO,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACjD,CAAC;IAEM,WAAW,CAChB,KAA2C;QAE3C,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;YACvC,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE;YACxB,KAAK,EAAE,CAAC;SACT,CAAC,CAAA;QAEF,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAA;QAErB,OAAO,GAAG,CAAA;IACZ,CAAC;IAEM,MAAM,CAAC,KAAsC;QAClD,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;IAC7D,CAAC;IAEM,MAAM,CAAC,KAAsC;QAClD,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;IACjD,CAAC;CACF"}
@@ -0,0 +1,20 @@
1
+ import { SftpClaim, type SftpAppendActivityInput, type SftpChmodActivityInput, type SftpCopyActivityInput, type SftpCwdActivityInput, type SftpDeleteActivityInput, type SftpDownloadDirActivityInput, type SftpExistsActivityInput, type SftpExistsResult, type SftpFileInfo, type SftpGetActivityInput, type SftpListActivityInput, type SftpMkdirActivityInput, type SftpPutActivityInput, type SftpRealPathActivityInput, type SftpRenameActivityInput, type SftpRmdirActivityInput, type SftpStat, type SftpStatActivityInput } from '@t4h.framework/sftp';
2
+ import { DevFileBinary } from '../DevFileBinary.js';
3
+ export declare class DevSftpClaim extends SftpClaim {
4
+ private withClient;
5
+ append(input: SftpAppendActivityInput): Promise<void>;
6
+ chmod(input: SftpChmodActivityInput): Promise<void>;
7
+ cwd(input: SftpCwdActivityInput): Promise<string>;
8
+ delete(input: SftpDeleteActivityInput): Promise<void>;
9
+ downloadDir(input: SftpDownloadDirActivityInput): Promise<DevFileBinary>;
10
+ exists(input: SftpExistsActivityInput): Promise<SftpExistsResult>;
11
+ get(input: SftpGetActivityInput): Promise<DevFileBinary>;
12
+ list(input: SftpListActivityInput): Promise<SftpFileInfo[]>;
13
+ mkdir(input: SftpMkdirActivityInput): Promise<void>;
14
+ put(input: SftpPutActivityInput): Promise<void>;
15
+ copy(input: SftpCopyActivityInput): Promise<void>;
16
+ realPath(input: SftpRealPathActivityInput): Promise<string>;
17
+ rename(input: SftpRenameActivityInput): Promise<void>;
18
+ rmdir(input: SftpRmdirActivityInput): Promise<void>;
19
+ stat(input: SftpStatActivityInput): Promise<SftpStat>;
20
+ }