You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

338 lines
20 KiB

// Code generated by go-bindata.
// sources:
// archetypes/gallery.md
// layouts/gallery/single.html
// layouts/partials/gallery.html
// layouts/shortcodes/comments.html
// layouts/shortcodes/thumb.html
// DO NOT EDIT!
package themeadditions
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 _archetypesGalleryMd = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x6c\xce\xb1\x0a\xc2\x30\x14\x85\xe1\xfd\x3c\xc5\xe1\xae\x01\x1b\x70\xce\x2c\x0e\x3e\x41\xe9\x70\xb1\xd7\x18\x88\xa6\xa4\xd7\xc1\xb7\x97\x3a\x08\x42\xe7\xf3\xc1\xf9\x43\x08\xf0\xe2\xd5\x98\x28\x02\xd7\xbc\x32\x71\x04\x29\x59\x6b\xb5\xfe\x16\x4c\xb8\xaa\x5b\x6e\xbd\xd8\xde\x38\x77\xbd\x39\x13\xbd\xbf\x0c\x18\x97\x7b\xf3\xb6\x4e\x90\xe1\x61\x73\xd1\xe1\x7c\x39\xc5\x18\x0f\xcb\x33\xcb\xf6\xa1\xcc\xdd\xd4\xf9\x65\xf2\xaf\x8e\x3f\x25\xc0\x56\x86\x4f\x00\x00\x00\xff\xff\x44\xfe\x2f\x04\x9f\x00\x00\x00")
func archetypesGalleryMdBytes() ([]byte, error) {
return bindataRead(
_archetypesGalleryMd,
"archetypes/gallery.md",
)
}
func archetypesGalleryMd() (*asset, error) {
bytes, err := archetypesGalleryMdBytes()
if err != nil {
return nil, err
}
info := bindataFileInfo{name: "archetypes/gallery.md", size: 159, mode: os.FileMode(420), modTime: time.Unix(1504974306, 0)}
a := &asset{bytes: bytes, info: info}
return a, nil
}
var _layoutsGallerySingleHtml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x74\x90\x41\x4e\x03\x31\x0c\x45\xf7\x39\x85\x95\x15\x6c\x92\x0b\xa4\x73\x06\xa4\x1e\x00\x99\x89\xcb\x58\x4a\xec\x92\xb8\x95\xaa\xaa\x77\x47\x85\x50\x0d\x83\xd8\x26\xff\x3d\xeb\xff\xeb\x15\x8e\xd8\x8c\xb1\x80\x5f\x08\x73\x58\xac\x16\x0f\x01\x6e\x37\xe7\xd2\x9b\xe6\xcb\xe4\x52\xe6\x33\x70\xde\xf9\x59\xc5\x90\x85\x9a\x9f\x1c\x00\xc0\x16\xa6\xb6\xc6\xef\x89\xd4\x69\x36\x56\xf9\xc2\x2b\xb2\x78\x98\x0b\xf6\xbe\xf3\x7a\xb2\x87\x67\xeb\x7a\xc7\x52\xa8\x5d\xb6\xb2\x11\xe3\x03\xa0\x64\x78\x12\x35\x08\x2f\xd8\xb0\xf6\x20\x3a\x6b\xad\x24\xf6\x0c\x61\xcf\x46\x3f\xef\x99\xfb\xc7\xa9\xef\x17\x6d\x26\x58\x69\x6d\x1a\x36\xa3\x7a\x2c\x68\x04\xfe\x95\xc5\xa8\x09\x96\xf8\x4d\xfd\x73\x9e\x24\x3f\xda\xc5\x51\xef\xef\x1c\x07\x55\xfb\x3d\x47\x8a\x99\xcf\x93\x4b\x71\x8c\x1a\xef\x7f\x93\xfb\x0c\x00\x00\xff\xff\xe9\xea\x1f\x1a\x81\x01\x00\x00")
func layoutsGallerySingleHtmlBytes() ([]byte, error) {
return bindataRead(
_layoutsGallerySingleHtml,
"layouts/gallery/single.html",
)
}
func layoutsGallerySingleHtml() (*asset, error) {
bytes, err := layoutsGallerySingleHtmlBytes()
if err != nil {
return nil, err
}
info := bindataFileInfo{name: "layouts/gallery/single.html", size: 385, mode: os.FileMode(420), modTime: time.Unix(1504974306, 0)}
a := &asset{bytes: bytes, info: info}
return a, nil
}
var _layoutsPartialsGalleryHtml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x9c\x58\x6d\x93\x9b\x38\x12\xfe\x6c\xff\x8a\x2e\x32\x17\x70\x4d\x10\x38\x6f\x77\x65\x1b\x57\x5d\x66\xef\xb2\xa9\xdb\xcb\xe5\x76\x26\xfb\x65\x6b\x6b\x4b\x03\x32\x28\x11\x12\x91\xc4\xcc\x78\x1d\xfe\xfb\x96\x40\xd8\x80\xb1\x27\x1b\xd7\x54\x8d\x68\xb5\x9e\xee\x7e\xd4\xdd\x12\xac\x94\xde\x32\xb2\x9e\x6e\x68\x5a\x4a\x02\xbb\xe9\x44\x93\x07\xed\x63\x46\x53\xbe\x80\x98\x70\x4d\xe4\x72\x3a\xd9\x30\x81\xf5\x02\x18\xd9\xe8\xe5\x74\x92\x63\x99\x52\xbe\x80\xb0\x1e\x3f\xf8\xf7\x34\xd1\xd9\x02\xe6\x61\xf8\xb7\xe5\x74\xa2\x25\xe6\x8a\x6a\x2a\xb8\x5f\x48\x51\x10\xa9\xb7\x0b\xc8\x08\x4d\x33\x0d\x39\xe5\xbe\x1d\xaa\x18\x33\xb2\x84\x9e\x7e\x52\x4a\x6c\x06\x0b\x98\xab\xe5\xb4\x9a\xa2\xda\x6e\xcc\x08\x96\xc6\xb5\x7a\xb0\x80\x5b\xa1\x33\x33\xbb\x0a\xac\xf3\x2b\x2c\x35\x8d\x19\x81\x98\x61\xa5\x22\xa7\x7d\xb4\xff\x7d\xbd\x2d\x88\x5f\x08\xa5\x1d\xa0\x9a\xe4\x2a\x16\x05\xa9\x47\xc6\xbf\xc8\xb9\x65\x22\xfd\x60\x66\xd7\x53\x00\x80\x55\x42\xef\x06\x48\x3e\xe5\x9c\x48\x3b\x6f\x7e\xbb\x1d\xd0\x0d\xa0\x1b\xaa\x19\x81\xaa\xda\xcb\x57\x19\xc1\x09\x91\xc3\xe5\x8d\xb4\xb3\xbe\xd1\x9d\x0f\xf5\xb4\xc1\x73\x3a\xae\x71\x9c\x13\x67\xbd\xdb\x1d\x4c\xad\x82\x6c\x7e\xc0\x59\x05\x0d\x74\xcf\x33\xc2\x93\x9e\x4f\x23\xf1\xe4\x44\xe3\xa1\x3b\x18\x32\x49\x36\x91\x63\xac\xfd\x4c\xd8\x07\x22\x73\xcc\x28\xff\x0c\x55\xe5\x0c\xd7\x27\x58\x93\xc1\xfa\x1a\x43\xd3\x9c\x80\x99\x34\x83\xc8\x35\x50\x3f\x60\x4d\xd0\xbf\x85\xcc\xb1\x06\xe7\x79\x18\xbe\xf6\xc3\xb9\x1f\x3e\xbf\x99\xbf\x5a\x84\x2f\x17\xe1\x2b\x14\x86\xa1\x1f\xfe\x7d\x11\x86\x0e\x54\x95\xdb\x09\xde\xe0\x7c\x28\x6f\x19\x55\x19\x49\x1a\x16\x4e\x80\x39\x35\x31\xc6\xe6\x20\xa6\x00\xf7\x05\xbb\x1d\x5c\x5c\x53\x4d\x60\x11\x01\xaa\x07\x1d\xa2\x3a\x1b\xfb\x01\x4b\x9c\x2b\x14\x63\x4d\x52\x21\x29\x51\x43\xbd\x2e\xa9\x26\xb3\xfc\x83\xea\x18\x2f\x23\x5b\x60\x17\x6c\x47\xd4\xad\x23\x12\xf3\x94\xc0\x05\x7d\x06\x17\x8d\xc3\x8f\x7a\xd5\x8f\x22\xd5\x70\x41\x21\x3c\xa5\xb4\x52\x05\xe6\xeb\xa7\xa9\x5e\xae\x82\x7a\x78\x0a\x6a\x90\x4f\x3d\x0c\x7c\x2a\x2c\xdf\xa4\x8e\x73\x48\xa9\x9a\x76\xf4\x06\x2b\xf2\xf1\xe7\x9f\xa0\xaa\x82\x43\x14\x81\x99\x26\xf0\x15\x4a\xc9\xe8\x1f\x66\x4b\xea\xcd\xbe\x68\xd2\x1d\xff\x55\xbf\x56\x41\x42\xef\x86\x79\x70\x24\x1a\x5f\x6f\xb7\xbf\xf6\xd5\xb2\x9d\x50\xf5\xa5\x54\xd7\x99\x90\xda\x54\xe3\xb9\x44\xd8\x73\x20\xf2\x9c\x70\x5d\x53\xe0\xdf\x4b\x5c\x8c\xa5\xc4\x99\x72\x7b\xd2\xd8\xfc\x5d\x67\x92\xe0\xe4\xa8\xf8\xba\xf0\xce\xfa\xaa\x79\x52\x47\x4c\x7d\x53\xd0\x03\xa5\xb1\x68\x08\xd7\x72\xdb\x6d\x4a\x76\xe2\x8d\x48\x4c\xf2\x4e\xe0\x28\x5b\x7f\xef\x66\x6b\x91\x09\x2d\xea\x4c\x9d\x4c\xcc\xae\xaa\x82\x51\xcd\xcb\xdc\xe8\xd4\x63\x40\xa5\x64\xe0\x04\x0e\x7c\x05\x46\x38\x7c\x05\x9c\x24\xe0\xcf\xf7\x2b\x6a\xda\x17\x11\x50\x9e\x90\x07\xf0\xfa\x8b\x66\x1d\xc4\x76\x05\xdd\x00\x17\x75\xf2\xd7\x12\x13\x97\x3d\xdf\x6c\x68\x34\xc7\xa9\xe9\xb3\x49\xe4\x6c\x4a\xc6\xfc\x66\xd6\x81\xf5\x74\x32\x99\xac\x68\x9e\x82\x92\x71\xe4\x04\x39\x49\x28\x0e\xf6\x3e\x98\x46\x68\xd6\xec\x76\xf5\xb3\x79\xdc\xed\xe0\x9e\xea\x0c\x10\x66\x1a\xaa\x0a\x33\xdd\xec\xa8\xd1\xdd\xb3\x6d\x3a\x22\xf6\x63\x5c\x98\xb3\xcd\xcc\x23\x3b\xae\x2a\x27\x68\x6c\x6e\x68\x6a\x65\xeb\x3d\xa4\x15\x40\x55\x59\xc4\x3d\xe0\x2a\xe8\xe8\xdb\x08\x83\x26\x88\xf6\xb1\xb3\x91\x87\x43\xd4\x59\xdb\xfd\xae\x69\xb2\xa9\x30\xca\x90\xce\xca\xfc\xf6\x14\x21\x0f\xf3\x30\x3c\xcb\x4a\x4b\x43\x97\x9a\x4e\x0c\x4c\x11\x2b\xe8\x85\xd8\xf8\xe3\x34\x6c\x19\xa8\x1e\xe6\x63\x1c\xf6\x39\x38\x5d\xe2\x8f\x30\x33\x28\x17\x74\x25\xb8\x26\x5c\x8f\xd4\xcc\x64\xa5\x62\x49\x0b\xbd\x9e\x4e\x36\x25\x8f\xeb\x38\x52\xa2\xff\xc5\x88\xa9\xc7\x77\x26\x59\x3d\x2e\x12\x32\x83\x5d\x0f\xf5\x0e\x4b\x9b\xca\x91\xb9\x41\x75\xa7\xee\x33\xca\x08\x78\x50\xaf\x83\x08\xcc\x3f\x54\x48\x72\x47\x45\xa9\x2c\xf0\x35\xbd\x65\x94\xa7\x33\x18\xe2\x9a\x5f\x8d\x7b\x79\xd9\x47\xed\xc7\x2f\x89\x2e\x25\x6f\x34\x0f\x7a\x26\x0d\x6a\xc7\x4c\x65\x40\x04\x89\x88\x4b\x63\x0d\x7d\x29\x89\xdc\x5e\x13\x46\x62\x2d\xa4\xe7\x34\x04\xa3\xa6\x80\x66\x68\x43\xa5\x6a\x23\xbe\xca\x28\x4b\x96\xd3\x49\x3d\x87\x0a\x2c\x09\x6f\xa7\x50\x7d\x51\x43\x39\xe5\x3f\x36\x97\xbf\xa8\x31\x84\
func layoutsPartialsGalleryHtmlBytes() ([]byte, error) {
return bindataRead(
_layoutsPartialsGalleryHtml,
"layouts/partials/gallery.html",
)
}
func layoutsPartialsGalleryHtml() (*asset, error) {
bytes, err := layoutsPartialsGalleryHtmlBytes()
if err != nil {
return nil, err
}
info := bindataFileInfo{name: "layouts/partials/gallery.html", size: 5826, mode: os.FileMode(420), modTime: time.Unix(1504974306, 0)}
a := &asset{bytes: bytes, info: info}
return a, nil
}
var _layoutsShortcodesCommentsHtml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\x93\xc1\x6e\xe2\x30\x10\x86\xef\x79\x0a\xcb\x7b\x48\x22\x21\x73\x5f\x12\x2e\xbb\xab\x45\x15\x94\xaa\xe4\xd0\x6b\x9a\x4c\xc0\x52\xb0\xc3\x78\x6c\x82\x50\xde\xbd\x02\x11\x50\x09\x0d\xad\xaa\xfe\x47\x6b\xc6\xff\xcc\x7c\x33\x91\xc9\x50\x56\x34\xf6\xd8\x95\xb6\x52\xe5\x7a\x2b\xb4\x2a\x75\x9a\xb3\x98\x15\x56\x65\x24\xb5\x62\x41\xc8\xf6\x9d\xe8\x56\x08\x05\x82\x59\xfd\xd1\xeb\x35\x28\x32\x41\x38\xea\x84\x36\x23\xaf\xf3\x76\xfe\xbc\x93\xdf\xe3\xe5\x52\x64\xf5\x0a\x59\xcc\x14\x6c\xd9\xcb\x6c\x3a\x21\xaa\x9e\x61\x63\xc1\xd0\x2d\xe3\x56\xf5\x0a\x85\xae\x40\x05\xfc\xff\xbf\x84\x0f\x18\x17\xc3\xec\xe4\xc7\xef\xa5\x7d\x6d\x1a\xad\x72\x9d\xd9\xc3\xff\x62\x63\x01\x77\x0b\x28\x21\x23\x8d\x01\xff\x75\xf1\x15\x52\x29\xc0\x49\x32\x9b\xb2\xf8\x68\x85\x60\x2a\xad\x0c\x24\x50\xd3\xc7\x45\x35\xfd\xf5\x1a\x50\xf9\x4d\x06\x5d\x04\x27\xde\xc6\xbe\xae\x25\x9d\xe6\xff\xae\x51\x70\xd4\xd7\x2b\x38\x12\x15\x82\x03\x45\x7f\xa1\x48\x6d\xd9\xcb\xe0\xdb\xec\xfc\xa7\xf9\x22\xf1\x07\xcc\xbf\xc0\xf3\x07\x8c\xd0\xc2\x9d\xec\xe3\x48\x1e\x16\xf3\x47\x61\x08\xa5\x5a\xca\x62\x17\xec\x39\x41\x4d\xfc\xf7\xb1\x09\x4a\x71\x09\xd7\xa8\xfc\x43\x40\x8a\x90\xfa\xa1\x70\x69\x69\xa1\x09\x7f\x66\x55\x3e\x71\x40\xad\x9a\x1b\x58\xa3\x61\x7b\xcf\x51\x2e\x1d\x93\x79\xcc\xcf\x3b\x36\x8e\x86\xb9\x74\x63\xcf\x7b\x0b\x00\x00\xff\xff\xe4\x8c\x03\x32\xf4\x03\x00\x00")
func layoutsShortcodesCommentsHtmlBytes() ([]byte, error) {
return bindataRead(
_layoutsShortcodesCommentsHtml,
"layouts/shortcodes/comments.html",
)
}
func layoutsShortcodesCommentsHtml() (*asset, error) {
bytes, err := layoutsShortcodesCommentsHtmlBytes()
if err != nil {
return nil, err
}
info := bindataFileInfo{name: "layouts/shortcodes/comments.html", size: 1012, mode: os.FileMode(420), modTime: time.Unix(1504974306, 0)}
a := &asset{bytes: bytes, info: info}
return a, nil
}
var _layoutsShortcodesThumbHtml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xc4\x90\xcf\x6e\x83\x30\x0c\xc6\xef\x3c\x85\x65\xed\xd0\x1e\x5a\x3a\xa9\xa7\x09\xb8\xee\x31\xa6\x14\x0c\x44\x33\x81\x11\x77\xad\x14\xf9\xdd\xa7\xa4\xac\xff\xa4\x9d\x77\x89\x64\xe7\xfb\x3e\xff\xec\x10\xe0\xa5\xb5\x4c\xce\x0c\x04\x6f\x25\x6c\xdf\x49\x00\x7f\x3b\x08\x1b\xd5\x2c\x6a\xe8\x2c\xf1\xdb\x1f\x0f\x5e\xe6\x3b\xcb\xca\x1f\x0f\xb0\x62\x72\xb7\xde\x1a\xf6\x6b\x50\xcd\x8a\x29\x3a\x6d\x0b\xf4\x05\xab\x4b\xae\x61\xdb\x39\x5c\x03\x32\xb5\x82\xa0\x5a\xb3\xf1\xbe\x4c\xa5\x1d\x3a\x0c\x81\xd8\x53\xf4\x3c\x1b\x66\xdb\xf5\x82\x57\x43\x2a\x17\x87\x6b\x40\xb5\xba\xcd\x4a\xac\xb8\x1d\xa6\x3d\x26\x8c\x6f\xdb\xd0\x08\x7e\xae\x4b\xcc\x07\x6a\xac\xc9\xb3\x10\x36\x70\xb2\xd2\x2f\xeb\x9e\x6c\x23\x3d\xaa\x86\xb0\x8d\x4f\x64\x50\x7d\xdd\xed\x52\xb8\xea\x39\x84\x3b\x71\x4f\x0b\xca\x83\x7a\x91\xe6\x0f\xf7\xdc\xa8\x62\x56\x8f\x4e\xe6\x91\x3d\x18\xe6\xf1\xd4\x1e\x99\x7d\x3d\x13\xb9\xac\x2a\xf2\x84\x96\xd0\xd3\xde\x91\xd6\x40\x3f\x53\x7b\x45\x7d\xc8\x53\x45\x10\x33\x77\x24\x25\x7e\x1c\xd8\xb8\x4f\xac\x0a\x3b\x74\xff\xb7\x5c\x08\xf7\xa3\x6a\x33\x89\x1d\x5d\x3c\xbb\x58\x61\x2a\x31\xc5\xe0\xe2\xff\x5b\x6d\x58\x9e\xb5\x79\x55\xe4\x26\x9e\xe6\x52\x16\xf9\x54\x65\x3f\x01\x00\x00\xff\xff\xca\x5c\x71\xf7\xad\x02\x00\x00")
func layoutsShortcodesThumbHtmlBytes() ([]byte, error) {
return bindataRead(
_layoutsShortcodesThumbHtml,
"layouts/shortcodes/thumb.html",
)
}
func layoutsShortcodesThumbHtml() (*asset, error) {
bytes, err := layoutsShortcodesThumbHtmlBytes()
if err != nil {
return nil, err
}
info := bindataFileInfo{name: "layouts/shortcodes/thumb.html", size: 685, mode: os.FileMode(420), modTime: time.Unix(1505244603, 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){
"archetypes/gallery.md": archetypesGalleryMd,
"layouts/gallery/single.html": layoutsGallerySingleHtml,
"layouts/partials/gallery.html": layoutsPartialsGalleryHtml,
"layouts/shortcodes/comments.html": layoutsShortcodesCommentsHtml,
"layouts/shortcodes/thumb.html": layoutsShortcodesThumbHtml,
}
// 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{
"archetypes": &bintree{nil, map[string]*bintree{
"gallery.md": &bintree{archetypesGalleryMd, map[string]*bintree{}},
}},
"layouts": &bintree{nil, map[string]*bintree{
"gallery": &bintree{nil, map[string]*bintree{
"single.html": &bintree{layoutsGallerySingleHtml, map[string]*bintree{}},
}},
"partials": &bintree{nil, map[string]*bintree{
"gallery.html": &bintree{layoutsPartialsGalleryHtml, map[string]*bintree{}},
}},
"shortcodes": &bintree{nil, map[string]*bintree{
"comments.html": &bintree{layoutsShortcodesCommentsHtml, map[string]*bintree{}},
"thumb.html": &bintree{layoutsShortcodesThumbHtml, 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, "/")...)...)
}