diff --git a/pkg/resources/resources.go b/pkg/resources/resources.go deleted file mode 100644 index fa58c1a..0000000 --- a/pkg/resources/resources.go +++ /dev/null @@ -1,113 +0,0 @@ -// Package resources provides Resources -package resources - -import ( - "html/template" - "io" - "strings" - - "github.com/tkw1536/goprogram/lib/collection" - "golang.org/x/net/html" -) - -// Resources represents resources found inside a "html" file -type Resources struct { - JSModules []string // ") - -// WriteCSS writes all link tags to writer -func (resources *Resources) WriteCSS(writer io.Writer) { - for _, href := range resources.CSS { - writer.Write(openLinkBytes) - writer.Write([]byte(attributeValue(href))) - writer.Write(closeLinkBytes) - } -} - -func (resources *Resources) CSSTemplate() template.HTML { - var buffer strings.Builder - resources.WriteCSS(&buffer) - return template.HTML(buffer.String()) -} - -// WriteJS writes all JavaScript tags to writer -func (resources *Resources) WriteJS(writer io.Writer) { - for _, href := range resources.JSModules { - writer.Write(openModuleBytes) - writer.Write([]byte(attributeValue(href))) - writer.Write(closeScriptBytes) - } - for _, href := range resources.JSRegular { - writer.Write(openRegularBytes) - writer.Write([]byte(attributeValue(href))) - writer.Write(closeScriptBytes) - } -} - -func (resources *Resources) JSTemplate() template.HTML { - var buffer strings.Builder - resources.WriteJS(&buffer) - return template.HTML(buffer.String()) -} - -// Parse parses resources from reader -func Parse(r io.Reader) (src Resources) { - z := html.NewTokenizer(r) - for { - // read the next token - z.Next() - token := z.Token() - - switch { - case token.Type == html.ErrorToken: - return - - case token.Type == html.StartTagToken && token.Data == "script": - // - - - - - - `)) - - var builder strings.Builder - builder.WriteString("css: ") - resources.WriteCSS(&builder) - - builder.WriteString("\njs: ") - resources.WriteJS(&builder) - fmt.Println(builder.String()) - - // Output: css: - // js: