chore(docs): Generated References (#6222)

Generated the following references:
- `entities`
- `file`
- `fulfillment`
- `inventory`
- `js_client`
- `medusa`
- `medusa_config`
- `medusa_react`
- `modules`
- `notification`
- `payment`
- `price_selection`
- `pricing`
- `product`
- `search`
- `services`
- `stock_location`
- `tax`
- `tax_calculation`
- `types`
- `workflows`

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
Co-authored-by: Shahed Nasser <27354907+shahednasser@users.noreply.github.com>
This commit is contained in:
authored and GitHub committed 2024-01-25 18:12:27 +00:00
1 parent bbf79169a9
commit 5a550e73b4
1463 files changed
+359543 -335590

No files matched your search

@@ -82,8 +82,8 @@ myWorkflow()
## Parameters
<ParameterTypes parameters={[{"name":"message","type":"`string`","description":"An optional message to be logged.","optional":false,"defaultValue":"\"Permanent failure\"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"message","type":"`string`","description":"An optional message to be logged.","optional":false,"defaultValue":"\"Permanent failure\"","expandable":false,"children":[]}]} sectionTitle="permanentFailure"/>
## Returns
<ParameterTypes parameters={[{"name":"never","type":"`never`","optional":false,"defaultValue":"","description":"Creates a StepResponse that indicates that the step has failed and the retry mechanism should not kick in anymore.","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"never","type":"`never`","optional":false,"defaultValue":"","description":"Creates a StepResponse that indicates that the step has failed and the retry mechanism should not kick in anymore.","expandable":false,"children":[]}]} sectionTitle="permanentFailure"/>
@@ -10,7 +10,7 @@ This class is used to create the response returned by a step. A step return its
## Type parameters
<ParameterTypes parameters={[{"name":"TOutput","type":"`object`","description":"The type of the output of the step.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"TCompensateInput","type":"`object`","description":"The type of the compensation input. If the step doesn't specify any compensation input, then the type of `TCompensateInput` is the same\nas that of `TOutput`.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"TOutput","type":"`object`","description":"The type of the output of the step.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"TCompensateInput","type":"`object`","description":"The type of the compensation input. If the step doesn't specify any compensation input, then the type of `TCompensateInput` is the same\nas that of `TOutput`.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="StepResponse"/>
## Methods
@@ -22,8 +22,8 @@ The constructor of the StepResponse
### Type Parameters
<ParameterTypes parameters={[{"name":"TOutput","type":"`object`","description":"The type of the output of the step.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"TCompensateInput","type":"`object`","description":"The type of the compensation input. If the step doesn't specify any compensation input, then the type of `TCompensateInput` is the same\nas that of `TOutput`.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"TOutput","type":"`object`","description":"The type of the output of the step.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"TCompensateInput","type":"`object`","description":"The type of the compensation input. If the step doesn't specify any compensation input, then the type of `TCompensateInput` is the same\nas that of `TOutput`.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="new StepResponse"/>
### Parameters
<ParameterTypes parameters={[{"name":"output","type":"TOutput","description":"The output of the step.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"compensateInput","type":"TCompensateInput","description":"The input to be passed as a parameter to the step's compensation function. If not provided, the `output` will be provided instead.","optional":true,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"output","type":"TOutput","description":"The output of the step.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"compensateInput","type":"TCompensateInput","description":"The input to be passed as a parameter to the step's compensation function. If not provided, the `output` will be provided instead.","optional":true,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="new StepResponse"/>
@@ -56,12 +56,12 @@ export const createProductStep = createStep(
## Type Parameters
<ParameterTypes parameters={[{"name":"TInvokeInput","type":"`object`","description":"The type of the expected input parameter to the invocation function.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"TInvokeResultOutput","type":"`object`","description":"The type of the expected output parameter of the invocation function.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"TInvokeResultCompensateInput","type":"`object`","description":"The type of the expected input parameter to the compensation function.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"TInvokeInput","type":"`object`","description":"The type of the expected input parameter to the invocation function.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"TInvokeResultOutput","type":"`object`","description":"The type of the expected output parameter of the invocation function.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"TInvokeResultCompensateInput","type":"`object`","description":"The type of the expected input parameter to the compensation function.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="createStep"/>
## Parameters
<ParameterTypes parameters={[{"name":"nameOrConfig","type":"`string` \\| `object` & Pick&#60;TransactionStepsDefinition, \"maxRetries\"&#62;","description":"The name of the step or its configuration (currently support maxRetries).","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"invokeFn","type":"InvokeFn&#60;TInvokeInput, TInvokeResultOutput, TInvokeResultCompensateInput&#62;","description":"An invocation function that will be executed when the workflow is executed. The function must return an instance of [StepResponse](../classes/workflows.StepResponse.mdx). The constructor of [StepResponse](../classes/workflows.StepResponse.mdx)\naccepts 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.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"compensateFn","type":"CompensateFn&#60;TInvokeResultCompensateInput&#62;","description":"A compensation function that's executed if an error occurs in the workflow. It's used to roll-back actions when errors occur.\nIt accepts as a parameter the second argument passed to the constructor of the [StepResponse](../classes/workflows.StepResponse.mdx) instance returned by the invocation function. If the\ninvocation function doesn't pass the second argument to `StepResponse` constructor, the compensation function receives the first argument\npassed to the `StepResponse` constructor instead.","optional":true,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"nameOrConfig","type":"`string` \\| `object` & Omit&#60;TransactionStepsDefinition, \"next\" \\| \"uuid\" \\| \"action\"&#62;","description":"The name of the step or its configuration.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"invokeFn","type":"InvokeFn&#60;TInvokeInput, TInvokeResultOutput, TInvokeResultCompensateInput&#62;","description":"An invocation function that will be executed when the workflow is executed. The function must return an instance of [StepResponse](../classes/workflows.StepResponse.mdx). The constructor of [StepResponse](../classes/workflows.StepResponse.mdx)\naccepts 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.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"compensateFn","type":"CompensateFn&#60;TInvokeResultCompensateInput&#62;","description":"A compensation function that's executed if an error occurs in the workflow. It's used to roll-back actions when errors occur.\nIt accepts as a parameter the second argument passed to the constructor of the [StepResponse](../classes/workflows.StepResponse.mdx) instance returned by the invocation function. If the\ninvocation function doesn't pass the second argument to `StepResponse` constructor, the compensation function receives the first argument\npassed to the `StepResponse` constructor instead.","optional":true,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="createStep"/>
## Returns
<ParameterTypes parameters={[{"name":"StepFunction","type":"[StepFunction](../types/workflows.StepFunction.mdx)&#60;TInvokeInput, TInvokeResultOutput&#62;","optional":false,"defaultValue":"","description":"A step function to be used in a workflow.","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"StepFunction","type":"[StepFunction](../types/workflows.StepFunction.mdx)&#60;TInvokeInput, TInvokeResultOutput&#62;","optional":false,"defaultValue":"","description":"A step function to be used in a workflow.","expandable":false,"children":[]}]} sectionTitle="createStep"/>
@@ -12,7 +12,7 @@ This documentation provides a reference to the `createWorkflow` . It belongs to
This function creates a workflow with the provided name and a constructor function.
The constructor function builds the workflow from steps created by the [createStep](workflows.createStep.mdx) function.
The returned workflow is an exported workflow of type ReturnWorkflow, meaning it's not executed right away. To execute it,
The returned workflow is an exported workflow of type [ReturnWorkflow](../types/workflows.ReturnWorkflow.mdx), meaning it's not executed right away. To execute it,
invoke the exported workflow, then run its `run` method.
## Example
@@ -62,12 +62,12 @@ export async function GET(
## Type Parameters
<ParameterTypes parameters={[{"name":"TData","type":"`object`","description":"The type of the input passed to the composer function.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"TResult","type":"`object`","description":"The type of the output returned by the composer function.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"THooks","type":"`Record<string, Function>`","description":"The type of hooks defined in the workflow.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"TData","type":"`object`","description":"The type of the input passed to the composer function.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"TResult","type":"`object`","description":"The type of the output returned by the composer function.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"THooks","type":"`Record<string, Function>`","description":"The type of hooks defined in the workflow.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="createWorkflow"/>
## Parameters
<ParameterTypes parameters={[{"name":"name","type":"`string`","description":"The name of the workflow.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"composer","type":"(`input`: [WorkflowData](../types/workflows.WorkflowData.mdx)&#60;TData&#62;) => `void` \\| [WorkflowData](../types/workflows.WorkflowData.mdx)&#60;TResult&#62; \\| &#123; [K in string \\| number \\| symbol]: WorkflowDataProperties&#60;TResult[K]&#62; \\| WorkflowData&#60;TResult[K]&#62; &#125;","description":"The constructor function that is executed when the `run` method in ReturnWorkflow is used.\nThe function can't be an arrow function or an asynchronus function. It also can't directly manipulate data.\nYou'll have to use the [transform](workflows.transform.mdx) function if you need to directly manipulate data.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"`TransactionModelOptions`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"nameOrConfig","type":"`string` \\| `object` & `TransactionModelOptions`","description":"The name of the workflow or its configuration.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"composer","type":"(`input`: [WorkflowData](../types/workflows.WorkflowData.mdx)&#60;TData&#62;) => `void` \\| [WorkflowData](../types/workflows.WorkflowData.mdx)&#60;TResult&#62; \\| &#123; [K in string \\| number \\| symbol]: WorkflowDataProperties&#60;TResult[K]&#62; \\| WorkflowData&#60;TResult[K]&#62; &#125;","description":"The constructor function that is executed when the `run` method in [ReturnWorkflow](../types/workflows.ReturnWorkflow.mdx) is used.\nThe function can't be an arrow function or an asynchronus function. It also can't directly manipulate data.\nYou'll have to use the [transform](workflows.transform.mdx) function if you need to directly manipulate data.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="createWorkflow"/>
## Returns
<ParameterTypes parameters={[{"name":"ReturnWorkflow","type":"ReturnWorkflow&#60;TData, TResult, THooks&#62;","optional":false,"defaultValue":"","description":"The created workflow. You can later execute the workflow by invoking it, then using its `run` method.","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"ReturnWorkflow","type":"[ReturnWorkflow](../types/workflows.ReturnWorkflow.mdx)&#60;TData, TResult, THooks&#62;","optional":false,"defaultValue":"","description":"The created workflow. You can later execute the workflow by invoking it, then using its `run` method.","expandable":false,"children":[]}]} sectionTitle="createWorkflow"/>
@@ -49,12 +49,12 @@ const myWorkflow = createWorkflow<
## Type Parameters
<ParameterTypes parameters={[{"name":"TResult","type":"[WorkflowDataProperties](../types/workflows.WorkflowDataProperties.mdx)&#60;unknown&#62;[]","description":"The type of the expected result.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"TResult","type":"[WorkflowData](../types/workflows.WorkflowData.mdx)[]","description":"The type of the expected result.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="parallelize"/>
## Parameters
<ParameterTypes parameters={[{"name":"steps","type":"TResult","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"steps","type":"TResult","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="parallelize"/>
## Returns
<ParameterTypes parameters={[{"name":"TResult","type":"TResult","optional":false,"defaultValue":"","description":"The step results. The results are ordered in the array by the order they're passed in the function's parameter.","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"TResult","type":"TResult","optional":false,"defaultValue":"","description":"The step results. The results are ordered in the array by the order they're passed in the function's parameter.","expandable":false,"children":[]}]} sectionTitle="parallelize"/>
@@ -55,12 +55,12 @@ const myWorkflow = createWorkflow<
## Type Parameters
<ParameterTypes parameters={[{"name":"T","type":"`object` \\| [WorkflowDataProperties](../types/workflows.WorkflowDataProperties.mdx)&#60;unknown&#62;","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"RFinal","type":"`object`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"T","type":"`object` \\| [WorkflowData](../types/workflows.WorkflowData.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"RFinal","type":"`object`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="transform"/>
## Parameters
<ParameterTypes parameters={[{"name":"values","type":"T","description":"The output(s) of other step functions.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"func","type":"[Func1&#60;T, RFinal&#62;]","description":"The transform function used to perform action on the runtime values of the provided `values`.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"values","type":"T","description":"The output(s) of other step functions.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"func","type":"[Func1&#60;T, RFinal&#62;]","description":"The transform function used to perform action on the runtime values of the provided `values`.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="transform"/>
## Returns
<ParameterTypes parameters={[{"name":"WorkflowData","type":"[WorkflowData](../types/workflows.WorkflowData.mdx)&#60;RFinal&#62;","optional":false,"defaultValue":"","description":"There's no expected value to be returned by the `transform` function.","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"WorkflowData","type":"[WorkflowData](../types/workflows.WorkflowData.mdx)&#60;RFinal&#62;","optional":false,"defaultValue":"","description":"There's no expected value to be returned by the `transform` function.","expandable":false,"children":[]}]} sectionTitle="transform"/>
@@ -8,4 +8,4 @@ import ParameterTypes from "@site/src/components/ParameterTypes"
The step's context.
<ParameterTypes parameters={[{"name":"container","type":"[MedusaContainer](../../medusa/types/medusa.MedusaContainer-2.mdx)","description":"The container used to access resources, such as services, in the step.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"context","type":"[Context](../../types/interfaces/types.Context.mdx)","description":"A shared context object that is used to share resources between the application and the module.","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"transactionManager","type":"TManager","description":"An instance of a transaction manager of type `TManager`, which is a typed parameter passed to the context to specify the type of the `transactionManager`.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"manager","type":"TManager","description":"An instance of a manager, typically an entity manager, of type `TManager`, which is a typed parameter passed to the context to specify the type of the `manager`.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isolationLevel","type":"`string`","description":"A string indicating the isolation level of the context. Possible values are `READ UNCOMMITTED`, `READ COMMITTED`, `REPEATABLE READ`, or `SERIALIZABLE`.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"enableNestedTransactions","type":"`boolean`","description":"A boolean value indicating whether nested transactions are enabled.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"transactionId","type":"`string`","description":"A string indicating the ID of the current transaction.","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"metadata","type":"`TransactionMetadata`","description":"Metadata passed in the input.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"container","type":"[MedusaContainer](../../medusa/types/medusa.MedusaContainer-2.mdx)","description":"The container used to access resources, such as services, in the step.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"metadata","type":"`TransactionMetadata`","description":"Metadata passed in the input.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"context","type":"[Context](../../types/interfaces/types.Context.mdx)","description":"A context used to share resources, such as transaction manager, between the application and the module.","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"transactionManager","type":"TManager","description":"An instance of a transaction manager of type `TManager`, which is a typed parameter passed to the context to specify the type of the `transactionManager`.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"manager","type":"TManager","description":"An instance of a manager, typically an entity manager, of type `TManager`, which is a typed parameter passed to the context to specify the type of the `manager`.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isolationLevel","type":"`string`","description":"A string indicating the isolation level of the context. Possible values are `READ UNCOMMITTED`, `READ COMMITTED`, `REPEATABLE READ`, or `SERIALIZABLE`.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"enableNestedTransactions","type":"`boolean`","description":"A boolean value indicating whether nested transactions are enabled.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"transactionId","type":"`string`","description":"A string indicating the ID of the current transaction.","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]} sectionTitle="StepExecutionContext"/>
@@ -10,4 +10,4 @@ import ParameterTypes from "@site/src/components/ParameterTypes"
## Properties
<ParameterTypes parameters={[{"name":"flow","type":"`OrchestratorBuilder`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"handlers","type":"`WorkflowHandler`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"hookBinder","type":"`<TOutput>`(`name`: `string`, `fn`: `Function`) => [WorkflowData](workflows.WorkflowData.mdx)&#60;TOutput&#62;","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"hooksCallback_","type":"`Record<string, Function[]>`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"hooks_","type":"`string`[]","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"parallelizeBinder","type":"`<TOutput>`(`fn`: (`this`: [CreateWorkflowComposerContext](workflows.CreateWorkflowComposerContext.mdx)) => TOutput) => TOutput","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"stepBinder","type":"`<TOutput>`(`fn`: [StepFunctionResult](workflows.StepFunctionResult.mdx)) => [WorkflowData](workflows.WorkflowData.mdx)&#60;TOutput&#62;","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"workflowId","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"hooks_","type":"`string`[]","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"hooksCallback_","type":"`Record<string, Function[]>`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"workflowId","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"flow","type":"`OrchestratorBuilder`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"handlers","type":"`WorkflowHandler`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"stepBinder","type":"`<TOutput>`(`fn`: [StepFunctionResult](workflows.StepFunctionResult.mdx)) => [WorkflowData](workflows.WorkflowData.mdx)&#60;TOutput&#62;","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"hookBinder","type":"`<TOutput>`(`name`: `string`, `fn`: `Function`) => [WorkflowData](workflows.WorkflowData.mdx)&#60;TOutput&#62;","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"parallelizeBinder","type":"`<TOutput>`(`fn`: (`this`: [CreateWorkflowComposerContext](workflows.CreateWorkflowComposerContext.mdx)) => TOutput) => TOutput","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="CreateWorkflowComposerContext"/>
@@ -0,0 +1,60 @@
---
displayed_sidebar: workflowsSidebar
---
import ParameterTypes from "@site/src/components/ParameterTypes"
# ReturnWorkflow
**ReturnWorkflow**: `<TDataOverride, TResultOverride>`(`container?`: [MedusaContainer](../../medusa/types/medusa.MedusaContainer-2.mdx) \| ``{ __joinerConfig: [ModuleJoinerConfig](../../medusa/types/medusa.ModuleJoinerConfig.mdx) ; __definition: [ModuleDefinition](../../medusa/types/medusa.ModuleDefinition.mdx) }``[]) => Omit&#60;LocalWorkflow, "run" \| "registerStepSuccess" \| "registerStepFailure"&#62; & ExportedWorkflow&#60;TData, TResult, TDataOverride, TResultOverride&#62; & THooks & `object` & `object`
An exported workflow, which is the type of a workflow constructed by the [createWorkflow](../functions/workflows.createWorkflow.mdx) function. The exported workflow can be invoked to create
an executable workflow, optionally within a specified container. So, to execute the workflow, you must invoke the exported workflow, then run the
`run` method of the exported workflow.
## Example
To execute a workflow:
```ts
myWorkflow()
.run({
input: {
name: "John"
}
})
.then(({ result }) => {
console.log(result)
})
```
To specify the container of the workflow, you can pass it as an argument to the call of the exported workflow. This is necessary when executing the workflow
within a Medusa resource such as an API Route or a Subscriber.
For example:
```ts
import type {
MedusaRequest,
MedusaResponse
} from "@medusajs/medusa";
import myWorkflow from "../../../workflows/hello-world";
export async function GET(
req: MedusaRequest,
res: MedusaResponse
) {
const { result } = await myWorkflow(req.scope)
.run({
input: {
name: req.query.name as string
}
})
res.send(result)
}
```
## Type Parameters
<ParameterTypes parameters={[{"name":"TData","type":"`object`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"TResult","type":"`object`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"THooks","type":"`Record<string, Function>`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="ReturnWorkflow"/>
@@ -6,10 +6,10 @@ import ParameterTypes from "@site/src/components/ParameterTypes"
# StepFunction
**StepFunction**: keyof TInput extends [] ? () => [WorkflowData](workflows.WorkflowData.mdx)&#60;&#123; [K in string \| number \| symbol]: TOutput[K] &#125;&#62; : (`input`: TInput extends `object` ? &#123; [K in string \| number \| symbol]: TInput[K] \| WorkflowData&#60;TInput[K]&#62; &#125; : TInput \| [WorkflowData](workflows.WorkflowData.mdx)&#60;TInput&#62;) => [WorkflowData](workflows.WorkflowData.mdx)&#60;&#123; [K in string \| number \| symbol]: TOutput[K] &#125;&#62; & [WorkflowDataProperties](workflows.WorkflowDataProperties.mdx)&#60;&#123; [K in keyof TOutput]: TOutput[K] &#125;&#62; & `object` & [WorkflowDataProperties](workflows.WorkflowDataProperties.mdx)&#60;&#123; [K in keyof TOutput]: TOutput[K] &#125;&#62;
**StepFunction**: keyof TInput extends [] ? () => [WorkflowData](workflows.WorkflowData.mdx)&#60;&#123; [K in string \| number \| symbol]: TOutput[K] &#125;&#62; : (`input`: TInput extends `object` ? &#123; [K in string \| number \| symbol]: TInput[K] \| WorkflowData&#60;TInput[K]&#62; &#125; : TInput \| [WorkflowData](workflows.WorkflowData.mdx)&#60;TInput&#62;) => [WorkflowData](workflows.WorkflowData.mdx)&#60;&#123; [K in string \| number \| symbol]: TOutput[K] &#125;&#62; & [WorkflowDataProperties](workflows.WorkflowDataProperties.mdx)&#60;&#123; [K in keyof TOutput]: TOutput[K] &#125;&#62; & [WorkflowDataProperties](workflows.WorkflowDataProperties.mdx)&#60;&#123; [K in keyof TOutput]: TOutput[K] &#125;&#62;
A step function to be used in a workflow.
## Type Parameters
<ParameterTypes parameters={[{"name":"TInput","type":"`object`","description":"The type of the input of the step.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"TOutput","type":"`object`","description":"The type of the output of the step.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"TInput","type":"`object`","description":"The type of the input of the step.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"TOutput","type":"`object`","description":"The type of the output of the step.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="StepFunction"/>
@@ -10,14 +10,14 @@ import ParameterTypes from "@site/src/components/ParameterTypes"
## Type Parameters
<ParameterTypes parameters={[{"name":"TOutput","type":"`unknown` \\| `unknown`[]","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"TOutput","type":"`unknown` \\| `unknown`[]","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="StepFunctionResult"/>
## Type declaration
### Parameters
<ParameterTypes parameters={[{"name":"this","type":"[CreateWorkflowComposerContext](workflows.CreateWorkflowComposerContext.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"flow","type":"`OrchestratorBuilder`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"handlers","type":"`WorkflowHandler`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"hookBinder","type":"`<TOutput>`(`name`: `string`, `fn`: `Function`) => [WorkflowData](workflows.WorkflowData.mdx)&#60;TOutput&#62;","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"hooksCallback_","type":"`Record<string, Function[]>`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"hooks_","type":"`string`[]","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"parallelizeBinder","type":"`<TOutput>`(`fn`: (`this`: [CreateWorkflowComposerContext](workflows.CreateWorkflowComposerContext.mdx)) => TOutput) => TOutput","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"stepBinder","type":"`<TOutput>`(`fn`: [StepFunctionResult](workflows.StepFunctionResult.mdx)) => [WorkflowData](workflows.WorkflowData.mdx)&#60;TOutput&#62;","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"workflowId","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]}]} />
<ParameterTypes parameters={[{"name":"this","type":"[CreateWorkflowComposerContext](workflows.CreateWorkflowComposerContext.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"hooks_","type":"`string`[]","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"hooksCallback_","type":"`Record<string, Function[]>`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"workflowId","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"flow","type":"`OrchestratorBuilder`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"handlers","type":"`WorkflowHandler`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"stepBinder","type":"`<TOutput>`(`fn`: [StepFunctionResult](workflows.StepFunctionResult.mdx)) => [WorkflowData](workflows.WorkflowData.mdx)&#60;TOutput&#62;","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"hookBinder","type":"`<TOutput>`(`name`: `string`, `fn`: `Function`) => [WorkflowData](workflows.WorkflowData.mdx)&#60;TOutput&#62;","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"parallelizeBinder","type":"`<TOutput>`(`fn`: (`this`: [CreateWorkflowComposerContext](workflows.CreateWorkflowComposerContext.mdx)) => TOutput) => TOutput","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]}]} sectionTitle="__type"/>
### Returns
<ParameterTypes parameters={[{"name":"WorkflowData","type":"[WorkflowData](workflows.WorkflowData.mdx)&#60;&#123; [K in keyof TOutput]: TOutput[K] &#125;&#62;","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"&#123; [K in keyof TOutput]: TOutput[K] &#125;","type":"&#123; [K in keyof TOutput]: TOutput[K] &#125;","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]}]} />
<ParameterTypes parameters={[{"name":"WorkflowData","type":"[WorkflowData](workflows.WorkflowData.mdx)&#60;&#123; [K in keyof TOutput]: TOutput[K] &#125;&#62;","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"&#123; [K in keyof TOutput]: TOutput[K] &#125;","type":"&#123; [K in keyof TOutput]: TOutput[K] &#125;","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]}]} sectionTitle="__type"/>
@@ -0,0 +1,21 @@
---
displayed_sidebar: workflowsSidebar
---
import ParameterTypes from "@site/src/components/ParameterTypes"
# UnwrapWorkflowInputDataType
**UnwrapWorkflowInputDataType**: T extends [ReturnWorkflow](workflows.ReturnWorkflow.mdx)&#60;infer TData, infer R, infer THooks&#62; ? TData : `never`
Extract the raw type of the expected input data of a workflow.
## Example
```ts
type WorkflowInputData = UnwrapWorkflowInputDataType<typeof myWorkflow>
```
## Type Parameters
<ParameterTypes parameters={[{"name":"T","type":"[ReturnWorkflow](workflows.ReturnWorkflow.mdx)&#60;any, any, any&#62;","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="UnwrapWorkflowInputDataType"/>
@@ -6,10 +6,10 @@ import ParameterTypes from "@site/src/components/ParameterTypes"
# WorkflowData
**WorkflowData**: T extends `object` ? &#123; [Key in keyof T]: WorkflowData&#60;T[Key]&#62; &#125; : [WorkflowDataProperties](workflows.WorkflowDataProperties.mdx)&#60;T&#62; & [WorkflowDataProperties](workflows.WorkflowDataProperties.mdx)&#60;T&#62;
**WorkflowData**: T extends `object` ? &#123; [Key in keyof T]: WorkflowData&#60;T[Key]&#62; &#125; : [WorkflowDataProperties](workflows.WorkflowDataProperties.mdx)&#60;T&#62; & [WorkflowDataProperties](workflows.WorkflowDataProperties.mdx)&#60;T&#62; & `object`
This type is used to encapsulate the input or output type of all utils.
## Type Parameters
<ParameterTypes parameters={[{"name":"T","type":"`object`","description":"The type of a step's input or result.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"T","type":"`object`","description":"The type of a step's input or result.","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="WorkflowData"/>
@@ -10,8 +10,8 @@ import ParameterTypes from "@site/src/components/ParameterTypes"
## Type Parameters
<ParameterTypes parameters={[{"name":"T","type":"`object`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"T","type":"`object`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="WorkflowDataProperties"/>
## Properties
<ParameterTypes parameters={[{"name":"__step__","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"__type","type":"`Symbol`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} />
<ParameterTypes parameters={[{"name":"__type","type":"`Symbol`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"__step__","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} sectionTitle="WorkflowDataProperties"/>