package middleware import ( "base-framework/pkg/router" "log" "net/http" "runtime/debug" ) func Recover() router.HandlerFunc { return func(c *router.Context) { defer func() { if err := recover(); err != nil { log.Printf("[PANIC] %v\n%s", err, debug.Stack()) c.JSON(http.StatusInternalServerError, map[string]string{ "error": "Internal Server Error", }) } }() c.Next() } }