Spaces:
Running
Running
import { collections } from "$lib/server/database.js"; | |
import { subMinutes } from "date-fns"; | |
import { z } from "zod"; | |
export async function PATCH({ locals, request }) { | |
const json = await request.json(); | |
const settings = z | |
.object({ | |
shareConversationsWithModelAuthors: z.boolean().default(true), | |
ethicsModalAcceptedAt: z.optional(z.date({ coerce: true }).min(subMinutes(new Date(), 5))), | |
}) | |
.parse(json); | |
await collections.settings.updateOne( | |
{ | |
sessionId: locals.sessionId, | |
}, | |
{ | |
$set: { | |
...settings, | |
updatedAt: new Date(), | |
}, | |
$setOnInsert: { | |
createdAt: new Date(), | |
}, | |
}, | |
{ | |
upsert: true, | |
} | |
); | |
return new Response(); | |
} | |