gotty/server/asset.go

380 lines
1.1 MiB
Go
Raw Normal View History

2015-08-16 09:47:23 +00:00
// Code generated by go-bindata.
// sources:
// bindata/static/css/index.css
// bindata/static/css/xterm.css
// bindata/static/css/xterm_customize.css
2015-08-30 07:27:40 +00:00
// bindata/static/favicon.png
2015-08-23 11:40:18 +00:00
// bindata/static/index.html
// bindata/static/js/bundle.js
2017-08-22 07:03:19 +00:00
// bindata/static/js/gotty-bundle.js
2015-08-16 09:47:23 +00:00
// DO NOT EDIT!
2017-02-25 22:37:07 +00:00
package server
2015-08-16 09:47:23 +00:00
import (
"bytes"
"compress/gzip"
"fmt"
"io"
"io/ioutil"
2015-08-20 07:45:06 +00:00
"os"
2015-08-16 09:47:23 +00:00
"path/filepath"
2015-08-20 07:45:06 +00:00
"strings"
"time"
2015-08-16 09:47:23 +00:00
)
func bindataRead(data []byte, name string) ([]byte, error) {
gz, err := gzip.NewReader(bytes.NewBuffer(data))
if err != nil {
return nil, fmt.Errorf("Read %q: %v", name, err)
}
var buf bytes.Buffer
_, err = io.Copy(&buf, gz)
clErr := gz.Close()
if err != nil {
return nil, fmt.Errorf("Read %q: %v", name, err)
}
if clErr != nil {
return nil, err
}
return buf.Bytes(), nil
}
type asset struct {
bytes []byte
info os.FileInfo
}
type bindataFileInfo struct {
2015-08-20 07:45:06 +00:00
name string
size int64
mode os.FileMode
2015-08-16 09:47:23 +00:00
modTime time.Time
}
func (fi bindataFileInfo) Name() string {
return fi.name
}
func (fi bindataFileInfo) Size() int64 {
return fi.size
}
func (fi bindataFileInfo) Mode() os.FileMode {
return fi.mode
}
func (fi bindataFileInfo) ModTime() time.Time {
return fi.modTime
}
func (fi bindataFileInfo) IsDir() bool {
return false
}
func (fi bindataFileInfo) Sys() interface{} {
return nil
}
var _staticCssIndexCss = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x4c\xc8\x41\x0a\x02\x31\x0c\x05\xd0\xbd\xa7\xf8\x20\xee\x66\x31\x6e\xeb\x69\xd2\xc9\x90\x84\xb6\xa9\x94\x88\x88\x78\x77\xc1\x22\xcc\xf2\x3d\x8d\x56\x17\xe4\xce\xaf\x05\xe7\xd8\x47\x33\xa7\x8a\xf7\x09\x00\x32\x6d\x45\x46\x7f\x38\x27\xe4\x4a\x5b\xb9\xfd\x5a\x77\x13\x8d\x84\xeb\xba\x5e\xe6\x3c\x8d\x43\x8f\x71\x27\x66\x73\x49\xf8\x47\xa3\x21\xe6\xd3\x9f\x6f\x00\x00\x00\xff\xff\xd7\x5b\x0e\xbd\x74\x00\x00\x00")
func staticCssIndexCssBytes() ([]byte, error) {
return bindataRead(
_staticCssIndexCss,
"static/css/index.css",
)
}
func staticCssIndexCss() (*asset, error) {
bytes, err := staticCssIndexCssBytes()
if err != nil {
return nil, err
}
2017-08-22 06:56:56 +00:00
info := bindataFileInfo{name: "static/css/index.css", size: 116, mode: os.FileMode(436), modTime: time.Unix(1503381631, 0)}
a := &asset{bytes: bytes, info: info}
return a, nil
}
var _staticCssXtermCss = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\x9d\x5d\x93\xda\x48\xb6\xb5\xef\xfd\x2b\x32\xdc\x17\x6d\x3b\xa0\x0a\x89\x6f\x26\xe2\x8d\xa0\xcb\x54\x9b\x77\xca\xe0\xa8\xc2\xe3\xe9\xcb\x04\xa5\x0a\xb9\x41\x62\x24\x51\x1f\x33\x31\xff\xfd\x44\x4a\x99\x85\x2b\x37\x5a\xb9\x3d\x73\x8e\xb9\xe8\x36\xd4\x5a\x5b\x12\xa9\x07\x69\x79\x19\x5f\x7e\xf8\xf0\x46\x7c\x10\x4f\xa5\xca\xf7\x17\xdf\x8b\x49\xfd\x7f\x2d\x91\xa4\xa2\xdc\x2a\xb1\xce\xb3\xc7\x42\xe5\xfa\x47\xae\xb2\xc3\x73\x9e\xdc\x6f\x4b\xf1\x6e\xf3\x5e\x84\x9d\xa0\xd7\x0e\x3b\xc1\xa0\x25\xee\xb2\x63\xbe\x51\x37\x32\xc9\xc5\x97\x3c\x79\x90\xa5\x12\x57\xd9\xfe\x20\xd3\x67\xf1\xee\xf1\xf1\xf1\xa2\xa8\x5e\xdf\xc9\x24\xbf\xd8\x64\x7b\xf1\xee\xf3\x7c\x25\x6e\x92\x8d\x4a\x0b\xf5\xfe\xac\x71\xa8\x8d\xbb\x2d\x71\xb5\xcd\x93\xa2\xcc\x0e\x5b\x95\x8b\xff\xaf\xe2\x38\x57\xcf\x54\xbd\x2d\xcb\x43\x31\xb9\xbc\xbc\x4f\xca\xed\x71\xad\x27\x5c\x6e\xb6\xdf\xbf\x5f\x9a\x1d\x7a\x23\xaa\xfd\xfb\xa2\xf2\x7d\x52\x14\x49\x96\x8a\xa4\x10\x5b\x95\xab\xf5\xb3\xb8\xcf\x65\x5a\xaa\xa8\x25\xe2\x5c\x29\x91\xc5\x62\xb3\x95\xf9\xbd\x6a\x89\x32\x13\x7a\xeb\x0f\x2a\x2f\xb2\x54\x64\xeb\x52\x26\x69\x92\xde\x0b\x29\x36\xd9\xe1\x59\xfb\x65\xb1\x28\xb7\x49\x21\x8a\x2c\x2e\x1f\x65\xae\x84\x4c\x23\x21\x8b\x22\xdb\x24\xb2\x54\x91\x88\xb2\xcd\x71\xaf\xd2\x52\x96\x7a\x64\x9c\xec\x54\x21\xde\xe9\x03\xfa\xf6\xce\x28\xde\xbe\xaf\xe6\x44\x4a\xee\xb4\xa1\x39\xde\xf6\x55\xf1\x98\x94\xdb\xec\x58\x8a\x5c\x15\x65\x9e\x6c\xb4\x8d\x7e\x53\x36\xbb\x63\xa4\xb7\xc4\xbe\xbc\x4b\xf6\x89\x19\xa2\xe5\xd5\x61\xd4\xfb\xac\xad\x8f\x85\x6a\x55\x1b\xdc\x12\xfb\x2c\x4a\x62\xfd\x5f\x55\xed\xdf\xe1\xb8\xde\x25\xc5\xb6\x25\xa2\x44\xbb\xaf\x8f\xa5\x6a\x89\x42\x3f\x59\x1d\xd7\x96\xde\x9b\xcb\x2c\x17\x85\xda\x55\x1b\xb7\xc9\x0e\x89\x2a\xea\x9d\x3e\x6d\x63\xf5\x63\x7a\xd0\x41\x1f\xdc\xd2\x1c\xae\x42\x3f\xf3\xb8\xcd\xf6\xaf\xf7\x27\xa9\xb6\x2a\x3e\xe6\x69\x52\x6c\x55\x25\x8b\x32\x51\x64\xd5\xdc\xef\x6a\x53\xea\x67\xb4\x22\xce\x76\xbb\xec\x51\xef\xe3\x26\x4b\xa3\x44\xef\x5a\x31\x31\xef\xe2\x6a\xab\x84\x5c\x67\x0f\xaa\xda\xad\x7a\xcd\xa4\x59\x99\x6c\xea\xe3\x5f\xbd\x23\x87\xd3\x3b\x6d\x5e\x2a\xb6\x72\xb7\x13\x6b\x65\x0e\x9f\x8a\x44\x92\x6a\x37\xfd\xac\xdd\xb3\x5c\x6f\x46\x51\xca\xb4\x4c\xe4\x4e\x1c\xb2\xbc\x9a\xeb\xee\xf1\x85\xdd\x8e\x4f\x33\x71\xb7\xbc\x5e\x7d\x9b\xde\xce\xc4\xfc\x4e\x7c\xb9\x5d\xfe\x6d\xfe\x71\xf6\x51\xbc\x9d\xde\x89\xf9\xdd\xdb\x96\xf8\x36\x5f\x7d\x5a\x7e\x5d\x89\x6f\xd3\xdb\xdb\xe9\x62\xf5\x87\x58\x5e\x8b\xe9\xe2\x0f\xf1\xd7\xf9\xe2\x63\x4b\xcc\xfe\xfe\xe5\x76\x76\x77\x27\x96\xb7\xda\x6d\xfe\xf9\xcb\xcd\x7c\xf6\xb1\x25\xe6\x8b\xab\x9b\xaf\x1f\xe7\x8b\xdf\xc5\x6f\x5f\x57\x62\xb1\x5c\x89\x9b\xf9\xe7\xf9\x6a\xf6\x51\xac\x96\xd5\x4c\xe3\x36\x9f\xdd\x69\xbf\xcf\xb3\xdb\xab\x4f\xd3\xc5\x6a\xfa\xdb\xfc\x66\xbe\xfa\xa3\xa5\xbd\xae\xe7\xab\x85\x76\xbe\x5e\xde\x8a\xa9\xf8\x32\xbd\x5d\xcd\xaf\xbe\xde\x4c\x6f\xc5\x97\xaf\xb7\x5f\x96\x77\x33\x31\x5d\x7c\x14\x8b\xe5\x62\xbe\xb8\xbe\x9d\x2f\x7e\x9f\x7d\x9e\x2d\x56\x17\x62\xbe\x10\x8b\xa5\x98\xfd\x6d\xb6\x58\x89\xbb\x4f\xd3\x9b\x1b\x3d\x4d\xdb\x4d\xbf\xae\x3e\x2d\x6f\xf5\x86\x8a\xab\xe5\x97\x3f\x6e\xe7\xbf\x7f\x5a\x89\x4f\xcb\x9b\x8f\xb3\xdb\x3b\xf1\xdb\x4c\xdc\xcc\xa7\xbf\xdd\xcc\xea\x69\x8b\x3f\xc4\xd5\xcd\x74\xfe\xb9\x25\x3e\x4e\x3f\x4f\x7f\x9f\x55\xaa\xe5\xea\xd3\xac\xda\x49\xfd\x93\xf5\x66\x8a\x6f\x9f\x66\xfa\x59\x3d\x75\xba\x10\xd3\xab\xd5\x7c\xb9\xd0\xfb\x73\xb5\x5c\xac\x6e\xa7\x57\xab\x96\x58\x2d\x6f\x57\x2f\xea\x6f\xf3\xbb\x59\x4b\x4c\x6f\xe7\x77\xfa\xc8\x5c\xdf\x2e\x3f\x57\x7b\xaa\x8f\xee\xf2\x5a\xff\xd4\x7c\xa1\xa5\x8b\x59\x6d\xa4\x8f\xfc\xeb\x37\x68\x79\x5b\xfd\xfe\xeb\xdd\xec\xc5\x53\x7c\x9c\x4d\x6f\xe6\x8b\xdf\xef\xc4\x7c\xe1\xbe\xa1\xf6\x4d\x5e\xe6\xc9\x7d\x92\xca\xdd\xee\x59\xc4\x59\xfe\xa7\x8a\x44\x9c\x6b\x7c\xe9\x53\xaf\x5a\x15\xf2\x58\x6e\xb3\xfc\xd7\x1f\x97\xdc\x7b\xbd\x52\x85\x10\xd7\x72\x9d\xeb\xa5\xf7\x9b\xda\xed\x64\x1e\xfd\x5a\x88\xef\xf2\x41\x16\x9b\x3c\x39\x94\xe2\xa1\x0c\x3a\x1d\xed\x29\xbe\x17\xbb\x24\x3d\x3e\x19\x91\x26\xd9\xe4\xf2\x72\x5d\x6b\x2e\xb2\xfc\xfe\xd2\xfc\xc0\x65\xfd\x03\x04\x94\x81\x3b\xa8\xfe\x39\x7d\x9a\x64\x66\xeb\x45\xa4\x8a\x
func staticCssXtermCssBytes() ([]byte, error) {
return bindataRead(
_staticCssXtermCss,
"static/css/xterm.css",
)
}
func staticCssXtermCss() (*asset, error) {
bytes, err := staticCssXtermCssBytes()
if err != nil {
return nil, err
}
2017-08-22 06:56:56 +00:00
info := bindataFileInfo{name: "static/css/xterm.css", size: 35782, mode: os.FileMode(436), modTime: time.Unix(1503381631, 0)}
a := &asset{bytes: bytes, info: info}
return a, nil
}
var _staticCssXterm_customizeCss = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x8e\x41\x6b\xe3\x30\x10\x85\xef\xfe\x15\x83\x21\xb0\x0b\x96\x71\x16\xcc\x2e\xca\x69\xa1\xed\x2d\xa7\x94\xde\xc7\xf6\x38\x55\x23\xcd\x08\x49\x4e\xed\x96\xfc\xf7\xe2\xda\x69\xf3\x0b\x7a\x19\xde\x1b\x3d\xbd\x6f\xca\x44\xc1\x19\x46\x0b\xef\x19\x00\x40\x2f\x9c\x54\x8f\xce\xd8\x49\x43\x7e\x47\x2f\xf8\x34\xc0\x01\x39\xc2\x5e\x58\xf2\x02\xf2\xfb\x33\x85\x28\x7c\xf5\x0f\x81\x68\x96\x05\xec\x89\xad\x14\xf0\xb8\x16\x16\xe0\x84\x25\x7a\x6c\xa9\x80\xfc\xbf\xf7\x96\xe0\x30\xb9\x46\x6c\xcc\x77\xd9\x25\xcb\xca\x71\x66\x2b\x39\x53\xb0\x38\xfd\x30\x7f\x66\x35\x12\x3a\x0a\x2a\x60\x67\x86\xa8\x61\x5b\xfb\x71\xf7\x7d\x44\x34\x6f\xa4\x61\x1c\x95\xc5\x70\xa4\xe5\xa1\x15\x2b\x41\x43\x63\xb1\x3d\xad\x1d\xd8\x9e\x8e\x41\x06\xee\x34\xbc\x3e\x9b\xb4\x06\xc5\x63\x6b\xd2\xa4\xa1\x2a\xff\xd6\xcb\xca\x63\xd7\x19\x3e\xce\xab\x3f\xe4\xa0\x2a\xeb\xcf\xf9\xa5\xd7\x94\x44\x93\x8c\xb0\x06\x6c\xa2\xd8\xe1\x5a\x98\xc4\x6b\xa8\xab\xcd\xe2\x2c\xf5\xe9\xc6\xa6\x80\x1c\x7b\x09\x4e\x2f\xd2\x62\xa2\x5f\xaa\xae\x36\x05\xcc\xf3\xf7\x92\x1a\x22\x05\x15\xc9\x52\x9b\x34\xb0\x30\xdd\x7c\x5e\x99\xeb\xd9\xb0\xfd\x57\xb9\x08\x84\x91\x94\xe1\x5d\x76\xf9\x08\x00\x00\xff\xff\xa9\x5f\x6b\xf4\x26\x02\x00\x00")
func staticCssXterm_customizeCssBytes() ([]byte, error) {
return bindataRead(
_staticCssXterm_customizeCss,
"static/css/xterm_customize.css",
)
}
func staticCssXterm_customizeCss() (*asset, error) {
bytes, err := staticCssXterm_customizeCssBytes()
if err != nil {
return nil, err
}
2017-08-23 06:32:12 +00:00
info := bindataFileInfo{name: "static/css/xterm_customize.css", size: 550, mode: os.FileMode(436), modTime: time.Unix(1503469811, 0)}
a := &asset{bytes: bytes, info: info}
return a, nil
}
2017-02-25 22:37:07 +00:00
var _staticFaviconPng = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x00\x5f\x03\xa0\xfc\x89\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\x00\x00\x20\x00\x00\x00\x20\x08\x03\x00\x00\x00\x44\xa4\x8a\xc6\x00\x00\x00\x19\x74\x45\x58\x74\x53\x6f\x66\x74\x77\x61\x72\x65\x00\x41\x64\x6f\x62\x65\x20\x49\x6d\x61\x67\x65\x52\x65\x61\x64\x79\x71\xc9\x65\x3c\x00\x00\x01\xa4\x50\x4c\x54\x45\x1c\x1c\x1c\x2e\x2e\x2e\x1a\x1a\x1a\x25\x25\x25\x26\x26\x26\x24\x24\x24\x4e\x4e\x4e\x5f\x5f\x5f\x20\x20\x20\x1e\x1e\x1e\x1f\x1f\x1f\x22\x22\x22\x1d\x1d\x1d\x21\x21\x21\x3b\x3b\x3b\x19\x19\x19\x16\x16\x16\x2c\x2c\x2c\x29\x29\x29\x28\x28\x28\x27\x27\x27\x2b\x2b\x2b\x2a\x2a\x2a\x2d\x2d\x2d\x2f\x2f\x2f\x00\xac\x3a\x00\xa9\x3a\x60\x60\x60\x3a\x3a\x3a\x00\xae\x3b\x05\x9a\x38\x5e\x5e\x5e\x25\x24\x24\x52\x52\x52\x18\x18\x18\x39\x39\x39\x55\x55\x55\x5c\x5c\x5c\x5d\x5d\x5d\x37\x37\x37\x32\x32\x32\x50\x50\x50\x61\x61\x61\x5b\x5b\x5b\x4f\x4f\x4f\x58\x58\x58\x53\x53\x53\x59\x59\x59\x30\x27\x2d\x28\x1e\x24\x56\x56\x56\x54\x54\x54\x14\x14\x14\x2f\x2c\x2e\x17\x17\x17\x1b\x1b\x1b\x44\x44\x44\x35\x35\x35\x33\x33\x33\x4a\x4a\x4a\x36\x36\x36\x38\x38\x38\x20\x62\x36\x34\x34\x34\x30\x30\x30\x31\x31\x31\x23\x24\x24\x75\x75\x75\x2a\x22\x27\x20\x55\x32\x2e\x2b\x2d\x27\x1f\x24\x2e\x2a\x2d\x29\x26\x28\x62\x62\x62\x25\x21\x24\x26\x25\x25\x26\x2e\x29\x2b\x28\x2a\x20\x60\x36\x1f\x3b\x29\x2d\x25\x2b\x1f\x53\x32\x11\x70\x32\x25\x24\x25\x1d\x4f\x2e\x25\x29\x27\x1f\x52\x31\x00\xb1\x3b\x27\x2e\x2a\x77\x77\x77\x28\x2f\x2b\x2a\x31\x2d\x00\xb6\x3c\x23\x23\x23\x28\x25\x27\x2f\x2e\x2f\x11\x71\x32\x5a\x5a\x5a\x14\x66\x30\x30\x28\x2d\x2e\x25\x2c\x22\x5a\x35\x1e\x51\x2f\x2e\x31\x2f\x29\x21\x26\x2a\x3e\x31\x25\x26\x26\x2b\x32\x2d\x1c\x4f\x2d\x2c\x24\x2a\x30\x26\x2c\x28\x20\x25\x57\x57\x57\x00\xae\x3a\x27\x25\x26\x2a\x27\x29\x2c\x29\x2b\x25\x2d\x28\x00\xaf\x3b\x2c\x34\x2f\x22\x23\x23\x27\x1e\x24\x29\x30\x2c\x2b\x33\x2e\x04\xa0\x3a\x26\x23\x25\x1a\x50\x2d\x1f\x51\x30\x00\xb5\x3b\x00\xb3\x3b\x2b\x23\x28\x03\xa0\x39\x11\x6e\x31\x05\x99\x38\x1d\x50\x2f\x00\xb4\x3c\x2d\x2a\x2c\x63\x63\x63\x2f\x2b\x2e\x63\xda\xc5\x2e\x00\x00\x01\x51\x49\x44\x41\x54\x38\xcb\x85\xcc\xd5\x76\xc2\x40\x14\x40\xd1\x0b\x24\x78\x25\x81\x00\x2d\x69\x53\xdc\xdd\x1d\xea\xee\xee\xee\xee\xee\xde\x9f\x6e\xf2\x3c\x0c\xec\xe7\xb3\x0e\xcc\x72\x46\x19\x96\x91\x6b\x03\x2e\xc9\xd6\x62\xb1\x49\x1b\xfc\xb2\x54\x2c\x18\x0c\xae\x8b\xca\xa1\x58\x37\xf4\xb2\xdd\xbb\xf9\xa1\xfc\xe6\xf6\xb2\x01\xa5\x67\x8d\xe0\xb6\x1c\x75\xbc\x5c\xbd\x3e\x5c\xc7\xca\x1d\x2c\x42\xb0\x31\x7a\xda\xd8\xd0\x7c\xff\x87\x09\x8c\xb9\x91\xa9\x26\x3e\xd8\xef\xd4\xa3\x98\x9c\x0c\x64\x8e\xc3\x67\x21\x98\xff\xa1\x50\x3a\x07\xc7\x07\x6f\x5b\x42\x70\x77\xc1\xa0\x68\x3e\xe0\xb2\xed\x5f\x42\x30\x37\xa8\x43\x69\xb2\x76\xb0\xa7\x76\x26\x84\x60\xe6\x9c\x46\x69\x53\x36\xb0\x15\x8e\x0f\xf8\xe0\x73\xa0\x47\x83\x22\x0a\x1e\xb0\xa5\x6f\x9f\x16\xa6\xbf\xdf\x2f\x97\xb4\x28\x49\xda\x03\x1e\x67\xdf\xf0\xca\xc7\xd8\xda\xe4\x19\x81\x22\x9d\xab\x10\x70\xb6\x3e\x86\x42\xa1\xae\xfe\xbd\xb2\x81\x0f\x02\xa5\x9b\x16\xc1\xb8\xa4\x8c\xc5\x12\x1f\x14\x55\x24\x96\xaa\xe8\x83\x13\x91\x5c\x85\x25\x17\x85\x21\xac\x57\xd6\x60\x29\xf5\x56\x08\x53\x0a\x39\x96\x82\xb2\x82\x95\x51\x2b\xb1\xd4\x8c\x15\x22\x3a\x50\x60\x81\x2e\x02\x7e\x3a\xa1\xc6\x4a\xd0\x7e\x30\xd1\x62\xc0\x12\x0b\x81\xa6\x52\xa0\x31\x55\x09\xb4\x26\x70\x11\x66\x31\x96\x59\xeb\xaa\x16\x78\xf9\x20\x5e\x87\x15\x27\xbc\xe0\x25\xa3\xf5\x58\x51\x52\x0a\x19\x03\x29\xc1\x22\x0d\x19\xb0\x4b\x2b\xb2\xff\x03\x80\x64\x51\xf1\x29\x1a\xc2\x9c\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\x01\x00\x00\xff\xff\xb0\xaa\xd3\x73\x5f\x03\x00\x00")
2015-08-30 07:27:40 +00:00
func staticFaviconPngBytes() ([]byte, error) {
return bindataRead(
_staticFaviconPng,
"static/favicon.png",
)
}
func staticFaviconPng() (*asset, error) {
bytes, err := staticFaviconPngBytes()
if err != nil {
return nil, err
}
2017-08-22 06:56:56 +00:00
info := bindataFileInfo{name: "static/favicon.png", size: 863, mode: os.FileMode(436), modTime: time.Unix(1503381631, 0)}
2015-08-30 07:27:40 +00:00
a := &asset{bytes: bytes, info: info}
return a, nil
}
2017-08-22 07:03:19 +00:00
var _staticIndexHtml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x9c\x91\x51\x6a\xc3\x30\x0c\x86\xdf\x77\x0a\xcd\xef\x8b\x2f\xa0\xe4\x2a\x25\xb5\x95\x44\xad\x63\x07\x4b\x09\xcd\x4a\xef\x3e\x3c\xb7\x30\xe8\x60\xa3\x4f\x16\xfa\xbf\xef\xc7\xd8\xf8\xee\x93\xd3\x7d\x21\x98\x74\x0e\xdd\x1b\xd6\x03\x00\x27\xea\x7d\x19\x00\x50\x59\x03\x75\xd7\x2b\x34\xdf\x13\xdc\x6e\x68\xeb\xae\xe6\x81\xe3\x19\x32\x85\xd6\xb0\x4b\xd1\x40\xe9\x6b\x0d\xcf\xfd\x48\x76\x89\xa3\x81\x29\xd3\xd0\x9a\xa1\xdf\x4a\xde\x94\xd5\x93\x29\xba\x07\x92\x89\x48\x1f\x78\x63\x9d\x88\xe5\xe8\xe9\xd2\x38\x11\x03\xf6\xdf\xd2\x45\x29\xcf\x2f\x49\x07\xb7\x8a\xa6\x99\x3f\xe9\x87\x8e\xf6\xf1\x18\x78\x4c\x7e\xbf\x37\x7a\xde\x80\x7d\x6b\x8a\xc6\xb1\x0f\xa6\x43\xeb\x79\xbb\xa7\xe2\x32\x2f\x0a\x92\x5d\xe9\xef\x57\x9d\x0e\x9a\xce\x14\x9b\x93\x14\xb0\xc6\xbf\xb2\x2e\xc5\x81\xc7\xbf\xb9\x93\xd8\x31\xa9\xee\x1f\xc7\x35\xfa\x40\x4f\x02\xda\x7a\x59\xb4\xf5\x4f\xbf\x02\x00\x00\xff\xff\x92\x6e\x9e\x42\xeb\x01\x00\x00")
2015-08-16 09:47:23 +00:00
func staticIndexHtmlBytes() ([]byte, error) {
2015-08-16 09:47:23 +00:00
return bindataRead(
_staticIndexHtml,
"static/index.html",
2015-08-16 09:47:23 +00:00
)
}
func staticIndexHtml() (*asset, error) {
bytes, err := staticIndexHtmlBytes()
2015-08-16 09:47:23 +00:00
if err != nil {
return nil, err
}
2017-08-22 07:03:19 +00:00
info := bindataFileInfo{name: "static/index.html", size: 491, mode: os.FileMode(436), modTime: time.Unix(1503385310, 0)}
2015-08-23 11:40:18 +00:00
a := &asset{bytes: bytes, info: info}
return a, nil
}
2017-08-22 07:03:19 +00:00
var _staticJsBundleJs = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xbd\xeb\x73\x1b\x49\xf2\x20\xf6\x79\xf9\x57\xa4\x38\x77\x83\x86\x08\x82\x00\xf8\x90\x44\x0a\xd2\x42\x04\x39\xd2\x8e\x5e\x47\x72\x76\x76\x8f\xc3\x1f\xb7\xd0\x5d\x00\x5a\x6a\x74\x63\xbb\x1b\x24\xb1\x23\xce\x27\xdb\x11\xfe\xe8\x2f\x0e\x7f\xb8\x08\xbf\xce\xfe\xdd\x39\x1c\x8e\xb3\xe3\xe2\xc2\x0e\x9f\xed\x88\x9d\x7f\xcc\x51\x59\xef\xee\x6a\x00\xd4\x63\x67\x7e\x71\x0b\xcd\x48\x40\x3d\xb2\xb2\xb2\x32\xb3\xb2\xaa\xb2\xb2\xb6\xee\xe3\x67\x0b\xbc\xe1\x2c\xf6\xf3\x30\x89\xbd\x49\x12\xcc\x22\x9a\xd5\xe1\x47\xd8\xda\x82\x6b\x3a\x98\x12\xff\xfd\xb3\x24\xc9\xb3\x3c\x25\xd3\x35\x55\xe3\x37\x5b\x5b\x70\x36\xa6\xc0\xcb\x83\x4f\xfc\x31\x35\x72\xaf\x48\x0a\x61\x9c\xe5\x24\x8a\x68\xf0\x8a\xc3\x84\x2e\xfc\x78\x7b\xa0\x0a\x95\x61\xa5\xf4\xcf\xb3\x30\xa5\x20\x91\x31\x4a\xc8\x24\xb8\xbc\x14\x38\x5d\x8a\xd2\x97\x97\x02\xe7\x17\x41\x1d\x7e\x74\x41\x67\xe0\x0f\xc7\xd4\x7f\x0f\xe1\x50\xe2\x1b\x66\x10\xc6\x25\xac\x7f\x13\x0e\xbd\x22\xd6\xe7\x12\xfa\x85\x09\x1e\x7e\xf3\x9b\xdf\xa4\x34\x9f\xa5\x71\xa9\x9b\xba\x42\x93\xde\x4c\x93\x34\xcf\x0e\xcc\x6a\xb7\x45\xcc\x52\x4a\x72\x0a\x04\x62\x7a\x2d\xb1\xf3\x48\x1c\xc0\x74\x96\x43\x98\x43\x18\xe7\x09\xe4\x63\x41\xe2\xba\x59\x9b\x11\x59\xd4\xe8\x2e\x40\x83\xd1\xdd\x42\x3c\xdc\x07\x99\xd9\xb0\x32\xa2\x7d\x18\x92\x28\xa3\x76\xaa\xe8\xc5\x3e\xfc\x68\xe1\xee\x1e\x4a\xd6\xa5\xa3\x1b\xea\xcf\x72\x8a\x58\x0b\xfc\x1c\x43\xfa\x9b\x49\x89\x5e\x3e\x89\x22\x31\x9a\x92\x76\x0d\x01\x41\xfe\xab\xd3\x1d\x9c\x50\xaf\x44\xe9\x38\x22\x23\x13\x1f\x92\x41\x94\x90\x80\x06\x65\x84\x9a\x11\x74\x21\x4f\x67\xb4\x12\xd8\x09\x1f\x78\x06\x4e\x60\x03\xc9\xd0\x80\x6e\x16\x17\x4c\x62\x23\x6f\x32\xc4\x6d\xb9\x15\x5b\x32\x58\x9d\xcc\x24\x66\x06\xc9\xe0\x1d\xf5\x73\xf0\x34\x09\x44\xce\xe5\xa5\xc9\x20\x0e\x0a\x35\x27\xd0\x95\x60\xaa\x44\xb1\xd4\x60\x49\x4e\x5c\x80\x7d\x07\x0f\x56\xb5\x10\x06\x34\xce\xc3\x7c\xae\xd8\x02\x86\x49\x0a\x6c\xf4\xc3\x78\x04\x63\x92\x4e\x92\x78\x0e\xe1\x84\xd3\xf6\x3a\xcc\xc7\x5c\x02\x92\x34\x65\xfd\xf6\x93\x38\xa7\x37\xf9\x12\x84\x42\xe8\x2a\xf8\xde\x15\x89\x66\x94\x29\x35\x31\x1e\xf8\xfb\x00\x2a\xd5\x51\x40\x87\x61\x4c\x61\x44\xf3\x9c\xa6\x36\x9a\x12\x3d\x31\x96\x4b\xb0\x08\x4c\x2c\x14\xef\xc6\x64\x42\x1b\x02\x7a\x41\xad\x84\x43\xef\x9e\x0b\x50\x62\xd7\xae\x17\xb5\xd1\x1b\xe4\x89\x26\x47\xfc\x6d\x9a\x4c\x69\x9a\xcf\x8b\x2d\xda\x55\x7e\xe3\x27\xf1\x30\x1c\xcd\x52\x32\x88\xa8\x53\xf4\x7f\x43\xe3\xd9\x84\x8a\x7c\x26\x13\x85\xec\x11\xcd\xf7\x45\x37\xac\x8c\xdb\x7a\xa5\xce\xab\x24\xf9\x88\xe6\x7d\x3a\x24\xb3\x28\x3f\x42\xa4\x0b\xcc\x91\x4c\xa6\x24\x0f\x07\x61\xc4\xf8\x06\x59\x22\x4e\xe2\x4d\x39\x18\x82\xa5\x97\x0c\x46\x6c\x0e\x06\xaf\x52\x20\x23\x53\xa9\x62\xd0\xa5\x9c\xc0\xd7\x5f\x4b\xf1\xbd\xbc\xa4\x19\x67\x6d\x78\x6a\xf5\x57\xa1\xaa\x3b\xe1\x19\xdc\xc6\xab\x9f\xd7\x02\x9e\x55\xbb\x38\x80\x5b\xd8\xaf\x84\xc0\x9b\xe0\x54\xc8\xca\x70\x2c\xb6\x85\xdf\xb8\xd9\xce\xe3\xbd\x68\x40\x8d\xd4\x14\xa7\x1d\x38\x34\x13\xcf\x3a\x58\x65\x84\x04\x8b\x4d\xd3\x24\x4f\xf2\xf9\x94\x36\xc7\x24\x7b\x73\x1d\x4b\x66\x43\xf5\xbd\x64\x04\x12\x73\x04\xb8\x1a\x6b\xc0\x54\x00\x30\x7a\xba\x4a\x53\xe5\xfa\x0b\x04\x5a\x23\x33\x9d\x0d\xa2\xd0\xbf\x9c\x92\x7c\x7c\x79\xb9\x04\xdd\x29\x74\x61\x7d\xbd\x0a\xe6\xcb\x84\x04\x40\xe3\x3c\x9d\xab\x69\x25\x0e\x64\x0f\xca\xea\x41\x64\xb8\x2c\x18\x57\xdb\xcc\x5e\x6a\xef\x9a\x63\x76\xab\x94\xfb\xa7\x7f\x8c\xae\x78\xe7\x6b\x5b\xf7\xa1\x05\x22\xad\x6c\x0d\x36\x60\xe1\xa4\x0b\x3f\xae\xad\xad\xcf\x32\x0a\x59\x9e\x86\x7e\xbe\x7e\xb0\xb6\xb6\x44\x19\xad\x6b\x41\x5a\x6f\xc0\x8f\x5c\x1b\x73\x05\x03\x4c\x75\x30\x29\x3c\x4c\x26\xd3\x24\x0b\x19\x1a\xcf\x69\x34\xa5\xe9\x65\x1b\xba\x4e\xe2\xb5\xf7\x44\x95\xa3\x2b\x1a\xe7\x47\x93\x90\x31\x74\x75\x69\x51\xf8\xf7\x21\xbd\x66\xe8\x54\x16\xec\x6c\x4b\x4c\xa2\x70\x3a\x48\x48\x1a\x54\x16\xdd\x6e\xc9\xa2\x61\xea\xcf\x22\x92\xbe\x0c\xb3\x6a\xc0\xdb\x1d\x89\x6f\xe6\x93\x29\x3d\xa5\x7f\x9e\xd1\xd8\xa7\x59\x35\x26\xa2\xfc\x8b\x78\x3a\xcb\x9f\x93\x38\x88\x16\xf5\xef\x81\x28\xfd\x96\xa4\xd9\xa2\x72\x8f\x44\xb9\x13\x1a\x07\x34\x5d\x50\xb2\x23\x7b\xf7\x32\x8c\xdf\x87\xc3\x70\x11\xd0\x87\xa2\xe8\x29\x8d\x28\xb2\xd0\x2b\x1
2015-08-23 11:40:18 +00:00
func staticJsBundleJsBytes() ([]byte, error) {
2015-08-23 11:40:18 +00:00
return bindataRead(
_staticJsBundleJs,
"static/js/bundle.js",
2015-08-23 11:40:18 +00:00
)
}
func staticJsBundleJs() (*asset, error) {
bytes, err := staticJsBundleJsBytes()
2015-08-23 11:40:18 +00:00
if err != nil {
return nil, err
}
2017-08-22 07:03:19 +00:00
info := bindataFileInfo{name: "static/js/bundle.js", size: 773293, mode: os.FileMode(436), modTime: time.Unix(1503385152, 0)}
a := &asset{bytes: bytes, info: info}
return a, nil
}
2017-08-24 04:22:16 +00:00
var _staticJsGottyBundleJs = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xcc\xfd\x79\x77\xe3\x38\xb2\x28\x88\x9f\xdf\x32\x33\xe7\xbc\x3f\x66\xdf\x57\x9a\xdd\x4f\x45\x96\x60\x99\xd4\xe2\x45\x32\xd3\x4f\x69\xd9\x95\x7e\xed\xb4\xf3\xda\xce\xae\x5b\xa3\x54\x67\xd3\x52\xc8\x62\x27\x45\xaa\x41\xc8\x4e\xb7\xa5\x3b\x5f\x7d\x0e\x56\x02\x24\x25\xbb\xea\x76\xdf\x99\xca\x92\x4c\x21\xb0\x04\x02\x81\x40\x44\x20\x40\xec\x4c\x97\xc9\x98\x44\x69\xe2\x80\xfb\x22\x9f\x2d\xe2\x44\xee\x4b\x34\x75\xf0\x30\x1a\xb9\x18\xc8\x12\x27\x16\x7d\x6e\xc0\xf7\x45\x8a\x49\xd6\x7b\x0c\xb1\x95\x06\x34\x29\x78\x89\xba\x11\x8a\xbb\x3b\x3e\x12\xc0\xee\xcb\x7a\xdd\x13\x85\x80\x16\x1a\x87\x71\xec\xa4\xb2\x2c\x4a\x51\xfe\x4c\x5c\x94\x36\xe2\x60\xc7\xcb\xd3\xd6\xb4\x6e\x1c\xbc\xac\x7b\xa4\x31\x0f\x00\x91\xc6\x38\xc0\x88\x34\xa2\x40\x47\x55\xd6\xbf\x46\xa4\x31\xd1\x20\x08\xa3\xc8\x7d\x21\x8d\x94\x3e\xba\xab\xd5\xf5\xfd\x5f\x60\x4c\x1a\x13\x98\x46\x09\x7c\xc2\xe9\x02\x30\x79\x66\xd9\x5e\xc6\x69\x32\x8d\x1e\x96\x38\xbc\x8f\x81\xa1\x9f\x2c\xe7\x20\x7e\x79\xe8\x01\x48\x37\x5a\xbb\xb4\xfe\xc4\x68\x99\xa3\x07\xb5\x1a\x34\xbe\x7e\x85\xec\x63\x3a\x59\xc6\x70\xa2\x72\xe4\xa8\xd1\x46\xc3\x65\x4c\xd6\xdd\x0a\xa0\xa2\x10\x69\x4c\x1c\x8c\xec\xd0\x46\xd8\x45\x98\x36\x97\xea\xdd\x21\xaa\x88\xe8\xc9\x02\xa7\x24\x25\xcf\x0b\x68\xcc\xc2\xec\xfa\x29\x91\x7d\xe2\x54\xa6\x05\x68\x1d\x8b\xc0\xb6\x11\x71\x48\x23\x0b\x9a\x87\xee\xda\x19\xea\x55\x22\xec\xbe\xd8\xcb\x0c\xac\x8c\xe0\x68\x4c\xec\x9e\x1a\xf7\x48\x76\x90\x04\x64\x16\x65\xbd\x68\xea\xec\x38\xf4\xc9\x8a\x92\x8c\x84\xc9\x18\xd2\xa9\x15\xb9\x92\x25\x12\x78\xb2\x22\x27\xc4\x0f\xcb\x39\x24\x24\x1b\x7a\x23\x94\xff\xf0\xf5\x1f\xcd\x91\xdb\x23\x8d\x7b\x9c\x3e\x65\x80\x83\x5b\x3a\xa8\xb4\xb6\x38\x88\xc4\x03\x5a\x36\xce\x1e\x21\x21\x67\xf3\x88\x10\xc0\xbc\x37\xb4\x65\x17\xd9\xc9\x72\x7e\x0f\xd8\x0e\x02\xda\xed\x74\x6a\x41\xad\xe6\x40\xf0\x32\x4e\xe3\xac\x6b\x34\x4e\xab\xef\x1a\x18\xcc\xc2\x64\x12\x03\xee\xea\x98\xac\x5d\x04\x01\xac\x56\x2f\x6b\x24\x68\xfa\x0d\x9e\x33\x27\x92\xe3\x95\xb9\x8d\x69\x8a\xcf\xc2\xf1\xcc\x51\x54\xc3\xee\x4b\xb2\x8c\xe3\x20\x80\x21\x1e\xd1\xe6\x87\x78\x14\x44\x8d\x74\x41\xa1\xd9\x10\x8f\x50\x34\xc4\xa3\x9d\x20\xc8\x6b\xd1\x33\x0e\xf1\xc8\x75\x11\xa1\xcf\x34\x61\xed\xa2\xc3\x20\x08\xa0\x31\x4e\xe3\x14\x67\x8d\x18\x92\x07\x32\x3b\x91\xbf\x73\xc0\x38\x4d\xc6\x21\x71\xa2\xc6\x57\x91\x90\xc5\xd1\x18\x9c\x43\xd7\xed\xfa\xfb\xff\x9a\x1a\xfc\x7d\x5a\x85\xf7\xa6\x2a\x78\x09\x0f\xed\x36\xdd\x8d\x08\x51\x20\x2a\x94\xd8\x6d\xd2\x36\x2a\x3a\x4a\xc9\xf2\x76\x44\x37\x55\xed\x22\xca\x1e\xc5\x7a\x78\xa2\x18\x17\x2a\x3d\xe8\xcf\x45\x88\x21\x21\x01\x34\xee\xd3\xc9\xf3\x6a\x05\x22\x61\xb5\x72\xfa\x27\xfd\xc6\x03\x90\xb3\x18\x18\x77\xbc\x7f\xbe\x0b\x1f\xae\xc2\x39\x38\x36\xcd\x6a\xbb\x43\x6f\xd4\xa5\x03\x9f\x37\x26\x9a\xca\x68\x35\x0f\x90\xce\x81\xe0\x67\xca\x7b\x0c\x4e\x19\x30\x00\xf6\xc7\x80\xfb\x02\x2e\x13\x82\xa1\xaa\x2e\x2f\x38\x42\x74\x4e\x33\x7e\xad\xd5\x78\x37\x12\xc7\x9e\x84\x24\xb4\x73\x88\x40\xe4\xf9\x3e\xcc\x20\xf0\xc4\x8f\x49\x94\x2d\xe4\x8f\xef\x2a\x55\x3e\x8c\x97\x38\x4b\xf1\x2d\x09\x09\x98\x49\x1f\xa2\xc9\x04\x92\x60\xc7\x97\x9d\x4b\x1e\x01\x93\xb3\x34\xe6\xbf\xff\xba\x84\x25\x30\x39\x42\x7f\x65\x63\x9c\xc6\xf1\x5d\xaa\x1a\xe2\x09\xef\x53\x42\xd2\x79\xa0\x3a\xb1\x2b\x2b\x5b\x66\x24\x9d\xff\x01\x9e\xd9\xac\xfe\xc0\x91\x0f\x28\x29\x75\x0c\xde\xc7\x51\xf2\xed\x22\x21\x80\x1f\xc3\x58\x83\x86\x8b\x45\x1c\x8d\x43\x3a\x88\x7f\x80\xe7\x45\x38\x51\x48\x6a\x90\x53\x56\x85\x82\xa4\x38\x7a\x88\x92\x8f\xe9\x04\x54\x52\x94\x64\x80\x89\x91\xf4\x84\xc3\x45\x88\xd3\x65\x32\xe1\xc9\xa2\x33\x49\x8a\xe7\x06\x06\xe3\x59\x88\x33\x20\x5a\xca\x43\x45\x52\x0c\x8f\x10\x2b\xa2\x72\x78\x16\x0c\x69\x0e\x31\xe2\x13\x18\x5f\xa6\xe3\x90\xa4\x58\x0c\x8f\xef\x7d\x4c\x97\x99\x60\xcc\x47\xd2\xf4\xcc\xdf\x2d\xe3\x37\x47\x4b\x4b\x98\xd3\x47\x46\x52\xc1\x38\x19\x24\x93\xf3\x74\xbc\x14\x3f\x97\x64\xaa\xe5\xce\x1e\xb0\xf6\x6b\x89\xbf\x3f\x12\xed\x37\x70\xa6\x97\xc8\x47\xf1\x04\x43\x22\xd8\x11\xa6\x18\xb2\xd9\x2d\x09\x31\x31\x52\xce\x92\x89\xa8\x3a\x7c\x84\xc9\x3f\x6b\xcf\xbf\x68\xcf\xa7\x39\x5f\x43\x38\xa1\x2b\xaa\x22\xf4\x13\x8e\x88\x91\x30\x81\x69\x
2017-08-22 07:03:19 +00:00
func staticJsGottyBundleJsBytes() ([]byte, error) {
return bindataRead(
_staticJsGottyBundleJs,
"static/js/gotty-bundle.js",
)
}
func staticJsGottyBundleJs() (*asset, error) {
bytes, err := staticJsGottyBundleJsBytes()
if err != nil {
return nil, err
}
2017-08-24 04:22:16 +00:00
info := bindataFileInfo{name: "static/js/gotty-bundle.js", size: 332369, mode: os.FileMode(436), modTime: time.Unix(1503548485, 0)}
2015-08-20 07:45:06 +00:00
a := &asset{bytes: bytes, info: info}
2015-08-16 09:47:23 +00:00
return a, nil
}
// 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 Asset(name string) ([]byte, error) {
cannonicalName := strings.Replace(name, "\\", "/", -1)
if f, ok := _bindata[cannonicalName]; ok {
a, err := f()
if err != nil {
return nil, fmt.Errorf("Asset %s can't read by error: %v", name, err)
}
return a.bytes, nil
}
return nil, fmt.Errorf("Asset %s not found", name)
}
// MustAsset is like Asset but panics when Asset would return an error.
// It simplifies safe initialization of global variables.
func MustAsset(name string) []byte {
a, err := Asset(name)
2015-08-20 07:45:06 +00:00
if err != nil {
2015-08-16 09:47:23 +00:00
panic("asset: Asset(" + name + "): " + err.Error())
}
return a
}
// 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 AssetInfo(name string) (os.FileInfo, error) {
cannonicalName := strings.Replace(name, "\\", "/", -1)
if f, ok := _bindata[cannonicalName]; ok {
a, err := f()
if err != nil {
return nil, fmt.Errorf("AssetInfo %s can't read by error: %v", name, err)
}
return a.info, nil
}
return nil, fmt.Errorf("AssetInfo %s not found", name)
}
// AssetNames returns the names of the assets.
func AssetNames() []string {
names := make([]string, 0, len(_bindata))
for name := range _bindata {
names = append(names, name)
}
return names
}
// _bindata is a table, holding each asset generator, mapped to its name.
var _bindata = map[string]func() (*asset, error){
"static/css/index.css": staticCssIndexCss,
"static/css/xterm.css": staticCssXtermCss,
"static/css/xterm_customize.css": staticCssXterm_customizeCss,
"static/favicon.png": staticFaviconPng,
"static/index.html": staticIndexHtml,
"static/js/bundle.js": staticJsBundleJs,
2017-08-22 07:03:19 +00:00
"static/js/gotty-bundle.js": staticJsGottyBundleJs,
2015-08-16 09:47:23 +00:00
}
// 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
// AssetDir("") will return []string{"data"}.
func AssetDir(name string) ([]string, error) {
node := _bintree
if len(name) != 0 {
cannonicalName := strings.Replace(name, "\\", "/", -1)
pathList := strings.Split(cannonicalName, "/")
for _, p := range pathList {
node = node.Children[p]
if node == nil {
return nil, fmt.Errorf("Asset %s not found", name)
}
}
}
if node.Func != nil {
return nil, fmt.Errorf("Asset %s not found", name)
}
rv := make([]string, 0, len(node.Children))
for childName := range node.Children {
rv = append(rv, childName)
}
return rv, nil
}
type bintree struct {
2015-08-20 07:45:06 +00:00
Func func() (*asset, error)
2015-08-16 09:47:23 +00:00
Children map[string]*bintree
}
2015-08-20 07:45:06 +00:00
2015-08-16 09:47:23 +00:00
var _bintree = &bintree{nil, map[string]*bintree{
"static": &bintree{nil, map[string]*bintree{
"css": &bintree{nil, map[string]*bintree{
"index.css": &bintree{staticCssIndexCss, map[string]*bintree{}},
"xterm.css": &bintree{staticCssXtermCss, map[string]*bintree{}},
"xterm_customize.css": &bintree{staticCssXterm_customizeCss, map[string]*bintree{}},
}},
2015-08-30 07:27:40 +00:00
"favicon.png": &bintree{staticFaviconPng, map[string]*bintree{}},
"index.html": &bintree{staticIndexHtml, map[string]*bintree{}},
"js": &bintree{nil, map[string]*bintree{
2017-08-22 07:03:19 +00:00
"bundle.js": &bintree{staticJsBundleJs, map[string]*bintree{}},
"gotty-bundle.js": &bintree{staticJsGottyBundleJs, map[string]*bintree{}},
}},
2015-08-16 09:47:23 +00:00
}},
}}
// RestoreAsset restores an asset under the given directory
func RestoreAsset(dir, name string) error {
2015-08-20 07:45:06 +00:00
data, err := Asset(name)
if err != nil {
return err
}
info, err := AssetInfo(name)
if err != nil {
return err
}
err = os.MkdirAll(_filePath(dir, filepath.Dir(name)), os.FileMode(0755))
if err != nil {
return err
}
err = ioutil.WriteFile(_filePath(dir, name), data, info.Mode())
if err != nil {
return err
}
err = os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime())
if err != nil {
return err
}
return nil
2015-08-16 09:47:23 +00:00
}
// RestoreAssets restores an asset under the given directory recursively
func RestoreAssets(dir, name string) error {
2015-08-20 07:45:06 +00:00
children, err := AssetDir(name)
// File
if err != nil {
return RestoreAsset(dir, name)
}
// Dir
for _, child := range children {
err = RestoreAssets(dir, filepath.Join(name, child))
if err != nil {
return err
}
}
return nil
2015-08-16 09:47:23 +00:00
}
func _filePath(dir, name string) string {
2015-08-20 07:45:06 +00:00
cannonicalName := strings.Replace(name, "\\", "/", -1)
return filepath.Join(append([]string{dir}, strings.Split(cannonicalName, "/")...)...)
2015-08-16 09:47:23 +00:00
}