html-validate 5.3.0 → 6.0.0

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.
Files changed (41) hide show
  1. package/CHANGELOG.md +71 -0
  2. package/dist/cjs/browser.js +2 -6
  3. package/dist/cjs/browser.js.map +1 -1
  4. package/dist/cjs/cli.js +53 -28
  5. package/dist/cjs/cli.js.map +1 -1
  6. package/dist/cjs/core.d.ts +21 -7
  7. package/dist/cjs/core.js +618 -351
  8. package/dist/cjs/core.js.map +1 -1
  9. package/dist/cjs/html-validate.js +9 -9
  10. package/dist/cjs/html-validate.js.map +1 -1
  11. package/dist/cjs/index.d.ts +15 -2
  12. package/dist/cjs/index.js +2 -6
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/cjs/{matchers.d.ts → jest-lib.d.ts} +2 -4
  15. package/dist/cjs/{matchers.js → jest-lib.js} +125 -87
  16. package/dist/cjs/jest-lib.js.map +1 -0
  17. package/dist/cjs/jest.d.ts +4 -0
  18. package/dist/cjs/jest.js +17 -0
  19. package/dist/cjs/jest.js.map +1 -0
  20. package/dist/cjs/test-utils.js +1 -1
  21. package/dist/es/cli.js +34 -9
  22. package/dist/es/cli.js.map +1 -1
  23. package/dist/es/core.d.ts +21 -7
  24. package/dist/es/core.js +582 -315
  25. package/dist/es/core.js.map +1 -1
  26. package/dist/es/html-validate.js +1 -1
  27. package/dist/es/html-validate.js.map +1 -1
  28. package/dist/es/index.d.ts +15 -2
  29. package/dist/es/{matchers.d.ts → jest-lib.d.ts} +2 -4
  30. package/dist/es/{matchers.js → jest-lib.js} +120 -82
  31. package/dist/es/jest-lib.js.map +1 -0
  32. package/dist/es/jest.d.ts +4 -0
  33. package/dist/es/jest.js +16 -0
  34. package/dist/es/jest.js.map +1 -0
  35. package/dist/schema/elements.json +43 -5
  36. package/elements/html5.json +940 -290
  37. package/jest.d.ts +1 -1
  38. package/jest.js +1 -1
  39. package/package.json +30 -28
  40. package/dist/cjs/matchers.js.map +0 -1
  41. package/dist/es/matchers.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,76 @@
1
1
  # html-validate changelog
2
2
 
