github.com/segakazzz/buffalo@v0.16.22-0.20210119082501-1f52048d3feb/genny/assets/standard/standard.go (about) 1 package standard 2 3 import ( 4 "strings" 5 "text/template" 6 7 "github.com/gobuffalo/genny/v2" 8 "github.com/gobuffalo/genny/v2/gogen" 9 "github.com/gobuffalo/packr/v2" 10 ) 11 12 // New generator for creating basic asset files 13 func New(opts *Options) (*genny.Generator, error) { 14 g := genny.New() 15 g.Box(packr.New("buffalo:genny:assets:standard", "../standard/templates")) 16 17 data := map[string]interface{}{} 18 h := template.FuncMap{} 19 t := gogen.TemplateTransformer(data, h) 20 g.Transformer(t) 21 22 g.RunFn(func(r *genny.Runner) error { 23 f, err := r.FindFile("templates/application.plush.html") 24 if err != nil { 25 return err 26 } 27 28 s := strings.Replace(f.String(), "</title>", "</title>\n"+bs4, 1) 29 return r.File(genny.NewFileS(f.Name(), s)) 30 }) 31 32 return g, nil 33 } 34 35 const bs4 = `<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">`