diff options
Diffstat (limited to 'web/web.go')
| -rw-r--r-- | web/web.go | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/web/web.go b/web/web.go new file mode 100644 index 0000000..81ed6be --- /dev/null +++ b/web/web.go @@ -0,0 +1,28 @@ +package web + +import ( + "embed" + "io/fs" + "net/http" +) + +//go:generate npm ci +//go:generate npm run generate + +//go:embed all:.output/public +var fsys embed.FS + +type WebFileServer struct { + server http.Handler +} + +func NewWebFileServer() *WebFileServer { + fsys, _ := fs.Sub(fsys, ".output/public") + return &WebFileServer{ + server: http.FileServerFS(fsys), + } +} + +func (fs *WebFileServer) ServeHTTP(w http.ResponseWriter, r *http.Request) { + fs.server.ServeHTTP(w, r) +} |
