From 54469dde67b2921abf9ca787ce374e88f4776fdb Mon Sep 17 00:00:00 2001 From: j-mendez Date: Wed, 27 Sep 2023 14:49:57 -0400 Subject: [PATCH] chore(runners): allow default runner configuration --- README.md | 3 ++ package-lock.json | 42 +++++++++++-------- package.json | 6 +-- .../update/templates/skip-content.ts | 4 +- src/core/lib/puppet/page/get-page-issues.ts | 11 +++++ 5 files changed, 42 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index f0756f5..ae79038 100644 --- a/README.md +++ b/README.md @@ -29,8 +29,11 @@ AI_DISABLED=false CHROME_LB= FIREFOX_ENABLED=false PAGEMIND_RECORD=true +DEFAULT_RUNNERS=htmlcs,ace ``` +You can set `DEFAULT_RUNNERS` to a comma seperated list with the values of `ace`, `axe`, and `htmlcs`. + ## Healthcheck You can generate a health check client by running `cargo build`. It requires that you first installed the app via `npm i`. diff --git a/package-lock.json b/package-lock.json index 15be71d..007c027 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@a11ywatch/pagemind", - "version": "0.9.44", + "version": "0.9.51", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@a11ywatch/pagemind", - "version": "0.9.44", + "version": "0.9.51", "license": "MIT", "dependencies": { "@a11ywatch/protos": "^0.4.7", @@ -15,10 +15,10 @@ "@grpc/proto-loader": "0.7.10", "fastq": "1.15.0", "get-page-speed": "1.0.1", - "kayle": "0.5.30", + "kayle": "0.7.7", "lighthouse": "9.6.8", "pb-util": "1.0.3", - "playwright": "^1.38.0" + "playwright": "^1.38.1" }, "devDependencies": { "@swc/core": "^1.3.19", @@ -2365,6 +2365,11 @@ "@types/node": "*" } }, + "node_modules/accessibility-checker-engine": { + "version": "3.1.61", + "resolved": "https://registry.npmjs.org/accessibility-checker-engine/-/accessibility-checker-engine-3.1.61.tgz", + "integrity": "sha512-emQGJ02D9RYkSZ8hdMhR3Dv6lio86cRGr3zAcZkSV357xnsU2tNJCcA7XP/x3/CmNW5OK9D8v+E0/1YhAVMEiw==" + }, "node_modules/acorn": { "version": "8.8.2", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", @@ -3249,9 +3254,9 @@ } }, "node_modules/fast_htmlcs": { - "version": "0.0.65", - "resolved": "https://registry.npmjs.org/fast_htmlcs/-/fast_htmlcs-0.0.65.tgz", - "integrity": "sha512-SpAwv12ykFI3kbtIt/pQzjh5zhs2wAlnK6TFioZ39Hgc8cISOx+Yex0H1u6MqHbfmfEZqtsbjZi7/eKITLN4CA==", + "version": "0.0.66", + "resolved": "https://registry.npmjs.org/fast_htmlcs/-/fast_htmlcs-0.0.66.tgz", + "integrity": "sha512-R9r+cvTJ2M5pnDPTHlaKBCR7/JwBttXyv1yFiv9OQJsiu3g0nZZIf1jIPB8T7EDZvBPkHvIjDERlQ/g+ovOVvw==", "engines": { "node": ">=6" } @@ -5818,12 +5823,13 @@ "dev": true }, "node_modules/kayle": { - "version": "0.5.30", - "resolved": "https://registry.npmjs.org/kayle/-/kayle-0.5.30.tgz", - "integrity": "sha512-2fzMatBel+IIauhbetdH/P9Y3+iN+3I56sggCJN7Caj9+3yCpeV4W7P01W6WzJ8A5ebOXtFKOkB0bIpgwtcAgA==", + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/kayle/-/kayle-0.7.7.tgz", + "integrity": "sha512-LvQMs79/Y/jJjXK5Xq82tOR81ArRWLPSrJSL0E/Y0XyRfQMclzoFYfuOLZwAu6tbua1Ok1Hu3y++2u1WY2PQzg==", "dependencies": { + "accessibility-checker-engine": "3.1.61", "fast_axecore": "4.6.31", - "fast_htmlcs": "0.0.65", + "fast_htmlcs": "0.0.66", "kayle_innate": "0.0.16" } }, @@ -6335,11 +6341,11 @@ } }, "node_modules/playwright": { - "version": "1.38.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.38.0.tgz", - "integrity": "sha512-fJGw+HO0YY+fU/F1N57DMO+TmXHTrmr905J05zwAQE9xkuwP/QLDk63rVhmyxh03dYnEhnRbsdbH9B0UVVRB3A==", + "version": "1.38.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.38.1.tgz", + "integrity": "sha512-oRMSJmZrOu1FP5iu3UrCx8JEFRIMxLDM0c/3o4bpzU5Tz97BypefWf7TuTNPWeCe279TPal5RtPPZ+9lW/Qkow==", "dependencies": { - "playwright-core": "1.38.0" + "playwright-core": "1.38.1" }, "bin": { "playwright": "cli.js" @@ -6352,9 +6358,9 @@ } }, "node_modules/playwright-core": { - "version": "1.38.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.38.0.tgz", - "integrity": "sha512-f8z1y8J9zvmHoEhKgspmCvOExF2XdcxMW8jNRuX4vkQFrzV4MlZ55iwb5QeyiFQgOFCUolXiRHgpjSEnqvO48g==", + "version": "1.38.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.38.1.tgz", + "integrity": "sha512-tQqNFUKa3OfMf4b2jQ7aGLB8o9bS3bOY0yMEtldtC2+spf8QXG9zvXLTXUeRsoNuxEYMgLYR+NXfAa1rjKRcrg==", "bin": { "playwright-core": "cli.js" }, diff --git a/package.json b/package.json index f536c78..8cfd0ab 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@a11ywatch/pagemind", - "version": "0.9.44", + "version": "0.9.51", "description": "Get metrics on your web page with inclusion", "main": "./server.js", "author": "Jeff Mendez", @@ -30,10 +30,10 @@ "@grpc/proto-loader": "0.7.10", "fastq": "1.15.0", "get-page-speed": "1.0.1", - "kayle": "0.5.30", + "kayle": "0.7.7", "lighthouse": "9.6.8", "pb-util": "1.0.3", - "playwright": "^1.38.0" + "playwright": "^1.38.1" }, "devDependencies": { "@swc/core": "^1.3.19", diff --git a/src/core/controllers/update/templates/skip-content.ts b/src/core/controllers/update/templates/skip-content.ts index eba5e16..ad4bdc8 100644 --- a/src/core/controllers/update/templates/skip-content.ts +++ b/src/core/controllers/update/templates/skip-content.ts @@ -1,6 +1,4 @@ -import type { Issue } from "kayle"; - -export const skipContentTemplate: Issue = { +export const skipContentTemplate = { code: "WCAG2A.Principle1.Guideline2.4", type: "warning", typeCode: 2, diff --git a/src/core/lib/puppet/page/get-page-issues.ts b/src/core/lib/puppet/page/get-page-issues.ts index ae36e94..659551d 100644 --- a/src/core/lib/puppet/page/get-page-issues.ts +++ b/src/core/lib/puppet/page/get-page-issues.ts @@ -1,6 +1,17 @@ import { kayle, Audit } from "kayle"; import type { IssueMeta } from "../../../../types"; +// const baseRunners = ["htmlcs", "axe"]; +// const DEFAULT_RUNNERS = process.env.DEFAULT_RUNNERS +// ? process.env.DEFAULT_RUNNERS.split(",") +// : []; +// const dr = DEFAULT_RUNNERS.length +// ? DEFAULT_RUNNERS.filter((runner) => +// ["htmlcs", "axe", "ace"].includes(runner) +// ) +// : baseRunners; +// const defaultRunners = dr.length ? dr : baseRunners; + export const getPageIssues = async ({ page, browser,