Uecko_ERP/apps/server/src/contexts/auth/application/index.ts

25 lines
1.0 KiB
TypeScript
Raw Normal View History

2025-02-03 13:12:36 +00:00
import { createSequelizeTransactionManager } from "@common/infrastructure";
2025-02-04 18:25:10 +00:00
import { createAuthenticatedUserRepository, createTabContextRepository } from "../infraestructure";
2025-02-03 13:12:36 +00:00
import { IAuthService } from "./auth-service.interface";
2025-02-01 21:48:13 +00:00
import { AuthService } from "./auth.service";
2025-02-05 20:40:59 +00:00
import { ITabContextService } from "./tab-context-service.interface";
import { TabContextService } from "./tab-context.service";
2025-02-01 21:48:13 +00:00
2025-02-03 13:12:36 +00:00
export * from "./auth-service.interface";
2025-02-01 21:48:13 +00:00
2025-02-03 13:12:36 +00:00
export const createAuthService = (): IAuthService => {
const transactionManager = createSequelizeTransactionManager();
2025-02-07 11:14:18 +00:00
const userRepo = createAuthenticatedUserRepository();
const tabContextRepo = createTabContextRepository();
2025-02-03 18:03:23 +00:00
2025-02-07 11:14:18 +00:00
return new AuthService(userRepo, tabContextRepo, transactionManager);
2025-02-03 13:12:36 +00:00
};
2025-02-05 20:40:59 +00:00
export const createTabContextService = (): ITabContextService => {
const transactionManager = createSequelizeTransactionManager();
const tabContextRepository = createTabContextRepository();
return new TabContextService(tabContextRepository, transactionManager);
};