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

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

View File

@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const createTaxRateRulesStepId = "create-tax-rate-rules"
/**
* This step creates one or more tax rate rules.
*/
export const createTaxRateRulesStep = createStep(
createTaxRateRulesStepId,
async (data: CreateTaxRateRuleDTO[], { container }) => {

View File

@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const createTaxRatesStepId = "create-tax-rates"
/**
* This step creates one or more tax rates.
*/
export const createTaxRatesStep = createStep(
createTaxRatesStepId,
async (data: CreateTaxRateDTO[], { container }) => {

View File

@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const createTaxRegionsStepId = "create-tax-regions"
/**
* This step creates one or more tax regions.
*/
export const createTaxRegionsStep = createStep(
createTaxRegionsStepId,
async (data: CreateTaxRegionDTO[], { container }) => {

View File

@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const deleteTaxRateRulesStepId = "delete-tax-rate-rules"
/**
* This step deletes one or more tax rate rules.
*/
export const deleteTaxRateRulesStep = createStep(
deleteTaxRateRulesStepId,
async (ids: string[], { container }) => {

View File

@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
export const deleteTaxRatesStepId = "delete-tax-rates"
/**
* This step deletes one or more tax rates.
*/
export const deleteTaxRatesStep = createStep(
deleteTaxRatesStepId,
async (ids: string[], { container }) => {

View File

@@ -3,6 +3,9 @@ import { ModuleRegistrationName } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
export const deleteTaxRegionsStepId = "delete-tax-regions"
/**
* This step deletes one or more tax regions.
*/
export const deleteTaxRegionsStep = createStep(
deleteTaxRegionsStepId,
async (ids: string[], { container }) => {

View File

@@ -2,14 +2,17 @@ import { FilterableTaxRateProps, ITaxModuleService } from "@medusajs/types"
import { ModuleRegistrationName } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
type StepInput = {
export type ListTaxRateIdsStepInput = {
selector: FilterableTaxRateProps
}
export const listTaxRateIdsStepId = "list-tax-rate-ids"
/**
* This step retrieves the IDs of tax rates matching the specified filters.
*/
export const listTaxRateIdsStep = createStep(
listTaxRateIdsStepId,
async (input: StepInput, { container }) => {
async (input: ListTaxRateIdsStepInput, { container }) => {
const service = container.resolve<ITaxModuleService>(
ModuleRegistrationName.TAX
)

View File

@@ -2,14 +2,17 @@ import { FilterableTaxRateRuleProps, ITaxModuleService } from "@medusajs/types"
import { ModuleRegistrationName } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
type StepInput = {
export type ListTaxRateRuleIdsStepInput = {
selector: FilterableTaxRateRuleProps
}
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(
listTaxRateRuleIdsStepId,
async (input: StepInput, { container }) => {
async (input: ListTaxRateRuleIdsStepInput, { container }) => {
const service = container.resolve<ITaxModuleService>(
ModuleRegistrationName.TAX
)

View File

@@ -9,12 +9,15 @@ import {
} from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
type UpdateTaxRatesStepInput = {
export type UpdateTaxRatesStepInput = {
selector: FilterableTaxRateProps
update: UpdateTaxRateDTO
}
export const updateTaxRatesStepId = "update-tax-rates"
/**
* This step updates tax rates matching the specified filters.
*/
export const updateTaxRatesStep = createStep(
updateTaxRatesStepId,
async (data: UpdateTaxRatesStepInput, { container }) => {

View File

@@ -6,14 +6,17 @@ import {
} from "@medusajs/workflows-sdk"
import { createTaxRateRulesStep } from "../steps"
type WorkflowInput = {
export type CreateTaxRateRulesWorkflowInput = {
rules: CreateTaxRateRuleDTO[]
}
export const createTaxRateRulesWorkflowId = "create-tax-rate-rules"
/**
* This workflow creates one or more tax rate rules.
*/
export const createTaxRateRulesWorkflow = createWorkflow(
createTaxRateRulesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<TaxRateRuleDTO[]> => {
(input: WorkflowData<CreateTaxRateRulesWorkflowInput>): WorkflowResponse<TaxRateRuleDTO[]> => {
return new WorkflowResponse(createTaxRateRulesStep(input.rules))
}
)

View File

@@ -6,12 +6,13 @@ import {
} from "@medusajs/workflows-sdk"
import { createTaxRatesStep } from "../steps"
type WorkflowInput = CreateTaxRateDTO[]
export const createTaxRatesWorkflowId = "create-tax-rates"
/**
* This workflow creates one or more tax rates.
*/
export const createTaxRatesWorkflow = createWorkflow(
createTaxRatesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<TaxRateDTO[]> => {
(input: WorkflowData<CreateTaxRateDTO[]>): WorkflowResponse<TaxRateDTO[]> => {
return new WorkflowResponse(createTaxRatesStep(input))
}
)

View File

@@ -6,12 +6,13 @@ import {
} from "@medusajs/workflows-sdk"
import { createTaxRegionsStep } from "../steps"
type WorkflowInput = CreateTaxRegionDTO[]
export const createTaxRegionsWorkflowId = "create-tax-regions"
/**
* This workflow creates one or more tax regions.
*/
export const createTaxRegionsWorkflow = createWorkflow(
createTaxRegionsWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<TaxRegionDTO[]> => {
(input: WorkflowData<CreateTaxRegionDTO[]>): WorkflowResponse<TaxRegionDTO[]> => {
return new WorkflowResponse(createTaxRegionsStep(input))
}
)

View File

@@ -5,12 +5,15 @@ import {
} from "@medusajs/workflows-sdk"
import { deleteTaxRateRulesStep } from "../steps"
type WorkflowInput = { ids: string[] }
export type DeleteTaxRateRulesWorkflowInput = { ids: string[] }
export const deleteTaxRateRulesWorkflowId = "delete-tax-rate-rules"
/**
* This workflow deletes one or more tax rate rules.
*/
export const deleteTaxRateRulesWorkflow = createWorkflow(
deleteTaxRateRulesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<void> => {
(input: WorkflowData<DeleteTaxRateRulesWorkflowInput>): WorkflowResponse<void> => {
return new WorkflowResponse(deleteTaxRateRulesStep(input.ids))
}
)

View File

@@ -5,12 +5,15 @@ import {
} from "@medusajs/workflows-sdk"
import { deleteTaxRatesStep } from "../steps"
type WorkflowInput = { ids: string[] }
export type DeleteTaxRatesWorkflowInput = { ids: string[] }
export const deleteTaxRatesWorkflowId = "delete-tax-rates"
/**
* This workflow deletes one or more tax rates.
*/
export const deleteTaxRatesWorkflow = createWorkflow(
deleteTaxRatesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<void> => {
(input: WorkflowData<DeleteTaxRatesWorkflowInput>): WorkflowResponse<void> => {
return new WorkflowResponse(deleteTaxRatesStep(input.ids))
}
)

View File

@@ -5,12 +5,15 @@ import {
} from "@medusajs/workflows-sdk"
import { deleteTaxRegionsStep } from "../steps"
type WorkflowInput = { ids: string[] }
export type DeleteTaxRegionsWorkflowInput = { ids: string[] }
export const deleteTaxRegionsWorkflowId = "delete-tax-regions"
/**
* This workflow deletes one or more tax regions.
*/
export const deleteTaxRegionsWorkflow = createWorkflow(
deleteTaxRegionsWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<void> => {
(input: WorkflowData<DeleteTaxRegionsWorkflowInput>): WorkflowResponse<void> => {
return new WorkflowResponse(deleteTaxRegionsStep(input.ids))
}
)

View File

@@ -11,15 +11,18 @@ import {
listTaxRateRuleIdsStep,
} from "../steps"
type WorkflowInput = {
export type SetTaxRatesRulesWorkflowInput = {
tax_rate_ids: string[]
rules: Omit<CreateTaxRateRuleDTO, "tax_rate_id">[]
}
export const setTaxRateRulesWorkflowId = "set-tax-rate-rules"
/**
* This workflow sets the rules of tax rates.
*/
export const setTaxRateRulesWorkflow = createWorkflow(
setTaxRateRulesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<TaxRateRuleDTO[]> => {
(input: WorkflowData<SetTaxRatesRulesWorkflowInput>): WorkflowResponse<TaxRateRuleDTO[]> => {
const ruleIds = listTaxRateRuleIdsStep({
selector: { tax_rate_id: input.tax_rate_ids },
})

View File

@@ -20,14 +20,12 @@ import {
} from "../steps"
// import { setTaxRateRulesWorkflow } from "./set-tax-rate-rules"
type UpdateTaxRatesStepInput = {
export type UpdateTaxRatesWorkflowInput = {
selector: FilterableTaxRateProps
update: UpdateTaxRateDTO
}
type WorkflowInput = UpdateTaxRatesStepInput
type StepInput = {
export type MaybeListTaxRateRuleIdsStepInput = {
tax_rate_ids: string[]
update: UpdateTaxRateDTO
}
@@ -65,9 +63,12 @@ type StepInput = {
// )
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,
async (input: StepInput, { container }) => {
async (input: MaybeListTaxRateRuleIdsStepInput, { container }) => {
const { update, tax_rate_ids } = input
if (!update.rules) {
@@ -88,9 +89,12 @@ const maybeListTaxRateRuleIdsStep = createStep(
)
export const updateTaxRatesWorkflowId = "update-tax-rates"
/**
* This workflow updates tax rates matching specified filters.
*/
export const updateTaxRatesWorkflow = createWorkflow(
updateTaxRatesWorkflowId,
(input: WorkflowData<WorkflowInput>): WorkflowResponse<TaxRateDTO[]> => {
(input: WorkflowData<UpdateTaxRatesWorkflowInput>): WorkflowResponse<TaxRateDTO[]> => {
const cleanedUpdateInput = transform(input, (data) => {
// Transform clones data so we can safely modify it
if (data.update.rules) {