@qualweb/cli 0.0.0-develop-20231205163610 → 0.0.0-develop-20241214190614

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 (88) hide show
  1. package/README.md +1 -0
  2. package/dist/cli.d.ts +2 -0
  3. package/dist/cli.d.ts.map +1 -0
  4. package/dist/cli.js +36 -0
  5. package/dist/cli.js.map +1 -0
  6. package/dist/lib/commands/listActRules.d.ts +3 -0
  7. package/dist/lib/commands/listActRules.d.ts.map +1 -0
  8. package/dist/lib/commands/listActRules.js +18 -0
  9. package/dist/lib/commands/listActRules.js.map +1 -0
  10. package/dist/lib/commands/listBestPractices.d.ts +3 -0
  11. package/dist/lib/commands/listBestPractices.d.ts.map +1 -0
  12. package/dist/lib/commands/listBestPractices.js +21 -0
  13. package/dist/lib/commands/listBestPractices.js.map +1 -0
  14. package/dist/lib/commands/listWcagTechniques.d.ts +3 -0
  15. package/dist/lib/commands/listWcagTechniques.d.ts.map +1 -0
  16. package/dist/lib/commands/listWcagTechniques.js +18 -0
  17. package/dist/lib/commands/listWcagTechniques.js.map +1 -0
  18. package/dist/lib/evaluateAction.d.ts +3 -0
  19. package/dist/lib/evaluateAction.d.ts.map +1 -0
  20. package/dist/lib/evaluateAction.js +157 -0
  21. package/dist/lib/evaluateAction.js.map +1 -0
  22. package/dist/lib/options/actRules.d.ts +10 -0
  23. package/dist/lib/options/actRules.d.ts.map +1 -0
  24. package/dist/lib/options/actRules.js +66 -0
  25. package/dist/lib/options/actRules.js.map +1 -0
  26. package/dist/lib/options/bestPractices.d.ts +8 -0
  27. package/dist/lib/options/bestPractices.d.ts.map +1 -0
  28. package/dist/lib/options/bestPractices.js +55 -0
  29. package/dist/lib/options/bestPractices.js.map +1 -0
  30. package/dist/lib/options/input.d.ts +8 -0
  31. package/dist/lib/options/input.d.ts.map +1 -0
  32. package/dist/lib/options/input.js +27 -0
  33. package/dist/lib/options/input.js.map +1 -0
  34. package/dist/lib/options/output.d.ts +11 -0
  35. package/dist/lib/options/output.d.ts.map +1 -0
  36. package/dist/lib/options/output.js +21 -0
  37. package/dist/lib/options/output.js.map +1 -0
  38. package/dist/lib/options/puppeteer.d.ts +9 -0
  39. package/dist/lib/options/puppeteer.d.ts.map +1 -0
  40. package/dist/lib/options/puppeteer.js +24 -0
  41. package/dist/lib/options/puppeteer.js.map +1 -0
  42. package/dist/lib/options/viewport.d.ts +12 -0
  43. package/dist/lib/options/viewport.d.ts.map +1 -0
  44. package/dist/lib/options/viewport.js +26 -0
  45. package/dist/lib/options/viewport.js.map +1 -0
  46. package/dist/lib/options/wcagTechniques.d.ts +10 -0
  47. package/dist/lib/options/wcagTechniques.d.ts.map +1 -0
  48. package/dist/lib/options/wcagTechniques.js +63 -0
  49. package/dist/lib/options/wcagTechniques.js.map +1 -0
  50. package/dist/lib/types.d.ts +22 -0
  51. package/dist/lib/types.d.ts.map +1 -0
  52. package/dist/lib/types.js +27 -0
  53. package/dist/lib/types.js.map +1 -0
  54. package/package.json +21 -24
  55. package/bin/cli.js +0 -16
  56. package/dist/index.d.ts +0 -3
  57. package/dist/index.d.ts.map +0 -1
  58. package/dist/index.js +0 -73
  59. package/dist/index.js.map +0 -1
  60. package/dist/lib/act-rules.options.json +0 -149
  61. package/dist/lib/actParser.d.ts +0 -6
  62. package/dist/lib/actParser.d.ts.map +0 -1
  63. package/dist/lib/actParser.js +0 -69
  64. package/dist/lib/actParser.js.map +0 -1
  65. package/dist/lib/bpParser.d.ts +0 -6
  66. package/dist/lib/bpParser.d.ts.map +0 -1
  67. package/dist/lib/bpParser.js +0 -53
  68. package/dist/lib/bpParser.js.map +0 -1
  69. package/dist/lib/fileUtils.d.ts +0 -20
  70. package/dist/lib/fileUtils.d.ts.map +0 -1
  71. package/dist/lib/fileUtils.js +0 -48
  72. package/dist/lib/fileUtils.js.map +0 -1
  73. package/dist/lib/options.d.ts +0 -156
  74. package/dist/lib/options.d.ts.map +0 -1
  75. package/dist/lib/options.js +0 -299
  76. package/dist/lib/options.js.map +0 -1
  77. package/dist/lib/parser.d.ts +0 -5
  78. package/dist/lib/parser.d.ts.map +0 -1
  79. package/dist/lib/parser.js +0 -133
  80. package/dist/lib/parser.js.map +0 -1
  81. package/dist/lib/parserUtils.d.ts +0 -9
  82. package/dist/lib/parserUtils.d.ts.map +0 -1
  83. package/dist/lib/parserUtils.js +0 -69
  84. package/dist/lib/parserUtils.js.map +0 -1
  85. package/dist/lib/wcagParser.d.ts +0 -6
  86. package/dist/lib/wcagParser.d.ts.map +0 -1
  87. package/dist/lib/wcagParser.js +0 -69
  88. package/dist/lib/wcagParser.js.map +0 -1
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addPuppeteerOptions = addPuppeteerOptions;
4
+ const commander_1 = require("commander");
5
+ function addPuppeteerOptions(command) {
6
+ command.addOption(new commander_1.Option('--wait-until', 'Puppeteer lifecycle event to wait for before starting evaluation')
7
+ .choices(['load', 'domcontentloaded', 'networkidle0', 'networkidle2']));
8
+ command.option('--max-parallel-evaluations <number>', 'Maximum number of parallel evaluations to run.', (value) => {
9
+ const parsed = Number.parseInt(value);
10
+ if (Number.isNaN(parsed) || parsed < 1) {
11
+ throw new commander_1.InvalidOptionArgumentError('Max parallel evaluations must be a number greater than 0');
12
+ }
13
+ return parsed;
14
+ });
15
+ command.option('--timeout', 'Maximum time to wait for the evaluation to finish or try to connect to URL.', (value) => {
16
+ const parsed = Number.parseInt(value);
17
+ if (Number.isNaN(parsed) || parsed < 1) {
18
+ throw new commander_1.InvalidOptionArgumentError('Timeout must be a number greater than 0');
19
+ }
20
+ return parsed;
21
+ });
22
+ return command;
23
+ }
24
+ //# sourceMappingURL=puppeteer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"puppeteer.js","sourceRoot":"","sources":["../../../src/lib/options/puppeteer.ts"],"names":[],"mappings":";;AASA,kDAmCC;AA3CD,yCAAwE;AAQxE,SAAgB,mBAAmB,CAAC,OAAgB;IAClD,OAAO,CAAC,SAAS,CACf,IAAI,kBAAM,CAAC,cAAc,EAAE,kEAAkE,CAAC;SAC3F,OAAO,CAA4B,CAAC,MAAM,EAAE,kBAAkB,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC,CACpG,CAAC;IAEF,OAAO,CAAC,MAAM,CACZ,qCAAqC,EACrC,gDAAgD,EAChD,CAAC,KAAK,EAAE,EAAE;QACR,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEtC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,sCAA0B,CAAC,0DAA0D,CAAC,CAAC;QACnG,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,CACF,CAAC;IAEF,OAAO,CAAC,MAAM,CACZ,WAAW,EACX,6EAA6E,EAC7E,CAAC,KAAK,EAAE,EAAE;QACR,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEtC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,sCAA0B,CAAC,yCAAyC,CAAC,CAAC;QAClF,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,CACF,CAAA;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { Command } from 'commander';
2
+ export type ViewportOptions = {
3
+ mobile?: boolean;
4
+ orientation?: 'portrait' | 'landscape';
5
+ userAgent?: string;
6
+ viewportResolution?: {
7
+ width: number;
8
+ height: number;
9
+ };
10
+ };
11
+ export declare function addViewportOptions(command: Command): Command;
12
+ //# sourceMappingURL=viewport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../../src/lib/options/viewport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAsC,MAAM,WAAW,CAAC;AAExE,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CACxD,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CA2B5D"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addViewportOptions = addViewportOptions;
4
+ const commander_1 = require("commander");
5
+ function addViewportOptions(command) {
6
+ command.option('--mobile', 'Use mobile mode in the browser viewport');
7
+ const orientationOption = new commander_1.Option('--orientation <orientation>', 'Orientation of the screen.')
8
+ .choices(['portrait', 'landscape'])
9
+ .default('portrait');
10
+ command.addOption(orientationOption);
11
+ command.option('--user-agent <user-agent>', 'Sets a custom user agent for the browser.');
12
+ command.option('--viewport-resolution <WIDTHxHEIGHT>', 'Resolution of the browser viewport', (value) => {
13
+ const matches = /^(?<width>\d+)x(?<height>\d+)$/.exec(value);
14
+ if (matches === null) {
15
+ throw new commander_1.InvalidOptionArgumentError('Viewport resolution must be in the format WIDTHxHEIGHT. Both values must be integers.');
16
+ }
17
+ else {
18
+ return {
19
+ width: Number.parseInt(matches.groups.width),
20
+ height: Number.parseInt(matches.groups.height),
21
+ };
22
+ }
23
+ });
24
+ return command;
25
+ }
26
+ //# sourceMappingURL=viewport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewport.js","sourceRoot":"","sources":["../../../src/lib/options/viewport.ts"],"names":[],"mappings":";;AASA,gDA2BC;AApCD,yCAAwE;AASxE,SAAgB,kBAAkB,CAAC,OAAgB;IACjD,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,yCAAyC,CAAC,CAAC;IAEtE,MAAM,iBAAiB,GAAG,IAAI,kBAAM,CAAC,6BAA6B,EAAE,4BAA4B,CAAC;SAC9F,OAAO,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;SAClC,OAAO,CAAC,UAAU,CAAC,CACnB;IAEH,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;IAErC,OAAO,CAAC,MAAM,CAAC,2BAA2B,EAAE,2CAA2C,CAAC,CAAC;IAGzF,OAAO,CAAC,MAAM,CAAC,sCAAsC,EAAE,oCAAoC,EAAE,CAAC,KAAa,EAAqC,EAAE;QAChJ,MAAM,OAAO,GAAG,gCAAgC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE7D,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,MAAM,IAAI,sCAA0B,CAAC,uFAAuF,CAAC,CAAC;QAChI,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAO,CAAC,KAAK,CAAC;gBAC7C,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAO,CAAC,MAAM,CAAC;aAChD,CAAA;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { Command } from 'commander';
2
+ import { ConformanceLevelEnum, PrincipleEnum, RuleListParseResult } from '../types';
3
+ export type WcagTechniqueOptions = {
4
+ wcagTechniques?: RuleListParseResult;
5
+ excludeWcag?: RuleListParseResult;
6
+ wcagLevels?: ConformanceLevelEnum[];
7
+ wcagPrinciples?: PrincipleEnum[];
8
+ };
9
+ export declare function addWcagTechniqueOptionsToCommand(command: Command): Command;
10
+ //# sourceMappingURL=wcagTechniques.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wcagTechniques.d.ts","sourceRoot":"","sources":["../../../src/lib/options/wcagTechniques.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,OAAO,EAER,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,oBAAoB,EAAqB,aAAa,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAiEvG,MAAM,MAAM,oBAAoB,GAAG;IACjC,cAAc,CAAC,EAAE,mBAAmB,CAAC;IACrC,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,UAAU,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACpC,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;CAClC,CAAA;AAQD,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CA2B1E"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.addWcagTechniqueOptionsToCommand = addWcagTechniqueOptionsToCommand;
7
+ const node_fs_1 = __importDefault(require("node:fs"));
8
+ const commander_1 = require("commander");
9
+ const techniques_json_1 = __importDefault(require("@qualweb/wcag-techniques/lib/techniques.json"));
10
+ const types_1 = require("../types");
11
+ function wcagTechniquesListParseHelper(value, previousValue) {
12
+ if (!previousValue)
13
+ previousValue = { error: [], ok: [] };
14
+ const allWcagTechniques = Object.values(techniques_json_1.default);
15
+ if (/^QW-WCAG-T\d+$/i.exec(value)) {
16
+ value = value.toUpperCase();
17
+ const foundWcagTechnique = allWcagTechniques.find(rule => rule.code === value);
18
+ if (foundWcagTechnique) {
19
+ previousValue.ok.push(foundWcagTechnique.code);
20
+ }
21
+ else {
22
+ previousValue.error.push(value);
23
+ }
24
+ }
25
+ else {
26
+ value = value.toUpperCase();
27
+ const foundTechnique = allWcagTechniques.find(rule => rule.mapping === value);
28
+ if (foundTechnique) {
29
+ previousValue.ok.push(foundTechnique.code);
30
+ }
31
+ else if (node_fs_1.default.existsSync(value)) {
32
+ const fileContents = node_fs_1.default.readFileSync(value, 'utf8')
33
+ .split(/\r?\n/)
34
+ .map(line => line.trim())
35
+ .filter(line => line.length > 0);
36
+ return fileContents.reduce((prev, current) => wcagTechniquesListParseHelper(current, prev), previousValue);
37
+ }
38
+ else {
39
+ previousValue.error.push(value);
40
+ }
41
+ }
42
+ return previousValue;
43
+ }
44
+ function addWcagTechniqueOptionsToCommand(command) {
45
+ const wcagTechniqueIncludeOption = new commander_1.Option('--wcag-techniques <techniques...>', 'Which WCAG techniques to execute. Can be multiple. If a path to a FILE, it will be read as a newline-separated list of techniques.')
46
+ .argParser(wcagTechniquesListParseHelper)
47
+ .implies({ module: [types_1.ModuleOptionsEnum.WCAGTechniques] });
48
+ const wcagTechniqueExcludeOption = new commander_1.Option('--exclude-wcag <techniques...>', 'Which WCAG techniques to not execute. Can be multiple. If a path to a FILE, it will be read as a newline-separated list of techniques.')
49
+ .argParser(wcagTechniquesListParseHelper)
50
+ .implies({ module: [types_1.ModuleOptionsEnum.WCAGTechniques] });
51
+ const wcagTechniqueLevelOption = new commander_1.Option('--wcag-levels <levels...>', 'Which conformance levels to test for WCAG techniques. Will include all techniques that match the level. Can be multiple.')
52
+ .choices(Object.values(types_1.ConformanceLevelEnum))
53
+ .implies({ module: [types_1.ModuleOptionsEnum.WCAGTechniques] });
54
+ const wcagTechniquePrincipleOption = new commander_1.Option('--wcag-principles <principles...>', 'Which principles to test for in WCAG techniques. Only techniques matching the principle will be tested.')
55
+ .choices(Object.values(types_1.PrincipleEnum))
56
+ .implies({ module: [types_1.ModuleOptionsEnum.WCAGTechniques] });
57
+ command.addOption(wcagTechniqueIncludeOption);
58
+ command.addOption(wcagTechniqueExcludeOption);
59
+ command.addOption(wcagTechniqueLevelOption);
60
+ command.addOption(wcagTechniquePrincipleOption);
61
+ return command;
62
+ }
63
+ //# sourceMappingURL=wcagTechniques.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wcagTechniques.js","sourceRoot":"","sources":["../../../src/lib/options/wcagTechniques.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ export declare enum ModuleOptionsEnum {
2
+ ACTRules = "act-rules",
3
+ BestPractices = "best-practices",
4
+ WCAGTechniques = "wcag-techniques",
5
+ Counter = "counter"
6
+ }
7
+ export declare enum ConformanceLevelEnum {
8
+ A = "A",
9
+ AA = "AA",
10
+ AAA = "AAA"
11
+ }
12
+ export declare enum PrincipleEnum {
13
+ Perceivable = "Perceivable",
14
+ Operable = "Operable",
15
+ Understandable = "Understandable",
16
+ Robust = "Robust"
17
+ }
18
+ export type RuleListParseResult = {
19
+ ok: string[];
20
+ error: string[];
21
+ };
22
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAGA,oBAAY,iBAAiB;IAC3B,QAAQ,cAAc;IACtB,aAAa,mBAAmB;IAChC,cAAc,oBAAoB;IAClC,OAAO,YAAY;CACpB;AAED,oBAAY,oBAAoB;IAC9B,CAAC,MAAM;IACP,EAAE,OAAO;IACT,GAAG,QAAQ;CACZ;AAED,oBAAY,aAAa;IACvB,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,MAAM,WAAW;CAClB;AAMD,MAAM,MAAM,mBAAmB,GAAG;IAIhC,EAAE,EAAE,MAAM,EAAE,CAAC;IAKb,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PrincipleEnum = exports.ConformanceLevelEnum = exports.ModuleOptionsEnum = void 0;
4
+ var ModuleOptionsEnum;
5
+ (function (ModuleOptionsEnum) {
6
+ ModuleOptionsEnum["ACTRules"] = "act-rules";
7
+ ModuleOptionsEnum["BestPractices"] = "best-practices";
8
+ ModuleOptionsEnum["WCAGTechniques"] = "wcag-techniques";
9
+ ModuleOptionsEnum["Counter"] = "counter";
10
+ })(ModuleOptionsEnum || (exports.ModuleOptionsEnum = ModuleOptionsEnum = {}));
11
+ ;
12
+ var ConformanceLevelEnum;
13
+ (function (ConformanceLevelEnum) {
14
+ ConformanceLevelEnum["A"] = "A";
15
+ ConformanceLevelEnum["AA"] = "AA";
16
+ ConformanceLevelEnum["AAA"] = "AAA";
17
+ })(ConformanceLevelEnum || (exports.ConformanceLevelEnum = ConformanceLevelEnum = {}));
18
+ ;
19
+ var PrincipleEnum;
20
+ (function (PrincipleEnum) {
21
+ PrincipleEnum["Perceivable"] = "Perceivable";
22
+ PrincipleEnum["Operable"] = "Operable";
23
+ PrincipleEnum["Understandable"] = "Understandable";
24
+ PrincipleEnum["Robust"] = "Robust";
25
+ })(PrincipleEnum || (exports.PrincipleEnum = PrincipleEnum = {}));
26
+ ;
27
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":";;;AAGA,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,2CAAsB,CAAA;IACtB,qDAAgC,CAAA;IAChC,uDAAkC,CAAA;IAClC,wCAAmB,CAAA;AACrB,CAAC,EALW,iBAAiB,iCAAjB,iBAAiB,QAK5B;AAAA,CAAC;AAEF,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC9B,+BAAO,CAAA;IACP,iCAAS,CAAA;IACT,mCAAW,CAAA;AACb,CAAC,EAJW,oBAAoB,oCAApB,oBAAoB,QAI/B;AAAA,CAAC;AAEF,IAAY,aAKX;AALD,WAAY,aAAa;IACvB,4CAA2B,CAAA;IAC3B,sCAAqB,CAAA;IACrB,kDAAiC,CAAA;IACjC,kCAAiB,CAAA;AACnB,CAAC,EALW,aAAa,6BAAb,aAAa,QAKxB;AAAA,CAAC"}
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@qualweb/cli",
3
- "version": "0.0.0-develop-20231205163610",
3
+ "version": "0.0.0-develop-20241214190614",
4
4
  "description": "QualWeb evaluator command line interface",
