From 0f5245a0983383521fde274df832c0e9a9762da5 Mon Sep 17 00:00:00 2001 From: Shahed Nasser <shahednasser@gmail.com> Date: Thu, 8 Aug 2024 19:20:27 +0300 Subject: [PATCH] chore(core-flows): [16] export types and steps, add basic TSDocs --- .../core/core-flows/src/region/steps/create-regions.ts | 3 +++ .../core/core-flows/src/region/steps/delete-regions.ts | 3 +++ .../src/region/steps/set-regions-payment-providers.ts | 3 +++ .../core/core-flows/src/region/steps/update-regions.ts | 5 ++++- .../core/core-flows/src/region/workflows/create-regions.ts | 3 +++ .../core/core-flows/src/region/workflows/delete-regions.ts | 7 +++++-- .../core/core-flows/src/region/workflows/update-regions.ts | 3 +++ .../src/reservation/steps/create-reservations.ts | 3 +++ .../reservation/steps/delete-reservations-by-line-items.ts | 3 +++ .../src/reservation/steps/delete-reservations.ts | 3 +++ .../src/reservation/steps/update-reservations.ts | 3 +++ .../src/reservation/workflows/create-reservations.ts | 3 +++ .../workflows/delete-reservations-by-line-items.ts | 7 +++++-- .../src/reservation/workflows/delete-reservations.ts | 3 +++ .../src/reservation/workflows/update-reservations.ts | 3 +++ .../src/return-reason/steps/create-return-reasons.ts | 3 +++ .../src/return-reason/steps/delete-return-reasons.ts | 7 ++++--- .../src/return-reason/steps/update-return-reasons.ts | 3 +++ .../src/return-reason/workflows/create-return-reasons.ts | 7 +++++-- .../src/return-reason/workflows/delete-return-reasons.ts | 7 +++++-- .../src/return-reason/workflows/update-return-reasons.ts | 7 +++++-- .../steps/associate-locations-with-channels.ts | 7 +++++-- .../steps/associate-products-with-channels.ts | 7 +++++-- .../sales-channel/steps/create-default-sales-channel.ts | 7 +++++-- .../src/sales-channel/steps/create-sales-channels.ts | 7 +++++-- .../src/sales-channel/steps/delete-sales-channels.ts | 7 ++++--- .../sales-channel/steps/detach-locations-from-channels.ts | 7 +++++-- .../steps/detach-products-from-sales-channels.ts | 7 +++++-- .../src/sales-channel/steps/update-sales-channels.ts | 5 ++++- .../src/sales-channel/workflows/create-sales-channels.ts | 7 +++++-- .../src/sales-channel/workflows/delete-sales-channels.ts | 7 +++++-- .../workflows/link-products-to-sales-channel.ts | 3 +++ .../src/sales-channel/workflows/update-sales-channels.ts | 7 +++++-- 33 files changed, 131 insertions(+), 36 deletions(-) diff --git a/packages/core/core-flows/src/region/steps/create-regions.ts b/packages/core/core-flows/src/region/steps/create-regions.ts index 07e100e84b131..7c708cb8cb2f4 100644 --- a/packages/core/core-flows/src/region/steps/create-regions.ts +++ b/packages/core/core-flows/src/region/steps/create-regions.ts @@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils" import { StepResponse, createStep } from "@medusajs/workflows-sdk" export const createRegionsStepId = "create-regions" +/** + * This step creates one or more regions. + */ export const createRegionsStep = createStep( createRegionsStepId, async (data: CreateRegionDTO[], { container }) => { diff --git a/packages/core/core-flows/src/region/steps/delete-regions.ts b/packages/core/core-flows/src/region/steps/delete-regions.ts index ea5ac41d70f9d..16362d68e887f 100644 --- a/packages/core/core-flows/src/region/steps/delete-regions.ts +++ b/packages/core/core-flows/src/region/steps/delete-regions.ts @@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils" import { StepResponse, createStep } from "@medusajs/workflows-sdk" export const deleteRegionsStepId = "delete-regions" +/** + * This step deletes one or more regions. + */ export const deleteRegionsStep = createStep( deleteRegionsStepId, async (ids: string[], { container }) => { diff --git a/packages/core/core-flows/src/region/steps/set-regions-payment-providers.ts b/packages/core/core-flows/src/region/steps/set-regions-payment-providers.ts index 0fa24d5d562c3..bfff9b77ddc66 100644 --- a/packages/core/core-flows/src/region/steps/set-regions-payment-providers.ts +++ b/packages/core/core-flows/src/region/steps/set-regions-payment-providers.ts @@ -92,6 +92,9 @@ async function getCurrentRegionPaymentProvidersLinks( export const setRegionsPaymentProvidersStepId = "add-region-payment-providers-step" +/** + * This step sets the payment providers in regions. + */ export const setRegionsPaymentProvidersStep = createStep( setRegionsPaymentProvidersStepId, async (data: SetRegionsPaymentProvidersStepInput, { container }) => { diff --git a/packages/core/core-flows/src/region/steps/update-regions.ts b/packages/core/core-flows/src/region/steps/update-regions.ts index 3236dc9be998c..085ced13b9a96 100644 --- a/packages/core/core-flows/src/region/steps/update-regions.ts +++ b/packages/core/core-flows/src/region/steps/update-regions.ts @@ -9,12 +9,15 @@ import { } from "@medusajs/utils" import { StepResponse, createStep } from "@medusajs/workflows-sdk" -type UpdateRegionsStepInput = { +export type UpdateRegionsStepInput = { selector: FilterableRegionProps update: UpdateRegionDTO } export const updateRegionsStepId = "update-region" +/** + * This step updates regions matching the specified filters. + */ export const updateRegionsStep = createStep( updateRegionsStepId, async (data: UpdateRegionsStepInput, { container }) => { diff --git a/packages/core/core-flows/src/region/workflows/create-regions.ts b/packages/core/core-flows/src/region/workflows/create-regions.ts index 03dd995d81f01..adfd1227a7393 100644 --- a/packages/core/core-flows/src/region/workflows/create-regions.ts +++ b/packages/core/core-flows/src/region/workflows/create-regions.ts @@ -11,6 +11,9 @@ import { setRegionsPaymentProvidersStep } from "../steps/set-regions-payment-pro import { createPricePreferencesWorkflow } from "../../pricing" export const createRegionsWorkflowId = "create-regions" +/** + * This workflow creates one or more regions. + */ export const createRegionsWorkflow = createWorkflow( createRegionsWorkflowId, ( diff --git a/packages/core/core-flows/src/region/workflows/delete-regions.ts b/packages/core/core-flows/src/region/workflows/delete-regions.ts index cf0f58ea04f25..4d074c12bd42b 100644 --- a/packages/core/core-flows/src/region/workflows/delete-regions.ts +++ b/packages/core/core-flows/src/region/workflows/delete-regions.ts @@ -1,12 +1,15 @@ import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import { deleteRegionsStep } from "../steps" -type WorkflowInput = { ids: string[] } +export type DeleteRegionsWorkflowInput = { ids: string[] } export const deleteRegionsWorkflowId = "delete-regions" +/** + * This workflow deletes one or more regions. + */ export const deleteRegionsWorkflow = createWorkflow( deleteRegionsWorkflowId, - (input: WorkflowData<WorkflowInput>): WorkflowData<void> => { + (input: WorkflowData<DeleteRegionsWorkflowInput>): WorkflowData<void> => { return deleteRegionsStep(input.ids) } ) diff --git a/packages/core/core-flows/src/region/workflows/update-regions.ts b/packages/core/core-flows/src/region/workflows/update-regions.ts index 3323b04140660..54d5b14464e21 100644 --- a/packages/core/core-flows/src/region/workflows/update-regions.ts +++ b/packages/core/core-flows/src/region/workflows/update-regions.ts @@ -12,6 +12,9 @@ import { setRegionsPaymentProvidersStep } from "../steps/set-regions-payment-pro import { updatePricePreferencesWorkflow } from "../../pricing" export const updateRegionsWorkflowId = "update-regions" +/** + * This workflow updates regions matching the specified filters. + */ export const updateRegionsWorkflow = createWorkflow( updateRegionsWorkflowId, ( diff --git a/packages/core/core-flows/src/reservation/steps/create-reservations.ts b/packages/core/core-flows/src/reservation/steps/create-reservations.ts index 2981369699b56..037dc6faa14eb 100644 --- a/packages/core/core-flows/src/reservation/steps/create-reservations.ts +++ b/packages/core/core-flows/src/reservation/steps/create-reservations.ts @@ -4,6 +4,9 @@ import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { ModuleRegistrationName } from "@medusajs/utils" export const createReservationsStepId = "create-reservations-step" +/** + * This step creates one or more reservations. + */ export const createReservationsStep = createStep( createReservationsStepId, async (data: InventoryTypes.CreateReservationItemInput[], { container }) => { diff --git a/packages/core/core-flows/src/reservation/steps/delete-reservations-by-line-items.ts b/packages/core/core-flows/src/reservation/steps/delete-reservations-by-line-items.ts index dd9b46bcbeee2..bae8f32719840 100644 --- a/packages/core/core-flows/src/reservation/steps/delete-reservations-by-line-items.ts +++ b/packages/core/core-flows/src/reservation/steps/delete-reservations-by-line-items.ts @@ -5,6 +5,9 @@ import { ModuleRegistrationName } from "@medusajs/utils" export const deleteReservationsByLineItemsStepId = "delete-reservations-by-line-items" +/** + * This step deletes reservations by their associated line items. + */ export const deleteReservationsByLineItemsStep = createStep( deleteReservationsByLineItemsStepId, async (ids: string[], { container }) => { diff --git a/packages/core/core-flows/src/reservation/steps/delete-reservations.ts b/packages/core/core-flows/src/reservation/steps/delete-reservations.ts index 24564232c0078..ac8eb00e77edc 100644 --- a/packages/core/core-flows/src/reservation/steps/delete-reservations.ts +++ b/packages/core/core-flows/src/reservation/steps/delete-reservations.ts @@ -4,6 +4,9 @@ import { IInventoryService } from "@medusajs/types" import { ModuleRegistrationName } from "@medusajs/utils" export const deleteReservationsStepId = "delete-reservations" +/** + * This step deletes one or more reservations. + */ export const deleteReservationsStep = createStep( deleteReservationsStepId, async (ids: string[], { container }) => { diff --git a/packages/core/core-flows/src/reservation/steps/update-reservations.ts b/packages/core/core-flows/src/reservation/steps/update-reservations.ts index 09b4f312188d5..13c83532c2ca7 100644 --- a/packages/core/core-flows/src/reservation/steps/update-reservations.ts +++ b/packages/core/core-flows/src/reservation/steps/update-reservations.ts @@ -8,6 +8,9 @@ import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { ModuleRegistrationName } from "@medusajs/utils" export const updateReservationsStepId = "update-reservations-step" +/** + * This step updates one or more reservations. + */ export const updateReservationsStep = createStep( updateReservationsStepId, async (data: InventoryTypes.UpdateReservationItemInput[], { container }) => { diff --git a/packages/core/core-flows/src/reservation/workflows/create-reservations.ts b/packages/core/core-flows/src/reservation/workflows/create-reservations.ts index 4c1b7a9a05d96..9540b248cae69 100644 --- a/packages/core/core-flows/src/reservation/workflows/create-reservations.ts +++ b/packages/core/core-flows/src/reservation/workflows/create-reservations.ts @@ -8,6 +8,9 @@ import { WorkflowTypes } from "@medusajs/types" import { createReservationsStep } from "../steps" export const createReservationsWorkflowId = "create-reservations-workflow" +/** + * This workflow creates one or more reservations. + */ export const createReservationsWorkflow = createWorkflow( createReservationsWorkflowId, ( diff --git a/packages/core/core-flows/src/reservation/workflows/delete-reservations-by-line-items.ts b/packages/core/core-flows/src/reservation/workflows/delete-reservations-by-line-items.ts index 28db2903b231a..40e6efdb873a7 100644 --- a/packages/core/core-flows/src/reservation/workflows/delete-reservations-by-line-items.ts +++ b/packages/core/core-flows/src/reservation/workflows/delete-reservations-by-line-items.ts @@ -2,13 +2,16 @@ import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import { deleteReservationsByLineItemsStep } from "../steps" -type WorkflowInput = { ids: string[] } +export type DeleteReservationByLineItemsWorkflowInput = { ids: string[] } export const deleteReservationsByLineItemsWorkflowId = "delete-reservations-by-line-items" +/** + * This workflow deletes reservations by their associated line items. + */ export const deleteReservationsByLineItemsWorkflow = createWorkflow( deleteReservationsByLineItemsWorkflowId, - (input: WorkflowData<WorkflowInput>): WorkflowData<void> => { + (input: WorkflowData<DeleteReservationByLineItemsWorkflowInput>): WorkflowData<void> => { return deleteReservationsByLineItemsStep(input.ids) } ) diff --git a/packages/core/core-flows/src/reservation/workflows/delete-reservations.ts b/packages/core/core-flows/src/reservation/workflows/delete-reservations.ts index 438c1f5ef25bf..941284500aff1 100644 --- a/packages/core/core-flows/src/reservation/workflows/delete-reservations.ts +++ b/packages/core/core-flows/src/reservation/workflows/delete-reservations.ts @@ -5,6 +5,9 @@ import { deleteReservationsStep } from "../steps" type WorkflowInput = { ids: string[] } export const deleteReservationsWorkflowId = "delete-reservations" +/** + * This workflow deletes one or more reservations. + */ export const deleteReservationsWorkflow = createWorkflow( deleteReservationsWorkflowId, (input: WorkflowData<WorkflowInput>): WorkflowData<void> => { diff --git a/packages/core/core-flows/src/reservation/workflows/update-reservations.ts b/packages/core/core-flows/src/reservation/workflows/update-reservations.ts index 6b8a686ddaa18..616084f19aa87 100644 --- a/packages/core/core-flows/src/reservation/workflows/update-reservations.ts +++ b/packages/core/core-flows/src/reservation/workflows/update-reservations.ts @@ -8,6 +8,9 @@ import { WorkflowTypes } from "@medusajs/types" import { updateReservationsStep } from "../steps" export const updateReservationsWorkflowId = "update-reservations-workflow" +/** + * This workflow updates one or more reservations. + */ export const updateReservationsWorkflow = createWorkflow( updateReservationsWorkflowId, ( diff --git a/packages/core/core-flows/src/return-reason/steps/create-return-reasons.ts b/packages/core/core-flows/src/return-reason/steps/create-return-reasons.ts index d2cf924740952..3a0e1ef198093 100644 --- a/packages/core/core-flows/src/return-reason/steps/create-return-reasons.ts +++ b/packages/core/core-flows/src/return-reason/steps/create-return-reasons.ts @@ -6,6 +6,9 @@ import { ModuleRegistrationName } from "@medusajs/utils" import { StepResponse, createStep } from "@medusajs/workflows-sdk" export const createReturnReasonsStepId = "create-return-reasons" +/** + * This step creates one or more return reasons. + */ export const createReturnReasonsStep = createStep( createReturnReasonsStepId, async (data: CreateOrderReturnReasonDTO[], { container }) => { diff --git a/packages/core/core-flows/src/return-reason/steps/delete-return-reasons.ts b/packages/core/core-flows/src/return-reason/steps/delete-return-reasons.ts index 786ac955241fb..6fc2e31750f14 100644 --- a/packages/core/core-flows/src/return-reason/steps/delete-return-reasons.ts +++ b/packages/core/core-flows/src/return-reason/steps/delete-return-reasons.ts @@ -2,12 +2,13 @@ import { IOrderModuleService } from "@medusajs/types" import { ModuleRegistrationName } from "@medusajs/utils" import { createStep, StepResponse } from "@medusajs/workflows-sdk" -type DeleteReturnReasonStepInput = string[] - export const deleteReturnReasonStepId = "delete-return-reasons" +/** + * This step deletes one or more return reasons. + */ export const deleteReturnReasonStep = createStep( deleteReturnReasonStepId, - async (ids: DeleteReturnReasonStepInput, { container }) => { + async (ids: string[], { container }) => { const service = container.resolve<IOrderModuleService>( ModuleRegistrationName.ORDER ) diff --git a/packages/core/core-flows/src/return-reason/steps/update-return-reasons.ts b/packages/core/core-flows/src/return-reason/steps/update-return-reasons.ts index bbcfe8fb333f3..e67abe59028d4 100644 --- a/packages/core/core-flows/src/return-reason/steps/update-return-reasons.ts +++ b/packages/core/core-flows/src/return-reason/steps/update-return-reasons.ts @@ -16,6 +16,9 @@ type UpdateReturnReasonStepInput = { } export const updateReturnReasonStepId = "update-return-reasons" +/** + * This step updates return reasons matching the specified filters. + */ export const updateReturnReasonsStep = createStep( updateReturnReasonStepId, async (data: UpdateReturnReasonStepInput, { container }) => { diff --git a/packages/core/core-flows/src/return-reason/workflows/create-return-reasons.ts b/packages/core/core-flows/src/return-reason/workflows/create-return-reasons.ts index dce02cefacfd3..04d882682f6a3 100644 --- a/packages/core/core-flows/src/return-reason/workflows/create-return-reasons.ts +++ b/packages/core/core-flows/src/return-reason/workflows/create-return-reasons.ts @@ -9,13 +9,16 @@ import { } from "@medusajs/workflows-sdk" import { createReturnReasonsStep } from "../steps" -type WorkflowInput = { data: CreateOrderReturnReasonDTO[] } +export type CreateReturnReasonsWorkflowInput = { data: CreateOrderReturnReasonDTO[] } export const createReturnReasonsWorkflowId = "create-return-reasons" +/** + * This workflow creates one or more return reasons. + */ export const createReturnReasonsWorkflow = createWorkflow( createReturnReasonsWorkflowId, ( - input: WorkflowData<WorkflowInput> + input: WorkflowData<CreateReturnReasonsWorkflowInput> ): WorkflowResponse<OrderReturnReasonDTO[]> => { return new WorkflowResponse(createReturnReasonsStep(input.data)) } diff --git a/packages/core/core-flows/src/return-reason/workflows/delete-return-reasons.ts b/packages/core/core-flows/src/return-reason/workflows/delete-return-reasons.ts index b4cb1f490f1e9..bb15dd481134a 100644 --- a/packages/core/core-flows/src/return-reason/workflows/delete-return-reasons.ts +++ b/packages/core/core-flows/src/return-reason/workflows/delete-return-reasons.ts @@ -1,12 +1,15 @@ import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk" import { deleteReturnReasonStep } from "../steps" -type WorkflowInput = { ids: string[] } +export type DeleteReturnReasonsWorkflowInput = { ids: string[] } export const deleteReturnReasonsWorkflowId = "delete-return-reasons" +/** + * This workflow deletes one or more return reasons. + */ export const deleteReturnReasonsWorkflow = createWorkflow( deleteReturnReasonsWorkflowId, - (input: WorkflowData<WorkflowInput>): WorkflowData<void> => { + (input: WorkflowData<DeleteReturnReasonsWorkflowInput>): WorkflowData<void> => { return deleteReturnReasonStep(input.ids) } ) diff --git a/packages/core/core-flows/src/return-reason/workflows/update-return-reasons.ts b/packages/core/core-flows/src/return-reason/workflows/update-return-reasons.ts index d902abda7020b..743b5bbd073b7 100644 --- a/packages/core/core-flows/src/return-reason/workflows/update-return-reasons.ts +++ b/packages/core/core-flows/src/return-reason/workflows/update-return-reasons.ts @@ -10,16 +10,19 @@ import { } from "@medusajs/workflows-sdk" import { updateReturnReasonsStep } from "../steps" -type WorkflowInput = { +export type UpdateReturnReasonsWorkflowInput = { selector: FilterableOrderReturnReasonProps update: ReturnReasonUpdatableFields } export const updateReturnReasonsWorkflowId = "update-return-reasons" +/** + * This workflow updates return reasons matching the specified filters. + */ export const updateReturnReasonsWorkflow = createWorkflow( updateReturnReasonsWorkflowId, ( - input: WorkflowData<WorkflowInput> + input: WorkflowData<UpdateReturnReasonsWorkflowInput> ): WorkflowResponse<OrderReturnReasonDTO[]> => { return new WorkflowResponse(updateReturnReasonsStep(input)) } diff --git a/packages/core/core-flows/src/sales-channel/steps/associate-locations-with-channels.ts b/packages/core/core-flows/src/sales-channel/steps/associate-locations-with-channels.ts index 26d6fb47e3290..7fd85d73f5a08 100644 --- a/packages/core/core-flows/src/sales-channel/steps/associate-locations-with-channels.ts +++ b/packages/core/core-flows/src/sales-channel/steps/associate-locations-with-channels.ts @@ -2,7 +2,7 @@ import { createStep, StepResponse } from "@medusajs/workflows-sdk" import { ContainerRegistrationKeys, Modules } from "@medusajs/utils" -interface StepInput { +export interface AssociateLocationsWithSalesChannelsStepInput { links: { sales_channel_id: string location_id: string @@ -11,9 +11,12 @@ interface StepInput { export const associateLocationsWithSalesChannelsStepId = "associate-locations-with-sales-channels-step" +/** + * This step creates links between locations and sales channel records. + */ export const associateLocationsWithSalesChannelsStep = createStep( associateLocationsWithSalesChannelsStepId, - async (data: StepInput, { container }) => { + async (data: AssociateLocationsWithSalesChannelsStepInput, { container }) => { if (!data.links?.length) { return new StepResponse([], []) } diff --git a/packages/core/core-flows/src/sales-channel/steps/associate-products-with-channels.ts b/packages/core/core-flows/src/sales-channel/steps/associate-products-with-channels.ts index 9792d057814f5..b4833d021a02d 100644 --- a/packages/core/core-flows/src/sales-channel/steps/associate-products-with-channels.ts +++ b/packages/core/core-flows/src/sales-channel/steps/associate-products-with-channels.ts @@ -1,7 +1,7 @@ import { ContainerRegistrationKeys, Modules } from "@medusajs/utils" import { createStep, StepResponse } from "@medusajs/workflows-sdk" -interface StepInput { +export interface AssociateProductsWithSalesChannelsStepInput { links: { sales_channel_id: string product_id: string @@ -10,9 +10,12 @@ interface StepInput { export const associateProductsWithSalesChannelsStepId = "associate-products-with-channels" +/** + * This step creates links between products and sales channel records. + */ export const associateProductsWithSalesChannelsStep = createStep( associateProductsWithSalesChannelsStepId, - async (input: StepInput, { container }) => { + async (input: AssociateProductsWithSalesChannelsStepInput, { container }) => { if (!input.links?.length) { return new StepResponse([], []) } diff --git a/packages/core/core-flows/src/sales-channel/steps/create-default-sales-channel.ts b/packages/core/core-flows/src/sales-channel/steps/create-default-sales-channel.ts index 4de9a64657635..960603a10781f 100644 --- a/packages/core/core-flows/src/sales-channel/steps/create-default-sales-channel.ts +++ b/packages/core/core-flows/src/sales-channel/steps/create-default-sales-channel.ts @@ -5,14 +5,17 @@ import { import { ModuleRegistrationName } from "@medusajs/utils" import { StepResponse, createStep } from "@medusajs/workflows-sdk" -interface StepInput { +export interface CreateDefaultSalesChannelStepInput { data: CreateSalesChannelDTO } export const createDefaultSalesChannelStepId = "create-default-sales-channel" +/** + * This step creates a default sales channel. + */ export const createDefaultSalesChannelStep = createStep( createDefaultSalesChannelStepId, - async (input: StepInput, { container }) => { + async (input: CreateDefaultSalesChannelStepInput, { container }) => { const salesChannelService = container.resolve<ISalesChannelModuleService>( ModuleRegistrationName.SALES_CHANNEL ) diff --git a/packages/core/core-flows/src/sales-channel/steps/create-sales-channels.ts b/packages/core/core-flows/src/sales-channel/steps/create-sales-channels.ts index bbd9143bbc1dc..cac37ff84a3f3 100644 --- a/packages/core/core-flows/src/sales-channel/steps/create-sales-channels.ts +++ b/packages/core/core-flows/src/sales-channel/steps/create-sales-channels.ts @@ -5,14 +5,17 @@ import { import { ModuleRegistrationName } from "@medusajs/utils" import { StepResponse, createStep } from "@medusajs/workflows-sdk" -interface StepInput { +export interface CreateSalesChannelsStepInput { data: CreateSalesChannelDTO[] } export const createSalesChannelsStepId = "create-sales-channels" +/** + * This step creates one or more sales channels. + */ export const createSalesChannelsStep = createStep( createSalesChannelsStepId, - async (input: StepInput, { container }) => { + async (input: CreateSalesChannelsStepInput, { container }) => { const salesChannelService = container.resolve<ISalesChannelModuleService>( ModuleRegistrationName.SALES_CHANNEL ) diff --git a/packages/core/core-flows/src/sales-channel/steps/delete-sales-channels.ts b/packages/core/core-flows/src/sales-channel/steps/delete-sales-channels.ts index 32c57eeb3c7d7..2f1d204e2b7f9 100644 --- a/packages/core/core-flows/src/sales-channel/steps/delete-sales-channels.ts +++ b/packages/core/core-flows/src/sales-channel/steps/delete-sales-channels.ts @@ -2,12 +2,13 @@ import { ISalesChannelModuleService } from "@medusajs/types" import { ModuleRegistrationName } from "@medusajs/utils" import { StepResponse, createStep } from "@medusajs/workflows-sdk" -type DeleteSalesChannelsInput = string[] - export const deleteSalesChannelsStepId = "delete-sales-channels" +/** + * This step deletes one or more sales channels. + */ export const deleteSalesChannelsStep = createStep( deleteSalesChannelsStepId, - async (ids: DeleteSalesChannelsInput, { container }) => { + async (ids: string[], { container }) => { const service = container.resolve<ISalesChannelModuleService>( ModuleRegistrationName.SALES_CHANNEL ) diff --git a/packages/core/core-flows/src/sales-channel/steps/detach-locations-from-channels.ts b/packages/core/core-flows/src/sales-channel/steps/detach-locations-from-channels.ts index dbb06230a9576..b168bed58382c 100644 --- a/packages/core/core-flows/src/sales-channel/steps/detach-locations-from-channels.ts +++ b/packages/core/core-flows/src/sales-channel/steps/detach-locations-from-channels.ts @@ -3,7 +3,7 @@ import { createStep, StepResponse } from "@medusajs/workflows-sdk" import { ContainerRegistrationKeys, Modules } from "@medusajs/utils" -interface StepInput { +export interface DetachLocationsFromSalesChannelsStepInput { links: { sales_channel_id: string location_id: string @@ -12,9 +12,12 @@ interface StepInput { export const detachLocationsFromSalesChannelsStepId = "detach-locations-from-sales-channels" +/** + * This step dismisses links between location and sales channel records. + */ export const detachLocationsFromSalesChannelsStep = createStep( detachLocationsFromSalesChannelsStepId, - async (data: StepInput, { container }) => { + async (data: DetachLocationsFromSalesChannelsStepInput, { container }) => { if (!data.links?.length) { return new StepResponse([], []) } diff --git a/packages/core/core-flows/src/sales-channel/steps/detach-products-from-sales-channels.ts b/packages/core/core-flows/src/sales-channel/steps/detach-products-from-sales-channels.ts index 92971daed2a5f..b14743b3c7a10 100644 --- a/packages/core/core-flows/src/sales-channel/steps/detach-products-from-sales-channels.ts +++ b/packages/core/core-flows/src/sales-channel/steps/detach-products-from-sales-channels.ts @@ -1,7 +1,7 @@ import { ContainerRegistrationKeys, Modules } from "@medusajs/utils" import { createStep, StepResponse } from "@medusajs/workflows-sdk" -interface StepInput { +export interface DetachProductsFromSalesChannelsStepInput { links: { sales_channel_id: string product_id: string @@ -10,9 +10,12 @@ interface StepInput { export const detachProductsFromSalesChannelsStepId = "detach-products-from-sales-channels-step" +/** + * This step dismisses links between product and sales channel records. + */ export const detachProductsFromSalesChannelsStep = createStep( detachProductsFromSalesChannelsStepId, - async (input: StepInput, { container }) => { + async (input: DetachProductsFromSalesChannelsStepInput, { container }) => { if (!input.links?.length) { return new StepResponse(void 0, []) } diff --git a/packages/core/core-flows/src/sales-channel/steps/update-sales-channels.ts b/packages/core/core-flows/src/sales-channel/steps/update-sales-channels.ts index e3f42aca3fc47..c81f82bb2845e 100644 --- a/packages/core/core-flows/src/sales-channel/steps/update-sales-channels.ts +++ b/packages/core/core-flows/src/sales-channel/steps/update-sales-channels.ts @@ -9,12 +9,15 @@ import { } from "@medusajs/utils" import { StepResponse, createStep } from "@medusajs/workflows-sdk" -type UpdateSalesChannelsStepInput = { +export type UpdateSalesChannelsStepInput = { selector: FilterableSalesChannelProps update: UpdateSalesChannelDTO } export const updateSalesChannelsStepId = "update-sales-channels" +/** + * This step updates sales channels matching the specified filters. + */ export const updateSalesChannelsStep = createStep( updateSalesChannelsStepId, async (data: UpdateSalesChannelsStepInput, { container }) => { diff --git a/packages/core/core-flows/src/sales-channel/workflows/create-sales-channels.ts b/packages/core/core-flows/src/sales-channel/workflows/create-sales-channels.ts index b5da3e2b38786..8f7ad18649fd6 100644 --- a/packages/core/core-flows/src/sales-channel/workflows/create-sales-channels.ts +++ b/packages/core/core-flows/src/sales-channel/workflows/create-sales-channels.ts @@ -6,12 +6,15 @@ import { } from "@medusajs/workflows-sdk" import { createSalesChannelsStep } from "../steps/create-sales-channels" -type WorkflowInput = { salesChannelsData: CreateSalesChannelDTO[] } +export type CreateSalesChannelsWorkflowInput = { salesChannelsData: CreateSalesChannelDTO[] } export const createSalesChannelsWorkflowId = "create-sales-channels" +/** + * This workflow creates one or more sales channels. + */ export const createSalesChannelsWorkflow = createWorkflow( createSalesChannelsWorkflowId, - (input: WorkflowData<WorkflowInput>): WorkflowResponse<SalesChannelDTO[]> => { + (input: WorkflowData<CreateSalesChannelsWorkflowInput>): WorkflowResponse<SalesChannelDTO[]> => { return new WorkflowResponse( createSalesChannelsStep({ data: input.salesChannelsData }) ) diff --git a/packages/core/core-flows/src/sales-channel/workflows/delete-sales-channels.ts b/packages/core/core-flows/src/sales-channel/workflows/delete-sales-channels.ts index 6a496ffa074dd..9e57fac3237d8 100644 --- a/packages/core/core-flows/src/sales-channel/workflows/delete-sales-channels.ts +++ b/packages/core/core-flows/src/sales-channel/workflows/delete-sales-channels.ts @@ -4,12 +4,15 @@ import { deleteSalesChannelsStep } from "../steps/delete-sales-channels" import { removeRemoteLinkStep } from "../../common/steps/remove-remote-links" import { Modules } from "@medusajs/utils" -type WorkflowInput = { ids: string[] } +export type DeleteSalesChannelsWorkflowInput = { ids: string[] } export const deleteSalesChannelsWorkflowId = "delete-sales-channels" +/** + * This workflow deletes one or more sales channels. + */ export const deleteSalesChannelsWorkflow = createWorkflow( deleteSalesChannelsWorkflowId, - (input: WorkflowData<WorkflowInput>): WorkflowData<void> => { + (input: WorkflowData<DeleteSalesChannelsWorkflowInput>): WorkflowData<void> => { deleteSalesChannelsStep(input.ids) removeRemoteLinkStep({ diff --git a/packages/core/core-flows/src/sales-channel/workflows/link-products-to-sales-channel.ts b/packages/core/core-flows/src/sales-channel/workflows/link-products-to-sales-channel.ts index 415e39a994449..7d2e8e522b1a7 100644 --- a/packages/core/core-flows/src/sales-channel/workflows/link-products-to-sales-channel.ts +++ b/packages/core/core-flows/src/sales-channel/workflows/link-products-to-sales-channel.ts @@ -6,6 +6,9 @@ import { detachProductsFromSalesChannelsStep } from "../steps" export const linkProductsToSalesChannelWorkflowId = "link-products-to-sales-channel" +/** + * This workflow creates or dismisses links between product and sales channel records. + */ export const linkProductsToSalesChannelWorkflow = createWorkflow( linkProductsToSalesChannelWorkflowId, (input: WorkflowData<LinkWorkflowInput>): WorkflowData<void> => { diff --git a/packages/core/core-flows/src/sales-channel/workflows/update-sales-channels.ts b/packages/core/core-flows/src/sales-channel/workflows/update-sales-channels.ts index 0ad0117546c73..a291a1e08a793 100644 --- a/packages/core/core-flows/src/sales-channel/workflows/update-sales-channels.ts +++ b/packages/core/core-flows/src/sales-channel/workflows/update-sales-channels.ts @@ -10,16 +10,19 @@ import { } from "@medusajs/workflows-sdk" import { updateSalesChannelsStep } from "../steps/update-sales-channels" -type UpdateSalesChannelsStepInput = { +export type UpdateSalesChannelsWorkflowInput = { selector: FilterableSalesChannelProps update: UpdateSalesChannelDTO } export const updateSalesChannelsWorkflowId = "update-sales-channels" +/** + * This workflow updates sales channels matching the specified conditions. + */ export const updateSalesChannelsWorkflow = createWorkflow( updateSalesChannelsWorkflowId, ( - input: WorkflowData<UpdateSalesChannelsStepInput> + input: WorkflowData<UpdateSalesChannelsWorkflowInput> ): WorkflowResponse<SalesChannelDTO[]> => { return new WorkflowResponse(updateSalesChannelsStep(input)) }