2021-01-31 16:19:34 +01:00
|
|
|
// Code generated by go-bindata. (@generated) DO NOT EDIT.
|
|
|
|
|
|
|
|
//Package kendall generated by go-bindata.// sources:
|
2018-05-10 23:46:04 +02:00
|
|
|
// themes/kendall/resume.template
|
|
|
|
// themes/kendall/style.css
|
|
|
|
// themes/kendall/print.css
|
|
|
|
package kendall
|
|
|
|
|
|
|
|
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 {
|
2021-01-31 16:19:34 +01:00
|
|
|
return nil, fmt.Errorf("read %q: %v", name, err)
|
2018-05-10 23:46:04 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
var buf bytes.Buffer
|
|
|
|
_, err = io.Copy(&buf, gz)
|
|
|
|
clErr := gz.Close()
|
|
|
|
|
|
|
|
if err != nil {
|
2021-01-31 16:19:34 +01:00
|
|
|
return nil, fmt.Errorf("read %q: %v", name, err)
|
2018-05-10 23:46:04 +02:00
|
|
|
}
|
|
|
|
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
|
|
|
|
}
|
|
|
|
|
2021-01-31 16:19:34 +01:00
|
|
|
// Name return file name
|
2018-05-10 23:46:04 +02:00
|
|
|
func (fi bindataFileInfo) Name() string {
|
|
|
|
return fi.name
|
|
|
|
}
|
2021-01-31 16:19:34 +01:00
|
|
|
|
|
|
|
// Size return file size
|
2018-05-10 23:46:04 +02:00
|
|
|
func (fi bindataFileInfo) Size() int64 {
|
|
|
|
return fi.size
|
|
|
|
}
|
2021-01-31 16:19:34 +01:00
|
|
|
|
|
|
|
// Mode return file mode
|
2018-05-10 23:46:04 +02:00
|
|
|
func (fi bindataFileInfo) Mode() os.FileMode {
|
|
|
|
return fi.mode
|
|
|
|
}
|
2021-01-31 16:19:34 +01:00
|
|
|
|
|
|
|
// ModTime return file modify time
|
2018-05-10 23:46:04 +02:00
|
|
|
func (fi bindataFileInfo) ModTime() time.Time {
|
|
|
|
return fi.modTime
|
|
|
|
}
|
2021-01-31 16:19:34 +01:00
|
|
|
|
|
|
|
// IsDir return file whether a directory
|
2018-05-10 23:46:04 +02:00
|
|
|
func (fi bindataFileInfo) IsDir() bool {
|
2021-01-31 16:19:34 +01:00
|
|
|
return fi.mode&os.ModeDir != 0
|
2018-05-10 23:46:04 +02:00
|
|
|
}
|
2021-01-31 16:19:34 +01:00
|
|
|
|
|
|
|
// Sys return file is sys mode
|
2018-05-10 23:46:04 +02:00
|
|
|
func (fi bindataFileInfo) Sys() interface{} {
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2021-02-07 22:58:56 +01:00
|
|
|
var _themesKendallResumeTemplate = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5b\xdd\x72\xdb\x36\x16\xbe\x56\x9e\x02\xe5\xd5\xee\x4c\x28\xd5\xc9\x76\xba\x9b\x52\x9a\x51\x14\x25\xf1\xc4\xb5\x35\xb6\x9c\xb4\x57\x3b\x10\x79\x24\x22\x06\x01\x06\x00\x6d\x6b\x35\x9a\xd9\x77\xd8\x37\xdc\x27\xe9\x00\xfc\x11\x7f\x40\xca\x8a\xdc\x24\xed\xf4\x26\x11\x89\x83\xf3\x87\x0f\xe7\x1c\x1c\xd0\xde\x77\xaf\x2e\x26\xf3\x5f\x67\x53\x14\xaa\x88\x8e\x9e\x78\xfa\x3f\x44\x31\x5b\x0d\x9d\xcd\xa6\x7f\x86\xd9\x2a\xc1\x2b\xd8\x6e\x9d\xd1\x13\x84\xbc\x10\x70\xa0\x7f\x20\xe4\x45\xa0\x30\x0a\x95\x8a\x5d\xf8\x94\x90\xdb\xa1\x33\xe1\x4c\x01\x53\xee\x7c\x1d\x83\x83\xfc\xf4\x69\xe8\x28\xb8\x57\x03\xcd\xf5\x27\xe4\x87\x58\x48\x50\xc3\xeb\xf9\x6b\xf7\x9f\x4e\x1b\x9f\x5f\xdc\xeb\xb1\x3b\xe1\x51\x8c\x15\x59\xd0\x32\xab\xd3\xe9\x10\x82\x15\x3c\xf5\x43\xc1\x23\x18\x9e\x54\x58\x30\x1c\xc1\xd0\xb9\x25\x70\x17\x73\xa1\x4a\xb3\xee\x48\xa0\xc2\x61\x00\xb7\xc4\x07\xd7\x3c\x3c\x45\x84\x11\x45\x30\x75\xa5\x8f\x69\x89\x91\x22\x8a\xc2\x28\xb3\xbb\x3f\xd7\x4f\x33\x01\x4b\x72\xbf\xdd\xa2\xcd\xa6\xff\x12\x4b\xe2\xf7\xcf\x71\x04\xdb\xad\x37\x48\x89\xd3\x89\x94\xb0\x1b\x14\x0a\x58\x0e\x1d\x6d\x8a\x7c\x31\x18\x44\xf8\xde\x0f\x58\x7f\xc1\xb9\x92\x4a\xe0\x58\x3f\xf8\x3c\x1a\x14\x2f\x06\xcf\xfb\xcf\xfb\x3f\x0e\x7c\x29\x77\xef\xfa\x11\x61\x7d\x5f\x4a\x07\x09\xa0\x43\x47\xaa\x35\x05\x19\x02\x28\xa7\x5d\x90\x1f\xb0\x8f\xb2\xef\x53\x9e\x04\x4b\x8a\x05\x18\x29\xf8\x23\xbe\x1f\x50\xb2\x90\x83\x25\x67\xca\xc5\x77\x20\x79\x04\x83\x1f\xfa\x27\xff\xe8\x7f\x6f\x64\x62\x4a\xf7\x4a\x33\x6f\x46\x9b\x8d\x2f\xa5\xb6\x38\x7d\x2c\x0d\xa1\x08\x02\x82\x87\x4e\x2c\x08\x53\xce\x68\xb3\x31\x3f\xea\xd4\xde\x20\x87\x8d\xb7\xe0\xc1\x3a\x63\x10\x90\x5b\xe4\x53\x2c\xe5\xd0\xd1\x4b\x85\x09\x03\x91\xc9\xad\x8e\x0a\x7e\x57\xbc\xaf\xcf\xa3\xee\xbd\x74\x4f\x9e\x95\xc6\x33\x0a\x12\x0c\x9d\x38\xe4\x8a\xbb\x5a\x36\x08\x27\x9f\xa3\xe1\xe8\xfa\xc0\x54\x49\x5a\x36\xef\x3b\xd7\x45\xb3\xb7\x17\xf3\x0b\xf4\xb7\xf1\xfb\xf1\x7c\x7c\xf9\x77\xe4\xba\x55\x9a\xcd\x86\x2c\x51\x86\x83\xd3\x08\xaf\x00\xb9\xdb\x6d\x95\x4b\x45\x7a\x4d\x04\x42\x1e\x89\x56\x48\x0a\xdf\xec\xae\x12\x9f\xed\xd6\x41\x98\xaa\xa1\x83\x6f\xb1\xc2\x0d\xd5\x06\x01\xb9\xad\x6b\xe2\x22\x60\x41\x9b\x74\x63\x66\x6e\xba\xd1\x9a\x71\x85\xaa\x12\xcd\x02\x0d\x9d\x08\x8b\x15\x61\xae\xe2\xf1\x0b\xf4\xaf\xef\xe3\xfb\x9f\x9c\x82\x77\x43\xfb\xf0\x64\x54\xdf\x07\x0b\x31\x2a\x7b\xe5\x0c\x2f\x80\x6e\xb7\x9e\x8c\x31\xdb\xd1\xe6\x6f\x07\xd9\xeb\x8c\xbf\x37\x08\x4f\xf6\x58\x5a\x7b\x51\x79\xac\x3e\x1c\x06\x19\xa4\x7f\xc9\xc8\xfd\xb1\xe2\xea\xb2\x25\x57\x49\x14\x61\xb1\xae\xad\xb0\x41\xc9\xf8\xe5\xc5\xf5\x1c\xfd\x3c\xad\xe1\xa3\x2c\x68\xc1\xef\x9d\xd1\x93\x5e\xea\xb5\x67\x23\x8f\xe4\x03\x4b\x2c\xd1\x12\xbb\x89\x04\x81\x88\xcf\x9d\x91\x37\x20\x23\x94\xc7\x9c\xf1\x82\x27\xca\x38\xe6\x59\xcd\x31\xf1\xce\x9b\x99\x66\x9a\x2c\xee\xf0\x95\x1d\x24\xa9\x89\x1f\xb8\xb8\xb1\x59\xf6\xe1\xe2\xf2\x1d\x9a\xfe\x32\x9b\x5e\x9e\x4e\xcf\x27\x9f\x63\x20\xca\x2d\x94\x09\x51\x3e\x96\x60\xb1\x52\x4b\x9f\xde\xc7\x20\x08\x30\x1f\x72\x73\x7b\xa9\x7a\x02\xb3\x15\xec\x34\xdc\x81\xf7\x2d\x09\xa0\x86\xf7\xaa\x4a\x1f\xf9\x02\xf9\x14\xb0\x58\x92\xfb\xc6\xce\xeb\x42\x88\x9d\x26\x00\x85\x09\x95\x56\xba\x2a\xe5\x5d\x08\x02\x74\xfc\x2b\x92\x43\x63\xbf\x56\xdd\x7f\x7d\x79\xd6\x88\x1c\x36\xc6\x38\x08\x04\xc8\x36\x15\x10\xf2\x70\x96\x0c\x36\x1b\xcd\x53\x47\x11\x85\xc5\x0a\xd4\x10\x39\xff\x5e\x50\xcc\x6e\x9c\x26\xf4\x56\x94\x2f\x6a\xab\x62\xe6\x7a\x03\xdc\x62\x6a\x97\x39\x39\xc2\x7a\xbd\xba\xf2\x6b\xd0\x81\x6c\xb3\x59\x72\x11\x61\xf5\x0a\x2b\xf8\xf9\x57\xd4\xbf\x52\x58\x98\x87\xed\x16\xfd\xff\xbf\xff\x43\xf5\xf1\x29\x0b\xd2\xd1\x56\xa9\x2d\x03\x6d\xaf\x0f\x5c\xf5\x8f\x7c\xe1\x66\x2b\x8f\xf2\x68\x71\xf2\x00\x0c\xc4\x82\x2f\x41\x4a\xc2\x99\x01\xc2\x8c\x4b\xa2\x08\x67\x9d\x60\xa8\xa2\x4d\xfa\x82\xc4\xca\x30\x68\x59\xee\xcd\xa6\x25\x2a\x55\x89\x34\xc2\xde\x92\x55\x48\xc9\x2a\x54\xb2\x83\xb4\x2c\x3f\x2c\x26\x68\x58\xb4\xaa\x8c\x90\x97\xd0\x7c\x0e\x25\x52\xb9\x2b\xc1\x93\xb8\x55\xe5\xd2\x8e\x7e\x90\x4a\xa6\xc6\x69\xf2\x77\x89\x82\x48\xc7\x9b\x5e\xaf\xb7\xd9\xa4\xa5\x99\x01\x9d\x7e\xd4\xf6\x9e\x2a\x88\x52\xbe\xfa\x9d
|
2018-05-10 23:46:04 +02:00
|
|
|
|
|
|
|
func themesKendallResumeTemplateBytes() ([]byte, error) {
|
|
|
|
return bindataRead(
|
|
|
|
_themesKendallResumeTemplate,
|
|
|
|
"themes/kendall/resume.template",
|
|
|
|
)
|
|
|
|
}
|
|
|
|
|
|
|
|
func themesKendallResumeTemplate() (*asset, error) {
|
|
|
|
bytes, err := themesKendallResumeTemplateBytes()
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
2021-02-07 22:58:56 +01:00
|
|
|
info := bindataFileInfo{name: "themes/kendall/resume.template", size: 12999, mode: os.FileMode(420), modTime: time.Unix(1612734643, 0)}
|
2018-05-10 23:46:04 +02:00
|
|
|
a := &asset{bytes: bytes, info: info}
|
|
|
|
return a, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
var _themesKendallStyleCss = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\x58\x4b\x6f\xe3\xb6\x16\xde\xfb\x57\x1c\x4c\x60\x64\x82\x2b\x69\x68\x27\x8e\x13\x1a\x83\x9b\x8b\x5b\xa0\xe8\xa2\xe8\xa2\xb3\xe8\x96\x96\x28\x8b\x13\x4a\x64\x49\x3a\x8e\xc7\xc8\x7f\x2f\x48\x51\x36\x45\x4b\x4e\x5f\x83\x6c\x2c\xf2\xf0\x3c\xbf\xf3\xca\x13\xab\xa5\x50\x06\xb6\x8a\x7f\xac\x8c\x91\x1a\x7f\xfa\x54\x8a\xc6\xe8\x6c\x23\xc4\x86\x53\x22\x99\xce\x72\x51\x7f\xca\xb5\xfe\x6f\x49\x6a\xc6\xf7\x9f\x7f\x91\xb4\xf9\xcf\xaf\xa4\xd1\xf8\x0e\xa1\xe4\x1e\xa1\x64\x89\x50\xf2\x80\xd0\xcd\x6a\xf2\x94\x57\x44\x69\x6a\xe0\xc3\xd6\x94\xe9\xc3\x87\xd5\xe4\x29\xdd\xd1\xf5\x33\x33\xe9\x0b\xa3\x3b\x27\x0b\xe0\x00\x3b\x56\x98\x0a\x43\x41\x5f\x58\x4e\x53\xf7\xb5\x82\xb7\xc9\x53\x5a\x8b\x6f\x21\xe5\x3b\xc4\x3a\xa2\xbd\x44\x2c\x62\xda\x0b\xc4\x31\xe5\x25\xe2\xc9\x5a\x14\xfb\xc3\x04\xc0\xfa\x2d\x6d\x7d\x84\xe1\xda\x7a\x09\xac\x97\xae\x13\xf8\x9f\x62\x84\x27\xf0\x85\x54\xa2\x26\xab\x8e\x74\x47\xd9\xa6\x32\x18\xee\x10\xb2\x67\xb9\xe0\x42\x61\xb8\xba\xbd\xb7\x7f\xf6\x64\x4d\xf2\xe7\x8d\x12\xdb\xa6\xb0\xc7\xb7\x77\x8f\xf7\x68\x35\x79\x9b\xac\xb9\xc8\x9f\x7f\xdf\x0a\x43\xe1\x28\x56\xb3\x6f\x14\xc3\x8c\xd6\x96\x60\x92\xe5\xa2\x31\x84\x35\x54\x59\x82\x9a\xa8\x0d\x6b\x52\x23\x24\x86\x07\x24\x5f\x57\xa7\xb3\xb5\x30\x46\xd4\x18\x66\x8b\xf6\xb8\x27\xb1\x2c\x4b\xc7\xed\x4a\x56\xc2\x88\xb4\xa2\xa4\x38\x67\x98\x2e\xdd\xd3\x37\x4f\x65\xaf\xbd\x9f\x66\xf7\x5e\x56\xe5\xed\x3c\x1e\xac\x85\x2a\xa8\x4a\x15\x29\xd8\x56\x63\x58\xa0\xa9\x3d\x15\x2f\x54\x95\x5c\xec\x30\x54\xac\x28\x68\x63\xcf\x24\x29\x0a\xd6\x6c\x30\x0c\xe9\xd7\x79\x04\xa0\x60\x5a\x72\xb2\xc7\xc0\x1a\xce\x1a\x9a\x3a\x0f\x9d\x94\x02\x56\x6f\x42\xc5\x16\xb1\x62\x8b\x0b\x8a\xbd\x4d\xae\x0c\x7d\x35\xde\x7c\xa8\x66\x27\x0f\x60\x40\x3d\x25\xd1\x2a\x0a\x47\xb6\xb0\x01\x89\xc2\xbd\x6c\xc3\xed\x98\x1a\x45\x1a\x5d\x0a\x55\x63\xd8\x4a\x49\x55\x4e\x34\xb5\x97\x9c\x1a\x43\x55\xaa\x25\xc9\x1d\xe7\x74\xe6\x9d\xdc\x57\x05\xe3\x92\x29\x6d\x52\x6b\x74\x0c\x85\x41\xd9\x0f\xad\x6c\xe7\xa4\xa3\xf5\x2d\xe5\x19\x73\xd0\x92\x34\x87\x10\x98\x47\x7f\x0b\xab\x97\xd9\x63\x40\xd9\x72\xf0\xe5\x56\x1e\xfa\x64\x8b\x98\x0c\x93\xd2\xb4\x68\xea\xa2\x82\x5a\x18\x74\x6a\xdd\xf6\x42\x72\x04\xaa\x7c\x05\x2d\x38\x2b\xe0\xaa\x28\x8a\x55\x04\xc6\x0e\xc6\x16\xfe\xb4\x31\x18\xae\xaf\x7b\xf0\x38\xe2\x62\x92\xad\xc5\xeb\xe1\x14\xbb\x13\xff\xe1\xfc\x98\x7b\x90\xdb\x67\x50\xcd\x43\xaf\xcc\xe7\xcb\x7c\x79\xf7\x2f\x45\xde\x66\x1b\xd9\x11\x55\xe8\x64\x72\x45\x8b\x6d\x4e\x0c\x13\x4d\x9c\x73\xf3\x61\x25\x5b\x30\x0a\xcd\xec\x1b\x0c\x8a\x72\x62\xd8\x0b\xed\x41\x74\x46\x6b\xf0\x10\xd0\x26\xd5\x66\xcf\x29\x86\x46\x34\x4e\xb6\x17\x8d\xd7\xb4\x14\x8a\x86\x1a\xf8\x23\x08\xe2\xb5\x88\x72\xc8\x87\xef\x24\x9f\xac\xb5\xe0\x5b\xe3\xf1\x5c\xda\x90\xfa\x37\xce\x08\xd4\x0f\x14\x0c\x46\x2a\xce\xf8\xf9\xdd\x72\x91\xc7\xc7\xae\x67\x58\x48\x13\x95\x6e\x6c\xee\xd2\xc6\x7c\x34\x42\x26\xe0\x6a\x58\x59\x96\x80\xa6\x49\xf7\x1a\x96\xc1\xef\x87\x47\xfb\xe1\x89\xac\x09\x37\x67\xcc\x7d\xf7\x3a\x32\x6e\x05\x25\xce\x24\x70\x52\xdc\xaf\x36\x08\x49\x0b\x8b\x54\x1b\x21\x3f\xa2\x69\xe2\x59\xdf\xf4\xce\x97\xd3\xc4\xcb\xef\x9f\x5b\x65\x06\x2f\xac\x62\x47\x56\xa3\x1a\xbe\xeb\x81\xc0\x01\xa1\xfd\x97\xcd\x17\xdf\x89\x6f\xad\xbf\x0f\xe3\x73\xa6\xc7\xd0\xfc\x1d\xd6\x25\xe3\x86\x2a\x0c\x52\x89\x0d\x2b\xf0\x0f\xbf\xfd\x54\x93\x0d\xfd\xd2\x25\x6f\xf6\x33\xcb\x95\xd0\xa2\x34\xd9\x51\x22\x68\x43\x94\xf9\xbf\x0d\x9f\x36\xea\xf3\xb5\xe7\x79\x9d\x00\x6d\x8a\x81\xe3\x1f\xfd\xc3\x2f\x7b\x49\x3f\x23\xb8\x09\x32\x11\x38\x0b\xb3\x10\x38\x1b\x28\x98\xdf\x52\xd6\x14\xf4\x15\xc3\x7c\x3c\xff\x4b\x2e\x88\xc1\x0e\xa9\x21\xfb\x6c\x6f\xa1\x1c\x4a\x70\x27\xa1\x90\xbb\xe9\xf0\x5c\x10\xd6\x14\x5f\x8e\x86\x6a\xdd\x78\x67\xee\x54\x28\xa8\xce\x15\x93\x56\x7a\x5f\x93\xe0\x22\x50\xe8\xe1\x76\x7a\x81\x6f\xa4\x29\xa5\x74\x68\xd8\xf1\xfa\xbe\x57\x2a\xd1\x7b\x1d\x28\xcf\xf3\x70\x6a\xf0\x85\x30\xba\x1f\x36\xb5\x6d\x7f\xa3\x06\xb7\xd7\x70\x38\xef\x65\xc3\xf5\xb5\xd7\xfd\xbc\x22\xe8\x54\x78\xd3\xd9\x7d\xbf\x5a\xbb\x3b\xef\x51\x74\xb2\x01\x7b\xcd\x5d\x73\x92\x44\xd1\xc6\xc4\x06\xa6\x5d\xdf\xf3\xbe\xf5\x77\x5d\x74\x3a\xcf\xb2\xc6\xce\x2f\xf4\x85\x
|
|
|
|
|
|
|
|
func themesKendallStyleCssBytes() ([]byte, error) {
|
|
|
|
return bindataRead(
|
|
|
|
_themesKendallStyleCss,
|
|
|
|
"themes/kendall/style.css",
|
|
|
|
)
|
|
|
|
}
|
|
|
|
|
|
|
|
func themesKendallStyleCss() (*asset, error) {
|
|
|
|
bytes, err := themesKendallStyleCssBytes()
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
2021-02-07 21:10:42 +01:00
|
|
|
info := bindataFileInfo{name: "themes/kendall/style.css", size: 5262, mode: os.FileMode(420), modTime: time.Unix(1612707068, 0)}
|
2018-05-10 23:46:04 +02:00
|
|
|
a := &asset{bytes: bytes, info: info}
|
|
|
|
return a, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
var _themesKendallPrintCss = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x7c\x54\xd1\x6e\xdb\x30\x0c\x7c\xf7\x57\x68\x08\x86\xbe\x44\x46\x32\x2c\xdb\xa2\x7e\xca\xb0\x07\xca\xa2\x6d\x35\xb2\xa8\x49\x74\x9b\xae\xe8\xbf\x0f\x96\xec\xd4\x49\xbb\x3d\xc6\x77\xe4\x51\x77\x64\x34\x99\x67\xf1\x52\x09\xd1\x92\x67\x99\xec\x1f\x54\xa2\x3e\x1e\x70\xb8\xaf\x84\x90\x4f\xa8\x4f\x96\x65\x88\xd6\xb3\x6c\xc8\x51\x94\x60\x1e\xc6\xc4\x4a\xe0\x19\x1a\xbe\xaf\x5e\xab\x0a\x7e\xf6\x11\xdb\x5f\x0a\x5a\xc6\x98\x7b\x35\xe4\x19\x3d\x2b\xe1\xc9\xa3\xf8\x64\x87\x40\x91\xc1\x17\xfa\x26\xf4\xc4\x34\xd1\x8c\x4d\xc1\xc1\x73\xa1\x65\xac\xd6\x74\xce\x1d\x06\x88\x9d\xf5\x52\x13\x33\x0d\x4a\xc8\xfd\x2e\x9c\x33\x43\x3b\x6a\x4e\xbf\x47\x62\xdc\x56\x1b\x34\x63\x03\x6c\xc9\x6f\xab\x0d\x3c\x41\x34\x69\x5b\xd5\x93\x38\x34\x2c\x2d\xe3\xb0\xad\xea\x30\x6a\x67\x17\x56\x9d\x4e\xd6\xb9\x89\x65\x3d\x63\xc4\xc4\x29\xcb\x05\xe8\x50\xea\x88\x70\x92\xd6\x27\x6b\x50\x09\x78\x24\x6b\xca\x50\x0d\x39\x99\x06\x79\x98\x98\x4f\xd6\x70\xaf\xc4\xd7\xdd\xe7\xfb\x5c\x67\x8c\xf5\x9d\x12\x3b\xb1\x3f\xcc\x13\x2e\xf4\xef\x2b\xfa\xb7\xff\xd0\xcb\x48\x62\x29\xa3\xb6\x4d\xc8\x72\x7f\x35\xe3\x2d\xb8\xb2\x88\x29\x5c\xfc\x79\xe7\xdb\x22\xf2\xe6\xd4\xca\x5d\x25\x76\x1f\x94\xc8\x2f\xb3\xd5\xb3\xa3\x4a\x63\x4b\xf1\xca\xed\xf9\x53\x6e\xa5\xa1\x39\x75\x91\x46\x6f\x56\x31\xce\xa5\xa2\x36\x98\x9a\x68\xc3\x1c\xd1\xdb\x10\xd7\x40\xfd\x40\x7a\xfa\xc4\x60\x5d\xc9\x43\x53\x34\x18\x95\xd8\x87\xb3\x48\xe4\xac\x11\x1b\xc4\xdc\xfb\x26\xcf\xd5\x2f\x51\x07\xf0\xe8\x64\x8f\x30\x99\x7c\x0b\x7a\x18\xf0\xdd\xdb\x57\x81\x1c\x8a\x81\x8b\xf2\xf2\x96\x8f\x14\x2e\x37\xb3\xce\xf3\x2a\x80\xdc\x3e\xef\x33\x98\x0e\x6f\x3d\x9f\x00\x67\x13\xcb\xc9\xb8\x90\x17\xf5\xe5\x9d\xf4\xbf\x26\x3d\x84\xf3\x65\x79\x6e\xbb\x94\x13\xbc\xba\xc0\xbb\xbb\x5c\x4d\xc9\xe6\xe4\x04\xe8\x44\x6e\xe4\x2c\x90\x57\xe7\x47\x99\x3b\xda\xae\xe7\x59\xcb\x61\xcb\xd3\x4e\x15\xa4\xc7\x15\x34\xef\xf3\x6e\x6d\x55\x09\x88\x23\xf8\x14\x20\xe2\x74\xe6\x0b\x28\x73\xdb\xf2\xcf\xa1\xc4\xe6\x78\x3c\xae\xb0\xe5\x94\x8a\x4c\xa0\xbc\xee\x12\x1f\xd1\x73\xba\xb8\xf0\x5a\xfd\x0d\x00\x00\xff\xff\xc7\x67\x42\x6e\xa2\x04\x00\x00")
|
|
|
|
|
|
|
|
func themesKendallPrintCssBytes() ([]byte, error) {
|
|
|
|
return bindataRead(
|
|
|
|
_themesKendallPrintCss,
|
|
|
|
"themes/kendall/print.css",
|
|
|
|
)
|
|
|
|
}
|
|
|
|
|
|
|
|
func themesKendallPrintCss() (*asset, error) {
|
|
|
|
bytes, err := themesKendallPrintCssBytes()
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
2021-02-07 21:10:42 +01:00
|
|
|
info := bindataFileInfo{name: "themes/kendall/print.css", size: 1186, mode: os.FileMode(420), modTime: time.Unix(1612727562, 0)}
|
2018-05-10 23:46:04 +02:00
|
|
|
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){
|
|
|
|
"themes/kendall/resume.template": themesKendallResumeTemplate,
|
2021-01-31 16:19:34 +01:00
|
|
|
"themes/kendall/style.css": themesKendallStyleCss,
|
|
|
|
"themes/kendall/print.css": themesKendallPrintCss,
|
2018-05-10 23:46:04 +02: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 {
|
|
|
|
Func func() (*asset, error)
|
|
|
|
Children map[string]*bintree
|
|
|
|
}
|
2021-01-31 16:19:34 +01:00
|
|
|
|
2018-05-10 23:46:04 +02:00
|
|
|
var _bintree = &bintree{nil, map[string]*bintree{
|
|
|
|
"themes": &bintree{nil, map[string]*bintree{
|
|
|
|
"kendall": &bintree{nil, map[string]*bintree{
|
2021-01-31 16:19:34 +01:00
|
|
|
"print.css": &bintree{themesKendallPrintCss, map[string]*bintree{}},
|
2018-05-10 23:46:04 +02:00
|
|
|
"resume.template": &bintree{themesKendallResumeTemplate, map[string]*bintree{}},
|
2021-01-31 16:19:34 +01:00
|
|
|
"style.css": &bintree{themesKendallStyleCss, map[string]*bintree{}},
|
2018-05-10 23:46:04 +02:00
|
|
|
}},
|
|
|
|
}},
|
|
|
|
}}
|
|
|
|
|
|
|
|
// 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, "/")...)...)
|
|
|
|
}
|