html-validate 11.5.4 → 11.5.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/core.js CHANGED
@@ -2948,8 +2948,12 @@ class HtmlElement extends DOMNode {
2948
2948
  return null;
2949
2949
  }
2950
2950
  appendText(text, location) {
2951
- if (typeof text === "object" && "dynamic" in text) {
2952
- text = new DynamicValue(text.dynamic);
2951
+ if (typeof text !== "string") {
2952
+ if ("dynamic" in text) {
2953
+ text = new DynamicValue(text.dynamic);
2954
+ } else {
2955
+ text = new DynamicValue(text.expr);
2956
+ }
2953
2957
  }
2954
2958
  this.childNodes.push(new TextNode(text, location));
2955
2959
  }
@@ -4517,6 +4521,8 @@ const allowlist = /* @__PURE__ */ new Set([
4517
4521
  "img",
4518
4522
  "summary",
4519
4523
  "table",
4524
+ "ul",
4525
+ "ol",
4520
4526
  "td",
4521
4527
  "th"
4522
4528
  ]);
@@ -12841,7 +12847,7 @@ class EventHandler {
12841
12847
  }
12842
12848
 
12843
12849
  const name = "html-validate";
12844
- const version = "11.5.4";
12850
+ const version = "11.5.6";
12845
12851
  const bugs = "https://gitlab.com/html-validate/html-validate/issues/new";
12846
12852
 
12847
12853
  function freeze(src) {
@@ -14812,6 +14818,15 @@ function requireIgnore () {
14812
14818
  : EMPTY
14813
14819
  );
14814
14820
 
14821
+ // > An optional `!` or `^` at the start of a class negates it, so that it
14822
+ // > matches any character not in the set. (gitignore(5), fnmatch(3))
14823
+ // The leading `^` has already been escaped to `\^` by the metacharacter
14824
+ // escaper, so we strip the literal `!` or escaped `^` and emit a single
14825
+ // regex `^` which is the JavaScript negation token.
14826
+ const negateRange = range => range.startsWith('!') || range.startsWith('\\^')
14827
+ ? `^${range.slice(range[0] === '!' ? 1 : 2)}`
14828
+ : range;
14829
+
14815
14830
  // See fixtures #59
14816
14831
  const cleanRangeBackSlash = slashes => {
14817
14832
  const {length} = slashes;
@@ -14916,7 +14931,7 @@ function requireIgnore () {
14916
14931
  // > "**/foo/bar" matches file or directory "bar" anywhere that is directly
14917
14932
  // > under directory "foo".
14918
14933
  // Notice that the '*'s have been replaced as '\\*'
14919
- /^\^*\\\*\\\*\\\//,
14934
+ /^\^*(?:\\\*\\\*\\\/)+/,
14920
14935
 
14921
14936
  // '**/foo' <-> 'foo'
14922
14937
  () => '^(?:.*\\/)?'
@@ -15027,7 +15042,7 @@ function requireIgnore () {
15027
15042
  // A normal case, and it is a range notation
15028
15043
  // '[bar]'
15029
15044
  // '[bar\\\\]'
15030
- ? `[${sanitizeRange(range)}${endEscape}]`
15045
+ ? `[${negateRange(sanitizeRange(range))}${endEscape}]`
15031
15046
  // Invalid range notaton
15032
15047
  // '[bar\\]' -> '[bar\\\\]'
15033
15048
  : '[]'