ots/assets.go

284 lines
21 KiB
Go
Raw Normal View History

// Code generated by go-bindata.
// sources:
// frontend/application.coffee
// frontend/application.js
// frontend/index.html
// DO NOT EDIT!
package main
import (
"bytes"
"compress/gzip"
"fmt"
"io"
"io/ioutil"
"os"
"path/filepath"
"strings"
"time"
)
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 {
name string
size int64
mode os.FileMode
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 _frontendApplicationCoffee = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x55\x5d\x6f\xdb\x3a\x0c\x7d\xd7\xaf\xe0\x4d\x0a\xc8\x06\x72\xdd\xb4\xb7\x77\x0f\x01\x3c\x60\xeb\xbe\x1e\xda\x62\x68\x37\xec\x61\x28\x06\xc5\xa2\x63\xb5\x8e\x64\x48\xf4\xd2\xa1\xcd\x7f\x1f\x64\xd9\x8e\x93\xa5\x45\x96\x97\x48\x3c\x24\x45\x1d\x1e\xd1\x0e\xb3\xda\xe2\x67\xe1\xdc\xca\x58\x09\x29\xe8\xba\x2c\x19\xcb\x2c\x0a\xc2\x1b\xcc\x2c\x12\xa4\x10\xc5\xf0\xef\x6b\x06\xe0\x3a\xc3\x51\xc4\xc7\xb9\xb1\xcb\xf3\x81\x1f\x8f\x93\x5c\x69\x19\x71\xc2\x07\x12\x16\x05\x8f\x93\x9f\xa2\x8c\x62\xc6\x00\x54\xde\xc4\xe0\x03\x59\x6f\xaf\xac\xa9\x80\x67\x05\x66\xf7\x28\x39\x03\x68\x72\x6f\x57\x72\x29\xa8\x48\xac\xd0\xd2\x2c\xa3\x38\x21\x73\x43\x56\xe9\x45\xf4\xdf\xab\x38\x71\xf5\xdc\x85\xdd\x69\xdc\x05\x87\xc2\x3e\xaa\xf9\x1c\xad\x72\xc5\x9b\xf7\x37\x09\xea\x2c\x0a\xc8\x64\x27\x7d\x53\xd3\x51\x22\xee\xc4\x03\x70\x51\xa9\xe3\x70\x61\x3e\x69\xb2\x49\x41\x62\xd6\xac\xba\xcc\xb3\xf6\xbf\x87\xbf\xfc\xaa\x70\x06\xa3\x3b\x67\xf4\x28\x54\x40\x82\x6a\x77\x6e\x24\x76\x91\xa7\xd3\x93\x2e\x2c\xd0\x24\x5b\xe0\x6c\x3a\x9d\x81\x33\x4b\xa4\x42\xe9\xc5\x37\x6b\xf4\xa2\x45\xfe\x7f\x16\x39\x9b\x9e\xcd\xfa\x36\x84\xdf\x18\x2e\x4d\x76\x0f\xb9\xb1\xa0\x34\xa1\xcd\x45\x86\x40\xe8\x48\xf5\x51\xb0\xf7\xfc\x8d\xfd\x87\x92\x33\xe0\xb9\x31\x73\x61\xb9\xa7\x24\x17\xa5\x43\xc6\xfc\x0d\xaf\x0c\x7d\x30\xb5\x96\x83\xf6\xfb\x0e\x6a\x43\xb9\x37\xf3\x38\x71\x85\x59\xf9\xee\x16\xc2\x15\x17\x46\x0c\x3d\xbd\x09\x52\x58\x29\x2d\xcd\x2a\x29\x4d\x26\x48\x19\x9d\x78\x73\x10\x83\x5f\x25\x25\xea\x05\x15\x90\xa6\x30\x6d\x4a\xb3\x48\xb5\xd5\xbe\x8e\x4a\x58\x72\x90\x06\x37\x57\x95\x8a\x80\x3f\xf1\x10\xda\x60\x83\xd8\xd3\x26\xb6\x3d\xb1\x01\xbf\x4f\x6f\xf7\x4b\x2a\xa0\x27\xb7\x8d\x22\x65\x9f\xbf\x57\xd3\x49\xbc\x91\xc5\xc8\xcb\x62\x81\x74\x3c\x7e\x54\x72\x3d\x9a\xfc\x4d\xeb\x9b\x6e\x0d\x49\xec\x25\xe1\xfb\x5b\x98\xd5\x3b\x41\x82\x31\xa5\x15\xbd\x55\x5a\xba\x1d\x8e\xf7\xbc\xac\xb9\xd2\x12\xb8\xab\xe7\x4b\x45\x7c\x02\xc3\xf7\xd9\x35\x06\x57\x3b\xde\x59\xa9\xb2\x7b\x3e\x81\x1e\x61\xac\x5f\x0e\x4e\xdc\x74\xc7\x62\x0e\xe9\xf6\x3e\x90\x1f\xf1\x31\x8f\x03\xab\xad\x42\xb6\x74\xe5\x93\xf9\xdb\x6e\x4d\x89\x4f\xa1\x21\xde\x9e\xf4\x6a\x0b\x1d\xdc\xe9\xcb\x3f\xed\xd4\xd9\xe8\xb2\x8d\x1d\x8d\x1f\x37\xfb\xf5\x53\xb3\x1b\x04\xae\x3d\xfd\xb5\x2d\x83\xe7\x0b\x65\xaf\xc7\x5b\x89\x46\xac\xa5\xac\x12\x1a\xcb\xab\x01\x6f\x85\x92\x18\xc5\x43\x34\x40\x5f\xaf\x2f\x36\x7a\x7f\x06\x0d\xb3\x4f\xe9\xaa\xa6\x30\xf8\x7c\x69\x87\x39\xe7\x26\xab\xdd\xa1\x99\x1d\x96\x98\x91\x7f\x77\x9d\x90\xf6\xd2\x0f\x29\x0c\xb9\x3f\x90\xf8\xdd\x09\x2a\xf1\xe5\x09\x7a\x18\x89\xd7\x28\x64\x0f\xff\xc9\xe2\x16\xbc\xef\x13\xd2\x0d\x5f\xb6\x3d\x1a\x77\x5e\x4d\x0f\xae\x3c\x38\x98\x4f\xec\x28\x38\xf5\xcf\xad\x39\xbe\x9b\x5a\x51\xcc\x7e\x07\x00\x00\xff\xff\xa1\xf6\xf3\xcf\x05\x07\x00\x00")
func frontendApplicationCoffeeBytes() ([]byte, error) {
return bindataRead(
_frontendApplicationCoffee,
"frontend/application.coffee",
)
}
func frontendApplicationCoffee() (*asset, error) {
bytes, err := frontendApplicationCoffeeBytes()
if err != nil {
return nil, err
}
info := bindataFileInfo{name: "frontend/application.coffee", size: 1797, mode: os.FileMode(436), modTime: time.Unix(1501776172, 0)}
a := &asset{bytes: bytes, info: info}
return a, nil
}
var _frontendApplicationJs = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x9c\x56\x5f\x6f\xdb\x36\x10\x7f\xf7\xa7\xb8\x39\x01\x48\xa1\x02\x63\x67\xd9\x1e\x6c\xe8\x61\xcb\xb6\xf6\xa1\x2b\x86\x66\xc3\x1e\x86\x62\xa0\xc5\x93\xc5\x56\x21\x05\x92\xaa\x53\xb4\xfe\xee\x03\x45\x49\xa6\x14\xb9\xc9\x9a\x87\x08\xc7\xfb\xcb\xbb\x1f\x7f\xe7\xab\x2b\x78\x89\x0a\x0d\x77\x28\x60\xf7\x09\x6e\x75\x51\x20\xde\xe5\x46\xd6\x0e\xd6\x6c\x7d\xcd\x6e\x16\xb4\x68\x54\xee\xa4\x56\x34\x81\xcf\x0b\x80\x8f\xdc\x40\x6e\x90\x3b\xbc\xc3\xdc\xa0\x4b\x41\x70\xc7\xdf\x68\xf7\x9b\x6e\x94\x48\xa1\xe4\xb6\x7c\xad\xb9\x48\x41\x2a\xe9\x7e\x96\x4a\xd8\x14\x14\x1e\x7a\x6b\xdb\x7e\x6f\xdb\x08\xa2\x15\x1b\x83\x7f\x70\x6b\x0f\xda\x78\xb9\xd4\x87\x5f\xb8\xe3\x29\x58\x7d\x8f\xae\x94\x6a\xff\xb7\xd1\x6a\xbf\x5d\x2c\x60\x62\x0c\x19\xa8\xa6\xaa\x5a\x4d\x5c\x11\x64\x30\xa9\x39\x54\x1d\x32\x6f\x5b\xd9\xf6\x96\x97\x94\x5c\x14\xda\xdc\xdf\x46\x01\x48\xc2\x0a\xa9\x04\x25\x0e\x1f\x1c\x37\xc8\x49\xc2\x3e\xf2\x8a\x26\xc1\x57\x16\x40\xbd\x1b\x3e\x38\xe3\x55\xb5\xd1\x35\x25\x79\x89\xf9\x07\x14\x24\xe9\x53\xce\x94\xfb\x3b\x77\x25\x33\x5c\x09\x7d\x4f\x13\xe6\xf4\x9d\x33\x52\xed\xe9\xf7\x3f\x26\xcc\x36\x3b\x1b\xa4\xeb\x2e\x4d\x54\xe4\x4b\xb9\xdb\xa1\x91\xb6\xfc\xe9\xd7\x3b\x86\x2a\xa7\xf6\xd4\xcc\x28\x43\xe7\x78\x6c\xff\x5f\x32\xfe\x9e\x3f\x50\xc2\x6b\x79\x15\xba\x43\xd2\xa1\x32\x3f\xb2\xcd\x20\xf5\x99\x36\xdd\xb7\x3b\x3e\xa6\x91\xf5\x9f\x9f\x6a\xdc\xc0\xf2\xbd\xd5\x6a\xd9\x9f\x5b\xc7\x5d\x63\x6f\xb5\xc0\x38\xd6\xf5\x6a\xbd\x99\x4c\x79\xd0\xdd\xac\x56\x9b\xc9\x60\x4f\xca\x1f\xbe\xa6\xbc\x59\xdd\x6c\x1e\x8f\x35\xfc\x19\x74\x8d\x51\xe3\x9c\x34\x36\xe8\x2f\xf8\xaf\x14\x1b\x20\x85\xd6\x3b\x6e\x48\xa4\x3f\x0e\x2d\xef\xbb\xd7\x7f\x7b\x4d\x97\xa2\xe0\x95\x45\x7f\x72\x6c\x51\x17\x23\x7f\x0e\x75\x9d\x97\x07\x8b\xd2\xae\xf0\x66\x24\x61\x1e\xe2\x01\x4b\x21\x4a\xff\x62\xce\xe1\xd6\xeb\x53\x90\x22\x85\x9a\x1b\x67\x43\x41\xfe\x10\x32\x38\x48\x25\xf4\x81\x55\x3a\xe7\xde\x8f\xf9\xe3\x13\x4a\xbd\xc4\x2a\x54\x7b\x57\x42\x96\x65\xb0\x3a\xf5\x2d\x94\x16\x03\xa6\x0d\x0e\x59\x1b\x99\xd9\xba\x92\x8e\x92\x2f\x24\xc2\x7c\x6b\x10\x87\xbb\x3e\x85\xeb\xca\x69\x4d\xfe\x59\xbd\xdb\x9e\x7b\x01\xc1\x60\xfd\x2e\x4e\x2c\xc5\x90\x75\x78\x04\xeb\x71\xdf\x3b\x30\x2f\x3d\x98\xf7\xe8\xae\x96\xf0\xa2\x6d\xc8\xe7\x6f\x42\x68\x8b\xa5\x11\x6b\x45\xe0\xf5\x18\xec\x38\x68\x06\x09\x61\x62\x03\xb3\xcd\x8d\xec\x0c\xa3\xec\x5a\x46\xb1\xcd\xee\x5e\x3a\x92\x8e\x08\x6b\x72\x57\x8f\x96\x9e\x2f\x07\xc7\xbc\x92\xf9\x07\x12\x31\x69\x54\xce\x70\x36\x57\xce\x09\x1a\x06\x0b\xc8\xc6\x72\x3f\xe7\x0b\x92\x0c\x53\x9b\x87\xfa\xe8\x71\xc5\x79\x7c\x1f\x1f\xb3\xec\xab\x16\xb3\x8d\xa9\x62\xba\x7d\x15\x40\xe2\x3d\xd8\xf0\x20\x4f\xf8\x9a\x80\xe5\xbb\x2c\xf0\xfb\x88\x4f\x4f\x51\x22\xe1\x05\x2c\xbf\x78\x44\x8c\x03\xc4\x10\x6b\x4c\x05\x19\xd0\xaf\xdc\x3d\xf1\x51\x2e\xba\x28\x5d\xe0\xed\x30\xcf\x9a\x2b\xac\xde\x44\x43\x29\xa5\xc0\x7e\x1f\x0c\x06\x41\xfb\xd7\xdb\xd7\xa3\x47\x7e\xc6\x20\x6c\x18\xa9\xea\xc6\x75\xeb\xa5\x31\xd5\xf3\x1d\x0a\x9d\x37\x96\x3e\x46\xce\x13\x6e\x16\x2b\xcc\x5d\xcc\x3e\x3d\xd8\x9f\x9e\xe9\x64\x73\x46\x63\xfc\xdf\x33\x9c\xee\x34\x81\xcf\xdb\x69\xcf\x1e\xc5\x5b\xe4\x62\xb0\x88\x67\x31\x6d\xd5\xc8\x70\x76\xeb\xdb\xe9\x73\x1b\xaf\xa8\x27\x78\x7f\x30\x3e\x78\xe3\x19\xf6\xbf\x9c\xfe\xc0\x8a\xe8\x65\x52\x74\xbf\x28\x3a\xf7\x64\xbb\x58\x1c\x13\x96\xf3\xaa\xa2\xae\x94\x36\xd9\x2e\xfe\x0b\x00\x00\xff\xff\x26\xda\xe3\xa1\xd1\x09\x00\x00")
func frontendApplicationJsBytes() ([]byte, error) {
return bindataRead(
_frontendApplicationJs,
"frontend/application.js",
)
}
func frontendApplicationJs() (*asset, error) {
bytes, err := frontendApplicationJsBytes()
if err != nil {
return nil, err
}
info := bindataFileInfo{name: "frontend/application.js", size: 2513, mode: os.FileMode(436), modTime: time.Unix(1501777946, 0)}
a := &asset{bytes: bytes, info: info}
return a, nil
}
var _frontendIndexHtml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\x58\x6b\x53\xdc\xb8\x12\xfd\x4c\x7e\x45\xe3\x54\xdd\xec\x66\xb1\xcd\x30\x01\x12\xe2\x99\x2a\x5e\x4b\x20\x3c\xc2\x23\x90\x61\x6b\x3f\xc8\x56\xdb\xd6\x20\x4b\x46\x92\x67\x98\xdc\xba\xff\xfd\x96\xfc\x18\xe6\x45\xc2\x26\xd9\x54\x85\x19\x6b\x5a\xdd\x3a\xa7\x4f\xb7\x64\x05\xcb\x7b\x67\xbb\x57\xbd\x4f\xfb\x90\x9a\x8c\x77\x5f\x04\xf6\x03\x38\x11\x49\xc7\x41\xe1\x74\x5f\x00\x04\x29\x12\x6a\xbf\x00\x04\x19\x1a\x02\x51\x4a\x94\x46\xd3\x71\x0a\x13\xbb\x6f\x9d\xc9\x9f\x52\x63\x72\x17\xef\x0b\x36\xe8\x38\x5f\xdc\xcf\xdb\xee\xae\xcc\x72\x62\x58\xc8\xd1\x81\x48\x0a\x83\xc2\x74\x9c\xc3\xfd\x0e\xd2\x04\xa7\x66\x0a\x92\x61\xc7\x19\x30\x1c\xe6\x52\x99\x09\xe3\x21\xa3\x26\xed\x50\x1c\xb0\x08\xdd\xf2\x61\x05\x98\x60\x86\x11\xee\xea\x88\x70\xec\xb4\x1a\x47\xcb\xae\x0b\x57\x29\x02\x09\xe5\x00\xa1\x0d\xa5\x63\x43\x12\x0d\xaf\xb3\x42\x9b\xd7\x10\xc9\x0c\x21\x66\x4a\x1b\x60\x02\x4c\x8a\x60\xb1\xbd\x07\x22\x46\x20\x4d\x8a\xaa\x7c\x6e\x62\x83\x9d\x54\xcd\x79\x4d\x62\x83\xea\xb5\x9d\xa2\xb1\x72\xe9\xba\x75\x54\xc3\x0c\xc7\xee\xd9\xd5\x25\xb8\x70\x26\x10\xae\x58\x86\x70\x89\x91\x42\xa3\x03\xbf\xfa\xf5\xc5\xe3\x02\x77\xa4\x34\xda\x28\x92\x97\x1e\x96\x96\x02\xce\xc4\x1d\x28\xe4\x1d\x47\x9b\x11\x47\x9d\x22\x1a\x07\x52\x85\x71\xc7\xb1\x7c\xea\x2d\xdf\x8f\xa8\xe8\x6b\x2f\xe2\xb2\xa0\x31\x27\x0a\xbd\x48\x66\x3e\xe9\x93\x07\x9f\xb3\x50\xfb\xa1\xf5\x39\x24\x26\x4a\xfd\xb6\xd7\xf6\x36\xfd\x98\x13\xc3\x47\xd5\xb8\x8d\xe5\x65\x4c\x78\x91\xd6\x4e\xb9\x8e\xea\x1f\x13\x06\x13\xc5\xcc\xa8\xe3\xe8\x94\xac\xad\x6f\xb8\xaa\x75\xc3\xfa\x37\xfe\xe5\xe9\x49\x72\x36\xbc\x5b\x3f\xde\xbb\xdb\x3c\xbf\xf8\xa0\x36\xe4\x75\xaf\x17\xf6\x6e\x4e\x86\x7e\xeb\xee\xec\x4b\xdc\x3b\x8a\x93\x8e\x03\x91\x92\x5a\x4b\xc5\x12\x26\x3a\x0e\x11\x52\x8c\x32\x59\x68\x07\xfc\x9a\x97\x5f\x80\x2b\x96\xc2\xb8\x64\x88\x5a\x66\xe8\xbf\xf1\x36\xbd\x55\x3f\xd2\xd3\xc3\xcf\x43\x86\xb7\x4a\x1d\x45\xc3\xbd\xc8\x6f\x17\x7b\xa9\xa6\x66\xa3\xa5\x8f\xd7\xe4\xd9\x4e\xaf\xbd\xb1\x76\x7f\xd2\xe6\x52\xb4\x92\xd1\xfe\xc3\xdd\xf1\xea\xb7\x91\x3d\xe6\xf1\xc3\xd5\xc9\xf1\x3a\xe8\x94\x65\x40\x04\x85\x0b\xd4\xb9\x14\xd4\xeb\x6b\x88\xa5\x82\xc3\xfd\xb7\xa0\x8b\xdc\x6a\x19\x64\x5c\x1b\x23\xc7\x0c\x85\xd1\xe5\x84\x0c\x29\x23\x70\x5f\xa0\x62\x38\xa1\x26\xeb\xfa\x66\xfb\xe2\xf4\xf0\xf4\x60\x6b\xd2\x29\x95\xa8\xc5\x2b\x03\x43\xa9\xee\x80\xc5\x30\x92\x05\xd8\x6a\x29\x55\x9c\x93\x04\x61\xc0\x08\xc4\x8c\xe3\x96\xef\x4f\xb9\xfb\x8b\xc5\xc0\x0d\x1c\xee\xc3\xbb\xbf\xbb\x35\x4b\x81\x8e\x14\xcb\x0d\x68\x15\x3d\x3b\x19\xb6\x33\xac\xeb\x94\x0d\xfc\xb6\xb7\xe9\xb5\x1f\x9f\xcb\x14\xf4\xa7\x32\xb0\x38\x0b\xed\xa3\x91\x7f\x10\x5e\x1e\xab\x64\x55\xbe\x1b\xad\xdf\xae\x8b\x56\x31\x5c\xbd\x7f\xb8\xdd\xdf\xfd\xb0\xb9\xbb\x71\x76\x9e\x5f\xef\x24\xa7\x7f\xf6\xc8\xea\x37\xf4\xd5\x0d\xfc\x6a\xf1\x3f\x83\x45\x8d\x89\xf5\x5b\xde\x1b\x6f\x6d\x3c\xf0\x5c\x28\xc9\x06\xdb\x8e\x07\xb7\xf9\x1f\x62\xef\x7c\xed\x8a\x5e\x5d\xf8\xd7\xd7\x1f\x8f\xe2\x76\x78\xa0\xe4\x9b\x22\x5c\x8f\x07\x37\x97\x37\xd7\x17\x6c\xed\x74\xff\xd9\x50\x82\xe5\xbf\x50\x50\x16\xff\x6d\xb3\x57\x8d\x94\x95\xd3\x00\x7d\x69\xf5\x6e\x52\x26\x92\xa1\x92\x22\x59\x81\x97\x42\x9a\x58\x16\x82\xae\xc0\xcb\x9c\x08\xe4\x17\x48\x68\xd5\x79\x9a\x91\xea\xe9\xf3\xc5\x31\xfc\x77\x8c\x89\x32\x9d\x73\x32\xda\x02\x21\x05\xbe\xaf\x87\xff\x57\x05\xf4\xc7\x11\x03\xbf\xe9\xfb\x41\x28\xe9\xa8\x6c\x55\x82\x0c\x20\xe2\x44\xeb\x8e\x23\xc8\x20\x24\x0a\xaa\x0f\x97\x62\x4c\x0a\x6e\x1c\x6b\xb5\x14\x50\x36\x36\xb3\xad\x94\x30\x81\xca\x8d\x79\xc1\x68\x65\xb0\x54\x35\x42\x65\xcb\xc0\xfe\x37\x32\x49\x38\x42\x82\x06\x12\x25\x8b\x1c\x69\x59\x43\x21\x1a\x83\x0a\x32\x19\x32\x8e\xcd\xaa\xeb\xae\x39\x1d\xa5\x5e\x85\x5d\x30\xaa\x3a\xc6\x52\x10\x16\xc6\x48\x01\x66\x94\x63\xc7\xa9\x1e\x9c\x99\x19\x75\xe4\x48\x72\x4e\x72\x8d\xd4\x01\x4a\x0c\xa9\x87\xed\xea\xab\xf1\x66\x98\xa8\xc4\xee\x7b\x2f\x43\xed\xe2\x03\xc9\x72\x8e\x6e\xed\xa8\xb1\x74\x5b\x0e\x10\xc5\x88\x8b\x0f\x39\x11\x14\x69\xc7\x89\x09\xd7\xd8\x2c\x6a\x29\xd0\x39\x11\xcd\x2a\xb4\x72\xa5\xe0\x23\xa7\x7b\x55\xad\x43\x90\x01\x4b\x88\x61\x52\x04\xbe\xb5\x5b\x38\x89\x45\x52\xb8\x21\x51\xa5\x7c\xfe\x0d\x
func frontendIndexHtmlBytes() ([]byte, error) {
return bindataRead(
_frontendIndexHtml,
"frontend/index.html",
)
}
func frontendIndexHtml() (*asset, error) {
bytes, err := frontendIndexHtmlBytes()
if err != nil {
return nil, err
}
info := bindataFileInfo{name: "frontend/index.html", size: 6155, mode: os.FileMode(436), modTime: time.Unix(1501773470, 0)}
a := &asset{bytes: bytes, info: info}
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)
if err != nil {
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){
"frontend/application.coffee": frontendApplicationCoffee,
"frontend/application.js": frontendApplicationJs,
"frontend/index.html": frontendIndexHtml,
}
// 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 {
Func func() (*asset, error)
Children map[string]*bintree
}
var _bintree = &bintree{nil, map[string]*bintree{
"frontend": &bintree{nil, map[string]*bintree{
"application.coffee": &bintree{frontendApplicationCoffee, map[string]*bintree{}},
"application.js": &bintree{frontendApplicationJs, map[string]*bintree{}},
"index.html": &bintree{frontendIndexHtml, map[string]*bintree{}},
}},
}}
// RestoreAsset restores an asset under the given directory
func RestoreAsset(dir, name string) error {
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
}
// RestoreAssets restores an asset under the given directory recursively
func RestoreAssets(dir, name string) error {
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
}
func _filePath(dir, name string) string {
cannonicalName := strings.Replace(name, "\\", "/", -1)
return filepath.Join(append([]string{dir}, strings.Split(cannonicalName, "/")...)...)
}