5
- "main": "dist/index.js",
5
+ "main": "dist/cli.js",
6
6
  "bin": {
7
- "qw": "./bin/cli.js"
7
+ "qw": "./dist/cli.js"
8
8
  },
9
9
  "files": [
10
10
  "dist/*"
@@ -12,12 +12,10 @@
12
12
  "scripts": {
13
13
  "tsc": "tsc",
14
14
  "test": "mocha",
15
- "prebuild": "rimraf dist",
16
- "lint": "eslint src --ext .ts",
17
- "lint:fix": "eslint src --ext .ts --fix",
15
+ "lint": "eslint .",
18
16
  "format": "prettier src/**/*.ts --write",
19
- "build": "npm run prebuild && tsc --build",
20
- "typedoc": "typedoc --out docs src/index.ts",
17
+ "clean": "rimraf dist",
18
+ "build": "tsc --build tsconfig.prod.json",
21
19
  "prepublishOnly": "npm run build"
22
20
  },
23
21
  "keywords": [
@@ -36,30 +34,29 @@
36
34
  "url": "https://github.com/qualweb/cli.git"
37
35
  },
38
36
  "engines": {
39
- "node": ">=12.0.0"
37
+ "node": ">=18.0.0"
40
38
  },
41
39
  "author": "João Vicente",
42
40
  "license": "ISC",
43
41
  "dependencies": {
44
- "@qualweb/core": "0.0.0-develop-20231205163610",
45
- "command-line-args": "^5.1.1",
46
- "command-line-usage": "^6.1.1",
47
- "log-update": "^4.0.0",
48
- "set-value": "^4.0.0"
42
+ "@qualweb/act-rules": "0.0.0-develop-20241214190614",
43
+ "@qualweb/best-practices": "0.0.0-develop-20241214190614",
44
+ "@qualweb/core": "0.0.0-develop-20241214190614",
45
+ "@qualweb/counter": "0.0.0-develop-20241214190614",
46
+ "@qualweb/earl-reporter": "0.0.0-develop-20241214190614",
47
+ "@qualweb/wcag-techniques": "0.0.0-develop-20241214190614",
48
+ "commander": "^12.1.0",
49
+ "log-update": "^4.0.0"
49
50
  },
50
51
  "devDependencies": {
51
- "@qualweb/types": "0.7.24",
52
52
  "@tsconfig/recommended": "^1.0.3",
53
- "@types/command-line-args": "^5.0.0",
54
- "@types/command-line-usage": "^5.0.1",
53
+ "@types/mocha": "^10.0.6",
55
54
  "@types/node": "^16.4.1",
56
- "@types/set-value": "^4.0.0",
57
- "chai": "^4.3.4",
58
- "eslint": "^8.53.0",
59
- "mocha": "^9.0.2",
60
- "prettier": "^3.1.0",
55
+ "chai": "4.5.0",
56
+ "mocha": "^10.2.0",
57
+ "prettier": "^3.1.1",
61
58
  "rimraf": "^5.0.5",
62
- "typedoc": "^0.21.4",
63
- "typescript": "^4.3.5"
59
+ "tsx": "^4.19.2",
60
+ "typescript": "^5.6.3"
64
61
  }
65
62
  }
