@acmekit/workflows-sdk 2.13.37 → 2.13.38

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 (40) hide show
  1. package/dist/helper/type.d.ts +5 -0
  2. package/dist/helper/type.d.ts.map +1 -1
  3. package/dist/helper/workflow-export.d.ts +4 -1
  4. package/dist/helper/workflow-export.d.ts.map +1 -1
  5. package/dist/helper/workflow-export.js +44 -5
  6. package/dist/helper/workflow-export.js.map +1 -1
  7. package/dist/tsconfig.tsbuildinfo +1 -1
  8. package/dist/utils/composer/create-step.d.ts +14 -21
  9. package/dist/utils/composer/create-step.d.ts.map +1 -1
  10. package/dist/utils/composer/create-step.js +16 -70
  11. package/dist/utils/composer/create-step.js.map +1 -1
  12. package/dist/utils/composer/create-workflow.d.ts +17 -13
  13. package/dist/utils/composer/create-workflow.d.ts.map +1 -1
  14. package/dist/utils/composer/create-workflow.js +12 -65
  15. package/dist/utils/composer/create-workflow.js.map +1 -1
  16. package/dist/utils/composer/helpers/create-step-handler.d.ts +1 -1
  17. package/dist/utils/composer/helpers/create-step-handler.d.ts.map +1 -1
  18. package/dist/utils/composer/helpers/create-step-handler.js +97 -51
  19. package/dist/utils/composer/helpers/create-step-handler.js.map +1 -1
  20. package/dist/utils/composer/index.d.ts +4 -0
  21. package/dist/utils/composer/index.d.ts.map +1 -1
  22. package/dist/utils/composer/index.js +7 -0
  23. package/dist/utils/composer/index.js.map +1 -1
  24. package/dist/utils/composer/metadata.d.ts +37 -0
  25. package/dist/utils/composer/metadata.d.ts.map +1 -0
  26. package/dist/utils/composer/metadata.js +134 -0
  27. package/dist/utils/composer/metadata.js.map +1 -0
  28. package/dist/utils/composer/query.d.ts +38 -0
  29. package/dist/utils/composer/query.d.ts.map +1 -0
  30. package/dist/utils/composer/query.js +55 -0
  31. package/dist/utils/composer/query.js.map +1 -0
  32. package/dist/utils/composer/signal.d.ts +42 -0
  33. package/dist/utils/composer/signal.d.ts.map +1 -0
  34. package/dist/utils/composer/signal.js +117 -0
  35. package/dist/utils/composer/signal.js.map +1 -0
  36. package/dist/utils/composer/type.d.ts +35 -3
  37. package/dist/utils/composer/type.d.ts.map +1 -1
  38. package/dist/utils/composer/type.js +12 -0
  39. package/dist/utils/composer/type.js.map +1 -1
  40. package/package.json +6 -6
@@ -7,6 +7,11 @@ type BaseFlowRunOptions = {
7
7
  logOnError?: boolean;
8
8
  events?: DistributedTransactionEvents;
9
9
  container?: LoadedModule[] | AcmeKitContainer;
10
+ /**
11
+ * Initial metadata to attach to the workflow execution.
12
+ * Accessible inside steps via the `metadata` import or `context.metadata`.
13
+ */
14
+ metadata?: Record<string, unknown>;
10
15
  };
11
16
  export type FlowRunOptions<TData = unknown> = BaseFlowRunOptions & {
12
17
  input?: TData;
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/helper/type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/helper/type.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,9 @@
1
+ import type { QueryRegistration, SchemaLike } from "../utils/composer/type";
1
2
  import { MainExportedWorkflow } from "./type";
2
3
  export declare const exportWorkflow: <TData = unknown, TResult = unknown>(workflowId: string, defaultResult?: string | Symbol, options?: {
3
4
  wrappedInput?: boolean;
4
5
  sourcePath?: string;
5
- }) => MainExportedWorkflow<TData, TResult>;
6
+ inputSchema?: SchemaLike<any>;
7
+ outputSchema?: SchemaLike<any>;
8
+ }, queryRegistrations?: QueryRegistration[]) => MainExportedWorkflow<TData, TResult>;
6
9
  //# sourceMappingURL=workflow-export.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-export.d.ts","sourceRoot":"","sources":["../../src/helper/workflow-export.ts"],"names":[],"mappings":"AAyBA,OAAO,EAOL,oBAAoB,EAErB,MAAM,QAAQ,CAAA;AA0Xf,eAAO,MAAM,cAAc,GAAI,KAAK,GAAG,OAAO,EAAE,OAAO,GAAG,OAAO,EAC/D,YAAY,MAAM,EAClB,gBAAgB,MAAM,GAAG,MAAM,EAC/B,UAAU;IACR,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,KACA,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAwKrC,CAAA"}
