Documentation ¶
Index ¶
- Variables
- type AuthController
- type BlogController
- func (c BlogController) Create(ctx echo.Context) error
- func (c BlogController) Delete(ctx echo.Context) error
- func (c BlogController) Detail(ctx echo.Context) error
- func (c BlogController) FollowingBlogPostList(ctx echo.Context) error
- func (c BlogController) List(ctx echo.Context) error
- func (c BlogController) Update(ctx echo.Context) error
- type CommentController
- type MainController
- type UserController
- func (c UserController) Detail(ctx echo.Context) error
- func (c UserController) Follow(ctx echo.Context) error
- func (c UserController) List(ctx echo.Context) error
- func (c UserController) Me(ctx echo.Context) error
- func (c UserController) MePassword(ctx echo.Context) error
- func (c UserController) MeUpdate(ctx echo.Context) error
- func (c UserController) UnFollow(ctx echo.Context) error
Constants ¶
This section is empty.
Variables ¶
View Source
var Module = fx.Module( "controllers", fx.Provide(NewMainController), fx.Provide(NewAuthController), fx.Provide(NewUserController), fx.Provide(NewBlogController), fx.Provide(NewCommentController), )
Functions ¶
This section is empty.
Types ¶
type AuthController ¶
type AuthController struct {
// contains filtered or unexported fields
}
func NewAuthController ¶
func NewAuthController(authService services.AuthService) AuthController
func (AuthController) Login ¶
func (c AuthController) Login(ctx echo.Context) error
Login godoc
@Summary Login User @Description Login user and get response JWT Token @Tags auth @Accept application/json @Produce application/json @Param data body dto.LoginRequest true "Post" @Router /login [post] @Success 200 {object} response.Response{data=dto.LoginResponse} "ok" @Failure 400 {object} response.Response{data=[]response.ValidationErrors} "bad request"
func (AuthController) Register ¶
func (c AuthController) Register(ctx echo.Context) error
Register godoc
@Summary Register a new User @Description register a new user @Tags auth @Accept application/json @Produce application/json @Param data body dto.RegisterRequest true "Post" @Router /register [post] @Success 201 {object} response.Response{data=dto.RegisterResponse} "created" @Failure 400 {object} response.Response{data=[]response.ValidationErrors} "bad request"
type BlogController ¶
type BlogController struct {
// contains filtered or unexported fields
}
func NewBlogController ¶
func NewBlogController(blogService services.BlogService, blogPolicy policies.BlogPolicy) BlogController
func (BlogController) Create ¶
func (c BlogController) Create(ctx echo.Context) error
Create godoc
@Summary Create a Post @Description Create a Post @Tags blog @Accept application/json @Produce application/json @Router /blog_posts [post] @Security BearerAuth @Success 201 {object} response.Response{data=dto.BlogPostCreateResponse} "created"
func (BlogController) Delete ¶
func (c BlogController) Delete(ctx echo.Context) error
Delete godoc
@Summary Delete a Post @Description Delete a Post @Tags blog @Accept application/json @Produce application/json @Router /blog_posts/{id} [delete] @Security BearerAuth @Success 204 {object} response.Response{} "no content"
func (BlogController) Detail ¶
func (c BlogController) Detail(ctx echo.Context) error
Detail godoc
@Summary Get detail a post @Description Get detail a post @Tags blog @Accept application/json @Produce application/json @Router /blog_posts/{id} [get] @Success 200 {object} response.Response{data=dto.BlogPost} "ok"
func (BlogController) FollowingBlogPostList ¶
func (c BlogController) FollowingBlogPostList(ctx echo.Context) error
FollowingBlogPostList godoc
@Summary Get Blog Posts by Following @Description Get Blog Posts by Following @Tags blog @Accept application/json @Produce application/json @Router /following_blog_posts/ [get] @Security BearerAuth @Success 200 {object} response.Response{data=dto.BlogPostPagination} "ok"
func (BlogController) List ¶
func (c BlogController) List(ctx echo.Context) error
List godoc
@Summary Get Pagination and Several Posts @Description Get Pagination and Several Posts @Tags blog @Accept application/json @Produce application/json @Router /blog_posts [get] @Success 200 {object} response.Response{data=dto.BlogPostPagination} "ok"
func (BlogController) Update ¶
func (c BlogController) Update(ctx echo.Context) error
Update godoc
@Summary Update a Post @Description Update a Post @Tags blog @Accept application/json @Produce application/json @Router /blog_posts/{id} [patch] @Security BearerAuth @Success 200 {object} response.Response{data=dto.BlogPostUpdateResponse} "ok"
type CommentController ¶
type CommentController struct {
// contains filtered or unexported fields
}
func NewCommentController ¶
func NewCommentController(commentService services.CommentService, commentPolicy policies.CommentPolicy) CommentController
func (CommentController) Create ¶
func (c CommentController) Create(ctx echo.Context) error
Create godoc
@Summary Create a Comment @Description Create a Comment @Tags comment @Accept application/json @Produce application/json @Router /comments [post] @Security BearerAuth @Success 201 {object} response.Response{data=dto.CommentCreateResponse} "created"
func (CommentController) Delete ¶
func (c CommentController) Delete(ctx echo.Context) error
Delete godoc
@Summary Delete a Comment @Description Delete a Comment @Tags comment @Accept application/json @Produce application/json @Router /comments/{id} [delete] @Security BearerAuth @Success 204 {object} response.Response{} "no content"
func (CommentController) Detail ¶
func (c CommentController) Detail(ctx echo.Context) error
Detail godoc
@Summary Get detail a Comment @Description Get detail a Comment @Tags comment @Accept application/json @Produce application/json @Router /comments/{id} [get] @Success 200 {object} response.Response{data=dto.Comment} "ok"
func (CommentController) List ¶
func (c CommentController) List(ctx echo.Context) error
List godoc
@Summary Get Pagination and Several Comments @Description Get Pagination and Several Comments @Tags comment @Accept application/json @Produce application/json @Router /comments [get] @Success 200 {object} response.Response{data=dto.CommentPagination} "ok"
func (CommentController) Update ¶
func (c CommentController) Update(ctx echo.Context) error
Update godoc
@Summary Update a Comment @Description Update a Comment @Tags comment @Accept application/json @Produce application/json @Router /comments/{id} [patch] @Security BearerAuth @Success 200 {object} response.Response{data=dto.CommentUpdateResponse} "ok"
type MainController ¶
type MainController struct {
// contains filtered or unexported fields
}
func NewMainController ¶
func NewMainController(redis lib.IRedis) MainController
func (MainController) Index ¶
func (c MainController) Index(ctx echo.Context) error
type UserController ¶
type UserController struct {
// contains filtered or unexported fields
}
func NewUserController ¶
func NewUserController(authService services.AuthService, userService services.UserService, userPolicy policies.UserPolicy) UserController
func (UserController) Detail ¶
func (c UserController) Detail(ctx echo.Context) error
Detail godoc
@Summary Get Detail User @Description Get Detail User @Tags user @Accept application/json @Produce application/json @Router /users/{id} [get] @Success 200 {object} response.Response{data=dto.User} "ok"
func (UserController) Follow ¶
func (c UserController) Follow(ctx echo.Context) error
Follow godoc
@Summary Following User @Description Following User @Tags user @Accept application/json @Produce application/json @Router /users/{id}/follow [post] @Security BearerAuth @Success 202 {object} response.Response{} "accepted"
func (UserController) List ¶
func (c UserController) List(ctx echo.Context) error
List godoc
@Summary Get Pagination and Several Users @Description Get Pagination and Several Users @Tags blog @Accept application/json @Produce application/json @Router /users [get] @Success 200 {object} response.Response{data=dto.UserPagination} "ok"
func (UserController) Me ¶
func (c UserController) Me(ctx echo.Context) error
Me godoc
@Summary Get data Logged-in user @Description Get data Logged-in user @Tags user @Accept application/json @Produce application/json @Router /me [get] @Security BearerAuth @Success 200 {object} response.Response{data=dto.MeResponse} "ok"
func (UserController) MePassword ¶
func (c UserController) MePassword(ctx echo.Context) error
MePassword godoc
@Summary Get data Logged-in user @Description Get data Logged-in user @Tags user @Accept application/json @Produce application/json @Param data body dto.MePasswordRequest true "Post" @Router /me/password [post] @Security BearerAuth @Success 200 {object} response.Response{} "ok"
func (UserController) MeUpdate ¶
func (c UserController) MeUpdate(ctx echo.Context) error
MeUpdate godoc
@Summary Update data Logged-in user @Description Update data Logged-in user @Tags user @Accept application/json @Produce application/json @Param data body dto.MeUpdateRequest true "Post" @Router /me [patch] @Security BearerAuth @Success 200 {object} response.Response{data=dto.MeResponse} "ok"
func (UserController) UnFollow ¶
func (c UserController) UnFollow(ctx echo.Context) error
UnFollow godoc
@Summary UnFollowing User @Description UnFollowing User @Tags user @Accept application/json @Produce application/json @Router /users/{id}/unfollow [post] @Security BearerAuth @Success 202 {object} response.Response{} "accepted"
Click to show internal directories.
Click to hide internal directories.