Files
matosbox/backend/internal/handlers/pagination.go

26 lines
480 B
Go

package handlers
import (
"net/http"
"github.com/gin-gonic/gin"
)
type paginatedResponse struct {
Items any `json:"items"`
Meta struct {
Total int `json:"total"`
Page int `json:"page"`
Limit int `json:"limit"`
} `json:"meta"`
}
func respondPaginated(c *gin.Context, items any, total int, page int, limit int) {
var resp paginatedResponse
resp.Items = items
resp.Meta.Total = total
resp.Meta.Page = page
resp.Meta.Limit = limit
c.JSON(http.StatusOK, resp)
}