spa.go 699 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package dist
  2. import (
  3. "embed"
  4. "io/fs"
  5. "net/http"
  6. )
  7. //go:embed spa/index.html
  8. var SpaIndexHtml []byte
  9. //go:embed spa/css
  10. var SpaCSS embed.FS
  11. //go:embed spa/fonts
  12. var SpaFonts embed.FS
  13. //go:embed spa/icons
  14. var SpaIcons embed.FS
  15. //go:embed spa/images
  16. var SpaImages embed.FS
  17. //go:embed spa/js
  18. var SpaJS embed.FS
  19. func Assets(dirName string, emFS embed.FS) http.FileSystem {
  20. // even uiAssets is empty, fs.Sub won't fail
  21. stripped, err := fs.Sub(emFS, dirName)
  22. if err != nil {
  23. panic(err)
  24. }
  25. return http.FS(stripped)
  26. }
  27. const (
  28. SpaFolderName = "spa"
  29. SpaFolderCSS = "/css"
  30. SpaFolderFonts = "/fonts"
  31. SpaFolderIcons = "/icons"
  32. SpaFolderImages = "/images"
  33. SpaFolderJS = "/js"
  34. )