Observer dashboard extraction, PDF reports, jury UX overhaul, and miscellaneous improvements
- Extract observer dashboard to client component, add PDF export button - Add PDF report generator with jsPDF for analytics reports - Overhaul jury evaluation page with improved layout and UX - Add new analytics endpoints for observer/admin reports - Improve round creation/edit forms with better settings - Fix filtering rules page, CSV export dialog, notification bell - Update auth, prisma schema, and various type fixes Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -94,6 +94,23 @@ export const notificationRouter = router({
|
||||
return { success: true }
|
||||
}),
|
||||
|
||||
/**
|
||||
* Mark multiple notifications as read by IDs
|
||||
*/
|
||||
markBatchAsRead: protectedProcedure
|
||||
.input(z.object({ ids: z.array(z.string()).min(1).max(50) }))
|
||||
.mutation(async ({ ctx, input }) => {
|
||||
await ctx.prisma.inAppNotification.updateMany({
|
||||
where: {
|
||||
id: { in: input.ids },
|
||||
userId: ctx.user.id,
|
||||
isRead: false,
|
||||
},
|
||||
data: { isRead: true, readAt: new Date() },
|
||||
})
|
||||
return { success: true }
|
||||
}),
|
||||
|
||||
/**
|
||||
* Mark all notifications as read for the current user
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user