mirror of
https://github.com/gotenberg/gotenberg.git
synced 2026-08-08 00:22:14 +01:00
33 lines
812 B
Go
33 lines
812 B
Go
package xhttp
|
|
|
|
import (
|
|
"github.com/labstack/echo/v4"
|
|
"github.com/thecodingmachine/gotenberg/internal/pkg/conf"
|
|
)
|
|
|
|
// New returns a custom echo.Echo.
|
|
func New(config conf.Config) *echo.Echo {
|
|
srv := echo.New()
|
|
srv.HideBanner = true
|
|
srv.HidePort = true
|
|
srv.Use(contextMiddleware(config))
|
|
srv.Use(loggerMiddleware())
|
|
srv.Use(cleanupMiddleware())
|
|
srv.Use(errorMiddleware())
|
|
srv.GET(pingEndpoint, pingHandler)
|
|
srv.POST(mergeEndpoint, mergeHandler)
|
|
if config.DisableGoogleChrome() && config.DisableUnoconv() {
|
|
return srv
|
|
}
|
|
g := srv.Group(convertGroupEndpoint)
|
|
if !config.DisableGoogleChrome() {
|
|
g.POST(htmlEndpoint, htmlHandler)
|
|
g.POST(urlEndpoint, urlHandler)
|
|
g.POST(markdownEndpoint, markdownHandler)
|
|
}
|
|
if !config.DisableUnoconv() {
|
|
g.POST(officeEndpoint, officeHandler)
|
|
}
|
|
return srv
|
|
}
|