fb / artifacts /api-server /src /routes /index.ts
sare26's picture
Upload 21 files
ccc21f3 verified
Raw
History Blame Contribute Delete
1.46 kB
import { Router, type IRouter, type Request, type Response } from "express";
import healthRouter from "./health";
import meRouter from "./me";
import subscriptionRouter from "./subscription";
import paypalRouter from "./paypal";
import savedListsRouter from "./saved-lists";
import adminRouter from "./admin";
import eventsRouter from "./events";
import { db, appConfigTable } from "@workspace/db";
import { eq } from "drizzle-orm";
const router: IRouter = Router();
router.use(healthRouter);
router.use("/me", meRouter);
router.use("/subscription", subscriptionRouter);
router.use("/paypal", paypalRouter);
router.use("/saved-lists", savedListsRouter);
router.use("/admin", adminRouter);
router.use("/events", eventsRouter);
router.get("/extension-update", async (req: Request, res: Response) => {
try {
const rows = await db.select().from(appConfigTable).where(
eq(appConfigTable.key, "extension_update_available")
);
const vRows = await db.select().from(appConfigTable).where(
eq(appConfigTable.key, "extension_update_version")
);
const mRows = await db.select().from(appConfigTable).where(
eq(appConfigTable.key, "extension_update_message")
);
res.json({
updateAvailable: rows[0]?.value === "true",
version: vRows[0]?.value ?? null,
message: mRows[0]?.value ?? null,
});
} catch {
res.json({ updateAvailable: false, version: null, message: null });
}
});
export default router;