@mastra/temporal 0.2.11-alpha.0 → 0.2.11-alpha.2

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # @mastra/temporal
2
2
 
3
+ ## 0.2.11-alpha.2
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [[`a211d09`](https://github.com/mastra-ai/mastra/commit/a211d09185dc65a746534914cf38b67f21ee9bac), [`05db566`](https://github.com/mastra-ai/mastra/commit/05db566fcbdcbf33d0bffca0c72ec30129e2e3ca), [`8124754`](https://github.com/mastra-ai/mastra/commit/8124754ae89fbc69f8136d1df4a91904d0f84c4e)]:
8
+ - @mastra/core@1.54.0-alpha.2
9
+ - @mastra/deployer@1.54.0-alpha.2
10
+
11
+ ## 0.2.11-alpha.1
12
+
13
+ ### Patch Changes
14
+
15
+ - Updated dependencies [[`ce93a3c`](https://github.com/mastra-ai/mastra/commit/ce93a3c114ea1cbfbd576f3db41d7c26c9844f5b), [`5718a22`](https://github.com/mastra-ai/mastra/commit/5718a229281dcfd36bcd1f42a242e3717e510a33), [`5807d3a`](https://github.com/mastra-ai/mastra/commit/5807d3ae1d259b8b7d6df7e5bf2b485c694af9c8), [`57661af`](https://github.com/mastra-ai/mastra/commit/57661afeca52ff9af4e72675ede2134fa503d5a5), [`57661af`](https://github.com/mastra-ai/mastra/commit/57661afeca52ff9af4e72675ede2134fa503d5a5), [`57661af`](https://github.com/mastra-ai/mastra/commit/57661afeca52ff9af4e72675ede2134fa503d5a5), [`5718a22`](https://github.com/mastra-ai/mastra/commit/5718a229281dcfd36bcd1f42a242e3717e510a33), [`57661af`](https://github.com/mastra-ai/mastra/commit/57661afeca52ff9af4e72675ede2134fa503d5a5), [`d1b7e3a`](https://github.com/mastra-ai/mastra/commit/d1b7e3a978a309a5653eeaa490d2d6c7c53bd093), [`c093146`](https://github.com/mastra-ai/mastra/commit/c0931466404d3c521308ea119cb165bb7e695155)]:
16
+ - @mastra/core@1.54.0-alpha.1
17
+ - @mastra/deployer@1.54.0-alpha.1
18
+
3
19
  ## 0.2.11-alpha.0
4
20
 
5
21
  ### Patch Changes
package/dist/index.cjs CHANGED
@@ -1,132 +1,122 @@
1
- 'use strict';
2
-
3
- var chunkDYBSPLCJ_cjs = require('./chunk-DYBSPLCJ.cjs');
4
- var workflows = require('@mastra/core/workflows');
5
-
6
- var TemporalRun = class extends workflows.Run {
7
- client;
8
- taskQueue;
9
- constructor(params, temporalParams) {
10
- super(params);
11
- this.client = temporalParams.client;
12
- this.taskQueue = temporalParams.taskQueue;
13
- }
14
- async start(args = {}) {
15
- const input = await this._validateInput(args.inputData);
16
- const initialState = await this._validateInitialState(args.initialState);
17
- await this._validateRequestContext(args.requestContext);
18
- try {
19
- const handle = await this.client.workflow.start(chunkDYBSPLCJ_cjs.toWorkflowType(this.workflowId), {
20
- taskQueue: this.taskQueue,
21
- workflowId: this.runId,
22
- args: [
23
- {
24
- inputData: input,
25
- initialState,
26
- requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},
27
- runId: this.runId,
28
- resourceId: this.resourceId,
29
- outputOptions: args.outputOptions,
30
- tracingOptions: args.tracingOptions,
31
- perStep: args.perStep
32
- }
33
- ]
34
- });
35
- const result = await handle.result();
36
- return {
37
- status: "success",
38
- input,
39
- result,
40
- state: initialState,
41
- steps: {}
42
- };
43
- } catch (error) {
44
- return {
45
- status: "failed",
46
- input,
47
- error: error instanceof Error ? error : new Error(String(error)),
48
- state: initialState,
49
- steps: {}
50
- };
51
- }
52
- }
53
- async startAsync(args = {}) {
54
- const input = await this._validateInput(args.inputData);
55
- const initialState = await this._validateInitialState(args.initialState);
56
- await this._validateRequestContext(args.requestContext);
57
- await this.client.workflow.start(chunkDYBSPLCJ_cjs.toWorkflowType(this.workflowId), {
58
- taskQueue: this.taskQueue,
59
- workflowId: this.runId,
60
- args: [
61
- {
62
- inputData: input,
63
- initialState,
64
- requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},
65
- runId: this.runId,
66
- resourceId: this.resourceId,
67
- outputOptions: args.outputOptions,
68
- tracingOptions: args.tracingOptions,
69
- perStep: args.perStep
70
- }
71
- ]
72
- });
73
- return { runId: this.runId };
74
- }
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_utils = require("./utils-D94W1i81.cjs");
3
+ let _mastra_core_workflows = require("@mastra/core/workflows");
4
+ //#region src/run.ts
5
+ var TemporalRun = class extends _mastra_core_workflows.Run {
6
+ client;
7
+ taskQueue;
8
+ constructor(params, temporalParams) {
9
+ super(params);
10
+ this.client = temporalParams.client;
11
+ this.taskQueue = temporalParams.taskQueue;
12
+ }
13
+ async start(args = {}) {
14
+ const input = await this._validateInput(args.inputData);
15
+ const initialState = await this._validateInitialState(args.initialState);
16
+ await this._validateRequestContext(args.requestContext);
17
+ try {
18
+ return {
19
+ status: "success",
20
+ input,
21
+ result: await (await this.client.workflow.start(require_utils.toWorkflowType(this.workflowId), {
22
+ taskQueue: this.taskQueue,
23
+ workflowId: this.runId,
24
+ args: [{
25
+ inputData: input,
26
+ initialState,
27
+ requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},
28
+ runId: this.runId,
29
+ resourceId: this.resourceId,
30
+ outputOptions: args.outputOptions,
31
+ tracingOptions: args.tracingOptions,
32
+ perStep: args.perStep
33
+ }]
34
+ })).result(),
35
+ state: initialState,
36
+ steps: {}
37
+ };
38
+ } catch (error) {
39
+ return {
40
+ status: "failed",
41
+ input,
42
+ error: error instanceof Error ? error : new Error(String(error)),
43
+ state: initialState,
44
+ steps: {}
45
+ };
46
+ }
47
+ }
48
+ async startAsync(args = {}) {
49
+ const input = await this._validateInput(args.inputData);
50
+ const initialState = await this._validateInitialState(args.initialState);
51
+ await this._validateRequestContext(args.requestContext);
52
+ await this.client.workflow.start(require_utils.toWorkflowType(this.workflowId), {
53
+ taskQueue: this.taskQueue,
54
+ workflowId: this.runId,
55
+ args: [{
56
+ inputData: input,
57
+ initialState,
58
+ requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},
59
+ runId: this.runId,
60
+ resourceId: this.resourceId,
61
+ outputOptions: args.outputOptions,
62
+ tracingOptions: args.tracingOptions,
63
+ perStep: args.perStep
64
+ }]
65
+ });
66
+ return { runId: this.runId };
67
+ }
75
68
  };
76
-
77
- // src/workflow.ts
78
- var TemporalWorkflow = class extends workflows.Workflow {
79
- temporalClient;
80
- taskQueue;
81
- startToCloseTimeout;
82
- constructor(params, temporalParams) {
83
- super(params);
84
- this.engineType = "temporal";
85
- this.temporalClient = temporalParams.client;
86
- this.taskQueue = temporalParams.taskQueue;
87
- this.startToCloseTimeout = temporalParams.startToCloseTimeout ?? "1 minute";
88
- }
89
- async createRun(options) {
90
- const runId = options?.runId ?? crypto.randomUUID();
91
- const run = new TemporalRun(
92
- {
93
- workflowId: this.id,
94
- runId,
95
- resourceId: options?.resourceId,
96
- stateSchema: this.stateSchema,
97
- inputSchema: this.inputSchema,
98
- requestContextSchema: this.requestContextSchema,
99
- executionEngine: this.executionEngine,
100
- executionGraph: this.executionGraph,
101
- mastra: this.mastra,
102
- retryConfig: this.retryConfig,
103
- serializedStepGraph: this.serializedStepGraph,
104
- disableScorers: options?.disableScorers,
105
- tracingPolicy: this.options.tracingPolicy,
106
- workflowSteps: this.steps,
107
- validateInputs: this.options.validateInputs,
108
- workflowEngineType: this.engineType,
109
- cleanup: void 0
110
- },
111
- {
112
- client: this.temporalClient,
113
- taskQueue: this.taskQueue
114
- }
115
- );
116
- this.runs.set(runId, run);
117
- return run;
118
- }
69
+ //#endregion
70
+ //#region src/workflow.ts
71
+ var TemporalWorkflow = class extends _mastra_core_workflows.Workflow {
72
+ temporalClient;
73
+ taskQueue;
74
+ startToCloseTimeout;
75
+ constructor(params, temporalParams) {
76
+ super(params);
77
+ this.engineType = "temporal";
78
+ this.temporalClient = temporalParams.client;
79
+ this.taskQueue = temporalParams.taskQueue;
80
+ this.startToCloseTimeout = temporalParams.startToCloseTimeout ?? "1 minute";
81
+ }
82
+ async createRun(options) {
83
+ const runId = options?.runId ?? crypto.randomUUID();
84
+ const run = new TemporalRun({
85
+ workflowId: this.id,
86
+ runId,
87
+ resourceId: options?.resourceId,
88
+ stateSchema: this.stateSchema,
89
+ inputSchema: this.inputSchema,
90
+ requestContextSchema: this.requestContextSchema,
91
+ executionEngine: this.executionEngine,
92
+ executionGraph: this.executionGraph,
93
+ mastra: this.mastra,
94
+ retryConfig: this.retryConfig,
95
+ serializedStepGraph: this.serializedStepGraph,
96
+ disableScorers: options?.disableScorers,
97
+ tracingPolicy: this.options.tracingPolicy,
98
+ workflowSteps: this.steps,
99
+ validateInputs: this.options.validateInputs,
100
+ workflowEngineType: this.engineType,
101
+ cleanup: void 0
102
+ }, {
103
+ client: this.temporalClient,
104
+ taskQueue: this.taskQueue
105
+ });
106
+ this.runs.set(runId, run);
107
+ return run;
108
+ }
119
109
  };
120
110
  function createWorkflow(config, temporal) {
121
- return new TemporalWorkflow(config, temporal);
111
+ return new TemporalWorkflow(config, temporal);
122
112
  }
123
113
  function init(temporalParams) {
124
- return {
125
- createWorkflow: (config) => createWorkflow(config, temporalParams),
126
- createStep: workflows.createStep
127
- };
114
+ return {
115
+ createWorkflow: (config) => createWorkflow(config, temporalParams),
116
+ createStep: _mastra_core_workflows.createStep
117
+ };
128
118
  }
129
-
119
+ //#endregion
130
120
  exports.init = init;
131
- //# sourceMappingURL=index.cjs.map
121
+
132
122
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/run.ts","../src/workflow.ts"],"names":["Run","toWorkflowType","Workflow","createStep"],"mappings":"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","file":"index.cjs","sourcesContent":["import type { RequestContext } from '@mastra/core/di';\nimport { Run } from '@mastra/core/workflows';\nimport type { Step, WorkflowResult, WorkflowRunStartOptions } from '@mastra/core/workflows';\nimport type { Client } from '@temporalio/client';\nimport type { TemporalEngineType } from './types';\nimport { toWorkflowType } from './utils';\n\ntype TemporalRunStartArgs<TState, TInput, TRequestContext> = {\n inputData?: TInput;\n initialState?: TState;\n requestContext?: RequestContext<TRequestContext>;\n} & WorkflowRunStartOptions;\n\nexport class TemporalRun<\n TSteps extends Step<string, any, any, any, any, any, TemporalEngineType, any>[] = Step<\n string,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n TemporalEngineType\n >[],\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TRequestContext extends Record<string, any> | unknown = unknown,\n> extends Run<TemporalEngineType, TSteps, TState, TInput, TOutput, TRequestContext> {\n private readonly client: Client;\n private readonly taskQueue: string;\n\n constructor(\n params: ConstructorParameters<typeof Run<TemporalEngineType, TSteps, TState, TInput, TOutput, TRequestContext>>[0],\n temporalParams: {\n client: Client;\n taskQueue: string;\n },\n ) {\n super(params);\n\n this.client = temporalParams.client;\n this.taskQueue = temporalParams.taskQueue;\n }\n\n async start(args: TemporalRunStartArgs<TState, TInput, TRequestContext> = {}) {\n const input = await this._validateInput(args.inputData);\n const initialState = await this._validateInitialState(args.initialState);\n await this._validateRequestContext(args.requestContext as RequestContext<unknown> | undefined);\n\n try {\n const handle = await this.client.workflow.start(toWorkflowType(this.workflowId), {\n taskQueue: this.taskQueue,\n workflowId: this.runId,\n args: [\n {\n inputData: input,\n initialState,\n requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},\n runId: this.runId,\n resourceId: this.resourceId,\n outputOptions: args.outputOptions,\n tracingOptions: args.tracingOptions,\n perStep: args.perStep,\n },\n ],\n });\n const result = await handle.result();\n\n return {\n status: 'success',\n input: input as TInput,\n result: result as TOutput,\n state: initialState,\n steps: {},\n } as WorkflowResult<TState, TInput, TOutput, TSteps>;\n } catch (error) {\n return {\n status: 'failed',\n input: input as TInput,\n error: error instanceof Error ? error : new Error(String(error)),\n state: initialState,\n steps: {},\n } as WorkflowResult<TState, TInput, TOutput, TSteps>;\n }\n }\n\n async startAsync(args: TemporalRunStartArgs<TState, TInput, TRequestContext> = {}) {\n const input = await this._validateInput(args.inputData);\n const initialState = await this._validateInitialState(args.initialState);\n await this._validateRequestContext(args.requestContext as RequestContext<unknown> | undefined);\n\n await this.client.workflow.start(toWorkflowType(this.workflowId), {\n taskQueue: this.taskQueue,\n workflowId: this.runId,\n args: [\n {\n inputData: input,\n initialState,\n requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},\n runId: this.runId,\n resourceId: this.resourceId,\n outputOptions: args.outputOptions,\n tracingOptions: args.tracingOptions,\n perStep: args.perStep,\n },\n ],\n });\n\n return { runId: this.runId };\n }\n}\n","import { Workflow, createStep } from '@mastra/core/workflows';\nimport type { Step, WorkflowConfig } from '@mastra/core/workflows';\nimport type { Client } from '@temporalio/client';\nimport { TemporalRun } from './run';\nimport type { TemporalEngineType } from './types';\n\nexport type TemporalWorkflowParams = {\n client: Client;\n taskQueue: string;\n startToCloseTimeout?: string;\n};\n\nexport class TemporalWorkflow<\n TSteps extends Step<string, any, any, any, any, any, TemporalEngineType, any>[] = Step<\n string,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n TemporalEngineType\n >[],\n TWorkflowId extends string = string,\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TPrevSchema = TInput,\n TRequestContext extends Record<string, any> | unknown = unknown,\n> extends Workflow<TemporalEngineType, TSteps, TWorkflowId, TState, TInput, TOutput, TPrevSchema, TRequestContext> {\n private readonly temporalClient: Client;\n readonly taskQueue: string;\n readonly startToCloseTimeout: string;\n\n constructor(\n params: WorkflowConfig<TWorkflowId, TState, TInput, TOutput, TSteps, TRequestContext>,\n temporalParams: TemporalWorkflowParams,\n ) {\n super(params);\n\n this.engineType = 'temporal';\n this.temporalClient = temporalParams.client;\n this.taskQueue = temporalParams.taskQueue;\n this.startToCloseTimeout = temporalParams.startToCloseTimeout ?? '1 minute';\n }\n\n async createRun(options?: { runId?: string; resourceId?: string; disableScorers?: boolean }) {\n const runId = options?.runId ?? crypto.randomUUID();\n const run = new TemporalRun<TSteps, TState, TInput, TOutput, TRequestContext>(\n {\n workflowId: this.id,\n runId,\n resourceId: options?.resourceId,\n stateSchema: this.stateSchema,\n inputSchema: this.inputSchema,\n requestContextSchema: this.requestContextSchema,\n executionEngine: this.executionEngine,\n executionGraph: this.executionGraph,\n mastra: this.mastra,\n retryConfig: this.retryConfig,\n serializedStepGraph: this.serializedStepGraph,\n disableScorers: options?.disableScorers,\n tracingPolicy: this.options.tracingPolicy,\n workflowSteps: this.steps,\n validateInputs: this.options.validateInputs,\n workflowEngineType: this.engineType,\n cleanup: undefined,\n },\n {\n client: this.temporalClient,\n taskQueue: this.taskQueue,\n },\n );\n\n this.runs.set(runId, run);\n return run;\n }\n}\n\nexport function createWorkflow<\n TSteps extends Step<string, any, any, any, any, any, TemporalEngineType, any>[] = Step<\n string,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n TemporalEngineType\n >[],\n TWorkflowId extends string = string,\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TRequestContext extends Record<string, any> | unknown = unknown,\n>(\n config: WorkflowConfig<TWorkflowId, TState, TInput, TOutput, TSteps, TRequestContext>,\n temporal: TemporalWorkflowParams,\n) {\n return new TemporalWorkflow<TSteps, TWorkflowId, TState, TInput, TOutput, TInput, TRequestContext>(config, temporal);\n}\n\nexport function init(temporalParams: TemporalWorkflowParams) {\n return {\n createWorkflow: <\n TWorkflowId extends string,\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TSteps extends Step[] = Step[],\n TRequestContext extends Record<string, any> | unknown = unknown,\n >(\n config: WorkflowConfig<TWorkflowId, TState, TInput, TOutput, TSteps, TRequestContext>,\n ) => createWorkflow<TSteps, TWorkflowId, TState, TInput, TOutput, TRequestContext>(config, temporalParams),\n createStep,\n };\n}\n"]}
1
+ {"version":3,"file":"index.cjs","names":["Run","toWorkflowType","Workflow"],"sources":["../src/run.ts","../src/workflow.ts"],"sourcesContent":["import type { RequestContext } from '@mastra/core/di';\nimport { Run } from '@mastra/core/workflows';\nimport type { Step, WorkflowResult, WorkflowRunStartOptions } from '@mastra/core/workflows';\nimport type { Client } from '@temporalio/client';\nimport type { TemporalEngineType } from './types';\nimport { toWorkflowType } from './utils';\n\ntype TemporalRunStartArgs<TState, TInput, TRequestContext> = {\n inputData?: TInput;\n initialState?: TState;\n requestContext?: RequestContext<TRequestContext>;\n} & WorkflowRunStartOptions;\n\nexport class TemporalRun<\n TSteps extends Step<string, any, any, any, any, any, TemporalEngineType, any>[] = Step<\n string,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n TemporalEngineType\n >[],\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TRequestContext extends Record<string, any> | unknown = unknown,\n> extends Run<TemporalEngineType, TSteps, TState, TInput, TOutput, TRequestContext> {\n private readonly client: Client;\n private readonly taskQueue: string;\n\n constructor(\n params: ConstructorParameters<typeof Run<TemporalEngineType, TSteps, TState, TInput, TOutput, TRequestContext>>[0],\n temporalParams: {\n client: Client;\n taskQueue: string;\n },\n ) {\n super(params);\n\n this.client = temporalParams.client;\n this.taskQueue = temporalParams.taskQueue;\n }\n\n async start(args: TemporalRunStartArgs<TState, TInput, TRequestContext> = {}) {\n const input = await this._validateInput(args.inputData);\n const initialState = await this._validateInitialState(args.initialState);\n await this._validateRequestContext(args.requestContext as RequestContext<unknown> | undefined);\n\n try {\n const handle = await this.client.workflow.start(toWorkflowType(this.workflowId), {\n taskQueue: this.taskQueue,\n workflowId: this.runId,\n args: [\n {\n inputData: input,\n initialState,\n requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},\n runId: this.runId,\n resourceId: this.resourceId,\n outputOptions: args.outputOptions,\n tracingOptions: args.tracingOptions,\n perStep: args.perStep,\n },\n ],\n });\n const result = await handle.result();\n\n return {\n status: 'success',\n input: input as TInput,\n result: result as TOutput,\n state: initialState,\n steps: {},\n } as WorkflowResult<TState, TInput, TOutput, TSteps>;\n } catch (error) {\n return {\n status: 'failed',\n input: input as TInput,\n error: error instanceof Error ? error : new Error(String(error)),\n state: initialState,\n steps: {},\n } as WorkflowResult<TState, TInput, TOutput, TSteps>;\n }\n }\n\n async startAsync(args: TemporalRunStartArgs<TState, TInput, TRequestContext> = {}) {\n const input = await this._validateInput(args.inputData);\n const initialState = await this._validateInitialState(args.initialState);\n await this._validateRequestContext(args.requestContext as RequestContext<unknown> | undefined);\n\n await this.client.workflow.start(toWorkflowType(this.workflowId), {\n taskQueue: this.taskQueue,\n workflowId: this.runId,\n args: [\n {\n inputData: input,\n initialState,\n requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},\n runId: this.runId,\n resourceId: this.resourceId,\n outputOptions: args.outputOptions,\n tracingOptions: args.tracingOptions,\n perStep: args.perStep,\n },\n ],\n });\n\n return { runId: this.runId };\n }\n}\n","import { Workflow, createStep } from '@mastra/core/workflows';\nimport type { Step, WorkflowConfig } from '@mastra/core/workflows';\nimport type { Client } from '@temporalio/client';\nimport { TemporalRun } from './run';\nimport type { TemporalEngineType } from './types';\n\nexport type TemporalWorkflowParams = {\n client: Client;\n taskQueue: string;\n startToCloseTimeout?: string;\n};\n\nexport class TemporalWorkflow<\n TSteps extends Step<string, any, any, any, any, any, TemporalEngineType, any>[] = Step<\n string,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n TemporalEngineType\n >[],\n TWorkflowId extends string = string,\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TPrevSchema = TInput,\n TRequestContext extends Record<string, any> | unknown = unknown,\n> extends Workflow<TemporalEngineType, TSteps, TWorkflowId, TState, TInput, TOutput, TPrevSchema, TRequestContext> {\n private readonly temporalClient: Client;\n readonly taskQueue: string;\n readonly startToCloseTimeout: string;\n\n constructor(\n params: WorkflowConfig<TWorkflowId, TState, TInput, TOutput, TSteps, TRequestContext>,\n temporalParams: TemporalWorkflowParams,\n ) {\n super(params);\n\n this.engineType = 'temporal';\n this.temporalClient = temporalParams.client;\n this.taskQueue = temporalParams.taskQueue;\n this.startToCloseTimeout = temporalParams.startToCloseTimeout ?? '1 minute';\n }\n\n async createRun(options?: { runId?: string; resourceId?: string; disableScorers?: boolean }) {\n const runId = options?.runId ?? crypto.randomUUID();\n const run = new TemporalRun<TSteps, TState, TInput, TOutput, TRequestContext>(\n {\n workflowId: this.id,\n runId,\n resourceId: options?.resourceId,\n stateSchema: this.stateSchema,\n inputSchema: this.inputSchema,\n requestContextSchema: this.requestContextSchema,\n executionEngine: this.executionEngine,\n executionGraph: this.executionGraph,\n mastra: this.mastra,\n retryConfig: this.retryConfig,\n serializedStepGraph: this.serializedStepGraph,\n disableScorers: options?.disableScorers,\n tracingPolicy: this.options.tracingPolicy,\n workflowSteps: this.steps,\n validateInputs: this.options.validateInputs,\n workflowEngineType: this.engineType,\n cleanup: undefined,\n },\n {\n client: this.temporalClient,\n taskQueue: this.taskQueue,\n },\n );\n\n this.runs.set(runId, run);\n return run;\n }\n}\n\nexport function createWorkflow<\n TSteps extends Step<string, any, any, any, any, any, TemporalEngineType, any>[] = Step<\n string,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n TemporalEngineType\n >[],\n TWorkflowId extends string = string,\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TRequestContext extends Record<string, any> | unknown = unknown,\n>(\n config: WorkflowConfig<TWorkflowId, TState, TInput, TOutput, TSteps, TRequestContext>,\n temporal: TemporalWorkflowParams,\n) {\n return new TemporalWorkflow<TSteps, TWorkflowId, TState, TInput, TOutput, TInput, TRequestContext>(config, temporal);\n}\n\nexport function init(temporalParams: TemporalWorkflowParams) {\n return {\n createWorkflow: <\n TWorkflowId extends string,\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TSteps extends Step[] = Step[],\n TRequestContext extends Record<string, any> | unknown = unknown,\n >(\n config: WorkflowConfig<TWorkflowId, TState, TInput, TOutput, TSteps, TRequestContext>,\n ) => createWorkflow<TSteps, TWorkflowId, TState, TInput, TOutput, TRequestContext>(config, temporalParams),\n createStep,\n };\n}\n"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,130 +1,121 @@
1
- import { toWorkflowType } from './chunk-BF6TR7JX.js';
2
- import { createStep, Workflow, Run } from '@mastra/core/workflows';
3
-
1
+ import { t as toWorkflowType } from "./utils-B_iPTfDi.js";
2
+ import { Run, Workflow, createStep } from "@mastra/core/workflows";
3
+ //#region src/run.ts
4
4
  var TemporalRun = class extends Run {
5
- client;
6
- taskQueue;
7
- constructor(params, temporalParams) {
8
- super(params);
9
- this.client = temporalParams.client;
10
- this.taskQueue = temporalParams.taskQueue;
11
- }
12
- async start(args = {}) {
13
- const input = await this._validateInput(args.inputData);
14
- const initialState = await this._validateInitialState(args.initialState);
15
- await this._validateRequestContext(args.requestContext);
16
- try {
17
- const handle = await this.client.workflow.start(toWorkflowType(this.workflowId), {
18
- taskQueue: this.taskQueue,
19
- workflowId: this.runId,
20
- args: [
21
- {
22
- inputData: input,
23
- initialState,
24
- requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},
25
- runId: this.runId,
26
- resourceId: this.resourceId,
27
- outputOptions: args.outputOptions,
28
- tracingOptions: args.tracingOptions,
29
- perStep: args.perStep
30
- }
31
- ]
32
- });
33
- const result = await handle.result();
34
- return {
35
- status: "success",
36
- input,
37
- result,
38
- state: initialState,
39
- steps: {}
40
- };
41
- } catch (error) {
42
- return {
43
- status: "failed",
44
- input,
45
- error: error instanceof Error ? error : new Error(String(error)),
46
- state: initialState,
47
- steps: {}
48
- };
49
- }
50
- }
51
- async startAsync(args = {}) {
52
- const input = await this._validateInput(args.inputData);
53
- const initialState = await this._validateInitialState(args.initialState);
54
- await this._validateRequestContext(args.requestContext);
55
- await this.client.workflow.start(toWorkflowType(this.workflowId), {
56
- taskQueue: this.taskQueue,
57
- workflowId: this.runId,
58
- args: [
59
- {
60
- inputData: input,
61
- initialState,
62
- requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},
63
- runId: this.runId,
64
- resourceId: this.resourceId,
65
- outputOptions: args.outputOptions,
66
- tracingOptions: args.tracingOptions,
67
- perStep: args.perStep
68
- }
69
- ]
70
- });
71
- return { runId: this.runId };
72
- }
5
+ client;
6
+ taskQueue;
7
+ constructor(params, temporalParams) {
8
+ super(params);
9
+ this.client = temporalParams.client;
10
+ this.taskQueue = temporalParams.taskQueue;
11
+ }
12
+ async start(args = {}) {
13
+ const input = await this._validateInput(args.inputData);
14
+ const initialState = await this._validateInitialState(args.initialState);
15
+ await this._validateRequestContext(args.requestContext);
16
+ try {
17
+ return {
18
+ status: "success",
19
+ input,
20
+ result: await (await this.client.workflow.start(toWorkflowType(this.workflowId), {
21
+ taskQueue: this.taskQueue,
22
+ workflowId: this.runId,
23
+ args: [{
24
+ inputData: input,
25
+ initialState,
26
+ requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},
27
+ runId: this.runId,
28
+ resourceId: this.resourceId,
29
+ outputOptions: args.outputOptions,
30
+ tracingOptions: args.tracingOptions,
31
+ perStep: args.perStep
32
+ }]
33
+ })).result(),
34
+ state: initialState,
35
+ steps: {}
36
+ };
37
+ } catch (error) {
38
+ return {
39
+ status: "failed",
40
+ input,
41
+ error: error instanceof Error ? error : new Error(String(error)),
42
+ state: initialState,
43
+ steps: {}
44
+ };
45
+ }
46
+ }
47
+ async startAsync(args = {}) {
48
+ const input = await this._validateInput(args.inputData);
49
+ const initialState = await this._validateInitialState(args.initialState);
50
+ await this._validateRequestContext(args.requestContext);
51
+ await this.client.workflow.start(toWorkflowType(this.workflowId), {
52
+ taskQueue: this.taskQueue,
53
+ workflowId: this.runId,
54
+ args: [{
55
+ inputData: input,
56
+ initialState,
57
+ requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},
58
+ runId: this.runId,
59
+ resourceId: this.resourceId,
60
+ outputOptions: args.outputOptions,
61
+ tracingOptions: args.tracingOptions,
62
+ perStep: args.perStep
63
+ }]
64
+ });
65
+ return { runId: this.runId };
66
+ }
73
67
  };
