Split services into core and request

This commit is contained in:
2026-01-17 16:19:32 -06:00
parent e59bb35ac9
commit 8a7682e953
12 changed files with 76 additions and 73 deletions

View File

@@ -1,8 +1,8 @@
import { SESSION_COOKIE_NAME } from "../auth/token";
import { tokenLifetimes } from "../auth/types";
import { services } from "../services";
import type { Call, Result, Route } from "../types";
import { request } from "../request";
import { html, redirect, render } from "../request/util";
import type { Call, Result, Route } from "../types";
const loginHandler = async (call: Call): Promise<Result> => {
if (call.method === "GET") {
@@ -21,7 +21,7 @@ const loginHandler = async (call: Call): Promise<Result> => {
return html(c);
}
const result = await services.auth.login(email, password, "cookie", {
const result = await request.auth.login(email, password, "cookie", {
userAgent: call.request.get("User-Agent"),
ipAddress: call.request.ip,
});

View File

@@ -1,13 +1,13 @@
import { SESSION_COOKIE_NAME } from "../auth/token";
import { services } from "../services";
import type { Call, Result, Route } from "../types";
import { request } from "../request";
import { redirect } from "../request/util";
import type { Call, Result, Route } from "../types";
const logoutHandler = async (call: Call): Promise<Result> => {
// Extract token from cookie and invalidate the session
const token = services.auth.extractToken(call.request);
const token = request.auth.extractToken(call.request);
if (token) {
await services.auth.logout(token);
await request.auth.logout(token);
}
// Clear the cookie and redirect to login

View File

@@ -1,7 +1,7 @@
import { DateTime } from "ts-luxon";
import { services } from "../services";
import type { Call, Result, Route } from "../types";
import { request } from "../request";
import { html, render } from "../request/util";
import type { Call, Result, Route } from "../types";
import { loginRoute } from "./login";
import { logoutRoute } from "./logout";
@@ -20,8 +20,8 @@ const routes: Record<string, Route> = {
path: "/",
methods: ["GET"],
handler: async (_call: Call): Promise<Result> => {
const auth = services.auth;
const me = services.session.getUser();
const _auth = request.auth;
const me = request.session.getUser();
const email = me.toString();
const c = await render("basic/home", { email });