1234567891011121314151617181920212223242526272829303132 |
- package common
- import (
- "embed"
- "github.com/gin-contrib/static"
- "io/fs"
- "net/http"
- )
- // Credit: https://github.com/gin-contrib/static/issues/19
- type embedFileSystem struct {
- http.FileSystem
- }
- func (e embedFileSystem) Exists(prefix string, path string) bool {
- _, err := e.Open(path)
- if err != nil {
- return false
- }
- return true
- }
- func EmbedFolder(fsEmbed embed.FS, targetPath string) static.ServeFileSystem {
- efs, err := fs.Sub(fsEmbed, targetPath)
- if err != nil {
- panic(err)
- }
- return embedFileSystem{
- FileSystem: http.FS(efs),
- }
- }
|