Adding a ton of stuff

This commit is contained in:
2026-07-17 04:39:18 -07:00
parent 8d9fe8e75d
commit de28a67417
63 changed files with 2027 additions and 613 deletions
+20 -5
View File
@@ -16,7 +16,15 @@ import { logger } from "@/utils/logger"
import { jwtMiddleware, authorizationMiddleware } from "@/middlewares"
import { CurrentUserController, FlashcardDecksController, FlashcardsController, UsersController } from "@/controllers"
import {
BlogPostsController,
CurrentUserController,
FlashcardDecksController,
FlashcardsController,
Public,
Users,
UsersController,
} from "@/controllers"
export const router = Router()
@@ -29,6 +37,8 @@ router.route("/_status").get((_req: Request, res: Response) => {
})
// external (public) routes - no authentication required
router.route("/api/public/blog-posts").get(Public.BlogPostsController.index)
router.route("/api/public/blog-posts/:blogPostIdOrSlug").get(Public.BlogPostsController.show)
// api routes
router.use("/api", jwtMiddleware, authorizationMiddleware)
@@ -41,6 +51,7 @@ router
.get(UsersController.show)
.patch(UsersController.update)
.delete(UsersController.destroy)
router.route("/api/users/:userId/preferences/:key").patch(Users.PreferencesController.update)
router
.route("/api/flashcard-decks")
@@ -52,16 +63,20 @@ router
.patch(FlashcardDecksController.update)
.delete(FlashcardDecksController.destroy)
router
.route("/api/flashcards")
.get(FlashcardsController.index)
.post(FlashcardsController.create)
router.route("/api/flashcards").get(FlashcardsController.index).post(FlashcardsController.create)
router
.route("/api/flashcards/:flashcardId")
.get(FlashcardsController.show)
.patch(FlashcardsController.update)
.delete(FlashcardsController.destroy)
router.route("/api/blog-posts").get(BlogPostsController.index).post(BlogPostsController.create)
router
.route("/api/blog-posts/:blogPostIdOrSlug")
.get(BlogPostsController.show)
.patch(BlogPostsController.update)
.delete(BlogPostsController.destroy)
// if no other routes match, return a 404
router.use("/api", (req: Request, res: Response) => {
return res.status(404).json({ message: "Not Found", url: req.path })