Update dependencies
This commit is contained in:
parent
7ad76273c0
commit
540efa03c4
485 changed files with 57821 additions and 12429 deletions
45
vendor/github.com/tdewolff/minify/v2/html/html.go
generated
vendored
45
vendor/github.com/tdewolff/minify/v2/html/html.go
generated
vendored
|
@ -347,6 +347,10 @@ func (o *Minifier) Minify(m *minify.M, w io.Writer, r io.Reader, _ map[string]st
|
|||
}
|
||||
|
||||
val := attr.AttrVal
|
||||
if attr.Traits&trimAttr != 0 {
|
||||
val = parse.TrimWhitespace(val)
|
||||
val = parse.ReplaceMultipleWhitespace(val)
|
||||
}
|
||||
if len(val) == 0 && (attr.Hash == html.Class ||
|
||||
attr.Hash == html.Dir ||
|
||||
attr.Hash == html.Id ||
|
||||
|
@ -389,6 +393,7 @@ func (o *Minifier) Minify(m *minify.M, w io.Writer, r io.Reader, _ map[string]st
|
|||
|
||||
// CSS and JS minifiers for attribute inline code
|
||||
if attr.Hash == html.Style {
|
||||
val = parse.TrimWhitespace(val)
|
||||
attrMinifyBuffer.Reset()
|
||||
if err := m.MinifyMimetype(cssMimeBytes, attrMinifyBuffer, buffer.NewReader(val), inlineParams); err == nil {
|
||||
val = attrMinifyBuffer.Bytes()
|
||||
|
@ -399,6 +404,7 @@ func (o *Minifier) Minify(m *minify.M, w io.Writer, r io.Reader, _ map[string]st
|
|||
continue
|
||||
}
|
||||
} else if len(attr.Text) > 2 && attr.Text[0] == 'o' && attr.Text[1] == 'n' {
|
||||
val = parse.TrimWhitespace(val)
|
||||
if len(val) >= 11 && parse.EqualFold(val[:11], jsSchemeBytes) {
|
||||
val = val[11:]
|
||||
}
|
||||
|
@ -411,23 +417,26 @@ func (o *Minifier) Minify(m *minify.M, w io.Writer, r io.Reader, _ map[string]st
|
|||
if len(val) == 0 {
|
||||
continue
|
||||
}
|
||||
} else if len(val) > 5 && attr.Traits&urlAttr != 0 { // anchors are already handled
|
||||
if parse.EqualFold(val[:4], httpBytes) {
|
||||
if val[4] == ':' {
|
||||
if m.URL != nil && m.URL.Scheme == "http" {
|
||||
val = val[5:]
|
||||
} else {
|
||||
parse.ToLower(val[:4])
|
||||
}
|
||||
} else if (val[4] == 's' || val[4] == 'S') && val[5] == ':' {
|
||||
if m.URL != nil && m.URL.Scheme == "https" {
|
||||
val = val[6:]
|
||||
} else {
|
||||
parse.ToLower(val[:5])
|
||||
} else if attr.Traits&urlAttr != 0 { // anchors are already handled
|
||||
val = parse.TrimWhitespace(val)
|
||||
if 5 < len(val) {
|
||||
if parse.EqualFold(val[:4], httpBytes) {
|
||||
if val[4] == ':' {
|
||||
if m.URL != nil && m.URL.Scheme == "http" {
|
||||
val = val[5:]
|
||||
} else {
|
||||
parse.ToLower(val[:4])
|
||||
}
|
||||
} else if (val[4] == 's' || val[4] == 'S') && val[5] == ':' {
|
||||
if m.URL != nil && m.URL.Scheme == "https" {
|
||||
val = val[6:]
|
||||
} else {
|
||||
parse.ToLower(val[:5])
|
||||
}
|
||||
}
|
||||
} else if parse.EqualFold(val[:5], dataSchemeBytes) {
|
||||
val = minify.DataURI(m, val)
|
||||
}
|
||||
} else if parse.EqualFold(val[:5], dataSchemeBytes) {
|
||||
val = minify.DataURI(m, val)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -441,8 +450,12 @@ func (o *Minifier) Minify(m *minify.M, w io.Writer, r io.Reader, _ map[string]st
|
|||
if _, err := w.Write(isBytes); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// use double quotes for RDFa attributes
|
||||
isXML := attr.Hash == html.Vocab || attr.Hash == html.Typeof || attr.Hash == html.Property || attr.Hash == html.Resource || attr.Hash == html.Prefix || attr.Hash == html.Content || attr.Hash == html.About || attr.Hash == html.Rev || attr.Hash == html.Datatype || attr.Hash == html.Inlist
|
||||
|
||||
// no quotes if possible, else prefer single or double depending on which occurs more often in value
|
||||
val = html.EscapeAttrVal(&attrByteBuffer, attr.AttrVal, val)
|
||||
val = html.EscapeAttrVal(&attrByteBuffer, attr.AttrVal, val, isXML)
|
||||
if _, err := w.Write(val); err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
19
vendor/github.com/tdewolff/minify/v2/html/table.go
generated
vendored
19
vendor/github.com/tdewolff/minify/v2/html/table.go
generated
vendored
|
@ -2,17 +2,18 @@ package html // import "github.com/tdewolff/minify/html"
|
|||
|
||||
import "github.com/tdewolff/parse/v2/html"
|
||||
|
||||
type traits uint8
|
||||
type traits uint16
|
||||
|
||||
const (
|
||||
rawTag traits = 1 << iota
|
||||
nonPhrasingTag
|
||||
objectTag
|
||||
omitPTag // omit p end tag if it is followed by this start tag
|
||||
keepPTag // keep p end tag if it is followed by this end tag
|
||||
booleanAttr
|
||||
caselessAttr
|
||||
urlAttr
|
||||
omitPTag // omit p end tag if it is followed by this start tag
|
||||
keepPTag // keep p end tag if it is followed by this end tag
|
||||
trimAttr
|
||||
)
|
||||
|
||||
var tagMap = map[html.Hash]traits{
|
||||
|
@ -108,11 +109,14 @@ var attrMap = map[html.Hash]traits{
|
|||
html.Charset: caselessAttr,
|
||||
html.Checked: booleanAttr,
|
||||
html.Cite: urlAttr,
|
||||
html.Class: trimAttr,
|
||||
html.Classid: urlAttr,
|
||||
html.Clear: caselessAttr,
|
||||
html.Codebase: urlAttr,
|
||||
html.Codetype: caselessAttr,
|
||||
html.Color: caselessAttr,
|
||||
html.Cols: trimAttr,
|
||||
html.Colspan: trimAttr,
|
||||
html.Compact: booleanAttr,
|
||||
html.Controls: booleanAttr,
|
||||
html.Data: urlAttr,
|
||||
|
@ -143,7 +147,8 @@ var attrMap = map[html.Hash]traits{
|
|||
html.Link: caselessAttr,
|
||||
html.Longdesc: urlAttr,
|
||||
html.Manifest: urlAttr,
|
||||
html.Media: caselessAttr,
|
||||
html.Maxlength: trimAttr,
|
||||
html.Media: caselessAttr | trimAttr,
|
||||
html.Method: caselessAttr,
|
||||
html.Multiple: booleanAttr,
|
||||
html.Muted: booleanAttr,
|
||||
|
@ -161,6 +166,8 @@ var attrMap = map[html.Hash]traits{
|
|||
html.Required: booleanAttr,
|
||||
html.Rev: caselessAttr,
|
||||
html.Reversed: booleanAttr,
|
||||
html.Rows: trimAttr,
|
||||
html.Rowspan: trimAttr,
|
||||
html.Rules: caselessAttr,
|
||||
html.Scope: caselessAttr,
|
||||
html.Scoped: booleanAttr,
|
||||
|
@ -168,8 +175,12 @@ var attrMap = map[html.Hash]traits{
|
|||
html.Seamless: booleanAttr,
|
||||
html.Selected: booleanAttr,
|
||||
html.Shape: caselessAttr,
|
||||
html.Size: trimAttr,
|
||||
html.Sortable: booleanAttr,
|
||||
html.Span: trimAttr,
|
||||
html.Src: urlAttr,
|
||||
html.Srcset: trimAttr,
|
||||
html.Tabindex: trimAttr,
|
||||
html.Target: caselessAttr,
|
||||
html.Text: caselessAttr,
|
||||
html.Translate: booleanAttr,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue