web

package
v5.0.0-rc.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 17, 2024 License: GPL-3.0 Imports: 14 Imported by: 0

README

Note on future releases

** There is no longer an automated PR workflow for releasing the web ui due to its frozen state ** This is due to this PR removal of build content:https://github.com/prysmaticlabs/prysm/pull/12719

in order to update the site_data.go follow the following steps to update the specific release of https://github.com/prysmaticlabs/prysm-web-ui/releases

  1. download and install https://github.com/kevinburke/go-bindata. (working as of version 4.0.2) This tool will be used to generate the site_data.go file.
  2. download the specific release from https://github.com/prysmaticlabs/prysm-web-ui/releases
  3. run go-bindata -pkg web -nometadata -modtime 0 -o site_data.go prysm-web-ui/ . prysm-web-ui/ represents the extracted folder from the release.
  4. copy and replace the site_data.go in this package.
  5. Open a PR

Documentation

Overview

Package web is the service to serve the Prysm web UI. See https://github.com/prysmaticlabs/prysm-web-ui

Index

Constants

View Source
const AssetDebug = false

AssetDebug is true if the assets were built with the debug flag enabled.

Variables

View Source
var Handler = func(res http.ResponseWriter, req *http.Request) {
	addSecurityHeaders(res)
	u, err := url.ParseRequestURI(req.RequestURI)
	if err != nil {
		log.WithError(err).Error("Cannot parse request URI")
		return
	}
	p := u.Path
	if p == "/" {
		p = "/index.html"
	}
	p = path.Join(prefix, p)

	if d, ok := _bindata[p]; ok {
		m := mime.TypeByExtension(path.Ext(p))
		res.Header().Add("Content-Type", m)
		res.WriteHeader(http.StatusOK)
		asset, err := d()
		if err != nil {
			log.WithError(err).Error("Failed to unwrap asset data for http response")
		}
		if _, err := res.Write(asset.bytes); err != nil {
			log.WithError(err).Error("Failed to write http response")
		}
	} else if d, ok := _bindata[path.Join(prefix, "index.html")]; ok {

		m := mime.TypeByExtension(".html")
		res.Header().Add("Content-Type", m)
		res.WriteHeader(http.StatusOK)
		asset, err := d()
		if err != nil {
			log.WithError(err).Error("Failed to unwrap asset data for http response")
		}
		if _, err := res.Write(asset.bytes); err != nil {
			log.WithError(err).Error("Failed to write http response")
		}
	} else {
		log.WithField("URI", req.RequestURI).Error("Path not found")
		res.WriteHeader(http.StatusNotFound)
		if _, err := res.Write([]byte("Not found")); err != nil {
			log.WithError(err).Error("Failed to write http response")
		}
	}
}

Handler serves web requests from the bundled site data. DEPRECATED: Prysm Web UI and associated endpoints will be fully removed in a future hard fork.

Functions

func Asset

func Asset(name string) ([]byte, error)

Asset loads and returns the asset for the given name. It returns an error if the asset could not be found or could not be loaded.

func AssetDigest

func AssetDigest(name string) ([sha256.Size]byte, error)

AssetDigest returns the digest of the file with the given name. It returns an error if the asset could not be found or the digest could not be loaded.

func AssetDir

func AssetDir(name string) ([]string, error)

AssetDir returns the file names below a certain directory embedded in the file by go-bindata. For example if you run go-bindata on data/... and data contains the following hierarchy:

data/
  foo.txt
  img/
    a.png
    b.png

then AssetDir("data") would return []string{"foo.txt", "img"}, AssetDir("data/img") would return []string{"a.png", "b.png"}, AssetDir("foo.txt") and AssetDir("notexist") would return an error, and AssetDir("") will return []string{"data"}.

func AssetInfo

func AssetInfo(name string) (os.FileInfo, error)

AssetInfo loads and returns the asset info for the given name. It returns an error if the asset could not be found or could not be loaded.

func AssetNames

func AssetNames() []string

AssetNames returns the names of the assets.

func AssetString

func AssetString(name string) (string, error)

AssetString returns the asset contents as a string (instead of a []byte).

func Digests

func Digests() (map[string][sha256.Size]byte, error)

Digests returns a map of all known files and their checksums.

func MustAsset

func MustAsset(name string) []byte

MustAsset is like Asset but panics when Asset would return an error. It simplifies safe initialization of global variables.

func MustAssetString

func MustAssetString(name string) string

MustAssetString is like AssetString but panics when Asset would return an error. It simplifies safe initialization of global variables.

func RestoreAsset

func RestoreAsset(dir, name string) error

RestoreAsset restores an asset under the given directory.

func RestoreAssets

func RestoreAssets(dir, name string) error

RestoreAssets restores an asset under the given directory recursively.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL