attempted upgrade

This commit is contained in:
yohlo
2025-09-24 00:13:41 -05:00
parent 94ea44c66e
commit e4164cbc71
26 changed files with 1390 additions and 1273 deletions

View File

@@ -1,9 +1,8 @@
import {
createMiddleware,
createServerFn,
ServerFnResponseType,
} from "@tanstack/react-start";
import { getWebRequest } from "@tanstack/react-start/server";
import { getRequest, setResponseHeader } from "@tanstack/react-start/server";
import { redirect as redirect } from "@tanstack/react-router";
import UserRoles from "supertokens-node/recipe/userroles";
import UserMetadata from "supertokens-node/recipe/usermetadata";
@@ -15,8 +14,7 @@ import { refreshSession } from "supertokens-node/recipe/session";
const logger = new Logger("Middleware");
export const verifySuperTokensSession = async (
request: Request,
response?: ServerFnResponseType
request: Request
) => {
let session = await getSessionForStart(request, { sessionRequired: false });
@@ -24,13 +22,17 @@ export const verifySuperTokensSession = async (
logger.info("Session needs refresh");
try {
if (response) {
const refreshedSession = await refreshSession(request, response);
if (refreshedSession) {
session = await getSessionForStart(request, { sessionRequired: false });
const refreshedSession = await refreshSession(request, {
setHeader: (key: string, value: string) => {
setResponseHeader(key, value);
},
setCookie: (cookie: string) => {
setResponseHeader('Set-Cookie', cookie);
}
});
if (refreshedSession) {
session = await getSessionForStart(request, { sessionRequired: false });
}
if (session?.needsRefresh) {
return { context: { session: { tryRefresh: true } } };
}
@@ -109,8 +111,8 @@ export const superTokensRequestMiddleware = createMiddleware({
export const superTokensFunctionMiddleware = createMiddleware({
type: "function",
}).server(async ({ next, response }) => {
const request = getWebRequest();
}).server(async ({ next }) => {
const request = getRequest();
try {
const context = await getSessionContext(request, { isServerFunction: true });
@@ -135,7 +137,7 @@ export const superTokensFunctionMiddleware = createMiddleware({
export const superTokensAdminFunctionMiddleware = createMiddleware({
type: "function",
}).server(async ({ next }) => {
const request = getWebRequest();
const request = getRequest();
try {
const context = await getSessionContext(request, { isServerFunction: true });
@@ -169,7 +171,7 @@ export const fetchUserRoles = async (userAuthId: string) => {
};
export const setUserMetadata = createServerFn({ method: "POST" })
.validator(
.inputValidator(
z
.object({
first_name: z
@@ -212,7 +214,7 @@ export const setUserMetadata = createServerFn({ method: "POST" })
});
export const updateUserColorScheme = createServerFn({ method: "POST" })
.validator((data: string) => data)
.inputValidator((data: string) => data)
.middleware([superTokensFunctionMiddleware])
.handler(async ({ context, data }) => {
const { userAuthId, metadata } = context;
@@ -231,7 +233,7 @@ export const updateUserColorScheme = createServerFn({ method: "POST" })
});
export const updateUserAccentColor = createServerFn({ method: "POST" })
.validator((data: string) => data)
.inputValidator((data: string) => data)
.middleware([superTokensFunctionMiddleware])
.handler(async ({ context, data }) => {
const { userAuthId, metadata } = context;