74
-
75
- // src/workflow.ts
68
+ //#endregion
69
+ //#region src/workflow.ts
76
70
  var TemporalWorkflow = class extends Workflow {
77
- temporalClient;
78
- taskQueue;
79
- startToCloseTimeout;
80
- constructor(params, temporalParams) {
81
- super(params);
82
- this.engineType = "temporal";
83
- this.temporalClient = temporalParams.client;
84
- this.taskQueue = temporalParams.taskQueue;
85
- this.startToCloseTimeout = temporalParams.startToCloseTimeout ?? "1 minute";
86
- }
87
- async createRun(options) {
88
- const runId = options?.runId ?? crypto.randomUUID();
89
- const run = new TemporalRun(
90
- {
91
- workflowId: this.id,
92
- runId,
93
- resourceId: options?.resourceId,
94
- stateSchema: this.stateSchema,
95
- inputSchema: this.inputSchema,
96
- requestContextSchema: this.requestContextSchema,
97
- executionEngine: this.executionEngine,
98
- executionGraph: this.executionGraph,
99
- mastra: this.mastra,
100
- retryConfig: this.retryConfig,
101
- serializedStepGraph: this.serializedStepGraph,
102
- disableScorers: options?.disableScorers,
103
- tracingPolicy: this.options.tracingPolicy,
104
- workflowSteps: this.steps,
105
- validateInputs: this.options.validateInputs,
106
- workflowEngineType: this.engineType,
107
- cleanup: void 0
108
- },
109
- {
110
- client: this.temporalClient,
111
- taskQueue: this.taskQueue
112
- }
113
- );
114
- this.runs.set(runId, run);
115
- return run;
116
- }
71
+ temporalClient;
72
+ taskQueue;
73
+ startToCloseTimeout;
74
+ constructor(params, temporalParams) {
75
+ super(params);
76
+ this.engineType = "temporal";
77
+ this.temporalClient = temporalParams.client;
78
+ this.taskQueue = temporalParams.taskQueue;
79
+ this.startToCloseTimeout = temporalParams.startToCloseTimeout ?? "1 minute";
80
+ }
81
+ async createRun(options) {
82
+ const runId = options?.runId ?? crypto.randomUUID();
83
+ const run = new TemporalRun({
84
+ workflowId: this.id,
85
+ runId,
86
+ resourceId: options?.resourceId,
87
+ stateSchema: this.stateSchema,
88
+ inputSchema: this.inputSchema,
89
+ requestContextSchema: this.requestContextSchema,
90
+ executionEngine: this.executionEngine,
91
+ executionGraph: this.executionGraph,
92
+ mastra: this.mastra,
93
+ retryConfig: this.retryConfig,
94
+ serializedStepGraph: this.serializedStepGraph,
95
+ disableScorers: options?.disableScorers,
96
+ tracingPolicy: this.options.tracingPolicy,
97
+ workflowSteps: this.steps,
98
+ validateInputs: this.options.validateInputs,
99
+ workflowEngineType: this.engineType,
100
+ cleanup: void 0
101
+ }, {
102
+ client: this.temporalClient,
103
+ taskQueue: this.taskQueue
104
+ });
105
+ this.runs.set(runId, run);
106
+ return run;
107
+ }
117
108
  };
