Fix bugs and add features to Znakopis document management

- Fix API endpoint for creating pages (documents/:id/pages)
- Fix sentence deletion functionality
- Add CreateDocumentDialog component for better UX
- Improve document and sentence management UI
- Update seed data and backend routes
- Clean up documentation files (remove videos.md, videosentence.md)
- Add comprehensive bug tracking in fixbugsaddfeatures.md
This commit is contained in:
2026-01-18 15:21:23 +01:00
parent d3c90ea447
commit eab5303c0f
11 changed files with 643 additions and 869 deletions

View File

@@ -8,7 +8,7 @@ const router = Router();
* POST /api/documents/:documentId/pages/:pageIndex/sentences
* Create a new sentence on a page
*/
router.post('/:documentId/pages/:pageIndex/sentences', isAuthenticated, async (req: Request, res: Response) => {
router.post('/documents/:documentId/pages/:pageIndex/sentences', isAuthenticated, async (req: Request, res: Response) => {
try {
const { documentId, pageIndex } = req.params;
const userId = req.user?.id;
@@ -97,7 +97,7 @@ router.post('/:documentId/pages/:pageIndex/sentences', isAuthenticated, async (r
* PATCH /api/sentences/:sentenceId/tokens
* Update tokens in a sentence (reorder, add, remove)
*/
router.patch('/:sentenceId/tokens', isAuthenticated, async (req: Request, res: Response) => {
router.patch('/sentences/:sentenceId/tokens', isAuthenticated, async (req: Request, res: Response) => {
try {
const { sentenceId } = req.params;
const userId = req.user?.id;
@@ -166,7 +166,7 @@ router.patch('/:sentenceId/tokens', isAuthenticated, async (req: Request, res: R
* DELETE /api/sentences/:sentenceId
* Delete a sentence
*/
router.delete('/:sentenceId', isAuthenticated, async (req: Request, res: Response) => {
router.delete('/sentences/:sentenceId', isAuthenticated, async (req: Request, res: Response) => {
try {
const { sentenceId } = req.params;
const userId = req.user?.id;
@@ -202,7 +202,7 @@ router.delete('/:sentenceId', isAuthenticated, async (req: Request, res: Respons
* POST /api/documents/:documentId/pages
* Create a new page in a document
*/
router.post('/:documentId/pages', isAuthenticated, async (req: Request, res: Response) => {
router.post('/documents/:documentId/pages', isAuthenticated, async (req: Request, res: Response) => {
try {
const { documentId } = req.params;
const userId = req.user?.id;