feat: MVP-4 Sprint 3 - Version history
- Add NoteVersion model for storing note snapshots - Add versions API (list, create, get, restore) - Add version history UI dialog in note detail page - Create version snapshot before each note update
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
import { NextRequest } from 'next/server'
|
||||
import { getVersion, restoreVersion } from '@/lib/versions'
|
||||
import { createErrorResponse, createSuccessResponse } from '@/lib/errors'
|
||||
|
||||
export async function GET(req: NextRequest, { params }: { params: Promise<{ id: string; versionId: string }> }) {
|
||||
try {
|
||||
const { versionId } = await params
|
||||
const version = await getVersion(versionId)
|
||||
return createSuccessResponse(version)
|
||||
} catch (error) {
|
||||
return createErrorResponse(error)
|
||||
}
|
||||
}
|
||||
|
||||
export async function PUT(req: NextRequest, { params }: { params: Promise<{ id: string; versionId: string }> }) {
|
||||
try {
|
||||
const { id, versionId } = await params
|
||||
const note = await restoreVersion(id, versionId)
|
||||
return createSuccessResponse(note)
|
||||
} catch (error) {
|
||||
return createErrorResponse(error)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user