118
109
  function createWorkflow(config, temporal) {
119
- return new TemporalWorkflow(config, temporal);
110
+ return new TemporalWorkflow(config, temporal);
120
111
  }
121
112
  function init(temporalParams) {
122
- return {
123
- createWorkflow: (config) => createWorkflow(config, temporalParams),
124
- createStep
125
- };
113
+ return {
114
+ createWorkflow: (config) => createWorkflow(config, temporalParams),
115
+ createStep
116
+ };
126
117
  }
127
-
118
+ //#endregion
128
119
  export { init };
129
- //# sourceMappingURL=index.js.map
120
+
130
121
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/run.ts","../src/workflow.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import type { RequestContext } from '@mastra/core/di';\nimport { Run } from '@mastra/core/workflows';\nimport type { Step, WorkflowResult, WorkflowRunStartOptions } from '@mastra/core/workflows';\nimport type { Client } from '@temporalio/client';\nimport type { TemporalEngineType } from './types';\nimport { toWorkflowType } from './utils';\n\ntype TemporalRunStartArgs<TState, TInput, TRequestContext> = {\n inputData?: TInput;\n initialState?: TState;\n requestContext?: RequestContext<TRequestContext>;\n} & WorkflowRunStartOptions;\n\nexport class TemporalRun<\n TSteps extends Step<string, any, any, any, any, any, TemporalEngineType, any>[] = Step<\n string,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n TemporalEngineType\n >[],\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TRequestContext extends Record<string, any> | unknown = unknown,\n> extends Run<TemporalEngineType, TSteps, TState, TInput, TOutput, TRequestContext> {\n private readonly client: Client;\n private readonly taskQueue: string;\n\n constructor(\n params: ConstructorParameters<typeof Run<TemporalEngineType, TSteps, TState, TInput, TOutput, TRequestContext>>[0],\n temporalParams: {\n client: Client;\n taskQueue: string;\n },\n ) {\n super(params);\n\n this.client = temporalParams.client;\n this.taskQueue = temporalParams.taskQueue;\n }\n\n async start(args: TemporalRunStartArgs<TState, TInput, TRequestContext> = {}) {\n const input = await this._validateInput(args.inputData);\n const initialState = await this._validateInitialState(args.initialState);\n await this._validateRequestContext(args.requestContext as RequestContext<unknown> | undefined);\n\n try {\n const handle = await this.client.workflow.start(toWorkflowType(this.workflowId), {\n taskQueue: this.taskQueue,\n workflowId: this.runId,\n args: [\n {\n inputData: input,\n initialState,\n requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},\n runId: this.runId,\n resourceId: this.resourceId,\n outputOptions: args.outputOptions,\n tracingOptions: args.tracingOptions,\n perStep: args.perStep,\n },\n ],\n });\n const result = await handle.result();\n\n return {\n status: 'success',\n input: input as TInput,\n result: result as TOutput,\n state: initialState,\n steps: {},\n } as WorkflowResult<TState, TInput, TOutput, TSteps>;\n } catch (error) {\n return {\n status: 'failed',\n input: input as TInput,\n error: error instanceof Error ? error : new Error(String(error)),\n state: initialState,\n steps: {},\n } as WorkflowResult<TState, TInput, TOutput, TSteps>;\n }\n }\n\n async startAsync(args: TemporalRunStartArgs<TState, TInput, TRequestContext> = {}) {\n const input = await this._validateInput(args.inputData);\n const initialState = await this._validateInitialState(args.initialState);\n await this._validateRequestContext(args.requestContext as RequestContext<unknown> | undefined);\n\n await this.client.workflow.start(toWorkflowType(this.workflowId), {\n taskQueue: this.taskQueue,\n workflowId: this.runId,\n args: [\n {\n inputData: input,\n initialState,\n requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},\n runId: this.runId,\n resourceId: this.resourceId,\n outputOptions: args.outputOptions,\n tracingOptions: args.tracingOptions,\n perStep: args.perStep,\n },\n ],\n });\n\n return { runId: this.runId };\n }\n}\n","import { Workflow, createStep } from '@mastra/core/workflows';\nimport type { Step, WorkflowConfig } from '@mastra/core/workflows';\nimport type { Client } from '@temporalio/client';\nimport { TemporalRun } from './run';\nimport type { TemporalEngineType } from './types';\n\nexport type TemporalWorkflowParams = {\n client: Client;\n taskQueue: string;\n startToCloseTimeout?: string;\n};\n\nexport class TemporalWorkflow<\n TSteps extends Step<string, any, any, any, any, any, TemporalEngineType, any>[] = Step<\n string,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n TemporalEngineType\n >[],\n TWorkflowId extends string = string,\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TPrevSchema = TInput,\n TRequestContext extends Record<string, any> | unknown = unknown,\n> extends Workflow<TemporalEngineType, TSteps, TWorkflowId, TState, TInput, TOutput, TPrevSchema, TRequestContext> {\n private readonly temporalClient: Client;\n readonly taskQueue: string;\n readonly startToCloseTimeout: string;\n\n constructor(\n params: WorkflowConfig<TWorkflowId, TState, TInput, TOutput, TSteps, TRequestContext>,\n temporalParams: TemporalWorkflowParams,\n ) {\n super(params);\n\n this.engineType = 'temporal';\n this.temporalClient = temporalParams.client;\n this.taskQueue = temporalParams.taskQueue;\n this.startToCloseTimeout = temporalParams.startToCloseTimeout ?? '1 minute';\n }\n\n async createRun(options?: { runId?: string; resourceId?: string; disableScorers?: boolean }) {\n const runId = options?.runId ?? crypto.randomUUID();\n const run = new TemporalRun<TSteps, TState, TInput, TOutput, TRequestContext>(\n {\n workflowId: this.id,\n runId,\n resourceId: options?.resourceId,\n stateSchema: this.stateSchema,\n inputSchema: this.inputSchema,\n requestContextSchema: this.requestContextSchema,\n executionEngine: this.executionEngine,\n executionGraph: this.executionGraph,\n mastra: this.mastra,\n retryConfig: this.retryConfig,\n serializedStepGraph: this.serializedStepGraph,\n disableScorers: options?.disableScorers,\n tracingPolicy: this.options.tracingPolicy,\n workflowSteps: this.steps,\n validateInputs: this.options.validateInputs,\n workflowEngineType: this.engineType,\n cleanup: undefined,\n },\n {\n client: this.temporalClient,\n taskQueue: this.taskQueue,\n },\n );\n\n this.runs.set(runId, run);\n return run;\n }\n}\n\nexport function createWorkflow<\n TSteps extends Step<string, any, any, any, any, any, TemporalEngineType, any>[] = Step<\n string,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n TemporalEngineType\n >[],\n TWorkflowId extends string = string,\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TRequestContext extends Record<string, any> | unknown = unknown,\n>(\n config: WorkflowConfig<TWorkflowId, TState, TInput, TOutput, TSteps, TRequestContext>,\n temporal: TemporalWorkflowParams,\n) {\n return new TemporalWorkflow<TSteps, TWorkflowId, TState, TInput, TOutput, TInput, TRequestContext>(config, temporal);\n}\n\nexport function init(temporalParams: TemporalWorkflowParams) {\n return {\n createWorkflow: <\n TWorkflowId extends string,\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TSteps extends Step[] = Step[],\n TRequestContext extends Record<string, any> | unknown = unknown,\n >(\n config: WorkflowConfig<TWorkflowId, TState, TInput, TOutput, TSteps, TRequestContext>,\n ) => createWorkflow<TSteps, TWorkflowId, TState, TInput, TOutput, TRequestContext>(config, temporalParams),\n createStep,\n };\n}\n"]}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../src/run.ts","../src/workflow.ts"],"sourcesContent":["import type { RequestContext } from '@mastra/core/di';\nimport { Run } from '@mastra/core/workflows';\nimport type { Step, WorkflowResult, WorkflowRunStartOptions } from '@mastra/core/workflows';\nimport type { Client } from '@temporalio/client';\nimport type { TemporalEngineType } from './types';\nimport { toWorkflowType } from './utils';\n\ntype TemporalRunStartArgs<TState, TInput, TRequestContext> = {\n inputData?: TInput;\n initialState?: TState;\n requestContext?: RequestContext<TRequestContext>;\n} & WorkflowRunStartOptions;\n\nexport class TemporalRun<\n TSteps extends Step<string, any, any, any, any, any, TemporalEngineType, any>[] = Step<\n string,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n TemporalEngineType\n >[],\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TRequestContext extends Record<string, any> | unknown = unknown,\n> extends Run<TemporalEngineType, TSteps, TState, TInput, TOutput, TRequestContext> {\n private readonly client: Client;\n private readonly taskQueue: string;\n\n constructor(\n params: ConstructorParameters<typeof Run<TemporalEngineType, TSteps, TState, TInput, TOutput, TRequestContext>>[0],\n temporalParams: {\n client: Client;\n taskQueue: string;\n },\n ) {\n super(params);\n\n this.client = temporalParams.client;\n this.taskQueue = temporalParams.taskQueue;\n }\n\n async start(args: TemporalRunStartArgs<TState, TInput, TRequestContext> = {}) {\n const input = await this._validateInput(args.inputData);\n const initialState = await this._validateInitialState(args.initialState);\n await this._validateRequestContext(args.requestContext as RequestContext<unknown> | undefined);\n\n try {\n const handle = await this.client.workflow.start(toWorkflowType(this.workflowId), {\n taskQueue: this.taskQueue,\n workflowId: this.runId,\n args: [\n {\n inputData: input,\n initialState,\n requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},\n runId: this.runId,\n resourceId: this.resourceId,\n outputOptions: args.outputOptions,\n tracingOptions: args.tracingOptions,\n perStep: args.perStep,\n },\n ],\n });\n const result = await handle.result();\n\n return {\n status: 'success',\n input: input as TInput,\n result: result as TOutput,\n state: initialState,\n steps: {},\n } as WorkflowResult<TState, TInput, TOutput, TSteps>;\n } catch (error) {\n return {\n status: 'failed',\n input: input as TInput,\n error: error instanceof Error ? error : new Error(String(error)),\n state: initialState,\n steps: {},\n } as WorkflowResult<TState, TInput, TOutput, TSteps>;\n }\n }\n\n async startAsync(args: TemporalRunStartArgs<TState, TInput, TRequestContext> = {}) {\n const input = await this._validateInput(args.inputData);\n const initialState = await this._validateInitialState(args.initialState);\n await this._validateRequestContext(args.requestContext as RequestContext<unknown> | undefined);\n\n await this.client.workflow.start(toWorkflowType(this.workflowId), {\n taskQueue: this.taskQueue,\n workflowId: this.runId,\n args: [\n {\n inputData: input,\n initialState,\n requestContext: args.requestContext ? Object.fromEntries(args.requestContext.entries()) : {},\n runId: this.runId,\n resourceId: this.resourceId,\n outputOptions: args.outputOptions,\n tracingOptions: args.tracingOptions,\n perStep: args.perStep,\n },\n ],\n });\n\n return { runId: this.runId };\n }\n}\n","import { Workflow, createStep } from '@mastra/core/workflows';\nimport type { Step, WorkflowConfig } from '@mastra/core/workflows';\nimport type { Client } from '@temporalio/client';\nimport { TemporalRun } from './run';\nimport type { TemporalEngineType } from './types';\n\nexport type TemporalWorkflowParams = {\n client: Client;\n taskQueue: string;\n startToCloseTimeout?: string;\n};\n\nexport class TemporalWorkflow<\n TSteps extends Step<string, any, any, any, any, any, TemporalEngineType, any>[] = Step<\n string,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n TemporalEngineType\n >[],\n TWorkflowId extends string = string,\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TPrevSchema = TInput,\n TRequestContext extends Record<string, any> | unknown = unknown,\n> extends Workflow<TemporalEngineType, TSteps, TWorkflowId, TState, TInput, TOutput, TPrevSchema, TRequestContext> {\n private readonly temporalClient: Client;\n readonly taskQueue: string;\n readonly startToCloseTimeout: string;\n\n constructor(\n params: WorkflowConfig<TWorkflowId, TState, TInput, TOutput, TSteps, TRequestContext>,\n temporalParams: TemporalWorkflowParams,\n ) {\n super(params);\n\n this.engineType = 'temporal';\n this.temporalClient = temporalParams.client;\n this.taskQueue = temporalParams.taskQueue;\n this.startToCloseTimeout = temporalParams.startToCloseTimeout ?? '1 minute';\n }\n\n async createRun(options?: { runId?: string; resourceId?: string; disableScorers?: boolean }) {\n const runId = options?.runId ?? crypto.randomUUID();\n const run = new TemporalRun<TSteps, TState, TInput, TOutput, TRequestContext>(\n {\n workflowId: this.id,\n runId,\n resourceId: options?.resourceId,\n stateSchema: this.stateSchema,\n inputSchema: this.inputSchema,\n requestContextSchema: this.requestContextSchema,\n executionEngine: this.executionEngine,\n executionGraph: this.executionGraph,\n mastra: this.mastra,\n retryConfig: this.retryConfig,\n serializedStepGraph: this.serializedStepGraph,\n disableScorers: options?.disableScorers,\n tracingPolicy: this.options.tracingPolicy,\n workflowSteps: this.steps,\n validateInputs: this.options.validateInputs,\n workflowEngineType: this.engineType,\n cleanup: undefined,\n },\n {\n client: this.temporalClient,\n taskQueue: this.taskQueue,\n },\n );\n\n this.runs.set(runId, run);\n return run;\n }\n}\n\nexport function createWorkflow<\n TSteps extends Step<string, any, any, any, any, any, TemporalEngineType, any>[] = Step<\n string,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n TemporalEngineType\n >[],\n TWorkflowId extends string = string,\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TRequestContext extends Record<string, any> | unknown = unknown,\n>(\n config: WorkflowConfig<TWorkflowId, TState, TInput, TOutput, TSteps, TRequestContext>,\n temporal: TemporalWorkflowParams,\n) {\n return new TemporalWorkflow<TSteps, TWorkflowId, TState, TInput, TOutput, TInput, TRequestContext>(config, temporal);\n}\n\nexport function init(temporalParams: TemporalWorkflowParams) {\n return {\n createWorkflow: <\n TWorkflowId extends string,\n TState = unknown,\n TInput = unknown,\n TOutput = unknown,\n TSteps extends Step[] = Step[],\n TRequestContext extends Record<string, any> | unknown = unknown,\n >(\n config: WorkflowConfig<TWorkflowId, TState, TInput, TOutput, TSteps, TRequestContext>,\n ) => createWorkflow<TSteps, TWorkflowId, TState, TInput, TOutput, TRequestContext>(config, temporalParams),\n createStep,\n };\n}\n"],"mappings":"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"}