chore(): Reorganize modules (#7210)

**What**
Move all modules to the modules directory
This commit is contained in:
Adrien de Peretti
2024-05-02 17:33:34 +02:00
committed by GitHub
parent 7a351eef09
commit 4eae25e1ef
870 changed files with 91 additions and 62 deletions

View File

@@ -0,0 +1,12 @@
export const defaultPriceListRuleData = [
{
id: "price-list-rule-1",
price_list_id: "price-list-1",
rule_type_id: "rule-type-1",
},
{
id: "price-list-rule-2",
price_list_id: "price-list-1",
rule_type_id: "rule-type-2",
},
]

View File

@@ -0,0 +1,22 @@
import { SqlEntityManager } from "@mikro-orm/postgresql"
import { PriceListRule } from "@models"
import { defaultPriceListRuleData } from "./data"
export * from "./data"
export async function createPriceListRules(
manager: SqlEntityManager,
priceListRuleData: any[] = defaultPriceListRuleData
): Promise<PriceListRule[]> {
const priceListRules: PriceListRule[] = []
for (let data of priceListRuleData) {
const plr = manager.create(PriceListRule, data)
priceListRules.push(plr)
}
await manager.persistAndFlush(priceListRules)
return priceListRules
}

View File

@@ -0,0 +1,14 @@
export const defaultPriceListData = [
{
id: "price-list-1",
title: "Price List 1",
description: "test",
rules_count: 0,
},
{
id: "price-list-2",
title: "Price List 2",
description: "test",
rules_count: 0,
},
]

View File

@@ -0,0 +1,22 @@
import { SqlEntityManager } from "@mikro-orm/postgresql"
import { PriceList } from "@models"
import { defaultPriceListData } from "./data"
export * from "./data"
export async function createPriceLists(
manager: SqlEntityManager,
priceListData: any[] = defaultPriceListData
): Promise<PriceList[]> {
const priceLists: PriceList[] = []
for (let data of priceListData) {
const pl = manager.create(PriceList, data)
priceLists.push(pl)
}
await manager.persistAndFlush(priceLists)
return priceLists
}

View File

@@ -0,0 +1,22 @@
import { CreatePriceRuleDTO } from "@medusajs/types"
export * from "./data"
export const defaultPriceRuleData = [
{
id: "price-rule-1",
price_set_id: "price-set-1",
rule_type_id: "rule-type-1",
value: "USD",
price_list_id: "test",
price_id: "price-set-money-amount-USD",
},
{
id: "price-rule-2",
price_set_id: "price-set-2",
rule_type_id: "rule-type-2",
value: "region_1",
price_list_id: "test",
price_id: "price-set-money-amount-EUR",
},
] as unknown as CreatePriceRuleDTO[]

View File

@@ -0,0 +1,30 @@
import { PriceRule } from "@models"
import { CreatePriceRuleDTO } from "@medusajs/types"
import { SqlEntityManager } from "@mikro-orm/postgresql"
import { defaultPriceRuleData } from "./data"
export * from "./data"
export async function createPriceRules(
manager: SqlEntityManager,
pricesRulesData: CreatePriceRuleDTO[] = defaultPriceRuleData
): Promise<PriceRule[]> {
const priceRules: PriceRule[] = []
for (let priceRuleData of pricesRulesData) {
const priceRuleDataClone: CreatePriceRuleDTO = { ...priceRuleData }
priceRuleDataClone.price_set_id = priceRuleDataClone.price_set_id
priceRuleDataClone.rule_type_id = priceRuleDataClone.rule_type_id
priceRuleDataClone.price_id = priceRuleDataClone.price_id
const priceRule = manager.create(PriceRule, priceRuleDataClone)
priceRules.push(priceRule)
}
await manager.persistAndFlush(priceRules)
return priceRules
}

View File

@@ -0,0 +1,13 @@
import { CreatePriceSetDTO } from "@medusajs/types"
export const defaultPriceSetsData = [
{
id: "price-set-1",
},
{
id: "price-set-2",
},
{
id: "price-set-3",
},
] as unknown as CreatePriceSetDTO[]

View File

@@ -0,0 +1,37 @@
import { CreatePriceSetDTO } from "@medusajs/types"
import { SqlEntityManager } from "@mikro-orm/postgresql"
import { Price, PriceSet } from "@models"
import { defaultPriceSetsData } from "./data"
export * from "./data"
export async function createPriceSets(
manager: SqlEntityManager,
priceSetsData: CreatePriceSetDTO[] = defaultPriceSetsData
): Promise<PriceSet[]> {
const priceSets: PriceSet[] = []
for (let priceSetData of priceSetsData) {
const priceSetDataClone = { ...priceSetData }
const prices = priceSetDataClone.prices || []
delete priceSetDataClone.prices
let priceSet = manager.create(PriceSet, priceSetDataClone) as PriceSet
manager.persist(priceSet)
for (let priceData of prices) {
const price = manager.create(Price, {
...priceData,
price_set_id: priceSet.id,
title: "test",
})
manager.persist(price)
}
await manager.flush()
}
return priceSets
}

View File

@@ -0,0 +1,26 @@
export const defaultPricesData = [
{
id: "price-set-money-amount-USD",
currency_code: "USD",
amount: 500,
title: "price set money amount USD",
price_set_id: "price-set-1",
rules_count: 1,
},
{
id: "price-set-money-amount-EUR",
currency_code: "EUR",
amount: 400,
title: "price set money amount EUR",
price_set_id: "price-set-2",
rules_count: 1,
},
{
id: "price-set-money-amount-CAD",
currency_code: "CAD",
amount: 600,
title: "price set money amount CAD",
price_set_id: "price-set-3",
rules_count: 1,
},
]

View File

@@ -0,0 +1,21 @@
import { SqlEntityManager } from "@mikro-orm/postgresql"
import { Price } from "@models"
import { defaultPricesData } from "./data"
export * from "./data"
export async function createPrices(
manager: SqlEntityManager,
pricesData: any[] = defaultPricesData
): Promise<Price[]> {
const prices: Price[] = []
for (let data of pricesData) {
const price = manager.create(Price, data)
prices.push(price)
}
await manager.persistAndFlush(prices)
return prices
}

View File

@@ -0,0 +1,12 @@
export const defaultRuleTypesData = [
{
id: "rule-type-1",
name: "rule 1",
rule_attribute: "currency_code",
},
{
id: "rule-type-2",
name: "rule 2",
rule_attribute: "region_id",
},
]

View File

@@ -0,0 +1,22 @@
import { SqlEntityManager } from "@mikro-orm/postgresql"
import { RuleType } from "@models"
import { defaultRuleTypesData } from "./data"
export * from "./data"
export async function createRuleTypes(
manager: SqlEntityManager,
ruletypesData: any[] = defaultRuleTypesData
): Promise<RuleType[]> {
const ruleTypes: RuleType[] = []
for (let ruleTypeData of ruletypesData) {
const ruleType = manager.create(RuleType, ruleTypeData)
ruleTypes.push(ruleType)
}
await manager.persistAndFlush(ruleTypes)
return ruleTypes
}

View File

@@ -0,0 +1,22 @@
import { SqlEntityManager } from "@mikro-orm/postgresql"
import { createPrices, defaultPricesData } from "./price"
import { createPriceRules, defaultPriceRuleData } from "./price-rule"
import { createPriceSets, defaultPriceSetsData } from "./price-set"
import { createRuleTypes, defaultRuleTypesData } from "./rule-type"
jest.setTimeout(30000)
export async function seedPriceData(
testManager: SqlEntityManager,
{
priceSetsData = defaultPriceSetsData,
priceRuleData = defaultPriceRuleData,
pricesData = defaultPricesData,
ruleTypesData = defaultRuleTypesData,
} = {}
) {
await createPriceSets(testManager, priceSetsData)
await createPrices(testManager, pricesData)
await createRuleTypes(testManager, ruleTypesData)
await createPriceRules(testManager, priceRuleData)
}