Add per-user library settings, folder passwords, and a still picker.
Settings manages folders, thumbnail defaults, and passwords for the signed-in account, and choosing an image now browses saved stills instead of only the desktop file dialog. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -1,12 +1,11 @@
|
||||
export default defineEventHandler(async (event) => {
|
||||
const body = await readBody<{ password?: string }>(event)
|
||||
const { owner } = assertLibraryOwner(event)
|
||||
const body = await readBody<{ password?: string; folderId?: string }>(event)
|
||||
const password = String(body?.password || '')
|
||||
if (!password) {
|
||||
throw createError({ statusCode: 400, statusMessage: 'Password is required' })
|
||||
}
|
||||
if (!(await verifyLibraryPassword(password))) {
|
||||
throw createError({ statusCode: 401, statusMessage: 'Incorrect library password' })
|
||||
}
|
||||
setLibraryUnlock(event, currentPasswordVersion())
|
||||
const unlocked = await unlockMatchingFolders(owner, password, body?.folderId)
|
||||
setFolderUnlocks(event, Object.fromEntries(unlocked.map(folder => [folder.id, passwordVersion(folder.passwordHash)])))
|
||||
return publicLibrary(event)
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user