-
Notifications
You must be signed in to change notification settings - Fork 12.1k
Expand file tree
/
Copy pathOAuthService.module.ts
More file actions
31 lines (27 loc) · 1.21 KB
/
OAuthService.module.ts
File metadata and controls
31 lines (27 loc) · 1.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import { bindModuleToClassOnToken, createModule, type ModuleLoader } from "@calcom/features/di/di";
import { OAuthService } from "@calcom/features/oauth/services/OAuthService";
import { moduleLoader as accessCodeRepositoryModuleLoader } from "./AccessCodeRepository.module";
import { moduleLoader as oAuthClientRepositoryModuleLoader } from "./OAuthClientRepository.module";
import { moduleLoader as oAuthRefreshTokenRepositoryModuleLoader } from "./OAuthRefreshTokenRepository.module";
import { moduleLoader as teamRepositoryModuleLoader } from "./TeamRepository.module";
import { OAUTH_DI_TOKENS } from "./tokens";
const thisModule = createModule();
const token = OAUTH_DI_TOKENS.OAUTH_SERVICE;
const moduleToken = OAUTH_DI_TOKENS.OAUTH_SERVICE_MODULE;
const loadModule = bindModuleToClassOnToken({
module: thisModule,
moduleToken,
token,
classs: OAuthService,
depsMap: {
oAuthClientRepository: oAuthClientRepositoryModuleLoader,
accessCodeRepository: accessCodeRepositoryModuleLoader,
oAuthRefreshTokenRepository: oAuthRefreshTokenRepositoryModuleLoader,
teamsRepository: teamRepositoryModuleLoader,
},
});
export const moduleLoader: ModuleLoader = {
token,
loadModule,
};
export type { OAuthService };