Files
Tom Moor 957ce69d2e perf: Move image download out of transaction (#11528)
* perf: Move image download out of transaction

* loop
2026-02-23 22:14:03 -05:00

33 lines
667 B
TypeScript

import type { Transaction } from "sequelize";
import type { User } from "@server/models";
import type { APIContext } from "@server/types";
import { AuthenticationType } from "@server/types";
/**
* Factory to create a new API context.
*/
export function createContext({
user,
authType = AuthenticationType.APP,
ip,
transaction,
}: {
user?: User;
authType?: AuthenticationType | null;
ip?: string | null;
transaction?: Transaction;
}) {
const auth = { user, type: authType };
return {
state: {
auth,
transaction,
},
context: {
auth,
ip: ip ?? user?.lastActiveIp,
transaction,
},
} as APIContext;
}