33 lines
1.2 KiB
Go
33 lines
1.2 KiB
Go
package routes
|
|
|
|
import (
|
|
"wish-list-api/api/handlers"
|
|
"wish-list-api/api/middleware"
|
|
"wish-list-api/pkg/auth"
|
|
wishlist "wish-list-api/pkg/wish-list"
|
|
|
|
"github.com/gofiber/fiber/v2"
|
|
)
|
|
|
|
func WishListRouter(api fiber.Router, wishListService wishlist.Service, authService auth.Service) {
|
|
wishListHandler := handlers.NewWishListHandler(wishListService, authService)
|
|
|
|
wishList := api.Group("/wishlist")
|
|
|
|
wishList.Get("/:id", wishListHandler.GetWishList)
|
|
|
|
wishList.Get("/user/:userId", wishListHandler.GetUserWishLists)
|
|
|
|
wishList.Get("/:wishlistId/items", wishListHandler.GetWishListItems)
|
|
|
|
wishList.Get("/item/:id", wishListHandler.GetWishListItem)
|
|
|
|
wishList.Post("/", middleware.Protected(authService), wishListHandler.CreateWishList)
|
|
wishList.Put("/:id", middleware.Protected(authService), wishListHandler.UpdateWishList)
|
|
wishList.Delete("/:id", middleware.Protected(authService), wishListHandler.DeleteWishList)
|
|
|
|
wishList.Post("/item", middleware.Protected(authService), wishListHandler.CreateWishListItem)
|
|
wishList.Put("/item/:id", middleware.Protected(authService), wishListHandler.UpdateWishListItem)
|
|
wishList.Delete("/item/:id", middleware.Protected(authService), wishListHandler.DeleteWishListItem)
|
|
}
|