refactor(SW-188): replace anon or auth procedure with serviceProcedure

This commit is contained in:
Chuma McPhoy
2024-08-13 15:59:07 +02:00
parent a1a0a73e3a
commit ed379202c8
7 changed files with 55 additions and 80 deletions

View File

@@ -4,10 +4,11 @@ import { env } from "@/env/server"
import {
badRequestError,
internalServerError,
sessionExpiredError,
unauthorizedError,
} from "./errors/trpc"
import { getAuthToken } from "./tokenManager"
import { fetchServiceToken } from "./tokenManager"
import { transformer } from "./transformer"
import { langInput } from "./utils"
@@ -101,16 +102,14 @@ export const safeProtectedProcedure = t.procedure.use(async function (opts) {
})
})
export const anonymousOrAuthProcedure = t.procedure.use(async function (opts) {
const session: Session | null = await opts.ctx.auth()
const userToken = session?.token?.access_token || null
const getToken = async () => await getAuthToken(userToken)
export const serviceProcedure = t.procedure.use(async (opts) => {
const { access_token } = await fetchServiceToken()
if (!access_token) {
throw internalServerError("Failed to obtain service token")
}
return opts.next({
ctx: {
session,
getToken,
serviceToken: access_token,
},
})
})