chore: make module loaders DML aware and auto generate joiner config (#7781)

* chore: make module loaders DML aware and auto generate joiner config

* fixes and cleanup

* improve dml entity check

* add unit tests on load resources

* cleanup deps

* cleanup deps

* cleanup Modules

* finalise

* fix modules-sdk jest

* fix modules-sdk jest

* fix import

* fix import
This commit is contained in:
Adrien de Peretti authored and GitHub committed 2024-06-20 18:18:07 +02:00
1 parent 03924a4ff6
commit 937a632eb6
191 files changed
+1105 -613

No files matched your search

@@ -1,7 +1,6 @@
import { Modules } from "@medusajs/modules-sdk"
import { LinkWorkflowInput } from "@medusajs/types/src"
import { ContainerRegistrationKeys, promiseAll } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
import { ContainerRegistrationKeys, Modules, promiseAll } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
export const linkSalesChannelsToApiKeyStepId = "link-sales-channels-to-api-key"
export const linkSalesChannelsToApiKeyStep = createStep(
@@ -1,7 +1,7 @@
import { Modules } from "@medusajs/modules-sdk"
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk"
import { createWorkflow, WorkflowData } from "@medusajs/workflows-sdk"
import { removeRemoteLinkStep } from "../../common/steps/remove-remote-links"
import { deleteApiKeysStep } from "../steps"
import { Modules } from "@medusajs/utils"
type WorkflowInput = { ids: string[] }
@@ -1,6 +1,5 @@
import { Modules } from "@medusajs/modules-sdk"
import { ContainerRegistrationKeys } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
import { ContainerRegistrationKeys, Modules } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
type StepInput = {
links: {
@@ -1,7 +1,7 @@
import { LinkModuleUtils, Modules } from "@medusajs/modules-sdk"
import { LinkModuleUtils } from "@medusajs/modules-sdk"
import { CartWorkflowDTO } from "@medusajs/types"
import { isObject, remoteQueryObjectFromString } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
import { isObject, Modules, remoteQueryObjectFromString } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
interface StepInput {
cart_or_cart_id: string | CartWorkflowDTO
@@ -1,11 +1,7 @@
import {
LinkModuleUtils,
ModuleRegistrationName,
Modules,
} from "@medusajs/modules-sdk"
import { LinkModuleUtils, ModuleRegistrationName } from "@medusajs/modules-sdk"
import { IPromotionModuleService } from "@medusajs/types"
import { PromotionActions } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
import { Modules, PromotionActions } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
interface StepInput {
id: string
@@ -1,7 +1,7 @@
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk"
import { createWorkflow, WorkflowData } from "@medusajs/workflows-sdk"
import { deleteFulfillmentSetsStep } from "../steps"
import { removeRemoteLinkStep } from "../../common"
import { Modules } from "@medusajs/modules-sdk"
import { Modules } from "@medusajs/utils"
export const deleteFulfillmentSetsWorkflowId =
"delete-fulfillment-sets-workflow"
@@ -1,9 +1,5 @@
import {
DeleteEntityInput,
ModuleRegistrationName,
Modules,
} from "@medusajs/modules-sdk"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
import { ModuleRegistrationName } from "@medusajs/modules-sdk"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
import { IInventoryService } from "@medusajs/types"
import { MedusaError } from "@medusajs/utils"
@@ -1,6 +1,9 @@
import { ContainerRegistrationKeys, MedusaError } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
import { Modules } from "@medusajs/modules-sdk"
import {
ContainerRegistrationKeys,
MedusaError,
Modules,
} from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
export const validateInventoryItemsForCreateStepId =
"validate-inventory-items-for-create-step"
@@ -1,8 +1,8 @@
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk"
import { createWorkflow, WorkflowData } from "@medusajs/workflows-sdk"
import { Modules } from "@medusajs/modules-sdk"
import { deleteInventoryItemStep } from "../steps"
import { removeRemoteLinkStep } from "../../common/steps/remove-remote-links"
import { Modules } from "@medusajs/utils"
export const deleteInventoryItemWorkflowId = "delete-inventory-item-workflow"
export const deleteInventoryItemWorkflow = createWorkflow(
@@ -1,12 +1,11 @@
import { Modules } from "@medusajs/modules-sdk"
import { FulfillmentDTO, OrderDTO, OrderWorkflow } from "@medusajs/types"
import { MedusaError } from "@medusajs/utils"
import { MedusaError, Modules } from "@medusajs/utils"
import {
WorkflowData,
createStep,
createWorkflow,
parallelize,
transform,
WorkflowData,
} from "@medusajs/workflows-sdk"
import { useRemoteQueryStep } from "../../common"
import { cancelFulfillmentWorkflow } from "../../fulfillment"
@@ -1,4 +1,3 @@
import { Modules } from "@medusajs/modules-sdk"
import {
FulfillmentDTO,
FulfillmentWorkflow,
@@ -6,13 +5,13 @@ import {
OrderWorkflow,
ReservationItemDTO,
} from "@medusajs/types"
import { MedusaError } from "@medusajs/utils"
import { MedusaError, Modules } from "@medusajs/utils"
import {
WorkflowData,
createStep,
createWorkflow,
parallelize,
transform,
WorkflowData,
} from "@medusajs/workflows-sdk"
import { createRemoteLinkStep, useRemoteQueryStep } from "../../common"
import { createFulfillmentWorkflow } from "../../fulfillment"
@@ -1,4 +1,3 @@
import { Modules } from "@medusajs/modules-sdk"
import {
CreateOrderShippingMethodDTO,
FulfillmentWorkflow,
@@ -8,19 +7,20 @@ import {
WithCalculatedPrice,
} from "@medusajs/types"
import {
arrayDifference,
ContainerRegistrationKeys,
isDefined,
MathBN,
MedusaError,
arrayDifference,
isDefined,
Modules,
remoteQueryObjectFromString,
} from "@medusajs/utils"
import {
WorkflowData,
createStep,
createWorkflow,
parallelize,
transform,
WorkflowData,
} from "@medusajs/workflows-sdk"
import { createRemoteLinkStep, useRemoteQueryStep } from "../../common"
import { createReturnFulfillmentWorkflow } from "../../fulfillment"
@@ -1,6 +1,5 @@
import { Modules } from "@medusajs/modules-sdk"
import { ContainerRegistrationKeys } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
import { ContainerRegistrationKeys, Modules } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
type StepInput = {
links: {
@@ -1,11 +1,10 @@
import { ModuleRegistrationName, Modules } from "@medusajs/modules-sdk"
import { IProductModuleService } from "@medusajs/types"
import {
arrayDifference,
ContainerRegistrationKeys,
MedusaError,
arrayDifference,
Modules,
} from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
type StepInput = {
ids: string[]
@@ -1,4 +1,4 @@
import { LinkDefinition, Modules } from "@medusajs/modules-sdk"
import { LinkDefinition } from "@medusajs/modules-sdk"
import { InventoryTypes, PricingTypes, ProductTypes } from "@medusajs/types"
import {
WorkflowData,
@@ -11,6 +11,7 @@ import { createInventoryItemsWorkflow } from "../../inventory/workflows/create-i
import { createPriceSetsStep } from "../../pricing"
import { createProductVariantsStep } from "../steps/create-product-variants"
import { createVariantPricingLinkStep } from "../steps/create-variant-pricing-link"
import { Modules } from "@medusajs/utils"
// TODO: Create separate typings for the workflow input
type WorkflowInput = {
@@ -1,7 +1,7 @@
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk"
import { Modules } from "@medusajs/modules-sdk"
import { createWorkflow, WorkflowData } from "@medusajs/workflows-sdk"
import { deleteProductVariantsStep } from "../steps"
import { removeRemoteLinkStep } from "../../common"
import { Modules } from "@medusajs/utils"
type WorkflowInput = { ids: string[] }
@@ -1,13 +1,13 @@
import { Modules } from "@medusajs/modules-sdk"
import {
WorkflowData,
createWorkflow,
parallelize,
transform,
WorkflowData,
} from "@medusajs/workflows-sdk"
import { removeRemoteLinkStep } from "../../common"
import { deleteProductsStep } from "../steps/delete-products"
import { getProductsStep } from "../steps/get-products"
import { Modules } from "@medusajs/utils"
type WorkflowInput = { ids: string[] }
@@ -1,8 +1,7 @@
import { updateProductsStep } from "../steps/update-products"
import { Modules } from "@medusajs/modules-sdk"
import { ProductTypes } from "@medusajs/types"
import { arrayDifference } from "@medusajs/utils"
import { arrayDifference, Modules } from "@medusajs/utils"
import {
createWorkflow,
transform,
@@ -1,7 +1,6 @@
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
import { ContainerRegistrationKeys } from "@medusajs/utils"
import { Modules } from "@medusajs/modules-sdk"
import { ContainerRegistrationKeys, Modules } from "@medusajs/utils"
interface StepInput {
links: {
@@ -1,5 +1,4 @@
import { Modules, RemoteLink } from "@medusajs/modules-sdk"
import { ContainerRegistrationKeys } from "@medusajs/utils"
import { ContainerRegistrationKeys, Modules } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
interface StepInput {
@@ -1,7 +1,7 @@
import { Modules, RemoteLink } from "@medusajs/modules-sdk"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
import { RemoteLink } from "@medusajs/modules-sdk"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
import { ContainerRegistrationKeys } from "@medusajs/utils"
import { ContainerRegistrationKeys, Modules } from "@medusajs/utils"
interface StepInput {
links: {
@@ -1,6 +1,5 @@
import { Modules } from "@medusajs/modules-sdk"
import { ContainerRegistrationKeys } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
import { ContainerRegistrationKeys, Modules } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
interface StepInput {
links: {
@@ -1,8 +1,8 @@
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk"
import { createWorkflow, WorkflowData } from "@medusajs/workflows-sdk"
import { Modules } from "@medusajs/modules-sdk"
import { deleteSalesChannelsStep } from "../steps/delete-sales-channels"
import { removeRemoteLinkStep } from "../../common/steps/remove-remote-links"
import { Modules } from "@medusajs/utils"
type WorkflowInput = { ids: string[] }
@@ -1,8 +1,8 @@
import { WorkflowData, createWorkflow } from "@medusajs/workflows-sdk"
import { Modules } from "@medusajs/modules-sdk"
import { createWorkflow, WorkflowData } from "@medusajs/workflows-sdk"
import { deleteShippingProfilesStep } from "../steps"
import { removeRemoteLinkStep } from "../../common"
import { Modules } from "@medusajs/utils"
export const deleteShippingProfileWorkflowId =
"delete-shipping-profile-workflow"
@@ -1,6 +1,5 @@
import { Modules } from "@medusajs/modules-sdk"
import { ContainerRegistrationKeys } from "@medusajs/utils"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
import { ContainerRegistrationKeys, Modules } from "@medusajs/utils"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
interface StepInput {
input: {
@@ -1,9 +1,9 @@
import {
DeleteEntityInput,
ModuleRegistrationName,
Modules,
} from "@medusajs/modules-sdk"
import { StepResponse, createStep } from "@medusajs/workflows-sdk"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
import { Modules } from "@medusajs/utils"
export const deleteStockLocationsStepId = "delete-stock-locations-step"
export const deleteStockLocationsStep = createStep(