wip: migrate backend to new game package

This commit is contained in:
Justin Lin committed 2025-04-21 22:40:11 +08:00
1 parent 1d843f7355
commit 1616f62755
94 files changed
+263 -3055

No files matched your search

+13 -16
View File
@@ -1,30 +1,27 @@
import { TRPCError } from '@trpc/server'
import { QuestDetailResponse } from '@linux-odyssey/constants'
import { z } from 'zod'
import { router, publicProcedure } from '../trpc.js'
import { questManager } from '../models/quest.js'
export const questRouter = router({
getQuests: publicProcedure.query(async () => {
const quests = await questManager.getAll()
const quests = questManager.getAll()
return quests.map(({ title, id, requirements }) => ({
id,
title,
requirements,
}))
}),
getQuestDetail: publicProcedure
.input(z.string())
.query(async (opts): Promise<QuestDetailResponse> => {
const questId = opts.input
const quest = await questManager.get(questId)
if (!quest) {
throw new TRPCError({
code: 'NOT_FOUND',
message: 'Quest not found.',
})
}
const { id, title, instruction, requirements } = quest
return { id, title, instruction, requirements }
}),
getQuestDetail: publicProcedure.input(z.string()).query(async (opts) => {
const questId = opts.input
const quest = questManager.get(questId)
if (!quest) {
throw new TRPCError({
code: 'NOT_FOUND',
message: 'Quest not found.',
})
}
const { id, title, instruction, requirements } = quest
return { id, title, instruction, requirements }
}),
})
+1 -1
View File
@@ -34,7 +34,7 @@ export const sessionRouter = router({
status: session.status,
createdAt: session.createdAt,
lastActivityAt: session.lastActivityAt,
stages: session.stages,
stages: session.events,
}
}
throw new TRPCError({