3
+ ## [6.0.0](https://gitlab.com/html-validate/html-validate/compare/v5.5.0...v6.0.0) (2021-09-26)
4
+
5
+ ### ⚠ BREAKING CHANGES
6
+
7
+ - **htmlvalidate:** This change only affects API users, the CLI tool continues to
8
+ work as before.
9
+
10
+ The default configuration loader has changed from `FileSystemConfigLoader` to
11
+ `StaticConfigLoader`, i.e. the directory traversal looking for
12
+ `.htmlvalidate.json` configuration files must now be explicitly enabled.
13
+
14
+ See (MIGRATION.md)[https://html-validate.org/migration/index.html] for details.
15
+
16
+ - **event:** `ConfigReadyEvent` passes `ResolvedConfig` instance instead of `ConfigData`
17
+ - **meta:** `MetaElement.attribute` has changed from `string[]` to
18
+ `MetaAttribute[]` and both `requiredAttributes` and `deprecatedAttributes` has
19
+ been merged into object. This only affects API usage, primarily custom rules
20
+ accessing attribute metadata.See `MIGRATION.md` for details.
21
+
22
+ The old format is deprecated but is internally converted as to not break user
23
+ configuration. For compatibility it will probably be around for quite a while
24
+ but users should try to migrate as soon as possible.
25
+
26
+ ### Features
27
+
28
+ - bump required node version to 12.22 ([80f3399](https://gitlab.com/html-validate/html-validate/commit/80f3399a3f863a81fcb505a4d0763bb8cffbbdeb))
29
+ - **elements:** migrate bundled html5 element metadata to new attribute syntax ([6132b82](https://gitlab.com/html-validate/html-validate/commit/6132b829e085689bd4d07aaf072e100609a950bd))
30
+ - **event:** `ConfigReadyEvent` passes `ResolvedConfig` instance instead of `ConfigData` ([5808a6b](https://gitlab.com/html-validate/html-validate/commit/5808a6b5ad3473f39b850778c1ae46d147abf1f6))
31
+ - **htmlvalidate:** use `StaticConfigLoader` by default ([bb94341](https://gitlab.com/html-validate/html-validate/commit/bb94341e411a40745d36362be37e0984420c6771))
32
+ - **meta:** add new list property to `MetaAttribute` ([4c1e3c9](https://gitlab.com/html-validate/html-validate/commit/4c1e3c97e741710e30765f9b3519b586462a2b87))
33
+ - **meta:** extend element attribute metadata ([6506aa6](https://gitlab.com/html-validate/html-validate/commit/6506aa6f109a5cb614d6e2817e4d26322758096b)), closes [#71](https://gitlab.com/html-validate/html-validate/issues/71)
34
+
35
+ ### Dependency upgrades
36
+
37
+ - **deps:** update dependency espree to v9 ([3e0ea96](https://gitlab.com/html-validate/html-validate/commit/3e0ea96a4f8fd76db7a1113ff6ca8ea29edd62d9))
38
+
39
+ ### [4.14.1](https://gitlab.com/html-validate/html-validate/compare/v4.14.0...v4.14.1) (2021-09-18)
40
+
41
+ ### Bug Fixes
42
+
43
+ - **jest:** handle when `jest-diff` default import is object ([74f9b84](https://gitlab.com/html-validate/html-validate/commit/74f9b8424e0bf5071823e82bfc79d8904025808a))
44
+
45
+ ## [5.5.0](https://gitlab.com/html-validate/html-validate/compare/v5.4.1...v5.5.0) (2021-09-05)
46
+
47
+ ### Features
48
+
49
+ - **dom:** add iterator to `DOMTokenList` ([7bef736](https://gitlab.com/html-validate/html-validate/commit/7bef736bd9902388299e550618192d8465e5f3cc))
50
+ - **rules:** `no-missing-references` handles more aria attributes ([2843680](https://gitlab.com/html-validate/html-validate/commit/2843680da32fbe7c95f91c72d2d7607a381d5992))
51
+ - **rules:** add `minInitialRank` option to `heading-level` ([7f58572](https://gitlab.com/html-validate/html-validate/commit/7f585721fcb8e744863584cbe6e21130ade198eb)), closes [#132](https://gitlab.com/html-validate/html-validate/issues/132)
52
+
53
+ ### Bug Fixes
54
+
55
+ - **jest:** synchronous matchers as long as the passed value is synchronous ([0ede9f7](https://gitlab.com/html-validate/html-validate/commit/0ede9f74f073b3d01fafff455cc3674fa1898b40))
56
+ - **rules:** `no-missing-references` handles attributes with reference lists ([2afcd86](https://gitlab.com/html-validate/html-validate/commit/2afcd86c1ead8eec42819310bae9990e45122b0e)), closes [#133](https://gitlab.com/html-validate/html-validate/issues/133)
57
+
58
+ ### [5.4.1](https://gitlab.com/html-validate/html-validate/compare/v5.4.0...v5.4.1) (2021-08-29)
59
+
60
+ ### Bug Fixes
61
+
62
+ - **meta:** use global meta as base when merging ([9fe3793](https://gitlab.com/html-validate/html-validate/commit/9fe3793b17bd6deb894e5d479ab11a51935829a1)), closes [#60](https://gitlab.com/html-validate/html-validate/issues/60)
63
+
64
+ ## [5.4.0](https://gitlab.com/html-validate/html-validate/compare/v5.3.0...v5.4.0) (2021-08-27)
65
+
66
+ ### Features
67
+
68
+ - **cli:** expand relative paths to absolute paths ([bdc3019](https://gitlab.com/html-validate/html-validate/commit/bdc30197be25c031999e156fd7dcb4f456fc7f0e)), closes [#131](https://gitlab.com/html-validate/html-validate/issues/131)
69
+
70
+ ### Bug Fixes
71
+
72
+ - **cli:** handle absolute paths as input filenames ([c860af6](https://gitlab.com/html-validate/html-validate/commit/c860af66d02bf46e24a11756d5611b4c9b449ccb)), closes [#131](https://gitlab.com/html-validate/html-validate/issues/131)
73
+
3
74
  ## [5.3.0](https://gitlab.com/html-validate/html-validate/compare/v5.2.1...v5.3.0) (2021-08-23)
4
75
 
5
76
  ### Features
@@ -27,9 +27,7 @@ exports.MetaCopyableProperty = core.MetaCopyableProperty;
27
27
  exports.MetaTable = core.MetaTable;
28
28
  Object.defineProperty(exports, 'NodeClosed', {
29
29
  enumerable: true,
30
- get: function () {
31
- return core.NodeClosed;
32
- }
30
+ get: function () { return core.NodeClosed; }
33
31
  });
34
32
  exports.Parser = core.Parser;
35
33
  exports.Reporter = core.Reporter;
@@ -37,9 +35,7 @@ exports.Rule = core.Rule;
37
35
  exports.SchemaValidationError = core.SchemaValidationError;
38
36
  Object.defineProperty(exports, 'Severity', {
39
37
  enumerable: true,
40
- get: function () {
41
- return core.Severity;
42
- }
38
+ get: function () { return core.Severity; }
43
39
  });
44
40
  exports.StaticConfigLoader = core.StaticConfigLoader;
45
41
  exports.TemplateExtractor = core.TemplateExtractor;
@@ -1 +1 @@
1
- {"version":3,"file":"browser.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"browser.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/cjs/cli.js CHANGED
@@ -26,17 +26,25 @@ var prompts__default = /*#__PURE__*/_interopDefaultLegacy(prompts);
26
26
 
27
27
  const DEFAULT_EXTENSIONS = ["html"];
28
28
  function isDirectory(filename) {
29
- const st = fs__default['default'].statSync(filename);
29
+ const st = fs__default["default"].statSync(filename);
30
30
  return st.isDirectory();
31
31
  }
32
+ function join(stem, filename) {
33
+ if (path__default["default"].isAbsolute(filename)) {
34
+ return path__default["default"].normalize(filename);
35
+ }
36
+ else {
37
+ return path__default["default"].normalize(path__default["default"].join(stem, filename));
38
+ }
39
+ }
32
40
  function directoryPattern(extensions) {
33
41
  switch (extensions.length) {
34
42
  case 0:
35
43
  return "**";
36
44
  case 1:
37
- return path__default['default'].join("**", `*.${extensions[0]}`);
45
+ return path__default["default"].join("**", `*.${extensions[0]}`);
38
46
  default:
39
- return path__default['default'].join("**", `*.{${extensions.join(",")}}`);
47
+ return path__default["default"].join("**", `*.{${extensions.join(",")}}`);
40
48
  }
41
49
  }
42
50
  /**
@@ -52,15 +60,15 @@ function expandFiles(patterns, options) {
52
60
  result.push("/dev/stdin");
53
61
  return result;
54
62
  }
55
- for (const filename of glob__default['default'].sync(pattern, { cwd })) {
63
+ for (const filename of glob__default["default"].sync(pattern, { cwd })) {
56
64
  /* if file is a directory recursively expand files from it */
57
- const fullpath = path__default['default'].join(cwd, filename);
65
+ const fullpath = join(cwd, filename);
58
66
  if (isDirectory(fullpath)) {
59
- const dir = expandFiles([directoryPattern(extensions)], Object.assign(Object.assign({}, options), { cwd: fullpath }));
60
- result = result.concat(dir.map((cur) => path__default['default'].join(filename, cur)));
67
+ const dir = expandFiles([directoryPattern(extensions)], { ...options, cwd: fullpath });
68
+ result = result.concat(dir.map((cur) => join(filename, cur)));
61
69
  continue;
62
70
  }
63
- result.push(filename);
71
+ result.push(fullpath);
64
72
  }
65
73
  return result;
66
74
  }, []);
@@ -72,11 +80,11 @@ function wrap(formatter, dst) {
72
80
  return (results) => {
73
81
  const output = formatter(results);
74
82
  if (dst) {
75
- const dir = path__default['default'].dirname(dst);
76
- if (!fs__default['default'].existsSync(dir)) {
77
- fs__default['default'].mkdirSync(dir, { recursive: true });
83
+ const dir = path__default["default"].dirname(dst);
84
+ if (!fs__default["default"].existsSync(dir)) {
85
+ fs__default["default"].mkdirSync(dir, { recursive: true });
78
86
  }
79
- fs__default['default'].writeFileSync(dst, output, "utf-8");
87
+ fs__default["default"].writeFileSync(dst, output, "utf-8");
80
88
  return "";
81
89
  }
82
90
  else {
@@ -128,11 +136,11 @@ class IsIgnored {
128
136
  this.cacheIgnore.clear();
129
137
  }
130
138
  match(target) {
131
- let current = path__default['default'].dirname(target);
139
+ let current = path__default["default"].dirname(target);
132
140
  // eslint-disable-next-line no-constant-condition
133
141
  while (true) {
134
- const relative = path__default['default'].relative(current, target);
135
- const filename = path__default['default'].join(current, ".htmlvalidateignore");
142
+ const relative = path__default["default"].relative(current, target);
143
+ const filename = path__default["default"].join(current, ".htmlvalidateignore");
136
144
  /* test filename (relative to the ignore file) against the patterns */
137
145
  const ig = this.parseFile(filename);
138
146
  if (ig && ig.ignores(relative)) {
@@ -140,7 +148,7 @@ class IsIgnored {
140
148
  }
141
149
  /* get the parent directory */
142
150
  const child = current;
143
- current = path__default['default'].dirname(current);
151
+ current = path__default["default"].dirname(current);
144
152
  /* stop if this is the root directory */
145
153
  if (current === child) {
146
154
  break;
@@ -152,12 +160,12 @@ class IsIgnored {
152
160
  if (this.cacheIgnore.has(filename)) {
153
161
  return this.cacheIgnore.get(filename);
154
162
  }
155
- if (!fs__default['default'].existsSync(filename)) {
163
+ if (!fs__default["default"].existsSync(filename)) {
156
164
  this.cacheIgnore.set(filename, undefined);
157
165
  return undefined;
158
166
  }
159
- const content = fs__default['default'].readFileSync(filename, "utf-8");
160
- const ig = ignore__default['default']().add(content);
167
+ const content = fs__default["default"].readFileSync(filename, "utf-8");
168
+ const ig = ignore__default["default"]().add(content);
161
169
  this.cacheIgnore.set(filename, ig);
162
170
  return ig;
163
171
  }
@@ -192,13 +200,13 @@ const frameworkConfig = {
192
200
  function addFrameworks(src, frameworks) {
193
201
  let config = src;
194
202
  for (const framework of frameworks) {
195
- config = deepmerge__default['default'](config, frameworkConfig[framework]);
203
+ config = deepmerge__default["default"](config, frameworkConfig[framework]);
196
204
  }
197
205
  return config;
198
206
  }
199
207
  function writeConfig(dst, config) {
200
208
  return new Promise((resolve, reject) => {
201
- fs__default['default'].writeFile(dst, JSON.stringify(config, null, 2), (err) => {
209
+ fs__default["default"].writeFile(dst, JSON.stringify(config, null, 2), (err) => {
202
210
  if (err)
203
211
  reject(err);
204
212
  resolve();
@@ -207,14 +215,14 @@ function writeConfig(dst, config) {
207
215
  }
208
216
  async function init(cwd) {
209
217
  const filename = `${cwd}/.htmlvalidate.json`;
210
- const exists = fs__default['default'].existsSync(filename);
218
+ const exists = fs__default["default"].existsSync(filename);
211
219
  const initialConfig = {
212
220
  elements: ["html5"],
213
221
  extends: ["html-validate:recommended"],
214
222
  };
215
223
  /* confirm overwrite */
216
224
  if (exists) {
217
- const result = await prompts__default['default']({
225
+ const result = await prompts__default["default"]({
218
226
  name: "overwrite",
219
227
  type: "confirm",
220
228
  message: "A .htmlvalidate.json file already exists, do you want to overwrite it?",
@@ -236,7 +244,7 @@ async function init(cwd) {
236
244
  },
237
245
  ];
238
246
  /* prompt user for questions */
239
- const answers = await prompts__default['default'](questions);
247
+ const answers = await prompts__default["default"](questions);
240
248
  /* write configuration to file */
241
249
  let config = initialConfig;
242
250
  config = addFrameworks(config, answers.frameworks);
@@ -259,10 +267,14 @@ class CLI {
259
267
  constructor(options) {
260
268
  this.options = options || {};
261
269
  this.config = this.getConfig();
270
+ this.loader = new core.FileSystemConfigLoader(this.config);
262
271
  this.ignored = new IsIgnored();
263
272
  }
264
273
  /**
265
- * Returns list of files matching patterns and are not ignored.
274
+ * Returns list of files matching patterns and are not ignored. Filenames will
275
+ * have absolute paths.
276
+ *
277
+ * @public
266
278
  */
267
279
  expandFiles(patterns, options = {}) {
268
280
  return expandFiles(patterns, options).filter((filename) => !this.isIgnored(filename));
@@ -293,14 +305,27 @@ class CLI {
293
305
  * or call [[HtmlValidate.flushConfigCache]].
294
306
  */
295
307
  clearCache() {
308
+ this.loader.flushCache();
296
309
  this.ignored.clearCache();
297
310
  }
298
311
  /**
299
312
  * Get HtmlValidate instance with configuration based on options passed to the
300
313
  * constructor.
314
+ *
315
+ * @internal
316
+ */
317
+ getLoader() {
318
+ return this.loader;
319
+ }
320
+ /**
321
+ * Get HtmlValidate instance with configuration based on options passed to the
322
+ * constructor.
323
+ *
324
+ * @public
301
325
  */
302
326
  getValidator() {
303
- return new core.HtmlValidate(this.config);
327
+ const loader = this.getLoader();
328
+ return new core.HtmlValidate(loader);
304
329
  }
305
330
  /**
306
331
  * @internal
@@ -324,9 +349,9 @@ class CLI {
324
349
  config.extends = [];
325
350
  config.rules = rules;
326
351
  }
327
- catch (e) {
352
+ catch (err) {
328
353
  // istanbul ignore next
329
- throw new core.UserError(`Error while parsing --rule option "{${raw}}": ${e.message}.\n`);
354
+ throw new core.UserError(`Error while parsing --rule option "{${raw}}": ${err.message}.\n`);
330
355
  }
331
356
  }
332
357
  return config;
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sources":["../../../src/cli/expand-files.ts","../../../src/cli/formatter.ts","../../../src/cli/is-ignored.ts","../../../src/cli/init.ts","../../../src/cli/cli.ts","../../../src/cli/json.ts"],"sourcesContent":[null,null,null,null,null,null],"names":["fs","path","glob","formatterFactory","legacyRequire","UserError","ignore","deepmerge","prompts","HtmlValidate","readFileSync"],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sources":["../../../src/cli/expand-files.ts","../../../src/cli/formatter.ts","../../../src/cli/is-ignored.ts","../../../src/cli/init.ts","../../../src/cli/cli.ts","../../../src/cli/json.ts"],"sourcesContent":[null,null,null,null,null,null],"names":["fs","path","glob","formatterFactory","legacyRequire","UserError","ignore","deepmerge","prompts","FileSystemConfigLoader","HtmlValidate","readFileSync"],"mappings":"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"}
@@ -343,7 +343,7 @@ interface Event {
343
343
  * Configuration ready event.
344
344
  */
345
345
  interface ConfigReadyEvent extends Event {
346
- config: ConfigData;
346
+ config: ResolvedConfig;
347
347
  rules: {
348
348
  [ruleId: string]: Rule;
349
349
  };
@@ -822,9 +822,18 @@ declare enum TextContent {
822
822
  REQUIRED = "required",
823
823
  ACCESSIBLE = "accessible"
824
824
  }
825
- interface PermittedAttribute {
826
- [key: string]: Array<string | RegExp>;
827
- }
825
+ /**
826
+ * @public
827
+ */
828
+ interface MetaAttribute {
829
+ boolean?: boolean;
830
+ deprecated?: boolean | string;
831
+ enum?: Array<string | RegExp>;
832
+ list?: boolean;
833
+ omit?: boolean;
834
+ required?: boolean;
835
+ }
836
+ declare type PermittedAttribute = Record<string, MetaAttribute | Array<string | RegExp> | null>;
828
837
  interface DeprecatedElement {
829
838
  message?: string;
830
839
  documentation?: string;
@@ -866,10 +875,10 @@ declare type MetaLookupableProperty = "metadata" | "flow" | "sectioning" | "head
866
875
  * Properties listed here can be copied (loaded) onto another element using
867
876
  * [[HtmlElement.loadMeta]].
868
877
  */
869
- declare const MetaCopyableProperty: string[];
870
- interface MetaElement extends MetaData {
878
+ declare const MetaCopyableProperty: Array<keyof MetaElement>;
879
+ interface MetaElement extends Omit<MetaData, "deprecatedAttributes" | "requiredAttributes"> {
871
880
  tagName: string;
872
- [key: string]: undefined | boolean | DeprecatedElement | PropertyExpression | Permitted | PermittedOrder | PermittedAttribute | RequiredAncestors;
881
+ attributes: Record<string, MetaAttribute>;
873
882
  }
874
883
  interface ElementTable {
875
884
  [tagName: string]: MetaElement;
@@ -998,6 +1007,11 @@ declare class DOMTokenList extends Array<string> {
998
1007
  item(n: number): string | undefined;
999
1008
  location(n: number): Location | undefined;
1000
1009
  contains(token: string): boolean;
1010
+ iterator(): Generator<{
1011
+ index: number;
1012
+ item: string;
1013
+ location: Location;
1014
+ }>;
1001
1015
  }
1002
1016
 
1003
1017
  declare enum NodeClosed {