chore(): Reorganize modules (#7210)
**What** Move all modules to the modules directory
This commit is contained in:
committed by
GitHub
parent
7a351eef09
commit
4eae25e1ef
2
packages/modules/link-modules/src/repositories/index.ts
Normal file
2
packages/modules/link-modules/src/repositories/index.ts
Normal file
@@ -0,0 +1,2 @@
|
||||
export { MikroOrmBaseRepository as BaseRepository } from "@medusajs/utils"
|
||||
export { getLinkRepository } from "./link"
|
||||
49
packages/modules/link-modules/src/repositories/link.ts
Normal file
49
packages/modules/link-modules/src/repositories/link.ts
Normal file
@@ -0,0 +1,49 @@
|
||||
import { Context, ModuleJoinerConfig } from "@medusajs/types"
|
||||
import { EntitySchema } from "@mikro-orm/core"
|
||||
|
||||
import {
|
||||
generateEntityId,
|
||||
mikroOrmBaseRepositoryFactory,
|
||||
} from "@medusajs/utils"
|
||||
import { SqlEntityManager } from "@mikro-orm/postgresql"
|
||||
|
||||
export function getLinkRepository(model: EntitySchema) {
|
||||
return class LinkRepository extends mikroOrmBaseRepositoryFactory(model) {
|
||||
readonly joinerConfig_: ModuleJoinerConfig
|
||||
|
||||
constructor({ joinerConfig }: { joinerConfig: ModuleJoinerConfig }) {
|
||||
// @ts-ignore
|
||||
super(...arguments)
|
||||
this.joinerConfig_ = joinerConfig
|
||||
}
|
||||
|
||||
async delete(data: any, context: Context = {}): Promise<void> {
|
||||
const filter = {}
|
||||
for (const key in data) {
|
||||
filter[key] = {
|
||||
$in: Array.isArray(data[key]) ? data[key] : [data[key]],
|
||||
}
|
||||
}
|
||||
|
||||
const manager = this.getActiveManager<SqlEntityManager>(context)
|
||||
await manager.nativeDelete(model, data, {})
|
||||
}
|
||||
|
||||
async create(data: object[], context: Context = {}): Promise<object[]> {
|
||||
const manager = this.getActiveManager<SqlEntityManager>(context)
|
||||
|
||||
const links = data.map((link: any) => {
|
||||
link.id = generateEntityId(
|
||||
link.id,
|
||||
this.joinerConfig_.databaseConfig?.idPrefix ?? "link"
|
||||
)
|
||||
link.deleted_at = null
|
||||
return manager.create(model, link)
|
||||
})
|
||||
|
||||
await manager.upsertMany(model, links)
|
||||
|
||||
return links
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user