chore(core-flows): [15] export types and steps, add basic TSDocs (#8525)

This commit is contained in:
Shahed Nasser authored and GitHub committed 2024-08-08 21:13:55 +03:00
1 parent c9c1a5b41c
commit 10f72f15b0
32 files changed
+112 -22

No files matched your search

@@ -5,11 +5,14 @@ import {
import { ModuleRegistrationName } from "@medusajs/utils" import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { StepResponse, createStep } from "@medusajs/workflows-sdk"
type CreateProductCategoriesStepInput = { export type CreateProductCategoriesStepInput = {
product_categories: CreateProductCategoryDTO[] product_categories: CreateProductCategoryDTO[]
} }
export const createProductCategoriesStepId = "create-product-categories" export const createProductCategoriesStepId = "create-product-categories"
/**
* This step creates one or more product categories.
*/
export const createProductCategoriesStep = createStep( export const createProductCategoriesStep = createStep(
createProductCategoriesStepId, createProductCategoriesStepId,
async (data: CreateProductCategoriesStepInput, { container }) => { async (data: CreateProductCategoriesStepInput, { container }) => {
@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const deleteProductCategoriesStepId = "delete-product-categories" export const deleteProductCategoriesStepId = "delete-product-categories"
/**
* This step deletes one or more product categories.
*/
export const deleteProductCategoriesStep = createStep( export const deleteProductCategoriesStep = createStep(
deleteProductCategoriesStepId, deleteProductCategoriesStepId,
async (ids: string[], { container }) => { async (ids: string[], { container }) => {
@@ -9,12 +9,15 @@ import {
} from "@medusajs/utils" } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { StepResponse, createStep } from "@medusajs/workflows-sdk"
type UpdateProductCategoriesStepInput = { export type UpdateProductCategoriesStepInput = {
selector: FilterableProductCategoryProps selector: FilterableProductCategoryProps
update: UpdateProductCategoryDTO update: UpdateProductCategoryDTO
} }
export const updateProductCategoriesStepId = "update-product-categories" export const updateProductCategoriesStepId = "update-product-categories"
/**
* This step updates product categories matching specified filters.
*/
export const updateProductCategoriesStep = createStep( export const updateProductCategoriesStep = createStep(
updateProductCategoriesStepId, updateProductCategoriesStepId,
async (data: UpdateProductCategoriesStepInput, { container }) => { async (data: UpdateProductCategoriesStepInput, { container }) => {
@@ -6,13 +6,13 @@ import {
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { createProductCategoriesStep } from "../steps" import { createProductCategoriesStep } from "../steps"
type WorkflowInputData =
ProductCategoryWorkflow.CreateProductCategoriesWorkflowInput
export const createProductCategoriesWorkflowId = "create-product-categories" export const createProductCategoriesWorkflowId = "create-product-categories"
/**
* This workflow creates one or more product categories.
*/
export const createProductCategoriesWorkflow = createWorkflow( export const createProductCategoriesWorkflow = createWorkflow(
createProductCategoriesWorkflowId, createProductCategoriesWorkflowId,
(input: WorkflowData<WorkflowInputData>) => { (input: WorkflowData<ProductCategoryWorkflow.CreateProductCategoriesWorkflowInput>) => {
return new WorkflowResponse(createProductCategoriesStep(input)) return new WorkflowResponse(createProductCategoriesStep(input))
} }
) )
@@ -2,6 +2,9 @@ import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk"
import { deleteProductCategoriesStep } from "../steps" import { deleteProductCategoriesStep } from "../steps"
export const deleteProductCategoriesWorkflowId = "delete-product-categories" export const deleteProductCategoriesWorkflowId = "delete-product-categories"
/**
* This workflow deletes one or more product categories.
*/
export const deleteProductCategoriesWorkflow = createWorkflow( export const deleteProductCategoriesWorkflow = createWorkflow(
deleteProductCategoriesWorkflowId, deleteProductCategoriesWorkflowId,
(input: WorkflowData<string[]>) => { (input: WorkflowData<string[]>) => {
@@ -6,13 +6,13 @@ import {
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { updateProductCategoriesStep } from "../steps" import { updateProductCategoriesStep } from "../steps"
type WorkflowInputData =
ProductCategoryWorkflow.UpdateProductCategoriesWorkflowInput
export const updateProductCategoriesWorkflowId = "update-product-categories" export const updateProductCategoriesWorkflowId = "update-product-categories"
/**
* This workflow updates product categories matching specified filters.
*/
export const updateProductCategoriesWorkflow = createWorkflow( export const updateProductCategoriesWorkflow = createWorkflow(
updateProductCategoriesWorkflowId, updateProductCategoriesWorkflowId,
(input: WorkflowData<WorkflowInputData>) => { (input: WorkflowData<ProductCategoryWorkflow.UpdateProductCategoriesWorkflowInput>) => {
return new WorkflowResponse(updateProductCategoriesStep(input)) return new WorkflowResponse(updateProductCategoriesStep(input))
} }
) )
@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, WorkflowData, createStep } from "@medusajs/workflows-sdk" import { StepResponse, WorkflowData, createStep } from "@medusajs/workflows-sdk"
export const addCampaignPromotionsStepId = "add-campaign-promotions" export const addCampaignPromotionsStepId = "add-campaign-promotions"
/**
* This step adds promotions to a campaign.
*/
export const addCampaignPromotionsStep = createStep( export const addCampaignPromotionsStep = createStep(
addCampaignPromotionsStepId, addCampaignPromotionsStepId,
async (input: WorkflowData<LinkWorkflowInput>, { container }) => { async (input: WorkflowData<LinkWorkflowInput>, { container }) => {
@@ -4,6 +4,9 @@ import { StepResponse, WorkflowData, createStep } from "@medusajs/workflows-sdk"
export const addOrRemoveCampaignPromotionsStepId = export const addOrRemoveCampaignPromotionsStepId =
"add-or-remove-campaign-promotions" "add-or-remove-campaign-promotions"
/**
* This step adds or removes promotions from a campaign.
*/
export const addOrRemoveCampaignPromotionsStep = createStep( export const addOrRemoveCampaignPromotionsStep = createStep(
addOrRemoveCampaignPromotionsStepId, addOrRemoveCampaignPromotionsStepId,
async (input: WorkflowData<LinkWorkflowInput>, { container }) => { async (input: WorkflowData<LinkWorkflowInput>, { container }) => {
@@ -6,6 +6,9 @@ import { ModuleRegistrationName, RuleType } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const addRulesToPromotionsStepId = "add-rules-to-promotions" export const addRulesToPromotionsStepId = "add-rules-to-promotions"
/**
* This step adds rules to a promotion.
*/
export const addRulesToPromotionsStep = createStep( export const addRulesToPromotionsStep = createStep(
addRulesToPromotionsStepId, addRulesToPromotionsStepId,
async (input: AddPromotionRulesWorkflowDTO, { container }) => { async (input: AddPromotionRulesWorkflowDTO, { container }) => {
@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const createCampaignsStepId = "create-campaigns" export const createCampaignsStepId = "create-campaigns"
/**
* This step cancels one or more campaigns.
*/
export const createCampaignsStep = createStep( export const createCampaignsStep = createStep(
createCampaignsStepId, createCampaignsStepId,
async (data: CreateCampaignDTO[], { container }) => { async (data: CreateCampaignDTO[], { container }) => {
@@ -4,6 +4,9 @@ import { createPromotionRulesWorkflow } from "../workflows/create-promotion-rule
export const createPromotionRulesWorkflowStepId = export const createPromotionRulesWorkflowStepId =
"create-promotion-rules-workflow" "create-promotion-rules-workflow"
/**
* This step creates promotion rules using the {@link createPromotionRulesWorkflow}.
*/
export const createPromotionRulesWorkflowStep = createStep( export const createPromotionRulesWorkflowStep = createStep(
createPromotionRulesWorkflowStepId, createPromotionRulesWorkflowStepId,
async (data: AddPromotionRulesWorkflowDTO, { container }) => { async (data: AddPromotionRulesWorkflowDTO, { container }) => {
@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const createPromotionsStepId = "create-promotions" export const createPromotionsStepId = "create-promotions"
/**
* This step creates one or more promotions.
*/
export const createPromotionsStep = createStep( export const createPromotionsStep = createStep(
createPromotionsStepId, createPromotionsStepId,
async (data: CreatePromotionDTO[], { container }) => { async (data: CreatePromotionDTO[], { container }) => {
@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const deleteCampaignsStepId = "delete-campaigns" export const deleteCampaignsStepId = "delete-campaigns"
/**
* This step deletes one or more campaigns.
*/
export const deleteCampaignsStep = createStep( export const deleteCampaignsStep = createStep(
deleteCampaignsStepId, deleteCampaignsStepId,
async (ids: string[], { container }) => { async (ids: string[], { container }) => {
@@ -4,6 +4,9 @@ import { deletePromotionRulesWorkflow } from "../workflows/delete-promotion-rule
export const deletePromotionRulesWorkflowStepId = export const deletePromotionRulesWorkflowStepId =
"delete-promotion-rules-workflow" "delete-promotion-rules-workflow"
/**
* This step deletes promotion rules using the {@link deletePromotionRulesWorkflow}.
*/
export const deletePromotionRulesWorkflowStep = createStep( export const deletePromotionRulesWorkflowStep = createStep(
deletePromotionRulesWorkflowStepId, deletePromotionRulesWorkflowStepId,
async (data: RemovePromotionRulesWorkflowDTO, { container }) => { async (data: RemovePromotionRulesWorkflowDTO, { container }) => {
@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const deletePromotionsStepId = "delete-promotions" export const deletePromotionsStepId = "delete-promotions"
/**
* This step deletes one or more promotions.
*/
export const deletePromotionsStep = createStep( export const deletePromotionsStep = createStep(
deletePromotionsStepId, deletePromotionsStepId,
async (ids: string[], { container }) => { async (ids: string[], { container }) => {
@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, WorkflowData, createStep } from "@medusajs/workflows-sdk" import { StepResponse, WorkflowData, createStep } from "@medusajs/workflows-sdk"
export const removeCampaignPromotionsStepId = "remove-campaign-promotions" export const removeCampaignPromotionsStepId = "remove-campaign-promotions"
/**
* This step removes promotions from a campaigns.
*/
export const removeCampaignPromotionsStep = createStep( export const removeCampaignPromotionsStep = createStep(
removeCampaignPromotionsStepId, removeCampaignPromotionsStepId,
async (input: WorkflowData<LinkWorkflowInput>, { container }) => { async (input: WorkflowData<LinkWorkflowInput>, { container }) => {
@@ -8,6 +8,9 @@ import { ModuleRegistrationName, RuleType } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const removeRulesFromPromotionsStepId = "remove-rules-from-promotions" export const removeRulesFromPromotionsStepId = "remove-rules-from-promotions"
/**
* This step removes rules from a promotion.
*/
export const removeRulesFromPromotionsStep = createStep( export const removeRulesFromPromotionsStep = createStep(
removeRulesFromPromotionsStepId, removeRulesFromPromotionsStepId,
async (input: RemovePromotionRulesWorkflowDTO, { container }) => { async (input: RemovePromotionRulesWorkflowDTO, { container }) => {
@@ -7,6 +7,9 @@ import {
import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const updateCampaignsStepId = "update-campaigns" export const updateCampaignsStepId = "update-campaigns"
/**
* This step updates one or more campaigns.
*/
export const updateCampaignsStep = createStep( export const updateCampaignsStep = createStep(
updateCampaignsStepId, updateCampaignsStepId,
async (data: UpdateCampaignDTO[], { container }) => { async (data: UpdateCampaignDTO[], { container }) => {
@@ -4,6 +4,9 @@ import { updatePromotionRulesWorkflow } from "../workflows/update-promotion-rule
export const updatePromotionRulesWorkflowStepId = export const updatePromotionRulesWorkflowStepId =
"update-promotion-rules-workflow" "update-promotion-rules-workflow"
/**
* This step updates promotion rules using the {@link updatePromotionRulesWorkflow}.
*/
export const updatePromotionRulesWorkflowStep = createStep( export const updatePromotionRulesWorkflowStep = createStep(
updatePromotionRulesWorkflowStepId, updatePromotionRulesWorkflowStepId,
async (data: UpdatePromotionRulesWorkflowDTO, { container }) => { async (data: UpdatePromotionRulesWorkflowDTO, { container }) => {
@@ -6,6 +6,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const updatePromotionRulesStepId = "update-promotion-rules" export const updatePromotionRulesStepId = "update-promotion-rules"
/**
* This step updates one or more promotion rules.
*/
export const updatePromotionRulesStep = createStep( export const updatePromotionRulesStep = createStep(
updatePromotionRulesStepId, updatePromotionRulesStepId,
async (input: UpdatePromotionRulesWorkflowDTO, { container }) => { async (input: UpdatePromotionRulesWorkflowDTO, { container }) => {
@@ -7,6 +7,9 @@ import {
import { StepResponse, createStep } from "@medusajs/workflows-sdk" import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const updatePromotionsStepId = "update-promotions" export const updatePromotionsStepId = "update-promotions"
/**
* This step updates one or more promotions.
*/
export const updatePromotionsStep = createStep( export const updatePromotionsStep = createStep(
updatePromotionsStepId, updatePromotionsStepId,
async (data: UpdatePromotionDTO[], { container }) => { async (data: UpdatePromotionDTO[], { container }) => {
@@ -11,6 +11,9 @@ import {
export const addOrRemoveCampaignPromotionsWorkflowId = export const addOrRemoveCampaignPromotionsWorkflowId =
"add-or-remove-campaign-promotions" "add-or-remove-campaign-promotions"
/**
* This workflow adds or removes promotions from campaigns.
*/
export const addOrRemoveCampaignPromotionsWorkflow = createWorkflow( export const addOrRemoveCampaignPromotionsWorkflow = createWorkflow(
addOrRemoveCampaignPromotionsWorkflowId, addOrRemoveCampaignPromotionsWorkflowId,
(input: WorkflowData<LinkWorkflowInput>): WorkflowData<void> => { (input: WorkflowData<LinkWorkflowInput>): WorkflowData<void> => {
@@ -18,6 +18,9 @@ import { updatePromotionRulesWorkflowStep } from "../steps/update-promotion-rule
import { deletePromotionRulesWorkflowStep } from "../steps/delete-promotion-rules-workflow" import { deletePromotionRulesWorkflowStep } from "../steps/delete-promotion-rules-workflow"
export const batchPromotionRulesWorkflowId = "batch-promotion-rules" export const batchPromotionRulesWorkflowId = "batch-promotion-rules"
/**
* This workflow creates, updates, or deletes promotion rules.
*/
export const batchPromotionRulesWorkflow = createWorkflow( export const batchPromotionRulesWorkflow = createWorkflow(
batchPromotionRulesWorkflowId, batchPromotionRulesWorkflowId,
( (
@@ -7,12 +7,15 @@ import {
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { createCampaignsStep } from "../steps" import { createCampaignsStep } from "../steps"
type WorkflowInput = { campaignsData: CreateCampaignDTO[] } & AdditionalData export type CreateCampaignsWorkflowInput = { campaignsData: CreateCampaignDTO[] } & AdditionalData
export const createCampaignsWorkflowId = "create-campaigns" export const createCampaignsWorkflowId = "create-campaigns"
/**
* This workflow creates one or more campaigns.
*/
export const createCampaignsWorkflow = createWorkflow( export const createCampaignsWorkflow = createWorkflow(
createCampaignsWorkflowId, createCampaignsWorkflowId,
(input: WorkflowData<WorkflowInput>) => { (input: WorkflowData<CreateCampaignsWorkflowInput>) => {
const createdCampaigns = createCampaignsStep(input.campaignsData) const createdCampaigns = createCampaignsStep(input.campaignsData)
const campaignsCreated = createHook("campaignsCreated", { const campaignsCreated = createHook("campaignsCreated", {
campaigns: createdCampaigns, campaigns: createdCampaigns,
@@ -7,6 +7,9 @@ import {
import { addRulesToPromotionsStep } from "../steps" import { addRulesToPromotionsStep } from "../steps"
export const createPromotionRulesWorkflowId = "create-promotion-rules-workflow" export const createPromotionRulesWorkflowId = "create-promotion-rules-workflow"
/**
* This workflow creates one or more promotion rules.
*/
export const createPromotionRulesWorkflow = createWorkflow( export const createPromotionRulesWorkflow = createWorkflow(
createPromotionRulesWorkflowId, createPromotionRulesWorkflowId,
( (
@@ -7,12 +7,15 @@ import {
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { createPromotionsStep } from "../steps" import { createPromotionsStep } from "../steps"
type WorkflowInput = { promotionsData: CreatePromotionDTO[] } & AdditionalData export type CreatePromotionsWorkflowInput = { promotionsData: CreatePromotionDTO[] } & AdditionalData
export const createPromotionsWorkflowId = "create-promotions" export const createPromotionsWorkflowId = "create-promotions"
/**
* This workflow creates one or more promotions.
*/
export const createPromotionsWorkflow = createWorkflow( export const createPromotionsWorkflow = createWorkflow(
createPromotionsWorkflowId, createPromotionsWorkflowId,
(input: WorkflowData<WorkflowInput>) => { (input: WorkflowData<CreatePromotionsWorkflowInput>) => {
const createdPromotions = createPromotionsStep(input.promotionsData) const createdPromotions = createPromotionsStep(input.promotionsData)
const promotionsCreated = createHook("promotionsCreated", { const promotionsCreated = createHook("promotionsCreated", {
promotions: createdPromotions, promotions: createdPromotions,
@@ -1,12 +1,15 @@
import { createHook, createWorkflow, WorkflowData, WorkflowResponse } from "@medusajs/workflows-sdk" import { createHook, createWorkflow, WorkflowData, WorkflowResponse } from "@medusajs/workflows-sdk"
import { deleteCampaignsStep } from "../steps" import { deleteCampaignsStep } from "../steps"
type WorkflowInput = { ids: string[] } export type DeleteCampaignsWorkflowInput = { ids: string[] }
export const deleteCampaignsWorkflowId = "delete-campaigns" export const deleteCampaignsWorkflowId = "delete-campaigns"
/**
* This workflow deletes one or more campaigns.
*/
export const deleteCampaignsWorkflow = createWorkflow( export const deleteCampaignsWorkflow = createWorkflow(
deleteCampaignsWorkflowId, deleteCampaignsWorkflowId,
(input: WorkflowData<WorkflowInput>) => { (input: WorkflowData<DeleteCampaignsWorkflowInput>) => {
const deletedCampaigns = deleteCampaignsStep(input.ids) const deletedCampaigns = deleteCampaignsStep(input.ids)
const campaignsDeleted = createHook("campaignsDeleted", { const campaignsDeleted = createHook("campaignsDeleted", {
ids: input.ids ids: input.ids
@@ -3,6 +3,9 @@ import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk"
import { removeRulesFromPromotionsStep } from "../steps" import { removeRulesFromPromotionsStep } from "../steps"
export const deletePromotionRulesWorkflowId = "delete-promotion-rules-workflow" export const deletePromotionRulesWorkflowId = "delete-promotion-rules-workflow"
/**
* This workflow deletes one or more promotion rules.
*/
export const deletePromotionRulesWorkflow = createWorkflow( export const deletePromotionRulesWorkflow = createWorkflow(
deletePromotionRulesWorkflowId, deletePromotionRulesWorkflowId,
( (
@@ -1,12 +1,15 @@
import { createHook, createWorkflow, WorkflowData, WorkflowResponse } from "@medusajs/workflows-sdk" import { createHook, createWorkflow, WorkflowData, WorkflowResponse } from "@medusajs/workflows-sdk"
import { deletePromotionsStep } from "../steps" import { deletePromotionsStep } from "../steps"
type WorkflowInput = { ids: string[] } export type DeletePromotionsWorkflowInput = { ids: string[] }
export const deletePromotionsWorkflowId = "delete-promotions" export const deletePromotionsWorkflowId = "delete-promotions"
/**
* This workflow deletes one or more promotions.
*/
export const deletePromotionsWorkflow = createWorkflow( export const deletePromotionsWorkflow = createWorkflow(
deletePromotionsWorkflowId, deletePromotionsWorkflowId,
(input: WorkflowData<WorkflowInput>) => { (input: WorkflowData<DeletePromotionsWorkflowInput>) => {
const deletedPromotions = deletePromotionsStep(input.ids) const deletedPromotions = deletePromotionsStep(input.ids)
const promotionsDeleted = createHook("promotionsDeleted", { const promotionsDeleted = createHook("promotionsDeleted", {
ids: input.ids ids: input.ids
@@ -7,12 +7,15 @@ import {
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { updateCampaignsStep } from "../steps" import { updateCampaignsStep } from "../steps"
type WorkflowInput = { campaignsData: UpdateCampaignDTO[] } & AdditionalData export type UpdateCampaignsWorkflowInput = { campaignsData: UpdateCampaignDTO[] } & AdditionalData
export const updateCampaignsWorkflowId = "update-campaigns" export const updateCampaignsWorkflowId = "update-campaigns"
/**
* This workflow updates one or more campaigns.
*/
export const updateCampaignsWorkflow = createWorkflow( export const updateCampaignsWorkflow = createWorkflow(
updateCampaignsWorkflowId, updateCampaignsWorkflowId,
(input: WorkflowData<WorkflowInput>) => { (input: WorkflowData<UpdateCampaignsWorkflowInput>) => {
const updatedCampaigns = updateCampaignsStep(input.campaignsData) const updatedCampaigns = updateCampaignsStep(input.campaignsData)
const campaignsUpdated = createHook("campaignsUpdated", { const campaignsUpdated = createHook("campaignsUpdated", {
campaigns: updatedCampaigns, campaigns: updatedCampaigns,
@@ -10,6 +10,9 @@ import {
import { updatePromotionRulesStep } from "../steps" import { updatePromotionRulesStep } from "../steps"
export const updatePromotionRulesWorkflowId = "update-promotion-rules-workflow" export const updatePromotionRulesWorkflowId = "update-promotion-rules-workflow"
/**
* This workflow updates one or more promotion rules.
*/
export const updatePromotionRulesWorkflow = createWorkflow( export const updatePromotionRulesWorkflow = createWorkflow(
updatePromotionRulesWorkflowId, updatePromotionRulesWorkflowId,
( (
@@ -10,12 +10,15 @@ import {
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { updatePromotionsStep } from "../steps" import { updatePromotionsStep } from "../steps"
type WorkflowInput = { promotionsData: UpdatePromotionDTO[] } & AdditionalData export type UpdatePromotionsWorkflowInput = { promotionsData: UpdatePromotionDTO[] } & AdditionalData
export const updatePromotionsWorkflowId = "update-promotions" export const updatePromotionsWorkflowId = "update-promotions"
/**
* This workflow updates one or more promotions.
*/
export const updatePromotionsWorkflow = createWorkflow( export const updatePromotionsWorkflow = createWorkflow(
updatePromotionsWorkflowId, updatePromotionsWorkflowId,
(input: WorkflowData<WorkflowInput>) => { (input: WorkflowData<UpdatePromotionsWorkflowInput>) => {
const updatedPromotions = updatePromotionsStep(input.promotionsData) const updatedPromotions = updatePromotionsStep(input.promotionsData)
const promotionsUpdated = createHook("promotionsUpdated", { const promotionsUpdated = createHook("promotionsUpdated", {
promotions: updatedPromotions, promotions: updatedPromotions,