1
+ {"version":3,"file":"workflow-export.d.ts","sourceRoot":"","sources":["../../src/helper/workflow-export.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAE3E,OAAO,EAOL,oBAAoB,EAErB,MAAM,QAAQ,CAAA;AAsbf,eAAO,MAAM,cAAc,GAAI,KAAK,GAAG,OAAO,EAAE,OAAO,GAAG,OAAO,EAC/D,YAAY,MAAM,EAClB,gBAAgB,MAAM,GAAG,MAAM,EAC/B,UAAU;IACR,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,CAAA;IAC7B,YAAY,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,CAAA;CAC/B,EACD,qBAAqB,iBAAiB,EAAE,KACvC,oBAAoB,CAAC,KAAK,EAAE,OAAO,CA0KrC,CAAA"}
@@ -8,6 +8,7 @@ const os_1 = require("os");
8
8
  const ulid_1 = require("ulid");
9
9
  const acmekit_workflow_1 = require("../acmekit-workflow");
10
10
  const resolve_value_1 = require("../utils/composer/helpers/resolve-value");
11
+ const type_1 = require("../utils/composer/type");
11
12
  // Cache for loaded modules to avoid repeated traversal
12
13
  let cachedLoadedModules = null;
13
14
  function getCachedLoadedModules() {
@@ -16,14 +17,14 @@ function getCachedLoadedModules() {
16
17
  }
17
18
  return cachedLoadedModules;
18
19
  }
19
- function createContextualWorkflowRunner({ workflowId, defaultResult, options, container, }) {
20
+ function createContextualWorkflowRunner({ workflowId, defaultResult, options, container, queryRegistrations, }) {
20
21
  const flow = new orchestration_1.LocalWorkflow(workflowId, container);
21
22
  const originalRun = flow.run.bind(flow);
22
23
  const originalRegisterStepSuccess = flow.registerStepSuccess.bind(flow);
23
24
  const originalRegisterStepFailure = flow.registerStepFailure.bind(flow);
24
25
  const originalCancel = flow.cancel.bind(flow);
25
26
  const originalRetryStep = flow.retryStep.bind(flow);
26
- const originalExecution = async (method, { throwOnError, logOnError = false, resultFrom, isCancel = false, container: executionContainer, forcePermanentFailure, }, transactionOrIdOrIdempotencyKey, input, context, events = {}) => {
27
+ const originalExecution = async (method, { throwOnError, logOnError = false, resultFrom, isCancel = false, container: executionContainer, forcePermanentFailure, customMetadata, }, transactionOrIdOrIdempotencyKey, input, context, events = {}) => {
27
28
  if (!executionContainer) {
28
29
  const container_ = flow.container;
29
30
  if (!container_ || !(0, utils_1.isPresent)(container_?.registrations)) {
@@ -43,6 +44,7 @@ function createContextualWorkflowRunner({ workflowId, defaultResult, options, co
43
44
  sourcePath: options?.sourcePath,
44
45
  preventReleaseEvents,
45
46
  cancelingFromParentStep,
47
+ customMetadata,
46
48
  };
47
49
  context.isCancelling = isCancel;
48
50
  const args = [transactionOrIdOrIdempotencyKey, input, context, events];
@@ -94,7 +96,7 @@ function createContextualWorkflowRunner({ workflowId, defaultResult, options, co
94
96
  thrownError,
95
97
  };
96
98
  };
97
- const newRun = async ({ input, context: outerContext, throwOnError, logOnError, resultFrom, events, container, } = {}) => {
99
+ const newRun = async ({ input, metadata: initialMetadata, context: outerContext, throwOnError, logOnError, resultFrom, events, container, } = {}) => {
98
100
  resultFrom ??= defaultResult;
99
101
  throwOnError ??= true;
100
102
  logOnError ??= false;
@@ -105,12 +107,47 @@ function createContextualWorkflowRunner({ workflowId, defaultResult, options, co
105
107
  const uniqId = (0, ulid_1.ulid)();
106
108
  context.transactionId ??= "auto-" + uniqId;
107
109
  context.eventGroupId ??= uniqId;
108
- return await originalExecution(originalRun, {
110
+ if (options?.inputSchema && input !== undefined) {
111
+ try {
112
+ input = (0, type_1.runSchema)(options.inputSchema, input);
113
+ }
114
+ catch (e) {
115
+ const err = e instanceof Error ? e : new Error(String(e));
116
+ err.message = `Workflow "${workflowId}" input validation failed: ${err.message}`;
117
+ throw err;
118
+ }
119
+ }
120
+ // Register query handlers in the WorkflowManager query index
121
+ if (queryRegistrations?.length && input) {
122
+ for (const reg of queryRegistrations) {
123
+ if (reg.keyFn) {
124
+ const keyValue = reg.keyFn(input);
125
+ orchestration_1.WorkflowManager.registerQueryIndex(workflowId, reg.name, keyValue, context.transactionId, reg.handler);
126
+ }
127
+ }
128
+ }
129
+ const executionResult = await originalExecution(originalRun, {
109
130
  throwOnError,
110
131
  resultFrom,
111
132
  container,
112
133
  logOnError,
134
+ customMetadata: initialMetadata,
113
135
  }, context.transactionId, input, context, events);
136
+ if (options?.outputSchema && executionResult.result !== undefined) {
137
+ try {
138
+ executionResult.result = (0, type_1.runSchema)(options.outputSchema, executionResult.result);
139
+ }
140
+ catch (e) {
141
+ const err = e instanceof Error ? e : new Error(String(e));
142
+ err.message = `Workflow "${workflowId}" output validation failed: ${err.message}`;
143
+ if (throwOnError) {
144
+ throw err;
145
+ }
146
+ executionResult.errors ??= [];
147
+ executionResult.errors.push(new orchestration_1.TransactionStepError(workflowId, utils_1.TransactionHandlerType.INVOKE, err));
148
+ }
149
+ }
150
+ return executionResult;
114
151
  };
115
152
  flow.run = newRun;
116
153
  const newRegisterStepSuccess = async ({ response, idempotencyKey, context: outerContext, throwOnError, logOnError, resultFrom, events, container, } = {
@@ -198,7 +235,7 @@ function createContextualWorkflowRunner({ workflowId, defaultResult, options, co
198
235
  flow.cancel = newCancel;
199
236
  return flow;
200
237
  }
201
- const exportWorkflow = (workflowId, defaultResult, options) => {
238
+ const exportWorkflow = (workflowId, defaultResult, options, queryRegistrations) => {
202
239
  function exportedWorkflow(
203
240
  // TODO: rm when all usage have been migrated
204
241
  container) {
@@ -207,6 +244,7 @@ const exportWorkflow = (workflowId, defaultResult, options) => {
207
244
  defaultResult,
208
245
  options,
209
246
  container,
247
+ queryRegistrations,
210
248
  });
211
249
  }
212
250
  const buildRunnerFn = (action, container) => {
@@ -215,6 +253,7 @@ const exportWorkflow = (workflowId, defaultResult, options) => {
215
253
  defaultResult,
216
254
  options,
217
255
  container,
256
+ queryRegistrations,
218
257
  });
219
258
  return contextualRunner[action];
220
259
  };
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-export.js","sourceRoot":"","sources":["../../src/helper/workflow-export.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-export.js","sourceRoot":"","sources":["../../src/helper/workflow-export.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"root":["../src/acmekit-workflow.ts","../src/index.ts","../src/helper/index.ts","../src/helper/type.ts","../src/helper/workflow-export.ts","../src/utils/_playground.ts","../src/utils/composer/create-hook.ts","../src/utils/composer/create-step.ts","../src/utils/composer/create-workflow.ts","../src/utils/composer/index.ts","../src/utils/composer/parallelize.ts","../src/utils/composer/transform.ts","../src/utils/composer/type.ts","../src/utils/composer/when.ts","../src/utils/composer/__tests__/compose.spec.ts","../src/utils/composer/__tests__/index.spec.ts","../src/utils/composer/helpers/create-step-handler.ts","../src/utils/composer/helpers/index.ts","../src/utils/composer/helpers/proxy.ts","../src/utils/composer/helpers/resolve-value.ts","../src/utils/composer/helpers/step-response.ts","../src/utils/composer/helpers/workflow-response.ts"],"version":"5.9.3"}
1
+ {"root":["../src/acmekit-workflow.ts","../src/index.ts","../src/helper/index.ts","../src/helper/type.ts","../src/helper/workflow-export.ts","../src/utils/_playground.ts","../src/utils/composer/create-hook.ts","../src/utils/composer/create-step.ts","../src/utils/composer/create-workflow.ts","../src/utils/composer/index.ts","../src/utils/composer/metadata.ts","../src/utils/composer/parallelize.ts","../src/utils/composer/query.ts","../src/utils/composer/signal.ts","../src/utils/composer/transform.ts","../src/utils/composer/type.ts","../src/utils/composer/when.ts","../src/utils/composer/__tests__/compose.spec.ts","../src/utils/composer/__tests__/index.spec.ts","../src/utils/composer/__tests__/schema-validation.spec.ts","../src/utils/composer/helpers/create-step-handler.ts","../src/utils/composer/helpers/index.ts","../src/utils/composer/helpers/proxy.ts","../src/utils/composer/helpers/resolve-value.ts","../src/utils/composer/helpers/step-response.ts","../src/utils/composer/helpers/workflow-response.ts"],"version":"5.9.3"}
@@ -1,6 +1,6 @@
1
1
  import { TransactionStepsDefinition, WorkflowStepHandler } from "@acmekit/orchestration";
2
2
  import { StepResponse } from "./helpers";
3
- import { StepExecutionContext, StepFunction, StepFunctionResult, WorkflowData } from "./type";
3
+ import { InferSchemaOutput, SchemaLike, StepExecutionContext, StepFunction, StepFunctionResult, WorkflowData } from "./type";
4
4
  /**
5
5
  * The type of invocation function passed to a step.
6
6
  *
@@ -39,6 +39,11 @@ context: StepExecutionContext) => unknown | Promise<unknown>;
39
39
  export type LocalStepConfig = {
40
40
  name?: string;
41
41
  } & Omit<TransactionStepsDefinition, "next" | "uuid" | "action">;
42
+ export type StepSchemaConfig<TInputSchema extends SchemaLike<any> | undefined = undefined, TOutputSchema extends SchemaLike<any> | undefined = undefined> = {
43
+ name: string;
44
+ inputSchema?: TInputSchema;
45
+ outputSchema?: TOutputSchema;
46
+ } & Omit<TransactionStepsDefinition, "next" | "uuid" | "action">;
42
47
  export interface ApplyStepOptions<TStepInputs extends {
43
48
  [K in keyof TInvokeInput]: WorkflowData<TInvokeInput[K]>;
44
49
  }, TInvokeInput, TInvokeResultOutput, TInvokeResultCompensateInput> {
@@ -47,10 +52,12 @@ export interface ApplyStepOptions<TStepInputs extends {
47
52
  input?: TStepInputs;
48
53
  invokeFn: InvokeFn<TInvokeInput, TInvokeResultOutput, TInvokeResultCompensateInput>;
49
54
  compensateFn?: CompensateFn<TInvokeResultCompensateInput>;
55
+ inputSchema?: SchemaLike<any>;
56
+ outputSchema?: SchemaLike<any>;
50
57
  }
51
58
  export declare function applyStep<TInvokeInput, TStepInput extends {
52
59
  [K in keyof TInvokeInput]: WorkflowData<TInvokeInput[K]>;
53
- }, TInvokeResultOutput, TInvokeResultCompensateInput>({ stepName, stepConfig, input, invokeFn, compensateFn, }: ApplyStepOptions<TStepInput, TInvokeInput, TInvokeResultOutput, TInvokeResultCompensateInput>): StepFunctionResult<TInvokeResultOutput>;
60
+ }, TInvokeResultOutput, TInvokeResultCompensateInput>({ stepName, stepConfig, input, invokeFn, compensateFn, inputSchema, outputSchema, }: ApplyStepOptions<TStepInput, TInvokeInput, TInvokeResultOutput, TInvokeResultCompensateInput>): StepFunctionResult<TInvokeResultOutput>;
54
61
  /**
55
62
  * @internal
56
63
  *
@@ -112,23 +119,9 @@ export declare function wrapConditionalStep(input: any, condition: (...args: any
112
119
  * }
113
120
  * )
114
121
  */
115
- export declare function createStep<TInvokeInput, TInvokeResultOutput, TInvokeResultCompensateInput>(
116
- /**
117
- * The name of the step or its configuration.
118
- */
119
- nameOrConfig: string | ({
120
- name: string;
121
- } & Omit<TransactionStepsDefinition, "next" | "uuid" | "action">),
122
- /**
123
- * An invocation function that will be executed when the workflow is executed. The function must return an instance of {@link StepResponse}. The constructor of {@link StepResponse}
124
- * accepts the output of the step as a first argument, and optionally as a second argument the data to be passed to the compensation function as a parameter.
125
- */
126
- invokeFn: InvokeFn<TInvokeInput, TInvokeResultOutput, TInvokeResultCompensateInput>,
127
- /**
128
- * A compensation function that's executed if an error occurs in the workflow. It's used to roll-back actions when errors occur.
129
- * It accepts as a parameter the second argument passed to the constructor of the {@link StepResponse} instance returned by the invocation function. If the
130
- * invocation function doesn't pass the second argument to `StepResponse` constructor, the compensation function receives the first argument
131
- * passed to the `StepResponse` constructor instead.
132
- */
133
- compensateFn?: CompensateFn<TInvokeResultCompensateInput>): StepFunction<TInvokeInput, TInvokeResultOutput>;
122
+ export declare function createStep<TInputSchema extends SchemaLike<any>, TOutputSchema extends SchemaLike<any>, TInvokeResultCompensateInput>(nameOrConfig: StepSchemaConfig<TInputSchema, TOutputSchema>, invokeFn: InvokeFn<InferSchemaOutput<TInputSchema>, InferSchemaOutput<TOutputSchema>, TInvokeResultCompensateInput>, compensateFn?: CompensateFn<TInvokeResultCompensateInput>): StepFunction<InferSchemaOutput<TInputSchema>, InferSchemaOutput<TOutputSchema>>;
123
+ export declare function createStep<TInputSchema extends SchemaLike<any>, TInvokeResultOutput, TInvokeResultCompensateInput>(nameOrConfig: StepSchemaConfig<TInputSchema, undefined>, invokeFn: InvokeFn<InferSchemaOutput<TInputSchema>, TInvokeResultOutput, TInvokeResultCompensateInput>, compensateFn?: CompensateFn<TInvokeResultCompensateInput>): StepFunction<InferSchemaOutput<TInputSchema>, TInvokeResultOutput>;
124
+ export declare function createStep<TInvokeInput, TOutputSchema extends SchemaLike<any>, TInvokeResultCompensateInput>(nameOrConfig: StepSchemaConfig<undefined, TOutputSchema>, invokeFn: InvokeFn<TInvokeInput, InferSchemaOutput<TOutputSchema>, TInvokeResultCompensateInput>, compensateFn?: CompensateFn<TInvokeResultCompensateInput>): StepFunction<TInvokeInput, InferSchemaOutput<TOutputSchema>>;
125
+ export declare function createStep<TInvokeInput, TInvokeResultOutput, TInvokeResultCompensateInput>(nameOrConfig: string, invokeFn: InvokeFn<TInvokeInput, TInvokeResultOutput, TInvokeResultCompensateInput>, compensateFn?: CompensateFn<TInvokeResultCompensateInput>): StepFunction<TInvokeInput, TInvokeResultOutput>;
126
+ export declare function createStep<TInvokeInput, TInvokeResultOutput, TInvokeResultCompensateInput>(nameOrConfig: LocalStepConfig, invokeFn: InvokeFn<TInvokeInput, TInvokeResultOutput, TInvokeResultCompensateInput>, compensateFn?: CompensateFn<TInvokeResultCompensateInput>): StepFunction<TInvokeInput, TInvokeResultOutput>;
134
127
  //# sourceMappingURL=create-step.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-step.d.ts","sourceRoot":"","sources":["../../../src/utils/composer/create-step.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-step.d.ts","sourceRoot":"","sources":["../../../src/utils/composer/create-step.ts"],"names":[],"mappings":"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"}
@@ -22,17 +22,19 @@ const proxy_1 = require("./helpers/proxy");
22
22
  * @param compensateFn
23
23
  */
24
24
  // Factory function to create and configure handlers
25
- function createAndConfigureHandler(context, stepName, config, input, invokeFn, compensateFn) {
25
+ function createAndConfigureHandler(context, stepName, config, input, invokeFn, compensateFn, inputSchema, outputSchema) {
26
26
  const handler = create_step_handler_1.createStepHandler.bind(context)({
27
27
  stepName,
28
28
  input,
29
29
  invokeFn,
30
30
  compensateFn,
31
+ inputSchema,
32
+ outputSchema,
31
33
  });
32
34
  wrapAsyncHandler(config, handler);
33
35
  return handler;
34
36
  }
35
- function applyStep({ stepName, stepConfig = {}, input, invokeFn, compensateFn, }) {
37
+ function applyStep({ stepName, stepConfig = {}, input, invokeFn, compensateFn, inputSchema, outputSchema, }) {
36
38
  return function () {
37
39
  if (!this.workflowId) {
38
40
  throw new Error("createStep must be used inside a createWorkflow definition");
@@ -42,7 +44,7 @@ function applyStep({ stepName, stepConfig = {}, input, invokeFn, compensateFn, }
42
44
  type: "step",
43
45
  workflowId: this.workflowId,
44
46
  });
45
- const handler = createAndConfigureHandler(this, stepName, stepConfig, input, invokeFn, compensateFn);
47
+ const handler = createAndConfigureHandler(this, stepName, stepConfig, input, invokeFn, compensateFn, inputSchema, outputSchema);
46
48
  stepConfig.uuid = (0, ulid_1.ulid)();
47
49
  stepConfig.noCompensation = !compensateFn;
48
50
  this.flow.addAction(stepName, stepConfig);
@@ -66,7 +68,7 @@ function applyStep({ stepName, stepConfig = {}, input, invokeFn, compensateFn, }
66
68
  newConfig.nested ||= newConfig.async;
67
69
  }
68
70
  delete newConfig.name;
69
- const handler = createAndConfigureHandler(this, newStepName, newConfig, input, invokeFn, compensateFn);
71
+ const handler = createAndConfigureHandler(this, newStepName, newConfig, input, invokeFn, compensateFn, inputSchema, outputSchema);
70
72
  this.handlers.set(stepName, this.overriddenHandler.get(stepName));
71
73
  this.overriddenHandler.delete(stepName);
72
74
  this.handlers.set(newStepName, handler);
@@ -168,74 +170,16 @@ function wrapConditionalStep(input, condition, handle) {
168
170
  return await originalInvoke(stepArguments);
169
171
  };
170
172
  }
171
- /**
172
- * This function creates a {@link StepFunction} that can be used as a step in a workflow constructed by the {@link createWorkflow} function.
173
- *
174
- * @typeParam TInvokeInput - The type of the expected input parameter to the invocation function.
175
- * @typeParam TInvokeResultOutput - The type of the expected output parameter of the invocation function.
176
- * @typeParam TInvokeResultCompensateInput - The type of the expected input parameter to the compensation function.
177
- *
178
- * @returns A step function to be used in a workflow.
179
- *
180
- * @example
181
- * import {
182
- * createStep,
183
- * StepResponse
184
- * } from "@acmekit/framework/workflows-sdk"
185
- *
186
- * interface CreateProductInput {
187
- * title: string
188
- * }
189
- *
190
- * export const createProductStep = createStep(
191
- * "createProductStep",
192
- * async function (
193
- * input: CreateProductInput,
194
- * { container }
195
- * ) {
196
- * const productModuleService = container.resolve(
197
- * "product"
198
- * )
199
- * const product = await productModuleService.createProducts(input)
200
- * return new StepResponse({
201
- * product
202
- * }, {
203
- * product_id: product.id
204
- * })
205
- * },
206
- * async function (
207
- * input,
208
- * { container }
209
- * ) {
210
- * if (!input) {
211
- * return
212
- * }
213
- * const productModuleService = container.resolve(
214
- * "product"
215
- * )
216
- * await productModuleService.deleteProducts([input.product_id])
217
- * }
218
- * )
219
- */
220
- function createStep(
221
- /**
222
- * The name of the step or its configuration.
223
- */
224
- nameOrConfig,
225
- /**
226
- * An invocation function that will be executed when the workflow is executed. The function must return an instance of {@link StepResponse}. The constructor of {@link StepResponse}
227
- * accepts the output of the step as a first argument, and optionally as a second argument the data to be passed to the compensation function as a parameter.
228
- */
229
- invokeFn,
230
- /**
231
- * A compensation function that's executed if an error occurs in the workflow. It's used to roll-back actions when errors occur.
232
- * It accepts as a parameter the second argument passed to the constructor of the {@link StepResponse} instance returned by the invocation function. If the
233
- * invocation function doesn't pass the second argument to `StepResponse` constructor, the compensation function receives the first argument
234
- * passed to the `StepResponse` constructor instead.
235
- */
236
- compensateFn) {
173
+ // Implementation signature
174
+ function createStep(nameOrConfig, invokeFn, compensateFn) {
237
175
  const stepName = ((0, utils_1.isString)(nameOrConfig) ? nameOrConfig : nameOrConfig.name) ?? invokeFn.name;
238
176
  const config = (0, utils_1.isString)(nameOrConfig) ? {} : nameOrConfig;
177
+ const inputSchema = (0, utils_1.isString)(nameOrConfig)
178
+ ? undefined
179
+ : nameOrConfig.inputSchema;
180
+ const outputSchema = (0, utils_1.isString)(nameOrConfig)
181
+ ? undefined
182
+ : nameOrConfig.outputSchema;
239
183
  const returnFn = function (input) {
240
184
  const context = global[utils_1.OrchestrationUtils.SymbolAcmeKitWorkflowComposerContext];
241
185
  if (!context) {
@@ -247,6 +191,8 @@ compensateFn) {
247
191
  input,
248
192
  invokeFn,
249
193
  compensateFn,
194
+ inputSchema,
195
+ outputSchema,
250
196
  }));
251
197
  };
252
198
  returnFn.__type = utils_1.OrchestrationUtils.SymbolWorkflowStepBind;
@@ -1 +1 @@
1
- {"version":3,"file":"create-step.js","sourceRoot":"","sources":["../../../src/utils/composer/create-step.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-step.js","sourceRoot":"","sources":["../../../src/utils/composer/create-step.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { TransactionModelOptions } from "@acmekit/orchestration";
2
2
  import { WorkflowResponse } from "./helpers/workflow-response";
3
- import { ReturnWorkflow, WorkflowData } from "./type";
3
+ import { InferSchemaOutput, ReturnWorkflow, SchemaLike, WorkflowData } from "./type";
4
4
  /** Extract TResult from a composer return type for workflow type inference */
5
5
  type ResultFromWorkflowReturn<R> = R extends WorkflowResponse<infer T, infer _H> ? T : unknown;
6
6
  /** Extract THooks from a composer return type so .hooks.<name> is inferred for autocomplete */
@@ -58,18 +58,22 @@ type HooksFromWorkflowReturn<R> = R extends WorkflowResponse<unknown, infer H> ?
58
58
  * })
59
59
  * }
60
60
  */
61
- export declare function createWorkflow<TData, TComposerReturn = void | WorkflowResponse<unknown, readonly any[]>>(
62
- /**
63
- * The name of the workflow or its configuration.
64
- */
65
- nameOrConfig: string | ({
61
+ export declare function createWorkflow<TInputSchema extends SchemaLike<any>, TOutputSchema extends SchemaLike<any>, TComposerReturn = void | WorkflowResponse<unknown, readonly any[]>>(nameOrConfig: {
66
62
  name: string;
67
- } & TransactionModelOptions),
68
- /**
69
- * The constructor function that is executed when the `run` method in {@link ReturnWorkflow} is used.
70
- * The function can't be an arrow function or an asynchronus function. It also can't directly manipulate data.
71
- * You'll have to use the {@link transform} function if you need to directly manipulate data.
72
- */
73
- composer: (input: WorkflowData<TData>) => TComposerReturn): ReturnWorkflow<TData, ResultFromWorkflowReturn<TComposerReturn>, HooksFromWorkflowReturn<TComposerReturn>>;
63
+ inputSchema: TInputSchema;
64
+ outputSchema: TOutputSchema;
65
+ } & TransactionModelOptions, composer: (input: WorkflowData<InferSchemaOutput<TInputSchema>>) => TComposerReturn): ReturnWorkflow<InferSchemaOutput<TInputSchema>, InferSchemaOutput<TOutputSchema>, HooksFromWorkflowReturn<TComposerReturn>>;
66
+ export declare function createWorkflow<TInputSchema extends SchemaLike<any>, TComposerReturn = void | WorkflowResponse<unknown, readonly any[]>>(nameOrConfig: {
67
+ name: string;
68
+ inputSchema: TInputSchema;
69
+ } & TransactionModelOptions, composer: (input: WorkflowData<InferSchemaOutput<TInputSchema>>) => TComposerReturn): ReturnWorkflow<InferSchemaOutput<TInputSchema>, ResultFromWorkflowReturn<TComposerReturn>, HooksFromWorkflowReturn<TComposerReturn>>;
70
+ export declare function createWorkflow<TData, TOutputSchema extends SchemaLike<any>, TComposerReturn = void | WorkflowResponse<unknown, readonly any[]>>(nameOrConfig: {
71
+ name: string;
72
+ outputSchema: TOutputSchema;
73
+ } & TransactionModelOptions, composer: (input: WorkflowData<TData>) => TComposerReturn): ReturnWorkflow<TData, InferSchemaOutput<TOutputSchema>, HooksFromWorkflowReturn<TComposerReturn>>;
74
+ export declare function createWorkflow<TData, TComposerReturn = void | WorkflowResponse<unknown, readonly any[]>>(nameOrConfig: string, composer: (input: WorkflowData<TData>) => TComposerReturn): ReturnWorkflow<TData, ResultFromWorkflowReturn<TComposerReturn>, HooksFromWorkflowReturn<TComposerReturn>>;
75
+ export declare function createWorkflow<TData, TComposerReturn = void | WorkflowResponse<unknown, readonly any[]>>(nameOrConfig: {
76
+ name: string;
77
+ } & TransactionModelOptions, composer: (input: WorkflowData<TData>) => TComposerReturn): ReturnWorkflow<TData, ResultFromWorkflowReturn<TComposerReturn>, HooksFromWorkflowReturn<TComposerReturn>>;
74
78
  export {};
75
79
  //# sourceMappingURL=create-workflow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-workflow.d.ts","sourceRoot":"","sources":["../../../src/utils/composer/create-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EAGxB,MAAM,wBAAwB,CAAA;AAkB/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAGL,cAAc,EAGd,YAAY,EACb,MAAM,QAAQ,CAAA;AAEf,8EAA8E;AAC9E,KAAK,wBAAwB,CAAC,CAAC,IAC7B,CAAC,SAAS,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,OAAO,CAAA;AAE7D,+FAA+F;AAC/F,KAAK,uBAAuB,CAAC,CAAC,IAC5B,CAAC,SAAS,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GACxC,CAAC,SAAS,SAAS,GAAG,EAAE,GACtB,CAAC,GACD,SAAS,EAAE,GACb,SAAS,EAAE,CAAA;AAgBjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAEH,wBAAgB,cAAc,CAC5B,KAAK,EACL,eAAe,GAAG,IAAI,GAAG,gBAAgB,CAAC,OAAO,EAAE,SAAS,GAAG,EAAE,CAAC;AAElE;;GAEG;AACH,YAAY,EAAE,MAAM,GAAG,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,uBAAuB,CAAC;AACnE;;;;GAIG;AACH,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,KAAK,eAAe,GACxD,cAAc,CACf,KAAK,EACL,wBAAwB,CAAC,eAAe,CAAC,EACzC,uBAAuB,CAAC,eAAe,CAAC,CACzC,CAmMA"}
1
+ {"version":3,"file":"create-workflow.d.ts","sourceRoot":"","sources":["../../../src/utils/composer/create-workflow.ts"],"names":[],"mappings":"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"}
@@ -15,73 +15,17 @@ const buildTransactionId = (step, stepContext) => {
15
15
  (stepContext.transactionId ?? (0, ulid_1.ulid)()) +
16
16
  (stepContext.attempt > 1 ? `-attempt-${stepContext.attempt}` : ""));
17
17
  };
18
- /**
19
- * This function creates a workflow with the provided name and a constructor function.
20
- * The constructor function builds the workflow from steps created by the {@link createStep} function.
21
- * The returned workflow is an exported workflow of type {@link ReturnWorkflow}, meaning it's not executed right away. To execute it,
22
- * invoke the exported workflow, then run its `run` method.
23
- *
24
- * @typeParam TData - The type of the input passed to the composer function.
25
- * @typeParam TComposerReturn - Inferred from the composer return type; used to derive result and hooks for workflow typing.
26
- *
27
- * @returns The created workflow. You can later execute the workflow by invoking it, then using its `run` method.
28
- *
29
- * @example
30
- * import {
31
- * createWorkflow,
32
- * WorkflowResponse
33
- * } from "@acmekit/framework/workflows-sdk"
34
- * import { AcmeKitRequest, AcmeKitResponse } from "@acmekit/framework/http"
35
- * import {
36
- * createProductStep,
37
- * getProductStep,
38
- * } from "./steps"
39
- *
40
- * interface WorkflowInput {
41
- * title: string
42
- * }
43
- *
44
- * const myWorkflow = createWorkflow(
45
- * "my-workflow",
46
- * (input: WorkflowInput) => {
47
- * // Everything here will be executed and resolved later
48
- * // during the execution. Including the data access.
49
- *
50
- * const product = createProductStep(input)
51
- * return new WorkflowResponse(getProductStep(product.id))
52
- * }
53
- * )
54
- *
55
- * export async function GET(
56
- * req: AcmeKitRequest,
57
- * res: AcmeKitResponse
58
- * ) {
59
- * const { result: product } = await myWorkflow(req.scope)
60
- * .run({
61
- * input: {
62
- * title: "Shirt"
63
- * }
64
- * })
65
- *
66
- * res.json({
67
- * product
68
- * })
69
- * }
70
- */
71
- function createWorkflow(
72
- /**
73
- * The name of the workflow or its configuration.
74
- */
75
- nameOrConfig,
76
- /**
77
- * The constructor function that is executed when the `run` method in {@link ReturnWorkflow} is used.
78
- * The function can't be an arrow function or an asynchronus function. It also can't directly manipulate data.
79
- * You'll have to use the {@link transform} function if you need to directly manipulate data.
80
- */
81
- composer) {
18
+ // Implementation signature
19
+ function createWorkflow(nameOrConfig, composer) {
82
20
  const fileSourcePath = (0, utils_1.getCallerFilePath)();
83
21
  const name = (0, utils_1.isString)(nameOrConfig) ? nameOrConfig : nameOrConfig.name;
84
22
  const options = (0, utils_1.isString)(nameOrConfig) ? {} : nameOrConfig;
23
+ const inputSchema = (0, utils_1.isString)(nameOrConfig)
24
+ ? undefined
25
+ : nameOrConfig.inputSchema;
26
+ const outputSchema = (0, utils_1.isString)(nameOrConfig)
27
+ ? undefined
28
+ : nameOrConfig.outputSchema;
85
29
  (0, utils_1.registerDevServerResource)({
86
30
  sourcePath: fileSourcePath,
87
31
  id: name,
@@ -137,7 +81,9 @@ composer) {
137
81
  const workflow = (0, helper_1.exportWorkflow)(name, returnedStep, {
138
82
  wrappedInput: true,
139
83
  sourcePath: fileSourcePath,
140
- });
84
+ inputSchema,
85
+ outputSchema,
86
+ }, context.queryRegistrations_);
141
87
  const mainFlow = (container) => {
142
88
  const workflow_ = workflow(container);
143
89
  const expandedFlow = workflow_;
@@ -146,6 +92,7 @@ composer) {
146
92
  };
147
93
  return expandedFlow;
148
94
  };
95
+ mainFlow.__queryRegistrations__ = context.queryRegistrations_ ?? [];
149
96
  mainFlow.hooks = {};
150
97
  for (const hook of context.hooks_.declared) {
151
98
  mainFlow.hooks[hook] = context.hooksCallback_[hook].bind(context);