embed.go 537 B

123456789101112131415161718192021222324252627282930
  1. //go:build !unembed
  2. package middleware
  3. import (
  4. "io/fs"
  5. "net/http"
  6. "path"
  7. "github.com/0xJacky/Nginx-UI/app"
  8. "github.com/gin-contrib/static"
  9. "github.com/gin-gonic/gin"
  10. "github.com/uozi-tech/cosy/logger"
  11. )
  12. func mustFs(dir string) (serverFileSystem static.ServeFileSystem) {
  13. sub, err := fs.Sub(app.DistFS, path.Join("dist", dir))
  14. if err != nil {
  15. logger.Error(err)
  16. return
  17. }
  18. serverFileSystem = ServerFileSystemType{
  19. http.FS(sub),
  20. }
  21. return
  22. }
  23. func ServeStatic() gin.HandlerFunc {
  24. return static.Serve("/", mustFs(""))
  25. }