package/bin/cli.js DELETED
@@ -1,16 +0,0 @@
1
- #!/usr/bin/env node
2
- 'use strict';
3
-
4
- const cli = require('../dist/index');
5
-
6
- (async () => {
7
- const args = Array.from(process.argv).slice(2);
8
-
9
- try {
10
- process.title = 'qw ' + args.join(' ');
11
- } catch(err) {
12
- process.title = 'qw';
13
- }
14
-
15
- await cli(args);
16
- })();
package/dist/index.d.ts DELETED
@@ -1,3 +0,0 @@
1
- declare function cli(): Promise<void>;
2
- export = cli;
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,iBAAe,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CA+BlC;AA0CD,SAAS,GAAG,CAAC"}
package/dist/index.js DELETED
@@ -1,73 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- const core_1 = require("@qualweb/core");
6
- const parser_1 = __importDefault(require("./lib/parser"));
7
- const fileUtils_1 = require("./lib/fileUtils");
8
- const parserUtils_1 = require("./lib/parserUtils");
9
- async function cli() {
10
- try {
11
- const options = await (0, parser_1.default)();
12
- const qualweb = new core_1.QualWeb({ adBlock: true, stealth: true });
13
- await qualweb.start({ maxConcurrency: options.maxParallelEvaluations, timeout: options.timeout }, { args: ['--no-sandbox', '--ignore-certificate-errors'] });
14
- if (!options['wcag-techniques']) {
15
- options['wcag-techniques'] = {};
16
- }
17
- options['wcag-techniques'].exclude = ['QW-WCAG-T16'];
18
- const reports = await qualweb.evaluate(options);
19
- await qualweb.stop();
20
- await handleReporting(reports, options);
21
- }
22
- catch (err) {
23
- if ((err === null || err === void 0 ? void 0 : err.message) === 'Invalid input method') {
24
- (0, parserUtils_1.printHelp)();
25
- }
26
- else {
27
- console.error(err);
28
- }
29
- }
30
- process.exit(0);
31
- }
32
- async function handleReporting(reports, options) {
33
- const reportType = options.report;
34
- const saveName = options['save-name'];
35
- delete options.report;
36
- delete options['save-name'];
37
- if (reportType) {
38
- if (reportType === 'earl') {
39
- const earlReports = (0, core_1.generateEARLReport)(reports);
40
- for (const url in earlReports || {}) {
41
- await (0, fileUtils_1.saveReport)(url, earlReports[url]);
42
- }
43
- }
44
- else if (reportType === 'earl-a') {
45
- const earlOptions = checkEarlOptions(options, saveName);
46
- const earlReport = (0, core_1.generateEARLReport)(reports, earlOptions);
47
- const name = Object.keys(earlReport)[0];
48
- await (0, fileUtils_1.saveReport)(name, earlReport[name], !!saveName);
49
- }
50
- else {
51
- throw new Error('Invalid reporter format');
52
- }
53
- }
54
- else {
55
- for (const url in reports !== null && reports !== void 0 ? reports : {}) {
56
- const report = reports[url];
57
- await (0, fileUtils_1.saveReport)(url, report);
58
- }
59
- }
60
- }
61
- function checkEarlOptions(options, saveName) {
62
- var _a, _b, _c;
63
- const earlOptions = { aggregated: true, aggregatedName: saveName };
64
- if (options.execute) {
65
- earlOptions.modules = {};
66
- earlOptions.modules.act = !!((_a = options === null || options === void 0 ? void 0 : options.execute) === null || _a === void 0 ? void 0 : _a.act);
67
- earlOptions.modules.wcag = !!((_b = options === null || options === void 0 ? void 0 : options.execute) === null || _b === void 0 ? void 0 : _b.wcag);
68
- earlOptions.modules['best-practices'] = !!((_c = options === null || options === void 0 ? void 0 : options.execute) === null || _c === void 0 ? void 0 : _c.bp);
69
- }
70
- return earlOptions;
71
- }
72
- module.exports = cli;
73
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,149 +0,0 @@
1
- {
2
- "qualweb_id": [
3
- "QW-ACT-R1",
4
- "QW-ACT-R2",
5
- "QW-ACT-R3",
6
- "QW-ACT-R4",
7
- "QW-ACT-R5",
8
- "QW-ACT-R6",
9
- "QW-ACT-R7",
10
- "QW-ACT-R9",
11
- "QW-ACT-R10",
12
- "QW-ACT-R11",
13
- "QW-ACT-R12",
14
- "QW-ACT-R13",
15
- "QW-ACT-R14",
16
- "QW-ACT-R15",
17
- "QW-ACT-R16",
18
- "QW-ACT-R17",
19
- "QW-ACT-R18",
20
- "QW-ACT-R19",
21
- "QW-ACT-R20",
22
- "QW-ACT-R21",
23
- "QW-ACT-R22",
24
- "QW-ACT-R23",
25
- "QW-ACT-R24",
26
- "QW-ACT-R25",
27
- "QW-ACT-R26",
28
- "QW-ACT-R27",
29
- "QW-ACT-R28",
30
- "QW-ACT-R29",
31
- "QW-ACT-R30",
32
- "QW-ACT-R31",
33
- "QW-ACT-R32",
34
- "QW-ACT-R33",
35
- "QW-ACT-R34",
36
- "QW-ACT-R35",
37
- "QW-ACT-R36",
38
- "QW-ACT-R37",
39
- "QW-ACT-R38",
40
- "QW-ACT-R39",
41
- "QW-ACT-R40",
42
- "QW-ACT-R41",
43
- "QW-ACT-R42",
44
- "QW-ACT-R43",
45
- "QW-ACT-R44",
46
- "QW-ACT-R48",
47
- "QW-ACT-R49",
48
- "QW-ACT-R50",
49
- "QW-ACT-R51",
50
- "QW-ACT-R52",
51
- "QW-ACT-R53",
52
- "QW-ACT-R54",
53
- "QW-ACT-R56",
54
- "QW-ACT-R57",
55
- "QW-ACT-R58",
56
- "QW-ACT-R59",
57
- "QW-ACT-R60",
58
- "QW-ACT-R61",
59
- "QW-ACT-R62",
60
- "QW-ACT-R63",
61
- "QW-ACT-R64",
62
- "QW-ACT-R65",
63
- "QW-ACT-R66",
64
- "QW-ACT-R67",
65
- "QW-ACT-R68",
66
- "QW-ACT-R69",
67
- "QW-ACT-R70",
68
- "QW-ACT-R71",
69
- "QW-ACT-R72",
70
- "QW-ACT-R73",
71
- "QW-ACT-R74",
72
- "QW-ACT-R75",
73
- "QW-ACT-R76"
74
- ],
75
- "act_id": [
76
- "2779a5",
77
- "b5c3f8",
78
- "5b7ae0",
79
- "bc659a",
80
- "bf051a",
81
- "59796f",
82
- "b33eff",
83
- "b20e66",
84
- "4b1c6c",
85
- "97a4e1",
86
- "c487ae",
87
- "6cfa84",
88
- "b4f0c3",
89
- "80f0bf",
90
- "e086e5",
91
- "23a2a8",
92
- "3ea0c8",
93
- "cae760",
94
- "674b10",
95
- "7d6734",
96
- "de46e4",
97
- "c5a4ea",
98
- "73f2c2",
99
- "5c01ea",
100
- "eac66b",
101
- "5f99a7",
102
- "4e8ab6",
103
- "e7aa44",
104
- "2ee8b8",
105
- "c3232f",
106
- "1ec09b",
107
- "ff89c9",
108
- "6a7281",
109
- "ffd0e9",
110
- "a25f45",
111
- "afw4f7",
112
- "bc4a75",
113
- "d0f69e",
114
- "59br37",
115
- "36b590",
116
- "8fc3b6",
117
- "0ssw9k",
118
- "fd3a94",
119
- "46ca7f",
120
- "aaa1bf",
121
- "4c31df",
122
- "fd26cf",
123
- "ac7dc6",
124
- "ee13b5",
125
- "d7ba54",
126
- "1ea59c",
127
- "ab4d13",
128
- "f196ce",
129
- "2eb176",
130
- "afb423",
131
- "f51b46",
132
- "1a02b0",
133
- "oj04fd",
134
- "b40fd1",
135
- "047fe0",
136
- "307n5z",
137
- "m6b1q3",
138
- "24afc2",
139
- "78fd32",
140
- "9e45ec",
141
- "akn7bn",
142
- "bisz58",
143
- "8a213c",
144
- "3e12e1",
145
- "ye5d6e",
146
- "cf77f2",
147
- "09o5cg"
148
- ]
149
- }
@@ -1,6 +0,0 @@
1
- /// <reference types="@qualweb/types" />
2
- import { CommandLineOptions } from 'command-line-args';
3
- import { QualwebOptions } from '@qualweb/core';
4
- declare function parseACT(mainOptions: CommandLineOptions, options: QualwebOptions): Promise<void>;
5
- export = parseACT;
6
- //# sourceMappingURL=actParser.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"actParser.d.ts","sourceRoot":"","sources":["../../src/lib/actParser.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C,iBAAe,QAAQ,CAAC,WAAW,EAAE,kBAAkB,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAW/F;AAsDD,SAAS,QAAQ,CAAC"}
@@ -1,69 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- const parserUtils_1 = require("./parserUtils");
6
- const fileUtils_1 = require("./fileUtils");
7
- const set_value_1 = __importDefault(require("set-value"));
8
- async function parseACT(mainOptions, options) {
9
- options['act-rules'] = {};
10
- await validateACTRules(mainOptions, options);
11
- validateACTExclusions(mainOptions, options);
12
- validateACTLevels(mainOptions, options);
13
- validateACTPrinciples(mainOptions, options);
14
- if (Object.keys(options['act-rules']).length === 0) {
15
- delete options['act-rules'];
16
- }
17
- }
18
- function validateModule(mainOptions, options) {
19
- var _a;
20
- if (mainOptions.module && ((_a = options === null || options === void 0 ? void 0 : options.execute) === null || _a === void 0 ? void 0 : _a.act) === undefined) {
21
- (0, parserUtils_1.printError)('The "--act-rules" option doesn\'t match any of the modules selected.');
22
- }
23
- else {
24
- console.warn('Warning: Module act has options but is not select. Will be select automatically.');
25
- (0, set_value_1.default)(options, 'execute.act', true);
26
- }
27
- }
28
- async function validateACTRules(mainOptions, options) {
29
- var _a;
30
- if (mainOptions['act-rules'] && options['act-rules']) {
31
- validateModule(mainOptions, options);
32
- if (mainOptions['act-rules'].length === 1) {
33
- if (await (0, fileUtils_1.fileExists)(mainOptions['act-rules'][0])) {
34
- const rules = await (0, fileUtils_1.readJsonFile)(mainOptions['act-rules'][0]);
35
- options['act-rules'].rules = [...((_a = rules['act-rules'].rules) !== null && _a !== void 0 ? _a : [])];
36
- }
37
- else {
38
- options['act-rules'].rules = [...mainOptions['act-rules']];
39
- }
40
- }
41
- else {
42
- options['act-rules'].rules = [...mainOptions['act-rules']];
43
- }
44
- (0, parserUtils_1.validateACT)(options['act-rules'].rules);
45
- }
46
- }
47
- function validateACTExclusions(mainOptions, options) {
48
- if (mainOptions['exclude-act'] && options['act-rules']) {
49
- validateModule(mainOptions, options);
50
- options['act-rules'].exclude = [...mainOptions['exclude-act']];
51
- (0, parserUtils_1.validateACT)(options['act-rules'].exclude);
52
- }
53
- }
54
- function validateACTLevels(mainOptions, options) {
55
- if (mainOptions['act-levels'] && options['act-rules']) {
56
- validateModule(mainOptions, options);
57
- options['act-rules'].levels = [...mainOptions['act-levels']];
58
- (0, parserUtils_1.validateLevels)(options['act-rules'].levels);
59
- }
60
- }
61
- function validateACTPrinciples(mainOptions, options) {
62
- if (mainOptions['act-principles'] && options['act-rules']) {
63
- validateModule(mainOptions, options);
64
- options['act-rules'].principles = [...mainOptions['act-principles']];
65
- (0, parserUtils_1.validatePrinciples)(options['act-rules'].principles);
66
- }
67
- }
68
- module.exports = parseACT;
69
- //# sourceMappingURL=actParser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"actParser.js","sourceRoot":"","sources":["../../src/lib/actParser.ts"],"names":[],"mappings":"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"}