chore: Refactor and improve abstract module service factory (#7688)

* chore: Refactor and improve abstract module service factory

* align naming

* clean up some template args and tests

* partially migrate modules

* partially migrate modules

* migrate more modules

* migrate last modules

* fix typings

* rename interface

* rename interface

* fixes

* fixes

* rm local plain tests
This commit is contained in:
Adrien de Peretti
2024-06-13 13:12:37 +02:00
committed by GitHub
parent c57223a3a2
commit d2a5201eeb
44 changed files with 590 additions and 519 deletions

View File

@@ -1,15 +1,15 @@
import crypto from "crypto"
import util from "util"
import {
ApiKeyTypes,
Context,
DAL,
ApiKeyTypes,
FilterableApiKeyProps,
FindConfig,
IApiKeyModuleService,
ModulesSdkTypes,
InternalModuleDeclaration,
ModuleJoinerConfig,
FindConfig,
FilterableApiKeyProps,
ModulesSdkTypes,
} from "@medusajs/types"
import { entityNameToLinkableKeysMap, joinerConfig } from "../joiner-config"
import { ApiKey } from "@models"
@@ -23,35 +23,32 @@ import {
ApiKeyType,
InjectManager,
InjectTransactionManager,
isObject,
isString,
MedusaContext,
MedusaError,
ModulesSdkUtils,
isObject,
isString,
promiseAll,
} from "@medusajs/utils"
const scrypt = util.promisify(crypto.scrypt)
const generateMethodForModels = []
type InjectedDependencies = {
baseRepository: DAL.RepositoryService
apiKeyService: ModulesSdkTypes.InternalModuleService<any>
apiKeyService: ModulesSdkTypes.IMedusaInternalService<any>
}
export default class ApiKeyModuleService<TEntity extends ApiKey = ApiKey>
extends ModulesSdkUtils.abstractModuleServiceFactory<
InjectedDependencies,
extends ModulesSdkUtils.MedusaService<
ApiKeyTypes.ApiKeyDTO,
{
ApiKey: { dto: ApiKeyTypes.ApiKeyDTO }
}
>(ApiKey, generateMethodForModels, entityNameToLinkableKeysMap)
>(ApiKey, {}, entityNameToLinkableKeysMap)
implements IApiKeyModuleService
{
protected baseRepository_: DAL.RepositoryService
protected readonly apiKeyService_: ModulesSdkTypes.InternalModuleService<TEntity>
protected readonly apiKeyService_: ModulesSdkTypes.IMedusaInternalService<TEntity>
constructor(
{ baseRepository, apiKeyService }: InjectedDependencies,