github.com/philhug/dnscontrol@v0.2.4-0.20180625181521-921fa9849001/pkg/js/static.go (about) 1 // Code generated by "esc "; DO NOT EDIT. 2 3 package js 4 5 import ( 6 "bytes" 7 "compress/gzip" 8 "encoding/base64" 9 "io/ioutil" 10 "net/http" 11 "os" 12 "path" 13 "sync" 14 "time" 15 ) 16 17 type _escLocalFS struct{} 18 19 var _escLocal _escLocalFS 20 21 type _escStaticFS struct{} 22 23 var _escStatic _escStaticFS 24 25 type _escDirectory struct { 26 fs http.FileSystem 27 name string 28 } 29 30 type _escFile struct { 31 compressed string 32 size int64 33 modtime int64 34 local string 35 isDir bool 36 37 once sync.Once 38 data []byte 39 name string 40 } 41 42 func (_escLocalFS) Open(name string) (http.File, error) { 43 f, present := _escData[path.Clean(name)] 44 if !present { 45 return nil, os.ErrNotExist 46 } 47 return os.Open(f.local) 48 } 49 50 func (_escStaticFS) prepare(name string) (*_escFile, error) { 51 f, present := _escData[path.Clean(name)] 52 if !present { 53 return nil, os.ErrNotExist 54 } 55 var err error 56 f.once.Do(func() { 57 f.name = path.Base(name) 58 if f.size == 0 { 59 return 60 } 61 var gr *gzip.Reader 62 b64 := base64.NewDecoder(base64.StdEncoding, bytes.NewBufferString(f.compressed)) 63 gr, err = gzip.NewReader(b64) 64 if err != nil { 65 return 66 } 67 f.data, err = ioutil.ReadAll(gr) 68 }) 69 if err != nil { 70 return nil, err 71 } 72 return f, nil 73 } 74 75 func (fs _escStaticFS) Open(name string) (http.File, error) { 76 f, err := fs.prepare(name) 77 if err != nil { 78 return nil, err 79 } 80 return f.File() 81 } 82 83 func (dir _escDirectory) Open(name string) (http.File, error) { 84 return dir.fs.Open(dir.name + name) 85 } 86 87 func (f *_escFile) File() (http.File, error) { 88 type httpFile struct { 89 *bytes.Reader 90 *_escFile 91 } 92 return &httpFile{ 93 Reader: bytes.NewReader(f.data), 94 _escFile: f, 95 }, nil 96 } 97 98 func (f *_escFile) Close() error { 99 return nil 100 } 101 102 func (f *_escFile) Readdir(count int) ([]os.FileInfo, error) { 103 return nil, nil 104 } 105 106 func (f *_escFile) Stat() (os.FileInfo, error) { 107 return f, nil 108 } 109 110 func (f *_escFile) Name() string { 111 return f.name 112 } 113 114 func (f *_escFile) Size() int64 { 115 return f.size 116 } 117 118 func (f *_escFile) Mode() os.FileMode { 119 return 0 120 } 121 122 func (f *_escFile) ModTime() time.Time { 123 return time.Unix(f.modtime, 0) 124 } 125 126 func (f *_escFile) IsDir() bool { 127 return f.isDir 128 } 129 130 func (f *_escFile) Sys() interface{} { 131 return f 132 } 133 134 // _escFS returns a http.Filesystem for the embedded assets. If useLocal is true, 135 // the filesystem's contents are instead used. 136 func _escFS(useLocal bool) http.FileSystem { 137 if useLocal { 138 return _escLocal 139 } 140 return _escStatic 141 } 142 143 // _escDir returns a http.Filesystem for the embedded assets on a given prefix dir. 144 // If useLocal is true, the filesystem's contents are instead used. 145 func _escDir(useLocal bool, name string) http.FileSystem { 146 if useLocal { 147 return _escDirectory{fs: _escLocal, name: name} 148 } 149 return _escDirectory{fs: _escStatic, name: name} 150 } 151 152 // _escFSByte returns the named file from the embedded assets. If useLocal is 153 // true, the filesystem's contents are instead used. 154 func _escFSByte(useLocal bool, name string) ([]byte, error) { 155 if useLocal { 156 f, err := _escLocal.Open(name) 157 if err != nil { 158 return nil, err 159 } 160 b, err := ioutil.ReadAll(f) 161 _ = f.Close() 162 return b, err 163 } 164 f, err := _escStatic.prepare(name) 165 if err != nil { 166 return nil, err 167 } 168 return f.data, nil 169 } 170 171 // _escFSMustByte is the same as _escFSByte, but panics if name is not present. 172 func _escFSMustByte(useLocal bool, name string) []byte { 173 b, err := _escFSByte(useLocal, name) 174 if err != nil { 175 panic(err) 176 } 177 return b 178 } 179 180 // _escFSString is the string version of _escFSByte. 181 func _escFSString(useLocal bool, name string) (string, error) { 182 b, err := _escFSByte(useLocal, name) 183 return string(b), err 184 } 185 186 // _escFSMustString is the string version of _escFSMustByte. 187 func _escFSMustString(useLocal bool, name string) string { 188 return string(_escFSMustByte(useLocal, name)) 189 } 190 191 var _escData = map[string]*_escFile{ 192 193 "/helpers.js": { 194 local: "pkg/js/helpers.js", 195 size: 18327, 196 modtime: 0, 197 compressed: ` 198 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 280 E9whkYR1QP3j3ECy+P8BAAD//1ihD1KXRwAA 281 `, 282 }, 283 284 "/": { 285 isDir: true, 286 local: "pkg/js", 287 }, 288 }