breaking: implement workflow hooks (first iteration) (#8346)

This commit is contained in:
Harminder Virk
2024-07-31 15:36:38 +05:30
committed by GitHub
parent 6ccf83128c
commit 864bb0df05
157 changed files with 1161 additions and 838 deletions
@@ -1,5 +1,9 @@
import { ApiKeyDTO, CreateApiKeyDTO } from "@medusajs/types" import { ApiKeyDTO, CreateApiKeyDTO } from "@medusajs/types"
import { createWorkflow, WorkflowData } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createApiKeysStep } from "../steps" import { createApiKeysStep } from "../steps"
type WorkflowInput = { api_keys: CreateApiKeyDTO[] } type WorkflowInput = { api_keys: CreateApiKeyDTO[] }
@@ -7,7 +11,7 @@ type WorkflowInput = { api_keys: CreateApiKeyDTO[] }
export const createApiKeysWorkflowId = "create-api-keys" export const createApiKeysWorkflowId = "create-api-keys"
export const createApiKeysWorkflow = createWorkflow( export const createApiKeysWorkflow = createWorkflow(
createApiKeysWorkflowId, createApiKeysWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<ApiKeyDTO[]> => { (input: WorkflowData<WorkflowInput>): WorkflowResponse<ApiKeyDTO[]> => {
return createApiKeysStep(input) return new WorkflowResponse(createApiKeysStep(input))
} }
) )
@@ -3,7 +3,11 @@ import {
FilterableApiKeyProps, FilterableApiKeyProps,
RevokeApiKeyDTO, RevokeApiKeyDTO,
} from "@medusajs/types" } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { revokeApiKeysStep } from "../steps" import { revokeApiKeysStep } from "../steps"
type RevokeApiKeysStepInput = { type RevokeApiKeysStepInput = {
@@ -16,7 +20,7 @@ type WorkflowInput = RevokeApiKeysStepInput
export const revokeApiKeysWorkflowId = "revoke-api-keys" export const revokeApiKeysWorkflowId = "revoke-api-keys"
export const revokeApiKeysWorkflow = createWorkflow( export const revokeApiKeysWorkflow = createWorkflow(
revokeApiKeysWorkflowId, revokeApiKeysWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<ApiKeyDTO[]> => { (input: WorkflowData<WorkflowInput>): WorkflowResponse<ApiKeyDTO[]> => {
return revokeApiKeysStep(input) return new WorkflowResponse(revokeApiKeysStep(input))
} }
) )
@@ -3,7 +3,11 @@ import {
FilterableApiKeyProps, FilterableApiKeyProps,
UpdateApiKeyDTO, UpdateApiKeyDTO,
} from "@medusajs/types" } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { updateApiKeysStep } from "../steps" import { updateApiKeysStep } from "../steps"
type UpdateApiKeysStepInput = { type UpdateApiKeysStepInput = {
@@ -16,7 +20,7 @@ type WorkflowInput = UpdateApiKeysStepInput
export const updateApiKeysWorkflowId = "update-api-keys" export const updateApiKeysWorkflowId = "update-api-keys"
export const updateApiKeysWorkflow = createWorkflow( export const updateApiKeysWorkflow = createWorkflow(
updateApiKeysWorkflowId, updateApiKeysWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<ApiKeyDTO[]> => { (input: WorkflowData<WorkflowInput>): WorkflowResponse<ApiKeyDTO[]> => {
return updateApiKeysStep(input) return new WorkflowResponse(updateApiKeysStep(input))
} }
) )
@@ -2,6 +2,7 @@ import { LinkDefinition } from "@medusajs/modules-sdk"
import { BatchWorkflowInput } from "@medusajs/types" import { BatchWorkflowInput } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
@@ -23,10 +24,10 @@ export const batchLinksWorkflow = createWorkflow(
dismissRemoteLinkStep(input.delete || []) dismissRemoteLinkStep(input.delete || [])
) )
return { return new WorkflowResponse({
created, created,
updated, updated,
deleted, deleted,
} })
} }
) )
@@ -1,11 +1,15 @@
import { LinkDefinition } from "@medusajs/modules-sdk" import { LinkDefinition } from "@medusajs/modules-sdk"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createRemoteLinkStep } from "../steps/create-remote-links" import { createRemoteLinkStep } from "../steps/create-remote-links"
export const createLinksWorkflowId = "create-link" export const createLinksWorkflowId = "create-link"
export const createLinksWorkflow = createWorkflow( export const createLinksWorkflow = createWorkflow(
createLinksWorkflowId, createLinksWorkflowId,
(input: WorkflowData<LinkDefinition[]>) => { (input: WorkflowData<LinkDefinition[]>) => {
return createRemoteLinkStep(input) return new WorkflowResponse(createRemoteLinkStep(input))
} }
) )
@@ -1,11 +1,15 @@
import { LinkDefinition } from "@medusajs/modules-sdk" import { LinkDefinition } from "@medusajs/modules-sdk"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { dismissRemoteLinkStep } from "../steps/dismiss-remote-links" import { dismissRemoteLinkStep } from "../steps/dismiss-remote-links"
export const dismissLinksWorkflowId = "dismiss-link" export const dismissLinksWorkflowId = "dismiss-link"
export const dismissLinksWorkflow = createWorkflow( export const dismissLinksWorkflow = createWorkflow(
dismissLinksWorkflowId, dismissLinksWorkflowId,
(input: WorkflowData<LinkDefinition[]>) => { (input: WorkflowData<LinkDefinition[]>) => {
return dismissRemoteLinkStep(input) return new WorkflowResponse(dismissRemoteLinkStep(input))
} }
) )
@@ -1,11 +1,15 @@
import { LinkDefinition } from "@medusajs/modules-sdk" import { LinkDefinition } from "@medusajs/modules-sdk"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { updateRemoteLinksStep } from "../steps/update-remote-links" import { updateRemoteLinksStep } from "../steps/update-remote-links"
export const updateLinksWorkflowId = "update-link" export const updateLinksWorkflowId = "update-link"
export const updateLinksWorkflow = createWorkflow( export const updateLinksWorkflow = createWorkflow(
updateLinksWorkflowId, updateLinksWorkflowId,
(input: WorkflowData<LinkDefinition[]>) => { (input: WorkflowData<LinkDefinition[]>) => {
return updateRemoteLinksStep(input) return new WorkflowResponse(updateRemoteLinksStep(input))
} }
) )
@@ -1,5 +1,9 @@
import { CustomerGroupDTO, CreateCustomerGroupDTO } from "@medusajs/types" import { CustomerGroupDTO, CreateCustomerGroupDTO } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createCustomerGroupsStep } from "../steps" import { createCustomerGroupsStep } from "../steps"
type WorkflowInput = { customersData: CreateCustomerGroupDTO[] } type WorkflowInput = { customersData: CreateCustomerGroupDTO[] }
@@ -7,7 +11,9 @@ type WorkflowInput = { customersData: CreateCustomerGroupDTO[] }
export const createCustomerGroupsWorkflowId = "create-customer-groups" export const createCustomerGroupsWorkflowId = "create-customer-groups"
export const createCustomerGroupsWorkflow = createWorkflow( export const createCustomerGroupsWorkflow = createWorkflow(
createCustomerGroupsWorkflowId, createCustomerGroupsWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<CustomerGroupDTO[]> => { (
return createCustomerGroupsStep(input.customersData) input: WorkflowData<WorkflowInput>
): WorkflowResponse<CustomerGroupDTO[]> => {
return new WorkflowResponse(createCustomerGroupsStep(input.customersData))
} }
) )
@@ -3,7 +3,11 @@ import {
FilterableCustomerGroupProps, FilterableCustomerGroupProps,
CustomerGroupUpdatableFields, CustomerGroupUpdatableFields,
} from "@medusajs/types" } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { updateCustomerGroupsStep } from "../steps" import { updateCustomerGroupsStep } from "../steps"
type WorkflowInput = { type WorkflowInput = {
@@ -14,7 +18,9 @@ type WorkflowInput = {
export const updateCustomerGroupsWorkflowId = "update-customer-groups" export const updateCustomerGroupsWorkflowId = "update-customer-groups"
export const updateCustomerGroupsWorkflow = createWorkflow( export const updateCustomerGroupsWorkflow = createWorkflow(
updateCustomerGroupsWorkflowId, updateCustomerGroupsWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<CustomerGroupDTO[]> => { (
return updateCustomerGroupsStep(input) input: WorkflowData<WorkflowInput>
): WorkflowResponse<CustomerGroupDTO[]> => {
return new WorkflowResponse(updateCustomerGroupsStep(input))
} }
) )
@@ -1,6 +1,7 @@
import { CreateCustomerAddressDTO, CustomerAddressDTO } from "@medusajs/types" import { CreateCustomerAddressDTO, CustomerAddressDTO } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
transform, transform,
@@ -16,7 +17,9 @@ type WorkflowInput = { addresses: CreateCustomerAddressDTO[] }
export const createCustomerAddressesWorkflowId = "create-customer-addresses" export const createCustomerAddressesWorkflowId = "create-customer-addresses"
export const createCustomerAddressesWorkflow = createWorkflow( export const createCustomerAddressesWorkflow = createWorkflow(
createCustomerAddressesWorkflowId, createCustomerAddressesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<CustomerAddressDTO[]> => { (
input: WorkflowData<WorkflowInput>
): WorkflowResponse<CustomerAddressDTO[]> => {
const unsetInput = transform(input, (data) => ({ const unsetInput = transform(input, (data) => ({
create: data.addresses, create: data.addresses,
})) }))
@@ -26,6 +29,6 @@ export const createCustomerAddressesWorkflow = createWorkflow(
maybeUnsetDefaultBillingAddressesStep(unsetInput) maybeUnsetDefaultBillingAddressesStep(unsetInput)
) )
return createCustomerAddressesStep(input.addresses) return new WorkflowResponse(createCustomerAddressesStep(input.addresses))
} }
) )
@@ -1,5 +1,9 @@
import { CreateCustomerDTO, CustomerDTO } from "@medusajs/types" import { CreateCustomerDTO, CustomerDTO } from "@medusajs/types"
import { createWorkflow, WorkflowData } from "@medusajs/workflows-sdk" import {
createWorkflow,
WorkflowData,
WorkflowResponse,
} from "@medusajs/workflows-sdk"
import { createCustomersStep } from "../steps" import { createCustomersStep } from "../steps"
import { transform } from "@medusajs/workflows-sdk" import { transform } from "@medusajs/workflows-sdk"
import { setAuthAppMetadataStep } from "../../auth" import { setAuthAppMetadataStep } from "../../auth"
@@ -12,7 +16,7 @@ type WorkflowInput = {
export const createCustomerAccountWorkflowId = "create-customer-account" export const createCustomerAccountWorkflowId = "create-customer-account"
export const createCustomerAccountWorkflow = createWorkflow( export const createCustomerAccountWorkflow = createWorkflow(
createCustomerAccountWorkflowId, createCustomerAccountWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<CustomerDTO> => { (input: WorkflowData<WorkflowInput>): WorkflowResponse<CustomerDTO> => {
const customers = createCustomersStep([input.customersData]) const customers = createCustomersStep([input.customersData])
const customer = transform( const customer = transform(
@@ -26,6 +30,6 @@ export const createCustomerAccountWorkflow = createWorkflow(
value: customer.id, value: customer.id,
}) })
return customer return new WorkflowResponse(customer)
} }
) )
@@ -1,5 +1,9 @@
import { CustomerDTO, CreateCustomerDTO } from "@medusajs/types" import { CustomerDTO, CreateCustomerDTO } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createCustomersStep } from "../steps" import { createCustomersStep } from "../steps"
type WorkflowInput = { customersData: CreateCustomerDTO[] } type WorkflowInput = { customersData: CreateCustomerDTO[] }
@@ -7,7 +11,7 @@ type WorkflowInput = { customersData: CreateCustomerDTO[] }
export const createCustomersWorkflowId = "create-customers" export const createCustomersWorkflowId = "create-customers"
export const createCustomersWorkflow = createWorkflow( export const createCustomersWorkflow = createWorkflow(
createCustomersWorkflowId, createCustomersWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<CustomerDTO[]> => { (input: WorkflowData<WorkflowInput>): WorkflowResponse<CustomerDTO[]> => {
return createCustomersStep(input.customersData) return new WorkflowResponse(createCustomersStep(input.customersData))
} }
) )
@@ -5,6 +5,7 @@ import {
} from "@medusajs/types" } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
transform, transform,
@@ -23,7 +24,9 @@ type WorkflowInput = {
export const updateCustomerAddressesWorkflowId = "update-customer-addresses" export const updateCustomerAddressesWorkflowId = "update-customer-addresses"
export const updateCustomerAddressesWorkflow = createWorkflow( export const updateCustomerAddressesWorkflow = createWorkflow(
updateCustomerAddressesWorkflowId, updateCustomerAddressesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<CustomerAddressDTO[]> => { (
input: WorkflowData<WorkflowInput>
): WorkflowResponse<CustomerAddressDTO[]> => {
const unsetInput = transform(input, (data) => ({ const unsetInput = transform(input, (data) => ({
update: data, update: data,
})) }))
@@ -33,6 +36,6 @@ export const updateCustomerAddressesWorkflow = createWorkflow(
maybeUnsetDefaultBillingAddressesStep(unsetInput) maybeUnsetDefaultBillingAddressesStep(unsetInput)
) )
return updateCustomerAddressesStep(input) return new WorkflowResponse(updateCustomerAddressesStep(input))
} }
) )
@@ -3,7 +3,11 @@ import {
CustomerUpdatableFields, CustomerUpdatableFields,
FilterableCustomerProps, FilterableCustomerProps,
} from "@medusajs/types" } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { updateCustomersStep } from "../steps" import { updateCustomersStep } from "../steps"
type UpdateCustomersStepInput = { type UpdateCustomersStepInput = {
@@ -16,7 +20,7 @@ type WorkflowInput = UpdateCustomersStepInput
export const updateCustomersWorkflowId = "update-customers" export const updateCustomersWorkflowId = "update-customers"
export const updateCustomersWorkflow = createWorkflow( export const updateCustomersWorkflow = createWorkflow(
updateCustomersWorkflowId, updateCustomersWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<CustomerDTO[]> => { (input: WorkflowData<WorkflowInput>): WorkflowResponse<CustomerDTO[]> => {
return updateCustomersStep(input) return new WorkflowResponse(updateCustomersStep(input))
} }
) )
@@ -1,11 +1,11 @@
import { createWorkflow } from "@medusajs/workflows-sdk" import { createWorkflow, WorkflowResponse } from "@medusajs/workflows-sdk"
import { createDefaultSalesChannelStep } from "../../sales-channel" import { createDefaultSalesChannelStep } from "../../sales-channel"
import { createDefaultStoreStep } from "../steps/create-default-store" import { createDefaultStoreStep } from "../steps/create-default-store"
export const createDefaultsWorkflowID = "create-defaults" export const createDefaultsWorkflowID = "create-defaults"
export const createDefaultsWorkflow = createWorkflow( export const createDefaultsWorkflow = createWorkflow(
createDefaultsWorkflowID, createDefaultsWorkflowID,
(input) => { () => {
const salesChannel = createDefaultSalesChannelStep({ const salesChannel = createDefaultSalesChannelStep({
data: { data: {
name: "Default Sales Channel", name: "Default Sales Channel",
@@ -18,6 +18,6 @@ export const createDefaultsWorkflow = createWorkflow(
}, },
}) })
return store return new WorkflowResponse(store)
} }
) )
@@ -4,6 +4,7 @@ import {
} from "@medusajs/types" } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
transform, transform,
@@ -118,6 +119,6 @@ export const addToCartWorkflow = createWorkflow(
refreshPaymentCollectionForCartStep({ cart_id: input.cart.id }) refreshPaymentCollectionForCartStep({ cart_id: input.cart.id })
) )
return items return new WorkflowResponse(items)
} }
) )
@@ -2,6 +2,7 @@ import { OrderDTO } from "@medusajs/types"
import { Modules, OrderEvents } from "@medusajs/utils" import { Modules, OrderEvents } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
transform, transform,
@@ -20,7 +21,7 @@ import { confirmVariantInventoryWorkflow } from "./confirm-variant-inventory"
export const completeCartWorkflowId = "complete-cart" export const completeCartWorkflowId = "complete-cart"
export const completeCartWorkflow = createWorkflow( export const completeCartWorkflow = createWorkflow(
completeCartWorkflowId, completeCartWorkflowId,
(input: WorkflowData<any>): WorkflowData<OrderDTO> => { (input: WorkflowData<any>): WorkflowResponse<OrderDTO> => {
const cart = useRemoteQueryStep({ const cart = useRemoteQueryStep({
entry_point: "cart", entry_point: "cart",
fields: completeCartFields, fields: completeCartFields,
@@ -94,6 +95,6 @@ export const completeCartWorkflow = createWorkflow(
emitEventStep({ eventName: OrderEvents.PLACED, data: { id: order.id } }) emitEventStep({ eventName: OrderEvents.PLACED, data: { id: order.id } })
return order return new WorkflowResponse(order)
} }
) )
@@ -2,6 +2,7 @@ import { ConfirmVariantInventoryWorkflowInputDTO } from "@medusajs/types"
import { MedusaError, deepFlatMap } from "@medusajs/utils" import { MedusaError, deepFlatMap } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
transform, transform,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
@@ -24,7 +25,7 @@ export const confirmVariantInventoryWorkflow = createWorkflow(
confirmVariantInventoryWorkflowId, confirmVariantInventoryWorkflowId,
( (
input: WorkflowData<ConfirmVariantInventoryWorkflowInputDTO> input: WorkflowData<ConfirmVariantInventoryWorkflowInputDTO>
): WorkflowData<Output> => { ): WorkflowResponse<Output> => {
const confirmInventoryInput = transform({ input }, (data) => { const confirmInventoryInput = transform({ input }, (data) => {
const productVariantInventoryItems = new Map<string, any>() const productVariantInventoryItems = new Map<string, any>()
const stockLocationIds = new Set<string>() const stockLocationIds = new Set<string>()
@@ -111,6 +112,6 @@ export const confirmVariantInventoryWorkflow = createWorkflow(
confirmInventoryStep(confirmInventoryInput) confirmInventoryStep(confirmInventoryInput)
return confirmInventoryInput return new WorkflowResponse(confirmInventoryInput)
} }
) )
@@ -2,6 +2,7 @@ import { CartDTO, CreateCartWorkflowInputDTO } from "@medusajs/types"
import { MedusaError } from "@medusajs/utils" import { MedusaError } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
transform, transform,
@@ -28,7 +29,9 @@ import { refreshPaymentCollectionForCartStep } from "./refresh-payment-collectio
export const createCartWorkflowId = "create-cart" export const createCartWorkflowId = "create-cart"
export const createCartWorkflow = createWorkflow( export const createCartWorkflow = createWorkflow(
createCartWorkflowId, createCartWorkflowId,
(input: WorkflowData<CreateCartWorkflowInputDTO>): WorkflowData<CartDTO> => { (
input: WorkflowData<CreateCartWorkflowInputDTO>
): WorkflowResponse<CartDTO> => {
const variantIds = transform({ input }, (data) => { const variantIds = transform({ input }, (data) => {
return (data.input.items ?? []).map((i) => i.variant_id) return (data.input.items ?? []).map((i) => i.variant_id)
}) })
@@ -153,6 +156,6 @@ export const createCartWorkflow = createWorkflow(
}) })
) )
return cart return new WorkflowResponse(cart)
} }
) )
@@ -4,6 +4,7 @@ import {
createWorkflow, createWorkflow,
transform, transform,
WorkflowData, WorkflowData,
WorkflowResponse,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { useRemoteQueryStep } from "../../../common/steps/use-remote-query" import { useRemoteQueryStep } from "../../../common/steps/use-remote-query"
@@ -108,6 +109,6 @@ export const listShippingOptionsForCartWorkflow = createWorkflow(
} }
) )
return shippingOptionsWithPrice return new WorkflowResponse(shippingOptionsWithPrice)
} }
) )
@@ -1,6 +1,7 @@
import { UpdateLineItemInCartWorkflowInputDTO } from "@medusajs/types" import { UpdateLineItemInCartWorkflowInputDTO } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
transform, transform,
@@ -97,6 +98,6 @@ export const updateLineItemInCartWorkflow = createWorkflow(
const updatedItem = transform({ result }, (data) => data.result?.[0]) const updatedItem = transform({ result }, (data) => data.result?.[0])
return updatedItem return new WorkflowResponse(updatedItem)
} }
) )
@@ -1,5 +1,9 @@
import { FileDTO } from "@medusajs/types" import { FileDTO } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { uploadFilesStep } from "../steps" import { uploadFilesStep } from "../steps"
type WorkflowInput = { type WorkflowInput = {
@@ -14,7 +18,7 @@ type WorkflowInput = {
export const uploadFilesWorkflowId = "upload-files" export const uploadFilesWorkflowId = "upload-files"
export const uploadFilesWorkflow = createWorkflow( export const uploadFilesWorkflow = createWorkflow(
uploadFilesWorkflowId, uploadFilesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<FileDTO[]> => { (input: WorkflowData<WorkflowInput>): WorkflowResponse<FileDTO[]> => {
return uploadFilesStep(input) return new WorkflowResponse(uploadFilesStep(input))
} }
) )
@@ -10,6 +10,7 @@ import {
parallelize, parallelize,
transform, transform,
WorkflowData, WorkflowData,
WorkflowResponse,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { import {
createShippingOptionRulesStep, createShippingOptionRulesStep,
@@ -27,7 +28,7 @@ export const batchShippingOptionRulesWorkflow = createWorkflow(
UpdateShippingOptionRuleDTO UpdateShippingOptionRuleDTO
> >
> >
): WorkflowData<BatchWorkflowOutput<ShippingOptionRuleDTO>> => { ): WorkflowResponse<BatchWorkflowOutput<ShippingOptionRuleDTO>> => {
const actionInputs = transform({ input }, (data) => { const actionInputs = transform({ input }, (data) => {
const { create, update, delete: del } = data.input const { create, update, delete: del } = data.input
return { return {
@@ -43,6 +44,8 @@ export const batchShippingOptionRulesWorkflow = createWorkflow(
deleteShippingOptionRulesStep(actionInputs.deleteInput) deleteShippingOptionRulesStep(actionInputs.deleteInput)
) )
return transform({ created, deleted, updated }, (data) => data) return new WorkflowResponse(
transform({ created, deleted, updated }, (data) => data)
)
} }
) )
@@ -1,5 +1,9 @@
import { FulfillmentDTO, FulfillmentWorkflow } from "@medusajs/types" import { FulfillmentDTO, FulfillmentWorkflow } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createFulfillmentStep } from "../steps" import { createFulfillmentStep } from "../steps"
export const createFulfillmentWorkflowId = "create-fulfillment-workflow" export const createFulfillmentWorkflowId = "create-fulfillment-workflow"
@@ -7,9 +11,7 @@ export const createFulfillmentWorkflow = createWorkflow(
createFulfillmentWorkflowId, createFulfillmentWorkflowId,
( (
input: WorkflowData<FulfillmentWorkflow.CreateFulfillmentWorkflowInput> input: WorkflowData<FulfillmentWorkflow.CreateFulfillmentWorkflowInput>
): WorkflowData<FulfillmentDTO> => { ): WorkflowResponse<FulfillmentDTO> => {
const fulfillment = createFulfillmentStep(input) return new WorkflowResponse(createFulfillmentStep(input))
return fulfillment
} }
) )
@@ -1,5 +1,9 @@
import { FulfillmentDTO, FulfillmentWorkflow } from "@medusajs/types" import { FulfillmentDTO, FulfillmentWorkflow } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createReturnFulfillmentStep } from "../steps" import { createReturnFulfillmentStep } from "../steps"
export const createReturnFulfillmentWorkflowId = export const createReturnFulfillmentWorkflowId =
@@ -8,9 +12,7 @@ export const createReturnFulfillmentWorkflow = createWorkflow(
createReturnFulfillmentWorkflowId, createReturnFulfillmentWorkflowId,
( (
input: WorkflowData<FulfillmentWorkflow.CreateFulfillmentWorkflowInput> input: WorkflowData<FulfillmentWorkflow.CreateFulfillmentWorkflowInput>
): WorkflowData<FulfillmentDTO> => { ): WorkflowResponse<FulfillmentDTO> => {
const fulfillment = createReturnFulfillmentStep(input) return new WorkflowResponse(createReturnFulfillmentStep(input))
return fulfillment
} }
) )
@@ -1,5 +1,9 @@
import { FulfillmentWorkflow } from "@medusajs/types" import { FulfillmentWorkflow, ServiceZoneDTO } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createServiceZonesStep } from "../steps" import { createServiceZonesStep } from "../steps"
export const createServiceZonesWorkflowId = "create-service-zones-workflow" export const createServiceZonesWorkflowId = "create-service-zones-workflow"
@@ -7,9 +11,7 @@ export const createServiceZonesWorkflow = createWorkflow(
createServiceZonesWorkflowId, createServiceZonesWorkflowId,
( (
input: WorkflowData<FulfillmentWorkflow.CreateServiceZonesWorkflowInput> input: WorkflowData<FulfillmentWorkflow.CreateServiceZonesWorkflowInput>
): WorkflowData => { ): WorkflowResponse<ServiceZoneDTO[]> => {
const serviceZones = createServiceZonesStep(input.data) return new WorkflowResponse(createServiceZonesStep(input.data))
return serviceZones
} }
) )
@@ -1,6 +1,7 @@
import { FulfillmentWorkflow } from "@medusajs/types" import { FulfillmentWorkflow } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
transform, transform,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
@@ -18,8 +19,10 @@ export const createShipmentWorkflow = createWorkflow(
shipped_at: new Date(), shipped_at: new Date(),
})) }))
return updateFulfillmentWorkflow.runAsStep({ return new WorkflowResponse(
input: update, updateFulfillmentWorkflow.runAsStep({
}) input: update,
})
)
} }
) )
@@ -3,6 +3,7 @@ import {
createWorkflow, createWorkflow,
transform, transform,
WorkflowData, WorkflowData,
WorkflowResponse,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { import {
createShippingOptionsPriceSetsStep, createShippingOptionsPriceSetsStep,
@@ -19,7 +20,7 @@ export const createShippingOptionsWorkflow = createWorkflow(
input: WorkflowData< input: WorkflowData<
FulfillmentWorkflow.CreateShippingOptionsWorkflowInput[] FulfillmentWorkflow.CreateShippingOptionsWorkflowInput[]
> >
): WorkflowData<FulfillmentWorkflow.CreateShippingOptionsWorkflowOutput> => { ): WorkflowResponse<FulfillmentWorkflow.CreateShippingOptionsWorkflowOutput> => {
validateFulfillmentProvidersStep(input) validateFulfillmentProvidersStep(input)
const data = transform(input, (data) => { const data = transform(input, (data) => {
@@ -81,7 +82,6 @@ export const createShippingOptionsWorkflow = createWorkflow(
) )
setShippingOptionsPriceSetsStep(normalizedLinkData) setShippingOptionsPriceSetsStep(normalizedLinkData)
return new WorkflowResponse(createdShippingOptions)
return createdShippingOptions
} }
) )
@@ -1,5 +1,9 @@
import { FulfillmentWorkflow } from "@medusajs/types" import { FulfillmentWorkflow } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createShippingProfilesStep } from "../steps" import { createShippingProfilesStep } from "../steps"
export const createShippingProfilesWorkflowId = export const createShippingProfilesWorkflowId =
@@ -8,9 +12,7 @@ export const createShippingProfilesWorkflow = createWorkflow(
createShippingProfilesWorkflowId, createShippingProfilesWorkflowId,
( (
input: WorkflowData<FulfillmentWorkflow.CreateShippingProfilesWorkflowInput> input: WorkflowData<FulfillmentWorkflow.CreateShippingProfilesWorkflowInput>
): WorkflowData<FulfillmentWorkflow.CreateShippingProfilesWorkflowOutput> => { ): WorkflowResponse<FulfillmentWorkflow.CreateShippingProfilesWorkflowOutput> => {
const shippingProfiles = createShippingProfilesStep(input.data) return new WorkflowResponse(createShippingProfilesStep(input.data))
return shippingProfiles
} }
) )
@@ -1,11 +1,15 @@
import { FulfillmentWorkflow } from "@medusajs/types" import { FulfillmentWorkflow } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { updateFulfillmentStep } from "../steps" import { updateFulfillmentStep } from "../steps"
export const updateFulfillmentWorkflowId = "update-fulfillment-workflow" export const updateFulfillmentWorkflowId = "update-fulfillment-workflow"
export const updateFulfillmentWorkflow = createWorkflow( export const updateFulfillmentWorkflow = createWorkflow(
updateFulfillmentWorkflowId, updateFulfillmentWorkflowId,
(input: WorkflowData<FulfillmentWorkflow.UpdateFulfillmentWorkflowInput>) => { (input: WorkflowData<FulfillmentWorkflow.UpdateFulfillmentWorkflowInput>) => {
return updateFulfillmentStep(input) return new WorkflowResponse(updateFulfillmentStep(input))
} }
) )
@@ -1,5 +1,9 @@
import { FulfillmentWorkflow } from "@medusajs/types" import { FulfillmentWorkflow, ServiceZoneDTO } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { updateServiceZonesStep } from "../steps/update-service-zones" import { updateServiceZonesStep } from "../steps/update-service-zones"
export const updateServiceZonesWorkflowId = "update-service-zones-workflow" export const updateServiceZonesWorkflowId = "update-service-zones-workflow"
@@ -7,9 +11,7 @@ export const updateServiceZonesWorkflow = createWorkflow(
updateServiceZonesWorkflowId, updateServiceZonesWorkflowId,
( (
input: WorkflowData<FulfillmentWorkflow.UpdateServiceZonesWorkflowInput> input: WorkflowData<FulfillmentWorkflow.UpdateServiceZonesWorkflowInput>
): WorkflowData => { ): WorkflowResponse<ServiceZoneDTO[]> => {
const serviceZones = updateServiceZonesStep(input) return new WorkflowResponse(updateServiceZonesStep(input))
return serviceZones
} }
) )
@@ -3,6 +3,7 @@ import {
createWorkflow, createWorkflow,
transform, transform,
WorkflowData, WorkflowData,
WorkflowResponse,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { import {
setShippingOptionsPricesStep, setShippingOptionsPricesStep,
@@ -18,7 +19,7 @@ export const updateShippingOptionsWorkflow = createWorkflow(
input: WorkflowData< input: WorkflowData<
FulfillmentWorkflow.UpdateShippingOptionsWorkflowInput[] FulfillmentWorkflow.UpdateShippingOptionsWorkflowInput[]
> >
): WorkflowData<FulfillmentWorkflow.UpdateShippingOptionsWorkflowOutput> => { ): WorkflowResponse<FulfillmentWorkflow.UpdateShippingOptionsWorkflowOutput> => {
validateFulfillmentProvidersStep(input) validateFulfillmentProvidersStep(input)
const data = transform(input, (data) => { const data = transform(input, (data) => {
@@ -66,6 +67,6 @@ export const updateShippingOptionsWorkflow = createWorkflow(
normalizedShippingOptionsPrices.shippingOptionsPrices normalizedShippingOptionsPrices.shippingOptionsPrices
) )
return updatedShippingOptions return new WorkflowResponse(updatedShippingOptions)
} }
) )
@@ -1,5 +1,9 @@
import { FulfillmentWorkflow } from "@medusajs/types" import { FulfillmentWorkflow } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { updateShippingProfilesStep } from "../steps/update-shipping-profiles" import { updateShippingProfilesStep } from "../steps/update-shipping-profiles"
export const updateShippingProfilesWorkflowId = export const updateShippingProfilesWorkflowId =
@@ -8,9 +12,7 @@ export const updateShippingProfilesWorkflow = createWorkflow(
updateShippingProfilesWorkflowId, updateShippingProfilesWorkflowId,
( (
input: WorkflowData<FulfillmentWorkflow.UpdateShippingProfilesWorkflowInput> input: WorkflowData<FulfillmentWorkflow.UpdateShippingProfilesWorkflowInput>
): WorkflowData<FulfillmentWorkflow.CreateShippingProfilesWorkflowOutput> => { ): WorkflowResponse<FulfillmentWorkflow.CreateShippingProfilesWorkflowOutput> => {
const shippingProfiles = updateShippingProfilesStep(input) return new WorkflowResponse(updateShippingProfilesStep(input))
return shippingProfiles
} }
) )
@@ -1,5 +1,9 @@
import { InventoryLevelDTO, InventoryTypes } from "@medusajs/types" import { InventoryLevelDTO, InventoryTypes } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { import {
createInventoryLevelsStep, createInventoryLevelsStep,
deleteInventoryLevelsFromItemAndLocationsStep, deleteInventoryLevelsFromItemAndLocationsStep,
@@ -14,9 +18,11 @@ export const bulkCreateDeleteLevelsWorkflowId =
"bulk-create-delete-levels-workflow" "bulk-create-delete-levels-workflow"
export const bulkCreateDeleteLevelsWorkflow = createWorkflow( export const bulkCreateDeleteLevelsWorkflow = createWorkflow(
bulkCreateDeleteLevelsWorkflowId, bulkCreateDeleteLevelsWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<InventoryLevelDTO[]> => { (
input: WorkflowData<WorkflowInput>
): WorkflowResponse<InventoryLevelDTO[]> => {
deleteInventoryLevelsFromItemAndLocationsStep(input.deletes) deleteInventoryLevelsFromItemAndLocationsStep(input.deletes)
return createInventoryLevelsStep(input.creates) return new WorkflowResponse(createInventoryLevelsStep(input.creates))
} }
) )
@@ -1,5 +1,6 @@
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
transform, transform,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
@@ -81,6 +82,6 @@ export const createInventoryItemsWorkflow = createWorkflow(
createInventoryLevelsWorkflow.runAsStep(inventoryLevelsInput) createInventoryLevelsWorkflow.runAsStep(inventoryLevelsInput)
return items return new WorkflowResponse(items)
} }
) )
@@ -1,5 +1,9 @@
import { InventoryLevelDTO, InventoryTypes } from "@medusajs/types" import { InventoryLevelDTO, InventoryTypes } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { import {
createInventoryLevelsStep, createInventoryLevelsStep,
validateInventoryLocationsStep, validateInventoryLocationsStep,
@@ -12,9 +16,13 @@ export const createInventoryLevelsWorkflowId =
"create-inventory-levels-workflow" "create-inventory-levels-workflow"
export const createInventoryLevelsWorkflow = createWorkflow( export const createInventoryLevelsWorkflow = createWorkflow(
createInventoryLevelsWorkflowId, createInventoryLevelsWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<InventoryLevelDTO[]> => { (
input: WorkflowData<WorkflowInput>
): WorkflowResponse<InventoryLevelDTO[]> => {
validateInventoryLocationsStep(input.inventory_levels) validateInventoryLocationsStep(input.inventory_levels)
return createInventoryLevelsStep(input.inventory_levels) return new WorkflowResponse(
createInventoryLevelsStep(input.inventory_levels)
)
} }
) )
@@ -1,4 +1,8 @@
import { createWorkflow, WorkflowData } from "@medusajs/workflows-sdk" import {
createWorkflow,
WorkflowData,
WorkflowResponse,
} from "@medusajs/workflows-sdk"
import { deleteInventoryItemStep } from "../steps" import { deleteInventoryItemStep } from "../steps"
import { removeRemoteLinkStep } from "../../common/steps/remove-remote-links" import { removeRemoteLinkStep } from "../../common/steps/remove-remote-links"
@@ -7,12 +11,11 @@ import { Modules } from "@medusajs/utils"
export const deleteInventoryItemWorkflowId = "delete-inventory-item-workflow" export const deleteInventoryItemWorkflowId = "delete-inventory-item-workflow"
export const deleteInventoryItemWorkflow = createWorkflow( export const deleteInventoryItemWorkflow = createWorkflow(
deleteInventoryItemWorkflowId, deleteInventoryItemWorkflowId,
(input: WorkflowData<string[]>): WorkflowData<string[]> => { (input: WorkflowData<string[]>): WorkflowResponse<string[]> => {
deleteInventoryItemStep(input) deleteInventoryItemStep(input)
removeRemoteLinkStep({ removeRemoteLinkStep({
[Modules.INVENTORY]: { inventory_item_id: input }, [Modules.INVENTORY]: { inventory_item_id: input },
}) })
return input return new WorkflowResponse(input)
} }
) )
@@ -1,4 +1,8 @@
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { deleteInventoryLevelsStep } from "../steps" import { deleteInventoryLevelsStep } from "../steps"
@@ -9,7 +13,7 @@ export const deleteInventoryLevelsWorkflowId =
"delete-inventory-levels-workflow" "delete-inventory-levels-workflow"
export const deleteInventoryLevelsWorkflow = createWorkflow( export const deleteInventoryLevelsWorkflow = createWorkflow(
deleteInventoryLevelsWorkflowId, deleteInventoryLevelsWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<string[]> => { (input: WorkflowData<WorkflowInput>): WorkflowResponse<string[]> => {
return deleteInventoryLevelsStep(input.ids) return new WorkflowResponse(deleteInventoryLevelsStep(input.ids))
} }
) )
@@ -1,4 +1,8 @@
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { InventoryTypes } from "@medusajs/types" import { InventoryTypes } from "@medusajs/types"
import { updateInventoryItemsStep } from "../steps" import { updateInventoryItemsStep } from "../steps"
@@ -11,7 +15,7 @@ export const updateInventoryItemsWorkflow = createWorkflow(
updateInventoryItemsWorkflowId, updateInventoryItemsWorkflowId,
( (
input: WorkflowData<WorkflowInput> input: WorkflowData<WorkflowInput>
): WorkflowData<InventoryTypes.InventoryItemDTO[]> => { ): WorkflowResponse<InventoryTypes.InventoryItemDTO[]> => {
return updateInventoryItemsStep(input.updates) return new WorkflowResponse(updateInventoryItemsStep(input.updates))
} }
) )
@@ -1,5 +1,9 @@
import { InventoryLevelDTO, InventoryTypes } from "@medusajs/types" import { InventoryLevelDTO, InventoryTypes } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { updateInventoryLevelsStep } from "../steps/update-inventory-levels" import { updateInventoryLevelsStep } from "../steps/update-inventory-levels"
@@ -10,7 +14,9 @@ export const updateInventoryLevelsWorkflowId =
"update-inventory-levels-workflow" "update-inventory-levels-workflow"
export const updateInventoryLevelsWorkflow = createWorkflow( export const updateInventoryLevelsWorkflow = createWorkflow(
updateInventoryLevelsWorkflowId, updateInventoryLevelsWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<InventoryLevelDTO[]> => { (
return updateInventoryLevelsStep(input.updates) input: WorkflowData<WorkflowInput>
): WorkflowResponse<InventoryLevelDTO[]> => {
return new WorkflowResponse(updateInventoryLevelsStep(input.updates))
} }
) )
@@ -1,6 +1,7 @@
import { InviteWorkflow, UserDTO } from "@medusajs/types" import { InviteWorkflow, UserDTO } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
transform, transform,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
@@ -14,7 +15,7 @@ export const acceptInviteWorkflow = createWorkflow(
acceptInviteWorkflowId, acceptInviteWorkflowId,
( (
input: WorkflowData<InviteWorkflow.AcceptInviteWorkflowInputDTO> input: WorkflowData<InviteWorkflow.AcceptInviteWorkflowInputDTO>
): WorkflowData<UserDTO[]> => { ): WorkflowResponse<UserDTO[]> => {
const invite = validateTokenStep(input.invite_token) const invite = validateTokenStep(input.invite_token)
const createUserInput = transform( const createUserInput = transform(
@@ -44,6 +45,6 @@ export const acceptInviteWorkflow = createWorkflow(
setAuthAppMetadataStep(authUserInput) setAuthAppMetadataStep(authUserInput)
deleteInvitesStep([invite.id]) deleteInvitesStep([invite.id])
return users return new WorkflowResponse(users)
} }
) )
@@ -1,4 +1,8 @@
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createInviteStep } from "../steps" import { createInviteStep } from "../steps"
import { InviteDTO, InviteWorkflow } from "@medusajs/types" import { InviteDTO, InviteWorkflow } from "@medusajs/types"
@@ -7,7 +11,7 @@ export const createInvitesWorkflow = createWorkflow(
createInvitesWorkflowId, createInvitesWorkflowId,
( (
input: WorkflowData<InviteWorkflow.CreateInvitesWorkflowInputDTO> input: WorkflowData<InviteWorkflow.CreateInvitesWorkflowInputDTO>
): WorkflowData<InviteDTO[]> => { ): WorkflowResponse<InviteDTO[]> => {
return createInviteStep(input.invites) return new WorkflowResponse(createInviteStep(input.invites))
} }
) )
@@ -1,5 +1,9 @@
import { InviteDTO, InviteWorkflow } from "@medusajs/types" import { InviteDTO, InviteWorkflow } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { refreshInviteTokensStep } from "../steps/refresh-invite-tokens" import { refreshInviteTokensStep } from "../steps/refresh-invite-tokens"
@@ -8,7 +12,7 @@ export const refreshInviteTokensWorkflow = createWorkflow(
refreshInviteTokensWorkflowId, refreshInviteTokensWorkflowId,
( (
input: WorkflowData<InviteWorkflow.ResendInvitesWorkflowInputDTO> input: WorkflowData<InviteWorkflow.ResendInvitesWorkflowInputDTO>
): WorkflowData<InviteDTO[]> => { ): WorkflowResponse<InviteDTO[]> => {
return refreshInviteTokensStep(input.invite_ids) return new WorkflowResponse(refreshInviteTokensStep(input.invite_ids))
} }
) )
@@ -2,6 +2,7 @@ import { OrderLineItemDTO, OrderWorkflow } from "@medusajs/types"
import { MathBN, MedusaError } from "@medusajs/utils" import { MathBN, MedusaError } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
transform, transform,
@@ -59,7 +60,7 @@ export const addOrderLineItemsWorkflow = createWorkflow(
addOrderLineItemsWorkflowId, addOrderLineItemsWorkflowId,
( (
input: WorkflowData<OrderWorkflow.OrderAddLineItemWorkflowInput> input: WorkflowData<OrderWorkflow.OrderAddLineItemWorkflowInput>
): WorkflowData<OrderLineItemDTO[]> => { ): WorkflowResponse<OrderLineItemDTO[]> => {
const order = useRemoteQueryStep({ const order = useRemoteQueryStep({
entry_point: "orders", entry_point: "orders",
fields: [ fields: [
@@ -141,8 +142,10 @@ export const addOrderLineItemsWorkflow = createWorkflow(
prepareLineItems prepareLineItems
) )
return createOrderLineItemsStep({ return new WorkflowResponse(
items: lineItems, createOrderLineItemsStep({
}) items: lineItems,
})
)
} }
) )
@@ -1,5 +1,9 @@
import { OrderDTO } from "@medusajs/types" import { OrderDTO } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { archiveOrdersStep } from "../steps" import { archiveOrdersStep } from "../steps"
type ArchiveOrdersStepInput = { type ArchiveOrdersStepInput = {
@@ -9,9 +13,9 @@ type ArchiveOrdersStepInput = {
export const archiveOrderWorkflowId = "archive-order-workflow" export const archiveOrderWorkflowId = "archive-order-workflow"
export const archiveOrderWorkflow = createWorkflow( export const archiveOrderWorkflow = createWorkflow(
archiveOrderWorkflowId, archiveOrderWorkflowId,
(input: WorkflowData<ArchiveOrdersStepInput>): WorkflowData<OrderDTO[]> => { (
const archivedOrders = archiveOrdersStep(input) input: WorkflowData<ArchiveOrdersStepInput>
): WorkflowResponse<OrderDTO[]> => {
return archivedOrders return new WorkflowResponse(archiveOrdersStep(input))
} }
) )
@@ -1,6 +1,7 @@
import { OrderChangeDTO, OrderDTO, OrderWorkflow } from "@medusajs/types" import { OrderChangeDTO, OrderDTO, OrderWorkflow } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -22,7 +23,7 @@ export const beginClaimOrderWorkflow = createWorkflow(
beginClaimOrderWorkflowId, beginClaimOrderWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.BeginOrderClaimWorkflowInput> input: WorkflowData<OrderWorkflow.BeginOrderClaimWorkflowInput>
): WorkflowData<OrderChangeDTO> { ): WorkflowResponse<OrderChangeDTO> {
const order: OrderDTO = useRemoteQueryStep({ const order: OrderDTO = useRemoteQueryStep({
entry_point: "orders", entry_point: "orders",
fields: ["id", "status"], fields: ["id", "status"],
@@ -54,6 +55,6 @@ export const beginClaimOrderWorkflow = createWorkflow(
} }
} }
) )
return createOrderChangeStep(orderChangeInput) return new WorkflowResponse(createOrderChangeStep(orderChangeInput))
} }
) )
@@ -7,6 +7,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -42,7 +43,7 @@ export const orderClaimAddNewItemWorkflow = createWorkflow(
orderClaimAddNewItemWorkflowId, orderClaimAddNewItemWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.OrderClaimAddNewItemWorkflowInput> input: WorkflowData<OrderWorkflow.OrderClaimAddNewItemWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderClaim = useRemoteQueryStep({ const orderClaim = useRemoteQueryStep({
entry_point: "order_claim", entry_point: "order_claim",
fields: ["id", "order_id", "canceled_at"], fields: ["id", "order_id", "canceled_at"],
@@ -109,6 +110,6 @@ export const orderClaimAddNewItemWorkflow = createWorkflow(
createOrderChangeActionsStep(orderChangeActionInput) createOrderChangeActionsStep(orderChangeActionInput)
return previewOrderChangeStep(orderClaim.order_id) return new WorkflowResponse(previewOrderChangeStep(orderClaim.order_id))
} }
) )
@@ -7,6 +7,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -41,7 +42,7 @@ export const orderClaimItemWorkflow = createWorkflow(
orderClaimItemWorkflowId, orderClaimItemWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.OrderClaimItemWorkflowInput> input: WorkflowData<OrderWorkflow.OrderClaimItemWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderClaim = useRemoteQueryStep({ const orderClaim = useRemoteQueryStep({
entry_point: "order_claim", entry_point: "order_claim",
fields: ["id", "order_id", "canceled_at"], fields: ["id", "order_id", "canceled_at"],
@@ -100,6 +101,6 @@ export const orderClaimItemWorkflow = createWorkflow(
createOrderChangeActionsStep(orderChangeActionInput) createOrderChangeActionsStep(orderChangeActionInput)
return previewOrderChangeStep(orderClaim.order_id) return new WorkflowResponse(previewOrderChangeStep(orderClaim.order_id))
} }
) )
@@ -8,6 +8,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -52,7 +53,7 @@ export const orderClaimRequestItemReturnWorkflow = createWorkflow(
orderClaimRequestItemReturnWorkflowId, orderClaimRequestItemReturnWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.OrderClaimRequestItemReturnWorkflowInput> input: WorkflowData<OrderWorkflow.OrderClaimRequestItemReturnWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderClaim = useRemoteQueryStep({ const orderClaim = useRemoteQueryStep({
entry_point: "order_claim", entry_point: "order_claim",
fields: ["id", "order_id", "return_id", "canceled_at"], fields: ["id", "order_id", "return_id", "canceled_at"],
@@ -165,6 +166,6 @@ export const orderClaimRequestItemReturnWorkflow = createWorkflow(
createOrderChangeActionsStep(orderChangeActionInput) createOrderChangeActionsStep(orderChangeActionInput)
return previewOrderChangeStep(orderClaim.order_id) return new WorkflowResponse(previewOrderChangeStep(orderClaim.order_id))
} }
) )
@@ -8,6 +8,7 @@ import {
import { ChangeActionType, Modules, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, Modules, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
parallelize, parallelize,
@@ -167,7 +168,7 @@ function extractShippingOption({ orderPreview, orderClaim, returnId }) {
export const confirmClaimRequestWorkflowId = "confirm-claim-request" export const confirmClaimRequestWorkflowId = "confirm-claim-request"
export const confirmClaimRequestWorkflow = createWorkflow( export const confirmClaimRequestWorkflow = createWorkflow(
confirmClaimRequestWorkflowId, confirmClaimRequestWorkflowId,
function (input: WorkflowInput): WorkflowData<OrderDTO> { function (input: WorkflowInput): WorkflowResponse<OrderDTO> {
const orderClaim: OrderClaimDTO = useRemoteQueryStep({ const orderClaim: OrderClaimDTO = useRemoteQueryStep({
entry_point: "order_claim", entry_point: "order_claim",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -356,6 +357,6 @@ export const confirmClaimRequestWorkflow = createWorkflow(
}) })
}) })
return orderPreview return new WorkflowResponse(orderPreview)
} }
) )
@@ -7,6 +7,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -46,7 +47,7 @@ export const createClaimShippingMethodWorkflow = createWorkflow(
claim_id?: string claim_id?: string
shipping_option_id: string shipping_option_id: string
custom_price?: BigNumberInput custom_price?: BigNumberInput
}): WorkflowData<OrderDTO> { }): WorkflowResponse<OrderDTO> {
const orderClaim: OrderClaimDTO = useRemoteQueryStep({ const orderClaim: OrderClaimDTO = useRemoteQueryStep({
entry_point: "order_claim", entry_point: "order_claim",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -164,6 +165,6 @@ export const createClaimShippingMethodWorkflow = createWorkflow(
createOrderChangeActionsStep([orderChangeActionInput]) createOrderChangeActionsStep([orderChangeActionInput])
return previewOrderChangeStep(order.id) return new WorkflowResponse(previewOrderChangeStep(order.id))
} }
) )
@@ -8,6 +8,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
@@ -57,7 +58,7 @@ export const removeItemClaimActionWorkflow = createWorkflow(
removeItemClaimActionWorkflowId, removeItemClaimActionWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.DeleteOrderClaimItemActionWorkflowInput> input: WorkflowData<OrderWorkflow.DeleteOrderClaimItemActionWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderClaim: OrderClaimDTO = useRemoteQueryStep({ const orderClaim: OrderClaimDTO = useRemoteQueryStep({
entry_point: "order_claim", entry_point: "order_claim",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -91,6 +92,6 @@ export const removeItemClaimActionWorkflow = createWorkflow(
deleteOrderChangeActionsStep({ ids: [input.action_id] }) deleteOrderChangeActionsStep({ ids: [input.action_id] })
return previewOrderChangeStep(order.id) return new WorkflowResponse(previewOrderChangeStep(order.id))
} }
) )
@@ -2,11 +2,13 @@ import {
OrderChangeActionDTO, OrderChangeActionDTO,
OrderChangeDTO, OrderChangeDTO,
OrderClaimDTO, OrderClaimDTO,
OrderDTO,
OrderWorkflow, OrderWorkflow,
} from "@medusajs/types" } from "@medusajs/types"
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
parallelize, parallelize,
@@ -57,7 +59,7 @@ export const removeClaimShippingMethodWorkflow = createWorkflow(
removeClaimShippingMethodWorkflowId, removeClaimShippingMethodWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.DeleteClaimShippingMethodWorkflowInput> input: WorkflowData<OrderWorkflow.DeleteClaimShippingMethodWorkflowInput>
): WorkflowData { ): WorkflowResponse<OrderDTO> {
const orderClaim: OrderClaimDTO = useRemoteQueryStep({ const orderClaim: OrderClaimDTO = useRemoteQueryStep({
entry_point: "order_claim", entry_point: "order_claim",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -100,6 +102,6 @@ export const removeClaimShippingMethodWorkflow = createWorkflow(
deleteOrderShippingMethods({ ids: [dataToRemove.shippingMethodId] }) deleteOrderShippingMethods({ ids: [dataToRemove.shippingMethodId] })
) )
return previewOrderChangeStep(orderClaim.order_id) return new WorkflowResponse(previewOrderChangeStep(orderClaim.order_id))
} }
) )
@@ -8,6 +8,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -61,7 +62,7 @@ export const updateClaimAddItemWorkflow = createWorkflow(
updateClaimAddItemWorkflowId, updateClaimAddItemWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.UpdateClaimAddNewItemWorkflowInput> input: WorkflowData<OrderWorkflow.UpdateClaimAddNewItemWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderClaim: OrderClaimDTO = useRemoteQueryStep({ const orderClaim: OrderClaimDTO = useRemoteQueryStep({
entry_point: "order_claim", entry_point: "order_claim",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -113,6 +114,6 @@ export const updateClaimAddItemWorkflow = createWorkflow(
updateOrderChangeActionsStep([updateData]) updateOrderChangeActionsStep([updateData])
return previewOrderChangeStep(order.id) return new WorkflowResponse(previewOrderChangeStep(order.id))
} }
) )
@@ -8,6 +8,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -61,7 +62,7 @@ export const updateClaimItemWorkflow = createWorkflow(
updateClaimItemWorkflowId, updateClaimItemWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.UpdateClaimItemWorkflowInput> input: WorkflowData<OrderWorkflow.UpdateClaimItemWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderClaim: OrderClaimDTO = useRemoteQueryStep({ const orderClaim: OrderClaimDTO = useRemoteQueryStep({
entry_point: "order_claim", entry_point: "order_claim",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -113,6 +114,6 @@ export const updateClaimItemWorkflow = createWorkflow(
updateOrderChangeActionsStep([updateData]) updateOrderChangeActionsStep([updateData])
return previewOrderChangeStep(order.id) return new WorkflowResponse(previewOrderChangeStep(order.id))
} }
) )
@@ -2,11 +2,13 @@ import {
OrderChangeActionDTO, OrderChangeActionDTO,
OrderChangeDTO, OrderChangeDTO,
OrderClaimDTO, OrderClaimDTO,
OrderDTO,
OrderWorkflow, OrderWorkflow,
} from "@medusajs/types" } from "@medusajs/types"
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
parallelize, parallelize,
@@ -59,7 +61,7 @@ export const updateClaimShippingMethodWorkflow = createWorkflow(
updateClaimShippingMethodWorkflowId, updateClaimShippingMethodWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.UpdateClaimShippingMethodWorkflowInput> input: WorkflowData<OrderWorkflow.UpdateClaimShippingMethodWorkflowInput>
): WorkflowData { ): WorkflowResponse<OrderDTO> {
const orderClaim: OrderClaimDTO = useRemoteQueryStep({ const orderClaim: OrderClaimDTO = useRemoteQueryStep({
entry_point: "order_claim", entry_point: "order_claim",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -115,6 +117,6 @@ export const updateClaimShippingMethodWorkflow = createWorkflow(
updateOrderShippingMethodsStep([updateData.shippingMethod!]) updateOrderShippingMethodsStep([updateData.shippingMethod!])
) )
return previewOrderChangeStep(orderClaim.order_id) return new WorkflowResponse(previewOrderChangeStep(orderClaim.order_id))
} }
) )
@@ -1,5 +1,9 @@
import { OrderDTO } from "@medusajs/types" import { OrderDTO } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { completeOrdersStep } from "../steps" import { completeOrdersStep } from "../steps"
type CompleteOrdersStepInput = { type CompleteOrdersStepInput = {
@@ -9,12 +13,9 @@ type CompleteOrdersStepInput = {
export const completeOrderWorkflowId = "complete-order-workflow" export const completeOrderWorkflowId = "complete-order-workflow"
export const completeOrderWorkflow = createWorkflow( export const completeOrderWorkflow = createWorkflow(
completeOrderWorkflowId, completeOrderWorkflowId,
(input: WorkflowData<CompleteOrdersStepInput>): WorkflowData<OrderDTO[]> => { (
const completedOrders = completeOrdersStep(input) input: WorkflowData<CompleteOrdersStepInput>
): WorkflowResponse<OrderDTO[]> => {
// TODO: Emit event "OrderModuleService.Order.COMPLETED" return new WorkflowResponse(completeOrdersStep(input))
// id + no_notification
return completedOrders
} }
) )
@@ -9,6 +9,7 @@ import {
import { MathBN, MedusaError, Modules } from "@medusajs/utils" import { MathBN, MedusaError, Modules } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
parallelize, parallelize,
@@ -193,7 +194,7 @@ export const createOrderFulfillmentWorkflow = createWorkflow(
createOrderFulfillmentWorkflowId, createOrderFulfillmentWorkflowId,
( (
input: WorkflowData<OrderWorkflow.CreateOrderFulfillmentWorkflowInput> input: WorkflowData<OrderWorkflow.CreateOrderFulfillmentWorkflowInput>
): WorkflowData<FulfillmentDTO> => { ): WorkflowResponse<FulfillmentDTO> => {
const order: OrderDTO = useRemoteQueryStep({ const order: OrderDTO = useRemoteQueryStep({
entry_point: "orders", entry_point: "orders",
fields: [ fields: [
@@ -296,6 +297,6 @@ export const createOrderFulfillmentWorkflow = createWorkflow(
) )
// trigger event OrderModuleService.Events.FULFILLMENT_CREATED // trigger event OrderModuleService.Events.FULFILLMENT_CREATED
return fulfillment return new WorkflowResponse(fulfillment)
} }
) )
@@ -2,7 +2,11 @@ import {
CreateOrderChangeActionDTO, CreateOrderChangeActionDTO,
OrderChangeActionDTO, OrderChangeActionDTO,
} from "@medusajs/types" } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createOrderChangeActionsStep } from "../steps" import { createOrderChangeActionsStep } from "../steps"
export const createOrderChangeActionsWorkflowId = "create-order-change-actions" export const createOrderChangeActionsWorkflowId = "create-order-change-actions"
@@ -10,7 +14,7 @@ export const createOrderChangeActionsWorkflow = createWorkflow(
createOrderChangeActionsWorkflowId, createOrderChangeActionsWorkflowId,
( (
input: WorkflowData<CreateOrderChangeActionDTO[]> input: WorkflowData<CreateOrderChangeActionDTO[]>
): WorkflowData<OrderChangeActionDTO[]> => { ): WorkflowResponse<OrderChangeActionDTO[]> => {
return createOrderChangeActionsStep(input) return new WorkflowResponse(createOrderChangeActionsStep(input))
} }
) )
@@ -1,11 +1,17 @@
import { CreateOrderChangeDTO, OrderChangeDTO } from "@medusajs/types" import { CreateOrderChangeDTO, OrderChangeDTO } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createOrderChangeStep } from "../steps" import { createOrderChangeStep } from "../steps"
export const createOrderChangeWorkflowId = "create-order-change" export const createOrderChangeWorkflowId = "create-order-change"
export const createOrderChangeWorkflow = createWorkflow( export const createOrderChangeWorkflow = createWorkflow(
createOrderChangeWorkflowId, createOrderChangeWorkflowId,
(input: WorkflowData<CreateOrderChangeDTO>): WorkflowData<OrderChangeDTO> => { (
return createOrderChangeStep(input) input: WorkflowData<CreateOrderChangeDTO>
): WorkflowResponse<OrderChangeDTO> => {
return new WorkflowResponse(createOrderChangeStep(input))
} }
) )
@@ -2,6 +2,7 @@ import { CreateOrderDTO, OrderDTO } from "@medusajs/types"
import { MathBN, MedusaError, isPresent } from "@medusajs/utils" import { MathBN, MedusaError, isPresent } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
transform, transform,
@@ -84,7 +85,7 @@ function getOrderInput(data) {
export const createOrdersWorkflowId = "create-orders" export const createOrdersWorkflowId = "create-orders"
export const createOrdersWorkflow = createWorkflow( export const createOrdersWorkflow = createWorkflow(
createOrdersWorkflowId, createOrdersWorkflowId,
(input: WorkflowData<CreateOrderDTO>): WorkflowData<OrderDTO> => { (input: WorkflowData<CreateOrderDTO>): WorkflowResponse<OrderDTO> => {
const variantIds = transform({ input }, (data) => { const variantIds = transform({ input }, (data) => {
return (data.input.items ?? []) return (data.input.items ?? [])
.map((item) => item.variant_id) .map((item) => item.variant_id)
@@ -176,6 +177,6 @@ export const createOrdersWorkflow = createWorkflow(
updateOrderTaxLinesStep({ order_id: order.id }) updateOrderTaxLinesStep({ order_id: order.id })
return order return new WorkflowResponse(order)
} }
) )
@@ -1,6 +1,7 @@
import { OrderChangeDTO, OrderDTO, OrderWorkflow } from "@medusajs/types" import { OrderChangeDTO, OrderDTO, OrderWorkflow } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -22,7 +23,7 @@ export const beginExchangeOrderWorkflow = createWorkflow(
beginExchangeOrderWorkflowId, beginExchangeOrderWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.BeginOrderExchangeWorkflowInput> input: WorkflowData<OrderWorkflow.BeginOrderExchangeWorkflowInput>
): WorkflowData<OrderChangeDTO> { ): WorkflowResponse<OrderChangeDTO> {
const order: OrderDTO = useRemoteQueryStep({ const order: OrderDTO = useRemoteQueryStep({
entry_point: "orders", entry_point: "orders",
fields: ["id", "status"], fields: ["id", "status"],
@@ -53,6 +54,6 @@ export const beginExchangeOrderWorkflow = createWorkflow(
} }
} }
) )
return createOrderChangeStep(orderChangeInput) return new WorkflowResponse(createOrderChangeStep(orderChangeInput))
} }
) )
@@ -1,5 +1,6 @@
import { import {
BigNumberInput, BigNumberInput,
OrderChangeActionDTO,
OrderChangeDTO, OrderChangeDTO,
OrderDTO, OrderDTO,
OrderExchangeDTO, OrderExchangeDTO,
@@ -7,6 +8,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -41,7 +43,7 @@ export const createExchangeReturnShippingMethodWorkflow = createWorkflow(
exchangeId: string exchangeId: string
shippingOptionId: string shippingOptionId: string
customShippingPrice?: BigNumberInput customShippingPrice?: BigNumberInput
}): WorkflowData { }): WorkflowResponse<OrderChangeActionDTO[]> {
const orderExchange: OrderExchangeDTO = useRemoteQueryStep({ const orderExchange: OrderExchangeDTO = useRemoteQueryStep({
entry_point: "order_exchange", entry_point: "order_exchange",
fields: ["id", "status", "order_id", "return_id"], fields: ["id", "status", "order_id", "return_id"],
@@ -148,6 +150,7 @@ export const createExchangeReturnShippingMethodWorkflow = createWorkflow(
} }
) )
return createOrderChangeActionsStep([orderChangeActionInput]) const response = createOrderChangeActionsStep([orderChangeActionInput])
return new WorkflowResponse(response)
} }
) )
@@ -7,6 +7,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -43,7 +44,7 @@ export const orderExchangeAddNewItemWorkflow = createWorkflow(
orderExchangeAddNewItemWorkflowId, orderExchangeAddNewItemWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.OrderExchangeAddNewItemWorkflowInput> input: WorkflowData<OrderWorkflow.OrderExchangeAddNewItemWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderExchange = useRemoteQueryStep({ const orderExchange = useRemoteQueryStep({
entry_point: "order_exchange", entry_point: "order_exchange",
fields: ["id", "order_id", "canceled_at"], fields: ["id", "order_id", "canceled_at"],
@@ -110,6 +111,6 @@ export const orderExchangeAddNewItemWorkflow = createWorkflow(
createOrderChangeActionsStep(orderChangeActionInput) createOrderChangeActionsStep(orderChangeActionInput)
return previewOrderChangeStep(orderExchange.order_id) return new WorkflowResponse(previewOrderChangeStep(orderExchange.order_id))
} }
) )
@@ -12,6 +12,7 @@ import {
transform, transform,
when, when,
WorkflowData, WorkflowData,
WorkflowResponse,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { useRemoteQueryStep } from "../../../common" import { useRemoteQueryStep } from "../../../common"
import { createOrderChangeActionsStep } from "../../steps/create-order-change-actions" import { createOrderChangeActionsStep } from "../../steps/create-order-change-actions"
@@ -54,7 +55,7 @@ export const orderExchangeRequestItemReturnWorkflow = createWorkflow(
orderExchangeRequestItemReturnWorkflowId, orderExchangeRequestItemReturnWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.OrderExchangeRequestItemReturnWorkflowInput> input: WorkflowData<OrderWorkflow.OrderExchangeRequestItemReturnWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderExchange = useRemoteQueryStep({ const orderExchange = useRemoteQueryStep({
entry_point: "order_exchange", entry_point: "order_exchange",
fields: ["id", "order_id", "return_id", "canceled_at"], fields: ["id", "order_id", "return_id", "canceled_at"],
@@ -163,6 +164,6 @@ export const orderExchangeRequestItemReturnWorkflow = createWorkflow(
createOrderChangeActionsStep(orderChangeActionInput) createOrderChangeActionsStep(orderChangeActionInput)
return previewOrderChangeStep(orderExchange.order_id) return new WorkflowResponse(previewOrderChangeStep(orderExchange.order_id))
} }
) )
@@ -2,6 +2,7 @@ import { OrderDTO, OrderDetailDTO } from "@medusajs/types"
import { deduplicate } from "@medusajs/utils" import { deduplicate } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
transform, transform,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
@@ -19,7 +20,7 @@ export const getOrderDetailWorkflow = createWorkflow(
fields: string[] fields: string[]
order_id: string order_id: string
}> }>
): WorkflowData<OrderDetailDTO> => { ): WorkflowResponse<OrderDetailDTO> => {
const fields = transform(input, ({ fields }) => { const fields = transform(input, ({ fields }) => {
return deduplicate([ return deduplicate([
...fields, ...fields,
@@ -51,6 +52,6 @@ export const getOrderDetailWorkflow = createWorkflow(
return order_ return order_
}) })
return aggregatedOrder return new WorkflowResponse(aggregatedOrder)
} }
) )
@@ -2,6 +2,7 @@ import { OrderDTO, OrderDetailDTO } from "@medusajs/types"
import { deduplicate } from "@medusajs/utils" import { deduplicate } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
transform, transform,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
@@ -26,7 +27,7 @@ export const getOrdersListWorkflow = createWorkflow(
fields: string[] fields: string[]
variables?: Record<string, any> variables?: Record<string, any>
}> }>
): WorkflowData<OrderOutput> => { ): WorkflowResponse<OrderOutput> => {
const fields = transform(input, ({ fields }) => { const fields = transform(input, ({ fields }) => {
return deduplicate([ return deduplicate([
...fields, ...fields,
@@ -89,6 +90,6 @@ export const getOrdersListWorkflow = createWorkflow(
} }
) )
return aggregatedOrders return new WorkflowResponse(aggregatedOrders)
} }
) )
@@ -6,6 +6,7 @@ import {
} from "@medusajs/types" } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -36,7 +37,7 @@ export const beginReceiveReturnWorkflow = createWorkflow(
beginReceiveReturnWorkflowId, beginReceiveReturnWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.BeginReceiveOrderReturnWorkflowInput> input: WorkflowData<OrderWorkflow.BeginReceiveOrderReturnWorkflowInput>
): WorkflowData<OrderChangeDTO> { ): WorkflowResponse<OrderChangeDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -68,6 +69,6 @@ export const beginReceiveReturnWorkflow = createWorkflow(
} }
} }
) )
return createOrderChangeStep(orderChangeInput) return new WorkflowResponse(createOrderChangeStep(orderChangeInput))
} }
) )
@@ -1,6 +1,7 @@
import { OrderChangeDTO, OrderDTO, OrderWorkflow } from "@medusajs/types" import { OrderChangeDTO, OrderDTO, OrderWorkflow } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -21,7 +22,7 @@ export const beginReturnOrderWorkflow = createWorkflow(
beginReturnOrderWorkflowId, beginReturnOrderWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.BeginOrderReturnWorkflowInput> input: WorkflowData<OrderWorkflow.BeginOrderReturnWorkflowInput>
): WorkflowData<OrderChangeDTO> { ): WorkflowResponse<OrderChangeDTO> {
const order: OrderDTO = useRemoteQueryStep({ const order: OrderDTO = useRemoteQueryStep({
entry_point: "orders", entry_point: "orders",
fields: ["id", "status"], fields: ["id", "status"],
@@ -53,6 +54,6 @@ export const beginReturnOrderWorkflow = createWorkflow(
} }
} }
) )
return createOrderChangeStep(orderChangeInput) return new WorkflowResponse(createOrderChangeStep(orderChangeInput))
} }
) )
@@ -15,6 +15,7 @@ import {
} from "@medusajs/utils" } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
parallelize, parallelize,
@@ -128,7 +129,7 @@ function prepareInventoryUpdate({ orderReturn, returnedQuantityMap }) {
export const confirmReturnReceiveWorkflowId = "confirm-return-receive" export const confirmReturnReceiveWorkflowId = "confirm-return-receive"
export const confirmReturnReceiveWorkflow = createWorkflow( export const confirmReturnReceiveWorkflow = createWorkflow(
confirmReturnReceiveWorkflowId, confirmReturnReceiveWorkflowId,
function (input: WorkflowInput): WorkflowData<OrderDTO> { function (input: WorkflowInput): WorkflowResponse<OrderDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: [ fields: [
@@ -276,6 +277,6 @@ export const confirmReturnReceiveWorkflow = createWorkflow(
adjustInventoryLevelsStep(inventoryAdjustment) adjustInventoryLevelsStep(inventoryAdjustment)
) )
return previewOrderChangeStep(order.id) return new WorkflowResponse(previewOrderChangeStep(order.id))
} }
) )
@@ -7,6 +7,7 @@ import {
import { ChangeActionType, Modules, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, Modules, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -124,7 +125,7 @@ function extractReturnShippingOptionId({ orderPreview, orderReturn }) {
export const confirmReturnRequestWorkflowId = "confirm-return-request" export const confirmReturnRequestWorkflowId = "confirm-return-request"
export const confirmReturnRequestWorkflow = createWorkflow( export const confirmReturnRequestWorkflow = createWorkflow(
confirmReturnRequestWorkflowId, confirmReturnRequestWorkflowId,
function (input: WorkflowInput): WorkflowData<OrderDTO> { function (input: WorkflowInput): WorkflowResponse<OrderDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: ["id", "status", "order_id", "location_id", "canceled_at"], fields: ["id", "status", "order_id", "location_id", "canceled_at"],
@@ -234,6 +235,6 @@ export const confirmReturnRequestWorkflow = createWorkflow(
confirmOrderChanges({ changes: [orderChange], orderId: order.id }) confirmOrderChanges({ changes: [orderChange], orderId: order.id })
return orderPreview return new WorkflowResponse(orderPreview)
} }
) )
@@ -7,6 +7,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -47,7 +48,7 @@ export const createReturnShippingMethodWorkflow = createWorkflow(
exchange_id?: string exchange_id?: string
shipping_option_id: string shipping_option_id: string
custom_price?: BigNumberInput custom_price?: BigNumberInput
}): WorkflowData<OrderDTO> { }): WorkflowResponse<OrderDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -167,6 +168,6 @@ export const createReturnShippingMethodWorkflow = createWorkflow(
createOrderChangeActionsStep([orderChangeActionInput]) createOrderChangeActionsStep([orderChangeActionInput])
return previewOrderChangeStep(order.id) return new WorkflowResponse(previewOrderChangeStep(order.id))
} }
) )
@@ -7,6 +7,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -48,7 +49,7 @@ export const dismissItemReturnRequestWorkflow = createWorkflow(
dismissItemReturnRequestWorkflowId, dismissItemReturnRequestWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.ReceiveOrderReturnItemsWorkflowInput> input: WorkflowData<OrderWorkflow.ReceiveOrderReturnItemsWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: ["id", "status", "order_id", "canceled_at", "items.*"], fields: ["id", "status", "order_id", "canceled_at", "items.*"],
@@ -102,6 +103,6 @@ export const dismissItemReturnRequestWorkflow = createWorkflow(
createOrderChangeActionsStep(orderChangeActionInput) createOrderChangeActionsStep(orderChangeActionInput)
return previewOrderChangeStep(order.id) return new WorkflowResponse(previewOrderChangeStep(order.id))
} }
) )
@@ -1,6 +1,7 @@
import { OrderWorkflow } from "@medusajs/types" import { OrderWorkflow } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
@@ -35,7 +36,7 @@ export const receiveAndCompleteReturnOrderWorkflow = createWorkflow(
receiveAndCompleteReturnOrderWorkflowId, receiveAndCompleteReturnOrderWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.ReceiveCompleteOrderReturnWorkflowInput> input: WorkflowData<OrderWorkflow.ReceiveCompleteOrderReturnWorkflowInput>
): WorkflowData<ReturnDTO> { ): WorkflowResponse<ReturnDTO | undefined> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "returns", entry_point: "returns",
fields: ["id", "canceled_at", "items.*"], fields: ["id", "canceled_at", "items.*"],
@@ -46,8 +47,6 @@ export const receiveAndCompleteReturnOrderWorkflow = createWorkflow(
validationStep({ orderReturn, input }) validationStep({ orderReturn, input })
const received = receiveReturnStep(input) return new WorkflowResponse(receiveReturnStep(input))
return received
} }
) )
@@ -7,6 +7,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -48,7 +49,7 @@ export const receiveItemReturnRequestWorkflow = createWorkflow(
receiveItemReturnRequestWorkflowId, receiveItemReturnRequestWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.ReceiveOrderReturnItemsWorkflowInput> input: WorkflowData<OrderWorkflow.ReceiveOrderReturnItemsWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: ["id", "status", "order_id", "canceled_at", "items.*"], fields: ["id", "status", "order_id", "canceled_at", "items.*"],
@@ -102,6 +103,6 @@ export const receiveItemReturnRequestWorkflow = createWorkflow(
createOrderChangeActionsStep(orderChangeActionInput) createOrderChangeActionsStep(orderChangeActionInput)
return previewOrderChangeStep(order.id) return new WorkflowResponse(previewOrderChangeStep(order.id))
} }
) )
@@ -8,6 +8,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
@@ -65,7 +66,7 @@ export const removeItemReceiveReturnActionWorkflow = createWorkflow(
removeItemReceiveReturnActionWorkflowId, removeItemReceiveReturnActionWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.DeleteRequestItemReceiveReturnWorkflowInput> input: WorkflowData<OrderWorkflow.DeleteRequestItemReceiveReturnWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -99,6 +100,6 @@ export const removeItemReceiveReturnActionWorkflow = createWorkflow(
deleteOrderChangeActionsStep({ ids: [input.action_id] }) deleteOrderChangeActionsStep({ ids: [input.action_id] })
return previewOrderChangeStep(order.id) return new WorkflowResponse(previewOrderChangeStep(order.id))
} }
) )
@@ -8,6 +8,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
@@ -59,7 +60,7 @@ export const removeItemReturnActionWorkflow = createWorkflow(
removeItemReturnActionWorkflowId, removeItemReturnActionWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.DeleteRequestItemReturnWorkflowInput> input: WorkflowData<OrderWorkflow.DeleteRequestItemReturnWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -93,6 +94,6 @@ export const removeItemReturnActionWorkflow = createWorkflow(
deleteOrderChangeActionsStep({ ids: [input.action_id] }) deleteOrderChangeActionsStep({ ids: [input.action_id] })
return previewOrderChangeStep(order.id) return new WorkflowResponse(previewOrderChangeStep(order.id))
} }
) )
@@ -1,12 +1,14 @@
import { import {
OrderChangeActionDTO, OrderChangeActionDTO,
OrderChangeDTO, OrderChangeDTO,
OrderDTO,
OrderWorkflow, OrderWorkflow,
ReturnDTO, ReturnDTO,
} from "@medusajs/types" } from "@medusajs/types"
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
parallelize, parallelize,
@@ -57,7 +59,7 @@ export const removeReturnShippingMethodWorkflow = createWorkflow(
removeReturnShippingMethodWorkflowId, removeReturnShippingMethodWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.DeleteReturnShippingMethodWorkflowInput> input: WorkflowData<OrderWorkflow.DeleteReturnShippingMethodWorkflowInput>
): WorkflowData { ): WorkflowResponse<OrderDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -100,6 +102,6 @@ export const removeReturnShippingMethodWorkflow = createWorkflow(
deleteOrderShippingMethods({ ids: [dataToRemove.shippingMethodId] }) deleteOrderShippingMethods({ ids: [dataToRemove.shippingMethodId] })
) )
return previewOrderChangeStep(orderReturn.order_id) return new WorkflowResponse(previewOrderChangeStep(orderReturn.order_id))
} }
) )
@@ -7,6 +7,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -54,7 +55,7 @@ export const requestItemReturnWorkflow = createWorkflow(
requestItemReturnWorkflowId, requestItemReturnWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.RequestItemReturnWorkflowInput> input: WorkflowData<OrderWorkflow.RequestItemReturnWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -110,6 +111,6 @@ export const requestItemReturnWorkflow = createWorkflow(
createOrderChangeActionsStep(orderChangeActionInput) createOrderChangeActionsStep(orderChangeActionInput)
return previewOrderChangeStep(order.id) return new WorkflowResponse(previewOrderChangeStep(order.id))
} }
) )
@@ -8,6 +8,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -69,7 +70,7 @@ export const updateReceiveItemReturnRequestWorkflow = createWorkflow(
updateReceiveItemReturnRequestWorkflowId, updateReceiveItemReturnRequestWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.UpdateReceiveItemReturnRequestWorkflowInput> input: WorkflowData<OrderWorkflow.UpdateReceiveItemReturnRequestWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -121,6 +122,6 @@ export const updateReceiveItemReturnRequestWorkflow = createWorkflow(
updateOrderChangeActionsStep([updateData]) updateOrderChangeActionsStep([updateData])
return previewOrderChangeStep(order.id) return new WorkflowResponse(previewOrderChangeStep(order.id))
} }
) )
@@ -8,6 +8,7 @@ import {
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -74,7 +75,7 @@ export const updateRequestItemReturnWorkflow = createWorkflow(
updateRequestItemReturnWorkflowId, updateRequestItemReturnWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.UpdateRequestItemReturnWorkflowInput> input: WorkflowData<OrderWorkflow.UpdateRequestItemReturnWorkflowInput>
): WorkflowData<OrderDTO> { ): WorkflowResponse<OrderDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -127,6 +128,6 @@ export const updateRequestItemReturnWorkflow = createWorkflow(
updateOrderChangeActionsStep([updateData]) updateOrderChangeActionsStep([updateData])
return previewOrderChangeStep(order.id) return new WorkflowResponse(previewOrderChangeStep(order.id))
} }
) )
@@ -1,12 +1,14 @@
import { import {
OrderChangeActionDTO, OrderChangeActionDTO,
OrderChangeDTO, OrderChangeDTO,
OrderDTO,
OrderWorkflow, OrderWorkflow,
ReturnDTO, ReturnDTO,
} from "@medusajs/types" } from "@medusajs/types"
import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils" import { ChangeActionType, OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
parallelize, parallelize,
@@ -59,7 +61,7 @@ export const updateReturnShippingMethodWorkflow = createWorkflow(
updateReturnShippingMethodWorkflowId, updateReturnShippingMethodWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.UpdateReturnShippingMethodWorkflowInput> input: WorkflowData<OrderWorkflow.UpdateReturnShippingMethodWorkflowInput>
): WorkflowData { ): WorkflowResponse<OrderDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -115,6 +117,6 @@ export const updateReturnShippingMethodWorkflow = createWorkflow(
updateOrderShippingMethodsStep([updateData.shippingMethod!]) updateOrderShippingMethodsStep([updateData.shippingMethod!])
) )
return previewOrderChangeStep(orderReturn.order_id) return new WorkflowResponse(previewOrderChangeStep(orderReturn.order_id))
} }
) )
@@ -1,7 +1,13 @@
import { OrderChangeDTO, OrderWorkflow, ReturnDTO } from "@medusajs/types" import {
OrderChangeDTO,
OrderDTO,
OrderWorkflow,
ReturnDTO,
} from "@medusajs/types"
import { OrderChangeStatus } from "@medusajs/utils" import { OrderChangeStatus } from "@medusajs/utils"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createStep, createStep,
createWorkflow, createWorkflow,
transform, transform,
@@ -33,7 +39,7 @@ export const updateReturnWorkflow = createWorkflow(
updateReturnWorkflowId, updateReturnWorkflowId,
function ( function (
input: WorkflowData<OrderWorkflow.UpdateReturnWorkflowInput> input: WorkflowData<OrderWorkflow.UpdateReturnWorkflowInput>
): WorkflowData { ): WorkflowResponse<OrderDTO> {
const orderReturn: ReturnDTO = useRemoteQueryStep({ const orderReturn: ReturnDTO = useRemoteQueryStep({
entry_point: "return", entry_point: "return",
fields: ["id", "status", "order_id", "canceled_at"], fields: ["id", "status", "order_id", "canceled_at"],
@@ -68,6 +74,6 @@ export const updateReturnWorkflow = createWorkflow(
updateReturnsStep([updateData]) updateReturnsStep([updateData])
return previewOrderChangeStep(orderReturn.order_id) return new WorkflowResponse(previewOrderChangeStep(orderReturn.order_id))
} }
) )
@@ -2,7 +2,11 @@ import {
OrderChangeActionDTO, OrderChangeActionDTO,
UpdateOrderChangeActionDTO, UpdateOrderChangeActionDTO,
} from "@medusajs/types" } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { updateOrderChangeActionsStep } from "../steps" import { updateOrderChangeActionsStep } from "../steps"
export const updateOrderChangeActionsWorkflowId = "update-order-change-actions" export const updateOrderChangeActionsWorkflowId = "update-order-change-actions"
@@ -10,7 +14,7 @@ export const updateOrderChangeActionsWorkflow = createWorkflow(
updateOrderChangeActionsWorkflowId, updateOrderChangeActionsWorkflowId,
( (
input: WorkflowData<UpdateOrderChangeActionDTO[]> input: WorkflowData<UpdateOrderChangeActionDTO[]>
): WorkflowData<OrderChangeActionDTO[]> => { ): WorkflowResponse<OrderChangeActionDTO[]> => {
return updateOrderChangeActionsStep(input) return new WorkflowResponse(updateOrderChangeActionsStep(input))
} }
) )
@@ -1,6 +1,7 @@
import { PaymentProviderContext, PaymentSessionDTO } from "@medusajs/types" import { PaymentProviderContext, PaymentSessionDTO } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
transform, transform,
@@ -19,7 +20,7 @@ interface WorkflowInput {
export const createPaymentSessionsWorkflowId = "create-payment-sessions" export const createPaymentSessionsWorkflowId = "create-payment-sessions"
export const createPaymentSessionsWorkflow = createWorkflow( export const createPaymentSessionsWorkflow = createWorkflow(
createPaymentSessionsWorkflowId, createPaymentSessionsWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<PaymentSessionDTO> => { (input: WorkflowData<WorkflowInput>): WorkflowResponse<PaymentSessionDTO> => {
const paymentCollection = useRemoteQueryStep({ const paymentCollection = useRemoteQueryStep({
entry_point: "payment_collection", entry_point: "payment_collection",
fields: ["id", "amount", "currency_code", "payment_sessions.*"], fields: ["id", "amount", "currency_code", "payment_sessions.*"],
@@ -62,6 +63,6 @@ export const createPaymentSessionsWorkflow = createWorkflow(
}) })
) )
return created return new WorkflowResponse(created)
} }
) )
@@ -1,4 +1,8 @@
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { import {
deletePaymentSessionsStep, deletePaymentSessionsStep,
validateDeletedPaymentSessionsStep, validateDeletedPaymentSessionsStep,
@@ -19,6 +23,6 @@ export const deletePaymentSessionsWorkflow = createWorkflow(
idsDeleted, idsDeleted,
}) })
return idsDeleted return new WorkflowResponse(idsDeleted)
} }
) )
@@ -1,6 +1,10 @@
import { BigNumberInput, PaymentDTO } from "@medusajs/types" import { BigNumberInput, PaymentDTO } from "@medusajs/types"
import { PaymentEvents } from "@medusajs/utils" import { PaymentEvents } from "@medusajs/utils"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { emitEventStep } from "../../common" import { emitEventStep } from "../../common"
import { capturePaymentStep } from "../steps/capture-payment" import { capturePaymentStep } from "../steps/capture-payment"
@@ -13,7 +17,7 @@ export const capturePaymentWorkflow = createWorkflow(
captured_by?: string captured_by?: string
amount?: BigNumberInput amount?: BigNumberInput
}> }>
): WorkflowData<PaymentDTO> => { ): WorkflowResponse<PaymentDTO> => {
const payment = capturePaymentStep(input) const payment = capturePaymentStep(input)
emitEventStep({ emitEventStep({
@@ -21,6 +25,6 @@ export const capturePaymentWorkflow = createWorkflow(
data: { id: payment.id }, data: { id: payment.id },
}) })
return payment return new WorkflowResponse(payment)
} }
) )
@@ -1,6 +1,10 @@
import { BigNumberInput } from "@medusajs/types" import { BigNumberInput } from "@medusajs/types"
import { PaymentEvents } from "@medusajs/utils" import { PaymentEvents } from "@medusajs/utils"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { emitEventStep } from "../../common" import { emitEventStep } from "../../common"
import { refundPaymentStep } from "../steps/refund-payment" import { refundPaymentStep } from "../steps/refund-payment"
@@ -21,6 +25,6 @@ export const refundPaymentWorkflow = createWorkflow(
data: { id: payment.id }, data: { id: payment.id },
}) })
return payment return new WorkflowResponse(payment)
} }
) )
@@ -4,6 +4,7 @@ import {
} from "@medusajs/types" } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
transform, transform,
@@ -19,7 +20,7 @@ export const batchPriceListPricesWorkflow = createWorkflow(
input: WorkflowData<{ input: WorkflowData<{
data: BatchPriceListPricesWorkflowDTO data: BatchPriceListPricesWorkflowDTO
}> }>
): WorkflowData<BatchPriceListPricesWorkflowResult> => { ): WorkflowResponse<BatchPriceListPricesWorkflowResult> => {
const createInput = transform({ input: input.data }, (data) => [ const createInput = transform({ input: input.data }, (data) => [
{ id: data.input.id, prices: data.input.create }, { id: data.input.id, prices: data.input.create },
]) ])
@@ -34,6 +35,8 @@ export const batchPriceListPricesWorkflow = createWorkflow(
removePriceListPricesWorkflowStep(input.data.delete) removePriceListPricesWorkflowStep(input.data.delete)
) )
return transform({ created, updated, deleted }, (data) => data) return new WorkflowResponse(
transform({ created, updated, deleted }, (data) => data)
)
} }
) )
@@ -1,6 +1,7 @@
import { CreatePriceListPricesWorkflowDTO, PricingTypes } from "@medusajs/types" import { CreatePriceListPricesWorkflowDTO, PricingTypes } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
@@ -15,15 +16,17 @@ export const createPriceListPricesWorkflow = createWorkflow(
input: WorkflowData<{ input: WorkflowData<{
data: CreatePriceListPricesWorkflowDTO[] data: CreatePriceListPricesWorkflowDTO[]
}> }>
): WorkflowData<PricingTypes.PriceDTO[]> => { ): WorkflowResponse<PricingTypes.PriceDTO[]> => {
const [_, variantPriceMap] = parallelize( const [_, variantPriceMap] = parallelize(
validatePriceListsStep(input.data), validatePriceListsStep(input.data),
validateVariantPriceLinksStep(input.data) validateVariantPriceLinksStep(input.data)
) )
return createPriceListPricesStep({ return new WorkflowResponse(
data: input.data, createPriceListPricesStep({
variant_price_map: variantPriceMap, data: input.data,
}) variant_price_map: variantPriceMap,
})
)
} }
) )
@@ -1,5 +1,9 @@
import { CreatePriceListWorkflowInputDTO, PriceListDTO } from "@medusajs/types" import { CreatePriceListWorkflowInputDTO, PriceListDTO } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createPriceListsStep, validateVariantPriceLinksStep } from "../steps" import { createPriceListsStep, validateVariantPriceLinksStep } from "../steps"
type WorkflowInput = { price_lists_data: CreatePriceListWorkflowInputDTO[] } type WorkflowInput = { price_lists_data: CreatePriceListWorkflowInputDTO[] }
@@ -7,14 +11,16 @@ type WorkflowInput = { price_lists_data: CreatePriceListWorkflowInputDTO[] }
export const createPriceListsWorkflowId = "create-price-lists" export const createPriceListsWorkflowId = "create-price-lists"
export const createPriceListsWorkflow = createWorkflow( export const createPriceListsWorkflow = createWorkflow(
createPriceListsWorkflowId, createPriceListsWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowData<PriceListDTO[]> => { (input: WorkflowData<WorkflowInput>): WorkflowResponse<PriceListDTO[]> => {
const variantPriceMap = validateVariantPriceLinksStep( const variantPriceMap = validateVariantPriceLinksStep(
input.price_lists_data input.price_lists_data
) )
return createPriceListsStep({ return new WorkflowResponse(
data: input.price_lists_data, createPriceListsStep({
variant_price_map: variantPriceMap, data: input.price_lists_data,
}) variant_price_map: variantPriceMap,
})
)
} }
) )
@@ -1,10 +1,14 @@
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { removePriceListPricesStep } from "../steps/remove-price-list-prices" import { removePriceListPricesStep } from "../steps/remove-price-list-prices"
export const removePriceListPricesWorkflowId = "remove-price-list-prices" export const removePriceListPricesWorkflowId = "remove-price-list-prices"
export const removePriceListPricesWorkflow = createWorkflow( export const removePriceListPricesWorkflow = createWorkflow(
removePriceListPricesWorkflowId, removePriceListPricesWorkflowId,
(input: WorkflowData<{ ids: string[] }>): WorkflowData<string[]> => { (input: WorkflowData<{ ids: string[] }>): WorkflowResponse<string[]> => {
return removePriceListPricesStep(input.ids) return new WorkflowResponse(removePriceListPricesStep(input.ids))
} }
) )
@@ -1,6 +1,7 @@
import { PricingTypes, UpdatePriceListPricesWorkflowDTO } from "@medusajs/types" import { PricingTypes, UpdatePriceListPricesWorkflowDTO } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
@@ -15,15 +16,17 @@ export const updatePriceListPricesWorkflow = createWorkflow(
input: WorkflowData<{ input: WorkflowData<{
data: UpdatePriceListPricesWorkflowDTO[] data: UpdatePriceListPricesWorkflowDTO[]
}> }>
): WorkflowData<PricingTypes.PriceDTO[]> => { ): WorkflowResponse<PricingTypes.PriceDTO[]> => {
const [_, variantPriceMap] = parallelize( const [_, variantPriceMap] = parallelize(
validatePriceListsStep(input.data), validatePriceListsStep(input.data),
validateVariantPriceLinksStep(input.data) validateVariantPriceLinksStep(input.data)
) )
return updatePriceListPricesStep({ return new WorkflowResponse(
data: input.data, updatePriceListPricesStep({
variant_price_map: variantPriceMap, data: input.data,
}) variant_price_map: variantPriceMap,
})
)
} }
) )
@@ -1,5 +1,9 @@
import { PricingWorkflow } from "@medusajs/types" import { PricingWorkflow } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createPricePreferencesStep } from "../steps" import { createPricePreferencesStep } from "../steps"
type WorkflowInputData = PricingWorkflow.CreatePricePreferencesWorkflowInput[] type WorkflowInputData = PricingWorkflow.CreatePricePreferencesWorkflowInput[]
@@ -8,6 +12,6 @@ export const createPricePreferencesWorkflowId = "create-price-preferences"
export const createPricePreferencesWorkflow = createWorkflow( export const createPricePreferencesWorkflow = createWorkflow(
createPricePreferencesWorkflowId, createPricePreferencesWorkflowId,
(input: WorkflowData<WorkflowInputData>) => { (input: WorkflowData<WorkflowInputData>) => {
return createPricePreferencesStep(input) return new WorkflowResponse(createPricePreferencesStep(input))
} }
) )
@@ -1,5 +1,9 @@
import { PricingWorkflow } from "@medusajs/types" import { PricingWorkflow } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { updatePricePreferencesStep } from "../steps" import { updatePricePreferencesStep } from "../steps"
type WorkflowInputData = PricingWorkflow.UpdatePricePreferencesWorkflowInput type WorkflowInputData = PricingWorkflow.UpdatePricePreferencesWorkflowInput
@@ -8,6 +12,6 @@ export const updatePricePreferencesWorkflowId = "update-price-preferences"
export const updatePricePreferencesWorkflow = createWorkflow( export const updatePricePreferencesWorkflow = createWorkflow(
updatePricePreferencesWorkflowId, updatePricePreferencesWorkflowId,
(input: WorkflowData<WorkflowInputData>) => { (input: WorkflowData<WorkflowInputData>) => {
return updatePricePreferencesStep(input) return new WorkflowResponse(updatePricePreferencesStep(input))
} }
) )
@@ -1,5 +1,9 @@
import { ProductCategoryWorkflow } from "@medusajs/types" import { ProductCategoryWorkflow } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createProductCategoriesStep } from "../steps" import { createProductCategoriesStep } from "../steps"
type WorkflowInputData = type WorkflowInputData =
@@ -9,6 +13,6 @@ export const createProductCategoriesWorkflowId = "create-product-categories"
export const createProductCategoriesWorkflow = createWorkflow( export const createProductCategoriesWorkflow = createWorkflow(
createProductCategoriesWorkflowId, createProductCategoriesWorkflowId,
(input: WorkflowData<WorkflowInputData>) => { (input: WorkflowData<WorkflowInputData>) => {
return createProductCategoriesStep(input) return new WorkflowResponse(createProductCategoriesStep(input))
} }
) )
@@ -1,5 +1,9 @@
import { ProductCategoryWorkflow } from "@medusajs/types" import { ProductCategoryWorkflow } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { updateProductCategoriesStep } from "../steps" import { updateProductCategoriesStep } from "../steps"
type WorkflowInputData = type WorkflowInputData =
@@ -9,6 +13,6 @@ export const updateProductCategoriesWorkflowId = "update-product-categories"
export const updateProductCategoriesWorkflow = createWorkflow( export const updateProductCategoriesWorkflow = createWorkflow(
updateProductCategoriesWorkflowId, updateProductCategoriesWorkflowId,
(input: WorkflowData<WorkflowInputData>) => { (input: WorkflowData<WorkflowInputData>) => {
return updateProductCategoriesStep(input) return new WorkflowResponse(updateProductCategoriesStep(input))
} }
) )
@@ -1,5 +1,6 @@
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
transform, transform,
@@ -25,7 +26,7 @@ export const batchProductVariantsWorkflow = createWorkflow(
UpdateProductVariantWorkflowInputDTO UpdateProductVariantWorkflowInputDTO
> >
> >
): WorkflowData<BatchWorkflowOutput<ProductTypes.ProductVariantDTO>> => { ): WorkflowResponse<BatchWorkflowOutput<ProductTypes.ProductVariantDTO>> => {
const normalizedInput = transform({ input }, (data) => { const normalizedInput = transform({ input }, (data) => {
return { return {
create: data.input.create ?? [], create: data.input.create ?? [],
@@ -46,7 +47,7 @@ export const batchProductVariantsWorkflow = createWorkflow(
}) })
) )
return transform({ res, input }, (data) => { const response = transform({ res, input }, (data) => {
return { return {
created: data.res[0], created: data.res[0],
updated: data.res[1], updated: data.res[1],
@@ -57,5 +58,7 @@ export const batchProductVariantsWorkflow = createWorkflow(
}, },
} }
}) })
return new WorkflowResponse(response)
} }
) )
@@ -7,6 +7,7 @@ import {
} from "@medusajs/types" } from "@medusajs/types"
import { import {
WorkflowData, WorkflowData,
WorkflowResponse,
createWorkflow, createWorkflow,
parallelize, parallelize,
transform, transform,
@@ -25,7 +26,7 @@ export const batchProductsWorkflow = createWorkflow(
UpdateProductWorkflowInputDTO UpdateProductWorkflowInputDTO
> >
> >
): WorkflowData<BatchWorkflowOutput<ProductTypes.ProductDTO>> => { ): WorkflowResponse<BatchWorkflowOutput<ProductTypes.ProductDTO>> => {
const res = parallelize( const res = parallelize(
createProductsWorkflow.runAsStep({ createProductsWorkflow.runAsStep({
input: { products: input.create ?? [] }, input: { products: input.create ?? [] },
@@ -38,16 +39,18 @@ export const batchProductsWorkflow = createWorkflow(
}) })
) )
return transform({ res, input }, (data) => { return new WorkflowResponse(
return { transform({ res, input }, (data) => {
created: data.res[0], return {
updated: data.res[1], created: data.res[0],
deleted: { updated: data.res[1],
ids: data.input.delete ?? [], deleted: {
object: "product", ids: data.input.delete ?? [],
deleted: true, object: "product",
}, deleted: true,
} },
}) }
})
)
} }
) )
@@ -1,5 +1,9 @@
import { ProductTypes } from "@medusajs/types" import { ProductTypes } from "@medusajs/types"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import {
WorkflowData,
WorkflowResponse,
createWorkflow,
} from "@medusajs/workflows-sdk"
import { createCollectionsStep } from "../steps" import { createCollectionsStep } from "../steps"
type WorkflowInput = { collections: ProductTypes.CreateProductCollectionDTO[] } type WorkflowInput = { collections: ProductTypes.CreateProductCollectionDTO[] }
@@ -9,7 +13,7 @@ export const createCollectionsWorkflow = createWorkflow(
createCollectionsWorkflowId, createCollectionsWorkflowId,
( (
input: WorkflowData<WorkflowInput> input: WorkflowData<WorkflowInput>
): WorkflowData<ProductTypes.ProductCollectionDTO[]> => { ): WorkflowResponse<ProductTypes.ProductCollectionDTO[]> => {
return createCollectionsStep(input.collections) return new WorkflowResponse(createCollectionsStep(input.collections))
} }
) )

Some files were not shown because too many files have changed in this diff Show More