chore(core-flows): [18/18] export types and types, add basic TSDocs (#8529)

This commit is contained in:
Shahed Nasser authored and GitHub committed 2024-08-08 20:03:49 +03:00
1 parent faa09d12f6
commit 6efdfbc9a6
17 files changed
+76 -28

No files matched your search

@@ -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 createTaxRateRulesStepId = "create-tax-rate-rules" export const createTaxRateRulesStepId = "create-tax-rate-rules"
/**
* This step creates one or more tax rate rules.
*/
export const createTaxRateRulesStep = createStep( export const createTaxRateRulesStep = createStep(
createTaxRateRulesStepId, createTaxRateRulesStepId,
async (data: CreateTaxRateRuleDTO[], { container }) => { async (data: CreateTaxRateRuleDTO[], { 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 createTaxRatesStepId = "create-tax-rates" export const createTaxRatesStepId = "create-tax-rates"
/**
* This step creates one or more tax rates.
*/
export const createTaxRatesStep = createStep( export const createTaxRatesStep = createStep(
createTaxRatesStepId, createTaxRatesStepId,
async (data: CreateTaxRateDTO[], { container }) => { async (data: CreateTaxRateDTO[], { 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 createTaxRegionsStepId = "create-tax-regions" export const createTaxRegionsStepId = "create-tax-regions"
/**
* This step creates one or more tax regions.
*/
export const createTaxRegionsStep = createStep( export const createTaxRegionsStep = createStep(
createTaxRegionsStepId, createTaxRegionsStepId,
async (data: CreateTaxRegionDTO[], { container }) => { async (data: CreateTaxRegionDTO[], { 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 deleteTaxRateRulesStepId = "delete-tax-rate-rules" export const deleteTaxRateRulesStepId = "delete-tax-rate-rules"
/**
* This step deletes one or more tax rate rules.
*/
export const deleteTaxRateRulesStep = createStep( export const deleteTaxRateRulesStep = createStep(
deleteTaxRateRulesStepId, deleteTaxRateRulesStepId,
async (ids: string[], { container }) => { async (ids: string[], { container }) => {
@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk" import { createStep, StepResponse } from "@medusajs/workflows-sdk"
export const deleteTaxRatesStepId = "delete-tax-rates" export const deleteTaxRatesStepId = "delete-tax-rates"
/**
* This step deletes one or more tax rates.
*/
export const deleteTaxRatesStep = createStep( export const deleteTaxRatesStep = createStep(
deleteTaxRatesStepId, deleteTaxRatesStepId,
async (ids: string[], { container }) => { async (ids: string[], { 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 deleteTaxRegionsStepId = "delete-tax-regions" export const deleteTaxRegionsStepId = "delete-tax-regions"
/**
* This step deletes one or more tax regions.
*/
export const deleteTaxRegionsStep = createStep( export const deleteTaxRegionsStep = createStep(
deleteTaxRegionsStepId, deleteTaxRegionsStepId,
async (ids: string[], { container }) => { async (ids: string[], { container }) => {
@@ -2,14 +2,17 @@ import { FilterableTaxRateProps, ITaxModuleService } from "@medusajs/types"
import { ModuleRegistrationName } from "@medusajs/utils" import { ModuleRegistrationName } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk" import { createStep, StepResponse } from "@medusajs/workflows-sdk"
type StepInput = { export type ListTaxRateIdsStepInput = {
selector: FilterableTaxRateProps selector: FilterableTaxRateProps
} }
export const listTaxRateIdsStepId = "list-tax-rate-ids" export const listTaxRateIdsStepId = "list-tax-rate-ids"
/**
* This step retrieves the IDs of tax rates matching the specified filters.
*/
export const listTaxRateIdsStep = createStep( export const listTaxRateIdsStep = createStep(
listTaxRateIdsStepId, listTaxRateIdsStepId,
async (input: StepInput, { container }) => { async (input: ListTaxRateIdsStepInput, { container }) => {
const service = container.resolve<ITaxModuleService>( const service = container.resolve<ITaxModuleService>(
ModuleRegistrationName.TAX ModuleRegistrationName.TAX
) )
@@ -2,14 +2,17 @@ import { FilterableTaxRateRuleProps, ITaxModuleService } from "@medusajs/types"
import { ModuleRegistrationName } from "@medusajs/utils" import { ModuleRegistrationName } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk" import { createStep, StepResponse } from "@medusajs/workflows-sdk"
type StepInput = { export type ListTaxRateRuleIdsStepInput = {
selector: FilterableTaxRateRuleProps selector: FilterableTaxRateRuleProps
} }
export const listTaxRateRuleIdsStepId = "list-tax-rate-rule-ids" export const listTaxRateRuleIdsStepId = "list-tax-rate-rule-ids"
/**
* This step retrieves the IDs of tax rate rules matching the specified filters.
*/
export const listTaxRateRuleIdsStep = createStep( export const listTaxRateRuleIdsStep = createStep(
listTaxRateRuleIdsStepId, listTaxRateRuleIdsStepId,
async (input: StepInput, { container }) => { async (input: ListTaxRateRuleIdsStepInput, { container }) => {
const service = container.resolve<ITaxModuleService>( const service = container.resolve<ITaxModuleService>(
ModuleRegistrationName.TAX ModuleRegistrationName.TAX
) )
@@ -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 UpdateTaxRatesStepInput = { export type UpdateTaxRatesStepInput = {
selector: FilterableTaxRateProps selector: FilterableTaxRateProps
update: UpdateTaxRateDTO update: UpdateTaxRateDTO
} }
export const updateTaxRatesStepId = "update-tax-rates" export const updateTaxRatesStepId = "update-tax-rates"
/**
* This step updates tax rates matching the specified filters.
*/
export const updateTaxRatesStep = createStep( export const updateTaxRatesStep = createStep(
updateTaxRatesStepId, updateTaxRatesStepId,
async (data: UpdateTaxRatesStepInput, { container }) => { async (data: UpdateTaxRatesStepInput, { container }) => {
@@ -6,14 +6,17 @@ import {
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { createTaxRateRulesStep } from "../steps" import { createTaxRateRulesStep } from "../steps"
type WorkflowInput = { export type CreateTaxRateRulesWorkflowInput = {
rules: CreateTaxRateRuleDTO[] rules: CreateTaxRateRuleDTO[]
} }
export const createTaxRateRulesWorkflowId = "create-tax-rate-rules" export const createTaxRateRulesWorkflowId = "create-tax-rate-rules"
/**
* This workflow creates one or more tax rate rules.
*/
export const createTaxRateRulesWorkflow = createWorkflow( export const createTaxRateRulesWorkflow = createWorkflow(
createTaxRateRulesWorkflowId, createTaxRateRulesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<TaxRateRuleDTO[]> => { (input: WorkflowData<CreateTaxRateRulesWorkflowInput>): WorkflowResponse<TaxRateRuleDTO[]> => {
return new WorkflowResponse(createTaxRateRulesStep(input.rules)) return new WorkflowResponse(createTaxRateRulesStep(input.rules))
} }
) )
@@ -6,12 +6,13 @@ import {
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { createTaxRatesStep } from "../steps" import { createTaxRatesStep } from "../steps"
type WorkflowInput = CreateTaxRateDTO[]
export const createTaxRatesWorkflowId = "create-tax-rates" export const createTaxRatesWorkflowId = "create-tax-rates"
/**
* This workflow creates one or more tax rates.
*/
export const createTaxRatesWorkflow = createWorkflow( export const createTaxRatesWorkflow = createWorkflow(
createTaxRatesWorkflowId, createTaxRatesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<TaxRateDTO[]> => { (input: WorkflowData<CreateTaxRateDTO[]>): WorkflowResponse<TaxRateDTO[]> => {
return new WorkflowResponse(createTaxRatesStep(input)) return new WorkflowResponse(createTaxRatesStep(input))
} }
) )
@@ -6,12 +6,13 @@ import {
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { createTaxRegionsStep } from "../steps" import { createTaxRegionsStep } from "../steps"
type WorkflowInput = CreateTaxRegionDTO[]
export const createTaxRegionsWorkflowId = "create-tax-regions" export const createTaxRegionsWorkflowId = "create-tax-regions"
/**
* This workflow creates one or more tax regions.
*/
export const createTaxRegionsWorkflow = createWorkflow( export const createTaxRegionsWorkflow = createWorkflow(
createTaxRegionsWorkflowId, createTaxRegionsWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<TaxRegionDTO[]> => { (input: WorkflowData<CreateTaxRegionDTO[]>): WorkflowResponse<TaxRegionDTO[]> => {
return new WorkflowResponse(createTaxRegionsStep(input)) return new WorkflowResponse(createTaxRegionsStep(input))
} }
) )
@@ -5,12 +5,15 @@ import {
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { deleteTaxRateRulesStep } from "../steps" import { deleteTaxRateRulesStep } from "../steps"
type WorkflowInput = { ids: string[] } export type DeleteTaxRateRulesWorkflowInput = { ids: string[] }
export const deleteTaxRateRulesWorkflowId = "delete-tax-rate-rules" export const deleteTaxRateRulesWorkflowId = "delete-tax-rate-rules"
/**
* This workflow deletes one or more tax rate rules.
*/
export const deleteTaxRateRulesWorkflow = createWorkflow( export const deleteTaxRateRulesWorkflow = createWorkflow(
deleteTaxRateRulesWorkflowId, deleteTaxRateRulesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<void> => { (input: WorkflowData<DeleteTaxRateRulesWorkflowInput>): WorkflowResponse<void> => {
return new WorkflowResponse(deleteTaxRateRulesStep(input.ids)) return new WorkflowResponse(deleteTaxRateRulesStep(input.ids))
} }
) )
@@ -5,12 +5,15 @@ import {
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { deleteTaxRatesStep } from "../steps" import { deleteTaxRatesStep } from "../steps"
type WorkflowInput = { ids: string[] } export type DeleteTaxRatesWorkflowInput = { ids: string[] }
export const deleteTaxRatesWorkflowId = "delete-tax-rates" export const deleteTaxRatesWorkflowId = "delete-tax-rates"
/**
* This workflow deletes one or more tax rates.
*/
export const deleteTaxRatesWorkflow = createWorkflow( export const deleteTaxRatesWorkflow = createWorkflow(
deleteTaxRatesWorkflowId, deleteTaxRatesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<void> => { (input: WorkflowData<DeleteTaxRatesWorkflowInput>): WorkflowResponse<void> => {
return new WorkflowResponse(deleteTaxRatesStep(input.ids)) return new WorkflowResponse(deleteTaxRatesStep(input.ids))
} }
) )
@@ -5,12 +5,15 @@ import {
} from "@medusajs/workflows-sdk" } from "@medusajs/workflows-sdk"
import { deleteTaxRegionsStep } from "../steps" import { deleteTaxRegionsStep } from "../steps"
type WorkflowInput = { ids: string[] } export type DeleteTaxRegionsWorkflowInput = { ids: string[] }
export const deleteTaxRegionsWorkflowId = "delete-tax-regions" export const deleteTaxRegionsWorkflowId = "delete-tax-regions"
/**
* This workflow deletes one or more tax regions.
*/
export const deleteTaxRegionsWorkflow = createWorkflow( export const deleteTaxRegionsWorkflow = createWorkflow(
deleteTaxRegionsWorkflowId, deleteTaxRegionsWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<void> => { (input: WorkflowData<DeleteTaxRegionsWorkflowInput>): WorkflowResponse<void> => {
return new WorkflowResponse(deleteTaxRegionsStep(input.ids)) return new WorkflowResponse(deleteTaxRegionsStep(input.ids))
} }
) )
@@ -11,15 +11,18 @@ import {
listTaxRateRuleIdsStep, listTaxRateRuleIdsStep,
} from "../steps" } from "../steps"
type WorkflowInput = { export type SetTaxRatesRulesWorkflowInput = {
tax_rate_ids: string[] tax_rate_ids: string[]
rules: Omit<CreateTaxRateRuleDTO, "tax_rate_id">[] rules: Omit<CreateTaxRateRuleDTO, "tax_rate_id">[]
} }
export const setTaxRateRulesWorkflowId = "set-tax-rate-rules" export const setTaxRateRulesWorkflowId = "set-tax-rate-rules"
/**
* This workflow sets the rules of tax rates.
*/
export const setTaxRateRulesWorkflow = createWorkflow( export const setTaxRateRulesWorkflow = createWorkflow(
setTaxRateRulesWorkflowId, setTaxRateRulesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<TaxRateRuleDTO[]> => { (input: WorkflowData<SetTaxRatesRulesWorkflowInput>): WorkflowResponse<TaxRateRuleDTO[]> => {
const ruleIds = listTaxRateRuleIdsStep({ const ruleIds = listTaxRateRuleIdsStep({
selector: { tax_rate_id: input.tax_rate_ids }, selector: { tax_rate_id: input.tax_rate_ids },
}) })
@@ -20,14 +20,12 @@ import {
} from "../steps" } from "../steps"
// import { setTaxRateRulesWorkflow } from "./set-tax-rate-rules" // import { setTaxRateRulesWorkflow } from "./set-tax-rate-rules"
type UpdateTaxRatesStepInput = { export type UpdateTaxRatesWorkflowInput = {
selector: FilterableTaxRateProps selector: FilterableTaxRateProps
update: UpdateTaxRateDTO update: UpdateTaxRateDTO
} }
type WorkflowInput = UpdateTaxRatesStepInput export type MaybeListTaxRateRuleIdsStepInput = {
type StepInput = {
tax_rate_ids: string[] tax_rate_ids: string[]
update: UpdateTaxRateDTO update: UpdateTaxRateDTO
} }
@@ -65,9 +63,12 @@ type StepInput = {
// ) // )
const maybeListTaxRateRuleIdsStepId = "maybe-list-tax-rate-rule-ids" const maybeListTaxRateRuleIdsStepId = "maybe-list-tax-rate-rule-ids"
const maybeListTaxRateRuleIdsStep = createStep( /**
* This step lists the rules to update in a tax rate update object.
*/
export const maybeListTaxRateRuleIdsStep = createStep(
maybeListTaxRateRuleIdsStepId, maybeListTaxRateRuleIdsStepId,
async (input: StepInput, { container }) => { async (input: MaybeListTaxRateRuleIdsStepInput, { container }) => {
const { update, tax_rate_ids } = input const { update, tax_rate_ids } = input
if (!update.rules) { if (!update.rules) {
@@ -88,9 +89,12 @@ const maybeListTaxRateRuleIdsStep = createStep(
) )
export const updateTaxRatesWorkflowId = "update-tax-rates" export const updateTaxRatesWorkflowId = "update-tax-rates"
/**
* This workflow updates tax rates matching specified filters.
*/
export const updateTaxRatesWorkflow = createWorkflow( export const updateTaxRatesWorkflow = createWorkflow(
updateTaxRatesWorkflowId, updateTaxRatesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<TaxRateDTO[]> => { (input: WorkflowData<UpdateTaxRatesWorkflowInput>): WorkflowResponse<TaxRateDTO[]> => {
const cleanedUpdateInput = transform(input, (data) => { const cleanedUpdateInput = transform(input, (data) => {
// Transform clones data so we can safely modify it // Transform clones data so we can safely modify it
if (data.update.rules) { if (data.update.rules) {