skailan-core
Version:
Servicio de autenticación y multitenancy para Skailan.
35 lines • 1.33 kB
JavaScript
import express from "express";
import cors from "cors";
import membershipRoutes from "./membership/routes/membershipRoutes";
import authRoutes from "./auth/routes/auth";
import publicAuthRoutes from "./auth/routes/publicAuth";
import organizationRoutes from "./organization/routes";
import paymentRoutes from "./payment/routes/paymentRoutes";
import rbacRoutes from "./rbac/routes/rbacRoutes";
import { tenantResolver } from './shared/middlewares/tenantResolver';
import { initializeRBAC } from './shared/middlewares/rbacMiddleware';
import { PrismaClient } from "@prisma/client";
const app = express();
console.log('Request received by Express app.');
// Inicializar sistema RBAC
const prisma = new PrismaClient();
initializeRBAC(prisma);
app.use(cors({
origin: "http://localhost:3000",
credentials: true,
}));
app.use(express.json());
// Rutas públicas de autenticación (sin tenant)
app.use("/public/auth", publicAuthRoutes);
// Aplicar tenantResolver a todas las rutas que requieren organización
app.use(tenantResolver);
/**
* Rutas que requieren tenant (organización)
*/
app.use("/auth", authRoutes);
app.use("/organizations", organizationRoutes);
app.use("/payments", paymentRoutes);
app.use("/memberships", membershipRoutes);
app.use("/rbac", rbacRoutes);
export default app;
//# sourceMappingURL=app.js.map