From 03924a4ff614f3d5e4c7d0c799d4126a8e1611f6 Mon Sep 17 00:00:00 2001 From: Riqwan Thamir Date: Thu, 20 Jun 2024 12:59:33 +0200 Subject: [PATCH] chore: move to swc/jest (#7739) * chore: move to swc * chore: fix tax rate tests * chore: undo failed test * chore: fix unit tests script * chore: use node 20 * Update scripts/run-workspace-unit-tests-in-chunks.sh --- package.json | 2 +- packages/core/modules-sdk/jest.config.js | 10 +------ packages/core/modules-sdk/package.json | 1 - .../core/modules-sdk/src/medusa-module.ts | 6 ++-- packages/core/modules-sdk/src/remote-link.ts | 2 +- packages/core/modules-sdk/src/remote-query.ts | 2 +- packages/core/orchestration/jest.config.js | 10 +------ packages/core/orchestration/package.json | 1 - .../src/workflow/global-workflow.ts | 2 +- .../src/workflow/local-workflow.ts | 2 +- .../src/workflow/workflow-manager.ts | 12 ++++---- packages/core/workflows-sdk/jest.config.js | 10 +------ packages/core/workflows-sdk/package.json | 1 - .../core/workflows-sdk/src/medusa-workflow.ts | 6 ++-- packages/medusa/package.json | 1 - packages/modules/api-key/jest.config.js | 10 ++++--- packages/modules/api-key/package.json | 1 - .../auth-module-service/auth-identity.spec.ts | 4 +-- packages/modules/auth/jest.config.js | 10 ++++--- packages/modules/auth/package.json | 2 -- .../auth/src/models/provider-identity.ts | 3 +- packages/modules/cache-inmemory/package.json | 1 - packages/modules/cache-redis/jest.config.js | 10 +------ packages/modules/cache-redis/package.json | 1 - packages/modules/cart/jest.config.js | 10 ++++--- packages/modules/cart/package.json | 1 - packages/modules/cart/src/models/cart.ts | 9 +++--- .../cart/src/models/line-item-adjustment.ts | 3 +- .../cart/src/models/line-item-tax-line.ts | 3 +- packages/modules/cart/src/models/line-item.ts | 13 +++++---- .../src/models/shipping-method-adjustment.ts | 3 +- .../src/models/shipping-method-tax-line.ts | 3 +- .../cart/src/models/shipping-method.ts | 9 +++--- packages/modules/customer/jest.config.js | 10 ++++--- packages/modules/customer/package.json | 1 - .../src/models/customer-group-customer.ts | 9 +++--- .../customer/src/models/customer-group.ts | 3 +- .../modules/customer/src/models/customer.ts | 5 ++-- .../modules/event-bus-local/jest.config.js | 8 +----- packages/modules/event-bus-local/package.json | 1 - .../modules/event-bus-redis/jest.config.js | 10 +------ packages/modules/event-bus-redis/package.json | 1 - packages/modules/file/jest.config.js | 10 ++++--- packages/modules/file/package.json | 1 - packages/modules/fulfillment/jest.config.js | 10 ++++--- packages/modules/fulfillment/package.json | 1 - .../src/models/fulfillment-item.ts | 3 +- .../src/models/fulfillment-label.ts | 3 +- .../fulfillment/src/models/fulfillment-set.ts | 3 +- .../fulfillment/src/models/fulfillment.ts | 9 +++--- .../fulfillment/src/models/geo-zone.ts | 3 +- .../fulfillment/src/models/service-zone.ts | 7 +++-- .../src/models/shipping-option-rule.ts | 3 +- .../src/models/shipping-option-type.ts | 3 +- .../fulfillment/src/models/shipping-option.ts | 13 +++++---- .../src/models/shipping-profile.ts | 3 +- .../modules/inventory-next/jest.config.js | 10 ++++--- packages/modules/inventory-next/package.json | 1 - .../src/models/inventory-item.ts | 17 +++++------ .../src/models/inventory-level.ts | 11 +++++--- .../src/models/reservation-item.ts | 3 +- packages/modules/link-modules/jest.config.js | 10 ++++--- packages/modules/link-modules/package.json | 1 - packages/modules/notification/jest.config.js | 10 ++++--- packages/modules/notification/package.json | 1 - packages/modules/order/jest.config.js | 10 ++++--- packages/modules/order/package.json | 1 - .../order/src/models/claim-item-image.ts | 3 +- .../modules/order/src/models/claim-item.ts | 9 +++--- packages/modules/order/src/models/claim.ts | 13 +++++---- packages/modules/order/src/models/exchange.ts | 9 +++--- .../order/src/models/line-item-adjustment.ts | 4 +-- .../order/src/models/line-item-tax-line.ts | 3 +- .../modules/order/src/models/line-item.ts | 11 ++++---- .../order/src/models/order-change-action.ts | 5 ++-- .../modules/order/src/models/order-change.ts | 7 +++-- .../modules/order/src/models/order-item.ts | 5 ++-- .../order/src/models/order-shipping-method.ts | 11 ++++---- .../modules/order/src/models/order-summary.ts | 3 +- packages/modules/order/src/models/order.ts | 15 +++++----- .../modules/order/src/models/return-reason.ts | 5 ++-- packages/modules/order/src/models/return.ts | 9 +++--- .../src/models/shipping-method-adjustment.ts | 4 +-- .../src/models/shipping-method-tax-line.ts | 4 +-- .../order/src/models/shipping-method.ts | 7 +++-- packages/modules/order/src/models/tax-line.ts | 2 +- .../modules/order/src/models/transaction.ts | 9 +++--- .../services/payment-module/index.spec.ts | 2 +- .../payment/src/models/payment-collection.ts | 7 +++-- .../payment/src/models/payment-session.ts | 5 ++-- .../modules/payment/src/models/payment.ts | 10 ++++--- packages/modules/payment/src/models/refund.ts | 3 +- .../src/models/price-list-rule-value.ts | 3 +- .../pricing/src/models/price-list-rule.ts | 7 +++-- .../modules/pricing/src/models/price-list.ts | 7 +++-- .../modules/pricing/src/models/price-rule.ts | 7 +++-- .../modules/pricing/src/models/price-set.ts | 7 +++-- packages/modules/pricing/src/models/price.ts | 7 +++-- .../modules/pricing/src/models/rule-type.ts | 3 +- packages/modules/product/jest.config.js | 10 ++++--- packages/modules/product/package.json | 1 - .../src/models/application-method.ts | 7 +++-- .../promotion/src/models/campaign-budget.ts | 3 +- .../modules/promotion/src/models/campaign.ts | 5 ++-- .../src/models/promotion-rule-value.ts | 3 +- .../promotion/src/models/promotion-rule.ts | 9 +++--- .../modules/promotion/src/models/promotion.ts | 7 +++-- .../providers/auth-emailpass/jest.config.js | 4 +-- .../providers/auth-google/jest.config.js | 4 +-- .../modules/providers/file-s3/jest.config.js | 6 ---- .../fulfillment-manual/jest.config.js | 10 +------ .../notification-local/jest.config.js | 4 +-- .../notification-sendgrid/jest.config.js | 6 ---- .../providers/payment-stripe/jest.config.js | 10 +------ packages/modules/region/jest.config.js | 10 ++++--- packages/modules/region/package.json | 1 - packages/modules/region/src/models/region.ts | 2 +- packages/modules/sales-channel/jest.config.js | 10 ++++--- packages/modules/sales-channel/package.json | 1 - .../sales-channel/src/models/sales-channel.ts | 2 +- .../stock-location-next/jest.config.js | 10 ++++--- .../modules/stock-location-next/package.json | 1 - packages/modules/store/jest.config.js | 10 ++++--- packages/modules/store/package.json | 1 - packages/modules/tax/jest.config.js | 10 ++++--- packages/modules/tax/package.json | 1 - .../modules/tax/src/models/tax-rate-rule.ts | 12 ++++---- packages/modules/tax/src/models/tax-rate.ts | 9 +++--- packages/modules/tax/src/models/tax-region.ts | 7 +++-- packages/modules/user/jest.config.js | 10 ++++--- packages/modules/user/package.json | 1 - .../workflow-engine-inmemory/jest.config.js | 10 ++++--- .../workflow-engine-inmemory/package.json | 1 - .../workflow-engine-redis/jest.config.js | 10 ++++--- .../workflow-engine-redis/package.json | 1 - scripts/run-workspace-unit-tests-in-chunks.sh | 3 +- yarn.lock | 28 ------------------- 137 files changed, 386 insertions(+), 419 deletions(-) diff --git a/package.json b/package.json index 4284892f4a..0bde02e770 100644 --- a/package.json +++ b/package.json @@ -58,7 +58,7 @@ "lint:path": "eslint --ignore-path .eslintignore --ext .js,.ts,.tsx", "prettier": "prettier", "jest": "jest", - "test": "turbo run test --concurrency=50% --no-daemon --no-cache --force --filter='./packages/*' --filter='./packages/core/*' --filter='./packages/cli/*' --filter='./packages/modules/*' --filter='./packages/modules/providers/*'", + "test": "turbo run test --concurrency=50% --no-daemon --no-cache --force", "test:chunk": "./scripts/run-workspace-unit-tests-in-chunks.sh", "test:integration:packages": "turbo run test:integration --concurrency=50% --no-daemon --no-cache --force --filter='./packages/*' --filter='./packages/core/*' --filter='./packages/cli/*' --filter='./packages/modules/*' --filter='./packages/modules/providers/*'", "test:integration:api": "turbo run test:integration:chunk --concurrency=50% --no-daemon --no-cache --force --filter=integration-tests-api", diff --git a/packages/core/modules-sdk/jest.config.js b/packages/core/modules-sdk/jest.config.js index bddd3c8819..c7b7c431b7 100644 --- a/packages/core/modules-sdk/jest.config.js +++ b/packages/core/modules-sdk/jest.config.js @@ -1,13 +1,5 @@ module.exports = { - transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", - { - tsconfig: "tsconfig.json", - isolatedModules: true, - }, - ], - }, + transform: { "^.+\\.[jt]s?$": "@swc/jest" }, testEnvironment: `node`, moduleFileExtensions: [`js`, `ts`], } diff --git a/packages/core/modules-sdk/package.json b/packages/core/modules-sdk/package.json index 073be4edc5..45cd774958 100644 --- a/packages/core/modules-sdk/package.json +++ b/packages/core/modules-sdk/package.json @@ -24,7 +24,6 @@ "cross-env": "^5.2.1", "jest": "^29.7.0", "rimraf": "^5.0.1", - "ts-jest": "^29.1.1", "typescript": "^5.1.6" }, "dependencies": { diff --git a/packages/core/modules-sdk/src/medusa-module.ts b/packages/core/modules-sdk/src/medusa-module.ts index 557879a71e..8d0be67e6f 100644 --- a/packages/core/modules-sdk/src/medusa-module.ts +++ b/packages/core/modules-sdk/src/medusa-module.ts @@ -84,7 +84,7 @@ export type RegisterModuleJoinerConfig = | ModuleJoinerConfig | ((modules: ModuleJoinerConfig[]) => ModuleJoinerConfig) -export class MedusaModule { +class MedusaModule { private static instances_: Map = new Map() private static modules_: Map = new Map() @@ -589,4 +589,6 @@ export class MedusaModule { } global.MedusaModule ??= MedusaModule -exports.MedusaModule = global.MedusaModule +const GlobalMedusaModule = global.MedusaModule as typeof MedusaModule + +export { GlobalMedusaModule as MedusaModule } diff --git a/packages/core/modules-sdk/src/remote-link.ts b/packages/core/modules-sdk/src/remote-link.ts index 4eec0fc494..8fc0eb4e68 100644 --- a/packages/core/modules-sdk/src/remote-link.ts +++ b/packages/core/modules-sdk/src/remote-link.ts @@ -63,7 +63,7 @@ export class RemoteLink { ) } - for (const mod of modulesLoaded) { + for (const mod of modulesLoaded || []) { this.addModule(mod) } } diff --git a/packages/core/modules-sdk/src/remote-query.ts b/packages/core/modules-sdk/src/remote-query.ts index c7649d0af1..75ab428c5f 100644 --- a/packages/core/modules-sdk/src/remote-query.ts +++ b/packages/core/modules-sdk/src/remote-query.ts @@ -39,7 +39,7 @@ export class RemoteQuery { ) } - for (const mod of modulesLoaded) { + for (const mod of modulesLoaded || []) { if (!mod.__definition.isQueryable) { continue } diff --git a/packages/core/orchestration/jest.config.js b/packages/core/orchestration/jest.config.js index bddd3c8819..c7b7c431b7 100644 --- a/packages/core/orchestration/jest.config.js +++ b/packages/core/orchestration/jest.config.js @@ -1,13 +1,5 @@ module.exports = { - transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", - { - tsconfig: "tsconfig.json", - isolatedModules: true, - }, - ], - }, + transform: { "^.+\\.[jt]s?$": "@swc/jest" }, testEnvironment: `node`, moduleFileExtensions: [`js`, `ts`], } diff --git a/packages/core/orchestration/package.json b/packages/core/orchestration/package.json index 7870aea2f6..4f2a52fe84 100644 --- a/packages/core/orchestration/package.json +++ b/packages/core/orchestration/package.json @@ -23,7 +23,6 @@ "cross-env": "^5.2.1", "jest": "^29.7.0", "rimraf": "^5.0.1", - "ts-jest": "^29.1.1", "typescript": "^5.1.6" }, "dependencies": { diff --git a/packages/core/orchestration/src/workflow/global-workflow.ts b/packages/core/orchestration/src/workflow/global-workflow.ts index d806d4fa07..488579a1d4 100644 --- a/packages/core/orchestration/src/workflow/global-workflow.ts +++ b/packages/core/orchestration/src/workflow/global-workflow.ts @@ -32,7 +32,7 @@ export class GlobalWorkflow extends WorkflowManager { } else if (Array.isArray(modulesLoaded) && modulesLoaded.length) { container = createMedusaContainer() - for (const mod of modulesLoaded) { + for (const mod of modulesLoaded || []) { const registrationName = mod.__definition.registrationName container.register(registrationName, asValue(mod)) } diff --git a/packages/core/orchestration/src/workflow/local-workflow.ts b/packages/core/orchestration/src/workflow/local-workflow.ts index 6e0aeefed6..c7ff5641c9 100644 --- a/packages/core/orchestration/src/workflow/local-workflow.ts +++ b/packages/core/orchestration/src/workflow/local-workflow.ts @@ -79,7 +79,7 @@ export class LocalWorkflow { } else if (Array.isArray(modulesLoaded) && modulesLoaded.length) { container = createMedusaContainer() - for (const mod of modulesLoaded) { + for (const mod of modulesLoaded || []) { const registrationName = mod.__definition.registrationName container.register(registrationName, asValue(mod)) } diff --git a/packages/core/orchestration/src/workflow/workflow-manager.ts b/packages/core/orchestration/src/workflow/workflow-manager.ts index 50bda049e6..2e56839dcf 100644 --- a/packages/core/orchestration/src/workflow/workflow-manager.ts +++ b/packages/core/orchestration/src/workflow/workflow-manager.ts @@ -11,7 +11,6 @@ import { TransactionStepsDefinition, } from "../transaction" import { WorkflowScheduler } from "./scheduler" -import { MedusaError } from "@medusajs/utils" export interface WorkflowDefinition { id: string @@ -51,7 +50,7 @@ export type WorkflowStepHandler = ( args: WorkflowStepHandlerArguments ) => Promise -export class WorkflowManager { +class WorkflowManager { protected static workflows: Map = new Map() protected static scheduler = new WorkflowScheduler() @@ -79,10 +78,7 @@ export class WorkflowManager { static getTransactionDefinition(workflowId): OrchestratorBuilder { if (!WorkflowManager.workflows.has(workflowId)) { - throw new MedusaError( - MedusaError.Types.NOT_FOUND, - `Workflow with id "${workflowId}" not found.` - ) + throw new Error(`Workflow with id "${workflowId}" not found.`) } const workflow = WorkflowManager.workflows.get(workflowId)! @@ -232,4 +228,6 @@ export class WorkflowManager { } global.WorkflowManager ??= WorkflowManager -exports.WorkflowManager = global.WorkflowManager +const GlobalWorkflowManager = global.WorkflowManager + +export { GlobalWorkflowManager as WorkflowManager } diff --git a/packages/core/workflows-sdk/jest.config.js b/packages/core/workflows-sdk/jest.config.js index bddd3c8819..c7b7c431b7 100644 --- a/packages/core/workflows-sdk/jest.config.js +++ b/packages/core/workflows-sdk/jest.config.js @@ -1,13 +1,5 @@ module.exports = { - transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", - { - tsconfig: "tsconfig.json", - isolatedModules: true, - }, - ], - }, + transform: { "^.+\\.[jt]s?$": "@swc/jest" }, testEnvironment: `node`, moduleFileExtensions: [`js`, `ts`], } diff --git a/packages/core/workflows-sdk/package.json b/packages/core/workflows-sdk/package.json index 6cb883a511..9df8ab1f9e 100644 --- a/packages/core/workflows-sdk/package.json +++ b/packages/core/workflows-sdk/package.json @@ -25,7 +25,6 @@ "cross-env": "^5.2.1", "jest": "^29.7.0", "rimraf": "^5.0.1", - "ts-jest": "^29.1.1", "typescript": "^5.1.6" }, "dependencies": { diff --git a/packages/core/workflows-sdk/src/medusa-workflow.ts b/packages/core/workflows-sdk/src/medusa-workflow.ts index a739779dda..569335c70c 100644 --- a/packages/core/workflows-sdk/src/medusa-workflow.ts +++ b/packages/core/workflows-sdk/src/medusa-workflow.ts @@ -2,7 +2,7 @@ import { LocalWorkflow } from "@medusajs/orchestration" import { LoadedModule, MedusaContainer } from "@medusajs/types" import { ExportedWorkflow } from "./helper" -export class MedusaWorkflow { +class MedusaWorkflow { static workflows: Record< string, ( @@ -28,4 +28,6 @@ export class MedusaWorkflow { } global.MedusaWorkflow ??= MedusaWorkflow -exports.MedusaWorkflow = global.MedusaWorkflow +const GlobalMedusaWorkflow = global.MedusaWorkflow + +export { GlobalMedusaWorkflow as MedusaWorkflow } diff --git a/packages/medusa/package.json b/packages/medusa/package.json index 573aa23197..f04bfcc17d 100644 --- a/packages/medusa/package.json +++ b/packages/medusa/package.json @@ -32,7 +32,6 @@ "jest": "^29.7.0", "rimraf": "^5.0.1", "supertest": "^4.0.2", - "ts-jest": "^29.1.1", "typescript": "^5.3.3" }, "scripts": { diff --git a/packages/modules/api-key/jest.config.js b/packages/modules/api-key/jest.config.js index 0c652264ea..d125300e58 100644 --- a/packages/modules/api-key/jest.config.js +++ b/packages/modules/api-key/jest.config.js @@ -6,11 +6,13 @@ module.exports = { "^@types": "/src/types", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/api-key/package.json b/packages/modules/api-key/package.json index 5c0d98eafc..c2cb0df681 100644 --- a/packages/modules/api-key/package.json +++ b/packages/modules/api-key/package.json @@ -40,7 +40,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.44", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/auth/integration-tests/__tests__/auth-module-service/auth-identity.spec.ts b/packages/modules/auth/integration-tests/__tests__/auth-module-service/auth-identity.spec.ts index 340b67191b..5815c6c0e4 100644 --- a/packages/modules/auth/integration-tests/__tests__/auth-module-service/auth-identity.spec.ts +++ b/packages/modules/auth/integration-tests/__tests__/auth-module-service/auth-identity.spec.ts @@ -1,7 +1,7 @@ -import { IAuthModuleService } from "@medusajs/types" import { Modules } from "@medusajs/modules-sdk" -import { createAuthIdentities } from "../../__fixtures__/auth-identity" +import { IAuthModuleService } from "@medusajs/types" import { moduleIntegrationTestRunner, SuiteOptions } from "medusa-test-utils" +import { createAuthIdentities } from "../../__fixtures__/auth-identity" jest.setTimeout(30000) diff --git a/packages/modules/auth/jest.config.js b/packages/modules/auth/jest.config.js index 0c652264ea..d125300e58 100644 --- a/packages/modules/auth/jest.config.js +++ b/packages/modules/auth/jest.config.js @@ -6,11 +6,13 @@ module.exports = { "^@types": "/src/types", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/auth/package.json b/packages/modules/auth/package.json index f58798e328..ff1f884806 100644 --- a/packages/modules/auth/package.json +++ b/packages/modules/auth/package.json @@ -39,8 +39,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.42", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", - "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" }, diff --git a/packages/modules/auth/src/models/provider-identity.ts b/packages/modules/auth/src/models/provider-identity.ts index bf6385938f..9debb0ac67 100644 --- a/packages/modules/auth/src/models/provider-identity.ts +++ b/packages/modules/auth/src/models/provider-identity.ts @@ -5,6 +5,7 @@ import { OnInit, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import { @@ -52,7 +53,7 @@ export default class ProviderIdentity { @ManyToOne(() => AuthIdentity, { persist: false, }) - auth_identity: AuthIdentity + auth_identity: Rel @Property({ columnType: "jsonb", nullable: true }) user_metadata: Record | null diff --git a/packages/modules/cache-inmemory/package.json b/packages/modules/cache-inmemory/package.json index 8442a9d586..a5305701a2 100644 --- a/packages/modules/cache-inmemory/package.json +++ b/packages/modules/cache-inmemory/package.json @@ -24,7 +24,6 @@ "cross-env": "^5.2.1", "jest": "^29.7.0", "rimraf": "^5.0.1", - "ts-jest": "^29.1.1", "typescript": "^5.1.6" }, "scripts": { diff --git a/packages/modules/cache-redis/jest.config.js b/packages/modules/cache-redis/jest.config.js index bddd3c8819..1768319b08 100644 --- a/packages/modules/cache-redis/jest.config.js +++ b/packages/modules/cache-redis/jest.config.js @@ -1,13 +1,5 @@ module.exports = { - transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", - { - tsconfig: "tsconfig.json", - isolatedModules: true, - }, - ], - }, + transform: { "^.+\\.[jt]s$": "@swc/jest" }, testEnvironment: `node`, moduleFileExtensions: [`js`, `ts`], } diff --git a/packages/modules/cache-redis/package.json b/packages/modules/cache-redis/package.json index ee37a21e6b..fc241280ff 100644 --- a/packages/modules/cache-redis/package.json +++ b/packages/modules/cache-redis/package.json @@ -24,7 +24,6 @@ "cross-env": "^5.2.1", "jest": "^29.7.0", "rimraf": "^5.0.1", - "ts-jest": "^29.1.1", "typescript": "^5.1.6" }, "scripts": { diff --git a/packages/modules/cart/jest.config.js b/packages/modules/cart/jest.config.js index 1b7795a88b..6af2cd1a96 100644 --- a/packages/modules/cart/jest.config.js +++ b/packages/modules/cart/jest.config.js @@ -7,11 +7,13 @@ module.exports = { "^@utils": "/src/utils", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/cart/package.json b/packages/modules/cart/package.json index 6770ea3113..feb686047e 100644 --- a/packages/modules/cart/package.json +++ b/packages/modules/cart/package.json @@ -40,7 +40,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.44", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/cart/src/models/cart.ts b/packages/modules/cart/src/models/cart.ts index f9ace5b607..6c403ab8f1 100644 --- a/packages/modules/cart/src/models/cart.ts +++ b/packages/modules/cart/src/models/cart.ts @@ -16,6 +16,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Address from "./address" import LineItem from "./line-item" @@ -115,7 +116,7 @@ export default class Cart { cascade: [Cascade.PERSIST], nullable: true, }) - shipping_address: Address | null + shipping_address: Rel
| null @BillingAddressIdIndex() @ManyToOne({ @@ -131,7 +132,7 @@ export default class Cart { cascade: [Cascade.PERSIST], nullable: true, }) - billing_address: Address | null + billing_address: Rel
| null @Property({ columnType: "jsonb", nullable: true }) metadata: Record | null = null @@ -139,12 +140,12 @@ export default class Cart { @OneToMany(() => LineItem, (lineItem) => lineItem.cart, { cascade: [Cascade.PERSIST, "soft-remove"] as any, }) - items = new Collection(this) + items = new Collection>(this) @OneToMany(() => ShippingMethod, (shippingMethod) => shippingMethod.cart, { cascade: [Cascade.PERSIST, "soft-remove"] as any, }) - shipping_methods = new Collection(this) + shipping_methods = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/cart/src/models/line-item-adjustment.ts b/packages/modules/cart/src/models/line-item-adjustment.ts index a7c121490e..4327e437b6 100644 --- a/packages/modules/cart/src/models/line-item-adjustment.ts +++ b/packages/modules/cart/src/models/line-item-adjustment.ts @@ -11,6 +11,7 @@ import { ManyToOne, OnInit, Property, + Rel, } from "@mikro-orm/core" import AdjustmentLine from "./adjustment-line" import LineItem from "./line-item" @@ -42,7 +43,7 @@ const DeletedAtIndex = createPsqlIndexStatementHelper({ @Filter(DALUtils.mikroOrmSoftDeletableFilterOptions) export default class LineItemAdjustment extends AdjustmentLine { @ManyToOne({ entity: () => LineItem, persist: false }) - item: LineItem + item: Rel @LineItemIdIndex() @ManyToOne({ diff --git a/packages/modules/cart/src/models/line-item-tax-line.ts b/packages/modules/cart/src/models/line-item-tax-line.ts index 173dc05238..d49efee05d 100644 --- a/packages/modules/cart/src/models/line-item-tax-line.ts +++ b/packages/modules/cart/src/models/line-item-tax-line.ts @@ -10,6 +10,7 @@ import { ManyToOne, OnInit, Property, + Rel, } from "@mikro-orm/core" import LineItem from "./line-item" import TaxLine from "./tax-line" @@ -38,7 +39,7 @@ const DeletedAtIndex = createPsqlIndexStatementHelper({ @Filter(DALUtils.mikroOrmSoftDeletableFilterOptions) export default class LineItemTaxLine extends TaxLine { @ManyToOne({ entity: () => LineItem, persist: false }) - item: LineItem + item: Rel @LineItemIdIndex() @ManyToOne({ diff --git a/packages/modules/cart/src/models/line-item.ts b/packages/modules/cart/src/models/line-item.ts index d9c932146d..610d63670b 100644 --- a/packages/modules/cart/src/models/line-item.ts +++ b/packages/modules/cart/src/models/line-item.ts @@ -18,6 +18,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Cart from "./cart" import LineItemAdjustment from "./line-item-adjustment" @@ -76,7 +77,7 @@ export default class LineItem { cart_id: string @ManyToOne({ entity: () => Cart, persist: false }) - cart: Cart + cart: Rel @Property({ columnType: "text" }) title: string @@ -129,13 +130,13 @@ export default class LineItem { variant_option_values: Record | null = null @Property({ columnType: "boolean" }) - requires_shipping = true + requires_shipping: boolean = true @Property({ columnType: "boolean" }) - is_discountable = true + is_discountable: boolean = true @Property({ columnType: "boolean" }) - is_tax_inclusive = false + is_tax_inclusive: boolean = false @MikroOrmBigNumberProperty({ nullable: true }) compare_at_unit_price?: BigNumber | number | null = null @@ -152,12 +153,12 @@ export default class LineItem { @OneToMany(() => LineItemTaxLine, (taxLine) => taxLine.item, { cascade: [Cascade.PERSIST, "soft-remove"] as any, }) - tax_lines = new Collection(this) + tax_lines = new Collection>(this) @OneToMany(() => LineItemAdjustment, (adjustment) => adjustment.item, { cascade: [Cascade.PERSIST, "soft-remove"] as any, }) - adjustments = new Collection(this) + adjustments = new Collection>(this) @Property({ columnType: "jsonb", nullable: true }) metadata: Record | null = null diff --git a/packages/modules/cart/src/models/shipping-method-adjustment.ts b/packages/modules/cart/src/models/shipping-method-adjustment.ts index 405d0baa4a..53a63feb1d 100644 --- a/packages/modules/cart/src/models/shipping-method-adjustment.ts +++ b/packages/modules/cart/src/models/shipping-method-adjustment.ts @@ -10,6 +10,7 @@ import { ManyToOne, OnInit, Property, + Rel, } from "@mikro-orm/core" import AdjustmentLine from "./adjustment-line" import ShippingMethod from "./shipping-method" @@ -38,7 +39,7 @@ const DeletedAtIndex = createPsqlIndexStatementHelper({ @Filter(DALUtils.mikroOrmSoftDeletableFilterOptions) export default class ShippingMethodAdjustment extends AdjustmentLine { @ManyToOne({ entity: () => ShippingMethod, persist: false }) - shipping_method: ShippingMethod + shipping_method: Rel @ShippingMethodIdIndex() @ManyToOne({ diff --git a/packages/modules/cart/src/models/shipping-method-tax-line.ts b/packages/modules/cart/src/models/shipping-method-tax-line.ts index 9d1d9ec88e..627ead9113 100644 --- a/packages/modules/cart/src/models/shipping-method-tax-line.ts +++ b/packages/modules/cart/src/models/shipping-method-tax-line.ts @@ -10,6 +10,7 @@ import { ManyToOne, OnInit, Property, + Rel, } from "@mikro-orm/core" import ShippingMethod from "./shipping-method" import TaxLine from "./tax-line" @@ -38,7 +39,7 @@ const DeletedAtIndex = createPsqlIndexStatementHelper({ @Filter(DALUtils.mikroOrmSoftDeletableFilterOptions) export default class ShippingMethodTaxLine extends TaxLine { @ManyToOne({ entity: () => ShippingMethod, persist: false }) - shipping_method: ShippingMethod + shipping_method: Rel @ShippingMethodIdIndex() @ManyToOne({ diff --git a/packages/modules/cart/src/models/shipping-method.ts b/packages/modules/cart/src/models/shipping-method.ts index 92bcd626ab..07889b33c3 100644 --- a/packages/modules/cart/src/models/shipping-method.ts +++ b/packages/modules/cart/src/models/shipping-method.ts @@ -19,6 +19,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Cart from "./cart" import ShippingMethodAdjustment from "./shipping-method-adjustment" @@ -68,7 +69,7 @@ export default class ShippingMethod { cart_id: string @ManyToOne({ entity: () => Cart, persist: false }) - cart: Cart + cart: Rel @Property({ columnType: "text" }) name: string @@ -83,7 +84,7 @@ export default class ShippingMethod { raw_amount: BigNumberRawValue @Property({ columnType: "boolean" }) - is_tax_inclusive = false + is_tax_inclusive: boolean = false @ShippingOptionIdIndex() @Property({ columnType: "text", nullable: true }) @@ -102,7 +103,7 @@ export default class ShippingMethod { cascade: [Cascade.PERSIST, "soft-remove"] as any, } ) - tax_lines = new Collection(this) + tax_lines = new Collection>(this) @OneToMany( () => ShippingMethodAdjustment, @@ -111,7 +112,7 @@ export default class ShippingMethod { cascade: [Cascade.PERSIST, "soft-remove"] as any, } ) - adjustments = new Collection(this) + adjustments = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/customer/jest.config.js b/packages/modules/customer/jest.config.js index 88c5539673..2d7abe1f6e 100644 --- a/packages/modules/customer/jest.config.js +++ b/packages/modules/customer/jest.config.js @@ -5,11 +5,13 @@ module.exports = { "^@repositories": "/src/repositories", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/customer/package.json b/packages/modules/customer/package.json index b31e9a0df7..ab3003bf19 100644 --- a/packages/modules/customer/package.json +++ b/packages/modules/customer/package.json @@ -40,7 +40,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.44", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/customer/src/models/customer-group-customer.ts b/packages/modules/customer/src/models/customer-group-customer.ts index 9ec649efbe..bec66f38d5 100644 --- a/packages/modules/customer/src/models/customer-group-customer.ts +++ b/packages/modules/customer/src/models/customer-group-customer.ts @@ -1,14 +1,15 @@ import { DAL } from "@medusajs/types" import { generateEntityId } from "@medusajs/utils" import { - Cascade, BeforeCreate, - ManyToOne, + Cascade, Entity, + ManyToOne, OnInit, OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Customer from "./customer" import CustomerGroup from "./customer-group" @@ -34,7 +35,7 @@ export default class CustomerGroupCustomer { index: "IDX_customer_group_customer_customer_id", cascade: [Cascade.REMOVE], }) - customer: Customer + customer: Rel @ManyToOne({ entity: () => CustomerGroup, @@ -42,7 +43,7 @@ export default class CustomerGroupCustomer { index: "IDX_customer_group_customer_group_id", cascade: [Cascade.REMOVE], }) - customer_group: CustomerGroup + customer_group: Rel @Property({ columnType: "jsonb", nullable: true }) metadata: Record | null = null diff --git a/packages/modules/customer/src/models/customer-group.ts b/packages/modules/customer/src/models/customer-group.ts index d2ee6dfa0f..ed590fe7e6 100644 --- a/packages/modules/customer/src/models/customer-group.ts +++ b/packages/modules/customer/src/models/customer-group.ts @@ -15,6 +15,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Customer from "./customer" import CustomerGroupCustomer from "./customer-group-customer" @@ -45,7 +46,7 @@ export default class CustomerGroup { entity: () => Customer, pivotEntity: () => CustomerGroupCustomer, }) - customers = new Collection(this) + customers = new Collection>(this) @Property({ columnType: "jsonb", nullable: true }) metadata: Record | null = null diff --git a/packages/modules/customer/src/models/customer.ts b/packages/modules/customer/src/models/customer.ts index d222e5b58f..3f1aadfd8e 100644 --- a/packages/modules/customer/src/models/customer.ts +++ b/packages/modules/customer/src/models/customer.ts @@ -17,6 +17,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Address from "./address" import CustomerGroup from "./customer-group" @@ -74,12 +75,12 @@ export default class Customer { entity: () => CustomerGroup, pivotEntity: () => CustomerGroupCustomer, }) - groups = new Collection(this) + groups = new Collection>(this) @OneToMany(() => Address, (address) => address.customer, { cascade: [Cascade.REMOVE], }) - addresses = new Collection
(this) + addresses = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/event-bus-local/jest.config.js b/packages/modules/event-bus-local/jest.config.js index bddd3c8819..96a56ea774 100644 --- a/packages/modules/event-bus-local/jest.config.js +++ b/packages/modules/event-bus-local/jest.config.js @@ -1,12 +1,6 @@ module.exports = { transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", - { - tsconfig: "tsconfig.json", - isolatedModules: true, - }, - ], + "^.+\\.[jt]s$": ["@swc/jest"], }, testEnvironment: `node`, moduleFileExtensions: [`js`, `ts`], diff --git a/packages/modules/event-bus-local/package.json b/packages/modules/event-bus-local/package.json index be19e140e9..7807509c9f 100644 --- a/packages/modules/event-bus-local/package.json +++ b/packages/modules/event-bus-local/package.json @@ -24,7 +24,6 @@ "cross-env": "^5.2.1", "jest": "^29.7.0", "rimraf": "^5.0.1", - "ts-jest": "^29.1.1", "typescript": "^5.1.6" }, "scripts": { diff --git a/packages/modules/event-bus-redis/jest.config.js b/packages/modules/event-bus-redis/jest.config.js index bddd3c8819..933c0f394c 100644 --- a/packages/modules/event-bus-redis/jest.config.js +++ b/packages/modules/event-bus-redis/jest.config.js @@ -1,13 +1,5 @@ module.exports = { - transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", - { - tsconfig: "tsconfig.json", - isolatedModules: true, - }, - ], - }, + transform: { "^.+\\.[jt]s$": ["@swc/jest"] }, testEnvironment: `node`, moduleFileExtensions: [`js`, `ts`], } diff --git a/packages/modules/event-bus-redis/package.json b/packages/modules/event-bus-redis/package.json index 3349b282cf..03778631b0 100644 --- a/packages/modules/event-bus-redis/package.json +++ b/packages/modules/event-bus-redis/package.json @@ -25,7 +25,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.44", "rimraf": "^5.0.1", - "ts-jest": "^29.1.1", "typescript": "^5.1.6" }, "scripts": { diff --git a/packages/modules/file/jest.config.js b/packages/modules/file/jest.config.js index 0c652264ea..d125300e58 100644 --- a/packages/modules/file/jest.config.js +++ b/packages/modules/file/jest.config.js @@ -6,11 +6,13 @@ module.exports = { "^@types": "/src/types", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/file/package.json b/packages/modules/file/package.json index 05da32dff3..e2d049015a 100644 --- a/packages/modules/file/package.json +++ b/packages/modules/file/package.json @@ -42,7 +42,6 @@ "medusa-test-utils": "^1.1.43", "pg-god": "^1.0.12", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/fulfillment/jest.config.js b/packages/modules/fulfillment/jest.config.js index 16e27fda6c..96be4c5bbd 100644 --- a/packages/modules/fulfillment/jest.config.js +++ b/packages/modules/fulfillment/jest.config.js @@ -7,11 +7,13 @@ module.exports = { "^@utils": "/src/utils", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/fulfillment/package.json b/packages/modules/fulfillment/package.json index ed6e56e5f6..1a8040a9b5 100644 --- a/packages/modules/fulfillment/package.json +++ b/packages/modules/fulfillment/package.json @@ -40,7 +40,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.44", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/fulfillment/src/models/fulfillment-item.ts b/packages/modules/fulfillment/src/models/fulfillment-item.ts index f7b4e1079e..1fc297543b 100644 --- a/packages/modules/fulfillment/src/models/fulfillment-item.ts +++ b/packages/modules/fulfillment/src/models/fulfillment-item.ts @@ -16,6 +16,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Fulfillment from "./fulfillment" @@ -86,7 +87,7 @@ export default class FulfillmentItem { fulfillment_id: string @ManyToOne(() => Fulfillment, { persist: false }) - fulfillment: Fulfillment + fulfillment: Rel @Property({ onCreate: () => new Date(), diff --git a/packages/modules/fulfillment/src/models/fulfillment-label.ts b/packages/modules/fulfillment/src/models/fulfillment-label.ts index d18ebbb7ba..4c9cea478d 100644 --- a/packages/modules/fulfillment/src/models/fulfillment-label.ts +++ b/packages/modules/fulfillment/src/models/fulfillment-label.ts @@ -14,6 +14,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Fulfillment from "./fulfillment" @@ -58,7 +59,7 @@ export default class FulfillmentLabel { fulfillment_id: string @ManyToOne(() => Fulfillment, { persist: false }) - fulfillment: Fulfillment + fulfillment: Rel @Property({ onCreate: () => new Date(), diff --git a/packages/modules/fulfillment/src/models/fulfillment-set.ts b/packages/modules/fulfillment/src/models/fulfillment-set.ts index ccf4e20230..c351d009ac 100644 --- a/packages/modules/fulfillment/src/models/fulfillment-set.ts +++ b/packages/modules/fulfillment/src/models/fulfillment-set.ts @@ -16,6 +16,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import ServiceZone from "./service-zone" @@ -56,7 +57,7 @@ export default class FulfillmentSet { cascade: [Cascade.PERSIST, "soft-remove"] as any, orphanRemoval: true, }) - service_zones = new Collection(this) + service_zones = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/fulfillment/src/models/fulfillment.ts b/packages/modules/fulfillment/src/models/fulfillment.ts index 15c047805c..499ee2684c 100644 --- a/packages/modules/fulfillment/src/models/fulfillment.ts +++ b/packages/modules/fulfillment/src/models/fulfillment.ts @@ -18,6 +18,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Address from "./address" import FulfillmentItem from "./fulfillment-item" @@ -117,7 +118,7 @@ export default class Fulfillment { shipping_option: ShippingOption | null @ManyToOne(() => FulfillmentProvider, { persist: false }) - provider: FulfillmentProvider + provider: Rel @OneToOne({ entity: () => Address, @@ -126,19 +127,19 @@ export default class Fulfillment { nullable: true, onDelete: "cascade", }) - delivery_address!: Address + delivery_address!: Rel
@OneToMany(() => FulfillmentItem, (item) => item.fulfillment, { cascade: [Cascade.PERSIST, "soft-remove"] as any, orphanRemoval: true, }) - items = new Collection(this) + items = new Collection>(this) @OneToMany(() => FulfillmentLabel, (label) => label.fulfillment, { cascade: [Cascade.PERSIST, "soft-remove"] as any, orphanRemoval: true, }) - labels = new Collection(this) + labels = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/fulfillment/src/models/geo-zone.ts b/packages/modules/fulfillment/src/models/geo-zone.ts index 57c2ca0382..fd22c37996 100644 --- a/packages/modules/fulfillment/src/models/geo-zone.ts +++ b/packages/modules/fulfillment/src/models/geo-zone.ts @@ -16,6 +16,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import ServiceZone from "./service-zone" @@ -92,7 +93,7 @@ export default class GeoZone { @ManyToOne(() => ServiceZone, { persist: false, }) - service_zone: ServiceZone + service_zone: Rel @Property({ onCreate: () => new Date(), diff --git a/packages/modules/fulfillment/src/models/service-zone.ts b/packages/modules/fulfillment/src/models/service-zone.ts index 220064c7e2..59eecf6e34 100644 --- a/packages/modules/fulfillment/src/models/service-zone.ts +++ b/packages/modules/fulfillment/src/models/service-zone.ts @@ -18,6 +18,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import FulfillmentSet from "./fulfillment-set" import GeoZone from "./geo-zone" @@ -71,13 +72,13 @@ export default class ServiceZone { fulfillment_set_id: string @ManyToOne(() => FulfillmentSet, { persist: false }) - fulfillment_set: FulfillmentSet + fulfillment_set: Rel @OneToMany(() => GeoZone, "service_zone", { cascade: [Cascade.PERSIST, "soft-remove"] as any, orphanRemoval: true, }) - geo_zones = new Collection(this) + geo_zones = new Collection>(this) @OneToMany( () => ShippingOption, @@ -87,7 +88,7 @@ export default class ServiceZone { orphanRemoval: true, } ) - shipping_options = new Collection(this) + shipping_options = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/fulfillment/src/models/shipping-option-rule.ts b/packages/modules/fulfillment/src/models/shipping-option-rule.ts index d305ee87b1..a710927a84 100644 --- a/packages/modules/fulfillment/src/models/shipping-option-rule.ts +++ b/packages/modules/fulfillment/src/models/shipping-option-rule.ts @@ -15,6 +15,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import ShippingOption from "./shipping-option" @@ -64,7 +65,7 @@ export default class ShippingOptionRule { @ManyToOne(() => ShippingOption, { persist: false, }) - shipping_option: ShippingOption + shipping_option: Rel @Property({ onCreate: () => new Date(), diff --git a/packages/modules/fulfillment/src/models/shipping-option-type.ts b/packages/modules/fulfillment/src/models/shipping-option-type.ts index 3d3ef7c899..2ce6e93c6b 100644 --- a/packages/modules/fulfillment/src/models/shipping-option-type.ts +++ b/packages/modules/fulfillment/src/models/shipping-option-type.ts @@ -14,6 +14,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import ShippingOption from "./shipping-option" @@ -52,7 +53,7 @@ export default class ShippingOptionType { type: "text", onDelete: "cascade", }) - shipping_option: ShippingOption + shipping_option: Rel @Property({ onCreate: () => new Date(), diff --git a/packages/modules/fulfillment/src/models/shipping-option.ts b/packages/modules/fulfillment/src/models/shipping-option.ts index 011219fd98..9d063abe90 100644 --- a/packages/modules/fulfillment/src/models/shipping-option.ts +++ b/packages/modules/fulfillment/src/models/shipping-option.ts @@ -21,6 +21,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Fulfillment from "./fulfillment" import FulfillmentProvider from "./fulfillment-provider" @@ -118,17 +119,17 @@ export default class ShippingOption { metadata: Record | null = null @ManyToOne(() => ServiceZone, { persist: false }) - service_zone: ServiceZone + service_zone: Rel @ManyToOne(() => ShippingProfile, { persist: false, }) - shipping_profile: ShippingProfile | null + shipping_profile: Rel | null @ManyToOne(() => FulfillmentProvider, { persist: false, }) - provider: FulfillmentProvider | null + provider: Rel | null @OneToOne(() => ShippingOptionType, (so) => so.shipping_option, { owner: true, @@ -137,16 +138,16 @@ export default class ShippingOption { fieldName: "shipping_option_type_id", onDelete: "cascade", }) - type: ShippingOptionType + type: Rel @OneToMany(() => ShippingOptionRule, "shipping_option", { cascade: [Cascade.PERSIST, "soft-remove"] as any, orphanRemoval: true, }) - rules = new Collection(this) + rules = new Collection>(this) @OneToMany(() => Fulfillment, (fulfillment) => fulfillment.shipping_option) - fulfillments = new Collection(this) + fulfillments = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/fulfillment/src/models/shipping-profile.ts b/packages/modules/fulfillment/src/models/shipping-profile.ts index 96c332716c..ec9d7a5020 100644 --- a/packages/modules/fulfillment/src/models/shipping-profile.ts +++ b/packages/modules/fulfillment/src/models/shipping-profile.ts @@ -16,6 +16,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import ShippingOption from "./shipping-option" @@ -55,7 +56,7 @@ export default class ShippingProfile { () => ShippingOption, (shippingOption) => shippingOption.shipping_profile ) - shipping_options = new Collection(this) + shipping_options = new Collection>(this) @Property({ columnType: "jsonb", nullable: true }) metadata: Record | null = null diff --git a/packages/modules/inventory-next/jest.config.js b/packages/modules/inventory-next/jest.config.js index bddd3c8819..3671181174 100644 --- a/packages/modules/inventory-next/jest.config.js +++ b/packages/modules/inventory-next/jest.config.js @@ -1,10 +1,12 @@ module.exports = { transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/inventory-next/package.json b/packages/modules/inventory-next/package.json index 09676bf2fb..8973d26d25 100644 --- a/packages/modules/inventory-next/package.json +++ b/packages/modules/inventory-next/package.json @@ -26,7 +26,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.43", "rimraf": "^5.0.1", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/inventory-next/src/models/inventory-item.ts b/packages/modules/inventory-next/src/models/inventory-item.ts index 52d55eca59..805470b71a 100644 --- a/packages/modules/inventory-next/src/models/inventory-item.ts +++ b/packages/modules/inventory-next/src/models/inventory-item.ts @@ -1,3 +1,9 @@ +import { + createPsqlIndexStatementHelper, + DALUtils, + generateEntityId, + Searchable, +} from "@medusajs/utils" import { BeforeCreate, Collection, @@ -9,13 +15,8 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" -import { - createPsqlIndexStatementHelper, - DALUtils, - generateEntityId, - Searchable, -} from "@medusajs/utils" import { DAL } from "@medusajs/types" import { InventoryLevel } from "./inventory-level" @@ -117,7 +118,7 @@ export class InventoryItem { cascade: ["soft-remove" as any], } ) - location_levels = new Collection(this) + location_levels = new Collection>(this) @OneToMany( () => ReservationItem, @@ -126,7 +127,7 @@ export class InventoryItem { cascade: ["soft-remove" as any], } ) - reservation_items = new Collection(this) + reservation_items = new Collection>(this) @Formula( (item) => diff --git a/packages/modules/inventory-next/src/models/inventory-level.ts b/packages/modules/inventory-next/src/models/inventory-level.ts index 040e39c545..5ac9a71ee9 100644 --- a/packages/modules/inventory-next/src/models/inventory-level.ts +++ b/packages/modules/inventory-next/src/models/inventory-level.ts @@ -1,3 +1,4 @@ +import { DALUtils, isDefined } from "@medusajs/utils" import { BeforeCreate, Entity, @@ -7,12 +8,14 @@ import { OnLoad, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" -import { DALUtils, isDefined } from "@medusajs/utils" +import { + createPsqlIndexStatementHelper, + generateEntityId, +} from "@medusajs/utils" import { InventoryItem } from "./inventory-item" -import { createPsqlIndexStatementHelper } from "@medusajs/utils" -import { generateEntityId } from "@medusajs/utils" const InventoryLevelDeletedAtIndex = createPsqlIndexStatementHelper({ tableName: "inventory_level", @@ -90,7 +93,7 @@ export class InventoryLevel { @ManyToOne(() => InventoryItem, { persist: false, }) - inventory_item: InventoryItem + inventory_item: Rel available_quantity: number | null = null diff --git a/packages/modules/inventory-next/src/models/reservation-item.ts b/packages/modules/inventory-next/src/models/reservation-item.ts index e715cfc7e3..fa352e1e24 100644 --- a/packages/modules/inventory-next/src/models/reservation-item.ts +++ b/packages/modules/inventory-next/src/models/reservation-item.ts @@ -6,6 +6,7 @@ import { OnInit, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import { @@ -98,7 +99,7 @@ export class ReservationItem { @ManyToOne(() => InventoryItem, { persist: false, }) - inventory_item: InventoryItem + inventory_item: Rel @BeforeCreate() private beforeCreate(): void { diff --git a/packages/modules/link-modules/jest.config.js b/packages/modules/link-modules/jest.config.js index bddd3c8819..3671181174 100644 --- a/packages/modules/link-modules/jest.config.js +++ b/packages/modules/link-modules/jest.config.js @@ -1,10 +1,12 @@ module.exports = { transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/link-modules/package.json b/packages/modules/link-modules/package.json index 4ab73ec0bc..11fe220c40 100644 --- a/packages/modules/link-modules/package.json +++ b/packages/modules/link-modules/package.json @@ -34,7 +34,6 @@ "jest": "^29.7.0", "pg-god": "^1.0.12", "rimraf": "^5.0.1", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/notification/jest.config.js b/packages/modules/notification/jest.config.js index 1b7795a88b..6af2cd1a96 100644 --- a/packages/modules/notification/jest.config.js +++ b/packages/modules/notification/jest.config.js @@ -7,11 +7,13 @@ module.exports = { "^@utils": "/src/utils", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/notification/package.json b/packages/modules/notification/package.json index 0ffb71e31b..f09dc82be5 100644 --- a/packages/modules/notification/package.json +++ b/packages/modules/notification/package.json @@ -39,7 +39,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.44", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/order/jest.config.js b/packages/modules/order/jest.config.js index 0c652264ea..d125300e58 100644 --- a/packages/modules/order/jest.config.js +++ b/packages/modules/order/jest.config.js @@ -6,11 +6,13 @@ module.exports = { "^@types": "/src/types", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/order/package.json b/packages/modules/order/package.json index 79843a39a4..066b614d25 100644 --- a/packages/modules/order/package.json +++ b/packages/modules/order/package.json @@ -40,7 +40,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.44", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/order/src/models/claim-item-image.ts b/packages/modules/order/src/models/claim-item-image.ts index b99237eb60..96e8be1f37 100644 --- a/packages/modules/order/src/models/claim-item-image.ts +++ b/packages/modules/order/src/models/claim-item-image.ts @@ -11,6 +11,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import ClaimItem from "./claim-item" @@ -47,7 +48,7 @@ export default class ClaimItemImage { @ManyToOne(() => ClaimItem, { persist: false, }) - item: ClaimItem + item: Rel @Property({ columnType: "text" }) url: string diff --git a/packages/modules/order/src/models/claim-item.ts b/packages/modules/order/src/models/claim-item.ts index 77082364ce..0987ad7f2e 100644 --- a/packages/modules/order/src/models/claim-item.ts +++ b/packages/modules/order/src/models/claim-item.ts @@ -17,6 +17,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Claim from "./claim" import ClaimItemImage from "./claim-item-image" @@ -52,10 +53,10 @@ export default class OrderClaimItem { @OneToMany(() => ClaimItemImage, (ci) => ci.item, { cascade: [Cascade.PERSIST, Cascade.REMOVE], }) - images = new Collection(this) + images = new Collection>(this) @Enum({ items: () => ClaimReason, nullable: true }) - reason: ClaimReason | null = null + reason: Rel | null = null @MikroOrmBigNumberProperty() quantity: Number | number @@ -75,7 +76,7 @@ export default class OrderClaimItem { @ManyToOne(() => Claim, { persist: false, }) - claim: Claim + claim: Rel @ManyToOne({ entity: () => LineItem, @@ -89,7 +90,7 @@ export default class OrderClaimItem { @ManyToOne(() => LineItem, { persist: false, }) - item: LineItem + item: Rel @Property({ columnType: "boolean", default: false }) is_additional_item: boolean = false diff --git a/packages/modules/order/src/models/claim.ts b/packages/modules/order/src/models/claim.ts index d477c81488..5a4dfc2d96 100644 --- a/packages/modules/order/src/models/claim.ts +++ b/packages/modules/order/src/models/claim.ts @@ -19,6 +19,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import ClaimItem from "./claim-item" import Order from "./order" @@ -71,7 +72,7 @@ export default class OrderClaim { @ManyToOne(() => Order, { persist: false, }) - order: Order + order: Rel @OneToOne({ entity: () => Return, @@ -81,7 +82,7 @@ export default class OrderClaim { nullable: true, owner: true, }) - return: Return + return: Rel @Property({ columnType: "text", nullable: true }) @ReturnIdIndex.MikroORMIndex() @@ -97,7 +98,7 @@ export default class OrderClaim { display_id: number @Enum({ items: () => ClaimType }) - type: ClaimType + type: Rel @Property({ columnType: "boolean", nullable: true }) no_notification: boolean | null = null @@ -113,12 +114,12 @@ export default class OrderClaim { @OneToMany(() => ClaimItem, (item) => item.claim, { cascade: [Cascade.PERSIST], }) - additional_items = new Collection(this) + additional_items = new Collection>(this) @OneToMany(() => ClaimItem, (item) => item.claim, { cascade: [Cascade.PERSIST], }) - claim_items = new Collection(this) + claim_items = new Collection>(this) @OneToMany( () => OrderShippingMethod, @@ -127,7 +128,7 @@ export default class OrderClaim { cascade: [Cascade.PERSIST], } ) - shipping_methods = new Collection(this) + shipping_methods = new Collection>(this) @OneToMany(() => Transaction, (transaction) => transaction.claim, { cascade: [Cascade.PERSIST], diff --git a/packages/modules/order/src/models/exchange.ts b/packages/modules/order/src/models/exchange.ts index 08183de619..3011ed6ac6 100644 --- a/packages/modules/order/src/models/exchange.ts +++ b/packages/modules/order/src/models/exchange.ts @@ -17,6 +17,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import { ExchangeItem, Transaction } from "@models" import Order from "./order" @@ -68,7 +69,7 @@ export default class OrderExchange { @ManyToOne(() => Order, { persist: false, }) - order: Order + order: Rel @OneToOne({ entity: () => Return, @@ -78,7 +79,7 @@ export default class OrderExchange { nullable: true, owner: true, }) - return: Return + return: Rel @Property({ columnType: "text", nullable: true }) @ReturnIdIndex.MikroORMIndex() @@ -110,7 +111,7 @@ export default class OrderExchange { @OneToMany(() => ExchangeItem, (item) => item.exchange, { cascade: [Cascade.PERSIST], }) - additional_items = new Collection(this) + additional_items = new Collection>(this) @OneToMany( () => OrderShippingMethod, @@ -119,7 +120,7 @@ export default class OrderExchange { cascade: [Cascade.PERSIST], } ) - shipping_methods = new Collection(this) + shipping_methods = new Collection>(this) @OneToMany(() => Transaction, (transaction) => transaction.exchange, { cascade: [Cascade.PERSIST], diff --git a/packages/modules/order/src/models/line-item-adjustment.ts b/packages/modules/order/src/models/line-item-adjustment.ts index be1f27b346..20e00de281 100644 --- a/packages/modules/order/src/models/line-item-adjustment.ts +++ b/packages/modules/order/src/models/line-item-adjustment.ts @@ -2,7 +2,7 @@ import { createPsqlIndexStatementHelper, generateEntityId, } from "@medusajs/utils" -import { BeforeCreate, Entity, ManyToOne, OnInit } from "@mikro-orm/core" +import { BeforeCreate, Entity, ManyToOne, OnInit, Rel } from "@mikro-orm/core" import AdjustmentLine from "./adjustment-line" import LineItem from "./line-item" @@ -16,7 +16,7 @@ export default class LineItemAdjustment extends AdjustmentLine { @ManyToOne(() => LineItem, { persist: false, }) - item: LineItem + item: Rel @ManyToOne({ entity: () => LineItem, diff --git a/packages/modules/order/src/models/line-item-tax-line.ts b/packages/modules/order/src/models/line-item-tax-line.ts index 2426ddf330..6367caba37 100644 --- a/packages/modules/order/src/models/line-item-tax-line.ts +++ b/packages/modules/order/src/models/line-item-tax-line.ts @@ -8,6 +8,7 @@ import { Entity, ManyToOne, OnInit, + Rel, } from "@mikro-orm/core" import LineItem from "./line-item" import TaxLine from "./tax-line" @@ -23,7 +24,7 @@ export default class LineItemTaxLine extends TaxLine { fieldName: "item_id", persist: false, }) - item: LineItem + item: Rel @ManyToOne({ entity: () => LineItem, diff --git a/packages/modules/order/src/models/line-item.ts b/packages/modules/order/src/models/line-item.ts index 6ce119cce0..029d869983 100644 --- a/packages/modules/order/src/models/line-item.ts +++ b/packages/modules/order/src/models/line-item.ts @@ -15,6 +15,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import LineItemAdjustment from "./line-item-adjustment" import LineItemTaxLine from "./line-item-tax-line" @@ -92,13 +93,13 @@ export default class LineItem { variant_option_values: Record | null = null @Property({ columnType: "boolean" }) - requires_shipping = true + requires_shipping: boolean = true @Property({ columnType: "boolean" }) - is_discountable = true + is_discountable: boolean = true @Property({ columnType: "boolean" }) - is_tax_inclusive = false + is_tax_inclusive: boolean = false @MikroOrmBigNumberProperty({ nullable: true, @@ -119,12 +120,12 @@ export default class LineItem { @OneToMany(() => LineItemTaxLine, (taxLine) => taxLine.item, { cascade: [Cascade.PERSIST, "soft-remove" as Cascade], }) - tax_lines = new Collection(this) + tax_lines = new Collection>(this) @OneToMany(() => LineItemAdjustment, (adjustment) => adjustment.item, { cascade: [Cascade.PERSIST, "soft-remove" as Cascade], }) - adjustments = new Collection(this) + adjustments = new Collection>(this) @Property({ columnType: "jsonb", nullable: true }) metadata: Record | null = null diff --git a/packages/modules/order/src/models/order-change-action.ts b/packages/modules/order/src/models/order-change-action.ts index 0aa7239cf1..59d4f46a37 100644 --- a/packages/modules/order/src/models/order-change-action.ts +++ b/packages/modules/order/src/models/order-change-action.ts @@ -13,6 +13,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import OrderClaim from "./claim" import OrderExchange from "./exchange" @@ -90,7 +91,7 @@ export default class OrderChangeAction { persist: false, nullable: true, }) - order: Order | null = null + order: Rel | null = null @ManyToOne({ entity: () => Return, @@ -155,7 +156,7 @@ export default class OrderChangeAction { persist: false, nullable: true, }) - order_change: OrderChange | null = null + order_change: Rel | null = null @Property({ columnType: "text", diff --git a/packages/modules/order/src/models/order-change.ts b/packages/modules/order/src/models/order-change.ts index ea6efe8330..799a2ea2ac 100644 --- a/packages/modules/order/src/models/order-change.ts +++ b/packages/modules/order/src/models/order-change.ts @@ -15,6 +15,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import { OrderChangeStatus, OrderChangeType } from "@types" import OrderClaim from "./claim" @@ -94,7 +95,7 @@ export default class OrderChange { @ManyToOne(() => Order, { persist: false, }) - order: Order + order: Rel @ManyToOne({ entity: () => Return, @@ -109,7 +110,7 @@ export default class OrderChange { @ManyToOne(() => Return, { persist: false, }) - return: Return + return: Rel @ManyToOne({ entity: () => OrderClaim, @@ -152,7 +153,7 @@ export default class OrderChange { @OneToMany(() => OrderChangeAction, (action) => action.order_change, { cascade: [Cascade.PERSIST, "sotf-remove" as Cascade], }) - actions = new Collection(this) + actions = new Collection>(this) @Property({ columnType: "text", diff --git a/packages/modules/order/src/models/order-item.ts b/packages/modules/order/src/models/order-item.ts index 59b52d5182..116022d7e2 100644 --- a/packages/modules/order/src/models/order-item.ts +++ b/packages/modules/order/src/models/order-item.ts @@ -13,6 +13,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import LineItem from "./line-item" import Order from "./order" @@ -62,7 +63,7 @@ export default class OrderItem { @ManyToOne(() => Order, { persist: false, }) - order: Order + order: Rel @Property({ columnType: "integer" }) @OrderVersionIndex.MikroORMIndex() @@ -80,7 +81,7 @@ export default class OrderItem { @ManyToOne(() => LineItem, { persist: false, }) - item: LineItem + item: Rel @MikroOrmBigNumberProperty() quantity: BigNumber | number diff --git a/packages/modules/order/src/models/order-shipping-method.ts b/packages/modules/order/src/models/order-shipping-method.ts index 5e4edec3f5..2f0104c40d 100644 --- a/packages/modules/order/src/models/order-shipping-method.ts +++ b/packages/modules/order/src/models/order-shipping-method.ts @@ -11,6 +11,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Claim from "./claim" import Exchange from "./exchange" @@ -81,7 +82,7 @@ export default class OrderShippingMethod { @ManyToOne(() => Order, { persist: false, }) - order: Order + order: Rel @ManyToOne({ entity: () => Return, @@ -96,7 +97,7 @@ export default class OrderShippingMethod { @ManyToOne(() => Return, { persist: false, }) - return: Return + return: Rel @ManyToOne({ entity: () => Exchange, @@ -111,7 +112,7 @@ export default class OrderShippingMethod { @ManyToOne(() => Exchange, { persist: false, }) - exchange: Exchange + exchange: Rel @ManyToOne({ entity: () => Claim, @@ -126,7 +127,7 @@ export default class OrderShippingMethod { @ManyToOne(() => Claim, { persist: false, }) - claim: Claim + claim: Rel @Property({ columnType: "integer" }) @OrderVersionIndex.MikroORMIndex() @@ -144,7 +145,7 @@ export default class OrderShippingMethod { @ManyToOne(() => ShippingMethod, { persist: false, }) - shipping_method: ShippingMethod + shipping_method: Rel @Property({ onCreate: () => new Date(), diff --git a/packages/modules/order/src/models/order-summary.ts b/packages/modules/order/src/models/order-summary.ts index 0399ac4d87..9f3544c439 100644 --- a/packages/modules/order/src/models/order-summary.ts +++ b/packages/modules/order/src/models/order-summary.ts @@ -10,6 +10,7 @@ import { OnInit, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Order from "./order" @@ -71,7 +72,7 @@ export default class OrderSummary { @ManyToOne(() => Order, { persist: false, }) - order: Order + order: Rel @Property({ columnType: "integer", diff --git a/packages/modules/order/src/models/order.ts b/packages/modules/order/src/models/order.ts index b9352fdacc..157ff73f77 100644 --- a/packages/modules/order/src/models/order.ts +++ b/packages/modules/order/src/models/order.ts @@ -16,6 +16,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Address from "./address" import OrderItem from "./order-item" @@ -127,7 +128,7 @@ export default class Order { columnType: "boolean", }) @IsDraftOrderIndex.MikroORMIndex() - is_draft_order = false + is_draft_order: boolean = false @Property({ columnType: "text", nullable: true }) email: string | null = null @@ -146,7 +147,7 @@ export default class Order { nullable: true, cascade: [Cascade.PERSIST], }) - shipping_address?: Address | null + shipping_address?: Rel
| null @Property({ columnType: "text", nullable: true }) @BillingAddressIdIndex.MikroORMIndex() @@ -158,7 +159,7 @@ export default class Order { nullable: true, cascade: [Cascade.PERSIST], }) - billing_address?: Address | null + billing_address?: Rel
| null @Property({ columnType: "boolean", nullable: true }) no_notification: boolean | null = null @@ -166,7 +167,7 @@ export default class Order { @OneToMany(() => OrderSummary, (summary) => summary.order, { cascade: [Cascade.PERSIST], }) - summary = new Collection(this) + summary = new Collection>(this) @Property({ columnType: "jsonb", nullable: true }) metadata: Record | null = null @@ -174,7 +175,7 @@ export default class Order { @OneToMany(() => OrderItem, (itemDetail) => itemDetail.order, { cascade: [Cascade.PERSIST], }) - items = new Collection(this) + items = new Collection>(this) @OneToMany( () => OrderShippingMethod, @@ -183,12 +184,12 @@ export default class Order { cascade: [Cascade.PERSIST], } ) - shipping_methods = new Collection(this) + shipping_methods = new Collection>(this) @OneToMany(() => Transaction, (transaction) => transaction.order, { cascade: [Cascade.PERSIST], }) - transactions = new Collection(this) + transactions = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/order/src/models/return-reason.ts b/packages/modules/order/src/models/return-reason.ts index 68e668f422..48db365bad 100644 --- a/packages/modules/order/src/models/return-reason.ts +++ b/packages/modules/order/src/models/return-reason.ts @@ -13,6 +13,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" const DeletedAtIndex = createPsqlIndexStatementHelper({ @@ -62,14 +63,14 @@ export default class ReturnReason { nullable: true, cascade: [Cascade.PERSIST], }) - parent_return_reason?: ReturnReason | null + parent_return_reason?: Rel | null @OneToMany( () => ReturnReason, (return_reason) => return_reason.parent_return_reason, { cascade: [Cascade.PERSIST] } ) - return_reason_children: ReturnReason[] + return_reason_children: Rel[] @Property({ columnType: "jsonb", nullable: true }) metadata: Record | null = null diff --git a/packages/modules/order/src/models/return.ts b/packages/modules/order/src/models/return.ts index 4154364d8b..10119eab55 100644 --- a/packages/modules/order/src/models/return.ts +++ b/packages/modules/order/src/models/return.ts @@ -19,6 +19,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import { ReturnItem, Transaction } from "@models" import Claim from "./claim" @@ -78,7 +79,7 @@ export default class Return { @ManyToOne(() => Order, { persist: false, }) - order: Order + order: Rel @OneToOne({ entity: () => Exchange, @@ -86,7 +87,7 @@ export default class Return { fieldName: "exchange_id", nullable: true, }) - exchange: Exchange + exchange: Rel @Property({ columnType: "text", nullable: true }) @ExchangeIdIndex.MikroORMIndex() @@ -98,7 +99,7 @@ export default class Return { fieldName: "claim_id", nullable: true, }) - claim: Claim + claim: Rel @Property({ columnType: "text", nullable: true }) @ClaimIdIndex.MikroORMIndex() @@ -130,7 +131,7 @@ export default class Return { @OneToMany(() => ReturnItem, (itemDetail) => itemDetail.return, { cascade: [Cascade.PERSIST], }) - items = new Collection(this) + items = new Collection>(this) @OneToMany( () => OrderShippingMethod, diff --git a/packages/modules/order/src/models/shipping-method-adjustment.ts b/packages/modules/order/src/models/shipping-method-adjustment.ts index 9f72328b09..86810b0993 100644 --- a/packages/modules/order/src/models/shipping-method-adjustment.ts +++ b/packages/modules/order/src/models/shipping-method-adjustment.ts @@ -2,7 +2,7 @@ import { createPsqlIndexStatementHelper, generateEntityId, } from "@medusajs/utils" -import { BeforeCreate, Entity, ManyToOne, OnInit } from "@mikro-orm/core" +import { BeforeCreate, Entity, ManyToOne, OnInit, Rel } from "@mikro-orm/core" import AdjustmentLine from "./adjustment-line" import ShippingMethod from "./shipping-method" @@ -16,7 +16,7 @@ export default class ShippingMethodAdjustment extends AdjustmentLine { @ManyToOne(() => ShippingMethod, { persist: false, }) - shipping_method: ShippingMethod + shipping_method: Rel @ManyToOne({ entity: () => ShippingMethod, diff --git a/packages/modules/order/src/models/shipping-method-tax-line.ts b/packages/modules/order/src/models/shipping-method-tax-line.ts index 3244b18f42..5d958a850f 100644 --- a/packages/modules/order/src/models/shipping-method-tax-line.ts +++ b/packages/modules/order/src/models/shipping-method-tax-line.ts @@ -2,7 +2,7 @@ import { createPsqlIndexStatementHelper, generateEntityId, } from "@medusajs/utils" -import { BeforeCreate, Entity, ManyToOne, OnInit } from "@mikro-orm/core" +import { BeforeCreate, Entity, ManyToOne, OnInit, Rel } from "@mikro-orm/core" import ShippingMethod from "./shipping-method" import TaxLine from "./tax-line" @@ -16,7 +16,7 @@ export default class ShippingMethodTaxLine extends TaxLine { @ManyToOne(() => ShippingMethod, { persist: false, }) - shipping_method: ShippingMethod + shipping_method: Rel @ManyToOne({ entity: () => ShippingMethod, diff --git a/packages/modules/order/src/models/shipping-method.ts b/packages/modules/order/src/models/shipping-method.ts index 5a17a1f736..0de4ec8b48 100644 --- a/packages/modules/order/src/models/shipping-method.ts +++ b/packages/modules/order/src/models/shipping-method.ts @@ -14,6 +14,7 @@ import { OnInit, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import ShippingMethodAdjustment from "./shipping-method-adjustment" import ShippingMethodTaxLine from "./shipping-method-tax-line" @@ -41,7 +42,7 @@ export default class ShippingMethod { raw_amount: BigNumberRawValue @Property({ columnType: "boolean" }) - is_tax_inclusive = false + is_tax_inclusive: boolean = false @Property({ columnType: "text", @@ -63,7 +64,7 @@ export default class ShippingMethod { cascade: [Cascade.PERSIST], } ) - tax_lines = new Collection(this) + tax_lines = new Collection>(this) @OneToMany( () => ShippingMethodAdjustment, @@ -72,7 +73,7 @@ export default class ShippingMethod { cascade: [Cascade.PERSIST], } ) - adjustments = new Collection(this) + adjustments = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/order/src/models/tax-line.ts b/packages/modules/order/src/models/tax-line.ts index 5ebc53193f..95180f5332 100644 --- a/packages/modules/order/src/models/tax-line.ts +++ b/packages/modules/order/src/models/tax-line.ts @@ -1,5 +1,5 @@ import { BigNumberRawValue } from "@medusajs/types" -import {BigNumber, MikroOrmBigNumberProperty} from "@medusajs/utils" +import { BigNumber, MikroOrmBigNumberProperty } from "@medusajs/utils" import { PrimaryKey, Property } from "@mikro-orm/core" /** diff --git a/packages/modules/order/src/models/transaction.ts b/packages/modules/order/src/models/transaction.ts index de00e4ff8e..5acf777e7a 100644 --- a/packages/modules/order/src/models/transaction.ts +++ b/packages/modules/order/src/models/transaction.ts @@ -13,6 +13,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Claim from "./claim" import Exchange from "./exchange" @@ -90,7 +91,7 @@ export default class Transaction { @ManyToOne(() => Order, { persist: false, }) - order: Order + order: Rel @ManyToOne({ entity: () => Return, @@ -105,7 +106,7 @@ export default class Transaction { @ManyToOne(() => Return, { persist: false, }) - return: Return + return: Rel @ManyToOne({ entity: () => Exchange, @@ -120,7 +121,7 @@ export default class Transaction { @ManyToOne(() => Exchange, { persist: false, }) - exchange: Exchange + exchange: Rel @ManyToOne({ entity: () => Claim, @@ -135,7 +136,7 @@ export default class Transaction { @ManyToOne(() => Claim, { persist: false, }) - claim: Claim + claim: Rel @Property({ columnType: "integer", diff --git a/packages/modules/payment/integration-tests/__tests__/services/payment-module/index.spec.ts b/packages/modules/payment/integration-tests/__tests__/services/payment-module/index.spec.ts index a83c5995af..99b630020d 100644 --- a/packages/modules/payment/integration-tests/__tests__/services/payment-module/index.spec.ts +++ b/packages/modules/payment/integration-tests/__tests__/services/payment-module/index.spec.ts @@ -174,7 +174,7 @@ moduleIntegrationTestRunner({ expect(collection.length).toEqual(1) - await service.deletePaymentCollections(["pay-col-id-1"]) + await service.deletePaymentCollections("pay-col-id-1") collection = await service.listPaymentCollections({ id: ["pay-col-id-1"], diff --git a/packages/modules/payment/src/models/payment-collection.ts b/packages/modules/payment/src/models/payment-collection.ts index b6bea50946..92e5d053e3 100644 --- a/packages/modules/payment/src/models/payment-collection.ts +++ b/packages/modules/payment/src/models/payment-collection.ts @@ -19,6 +19,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Payment from "./payment" import PaymentProvider from "./payment-provider" @@ -99,17 +100,17 @@ export default class PaymentCollection { status: PaymentCollectionStatus = PaymentCollectionStatus.NOT_PAID @ManyToMany(() => PaymentProvider) - payment_providers = new Collection(this) + payment_providers = new Collection>(this) @OneToMany(() => PaymentSession, (ps) => ps.payment_collection, { cascade: [Cascade.PERSIST, "soft-remove"] as any, }) - payment_sessions = new Collection(this) + payment_sessions = new Collection>(this) @OneToMany(() => Payment, (payment) => payment.payment_collection, { cascade: [Cascade.PERSIST, "soft-remove"] as any, }) - payments = new Collection(this) + payments = new Collection>(this) @Property({ columnType: "jsonb", nullable: true }) metadata: Record | null = null diff --git a/packages/modules/payment/src/models/payment-session.ts b/packages/modules/payment/src/models/payment-session.ts index 469a1469b2..52ceafc6ba 100644 --- a/packages/modules/payment/src/models/payment-session.ts +++ b/packages/modules/payment/src/models/payment-session.ts @@ -15,6 +15,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Payment from "./payment" import PaymentCollection from "./payment-collection" @@ -60,7 +61,7 @@ export default class PaymentSession { @ManyToOne(() => PaymentCollection, { persist: false, }) - payment_collection: PaymentCollection + payment_collection: Rel @ManyToOne({ entity: () => PaymentCollection, @@ -76,7 +77,7 @@ export default class PaymentSession { nullable: true, mappedBy: "payment_session", }) - payment?: Payment | null + payment?: Rel | null @Property({ onCreate: () => new Date(), diff --git a/packages/modules/payment/src/models/payment.ts b/packages/modules/payment/src/models/payment.ts index d8d7006739..aa476be541 100644 --- a/packages/modules/payment/src/models/payment.ts +++ b/packages/modules/payment/src/models/payment.ts @@ -19,6 +19,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Capture from "./capture" import PaymentCollection from "./payment-collection" @@ -102,18 +103,18 @@ export default class Payment { @OneToMany(() => Refund, (refund) => refund.payment, { cascade: [Cascade.REMOVE], }) - refunds = new Collection(this) + refunds = new Collection>(this) @OneToMany(() => Capture, (capture) => capture.payment, { cascade: [Cascade.REMOVE], }) - captures = new Collection(this) + captures = new Collection>(this) @ManyToOne({ entity: () => PaymentCollection, persist: false, }) - payment_collection: PaymentCollection + payment_collection: Rel @ManyToOne({ entity: () => PaymentCollection, @@ -125,11 +126,12 @@ export default class Payment { payment_collection_id: string @OneToOne({ + entity: () => PaymentSession, owner: true, fieldName: "payment_session_id", index: "IDX_payment_payment_session_id", }) - payment_session: PaymentSession + payment_session: Rel @BeforeCreate() onCreate() { diff --git a/packages/modules/payment/src/models/refund.ts b/packages/modules/payment/src/models/refund.ts index 934ac40d0b..f00d2009fa 100644 --- a/packages/modules/payment/src/models/refund.ts +++ b/packages/modules/payment/src/models/refund.ts @@ -11,6 +11,7 @@ import { OnInit, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Payment from "./payment" @@ -30,7 +31,7 @@ export default class Refund { index: "IDX_refund_payment_id", fieldName: "payment_id", }) - payment!: Payment + payment!: Rel @Property({ onCreate: () => new Date(), diff --git a/packages/modules/pricing/src/models/price-list-rule-value.ts b/packages/modules/pricing/src/models/price-list-rule-value.ts index 805b244079..e46a7c53e3 100644 --- a/packages/modules/pricing/src/models/price-list-rule-value.ts +++ b/packages/modules/pricing/src/models/price-list-rule-value.ts @@ -13,6 +13,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import PriceListRule from "./price-list-rule" @@ -49,7 +50,7 @@ export default class PriceListRuleValue { price_list_rule_id: string @ManyToOne(() => PriceListRule, { persist: false }) - price_list_rule: PriceListRule + price_list_rule: Rel @Property({ columnType: "text" }) value: string diff --git a/packages/modules/pricing/src/models/price-list-rule.ts b/packages/modules/pricing/src/models/price-list-rule.ts index 11ab8728ca..dd89f5ce57 100644 --- a/packages/modules/pricing/src/models/price-list-rule.ts +++ b/packages/modules/pricing/src/models/price-list-rule.ts @@ -16,6 +16,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import PriceList from "./price-list" import PriceListRuleValue from "./price-list-rule-value" @@ -60,12 +61,12 @@ export default class PriceListRule { rule_type_id: string @ManyToOne(() => RuleType, { persist: false }) - rule_type: RuleType + rule_type: Rel @OneToMany(() => PriceListRuleValue, (plrv) => plrv.price_list_rule, { cascade: [Cascade.PERSIST, "soft-remove" as Cascade], }) - price_list_rule_values = new Collection(this) + price_list_rule_values = new Collection>(this) @PriceListRulePriceListIdIndex.MikroORMIndex() @ManyToOne(() => PriceList, { @@ -77,7 +78,7 @@ export default class PriceListRule { price_list_id: string @ManyToOne(() => PriceList, { persist: false }) - price_list: PriceList + price_list: Rel @Property({ onCreate: () => new Date(), diff --git a/packages/modules/pricing/src/models/price-list.ts b/packages/modules/pricing/src/models/price-list.ts index 1d3679de82..d9abc01ae9 100644 --- a/packages/modules/pricing/src/models/price-list.ts +++ b/packages/modules/pricing/src/models/price-list.ts @@ -20,6 +20,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Price from "./price" import PriceListRule from "./price-list-rule" @@ -76,18 +77,18 @@ export default class PriceList { @OneToMany(() => Price, (price) => price.price_list, { cascade: [Cascade.PERSIST, "soft-remove" as Cascade], }) - prices = new Collection(this) + prices = new Collection>(this) @OneToMany(() => PriceListRule, (pr) => pr.price_list, { cascade: [Cascade.PERSIST, "soft-remove" as Cascade], }) - price_list_rules = new Collection(this) + price_list_rules = new Collection>(this) @ManyToMany({ entity: () => RuleType, pivotEntity: () => PriceListRule, }) - rule_types = new Collection(this) + rule_types = new Collection>(this) @Property({ columnType: "integer", default: 0 }) rules_count: number = 0 diff --git a/packages/modules/pricing/src/models/price-rule.ts b/packages/modules/pricing/src/models/price-rule.ts index 55dfc29ca0..951b60a4c0 100644 --- a/packages/modules/pricing/src/models/price-rule.ts +++ b/packages/modules/pricing/src/models/price-rule.ts @@ -13,6 +13,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Price from "./price" import PriceSet from "./price-set" @@ -64,7 +65,7 @@ export default class PriceRule { price_set_id: string @ManyToOne(() => PriceSet, { persist: false }) - price_set: PriceSet + price_set: Rel @PriceRuleRuleTypeIdIndex.MikroORMIndex() @ManyToOne(() => RuleType, { @@ -75,7 +76,7 @@ export default class PriceRule { rule_type_id: string @ManyToOne(() => RuleType, { persist: false }) - rule_type: RuleType + rule_type: Rel @Property({ columnType: "text" }) value: string @@ -93,7 +94,7 @@ export default class PriceRule { price_id: string @ManyToOne(() => Price, { persist: false }) - price: Price + price: Rel @Property({ onCreate: () => new Date(), diff --git a/packages/modules/pricing/src/models/price-set.ts b/packages/modules/pricing/src/models/price-set.ts index 8117105f75..42e368eb52 100644 --- a/packages/modules/pricing/src/models/price-set.ts +++ b/packages/modules/pricing/src/models/price-set.ts @@ -14,6 +14,7 @@ import { OnInit, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Price from "./price" import PriceRule from "./price-rule" @@ -38,19 +39,19 @@ export default class PriceSet { @OneToMany(() => Price, (price) => price.price_set, { cascade: [Cascade.PERSIST, "soft-remove" as Cascade], }) - prices = new Collection(this) + prices = new Collection>(this) @OneToMany(() => PriceRule, (pr) => pr.price_set, { cascade: [Cascade.PERSIST, "soft-remove" as Cascade], }) - price_rules = new Collection(this) + price_rules = new Collection>(this) @ManyToMany({ entity: () => RuleType, pivotEntity: () => PriceSetRuleType, cascade: ["soft-remove" as Cascade], }) - rule_types = new Collection(this) + rule_types = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/pricing/src/models/price.ts b/packages/modules/pricing/src/models/price.ts index ee54d95b31..1d1abb3479 100644 --- a/packages/modules/pricing/src/models/price.ts +++ b/packages/modules/pricing/src/models/price.ts @@ -18,6 +18,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import PriceList from "./price-list" import PriceRule from "./price-rule" @@ -87,7 +88,7 @@ export default class Price { price_set_id: string @ManyToOne(() => PriceSet, { persist: false }) - price_set?: PriceSet + price_set?: Rel @Property({ columnType: "integer", default: 0 }) rules_count: number = 0 @@ -97,7 +98,7 @@ export default class Price { mappedBy: (pr) => pr.price, cascade: [Cascade.PERSIST, "soft-remove" as Cascade], }) - price_rules = new Collection(this) + price_rules = new Collection>(this) @PricePriceListIdIndex.MikroORMIndex() @ManyToOne(() => PriceList, { @@ -110,7 +111,7 @@ export default class Price { price_list_id: string | null = null @ManyToOne(() => PriceList, { persist: false, nullable: true }) - price_list: PriceList | null = null + price_list: Rel | null = null @Property({ onCreate: () => new Date(), diff --git a/packages/modules/pricing/src/models/rule-type.ts b/packages/modules/pricing/src/models/rule-type.ts index 95777416c9..f4cdd43f9b 100644 --- a/packages/modules/pricing/src/models/rule-type.ts +++ b/packages/modules/pricing/src/models/rule-type.ts @@ -13,6 +13,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import PriceSet from "./price-set" @@ -50,7 +51,7 @@ class RuleType { default_priority: number @ManyToMany(() => PriceSet, (priceSet) => priceSet.rule_types) - price_sets = new Collection(this) + price_sets = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/product/jest.config.js b/packages/modules/product/jest.config.js index 0c652264ea..d125300e58 100644 --- a/packages/modules/product/jest.config.js +++ b/packages/modules/product/jest.config.js @@ -6,11 +6,13 @@ module.exports = { "^@types": "/src/types", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/product/package.json b/packages/modules/product/package.json index 0c9878a572..ed3df54b7d 100644 --- a/packages/modules/product/package.json +++ b/packages/modules/product/package.json @@ -42,7 +42,6 @@ "medusa-test-utils": "^1.1.44", "pg-god": "^1.0.12", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/promotion/src/models/application-method.ts b/packages/modules/promotion/src/models/application-method.ts index 6c47228aee..48ded967d3 100644 --- a/packages/modules/promotion/src/models/application-method.ts +++ b/packages/modules/promotion/src/models/application-method.ts @@ -24,6 +24,7 @@ import { OneToOne, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Promotion from "./promotion" import PromotionRule from "./promotion-rule" @@ -79,21 +80,21 @@ export default class ApplicationMethod { entity: () => Promotion, onDelete: "cascade", }) - promotion: Promotion + promotion: Rel @ManyToMany(() => PromotionRule, "method_target_rules", { owner: true, pivotTable: "application_method_target_rules", cascade: ["soft-remove"] as any, }) - target_rules = new Collection(this) + target_rules = new Collection>(this) @ManyToMany(() => PromotionRule, "method_buy_rules", { owner: true, pivotTable: "application_method_buy_rules", cascade: ["soft-remove"] as any, }) - buy_rules = new Collection(this) + buy_rules = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/promotion/src/models/campaign-budget.ts b/packages/modules/promotion/src/models/campaign-budget.ts index cb9280e27d..033bfd02d6 100644 --- a/packages/modules/promotion/src/models/campaign-budget.ts +++ b/packages/modules/promotion/src/models/campaign-budget.ts @@ -21,6 +21,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import Campaign from "./campaign" @@ -45,7 +46,7 @@ export default class CampaignBudget { @OneToOne({ entity: () => Campaign, }) - campaign: Campaign | null = null + campaign: Rel | null = null @Property({ columnType: "text", nullable: true }) currency_code: string | null = null diff --git a/packages/modules/promotion/src/models/campaign.ts b/packages/modules/promotion/src/models/campaign.ts index da30f8806b..b4cf9ed5cb 100644 --- a/packages/modules/promotion/src/models/campaign.ts +++ b/packages/modules/promotion/src/models/campaign.ts @@ -11,6 +11,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, Unique, } from "@mikro-orm/core" import CampaignBudget from "./campaign-budget" @@ -64,10 +65,10 @@ export default class Campaign { cascade: ["soft-remove"] as any, nullable: true, }) - budget: CampaignBudget | null = null + budget: Rel | null = null @OneToMany(() => Promotion, (promotion) => promotion.campaign) - promotions = new Collection(this) + promotions = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/promotion/src/models/promotion-rule-value.ts b/packages/modules/promotion/src/models/promotion-rule-value.ts index 3709382ddc..e80fe4afef 100644 --- a/packages/modules/promotion/src/models/promotion-rule-value.ts +++ b/packages/modules/promotion/src/models/promotion-rule-value.ts @@ -7,6 +7,7 @@ import { OnInit, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import PromotionRule from "./promotion-rule" @@ -21,7 +22,7 @@ export default class PromotionRuleValue { fieldName: "promotion_rule_id", index: "IDX_promotion_rule_promotion_rule_value_id", }) - promotion_rule: PromotionRule + promotion_rule: Rel @Property({ columnType: "text" }) value: string diff --git a/packages/modules/promotion/src/models/promotion-rule.ts b/packages/modules/promotion/src/models/promotion-rule.ts index 90627a9b6d..6217cc3cc7 100644 --- a/packages/modules/promotion/src/models/promotion-rule.ts +++ b/packages/modules/promotion/src/models/promotion-rule.ts @@ -14,6 +14,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import ApplicationMethod from "./application-method" import Promotion from "./promotion" @@ -44,22 +45,22 @@ export default class PromotionRule { @OneToMany(() => PromotionRuleValue, (prv) => prv.promotion_rule, { cascade: [Cascade.REMOVE], }) - values = new Collection(this) + values = new Collection>(this) @ManyToMany(() => Promotion, (promotion) => promotion.rules) - promotions = new Collection(this) + promotions = new Collection>(this) @ManyToMany( () => ApplicationMethod, (applicationMethod) => applicationMethod.target_rules ) - method_target_rules = new Collection(this) + method_target_rules = new Collection>(this) @ManyToMany( () => ApplicationMethod, (applicationMethod) => applicationMethod.buy_rules ) - method_buy_rules = new Collection(this) + method_buy_rules = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/promotion/src/models/promotion.ts b/packages/modules/promotion/src/models/promotion.ts index 2f53cae22a..c35bc983d1 100644 --- a/packages/modules/promotion/src/models/promotion.ts +++ b/packages/modules/promotion/src/models/promotion.ts @@ -19,6 +19,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, Unique, } from "@mikro-orm/core" import ApplicationMethod from "./application-method" @@ -55,7 +56,7 @@ export default class Promotion { campaign_id: string | null = null @ManyToOne(() => Campaign, { persist: false }) - campaign: Campaign | null + campaign: Rel | null @Property({ columnType: "boolean", default: false }) is_automatic: boolean = false @@ -69,14 +70,14 @@ export default class Promotion { mappedBy: (am) => am.promotion, cascade: ["soft-remove"] as any, }) - application_method: ApplicationMethod + application_method: Rel @ManyToMany(() => PromotionRule, "promotions", { owner: true, pivotTable: "promotion_promotion_rule", cascade: ["soft-remove"] as any, }) - rules = new Collection(this) + rules = new Collection>(this) @Property({ onCreate: () => new Date(), diff --git a/packages/modules/providers/auth-emailpass/jest.config.js b/packages/modules/providers/auth-emailpass/jest.config.js index 9cf8a99080..f33ccadd61 100644 --- a/packages/modules/providers/auth-emailpass/jest.config.js +++ b/packages/modules/providers/auth-emailpass/jest.config.js @@ -1,7 +1,5 @@ module.exports = { - transform: { - "^.+\\.[jt]s?$": "@swc/jest", - }, + transform: { "^.+\\.[jt]s?$": "@swc/jest" }, testEnvironment: `node`, moduleFileExtensions: [`js`, `jsx`, `ts`, `tsx`, `json`], } diff --git a/packages/modules/providers/auth-google/jest.config.js b/packages/modules/providers/auth-google/jest.config.js index 9cf8a99080..f33ccadd61 100644 --- a/packages/modules/providers/auth-google/jest.config.js +++ b/packages/modules/providers/auth-google/jest.config.js @@ -1,7 +1,5 @@ module.exports = { - transform: { - "^.+\\.[jt]s?$": "@swc/jest", - }, + transform: { "^.+\\.[jt]s?$": "@swc/jest" }, testEnvironment: `node`, moduleFileExtensions: [`js`, `jsx`, `ts`, `tsx`, `json`], } diff --git a/packages/modules/providers/file-s3/jest.config.js b/packages/modules/providers/file-s3/jest.config.js index c1a3ef0793..9074b0d620 100644 --- a/packages/modules/providers/file-s3/jest.config.js +++ b/packages/modules/providers/file-s3/jest.config.js @@ -1,10 +1,4 @@ module.exports = { - globals: { - "ts-jest": { - tsconfig: "tsconfig.spec.json", - isolatedModules: false, - }, - }, transform: { "^.+\\.[jt]s$": ["@swc/jest"] }, testEnvironment: `node`, moduleFileExtensions: [`js`, `jsx`, `ts`, `tsx`, `json`], diff --git a/packages/modules/providers/fulfillment-manual/jest.config.js b/packages/modules/providers/fulfillment-manual/jest.config.js index e564d67c70..9074b0d620 100644 --- a/packages/modules/providers/fulfillment-manual/jest.config.js +++ b/packages/modules/providers/fulfillment-manual/jest.config.js @@ -1,13 +1,5 @@ module.exports = { - globals: { - "ts-jest": { - tsconfig: "tsconfig.spec.json", - isolatedModules: false, - }, - }, - transform: { - "^.+\\.[jt]s?$": "ts-jest", - }, + transform: { "^.+\\.[jt]s$": ["@swc/jest"] }, testEnvironment: `node`, moduleFileExtensions: [`js`, `jsx`, `ts`, `tsx`, `json`], } diff --git a/packages/modules/providers/notification-local/jest.config.js b/packages/modules/providers/notification-local/jest.config.js index 9cf8a99080..f33ccadd61 100644 --- a/packages/modules/providers/notification-local/jest.config.js +++ b/packages/modules/providers/notification-local/jest.config.js @@ -1,7 +1,5 @@ module.exports = { - transform: { - "^.+\\.[jt]s?$": "@swc/jest", - }, + transform: { "^.+\\.[jt]s?$": "@swc/jest" }, testEnvironment: `node`, moduleFileExtensions: [`js`, `jsx`, `ts`, `tsx`, `json`], } diff --git a/packages/modules/providers/notification-sendgrid/jest.config.js b/packages/modules/providers/notification-sendgrid/jest.config.js index c1a3ef0793..9074b0d620 100644 --- a/packages/modules/providers/notification-sendgrid/jest.config.js +++ b/packages/modules/providers/notification-sendgrid/jest.config.js @@ -1,10 +1,4 @@ module.exports = { - globals: { - "ts-jest": { - tsconfig: "tsconfig.spec.json", - isolatedModules: false, - }, - }, transform: { "^.+\\.[jt]s$": ["@swc/jest"] }, testEnvironment: `node`, moduleFileExtensions: [`js`, `jsx`, `ts`, `tsx`, `json`], diff --git a/packages/modules/providers/payment-stripe/jest.config.js b/packages/modules/providers/payment-stripe/jest.config.js index e564d67c70..9074b0d620 100644 --- a/packages/modules/providers/payment-stripe/jest.config.js +++ b/packages/modules/providers/payment-stripe/jest.config.js @@ -1,13 +1,5 @@ module.exports = { - globals: { - "ts-jest": { - tsconfig: "tsconfig.spec.json", - isolatedModules: false, - }, - }, - transform: { - "^.+\\.[jt]s?$": "ts-jest", - }, + transform: { "^.+\\.[jt]s$": ["@swc/jest"] }, testEnvironment: `node`, moduleFileExtensions: [`js`, `jsx`, `ts`, `tsx`, `json`], } diff --git a/packages/modules/region/jest.config.js b/packages/modules/region/jest.config.js index 0c652264ea..d125300e58 100644 --- a/packages/modules/region/jest.config.js +++ b/packages/modules/region/jest.config.js @@ -6,11 +6,13 @@ module.exports = { "^@types": "/src/types", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/region/package.json b/packages/modules/region/package.json index 376326c103..f10de75caf 100644 --- a/packages/modules/region/package.json +++ b/packages/modules/region/package.json @@ -40,7 +40,6 @@ "jest": "^29.7.0", "medusa-test-utils": "workspace:^", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/region/src/models/region.ts b/packages/modules/region/src/models/region.ts index 2196a325fb..bebd60d297 100644 --- a/packages/modules/region/src/models/region.ts +++ b/packages/modules/region/src/models/region.ts @@ -33,7 +33,7 @@ export default class Region { currency_code: string @Property({ columnType: "boolean" }) - automatic_taxes = true + automatic_taxes: boolean = true @OneToMany(() => Country, (country) => country.region) countries = new Collection(this) diff --git a/packages/modules/sales-channel/jest.config.js b/packages/modules/sales-channel/jest.config.js index 0c652264ea..d125300e58 100644 --- a/packages/modules/sales-channel/jest.config.js +++ b/packages/modules/sales-channel/jest.config.js @@ -6,11 +6,13 @@ module.exports = { "^@types": "/src/types", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/sales-channel/package.json b/packages/modules/sales-channel/package.json index fb2c2d9c47..27f8237526 100644 --- a/packages/modules/sales-channel/package.json +++ b/packages/modules/sales-channel/package.json @@ -39,7 +39,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.42", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/sales-channel/src/models/sales-channel.ts b/packages/modules/sales-channel/src/models/sales-channel.ts index 96827b3d6a..9480aa075c 100644 --- a/packages/modules/sales-channel/src/models/sales-channel.ts +++ b/packages/modules/sales-channel/src/models/sales-channel.ts @@ -31,7 +31,7 @@ export default class SalesChannel { description: string | null = null @Property({ columnType: "boolean", default: false }) - is_disabled = false + is_disabled: boolean = false @Property({ onCreate: () => new Date(), diff --git a/packages/modules/stock-location-next/jest.config.js b/packages/modules/stock-location-next/jest.config.js index 7b13ee00a9..3671181174 100644 --- a/packages/modules/stock-location-next/jest.config.js +++ b/packages/modules/stock-location-next/jest.config.js @@ -1,10 +1,12 @@ module.exports = { transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/stock-location-next/package.json b/packages/modules/stock-location-next/package.json index a110dc1df0..156df78a42 100644 --- a/packages/modules/stock-location-next/package.json +++ b/packages/modules/stock-location-next/package.json @@ -26,7 +26,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.44", "rimraf": "^5.0.1", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/store/jest.config.js b/packages/modules/store/jest.config.js index 0c652264ea..d125300e58 100644 --- a/packages/modules/store/jest.config.js +++ b/packages/modules/store/jest.config.js @@ -6,11 +6,13 @@ module.exports = { "^@types": "/src/types", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/store/package.json b/packages/modules/store/package.json index 5b1d0f62dd..927a72b339 100644 --- a/packages/modules/store/package.json +++ b/packages/modules/store/package.json @@ -40,7 +40,6 @@ "jest": "^29.7.0", "medusa-test-utils": "workspace:^", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/tax/jest.config.js b/packages/modules/tax/jest.config.js index 0c652264ea..d125300e58 100644 --- a/packages/modules/tax/jest.config.js +++ b/packages/modules/tax/jest.config.js @@ -6,11 +6,13 @@ module.exports = { "^@types": "/src/types", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/tax/package.json b/packages/modules/tax/package.json index 421fe5bf1e..86ac2721c5 100644 --- a/packages/modules/tax/package.json +++ b/packages/modules/tax/package.json @@ -39,7 +39,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.42", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/tax/src/models/tax-rate-rule.ts b/packages/modules/tax/src/models/tax-rate-rule.ts index ec74a9d8ff..b56b7617e2 100644 --- a/packages/modules/tax/src/models/tax-rate-rule.ts +++ b/packages/modules/tax/src/models/tax-rate-rule.ts @@ -5,15 +5,15 @@ import { generateEntityId, } from "@medusajs/utils" import { - Cascade, + BeforeCreate, Entity, + Filter, ManyToOne, + OnInit, + OptionalProps, PrimaryKey, Property, - Filter, - OptionalProps, - BeforeCreate, - OnInit, + Rel, } from "@mikro-orm/core" import TaxRate from "./tax-rate" @@ -73,7 +73,7 @@ export default class TaxRateRule { reference: string @ManyToOne(() => TaxRate, { persist: false }) - tax_rate: TaxRate + tax_rate: Rel @Property({ columnType: "jsonb", nullable: true }) metadata: Record | null = null diff --git a/packages/modules/tax/src/models/tax-rate.ts b/packages/modules/tax/src/models/tax-rate.ts index 8b2e6f8212..9418223b58 100644 --- a/packages/modules/tax/src/models/tax-rate.ts +++ b/packages/modules/tax/src/models/tax-rate.ts @@ -17,6 +17,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import TaxRateRule from "./tax-rate-rule" import TaxRegion from "./tax-region" @@ -63,10 +64,10 @@ export default class TaxRate { name: string @Property({ columnType: "bool", default: false }) - is_default = false + is_default: boolean = false @Property({ columnType: "bool", default: false }) - is_combinable = false + is_combinable: boolean = false @ManyToOne(() => TaxRegion, { columnType: "text", @@ -78,12 +79,12 @@ export default class TaxRate { tax_region_id: string @ManyToOne({ entity: () => TaxRegion, persist: false }) - tax_region: TaxRegion + tax_region: Rel @OneToMany(() => TaxRateRule, (rule) => rule.tax_rate, { cascade: ["soft-remove" as Cascade], }) - rules = new Collection(this) + rules = new Collection>(this) @Property({ columnType: "jsonb", nullable: true }) metadata: Record | null = null diff --git a/packages/modules/tax/src/models/tax-region.ts b/packages/modules/tax/src/models/tax-region.ts index f053a40edc..54847e88d7 100644 --- a/packages/modules/tax/src/models/tax-region.ts +++ b/packages/modules/tax/src/models/tax-region.ts @@ -18,6 +18,7 @@ import { OptionalProps, PrimaryKey, Property, + Rel, } from "@mikro-orm/core" import TaxProvider from "./tax-provider" import TaxRate from "./tax-rate" @@ -65,7 +66,7 @@ export default class TaxRegion { provider_id: string | null = null @ManyToOne(() => TaxProvider, { persist: false }) - provider: TaxProvider + provider: Rel @Searchable() @Property({ columnType: "text" }) @@ -85,7 +86,7 @@ export default class TaxRegion { parent_id: string | null = null @ManyToOne(() => TaxRegion, { persist: false }) - parent: TaxRegion + parent: Rel @OneToMany(() => TaxRate, (label) => label.tax_region, { cascade: ["soft-remove" as Cascade], @@ -95,7 +96,7 @@ export default class TaxRegion { @OneToMany(() => TaxRegion, (label) => label.parent, { cascade: ["soft-remove" as Cascade], }) - children = new Collection(this) + children = new Collection>(this) @Property({ columnType: "jsonb", nullable: true }) metadata: Record | null = null diff --git a/packages/modules/user/jest.config.js b/packages/modules/user/jest.config.js index 0c652264ea..d125300e58 100644 --- a/packages/modules/user/jest.config.js +++ b/packages/modules/user/jest.config.js @@ -6,11 +6,13 @@ module.exports = { "^@types": "/src/types", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/user/package.json b/packages/modules/user/package.json index de5596d296..0ce76521dd 100644 --- a/packages/modules/user/package.json +++ b/packages/modules/user/package.json @@ -42,7 +42,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.43", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/workflow-engine-inmemory/jest.config.js b/packages/modules/workflow-engine-inmemory/jest.config.js index 0c652264ea..d125300e58 100644 --- a/packages/modules/workflow-engine-inmemory/jest.config.js +++ b/packages/modules/workflow-engine-inmemory/jest.config.js @@ -6,11 +6,13 @@ module.exports = { "^@types": "/src/types", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/workflow-engine-inmemory/package.json b/packages/modules/workflow-engine-inmemory/package.json index a41714667f..eb437f9b4e 100644 --- a/packages/modules/workflow-engine-inmemory/package.json +++ b/packages/modules/workflow-engine-inmemory/package.json @@ -40,7 +40,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.44", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/packages/modules/workflow-engine-redis/jest.config.js b/packages/modules/workflow-engine-redis/jest.config.js index fc8bdef49c..4b346c8373 100644 --- a/packages/modules/workflow-engine-redis/jest.config.js +++ b/packages/modules/workflow-engine-redis/jest.config.js @@ -5,11 +5,13 @@ module.exports = { "^@repositories": "/src/repositories", }, transform: { - "^.+\\.[jt]s?$": [ - "ts-jest", + "^.+\\.[jt]s$": [ + "@swc/jest", { - tsconfig: "tsconfig.spec.json", - isolatedModules: true, + jsc: { + parser: { syntax: "typescript", decorators: true }, + transform: { decoratorMetadata: true }, + }, }, ], }, diff --git a/packages/modules/workflow-engine-redis/package.json b/packages/modules/workflow-engine-redis/package.json index 7f7da04b0d..4a3877442c 100644 --- a/packages/modules/workflow-engine-redis/package.json +++ b/packages/modules/workflow-engine-redis/package.json @@ -40,7 +40,6 @@ "jest": "^29.7.0", "medusa-test-utils": "^1.1.44", "rimraf": "^3.0.2", - "ts-jest": "^29.1.1", "ts-node": "^10.9.1", "tsc-alias": "^1.8.6", "typescript": "^5.1.6" diff --git a/scripts/run-workspace-unit-tests-in-chunks.sh b/scripts/run-workspace-unit-tests-in-chunks.sh index 24ece21113..a24d5ab063 100755 --- a/scripts/run-workspace-unit-tests-in-chunks.sh +++ b/scripts/run-workspace-unit-tests-in-chunks.sh @@ -21,5 +21,6 @@ for workspace in $(echo "$workspaces" | jq -r '.[]'); do filters+=" --filter=${workspace}" done +command="yarn run test $filters" # Run the test in the selected chunk -yarn run test $filters +eval "$command" diff --git a/yarn.lock b/yarn.lock index c4885bc9df..df783b8e40 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4240,7 +4240,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: ^1.1.44 rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -4298,8 +4297,6 @@ __metadata: rimraf: ^3.0.2 scrypt-kdf: ^2.0.1 simple-oauth2: ^5.0.0 - ts-jest: ^29.1.1 - ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 languageName: unknown @@ -4314,7 +4311,6 @@ __metadata: cross-env: ^5.2.1 jest: ^29.7.0 rimraf: ^5.0.1 - ts-jest: ^29.1.1 typescript: ^5.1.6 languageName: unknown linkType: soft @@ -4330,7 +4326,6 @@ __metadata: ioredis: ^5.3.1 jest: ^29.7.0 rimraf: ^5.0.1 - ts-jest: ^29.1.1 typescript: ^5.1.6 languageName: unknown linkType: soft @@ -4353,7 +4348,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: ^1.1.44 rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -4422,7 +4416,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: ^1.1.44 rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -4494,7 +4487,6 @@ __metadata: cross-env: ^5.2.1 jest: ^29.7.0 rimraf: ^5.0.1 - ts-jest: ^29.1.1 typescript: ^5.1.6 ulid: ^2.3.0 languageName: unknown @@ -4514,7 +4506,6 @@ __metadata: jest: ^29.7.0 medusa-test-utils: ^1.1.44 rimraf: ^5.0.1 - ts-jest: ^29.1.1 typescript: ^5.1.6 languageName: unknown linkType: soft @@ -4568,7 +4559,6 @@ __metadata: medusa-test-utils: ^1.1.43 pg-god: ^1.0.12 rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -4608,7 +4598,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: ^1.1.44 rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -4667,7 +4656,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: ^1.1.43 rimraf: ^5.0.1 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -4714,7 +4702,6 @@ __metadata: jest: ^29.7.0 pg-god: ^1.0.12 rimraf: ^5.0.1 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -4848,7 +4835,6 @@ __metadata: request-ip: ^3.3.0 rimraf: ^5.0.1 supertest: ^4.0.2 - ts-jest: ^29.1.1 typescript: ^5.3.3 uuid: ^9.0.0 zod: 3.22.4 @@ -4872,7 +4858,6 @@ __metadata: pg: ^8.11.2 resolve-cwd: ^3.0.0 rimraf: ^5.0.1 - ts-jest: ^29.1.1 typescript: ^5.1.6 languageName: unknown linkType: soft @@ -4922,7 +4907,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: ^1.1.44 rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -4949,7 +4933,6 @@ __metadata: graphql: ^16.6.0 jest: ^29.7.0 rimraf: ^5.0.1 - ts-jest: ^29.1.1 typescript: ^5.1.6 languageName: unknown linkType: soft @@ -4972,7 +4955,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: ^1.1.44 rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -5071,7 +5053,6 @@ __metadata: medusa-test-utils: ^1.1.44 pg-god: ^1.0.12 rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -5121,7 +5102,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: "workspace:^" rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -5146,7 +5126,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: ^1.1.42 rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -5171,7 +5150,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: ^1.1.44 rimraf: ^5.0.1 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -5196,7 +5174,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: "workspace:^" rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -5221,7 +5198,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: ^1.1.42 rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -5380,7 +5356,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: ^1.1.43 rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -5432,7 +5407,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: ^1.1.44 rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -5460,7 +5434,6 @@ __metadata: knex: 2.4.2 medusa-test-utils: ^1.1.44 rimraf: ^3.0.2 - ts-jest: ^29.1.1 ts-node: ^10.9.1 tsc-alias: ^1.8.6 typescript: ^5.1.6 @@ -5479,7 +5452,6 @@ __metadata: cross-env: ^5.2.1 jest: ^29.7.0 rimraf: ^5.0.1 - ts-jest: ^29.1.1 typescript: ^5.1.6 ulid: ^2.3.0 languageName: unknown