From 63a6108842e42de87988614eb8f3ba4bfbd92a37 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 29 Apr 2024 16:38:13 +0000 Subject: [PATCH 01/47] chore: sync from w3c/aria-common Generated by https://github.com/w3c/aria-common/commit/058f08fdb9f285a58958611bc1ded07170c8ec1d --- common/script/participants.js | 81 +++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 common/script/participants.js diff --git a/common/script/participants.js b/common/script/participants.js new file mode 100644 index 0000000000..a44728dfd9 --- /dev/null +++ b/common/script/participants.js @@ -0,0 +1,81 @@ +function getParticipants() { + // Define the W3C's group ID + const GROUP_ID = "83726"; + + // Define the base URL for the API, using the group ID + const BASE_URL = `https://api.w3.org/groups/${GROUP_ID}`; + + // Define the ID of the list element where the user information will be inserted + const LIST_ID = "ack_group"; + + /** + * Fetches users and their affiliations from the API and returns an array of user information. + * Each element in the array is an object containing the user's title and affiliation. + * + * @async + * @function getUsersInfo + * @returns {Promise>} - A promise that resolves to an array of user information. + */ + async function getUsersInfo() { + // Send a GET request to the users endpoint + const response = await fetch(`${BASE_URL}/users`); + // Fetch the JSON data from the response + const data = await response.json(); + // Extract the list of users + const users = data._links.users; + + // Initialize an empty array to store user information + let usersInfo = []; + // Iterate over each user + for (const user of users) { + // Fetch the affiliation of the current user + const affiliation = await getAffiliation(user); + // Push an object containing the user's title and affiliation to the usersInfo array + usersInfo.push({ title: user.title, affiliation: affiliation }); + } + // Return the array containing information of all users + return usersInfo; + } + + /** + * Fetches the affiliation of a given user from the API. + * + * @async + * @function getAffiliation + * @param {Object} user - The user object. + * @returns {Promise} - A promise that resolves to the title of the user's affiliation. + */ + async function getAffiliation(user) { + // Send a GET request to the affiliations endpoint of the user + const response = await fetch(user.href + "/affiliations/"); + + // Fetch the JSON data from the response + const affiliations = await response.json(); + + // Extract the title of the first affiliation + const affiliation = affiliations._links.affiliations[0].title; + + // Return the title of the affiliation + return affiliation; + } + + /** + * Fetches users and their affiliations, creates a list item for each user with their title and affiliation, + * and appends these list items to a specified list in the document. + * + * @async + * @function insertUsersInfoIntoDocument + */ + async function insertUsersInfoIntoDocument() { + const usersInfo = await getUsersInfo(); + const usersList = document.querySelector(`#${LIST_ID} ul`); + + for (const user of usersInfo) { + const li = document.createElement("li"); + li.textContent = `${user.title} (${user.affiliation})`; + usersList.appendChild(li); + } + } + + insertUsersInfoIntoDocument(); +} From dd83456f081abd6ed4a768709a084d6842280f42 Mon Sep 17 00:00:00 2001 From: Erika Miguel Date: Wed, 1 May 2024 11:22:16 -0400 Subject: [PATCH 02/47] Infrastructure: Bump eslint and prettier related dependencies (#2961) - Bumps eslint from 8.52.0 to 8.57.0 - Bumps eslint-plugin-jsdoc from 39.3.3 to 48.2.3 - Bumps eslint-plugin-html from 6.2.0 to 8.1.1 - Bumps eslint-config-prettier from 8.5.0 to 9.1.0 - Bumps eslint-plugin-prettier from 4.2.1 to 5.1.3 - Bumps eslint-plugin-ava from 13.2.0 to 14.0.0 - Bumps prettier from 2.7.1 to 3.2.5 --------- Co-authored-by: Howard Edwards --- .eslintrc.json | 2 + .prettierrc | 1 + .../alertdialog/examples/css/alertdialog.css | 4 +- .../dialog-modal/examples/css/dialog.css | 4 +- package-lock.json | 542 ++++++++++++------ package.json | 14 +- scripts/coverage-report.js | 15 +- test/tests/accordion_accordion.js | 10 +- test/tests/treeview_treeview-navigation.js | 5 +- test/util/assertAriaDescribedby.js | 5 +- 10 files changed, 396 insertions(+), 206 deletions(-) diff --git a/.eslintrc.json b/.eslintrc.json index 02e73bdf48..c86399ea95 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -12,11 +12,13 @@ "ecmaVersion": 6 }, "rules": { + "jsdoc/check-line-alignment": 0, "jsdoc/no-undefined-types": 0, "jsdoc/require-jsdoc": 0, "jsdoc/require-param-description": 0, "jsdoc/require-param-type": 0, "jsdoc/require-returns-description": 0, + "jsdoc/tag-lines": ["warn", "any", { "startLines": 1 }], "strict": [2, "global"], "no-console": "error" }, diff --git a/.prettierrc b/.prettierrc index 80411df699..0e4df9c484 100644 --- a/.prettierrc +++ b/.prettierrc @@ -1,5 +1,6 @@ { "singleQuote": true, + "trailingComma": "es5", "overrides": [ { "files": ["**/*.css"], diff --git a/content/patterns/alertdialog/examples/css/alertdialog.css b/content/patterns/alertdialog/examples/css/alertdialog.css index 6f575b9dce..94edb27785 100644 --- a/content/patterns/alertdialog/examples/css/alertdialog.css +++ b/content/patterns/alertdialog/examples/css/alertdialog.css @@ -21,7 +21,9 @@ min-width: calc(640px - (15px * 2)); /* == breakpoint - left+right margin */ min-height: auto; - box-shadow: 0 19px 38px rgb(0 0 0 / 12%), 0 15px 12px rgb(0 0 0 / 22%); + box-shadow: + 0 19px 38px rgb(0 0 0 / 12%), + 0 15px 12px rgb(0 0 0 / 22%); } } diff --git a/content/patterns/dialog-modal/examples/css/dialog.css b/content/patterns/dialog-modal/examples/css/dialog.css index b5132a16a0..a8c3112745 100644 --- a/content/patterns/dialog-modal/examples/css/dialog.css +++ b/content/patterns/dialog-modal/examples/css/dialog.css @@ -21,7 +21,9 @@ min-width: calc(640px - (15px * 2)); /* == breakpoint - left+right margin */ min-height: auto; - box-shadow: 0 19px 38px rgb(0 0 0 / 12%), 0 15px 12px rgb(0 0 0 / 22%); + box-shadow: + 0 19px 38px rgb(0 0 0 / 12%), + 0 15px 12px rgb(0 0 0 / 22%); } } diff --git a/package-lock.json b/package-lock.json index 78efce3746..e6209d7697 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,12 +20,12 @@ "cheerio": "^1.0.0-rc.12", "cross-spawn": "^7.0.3", "cspell": "^7.3.8", - "eslint": "^8.52.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-ava": "^13.2.0", - "eslint-plugin-html": "^6.2.0", - "eslint-plugin-jsdoc": "^39.3.3", - "eslint-plugin-prettier": "^4.2.1", + "eslint": "^8.57.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-ava": "^14.0.0", + "eslint-plugin-html": "^8.1.1", + "eslint-plugin-jsdoc": "^48.2.3", + "eslint-plugin-prettier": "^5.1.3", "geckodriver": "^3.2.0", "glob": "^8.1.0", "htmlhint": "^1.1.4", @@ -33,7 +33,7 @@ "husky": "^8.0.3", "lint-staged": "^13.1.1", "node-fetch": "^2.6.7", - "prettier": "^2.7.1", + "prettier": "^3.2.5", "selenium-webdriver": "^4.14.0", "stylelint": "^15.1.0", "stylelint-config-standard": "^30.0.1", @@ -1028,17 +1028,17 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.31.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.31.0.tgz", - "integrity": "sha512-tc1/iuQcnaiSIUVad72PBierDFpsxdUHtEF/OrfqvM1CBAsIoMP51j52jTMb3dXriwhieTo289InzZj72jL3EQ==", + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.42.0.tgz", + "integrity": "sha512-R1w57YlVA6+YE01wch3GPYn6bCsrOV3YW/5oGGE2tmX6JcL9Nr+b5IikrjMPF+v9CV3ay+obImEdsDhovhJrzw==", "dev": true, "dependencies": { - "comment-parser": "1.3.1", - "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "~3.1.0" + "comment-parser": "1.4.1", + "esquery": "^1.5.0", + "jsdoc-type-pratt-parser": "~4.0.0" }, "engines": { - "node": "^14 || ^16 || ^17 || ^18" + "node": ">=16" } }, "node_modules/@eslint-community/eslint-utils": { @@ -1078,9 +1078,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", - "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -1119,22 +1119,22 @@ } }, "node_modules/@eslint/js": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.52.0.tgz", - "integrity": "sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.13", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", - "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^2.0.1", - "debug": "^4.1.1", + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", "minimatch": "^3.0.5" }, "engines": { @@ -1155,9 +1155,9 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", - "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", + "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", "dev": true }, "node_modules/@jridgewell/gen-mapping": { @@ -1394,6 +1394,18 @@ "@octokit/openapi-types": "^11.2.0" } }, + "node_modules/@pkgr/core": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", + "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" + } + }, "node_modules/@sindresorhus/is": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", @@ -1629,6 +1641,15 @@ "node": ">= 8" } }, + "node_modules/are-docs-informative": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/are-docs-informative/-/are-docs-informative-0.0.2.tgz", + "integrity": "sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==", + "dev": true, + "engines": { + "node": ">=14" + } + }, "node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -2116,6 +2137,18 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/cacheable-lookup": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", @@ -2647,9 +2680,9 @@ } }, "node_modules/comment-parser": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.1.tgz", - "integrity": "sha512-B52sN2VNghyq5ofvUsqZjmk6YkihBX5vMSChmSK9v4ShjKf3Vk5Xcmgpw4o+iIgtrnM/u5FiMpz9VKb8lpBveA==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", + "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", "dev": true, "engines": { "node": ">= 12.0.0" @@ -3634,16 +3667,16 @@ } }, "node_modules/eslint": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.52.0.tgz", - "integrity": "sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.52.0", - "@humanwhocodes/config-array": "^0.11.13", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "@ungap/structured-clone": "^1.2.0", @@ -3689,9 +3722,9 @@ } }, "node_modules/eslint-config-prettier": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz", - "integrity": "sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", + "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", "dev": true, "bin": { "eslint-config-prettier": "bin/cli.js" @@ -3701,9 +3734,9 @@ } }, "node_modules/eslint-plugin-ava": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-13.2.0.tgz", - "integrity": "sha512-i5B5izsEdERKQLruk1nIWzTTE7C26/ju8qQf7JeyRv32XT2lRMW0zMFZNhIrEf5/5VvpSz2rqrV7UcjClGbKsw==", + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-14.0.0.tgz", + "integrity": "sha512-XmKT6hppaipwwnLVwwvQliSU6AF1QMHiNoLD5JQfzhUhf0jY7CO0O624fQrE+Y/fTb9vbW8r77nKf7M/oHulxw==", "dev": true, "dependencies": { "enhance-visitors": "^1.0.0", @@ -3716,10 +3749,10 @@ "resolve-from": "^5.0.0" }, "engines": { - "node": ">=12.22 <13 || >=14.17 <15 || >=16.4" + "node": ">=14.17 <15 || >=16.4" }, "peerDependencies": { - "eslint": ">=7.22.0" + "eslint": ">=8.26.0" } }, "node_modules/eslint-plugin-ava/node_modules/find-up": { @@ -3796,18 +3829,64 @@ } }, "node_modules/eslint-plugin-html": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-html/-/eslint-plugin-html-6.2.0.tgz", - "integrity": "sha512-vi3NW0E8AJombTvt8beMwkL1R/fdRWl4QSNRNMhVQKWm36/X0KF0unGNAY4mqUF06mnwVWZcIcerrCnfn9025g==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-html/-/eslint-plugin-html-8.1.1.tgz", + "integrity": "sha512-6qmlJsc40D2m3Dn9oEH+0PAOkJhxVu0f5sVItqpCE0YWgYnyP4xCjBc3UWTHaJcY9ARkWOLIIuXLq0ndRnQOHw==", + "dev": true, + "dependencies": { + "htmlparser2": "^9.1.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/eslint-plugin-html/node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dev": true, + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/eslint-plugin-html/node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", "dev": true, "dependencies": { - "htmlparser2": "^7.1.2" + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/eslint-plugin-html/node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dev": true, + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" } }, "node_modules/eslint-plugin-html/node_modules/entities": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz", - "integrity": "sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true, "engines": { "node": ">=0.12" @@ -3817,9 +3896,9 @@ } }, "node_modules/eslint-plugin-html/node_modules/htmlparser2": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-7.2.0.tgz", - "integrity": "sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz", + "integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==", "dev": true, "funding": [ "https://github.com/fb55/htmlparser2?sponsor=1", @@ -3829,31 +3908,33 @@ } ], "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.2", - "domutils": "^2.8.0", - "entities": "^3.0.1" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.1.0", + "entities": "^4.5.0" } }, "node_modules/eslint-plugin-jsdoc": { - "version": "39.3.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.3.3.tgz", - "integrity": "sha512-K/DAjKRUNaUTf0KQhI9PvsF+Y3mGDx/j0pofXsJCQe/tmRsRweBIXR353c8nAro0lytZYEf7l0PluBpzKDiHxw==", + "version": "48.2.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.3.tgz", + "integrity": "sha512-r9DMAmFs66VNvNqRLLjHejdnJtILrt3xGi+Qx0op0oRfFGVpOR1Hb3BC++MacseHx93d8SKYPhyrC9BS7Os2QA==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.31.0", - "comment-parser": "1.3.1", + "@es-joy/jsdoccomment": "~0.42.0", + "are-docs-informative": "^0.0.2", + "comment-parser": "1.4.1", "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", - "esquery": "^1.4.0", - "semver": "^7.3.7", - "spdx-expression-parse": "^3.0.1" + "esquery": "^1.5.0", + "is-builtin-module": "^3.2.1", + "semver": "^7.6.0", + "spdx-expression-parse": "^4.0.0" }, "engines": { - "node": "^14 || ^16 || ^17 || ^18" + "node": ">=18" }, "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" + "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" } }, "node_modules/eslint-plugin-jsdoc/node_modules/escape-string-regexp": { @@ -3869,9 +3950,9 @@ } }, "node_modules/eslint-plugin-jsdoc/node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -3884,9 +3965,9 @@ } }, "node_modules/eslint-plugin-jsdoc/node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-4.0.0.tgz", + "integrity": "sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==", "dev": true, "dependencies": { "spdx-exceptions": "^2.1.0", @@ -3894,21 +3975,30 @@ } }, "node_modules/eslint-plugin-prettier": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", - "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.1.3.tgz", + "integrity": "sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==", "dev": true, "dependencies": { - "prettier-linter-helpers": "^1.0.0" + "prettier-linter-helpers": "^1.0.0", + "synckit": "^0.8.6" }, "engines": { - "node": ">=12.0.0" + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint-plugin-prettier" }, "peerDependencies": { - "eslint": ">=7.28.0", - "prettier": ">=2.0.0" + "@types/eslint": ">=8.0.0", + "eslint": ">=8.0.0", + "eslint-config-prettier": "*", + "prettier": ">=3.0.0" }, "peerDependenciesMeta": { + "@types/eslint": { + "optional": true + }, "eslint-config-prettier": { "optional": true } @@ -4555,9 +4645,9 @@ } }, "node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -5025,6 +5115,21 @@ "node": ">=8" } }, + "node_modules/is-builtin-module": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", + "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", + "dev": true, + "dependencies": { + "builtin-modules": "^3.3.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-core-module": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", @@ -5194,9 +5299,9 @@ } }, "node_modules/jsdoc-type-pratt-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-3.1.0.tgz", - "integrity": "sha512-MgtD0ZiCDk9B+eI73BextfRrVQl0oyzRG8B2BjORts6jbunj4ScKPcyXGTbB6eXL4y9TzxCm6hyeLq/2ASzNdw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz", + "integrity": "sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==", "dev": true, "engines": { "node": ">=12.0.0" @@ -6604,15 +6709,15 @@ } }, "node_modules/prettier": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz", - "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", + "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", "dev": true, "bin": { - "prettier": "bin-prettier.js" + "prettier": "bin/prettier.cjs" }, "engines": { - "node": ">=10.13.0" + "node": ">=14" }, "funding": { "url": "https://github.com/prettier/prettier?sponsor=1" @@ -7447,6 +7552,22 @@ "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=", "dev": true }, + "node_modules/synckit": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz", + "integrity": "sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==", + "dev": true, + "dependencies": { + "@pkgr/core": "^0.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" + } + }, "node_modules/table": { "version": "6.8.1", "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", @@ -7597,9 +7718,9 @@ } }, "node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==", + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", "dev": true }, "node_modules/type-check": { @@ -8737,14 +8858,14 @@ "requires": {} }, "@es-joy/jsdoccomment": { - "version": "0.31.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.31.0.tgz", - "integrity": "sha512-tc1/iuQcnaiSIUVad72PBierDFpsxdUHtEF/OrfqvM1CBAsIoMP51j52jTMb3dXriwhieTo289InzZj72jL3EQ==", + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.42.0.tgz", + "integrity": "sha512-R1w57YlVA6+YE01wch3GPYn6bCsrOV3YW/5oGGE2tmX6JcL9Nr+b5IikrjMPF+v9CV3ay+obImEdsDhovhJrzw==", "dev": true, "requires": { - "comment-parser": "1.3.1", - "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "~3.1.0" + "comment-parser": "1.4.1", + "esquery": "^1.5.0", + "jsdoc-type-pratt-parser": "~4.0.0" } }, "@eslint-community/eslint-utils": { @@ -8771,9 +8892,9 @@ "dev": true }, "@eslint/eslintrc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", - "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -8805,19 +8926,19 @@ } }, "@eslint/js": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.52.0.tgz", - "integrity": "sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", "dev": true }, "@humanwhocodes/config-array": { - "version": "0.11.13", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", - "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", "dev": true, "requires": { - "@humanwhocodes/object-schema": "^2.0.1", - "debug": "^4.1.1", + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", "minimatch": "^3.0.5" } }, @@ -8828,9 +8949,9 @@ "dev": true }, "@humanwhocodes/object-schema": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", - "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", + "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", "dev": true }, "@jridgewell/gen-mapping": { @@ -9037,6 +9158,12 @@ "@octokit/openapi-types": "^11.2.0" } }, + "@pkgr/core": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", + "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", + "dev": true + }, "@sindresorhus/is": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", @@ -9217,6 +9344,12 @@ "picomatch": "^2.0.4" } }, + "are-docs-informative": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/are-docs-informative/-/are-docs-informative-0.0.2.tgz", + "integrity": "sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==", + "dev": true + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -9543,6 +9676,12 @@ "update-browserslist-db": "^1.0.13" } }, + "builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true + }, "cacheable-lookup": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", @@ -9915,9 +10054,9 @@ } }, "comment-parser": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.1.tgz", - "integrity": "sha512-B52sN2VNghyq5ofvUsqZjmk6YkihBX5vMSChmSK9v4ShjKf3Vk5Xcmgpw4o+iIgtrnM/u5FiMpz9VKb8lpBveA==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", + "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", "dev": true }, "common-path-prefix": { @@ -10621,16 +10760,16 @@ "dev": true }, "eslint": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.52.0.tgz", - "integrity": "sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.52.0", - "@humanwhocodes/config-array": "^0.11.13", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "@ungap/structured-clone": "^1.2.0", @@ -10748,16 +10887,16 @@ } }, "eslint-config-prettier": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz", - "integrity": "sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", + "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", "dev": true, "requires": {} }, "eslint-plugin-ava": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-13.2.0.tgz", - "integrity": "sha512-i5B5izsEdERKQLruk1nIWzTTE7C26/ju8qQf7JeyRv32XT2lRMW0zMFZNhIrEf5/5VvpSz2rqrV7UcjClGbKsw==", + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-14.0.0.tgz", + "integrity": "sha512-XmKT6hppaipwwnLVwwvQliSU6AF1QMHiNoLD5JQfzhUhf0jY7CO0O624fQrE+Y/fTb9vbW8r77nKf7M/oHulxw==", "dev": true, "requires": { "enhance-visitors": "^1.0.0", @@ -10819,47 +10958,80 @@ } }, "eslint-plugin-html": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-html/-/eslint-plugin-html-6.2.0.tgz", - "integrity": "sha512-vi3NW0E8AJombTvt8beMwkL1R/fdRWl4QSNRNMhVQKWm36/X0KF0unGNAY4mqUF06mnwVWZcIcerrCnfn9025g==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-html/-/eslint-plugin-html-8.1.1.tgz", + "integrity": "sha512-6qmlJsc40D2m3Dn9oEH+0PAOkJhxVu0f5sVItqpCE0YWgYnyP4xCjBc3UWTHaJcY9ARkWOLIIuXLq0ndRnQOHw==", "dev": true, "requires": { - "htmlparser2": "^7.1.2" + "htmlparser2": "^9.1.0" }, "dependencies": { + "dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dev": true, + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + } + }, + "domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dev": true, + "requires": { + "domelementtype": "^2.3.0" + } + }, + "domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dev": true, + "requires": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + } + }, "entities": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz", - "integrity": "sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true }, "htmlparser2": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-7.2.0.tgz", - "integrity": "sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz", + "integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==", "dev": true, "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.2", - "domutils": "^2.8.0", - "entities": "^3.0.1" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.1.0", + "entities": "^4.5.0" } } } }, "eslint-plugin-jsdoc": { - "version": "39.3.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.3.3.tgz", - "integrity": "sha512-K/DAjKRUNaUTf0KQhI9PvsF+Y3mGDx/j0pofXsJCQe/tmRsRweBIXR353c8nAro0lytZYEf7l0PluBpzKDiHxw==", + "version": "48.2.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.3.tgz", + "integrity": "sha512-r9DMAmFs66VNvNqRLLjHejdnJtILrt3xGi+Qx0op0oRfFGVpOR1Hb3BC++MacseHx93d8SKYPhyrC9BS7Os2QA==", "dev": true, "requires": { - "@es-joy/jsdoccomment": "~0.31.0", - "comment-parser": "1.3.1", + "@es-joy/jsdoccomment": "~0.42.0", + "are-docs-informative": "^0.0.2", + "comment-parser": "1.4.1", "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", - "esquery": "^1.4.0", - "semver": "^7.3.7", - "spdx-expression-parse": "^3.0.1" + "esquery": "^1.5.0", + "is-builtin-module": "^3.2.1", + "semver": "^7.6.0", + "spdx-expression-parse": "^4.0.0" }, "dependencies": { "escape-string-regexp": { @@ -10869,18 +11041,18 @@ "dev": true }, "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "requires": { "lru-cache": "^6.0.0" } }, "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-4.0.0.tgz", + "integrity": "sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==", "dev": true, "requires": { "spdx-exceptions": "^2.1.0", @@ -10890,12 +11062,13 @@ } }, "eslint-plugin-prettier": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", - "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.1.3.tgz", + "integrity": "sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==", "dev": true, "requires": { - "prettier-linter-helpers": "^1.0.0" + "prettier-linter-helpers": "^1.0.0", + "synckit": "^0.8.6" } }, "eslint-scope": { @@ -11273,9 +11446,9 @@ } }, "globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -11614,6 +11787,15 @@ "binary-extensions": "^2.0.0" } }, + "is-builtin-module": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", + "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", + "dev": true, + "requires": { + "builtin-modules": "^3.3.0" + } + }, "is-core-module": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", @@ -11738,9 +11920,9 @@ } }, "jsdoc-type-pratt-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-3.1.0.tgz", - "integrity": "sha512-MgtD0ZiCDk9B+eI73BextfRrVQl0oyzRG8B2BjORts6jbunj4ScKPcyXGTbB6eXL4y9TzxCm6hyeLq/2ASzNdw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz", + "integrity": "sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==", "dev": true }, "jsesc": { @@ -12714,9 +12896,9 @@ "dev": true }, "prettier": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz", - "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", + "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", "dev": true }, "prettier-linter-helpers": { @@ -13340,6 +13522,16 @@ "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=", "dev": true }, + "synckit": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz", + "integrity": "sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==", + "dev": true, + "requires": { + "@pkgr/core": "^0.1.0", + "tslib": "^2.6.2" + } + }, "table": { "version": "6.8.1", "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", @@ -13458,9 +13650,9 @@ "dev": true }, "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==", + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", "dev": true }, "type-check": { diff --git a/package.json b/package.json index 3d38024fa1..6fdaa835dd 100644 --- a/package.json +++ b/package.json @@ -43,12 +43,12 @@ "cheerio": "^1.0.0-rc.12", "cross-spawn": "^7.0.3", "cspell": "^7.3.8", - "eslint": "^8.52.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-ava": "^13.2.0", - "eslint-plugin-html": "^6.2.0", - "eslint-plugin-jsdoc": "^39.3.3", - "eslint-plugin-prettier": "^4.2.1", + "eslint": "^8.57.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-ava": "^14.0.0", + "eslint-plugin-html": "^8.1.1", + "eslint-plugin-jsdoc": "^48.2.3", + "eslint-plugin-prettier": "^5.1.3", "geckodriver": "^3.2.0", "glob": "^8.1.0", "htmlhint": "^1.1.4", @@ -56,7 +56,7 @@ "husky": "^8.0.3", "lint-staged": "^13.1.1", "node-fetch": "^2.6.7", - "prettier": "^2.7.1", + "prettier": "^3.2.5", "selenium-webdriver": "^4.14.0", "stylelint": "^15.1.0", "stylelint-config-standard": "^30.0.1", diff --git a/scripts/coverage-report.js b/scripts/coverage-report.js index 2244b571da..305d77de83 100644 --- a/scripts/coverage-report.js +++ b/scripts/coverage-report.js @@ -870,8 +870,7 @@ let PropsWithNoExamples = sortedPropertiesAndStates.reduce(function ( } return `${set}`; -}, -''); +}, ''); $('#props_with_no_examples_ul').html(PropsWithNoExamples); $('.props_with_no_examples_count').html(countNoExamples.toString()); @@ -898,8 +897,7 @@ let PropsWithOneExample = sortedPropertiesAndStates.reduce(function ( } return `${set}`; -}, -''); +}, ''); $('#props_with_one_example_tbody').html(PropsWithOneExample); $('.props_with_one_example_count').html(countOneExample.toString()); @@ -923,8 +921,7 @@ let PropsWithMoreThanOneExample = sortedPropertiesAndStates.reduce(function ( } return `${set}`; -}, -''); +}, ''); $('#props_with_more_than_one_tbody').html(PropsWithMoreThanOneExample); $('.props_with_more_than_one_examples_count').html( @@ -1005,8 +1002,7 @@ let IndexOfExampleCodingPractices = indexOfExamples.reduce(function ( ${example.documentationAttributes.length} ${checkDocumentation} `; -}, -''); +}, ''); let IndexOfExampleGraphics = indexOfExamples.reduce(function (set, example) { let count = example.svgHTML; @@ -1063,8 +1059,7 @@ let IndexOfExampleMousePointer = indexOfExamples.reduce(function ( ${htmlYesOrNo(mouseCount)} ${htmlYesOrNo(pointerCount)} `; -}, -''); +}, ''); let countClass = indexOfExamples.reduce(function (set, example) { return set + (example.classJS ? 1 : 0); diff --git a/test/tests/accordion_accordion.js b/test/tests/accordion_accordion.js index 6085bd56ce..533eb32a5f 100644 --- a/test/tests/accordion_accordion.js +++ b/test/tests/accordion_accordion.js @@ -149,9 +149,8 @@ ariaTest( for (let expandIndex of [1, 2]) { await buttons[expandIndex].sendKeys(Key.ENTER); const panelDisplay = await panels[expandIndex].isDisplayed(); - const buttonAria = await buttons[expandIndex].getAttribute( - 'aria-expanded' - ); + const buttonAria = + await buttons[expandIndex].getAttribute('aria-expanded'); t.true( panelDisplay, @@ -189,9 +188,8 @@ ariaTest( for (let expandIndex of [1, 2]) { await buttons[expandIndex].sendKeys(Key.SPACE); const panelDisplay = await panels[expandIndex].isDisplayed(); - const buttonAria = await buttons[expandIndex].getAttribute( - 'aria-expanded' - ); + const buttonAria = + await buttons[expandIndex].getAttribute('aria-expanded'); t.true( panelDisplay, diff --git a/test/tests/treeview_treeview-navigation.js b/test/tests/treeview_treeview-navigation.js index c905bb86e7..a900461d60 100644 --- a/test/tests/treeview_treeview-navigation.js +++ b/test/tests/treeview_treeview-navigation.js @@ -503,9 +503,8 @@ ariaTest( const isExpandable = await topLevelTreeitems[i].getAttribute('aria-owns'); if (isExpandable) { - const expandedState = await topLevelTreeitems[i].getAttribute( - 'aria-expanded' - ); + const expandedState = + await topLevelTreeitems[i].getAttribute('aria-expanded'); t.is( expandedState, diff --git a/test/util/assertAriaDescribedby.js b/test/util/assertAriaDescribedby.js index 59335c9253..70fd799895 100644 --- a/test/util/assertAriaDescribedby.js +++ b/test/util/assertAriaDescribedby.js @@ -26,9 +26,8 @@ module.exports = async function assertAriaDescribedby(t, elementSelector) { '"aria-describedby" attribute should exist on element: ' + elementSelector ); - let descriptionValue = await elements[index].getAttribute( - 'aria-describedby' - ); + let descriptionValue = + await elements[index].getAttribute('aria-describedby'); assert.ok( descriptionValue, From 4dc7565de1e610dcf25d1c136de63b4c9ccfcdfa Mon Sep 17 00:00:00 2001 From: Erika Miguel Date: Wed, 1 May 2024 11:46:47 -0400 Subject: [PATCH 03/47] Infrastructure: Update @babel/core from 7.23.2 to 7.24.5 and @babel/eslint-parser from 7.22.15 to 7.24.5 (#2959) - Bumps @babel/core from 7.23.2 to 7.24.5 - Bumps @babel/eslint-parser from 7.22.15 to 7.24.5 --- package-lock.json | 614 +++++++++++++++++++--------------------------- package.json | 4 +- 2 files changed, 253 insertions(+), 365 deletions(-) diff --git a/package-lock.json b/package-lock.json index e6209d7697..b2e0a6579a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,8 +14,8 @@ "node-html-parser": "^5.2.0" }, "devDependencies": { - "@babel/core": "^7.23.2", - "@babel/eslint-parser": "^7.22.15", + "@babel/core": "^7.24.5", + "@babel/eslint-parser": "^7.24.5", "ava": "^5.3.1", "cheerio": "^1.0.0-rc.12", "cross-spawn": "^7.0.3", @@ -63,105 +63,43 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", - "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", "dev": true, "dependencies": { - "@babel/highlight": "^7.22.13", - "chalk": "^2.4.2" + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/code-frame/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/code-frame/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/@babel/code-frame/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/@babel/compat-data": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", - "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.5.tgz", + "integrity": "sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", - "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz", + "integrity": "sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.0", - "@babel/helper-compilation-targets": "^7.22.15", - "@babel/helper-module-transforms": "^7.23.0", - "@babel/helpers": "^7.23.2", - "@babel/parser": "^7.23.0", - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.2", - "@babel/types": "^7.23.0", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-module-transforms": "^7.24.5", + "@babel/helpers": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -186,9 +124,9 @@ } }, "node_modules/@babel/eslint-parser": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.22.15.tgz", - "integrity": "sha512-yc8OOBIQk1EcRrpizuARSQS0TWAcOMpEJ1aafhNznaeYkeL+OhqnDObGFylB8ka8VFF/sZc+S4RzHyO+3LjQxg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.24.5.tgz", + "integrity": "sha512-gsUcqS/fPlgAw1kOtpss7uhY6E9SFFANQ6EFX5GTvzUwaV0+sGaZWk6xq22MOdeT9wfxyokW3ceCUvOiRtZciQ==", "dev": true, "dependencies": { "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", @@ -200,7 +138,7 @@ }, "peerDependencies": { "@babel/core": "^7.11.0", - "eslint": "^7.5.0 || ^8.0.0" + "eslint": "^7.5.0 || ^8.0.0 || ^9.0.0" } }, "node_modules/@babel/eslint-parser/node_modules/semver": { @@ -213,14 +151,14 @@ } }, "node_modules/@babel/generator": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", - "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", + "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", "dev": true, "dependencies": { - "@babel/types": "^7.23.0", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", + "@babel/types": "^7.24.5", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" }, "engines": { @@ -228,14 +166,14 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", - "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.15", - "browserslist": "^4.21.9", + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", "lru-cache": "^5.1.1", "semver": "^6.3.1" }, @@ -302,28 +240,28 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", - "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", "dev": true, "dependencies": { - "@babel/types": "^7.22.15" + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz", - "integrity": "sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz", + "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" + "@babel/helper-module-imports": "^7.24.3", + "@babel/helper-simple-access": "^7.24.5", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.5" }, "engines": { "node": ">=6.9.0" @@ -333,79 +271,80 @@ } }, "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz", + "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", + "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", + "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", - "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz", - "integrity": "sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz", + "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==", "dev": true, "dependencies": { - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.2", - "@babel/types": "^7.23.0" + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", - "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", + "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-validator-identifier": "^7.24.5", "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" @@ -474,9 +413,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", - "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", + "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -486,34 +425,34 @@ } }, "node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", - "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", + "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.0", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.0", - "@babel/types": "^7.23.0", - "debug": "^4.1.0", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/types": "^7.24.5", + "debug": "^4.3.1", "globals": "^11.1.0" }, "engines": { @@ -530,13 +469,13 @@ } }, "node_modules/@babel/types": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", - "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", + "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-string-parser": "^7.24.1", + "@babel/helper-validator-identifier": "^7.24.5", "to-fast-properties": "^2.0.0" }, "engines": { @@ -1161,14 +1100,14 @@ "dev": true }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", + "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" @@ -1184,9 +1123,9 @@ } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true, "engines": { "node": ">=6.0.0" @@ -1199,9 +1138,9 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.20", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", - "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -2106,9 +2045,9 @@ } }, "node_modules/browserslist": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", - "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", "dev": true, "funding": [ { @@ -2125,9 +2064,9 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001541", - "electron-to-chromium": "^1.4.535", - "node-releases": "^2.0.13", + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", "update-browserslist-db": "^1.0.13" }, "bin": { @@ -2227,9 +2166,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001559", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001559.tgz", - "integrity": "sha512-cPiMKZgqgkg5LY3/ntGeLFUpi6tzddBNS58A4tnTgQw1zON7u2sZMU7SzOeVH4tj20++9ggL+V6FDOFMTaFFYA==", + "version": "1.0.30001597", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001597.tgz", + "integrity": "sha512-7LjJvmQU6Sj7bL0j5b5WY/3n7utXUJvAe1lxhsHDbLmwX9mdL86Yjtr+5SRCyf8qME4M7pU2hswj0FpyBVCv9w==", "dev": true, "funding": [ { @@ -3587,9 +3526,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.572", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.572.tgz", - "integrity": "sha512-RlFobl4D3ieetbnR+2EpxdzFl9h0RAJkPK3pfiwMug2nhBin2ZCsGIAJWdpNniLz43sgXam/CgipOmvTA+rUiA==", + "version": "1.4.706", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.706.tgz", + "integrity": "sha512-fO01fufoGd6jKK3HR8ofBapF3ZPfgxNJ/ua9xQAhFu93TwWIs4d+weDn3kje3GB4S7aGUTfk5nvdU5F7z5mF9Q==", "dev": true }, "node_modules/emittery": { @@ -6109,9 +6048,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, "node_modules/nofilter": { @@ -8057,89 +7996,37 @@ } }, "@babel/code-frame": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", - "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", "dev": true, "requires": { - "@babel/highlight": "^7.22.13", - "chalk": "^2.4.2" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" } }, "@babel/compat-data": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", - "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.5.tgz", + "integrity": "sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==", "dev": true }, "@babel/core": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", - "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz", + "integrity": "sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==", "dev": true, "requires": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.0", - "@babel/helper-compilation-targets": "^7.22.15", - "@babel/helper-module-transforms": "^7.23.0", - "@babel/helpers": "^7.23.2", - "@babel/parser": "^7.23.0", - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.2", - "@babel/types": "^7.23.0", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-module-transforms": "^7.24.5", + "@babel/helpers": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -8156,9 +8043,9 @@ } }, "@babel/eslint-parser": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.22.15.tgz", - "integrity": "sha512-yc8OOBIQk1EcRrpizuARSQS0TWAcOMpEJ1aafhNznaeYkeL+OhqnDObGFylB8ka8VFF/sZc+S4RzHyO+3LjQxg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.24.5.tgz", + "integrity": "sha512-gsUcqS/fPlgAw1kOtpss7uhY6E9SFFANQ6EFX5GTvzUwaV0+sGaZWk6xq22MOdeT9wfxyokW3ceCUvOiRtZciQ==", "dev": true, "requires": { "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", @@ -8175,26 +8062,26 @@ } }, "@babel/generator": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", - "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", + "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", "dev": true, "requires": { - "@babel/types": "^7.23.0", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", + "@babel/types": "^7.24.5", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" } }, "@babel/helper-compilation-targets": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", - "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", "dev": true, "requires": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.15", - "browserslist": "^4.21.9", + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", "lru-cache": "^5.1.1", "semver": "^6.3.1" }, @@ -8248,83 +8135,84 @@ } }, "@babel/helper-module-imports": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", - "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", "dev": true, "requires": { - "@babel/types": "^7.22.15" + "@babel/types": "^7.24.0" } }, "@babel/helper-module-transforms": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz", - "integrity": "sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz", + "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==", "dev": true, "requires": { "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" + "@babel/helper-module-imports": "^7.24.3", + "@babel/helper-simple-access": "^7.24.5", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.5" } }, "@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz", + "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==", "dev": true, "requires": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" } }, "@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", + "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", "dev": true, "requires": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" } }, "@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", "dev": true }, "@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", + "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", "dev": true }, "@babel/helper-validator-option": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", - "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", "dev": true }, "@babel/helpers": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz", - "integrity": "sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz", + "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==", "dev": true, "requires": { - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.2", - "@babel/types": "^7.23.0" + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5" } }, "@babel/highlight": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", - "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", + "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-validator-identifier": "^7.24.5", "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "dependencies": { "ansi-styles": { @@ -8380,37 +8268,37 @@ } }, "@babel/parser": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", - "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", + "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", "dev": true }, "@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", "dev": true, "requires": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" } }, "@babel/traverse": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", - "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", + "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", "dev": true, "requires": { - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.0", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.0", - "@babel/types": "^7.23.0", - "debug": "^4.1.0", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/types": "^7.24.5", + "debug": "^4.3.1", "globals": "^11.1.0" }, "dependencies": { @@ -8423,13 +8311,13 @@ } }, "@babel/types": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", - "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", + "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", "dev": true, "requires": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-string-parser": "^7.24.1", + "@babel/helper-validator-identifier": "^7.24.5", "to-fast-properties": "^2.0.0" } }, @@ -8955,14 +8843,14 @@ "dev": true }, "@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dev": true, "requires": { - "@jridgewell/set-array": "^1.0.1", + "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/trace-mapping": "^0.3.24" } }, "@jridgewell/resolve-uri": { @@ -8972,9 +8860,9 @@ "dev": true }, "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true }, "@jridgewell/sourcemap-codec": { @@ -8984,9 +8872,9 @@ "dev": true }, "@jridgewell/trace-mapping": { - "version": "0.3.20", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", - "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, "requires": { "@jridgewell/resolve-uri": "^3.1.0", @@ -9665,14 +9553,14 @@ } }, "browserslist": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", - "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001541", - "electron-to-chromium": "^1.4.535", - "node-releases": "^2.0.13", + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", "update-browserslist-db": "^1.0.13" } }, @@ -9738,9 +9626,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001559", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001559.tgz", - "integrity": "sha512-cPiMKZgqgkg5LY3/ntGeLFUpi6tzddBNS58A4tnTgQw1zON7u2sZMU7SzOeVH4tj20++9ggL+V6FDOFMTaFFYA==", + "version": "1.0.30001597", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001597.tgz", + "integrity": "sha512-7LjJvmQU6Sj7bL0j5b5WY/3n7utXUJvAe1lxhsHDbLmwX9mdL86Yjtr+5SRCyf8qME4M7pU2hswj0FpyBVCv9w==", "dev": true }, "cbor": { @@ -10698,9 +10586,9 @@ "dev": true }, "electron-to-chromium": { - "version": "1.4.572", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.572.tgz", - "integrity": "sha512-RlFobl4D3ieetbnR+2EpxdzFl9h0RAJkPK3pfiwMug2nhBin2ZCsGIAJWdpNniLz43sgXam/CgipOmvTA+rUiA==", + "version": "1.4.706", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.706.tgz", + "integrity": "sha512-fO01fufoGd6jKK3HR8ofBapF3ZPfgxNJ/ua9xQAhFu93TwWIs4d+weDn3kje3GB4S7aGUTfk5nvdU5F7z5mF9Q==", "dev": true }, "emittery": { @@ -12497,9 +12385,9 @@ } }, "node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, "nofilter": { diff --git a/package.json b/package.json index 6fdaa835dd..aaa75e14d9 100644 --- a/package.json +++ b/package.json @@ -37,8 +37,8 @@ }, "homepage": "https://github.com/w3c/aria-practices#readme", "devDependencies": { - "@babel/core": "^7.23.2", - "@babel/eslint-parser": "^7.22.15", + "@babel/core": "^7.24.5", + "@babel/eslint-parser": "^7.24.5", "ava": "^5.3.1", "cheerio": "^1.0.0-rc.12", "cross-spawn": "^7.0.3", From b3dcc464afab9f2810083504f855d662121a3505 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 1 May 2024 10:51:48 -0500 Subject: [PATCH 04/47] Infrastructure: Bump actions/checkout from 3 to 4 (#2795) Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/coverage-report.yml | 2 +- .github/workflows/examples.yml | 2 +- .github/workflows/link-checker.yml | 2 +- .github/workflows/lint-css.yml | 2 +- .github/workflows/lint-html.yml | 2 +- .github/workflows/lint-js.yml | 2 +- .github/workflows/regression.yml | 2 +- .github/workflows/spelling.yml | 2 +- .github/workflows/wai-trigger-cleanup.yml | 4 ++-- .github/workflows/wai-trigger-deploy.yml | 2 +- .github/workflows/wai-trigger-pr.yml | 2 +- 11 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/coverage-report.yml b/.github/workflows/coverage-report.yml index 43579afa38..75d21400f3 100644 --- a/.github/workflows/coverage-report.yml +++ b/.github/workflows/coverage-report.yml @@ -16,7 +16,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: ref: refs/pull/${{ github.event.pull_request.number }}/head diff --git a/.github/workflows/examples.yml b/.github/workflows/examples.yml index c570c54592..594191b3ee 100644 --- a/.github/workflows/examples.yml +++ b/.github/workflows/examples.yml @@ -25,7 +25,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v3 diff --git a/.github/workflows/link-checker.yml b/.github/workflows/link-checker.yml index 10407a0000..1920414804 100644 --- a/.github/workflows/link-checker.yml +++ b/.github/workflows/link-checker.yml @@ -8,7 +8,7 @@ jobs: steps: - name: Clone repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v3 diff --git a/.github/workflows/lint-css.yml b/.github/workflows/lint-css.yml index 3129b709f7..131de7524a 100644 --- a/.github/workflows/lint-css.yml +++ b/.github/workflows/lint-css.yml @@ -26,7 +26,7 @@ jobs: steps: - name: Clone repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v3 diff --git a/.github/workflows/lint-html.yml b/.github/workflows/lint-html.yml index 0fd34f9aeb..f621ba25e2 100644 --- a/.github/workflows/lint-html.yml +++ b/.github/workflows/lint-html.yml @@ -32,7 +32,7 @@ jobs: steps: - name: Clone repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v3 diff --git a/.github/workflows/lint-js.yml b/.github/workflows/lint-js.yml index 400167e2d8..ad289edfdc 100644 --- a/.github/workflows/lint-js.yml +++ b/.github/workflows/lint-js.yml @@ -26,7 +26,7 @@ jobs: steps: - name: Clone repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 # setup-node task is used without a particular version in order to load # the ESLint problem matchers diff --git a/.github/workflows/regression.yml b/.github/workflows/regression.yml index 7ea03368f5..e05fce1a37 100644 --- a/.github/workflows/regression.yml +++ b/.github/workflows/regression.yml @@ -28,7 +28,7 @@ jobs: CI_NODE_INDEX: [0, 1, 2, 3, 4] steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 diff --git a/.github/workflows/spelling.yml b/.github/workflows/spelling.yml index a466c8c61a..5f8c29406e 100644 --- a/.github/workflows/spelling.yml +++ b/.github/workflows/spelling.yml @@ -29,7 +29,7 @@ jobs: steps: - name: Clone repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v3 diff --git a/.github/workflows/wai-trigger-cleanup.yml b/.github/workflows/wai-trigger-cleanup.yml index 8366dc8cdf..fa045fa0f1 100644 --- a/.github/workflows/wai-trigger-cleanup.yml +++ b/.github/workflows/wai-trigger-cleanup.yml @@ -13,7 +13,7 @@ jobs: if: ${{ github.event_name == 'delete' && github.event.ref_type == 'branch' }} runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v3 @@ -36,7 +36,7 @@ jobs: if: ${{ github.event_name == 'pull_request' || github.event_name == 'pull_request_target' }} runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v3 diff --git a/.github/workflows/wai-trigger-deploy.yml b/.github/workflows/wai-trigger-deploy.yml index 1e1b8d60bd..c0903fe22e 100644 --- a/.github/workflows/wai-trigger-deploy.yml +++ b/.github/workflows/wai-trigger-deploy.yml @@ -14,7 +14,7 @@ jobs: deploy-wai: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Trigger wai-aria-practices update uses: actions/github-script@v6 diff --git a/.github/workflows/wai-trigger-pr.yml b/.github/workflows/wai-trigger-pr.yml index 4a25b4d26c..37149dd834 100644 --- a/.github/workflows/wai-trigger-pr.yml +++ b/.github/workflows/wai-trigger-pr.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: ref: refs/pull/${{ github.event.pull_request.number }}/head From 4dfeabf089203bef364011aa92031583322f35b5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 1 May 2024 10:53:33 -0500 Subject: [PATCH 05/47] Infrastructure: Bump actions/setup-node from 3 to 4 (#2841) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3 to 4. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/coverage-report.yml | 2 +- .github/workflows/examples.yml | 2 +- .github/workflows/link-checker.yml | 2 +- .github/workflows/lint-css.yml | 2 +- .github/workflows/lint-html.yml | 2 +- .github/workflows/lint-js.yml | 2 +- .github/workflows/regression.yml | 2 +- .github/workflows/spelling.yml | 2 +- .github/workflows/wai-trigger-cleanup.yml | 4 ++-- 9 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/coverage-report.yml b/.github/workflows/coverage-report.yml index 75d21400f3..fe5cde7367 100644 --- a/.github/workflows/coverage-report.yml +++ b/.github/workflows/coverage-report.yml @@ -21,7 +21,7 @@ jobs: ref: refs/pull/${{ github.event.pull_request.number }}/head - name: Set up Node.js - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: cache: npm diff --git a/.github/workflows/examples.yml b/.github/workflows/examples.yml index 594191b3ee..8f34448dfa 100644 --- a/.github/workflows/examples.yml +++ b/.github/workflows/examples.yml @@ -28,7 +28,7 @@ jobs: - uses: actions/checkout@v4 - name: Set up Node.js - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: cache: npm diff --git a/.github/workflows/link-checker.yml b/.github/workflows/link-checker.yml index 1920414804..5952e70b18 100644 --- a/.github/workflows/link-checker.yml +++ b/.github/workflows/link-checker.yml @@ -11,7 +11,7 @@ jobs: uses: actions/checkout@v4 - name: Set up Node.js - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: cache: npm diff --git a/.github/workflows/lint-css.yml b/.github/workflows/lint-css.yml index 131de7524a..4c75075644 100644 --- a/.github/workflows/lint-css.yml +++ b/.github/workflows/lint-css.yml @@ -29,7 +29,7 @@ jobs: uses: actions/checkout@v4 - name: Set up Node.js - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: cache: npm diff --git a/.github/workflows/lint-html.yml b/.github/workflows/lint-html.yml index f621ba25e2..10a8020fd6 100644 --- a/.github/workflows/lint-html.yml +++ b/.github/workflows/lint-html.yml @@ -35,7 +35,7 @@ jobs: uses: actions/checkout@v4 - name: Set up Node.js - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: cache: npm diff --git a/.github/workflows/lint-js.yml b/.github/workflows/lint-js.yml index ad289edfdc..16b2f12f98 100644 --- a/.github/workflows/lint-js.yml +++ b/.github/workflows/lint-js.yml @@ -31,7 +31,7 @@ jobs: # setup-node task is used without a particular version in order to load # the ESLint problem matchers - name: Set up Node.js - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: cache: npm diff --git a/.github/workflows/regression.yml b/.github/workflows/regression.yml index e05fce1a37..dd69c29409 100644 --- a/.github/workflows/regression.yml +++ b/.github/workflows/regression.yml @@ -33,7 +33,7 @@ jobs: fetch-depth: 0 - name: Set up Node.js - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: cache: npm diff --git a/.github/workflows/spelling.yml b/.github/workflows/spelling.yml index 5f8c29406e..9f55dbe8b2 100644 --- a/.github/workflows/spelling.yml +++ b/.github/workflows/spelling.yml @@ -32,7 +32,7 @@ jobs: uses: actions/checkout@v4 - name: Set up Node.js - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: cache: npm diff --git a/.github/workflows/wai-trigger-cleanup.yml b/.github/workflows/wai-trigger-cleanup.yml index fa045fa0f1..3439952315 100644 --- a/.github/workflows/wai-trigger-cleanup.yml +++ b/.github/workflows/wai-trigger-cleanup.yml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v4 - name: Set up Node.js - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: cache: npm @@ -39,7 +39,7 @@ jobs: - uses: actions/checkout@v4 - name: Set up Node.js - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: cache: npm From 6e34e6745facebe8e2874a491be26784faa0051a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 1 May 2024 10:55:08 -0500 Subject: [PATCH 06/47] Infrastructure: Bump actions/github-script from 6 to 7 (#2863) Bumps [actions/github-script](https://github.com/actions/github-script) from 6 to 7. - [Release notes](https://github.com/actions/github-script/releases) - [Commits](https://github.com/actions/github-script/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/github-script dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/coverage-report.yml | 2 +- .github/workflows/wai-trigger-deploy.yml | 2 +- .github/workflows/wai-trigger-pr.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/coverage-report.yml b/.github/workflows/coverage-report.yml index fe5cde7367..2c324ac1f3 100644 --- a/.github/workflows/coverage-report.yml +++ b/.github/workflows/coverage-report.yml @@ -33,7 +33,7 @@ jobs: node test/util/report.js >> coverage.log || true - name: Comment on PR - uses: actions/github-script@v6 + uses: actions/github-script@v7 with: github-token: ${{secrets.GITHUB_TOKEN}} script: | diff --git a/.github/workflows/wai-trigger-deploy.yml b/.github/workflows/wai-trigger-deploy.yml index c0903fe22e..2ac561b269 100644 --- a/.github/workflows/wai-trigger-deploy.yml +++ b/.github/workflows/wai-trigger-deploy.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v4 - name: Trigger wai-aria-practices update - uses: actions/github-script@v6 + uses: actions/github-script@v7 with: github-token: ${{ secrets.GH_TOKEN }} script: | diff --git a/.github/workflows/wai-trigger-pr.yml b/.github/workflows/wai-trigger-pr.yml index 37149dd834..a58116eb85 100644 --- a/.github/workflows/wai-trigger-pr.yml +++ b/.github/workflows/wai-trigger-pr.yml @@ -25,7 +25,7 @@ jobs: ref: refs/pull/${{ github.event.pull_request.number }}/head - name: Trigger wai-aria-practices PR update - uses: actions/github-script@v6 + uses: actions/github-script@v7 env: APG_BRANCH: ${{ github.head_ref }} APG_SHA: ${{ github.event.pull_request.head.sha }} From 2a726e7eb42758f4f57cb1a02c5794304fa25530 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 1 May 2024 11:01:15 -0500 Subject: [PATCH 07/47] Infrastructure: Bump dotenv from 16.3.1 to 16.4.5 (#2944) Bumps [dotenv](https://github.com/motdotla/dotenv) from 16.3.1 to 16.4.5. - [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md) - [Commits](https://github.com/motdotla/dotenv/compare/v16.3.1...v16.4.5) --- updated-dependencies: - dependency-name: dotenv dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index b2e0a6579a..f8b3a1ed63 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "license": "MIT", "dependencies": { "@octokit/rest": "^18.12.0", - "dotenv": "^16.3.1", + "dotenv": "^16.4.5", "node-html-parser": "^5.2.0" }, "devDependencies": { @@ -3509,14 +3509,14 @@ } }, "node_modules/dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", - "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", "engines": { "node": ">=12" }, "funding": { - "url": "https://github.com/motdotla/dotenv?sponsor=1" + "url": "https://dotenvx.com" } }, "node_modules/eastasianwidth": { @@ -10575,9 +10575,9 @@ } }, "dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", - "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==" + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==" }, "eastasianwidth": { "version": "0.2.0", diff --git a/package.json b/package.json index aaa75e14d9..3b9c99b9a0 100644 --- a/package.json +++ b/package.json @@ -82,7 +82,7 @@ }, "dependencies": { "@octokit/rest": "^18.12.0", - "dotenv": "^16.3.1", + "dotenv": "^16.4.5", "node-html-parser": "^5.2.0" } } From a67cefe1127058a73d2778b94ba5583108092053 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 1 May 2024 11:06:39 -0500 Subject: [PATCH 08/47] Infrastructure: Bump cspell from 7.3.8 to 8.7.0 (#3006) Bumps [cspell](https://github.com/streetsidesoftware/cspell/tree/HEAD/packages/cspell) from 7.3.8 to 8.7.0. - [Release notes](https://github.com/streetsidesoftware/cspell/releases) - [Changelog](https://github.com/streetsidesoftware/cspell/blob/main/packages/cspell/CHANGELOG.md) - [Commits](https://github.com/streetsidesoftware/cspell/commits/v8.7.0/packages/cspell) --- updated-dependencies: - dependency-name: cspell dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 1262 ++++++++++++++++++++------------------------- package.json | 2 +- 2 files changed, 569 insertions(+), 695 deletions(-) diff --git a/package-lock.json b/package-lock.json index f8b3a1ed63..8b2b101aed 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,7 +19,7 @@ "ava": "^5.3.1", "cheerio": "^1.0.0-rc.12", "cross-spawn": "^7.0.3", - "cspell": "^7.3.8", + "cspell": "^8.7.0", "eslint": "^8.57.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-ava": "^14.0.0", @@ -483,17 +483,17 @@ } }, "node_modules/@cspell/cspell-bundled-dicts": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-7.3.8.tgz", - "integrity": "sha512-Dj8iSGQyfgIsCjmXk9D/SjV7EpbpQSogeaGcBM66H33pd0GyGmLhn3biRN+vqi/vqWmsp75rT3kd5MKa8X5W9Q==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-8.7.0.tgz", + "integrity": "sha512-B5YQI7Dd9m0JHTmHgs7PiyP4BWXzl8ixpK+HGOwhxzh7GyfFt1Eo/gxMxBDX/9SaewEzeb2OjRpRKEFtEsto3A==", "dev": true, "dependencies": { "@cspell/dict-ada": "^4.0.2", - "@cspell/dict-aws": "^4.0.0", - "@cspell/dict-bash": "^4.1.2", - "@cspell/dict-companies": "^3.0.26", - "@cspell/dict-cpp": "^5.0.8", - "@cspell/dict-cryptocurrencies": "^4.0.0", + "@cspell/dict-aws": "^4.0.1", + "@cspell/dict-bash": "^4.1.3", + "@cspell/dict-companies": "^3.0.31", + "@cspell/dict-cpp": "^5.1.3", + "@cspell/dict-cryptocurrencies": "^5.0.0", "@cspell/dict-csharp": "^4.0.2", "@cspell/dict-css": "^4.0.12", "@cspell/dict-dart": "^2.0.3", @@ -501,94 +501,98 @@ "@cspell/dict-docker": "^1.1.7", "@cspell/dict-dotnet": "^5.0.0", "@cspell/dict-elixir": "^4.0.3", - "@cspell/dict-en_us": "^4.3.9", - "@cspell/dict-en-common-misspellings": "^1.0.2", + "@cspell/dict-en_us": "^4.3.17", + "@cspell/dict-en-common-misspellings": "^2.0.0", "@cspell/dict-en-gb": "1.1.33", - "@cspell/dict-filetypes": "^3.0.1", + "@cspell/dict-filetypes": "^3.0.3", "@cspell/dict-fonts": "^4.0.0", - "@cspell/dict-fsharp": "^1.0.0", + "@cspell/dict-fsharp": "^1.0.1", "@cspell/dict-fullstack": "^3.1.5", - "@cspell/dict-gaming-terms": "^1.0.4", - "@cspell/dict-git": "^2.0.0", - "@cspell/dict-golang": "^6.0.3", + "@cspell/dict-gaming-terms": "^1.0.5", + "@cspell/dict-git": "^3.0.0", + "@cspell/dict-golang": "^6.0.5", "@cspell/dict-haskell": "^4.0.1", "@cspell/dict-html": "^4.0.5", "@cspell/dict-html-symbol-entities": "^4.0.0", "@cspell/dict-java": "^5.0.6", - "@cspell/dict-k8s": "^1.0.1", + "@cspell/dict-julia": "^1.0.1", + "@cspell/dict-k8s": "^1.0.2", "@cspell/dict-latex": "^4.0.0", "@cspell/dict-lorem-ipsum": "^4.0.0", - "@cspell/dict-lua": "^4.0.2", + "@cspell/dict-lua": "^4.0.3", + "@cspell/dict-makefile": "^1.0.0", + "@cspell/dict-monkeyc": "^1.0.6", "@cspell/dict-node": "^4.0.3", - "@cspell/dict-npm": "^5.0.12", - "@cspell/dict-php": "^4.0.3", - "@cspell/dict-powershell": "^5.0.2", - "@cspell/dict-public-licenses": "^2.0.5", - "@cspell/dict-python": "^4.1.9", + "@cspell/dict-npm": "^5.0.15", + "@cspell/dict-php": "^4.0.6", + "@cspell/dict-powershell": "^5.0.3", + "@cspell/dict-public-licenses": "^2.0.6", + "@cspell/dict-python": "^4.1.11", "@cspell/dict-r": "^2.0.1", - "@cspell/dict-ruby": "^5.0.1", - "@cspell/dict-rust": "^4.0.1", + "@cspell/dict-ruby": "^5.0.2", + "@cspell/dict-rust": "^4.0.2", "@cspell/dict-scala": "^5.0.0", - "@cspell/dict-software-terms": "^3.3.6", - "@cspell/dict-sql": "^2.1.2", + "@cspell/dict-software-terms": "^3.3.18", + "@cspell/dict-sql": "^2.1.3", "@cspell/dict-svelte": "^1.0.2", "@cspell/dict-swift": "^2.0.1", + "@cspell/dict-terraform": "^1.0.0", "@cspell/dict-typescript": "^3.1.2", "@cspell/dict-vue": "^3.0.0" }, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/@cspell/cspell-json-reporter": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/cspell-json-reporter/-/cspell-json-reporter-7.3.8.tgz", - "integrity": "sha512-FxYJWtDgxIQYxdP0RWwRV8nzLfxVx8D8D5L2sbbP/0NFczDbq/zWYep4nSAHJT10aUJrogsVUYwNwdkr562wKA==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/cspell-json-reporter/-/cspell-json-reporter-8.7.0.tgz", + "integrity": "sha512-LTQPEvXvCqnc+ok9WXpSISZyt4/nGse9fVEM430g0BpGzKpt3RMx49B8uasvvnanzCuikaW9+wFLmwgvraERhA==", "dev": true, "dependencies": { - "@cspell/cspell-types": "7.3.8" + "@cspell/cspell-types": "8.7.0" }, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/@cspell/cspell-pipe": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-7.3.8.tgz", - "integrity": "sha512-/vKPfiHM5bJUkNX12w9j533Lm2JvvSMKUCChM2AxYjy6vL8prc/7ei++4g2xAWwRxLZPg2OfpDJS5EirZNBJdA==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-8.7.0.tgz", + "integrity": "sha512-ePqddIQ4arqPQgOkC146SkZxvZb9/jL7xIM5Igy2n3tiWTC5ijrX/mbHpPZ1VGcFck+1M0cJUuyhuJk+vMj3rg==", "dev": true, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/@cspell/cspell-resolver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/cspell-resolver/-/cspell-resolver-7.3.8.tgz", - "integrity": "sha512-CeyQmhqZI5a+T7a6oiVN90TFlzU3qVVYqCaZ9grFrVOsmzY9ipH5gmqfgMavaBOqb0di/+VZS8d02suMOXcKLQ==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/cspell-resolver/-/cspell-resolver-8.7.0.tgz", + "integrity": "sha512-grZwDFYqcBYQDaz4AkUtdyqc4UUH2J3/7yWVkBbYDPE+FQHa9ofFXzXxyjs56GJlPfi9ULpe5/Wz6uVLg8rQkQ==", "dev": true, "dependencies": { - "global-dirs": "^3.0.1" + "global-directory": "^4.0.1" }, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/@cspell/cspell-service-bus": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-7.3.8.tgz", - "integrity": "sha512-3E7gwY6QILrZH83p69i9CERbRBEqeBiKCIKnAd7U2PbxfFqG/P47fqpnarzSWFwFpU92oyGsYry+wC8TEGISRQ==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-8.7.0.tgz", + "integrity": "sha512-KW48iu0nTDzbedixc7iB7K7mlAZQ7QeMLuM/akxigOlvtOdVJrRa9Pfn44lwejts1ANb/IXil3GH8YylkVi76Q==", "dev": true, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/@cspell/cspell-types": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-7.3.8.tgz", - "integrity": "sha512-hsOtaULDnawEL4pU0fga941GhvE8mbTbywrJBx+eGX3fnJsaUr8XQzCtnLsW2ko7WCLWFItNEhSSTPQHBFRLsw==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-8.7.0.tgz", + "integrity": "sha512-Rb+LCE5I9JEb/LE8nSViVSF8z1CWv/z4mPBIG37VMa7aUx2gAQa6gJekNfpY9YZiMzx4Tv3gDujN80ytks4pGA==", "dev": true, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/@cspell/dict-ada": { @@ -598,33 +602,33 @@ "dev": true }, "node_modules/@cspell/dict-aws": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@cspell/dict-aws/-/dict-aws-4.0.0.tgz", - "integrity": "sha512-1YkCMWuna/EGIDN/zKkW+j98/55mxigftrSFgsehXhPld+ZMJM5J9UuBA88YfL7+/ETvBdd7mwW6IwWsC+/ltQ==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@cspell/dict-aws/-/dict-aws-4.0.1.tgz", + "integrity": "sha512-NXO+kTPQGqaaJKa4kO92NAXoqS+i99dQzf3/L1BxxWVSBS3/k1f3uhmqIh7Crb/n22W793lOm0D9x952BFga3Q==", "dev": true }, "node_modules/@cspell/dict-bash": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-bash/-/dict-bash-4.1.2.tgz", - "integrity": "sha512-AEBWjbaMaJEyAjOHW0F15P2izBjli2cNerG3NjuVH7xX/HUUeNoTj8FF1nwpMufKwGQCvuyO2hCmkVxhJ0y55Q==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-bash/-/dict-bash-4.1.3.tgz", + "integrity": "sha512-tOdI3QVJDbQSwPjUkOiQFhYcu2eedmX/PtEpVWg0aFps/r6AyjUQINtTgpqMYnYuq8O1QUIQqnpx21aovcgZCw==", "dev": true }, "node_modules/@cspell/dict-companies": { - "version": "3.0.27", - "resolved": "https://registry.npmjs.org/@cspell/dict-companies/-/dict-companies-3.0.27.tgz", - "integrity": "sha512-gaPR/luf+4oKGyxvW4GbxGGPdHiC5kj/QefnmQqrLFrLiCSXMZg5/NL+Lr4E5lcHsd35meX61svITQAvsT7lyQ==", + "version": "3.0.31", + "resolved": "https://registry.npmjs.org/@cspell/dict-companies/-/dict-companies-3.0.31.tgz", + "integrity": "sha512-hKVpV/lcGKP4/DpEPS8P4osPvFH/YVLJaDn9cBIOH6/HSmL5LbFgJNKpMGaYRbhm2FEX56MKE3yn/MNeNYuesQ==", "dev": true }, "node_modules/@cspell/dict-cpp": { - "version": "5.0.9", - "resolved": "https://registry.npmjs.org/@cspell/dict-cpp/-/dict-cpp-5.0.9.tgz", - "integrity": "sha512-ql9WPNp8c+fhdpVpjpZEUWmxBHJXs9CJuiVVfW/iwv5AX7VuMHyEwid+9/6nA8qnCxkUQ5pW83Ums1lLjn8ScA==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-cpp/-/dict-cpp-5.1.3.tgz", + "integrity": "sha512-sqnriXRAInZH9W75C+APBh6dtben9filPqVbIsiRMUXGg+s02ekz0z6LbS7kXeJ5mD2qXoMLBrv13qH2eIwutQ==", "dev": true }, "node_modules/@cspell/dict-cryptocurrencies": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@cspell/dict-cryptocurrencies/-/dict-cryptocurrencies-4.0.0.tgz", - "integrity": "sha512-EiZp91ATyRxTmauIQfOX9adLYCunKjHEh092rrM7o2eMXP9n7zpXAL9BK7LviL+LbB8VDOm21q+s83cKrrRrsg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-cryptocurrencies/-/dict-cryptocurrencies-5.0.0.tgz", + "integrity": "sha512-Z4ARIw5+bvmShL+4ZrhDzGhnc9znaAGHOEMaB/GURdS/jdoreEDY34wdN0NtdLHDO5KO7GduZnZyqGdRoiSmYA==", "dev": true }, "node_modules/@cspell/dict-csharp": { @@ -676,15 +680,15 @@ "dev": true }, "node_modules/@cspell/dict-en_us": { - "version": "4.3.11", - "resolved": "https://registry.npmjs.org/@cspell/dict-en_us/-/dict-en_us-4.3.11.tgz", - "integrity": "sha512-GhdavZFlS2YbUNcRtPbgJ9j6aUyq116LmDQ2/Q5SpQxJ5/6vVs8Yj5WxV1JD+Zh/Zim1NJDcneTOuLsUGi+Czw==", + "version": "4.3.19", + "resolved": "https://registry.npmjs.org/@cspell/dict-en_us/-/dict-en_us-4.3.19.tgz", + "integrity": "sha512-tHcXdkmm0t9LlRct1vgu3+h0KW/wlXCInkTiR4D/rl730q1zu2qVEgiy1saMiTUSNmdu7Hiy+Mhb+1braVqnZQ==", "dev": true }, "node_modules/@cspell/dict-en-common-misspellings": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-1.0.2.tgz", - "integrity": "sha512-jg7ZQZpZH7+aAxNBlcAG4tGhYF6Ksy+QS5Df73Oo+XyckBjC9QS+PrRwLTeYoFIgXy5j3ICParK5r3MSSoL4gw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-2.0.0.tgz", + "integrity": "sha512-NOg8dlv37/YqLkCfBs5OXeJm/Wcfb/CzeOmOZJ2ZXRuxwsNuolb4TREUce0yAXRqMhawahY5TSDRJJBgKjBOdw==", "dev": true }, "node_modules/@cspell/dict-en-gb": { @@ -694,9 +698,9 @@ "dev": true }, "node_modules/@cspell/dict-filetypes": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-filetypes/-/dict-filetypes-3.0.2.tgz", - "integrity": "sha512-StoC0wPmFNav6F6P8/FYFN1BpZfPgOmktb8gQ9wTauelWofPeBW+A0t5ncZt9hXHtnbGDA98v4ukacV+ucbnUg==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-filetypes/-/dict-filetypes-3.0.3.tgz", + "integrity": "sha512-J9UP+qwwBLfOQ8Qg9tAsKtSY/WWmjj21uj6zXTI9hRLD1eG1uUOLcfVovAmtmVqUWziPSKMr87F6SXI3xmJXgw==", "dev": true }, "node_modules/@cspell/dict-fonts": { @@ -718,21 +722,21 @@ "dev": true }, "node_modules/@cspell/dict-gaming-terms": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@cspell/dict-gaming-terms/-/dict-gaming-terms-1.0.4.tgz", - "integrity": "sha512-hbDduNXlk4AOY0wFxcDMWBPpm34rpqJBeqaySeoUH70eKxpxm+dvjpoRLJgyu0TmymEICCQSl6lAHTHSDiWKZg==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@cspell/dict-gaming-terms/-/dict-gaming-terms-1.0.5.tgz", + "integrity": "sha512-C3riccZDD3d9caJQQs1+MPfrUrQ+0KHdlj9iUR1QD92FgTOF6UxoBpvHUUZ9YSezslcmpFQK4xQQ5FUGS7uWfw==", "dev": true }, "node_modules/@cspell/dict-git": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@cspell/dict-git/-/dict-git-2.0.0.tgz", - "integrity": "sha512-n1AxyX5Kgxij/sZFkxFJlzn3K9y/sCcgVPg/vz4WNJ4K9YeTsUmyGLA2OQI7d10GJeiuAo2AP1iZf2A8j9aj2w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-git/-/dict-git-3.0.0.tgz", + "integrity": "sha512-simGS/lIiXbEaqJu9E2VPoYW1OTC2xrwPPXNXFMa2uo/50av56qOuaxDrZ5eH1LidFXwoc8HROCHYeKoNrDLSw==", "dev": true }, "node_modules/@cspell/dict-golang": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/@cspell/dict-golang/-/dict-golang-6.0.4.tgz", - "integrity": "sha512-jOfewPEyN6U9Q80okE3b1PTYBfqZgHh7w4o271GSuAX+VKJ1lUDhdR4bPKRxSDdO5jHArw2u5C8nH2CWGuygbQ==", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@cspell/dict-golang/-/dict-golang-6.0.5.tgz", + "integrity": "sha512-w4mEqGz4/wV+BBljLxduFNkMrd3rstBNDXmoX5kD4UTzIb4Sy0QybWCtg2iVT+R0KWiRRA56QKOvBsgXiddksA==", "dev": true }, "node_modules/@cspell/dict-haskell": { @@ -759,6 +763,12 @@ "integrity": "sha512-kdE4AHHHrixyZ5p6zyms1SLoYpaJarPxrz8Tveo6gddszBVVwIUZ+JkQE1bWNLK740GWzIXdkznpUfw1hP9nXw==", "dev": true }, + "node_modules/@cspell/dict-julia": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@cspell/dict-julia/-/dict-julia-1.0.1.tgz", + "integrity": "sha512-4JsCLCRhhLMLiaHpmR7zHFjj1qOauzDI5ZzCNQS31TUMfsOo26jAKDfo0jljFAKgw5M2fEG7sKr8IlPpQAYrmQ==", + "dev": true + }, "node_modules/@cspell/dict-k8s": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@cspell/dict-k8s/-/dict-k8s-1.0.2.tgz", @@ -778,9 +788,21 @@ "dev": true }, "node_modules/@cspell/dict-lua": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-lua/-/dict-lua-4.0.2.tgz", - "integrity": "sha512-eeC20Q+UnHcTVBK6pgwhSjGIVugO2XqU7hv4ZfXp2F9DxGx1RME0+1sKX4qAGhdFGwOBsEzb2fwUsAEP6Mibpg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-lua/-/dict-lua-4.0.3.tgz", + "integrity": "sha512-lDHKjsrrbqPaea13+G9s0rtXjMO06gPXPYRjRYawbNmo4E/e3XFfVzeci3OQDQNDmf2cPOwt9Ef5lu2lDmwfJg==", + "dev": true + }, + "node_modules/@cspell/dict-makefile": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-makefile/-/dict-makefile-1.0.0.tgz", + "integrity": "sha512-3W9tHPcSbJa6s0bcqWo6VisEDTSN5zOtDbnPabF7rbyjRpNo0uHXHRJQF8gAbFzoTzBBhgkTmrfSiuyQm7vBUQ==", + "dev": true + }, + "node_modules/@cspell/dict-monkeyc": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@cspell/dict-monkeyc/-/dict-monkeyc-1.0.6.tgz", + "integrity": "sha512-oO8ZDu/FtZ55aq9Mb67HtaCnsLn59xvhO/t2mLLTHAp667hJFxpp7bCtr2zOrR1NELzFXmKln/2lw/PvxMSvrA==", "dev": true }, "node_modules/@cspell/dict-node": { @@ -790,33 +812,33 @@ "dev": true }, "node_modules/@cspell/dict-npm": { - "version": "5.0.12", - "resolved": "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-5.0.12.tgz", - "integrity": "sha512-T/+WeQmtbxo7ad6hrdI8URptYstKJP+kXyWJZfuVJJGWJQ7yubxrI5Z5AfM+Dh/ff4xHmdzapxD9adaEQ727uw==", + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-5.0.15.tgz", + "integrity": "sha512-sX0X5YWNW54F4baW7b5JJB6705OCBIZtUqjOghlJNORS5No7QY1IX1zc5FxNNu4gsaCZITAmfMi4ityXEsEThA==", "dev": true }, "node_modules/@cspell/dict-php": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@cspell/dict-php/-/dict-php-4.0.4.tgz", - "integrity": "sha512-fRlLV730fJbulDsLIouZxXoxHt3KIH6hcLFwxaupHL+iTXDg0lo7neRpbqD5MScr/J3idEr7i9G8XWzIikKFug==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@cspell/dict-php/-/dict-php-4.0.6.tgz", + "integrity": "sha512-ySAXisf7twoVFZqBV2o/DKiCLIDTHNqfnj0EfH9OoOUR7HL3rb6zJkm0viLUFDO2G/8SyIi6YrN/6KX+Scjjjg==", "dev": true }, "node_modules/@cspell/dict-powershell": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-powershell/-/dict-powershell-5.0.2.tgz", - "integrity": "sha512-IHfWLme3FXE7vnOmMncSBxOsMTdNWd1Vcyhag03WS8oANSgX8IZ+4lMI00mF0ptlgchf16/OU8WsV4pZfikEFw==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-powershell/-/dict-powershell-5.0.3.tgz", + "integrity": "sha512-lEdzrcyau6mgzu1ie98GjOEegwVHvoaWtzQnm1ie4DyZgMr+N6D0Iyj1lzvtmt0snvsDFa5F2bsYzf3IMKcpcA==", "dev": true }, "node_modules/@cspell/dict-public-licenses": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@cspell/dict-public-licenses/-/dict-public-licenses-2.0.5.tgz", - "integrity": "sha512-91HK4dSRri/HqzAypHgduRMarJAleOX5NugoI8SjDLPzWYkwZ1ftuCXSk+fy8DLc3wK7iOaFcZAvbjmnLhVs4A==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@cspell/dict-public-licenses/-/dict-public-licenses-2.0.6.tgz", + "integrity": "sha512-bHqpSpJvLCUcWxj1ov/Ki8WjmESpYwRpQlqfdchekOTc93Huhvjm/RXVN1R4fVf4Hspyem1QVkCGqAmjJMj6sw==", "dev": true }, "node_modules/@cspell/dict-python": { - "version": "4.1.10", - "resolved": "https://registry.npmjs.org/@cspell/dict-python/-/dict-python-4.1.10.tgz", - "integrity": "sha512-ErF/Ohcu6Xk4QVNzFgo8p7CxkxvAKAmFszvso41qOOhu8CVpB35ikBRpGVDw9gsCUtZzi15Yl0izi4do6WcLkA==", + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@cspell/dict-python/-/dict-python-4.1.11.tgz", + "integrity": "sha512-XG+v3PumfzUW38huSbfT15Vqt3ihNb462ulfXifpQllPok5OWynhszCLCRQjQReV+dgz784ST4ggRxW452/kVg==", "dev": true, "dependencies": { "@cspell/dict-data-science": "^1.0.11" @@ -829,15 +851,15 @@ "dev": true }, "node_modules/@cspell/dict-ruby": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@cspell/dict-ruby/-/dict-ruby-5.0.1.tgz", - "integrity": "sha512-rruTm7Emhty/BSYavSm8ZxRuVw0OBqzJkwIFXcV0cX7To8D1qbmS9HFHRuRg8IL11+/nJvtdDz+lMFBSmPUagQ==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@cspell/dict-ruby/-/dict-ruby-5.0.2.tgz", + "integrity": "sha512-cIh8KTjpldzFzKGgrqUX4bFyav5lC52hXDKo4LbRuMVncs3zg4hcSf4HtURY+f2AfEZzN6ZKzXafQpThq3dl2g==", "dev": true }, "node_modules/@cspell/dict-rust": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@cspell/dict-rust/-/dict-rust-4.0.1.tgz", - "integrity": "sha512-xJSSzHDK2z6lSVaOmMxl3PTOtfoffaxMo7fTcbZUF+SCJzfKbO6vnN9TCGX2sx1RHFDz66Js6goz6SAZQdOwaw==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@cspell/dict-rust/-/dict-rust-4.0.2.tgz", + "integrity": "sha512-RhziKDrklzOntxAbY3AvNR58wnFGIo3YS8+dNeLY36GFuWOvXDHFStYw5Pod4f/VXbO/+1tXtywCC4zWfB2p1w==", "dev": true }, "node_modules/@cspell/dict-scala": { @@ -847,15 +869,15 @@ "dev": true }, "node_modules/@cspell/dict-software-terms": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-3.3.9.tgz", - "integrity": "sha512-/O3EWe0SIznx18S7J3GAXPDe7sexn3uTsf4IlnGYK9WY6ZRuEywkXCB+5/USLTGf4+QC05pkHofphdvVSifDyA==", + "version": "3.3.20", + "resolved": "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-3.3.20.tgz", + "integrity": "sha512-KmPwCxYWEu7SGyT/0m/n6i6R4ZgxbmN3XcerzA6Z629Wm5iZTVfJaMWqDK2RKAyBawS7OMfxGz0W/wYU4FhJlA==", "dev": true }, "node_modules/@cspell/dict-sql": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-sql/-/dict-sql-2.1.2.tgz", - "integrity": "sha512-Pi0hAcvsSGtZZeyyAN1VfGtQJbrXos5x2QjJU0niAQKhmITSOrXU/1II1Gogk+FYDjWyV9wP2De0U2f7EWs6oQ==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-sql/-/dict-sql-2.1.3.tgz", + "integrity": "sha512-SEyTNKJrjqD6PAzZ9WpdSu6P7wgdNtGV2RV8Kpuw1x6bV+YsSptuClYG+JSdRExBTE6LwIe1bTklejUp3ZP8TQ==", "dev": true }, "node_modules/@cspell/dict-svelte": { @@ -870,10 +892,16 @@ "integrity": "sha512-gxrCMUOndOk7xZFmXNtkCEeroZRnS2VbeaIPiymGRHj5H+qfTAzAKxtv7jJbVA3YYvEzWcVE2oKDP4wcbhIERw==", "dev": true }, + "node_modules/@cspell/dict-terraform": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-terraform/-/dict-terraform-1.0.0.tgz", + "integrity": "sha512-Ak+vy4HP/bOgzf06BAMC30+ZvL9mzv21xLM2XtfnBLTDJGdxlk/nK0U6QT8VfFLqJ0ZZSpyOxGsUebWDCTr/zQ==", + "dev": true + }, "node_modules/@cspell/dict-typescript": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-typescript/-/dict-typescript-3.1.2.tgz", - "integrity": "sha512-lcNOYWjLUvDZdLa0UMNd/LwfVdxhE9rKA+agZBGjL3lTA3uNvH7IUqSJM/IXhJoBpLLMVEOk8v1N9xi+vDuCdA==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@cspell/dict-typescript/-/dict-typescript-3.1.4.tgz", + "integrity": "sha512-jUcPa0rsPca5ur1+G56DXnSc5hbbJkzvPHHvyQtkbPXBQd3CXPMNfrTVCgzex/7cY/7FONcpFCUwgwfni9Jqbw==", "dev": true }, "node_modules/@cspell/dict-vue": { @@ -883,24 +911,24 @@ "dev": true }, "node_modules/@cspell/dynamic-import": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/dynamic-import/-/dynamic-import-7.3.8.tgz", - "integrity": "sha512-s8x7dH/ScfW0pFEIvNFo4JOR7YmvM2wZSHOykmWTJCQ8k2EQ/+uECPp6ZxkoJoukTz8sj+3KzF0fRl5mKxPd6g==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/dynamic-import/-/dynamic-import-8.7.0.tgz", + "integrity": "sha512-xlEPdiHVDu+4xYkvwjL9MgklxOi9XB+Pr1H9s3Ww9WEq+q6BA3xOHxLIU/k8mhqFTMZGFZRCsdy/EwMu6SyRhQ==", "dev": true, "dependencies": { - "import-meta-resolve": "^3.0.0" + "import-meta-resolve": "^4.0.0" }, "engines": { - "node": ">=16" + "node": ">=18.0" } }, "node_modules/@cspell/strong-weak-map": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/strong-weak-map/-/strong-weak-map-7.3.8.tgz", - "integrity": "sha512-qNnt2wG45wb8JP54mENarnQgxfSYKPp3zlYID/2przbMNmVJRqUlcIBOdLI6plCgGeNkzJTl3T9T1ATbnN+LLw==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/strong-weak-map/-/strong-weak-map-8.7.0.tgz", + "integrity": "sha512-0bo0WwDr2lzGoCP7vbpWbDpPyuOrHKK+218txnUpx6Pn1EDBLfcDQsiZED5B6zlpwgbGi6y3vc0rWtJbjKvwzg==", "dev": true, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/@csstools/css-parser-algorithms": { @@ -2803,27 +2831,27 @@ } }, "node_modules/cspell": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell/-/cspell-7.3.8.tgz", - "integrity": "sha512-8AkqsBQAMsKYV5XyJLB6rBs5hgspL4+MPOg6mBKG2j5EvQgRVc6dIfAPWDNLpIeW2a3+7K5BIWqKHapKPeiknQ==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell/-/cspell-8.7.0.tgz", + "integrity": "sha512-77nRPgLl240C6FK8RKVKo34lP15Lzp/6bk+SKYJFwUKKXlcgWXDis+Lw4JolA741/JgHtuxmhW1C8P7dCKjJ3w==", "dev": true, "dependencies": { - "@cspell/cspell-json-reporter": "7.3.8", - "@cspell/cspell-pipe": "7.3.8", - "@cspell/cspell-types": "7.3.8", - "@cspell/dynamic-import": "7.3.8", + "@cspell/cspell-json-reporter": "8.7.0", + "@cspell/cspell-pipe": "8.7.0", + "@cspell/cspell-types": "8.7.0", + "@cspell/dynamic-import": "8.7.0", "chalk": "^5.3.0", "chalk-template": "^1.1.0", - "commander": "^11.1.0", - "cspell-gitignore": "7.3.8", - "cspell-glob": "7.3.8", - "cspell-io": "7.3.8", - "cspell-lib": "7.3.8", - "fast-glob": "^3.3.1", + "commander": "^12.0.0", + "cspell-gitignore": "8.7.0", + "cspell-glob": "8.7.0", + "cspell-io": "8.7.0", + "cspell-lib": "8.7.0", + "fast-glob": "^3.3.2", "fast-json-stable-stringify": "^2.1.0", - "file-entry-cache": "^7.0.1", + "file-entry-cache": "^8.0.0", "get-stdin": "^9.0.0", - "semver": "^7.5.4", + "semver": "^7.6.0", "strip-ansi": "^7.1.0", "vscode-uri": "^3.0.8" }, @@ -2832,279 +2860,142 @@ "cspell-esm": "bin.mjs" }, "engines": { - "node": ">=16" + "node": ">=18" }, "funding": { "url": "https://github.com/streetsidesoftware/cspell?sponsor=1" } }, - "node_modules/cspell-dictionary": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-dictionary/-/cspell-dictionary-7.3.8.tgz", - "integrity": "sha512-gkq4t78eLR0xC3P0vDDHPeNY4iZRd5YE6Z8uDJ7RM4UaX/TSdVUN9KNFr34RnJ119NYVHujpL9+uW7wPSAe8Eg==", + "node_modules/cspell-config-lib": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-config-lib/-/cspell-config-lib-8.7.0.tgz", + "integrity": "sha512-depsd01GbLBo71/tfRrL5iECWQLS4CjCxA9C01dVkFAJqVB0s+K9KLKjTlq5aHOhcvo9Z3dHV+bGQCf5/Q7bfw==", "dev": true, "dependencies": { - "@cspell/cspell-pipe": "7.3.8", - "@cspell/cspell-types": "7.3.8", - "cspell-trie-lib": "7.3.8", - "fast-equals": "^4.0.3", - "gensequence": "^6.0.0" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/cspell-dictionary/node_modules/fast-equals": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-4.0.3.tgz", - "integrity": "sha512-G3BSX9cfKttjr+2o1O22tYMLq0DPluZnYtq1rXumE1SpL/F/SLIfHx08WYQoWSIpeMYf8sRbJ8++71+v6Pnxfg==", - "dev": true - }, - "node_modules/cspell-gitignore": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-7.3.8.tgz", - "integrity": "sha512-vJzCOUEiw6/MwV/U4Ux3bgSdj9mXB+X5eHL+qzVoyFI7ArlvrkuGTL+iFJThQcS8McM3SGqtvaBNCiKBmAeCkA==", - "dev": true, - "dependencies": { - "cspell-glob": "7.3.8", - "find-up": "^5.0.0" - }, - "bin": { - "cspell-gitignore": "bin.mjs" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/cspell-gitignore/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "@cspell/cspell-types": "8.7.0", + "comment-json": "^4.2.3", + "yaml": "^2.4.1" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" } }, - "node_modules/cspell-gitignore/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/cspell-dictionary": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-dictionary/-/cspell-dictionary-8.7.0.tgz", + "integrity": "sha512-S6IpZSzIMxlOO/33NgCOuP0TPH2mZbw8d5CP44z5jajflloq8l74MeJLkeDzYfCRcm0Rtk0A5drBeMg+Ai34OA==", "dev": true, "dependencies": { - "p-locate": "^5.0.0" + "@cspell/cspell-pipe": "8.7.0", + "@cspell/cspell-types": "8.7.0", + "cspell-trie-lib": "8.7.0", + "fast-equals": "^5.0.1", + "gensequence": "^7.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" } }, - "node_modules/cspell-gitignore/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "node_modules/cspell-gitignore": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-8.7.0.tgz", + "integrity": "sha512-yvUZ86qyopUpDgn+YXP1qTpUe/lp65ZFvpMtw21lWHTFlg1OWKntr349EQU/5ben/K6koxk1FiElCBV7Lr4uFg==", "dev": true, "dependencies": { - "yocto-queue": "^0.1.0" + "cspell-glob": "8.7.0", + "find-up-simple": "^1.0.0" }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cspell-gitignore/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" + "bin": { + "cspell-gitignore": "bin.mjs" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" } }, "node_modules/cspell-glob": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-7.3.8.tgz", - "integrity": "sha512-wUZC6znyxEs0wlhzGfZ4XHkATPJyazJIFi/VvAdj+KHe7U8SoSgitJVDQqdgectI2y3MxR7lQdVLX9dONFh+7A==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-8.7.0.tgz", + "integrity": "sha512-AMdfx0gvROA/aIL8t8b5Y5NtMgscGZELFj6WhCSZiQSuWRxXUKiLGGLUFjx2y0hgXN9LUYOo6aBjvhnxI/v71g==", "dev": true, "dependencies": { "micromatch": "^4.0.5" }, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/cspell-grammar": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-7.3.8.tgz", - "integrity": "sha512-nTjAlMAZAVSFhBd9U3MB9l5FfC5JCCr9DTOA2wWxusVOm+36MbSEH90ucLPkhPa9/+0HtbpDhqVMwXCZllRpsg==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-8.7.0.tgz", + "integrity": "sha512-SGcXc7322wU2WNRi7vtpToWDXTqZHhxqvR+aIXHT2kkxlMSWp3Rvfpshd0ckgY54nZtgw7R/JtKND2jeACRpwQ==", "dev": true, "dependencies": { - "@cspell/cspell-pipe": "7.3.8", - "@cspell/cspell-types": "7.3.8" + "@cspell/cspell-pipe": "8.7.0", + "@cspell/cspell-types": "8.7.0" }, "bin": { "cspell-grammar": "bin.mjs" }, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/cspell-io": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-7.3.8.tgz", - "integrity": "sha512-XrxPbaiek7EZh+26k9RYVz2wKclaMqM6mXBiu/kpFAHRHHfz91ado6xWvyxZ7UAxQ8ixEwZ+oz9TU+k21gHzyw==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-8.7.0.tgz", + "integrity": "sha512-o7OltyyvVkRG1gQrIqGpN5pUkHNnv6rvihb7Qu6cJ8jITinLGuWJuEQpgt0eF5yIr624jDbFwSzAxsFox8riQg==", "dev": true, "dependencies": { - "@cspell/cspell-service-bus": "7.3.8", - "node-fetch": "^2.7.0" + "@cspell/cspell-service-bus": "8.7.0" }, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/cspell-lib": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-7.3.8.tgz", - "integrity": "sha512-2L770sI5DdsAKVzO3jxmfP2fz4LryW6dzL93BpN7WU+ebFC6rg4ioa5liOJV4WoDo2fNQMSeqfW4Aawu9zWR7A==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-8.7.0.tgz", + "integrity": "sha512-qDSHZGekwiDmouYRECTQokE+hgAuPqREm+Hb+G3DoIo3ZK5H47TtEUo8fNCw22XsKefcF8X28LiyoZwiYHVpSg==", "dev": true, "dependencies": { - "@cspell/cspell-bundled-dicts": "7.3.8", - "@cspell/cspell-pipe": "7.3.8", - "@cspell/cspell-resolver": "7.3.8", - "@cspell/cspell-types": "7.3.8", - "@cspell/dynamic-import": "7.3.8", - "@cspell/strong-weak-map": "7.3.8", + "@cspell/cspell-bundled-dicts": "8.7.0", + "@cspell/cspell-pipe": "8.7.0", + "@cspell/cspell-resolver": "8.7.0", + "@cspell/cspell-types": "8.7.0", + "@cspell/dynamic-import": "8.7.0", + "@cspell/strong-weak-map": "8.7.0", "clear-module": "^4.1.2", "comment-json": "^4.2.3", "configstore": "^6.0.0", - "cosmiconfig": "8.0.0", - "cspell-dictionary": "7.3.8", - "cspell-glob": "7.3.8", - "cspell-grammar": "7.3.8", - "cspell-io": "7.3.8", - "cspell-trie-lib": "7.3.8", + "cspell-config-lib": "8.7.0", + "cspell-dictionary": "8.7.0", + "cspell-glob": "8.7.0", + "cspell-grammar": "8.7.0", + "cspell-io": "8.7.0", + "cspell-trie-lib": "8.7.0", "fast-equals": "^5.0.1", - "find-up": "^6.3.0", - "gensequence": "^6.0.0", + "gensequence": "^7.0.0", "import-fresh": "^3.3.0", "resolve-from": "^5.0.0", "vscode-languageserver-textdocument": "^1.0.11", "vscode-uri": "^3.0.8" }, "engines": { - "node": ">=16" - } - }, - "node_modules/cspell-lib/node_modules/find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, - "dependencies": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cspell-lib/node_modules/locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dev": true, - "dependencies": { - "p-locate": "^6.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cspell-lib/node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cspell-lib/node_modules/p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "dependencies": { - "p-limit": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cspell-lib/node_modules/path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/cspell-lib/node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18" } }, "node_modules/cspell-trie-lib": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-7.3.8.tgz", - "integrity": "sha512-UQx1Bazbyz2eQJ/EnMohINnUdZvAQL+OcQU3EPPbNWM1DWF4bJGgmFXKNCRYfJk6wtOZVXG5g5AZXx9KnHeN9A==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-8.7.0.tgz", + "integrity": "sha512-W3Nh2cO7gMV91r+hLqyTMgKlvRl4W5diKs5YiyOxjZumRkMBy42IzcNYtgIIacOxghklv96F5Bd1Vx/zY6ylGA==", "dev": true, "dependencies": { - "@cspell/cspell-pipe": "7.3.8", - "@cspell/cspell-types": "7.3.8", - "gensequence": "^6.0.0" + "@cspell/cspell-pipe": "8.7.0", + "@cspell/cspell-types": "8.7.0", + "gensequence": "^7.0.0" }, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/cspell/node_modules/ansi-regex": { @@ -3132,30 +3023,43 @@ } }, "node_modules/cspell/node_modules/commander": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", - "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.0.0.tgz", + "integrity": "sha512-MwVNWlYjDTtOjX5PiD7o5pK0UrFU/OYgcJfjjK4RaHZETNtjJqrZa9Y9ds88+A+f+d5lv+561eZ+yCKoS3gbAA==", "dev": true, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/cspell/node_modules/file-entry-cache": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-7.0.1.tgz", - "integrity": "sha512-uLfFktPmRetVCbHe5UPuekWrQ6hENufnA46qEGbfACkK5drjTTdQYUragRgMjHldcbYG+nslUerqMPjbBSHXjQ==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", "dev": true, "dependencies": { - "flat-cache": "^3.1.1" + "flat-cache": "^4.0.0" }, "engines": { - "node": ">=12.0.0" + "node": ">=16.0.0" + } + }, + "node_modules/cspell/node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" } }, "node_modules/cspell/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -4242,9 +4146,9 @@ } }, "node_modules/fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", @@ -4352,6 +4256,18 @@ "node": ">=8" } }, + "node_modules/find-up-simple": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-up-simple/-/find-up-simple-1.0.0.tgz", + "integrity": "sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/flat-cache": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.1.tgz", @@ -4431,12 +4347,12 @@ } }, "node_modules/gensequence": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gensequence/-/gensequence-6.0.0.tgz", - "integrity": "sha512-8WwuywE9pokJRAcg2QFR/plk3cVPebSUqRPzpGQh3WQ0wIiHAw+HyOQj5IuHyUTQBHpBKFoB2JUMu9zT3vJ16Q==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/gensequence/-/gensequence-7.0.0.tgz", + "integrity": "sha512-47Frx13aZh01afHJTB3zTtKIlFI6vWY+MYCN9Qpew6i52rfKjnhCF/l1YlC8UmEMvvntZZ6z4PiCcmyuedR2aQ==", "dev": true, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/gensync": { @@ -4533,28 +4449,28 @@ "node": ">=10" } }, - "node_modules/global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", + "node_modules/global-directory": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/global-directory/-/global-directory-4.0.1.tgz", + "integrity": "sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==", "dev": true, "dependencies": { - "ini": "2.0.0" + "ini": "4.1.1" }, "engines": { - "node": ">=10" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/global-dirs/node_modules/ini": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "node_modules/global-directory/node_modules/ini": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", + "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", "dev": true, "engines": { - "node": ">=10" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/global-modules": { @@ -4650,9 +4566,9 @@ } }, "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "dev": true }, "node_modules/graphemer": { @@ -4966,9 +4882,9 @@ } }, "node_modules/import-meta-resolve": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-3.0.0.tgz", - "integrity": "sha512-4IwhLhNNA8yy445rPjD/lWh++7hMDOml2eHtd58eG7h+qK3EryMuuRbsHGPikCoAgIkkDnckKfWSk2iDla/ejg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.1.0.tgz", + "integrity": "sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==", "dev": true, "funding": { "type": "github", @@ -7921,10 +7837,13 @@ "dev": true }, "node_modules/yaml": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.3.tgz", - "integrity": "sha512-zw0VAJxgeZ6+++/su5AFoqBbZbrEakwu+X0M5HmcwUiBL7AzcuPKjj5we4xfQLp78LkEMpD0cOnUhmgOVy3KdQ==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.2.tgz", + "integrity": "sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA==", "dev": true, + "bin": { + "yaml": "bin.mjs" + }, "engines": { "node": ">= 14" } @@ -8322,17 +8241,17 @@ } }, "@cspell/cspell-bundled-dicts": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-7.3.8.tgz", - "integrity": "sha512-Dj8iSGQyfgIsCjmXk9D/SjV7EpbpQSogeaGcBM66H33pd0GyGmLhn3biRN+vqi/vqWmsp75rT3kd5MKa8X5W9Q==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-8.7.0.tgz", + "integrity": "sha512-B5YQI7Dd9m0JHTmHgs7PiyP4BWXzl8ixpK+HGOwhxzh7GyfFt1Eo/gxMxBDX/9SaewEzeb2OjRpRKEFtEsto3A==", "dev": true, "requires": { "@cspell/dict-ada": "^4.0.2", - "@cspell/dict-aws": "^4.0.0", - "@cspell/dict-bash": "^4.1.2", - "@cspell/dict-companies": "^3.0.26", - "@cspell/dict-cpp": "^5.0.8", - "@cspell/dict-cryptocurrencies": "^4.0.0", + "@cspell/dict-aws": "^4.0.1", + "@cspell/dict-bash": "^4.1.3", + "@cspell/dict-companies": "^3.0.31", + "@cspell/dict-cpp": "^5.1.3", + "@cspell/dict-cryptocurrencies": "^5.0.0", "@cspell/dict-csharp": "^4.0.2", "@cspell/dict-css": "^4.0.12", "@cspell/dict-dart": "^2.0.3", @@ -8340,76 +8259,80 @@ "@cspell/dict-docker": "^1.1.7", "@cspell/dict-dotnet": "^5.0.0", "@cspell/dict-elixir": "^4.0.3", - "@cspell/dict-en_us": "^4.3.9", - "@cspell/dict-en-common-misspellings": "^1.0.2", + "@cspell/dict-en_us": "^4.3.17", + "@cspell/dict-en-common-misspellings": "^2.0.0", "@cspell/dict-en-gb": "1.1.33", - "@cspell/dict-filetypes": "^3.0.1", + "@cspell/dict-filetypes": "^3.0.3", "@cspell/dict-fonts": "^4.0.0", - "@cspell/dict-fsharp": "^1.0.0", + "@cspell/dict-fsharp": "^1.0.1", "@cspell/dict-fullstack": "^3.1.5", - "@cspell/dict-gaming-terms": "^1.0.4", - "@cspell/dict-git": "^2.0.0", - "@cspell/dict-golang": "^6.0.3", + "@cspell/dict-gaming-terms": "^1.0.5", + "@cspell/dict-git": "^3.0.0", + "@cspell/dict-golang": "^6.0.5", "@cspell/dict-haskell": "^4.0.1", "@cspell/dict-html": "^4.0.5", "@cspell/dict-html-symbol-entities": "^4.0.0", "@cspell/dict-java": "^5.0.6", - "@cspell/dict-k8s": "^1.0.1", + "@cspell/dict-julia": "^1.0.1", + "@cspell/dict-k8s": "^1.0.2", "@cspell/dict-latex": "^4.0.0", "@cspell/dict-lorem-ipsum": "^4.0.0", - "@cspell/dict-lua": "^4.0.2", + "@cspell/dict-lua": "^4.0.3", + "@cspell/dict-makefile": "^1.0.0", + "@cspell/dict-monkeyc": "^1.0.6", "@cspell/dict-node": "^4.0.3", - "@cspell/dict-npm": "^5.0.12", - "@cspell/dict-php": "^4.0.3", - "@cspell/dict-powershell": "^5.0.2", - "@cspell/dict-public-licenses": "^2.0.5", - "@cspell/dict-python": "^4.1.9", + "@cspell/dict-npm": "^5.0.15", + "@cspell/dict-php": "^4.0.6", + "@cspell/dict-powershell": "^5.0.3", + "@cspell/dict-public-licenses": "^2.0.6", + "@cspell/dict-python": "^4.1.11", "@cspell/dict-r": "^2.0.1", - "@cspell/dict-ruby": "^5.0.1", - "@cspell/dict-rust": "^4.0.1", + "@cspell/dict-ruby": "^5.0.2", + "@cspell/dict-rust": "^4.0.2", "@cspell/dict-scala": "^5.0.0", - "@cspell/dict-software-terms": "^3.3.6", - "@cspell/dict-sql": "^2.1.2", + "@cspell/dict-software-terms": "^3.3.18", + "@cspell/dict-sql": "^2.1.3", "@cspell/dict-svelte": "^1.0.2", "@cspell/dict-swift": "^2.0.1", + "@cspell/dict-terraform": "^1.0.0", "@cspell/dict-typescript": "^3.1.2", "@cspell/dict-vue": "^3.0.0" } }, "@cspell/cspell-json-reporter": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/cspell-json-reporter/-/cspell-json-reporter-7.3.8.tgz", - "integrity": "sha512-FxYJWtDgxIQYxdP0RWwRV8nzLfxVx8D8D5L2sbbP/0NFczDbq/zWYep4nSAHJT10aUJrogsVUYwNwdkr562wKA==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/cspell-json-reporter/-/cspell-json-reporter-8.7.0.tgz", + "integrity": "sha512-LTQPEvXvCqnc+ok9WXpSISZyt4/nGse9fVEM430g0BpGzKpt3RMx49B8uasvvnanzCuikaW9+wFLmwgvraERhA==", "dev": true, "requires": { - "@cspell/cspell-types": "7.3.8" + "@cspell/cspell-types": "8.7.0" } }, "@cspell/cspell-pipe": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-7.3.8.tgz", - "integrity": "sha512-/vKPfiHM5bJUkNX12w9j533Lm2JvvSMKUCChM2AxYjy6vL8prc/7ei++4g2xAWwRxLZPg2OfpDJS5EirZNBJdA==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-8.7.0.tgz", + "integrity": "sha512-ePqddIQ4arqPQgOkC146SkZxvZb9/jL7xIM5Igy2n3tiWTC5ijrX/mbHpPZ1VGcFck+1M0cJUuyhuJk+vMj3rg==", "dev": true }, "@cspell/cspell-resolver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/cspell-resolver/-/cspell-resolver-7.3.8.tgz", - "integrity": "sha512-CeyQmhqZI5a+T7a6oiVN90TFlzU3qVVYqCaZ9grFrVOsmzY9ipH5gmqfgMavaBOqb0di/+VZS8d02suMOXcKLQ==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/cspell-resolver/-/cspell-resolver-8.7.0.tgz", + "integrity": "sha512-grZwDFYqcBYQDaz4AkUtdyqc4UUH2J3/7yWVkBbYDPE+FQHa9ofFXzXxyjs56GJlPfi9ULpe5/Wz6uVLg8rQkQ==", "dev": true, "requires": { - "global-dirs": "^3.0.1" + "global-directory": "^4.0.1" } }, "@cspell/cspell-service-bus": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-7.3.8.tgz", - "integrity": "sha512-3E7gwY6QILrZH83p69i9CERbRBEqeBiKCIKnAd7U2PbxfFqG/P47fqpnarzSWFwFpU92oyGsYry+wC8TEGISRQ==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-8.7.0.tgz", + "integrity": "sha512-KW48iu0nTDzbedixc7iB7K7mlAZQ7QeMLuM/akxigOlvtOdVJrRa9Pfn44lwejts1ANb/IXil3GH8YylkVi76Q==", "dev": true }, "@cspell/cspell-types": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-7.3.8.tgz", - "integrity": "sha512-hsOtaULDnawEL4pU0fga941GhvE8mbTbywrJBx+eGX3fnJsaUr8XQzCtnLsW2ko7WCLWFItNEhSSTPQHBFRLsw==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-8.7.0.tgz", + "integrity": "sha512-Rb+LCE5I9JEb/LE8nSViVSF8z1CWv/z4mPBIG37VMa7aUx2gAQa6gJekNfpY9YZiMzx4Tv3gDujN80ytks4pGA==", "dev": true }, "@cspell/dict-ada": { @@ -8419,33 +8342,33 @@ "dev": true }, "@cspell/dict-aws": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@cspell/dict-aws/-/dict-aws-4.0.0.tgz", - "integrity": "sha512-1YkCMWuna/EGIDN/zKkW+j98/55mxigftrSFgsehXhPld+ZMJM5J9UuBA88YfL7+/ETvBdd7mwW6IwWsC+/ltQ==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@cspell/dict-aws/-/dict-aws-4.0.1.tgz", + "integrity": "sha512-NXO+kTPQGqaaJKa4kO92NAXoqS+i99dQzf3/L1BxxWVSBS3/k1f3uhmqIh7Crb/n22W793lOm0D9x952BFga3Q==", "dev": true }, "@cspell/dict-bash": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-bash/-/dict-bash-4.1.2.tgz", - "integrity": "sha512-AEBWjbaMaJEyAjOHW0F15P2izBjli2cNerG3NjuVH7xX/HUUeNoTj8FF1nwpMufKwGQCvuyO2hCmkVxhJ0y55Q==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-bash/-/dict-bash-4.1.3.tgz", + "integrity": "sha512-tOdI3QVJDbQSwPjUkOiQFhYcu2eedmX/PtEpVWg0aFps/r6AyjUQINtTgpqMYnYuq8O1QUIQqnpx21aovcgZCw==", "dev": true }, "@cspell/dict-companies": { - "version": "3.0.27", - "resolved": "https://registry.npmjs.org/@cspell/dict-companies/-/dict-companies-3.0.27.tgz", - "integrity": "sha512-gaPR/luf+4oKGyxvW4GbxGGPdHiC5kj/QefnmQqrLFrLiCSXMZg5/NL+Lr4E5lcHsd35meX61svITQAvsT7lyQ==", + "version": "3.0.31", + "resolved": "https://registry.npmjs.org/@cspell/dict-companies/-/dict-companies-3.0.31.tgz", + "integrity": "sha512-hKVpV/lcGKP4/DpEPS8P4osPvFH/YVLJaDn9cBIOH6/HSmL5LbFgJNKpMGaYRbhm2FEX56MKE3yn/MNeNYuesQ==", "dev": true }, "@cspell/dict-cpp": { - "version": "5.0.9", - "resolved": "https://registry.npmjs.org/@cspell/dict-cpp/-/dict-cpp-5.0.9.tgz", - "integrity": "sha512-ql9WPNp8c+fhdpVpjpZEUWmxBHJXs9CJuiVVfW/iwv5AX7VuMHyEwid+9/6nA8qnCxkUQ5pW83Ums1lLjn8ScA==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-cpp/-/dict-cpp-5.1.3.tgz", + "integrity": "sha512-sqnriXRAInZH9W75C+APBh6dtben9filPqVbIsiRMUXGg+s02ekz0z6LbS7kXeJ5mD2qXoMLBrv13qH2eIwutQ==", "dev": true }, "@cspell/dict-cryptocurrencies": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@cspell/dict-cryptocurrencies/-/dict-cryptocurrencies-4.0.0.tgz", - "integrity": "sha512-EiZp91ATyRxTmauIQfOX9adLYCunKjHEh092rrM7o2eMXP9n7zpXAL9BK7LviL+LbB8VDOm21q+s83cKrrRrsg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-cryptocurrencies/-/dict-cryptocurrencies-5.0.0.tgz", + "integrity": "sha512-Z4ARIw5+bvmShL+4ZrhDzGhnc9znaAGHOEMaB/GURdS/jdoreEDY34wdN0NtdLHDO5KO7GduZnZyqGdRoiSmYA==", "dev": true }, "@cspell/dict-csharp": { @@ -8497,15 +8420,15 @@ "dev": true }, "@cspell/dict-en_us": { - "version": "4.3.11", - "resolved": "https://registry.npmjs.org/@cspell/dict-en_us/-/dict-en_us-4.3.11.tgz", - "integrity": "sha512-GhdavZFlS2YbUNcRtPbgJ9j6aUyq116LmDQ2/Q5SpQxJ5/6vVs8Yj5WxV1JD+Zh/Zim1NJDcneTOuLsUGi+Czw==", + "version": "4.3.19", + "resolved": "https://registry.npmjs.org/@cspell/dict-en_us/-/dict-en_us-4.3.19.tgz", + "integrity": "sha512-tHcXdkmm0t9LlRct1vgu3+h0KW/wlXCInkTiR4D/rl730q1zu2qVEgiy1saMiTUSNmdu7Hiy+Mhb+1braVqnZQ==", "dev": true }, "@cspell/dict-en-common-misspellings": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-1.0.2.tgz", - "integrity": "sha512-jg7ZQZpZH7+aAxNBlcAG4tGhYF6Ksy+QS5Df73Oo+XyckBjC9QS+PrRwLTeYoFIgXy5j3ICParK5r3MSSoL4gw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-2.0.0.tgz", + "integrity": "sha512-NOg8dlv37/YqLkCfBs5OXeJm/Wcfb/CzeOmOZJ2ZXRuxwsNuolb4TREUce0yAXRqMhawahY5TSDRJJBgKjBOdw==", "dev": true }, "@cspell/dict-en-gb": { @@ -8515,9 +8438,9 @@ "dev": true }, "@cspell/dict-filetypes": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-filetypes/-/dict-filetypes-3.0.2.tgz", - "integrity": "sha512-StoC0wPmFNav6F6P8/FYFN1BpZfPgOmktb8gQ9wTauelWofPeBW+A0t5ncZt9hXHtnbGDA98v4ukacV+ucbnUg==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-filetypes/-/dict-filetypes-3.0.3.tgz", + "integrity": "sha512-J9UP+qwwBLfOQ8Qg9tAsKtSY/WWmjj21uj6zXTI9hRLD1eG1uUOLcfVovAmtmVqUWziPSKMr87F6SXI3xmJXgw==", "dev": true }, "@cspell/dict-fonts": { @@ -8539,21 +8462,21 @@ "dev": true }, "@cspell/dict-gaming-terms": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@cspell/dict-gaming-terms/-/dict-gaming-terms-1.0.4.tgz", - "integrity": "sha512-hbDduNXlk4AOY0wFxcDMWBPpm34rpqJBeqaySeoUH70eKxpxm+dvjpoRLJgyu0TmymEICCQSl6lAHTHSDiWKZg==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@cspell/dict-gaming-terms/-/dict-gaming-terms-1.0.5.tgz", + "integrity": "sha512-C3riccZDD3d9caJQQs1+MPfrUrQ+0KHdlj9iUR1QD92FgTOF6UxoBpvHUUZ9YSezslcmpFQK4xQQ5FUGS7uWfw==", "dev": true }, "@cspell/dict-git": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@cspell/dict-git/-/dict-git-2.0.0.tgz", - "integrity": "sha512-n1AxyX5Kgxij/sZFkxFJlzn3K9y/sCcgVPg/vz4WNJ4K9YeTsUmyGLA2OQI7d10GJeiuAo2AP1iZf2A8j9aj2w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-git/-/dict-git-3.0.0.tgz", + "integrity": "sha512-simGS/lIiXbEaqJu9E2VPoYW1OTC2xrwPPXNXFMa2uo/50av56qOuaxDrZ5eH1LidFXwoc8HROCHYeKoNrDLSw==", "dev": true }, "@cspell/dict-golang": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/@cspell/dict-golang/-/dict-golang-6.0.4.tgz", - "integrity": "sha512-jOfewPEyN6U9Q80okE3b1PTYBfqZgHh7w4o271GSuAX+VKJ1lUDhdR4bPKRxSDdO5jHArw2u5C8nH2CWGuygbQ==", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@cspell/dict-golang/-/dict-golang-6.0.5.tgz", + "integrity": "sha512-w4mEqGz4/wV+BBljLxduFNkMrd3rstBNDXmoX5kD4UTzIb4Sy0QybWCtg2iVT+R0KWiRRA56QKOvBsgXiddksA==", "dev": true }, "@cspell/dict-haskell": { @@ -8580,6 +8503,12 @@ "integrity": "sha512-kdE4AHHHrixyZ5p6zyms1SLoYpaJarPxrz8Tveo6gddszBVVwIUZ+JkQE1bWNLK740GWzIXdkznpUfw1hP9nXw==", "dev": true }, + "@cspell/dict-julia": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@cspell/dict-julia/-/dict-julia-1.0.1.tgz", + "integrity": "sha512-4JsCLCRhhLMLiaHpmR7zHFjj1qOauzDI5ZzCNQS31TUMfsOo26jAKDfo0jljFAKgw5M2fEG7sKr8IlPpQAYrmQ==", + "dev": true + }, "@cspell/dict-k8s": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@cspell/dict-k8s/-/dict-k8s-1.0.2.tgz", @@ -8599,9 +8528,21 @@ "dev": true }, "@cspell/dict-lua": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-lua/-/dict-lua-4.0.2.tgz", - "integrity": "sha512-eeC20Q+UnHcTVBK6pgwhSjGIVugO2XqU7hv4ZfXp2F9DxGx1RME0+1sKX4qAGhdFGwOBsEzb2fwUsAEP6Mibpg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-lua/-/dict-lua-4.0.3.tgz", + "integrity": "sha512-lDHKjsrrbqPaea13+G9s0rtXjMO06gPXPYRjRYawbNmo4E/e3XFfVzeci3OQDQNDmf2cPOwt9Ef5lu2lDmwfJg==", + "dev": true + }, + "@cspell/dict-makefile": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-makefile/-/dict-makefile-1.0.0.tgz", + "integrity": "sha512-3W9tHPcSbJa6s0bcqWo6VisEDTSN5zOtDbnPabF7rbyjRpNo0uHXHRJQF8gAbFzoTzBBhgkTmrfSiuyQm7vBUQ==", + "dev": true + }, + "@cspell/dict-monkeyc": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@cspell/dict-monkeyc/-/dict-monkeyc-1.0.6.tgz", + "integrity": "sha512-oO8ZDu/FtZ55aq9Mb67HtaCnsLn59xvhO/t2mLLTHAp667hJFxpp7bCtr2zOrR1NELzFXmKln/2lw/PvxMSvrA==", "dev": true }, "@cspell/dict-node": { @@ -8611,33 +8552,33 @@ "dev": true }, "@cspell/dict-npm": { - "version": "5.0.12", - "resolved": "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-5.0.12.tgz", - "integrity": "sha512-T/+WeQmtbxo7ad6hrdI8URptYstKJP+kXyWJZfuVJJGWJQ7yubxrI5Z5AfM+Dh/ff4xHmdzapxD9adaEQ727uw==", + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-5.0.15.tgz", + "integrity": "sha512-sX0X5YWNW54F4baW7b5JJB6705OCBIZtUqjOghlJNORS5No7QY1IX1zc5FxNNu4gsaCZITAmfMi4ityXEsEThA==", "dev": true }, "@cspell/dict-php": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@cspell/dict-php/-/dict-php-4.0.4.tgz", - "integrity": "sha512-fRlLV730fJbulDsLIouZxXoxHt3KIH6hcLFwxaupHL+iTXDg0lo7neRpbqD5MScr/J3idEr7i9G8XWzIikKFug==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@cspell/dict-php/-/dict-php-4.0.6.tgz", + "integrity": "sha512-ySAXisf7twoVFZqBV2o/DKiCLIDTHNqfnj0EfH9OoOUR7HL3rb6zJkm0viLUFDO2G/8SyIi6YrN/6KX+Scjjjg==", "dev": true }, "@cspell/dict-powershell": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-powershell/-/dict-powershell-5.0.2.tgz", - "integrity": "sha512-IHfWLme3FXE7vnOmMncSBxOsMTdNWd1Vcyhag03WS8oANSgX8IZ+4lMI00mF0ptlgchf16/OU8WsV4pZfikEFw==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-powershell/-/dict-powershell-5.0.3.tgz", + "integrity": "sha512-lEdzrcyau6mgzu1ie98GjOEegwVHvoaWtzQnm1ie4DyZgMr+N6D0Iyj1lzvtmt0snvsDFa5F2bsYzf3IMKcpcA==", "dev": true }, "@cspell/dict-public-licenses": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@cspell/dict-public-licenses/-/dict-public-licenses-2.0.5.tgz", - "integrity": "sha512-91HK4dSRri/HqzAypHgduRMarJAleOX5NugoI8SjDLPzWYkwZ1ftuCXSk+fy8DLc3wK7iOaFcZAvbjmnLhVs4A==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@cspell/dict-public-licenses/-/dict-public-licenses-2.0.6.tgz", + "integrity": "sha512-bHqpSpJvLCUcWxj1ov/Ki8WjmESpYwRpQlqfdchekOTc93Huhvjm/RXVN1R4fVf4Hspyem1QVkCGqAmjJMj6sw==", "dev": true }, "@cspell/dict-python": { - "version": "4.1.10", - "resolved": "https://registry.npmjs.org/@cspell/dict-python/-/dict-python-4.1.10.tgz", - "integrity": "sha512-ErF/Ohcu6Xk4QVNzFgo8p7CxkxvAKAmFszvso41qOOhu8CVpB35ikBRpGVDw9gsCUtZzi15Yl0izi4do6WcLkA==", + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@cspell/dict-python/-/dict-python-4.1.11.tgz", + "integrity": "sha512-XG+v3PumfzUW38huSbfT15Vqt3ihNb462ulfXifpQllPok5OWynhszCLCRQjQReV+dgz784ST4ggRxW452/kVg==", "dev": true, "requires": { "@cspell/dict-data-science": "^1.0.11" @@ -8650,15 +8591,15 @@ "dev": true }, "@cspell/dict-ruby": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@cspell/dict-ruby/-/dict-ruby-5.0.1.tgz", - "integrity": "sha512-rruTm7Emhty/BSYavSm8ZxRuVw0OBqzJkwIFXcV0cX7To8D1qbmS9HFHRuRg8IL11+/nJvtdDz+lMFBSmPUagQ==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@cspell/dict-ruby/-/dict-ruby-5.0.2.tgz", + "integrity": "sha512-cIh8KTjpldzFzKGgrqUX4bFyav5lC52hXDKo4LbRuMVncs3zg4hcSf4HtURY+f2AfEZzN6ZKzXafQpThq3dl2g==", "dev": true }, "@cspell/dict-rust": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@cspell/dict-rust/-/dict-rust-4.0.1.tgz", - "integrity": "sha512-xJSSzHDK2z6lSVaOmMxl3PTOtfoffaxMo7fTcbZUF+SCJzfKbO6vnN9TCGX2sx1RHFDz66Js6goz6SAZQdOwaw==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@cspell/dict-rust/-/dict-rust-4.0.2.tgz", + "integrity": "sha512-RhziKDrklzOntxAbY3AvNR58wnFGIo3YS8+dNeLY36GFuWOvXDHFStYw5Pod4f/VXbO/+1tXtywCC4zWfB2p1w==", "dev": true }, "@cspell/dict-scala": { @@ -8668,15 +8609,15 @@ "dev": true }, "@cspell/dict-software-terms": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-3.3.9.tgz", - "integrity": "sha512-/O3EWe0SIznx18S7J3GAXPDe7sexn3uTsf4IlnGYK9WY6ZRuEywkXCB+5/USLTGf4+QC05pkHofphdvVSifDyA==", + "version": "3.3.20", + "resolved": "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-3.3.20.tgz", + "integrity": "sha512-KmPwCxYWEu7SGyT/0m/n6i6R4ZgxbmN3XcerzA6Z629Wm5iZTVfJaMWqDK2RKAyBawS7OMfxGz0W/wYU4FhJlA==", "dev": true }, "@cspell/dict-sql": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-sql/-/dict-sql-2.1.2.tgz", - "integrity": "sha512-Pi0hAcvsSGtZZeyyAN1VfGtQJbrXos5x2QjJU0niAQKhmITSOrXU/1II1Gogk+FYDjWyV9wP2De0U2f7EWs6oQ==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-sql/-/dict-sql-2.1.3.tgz", + "integrity": "sha512-SEyTNKJrjqD6PAzZ9WpdSu6P7wgdNtGV2RV8Kpuw1x6bV+YsSptuClYG+JSdRExBTE6LwIe1bTklejUp3ZP8TQ==", "dev": true }, "@cspell/dict-svelte": { @@ -8691,10 +8632,16 @@ "integrity": "sha512-gxrCMUOndOk7xZFmXNtkCEeroZRnS2VbeaIPiymGRHj5H+qfTAzAKxtv7jJbVA3YYvEzWcVE2oKDP4wcbhIERw==", "dev": true }, + "@cspell/dict-terraform": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-terraform/-/dict-terraform-1.0.0.tgz", + "integrity": "sha512-Ak+vy4HP/bOgzf06BAMC30+ZvL9mzv21xLM2XtfnBLTDJGdxlk/nK0U6QT8VfFLqJ0ZZSpyOxGsUebWDCTr/zQ==", + "dev": true + }, "@cspell/dict-typescript": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-typescript/-/dict-typescript-3.1.2.tgz", - "integrity": "sha512-lcNOYWjLUvDZdLa0UMNd/LwfVdxhE9rKA+agZBGjL3lTA3uNvH7IUqSJM/IXhJoBpLLMVEOk8v1N9xi+vDuCdA==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@cspell/dict-typescript/-/dict-typescript-3.1.4.tgz", + "integrity": "sha512-jUcPa0rsPca5ur1+G56DXnSc5hbbJkzvPHHvyQtkbPXBQd3CXPMNfrTVCgzex/7cY/7FONcpFCUwgwfni9Jqbw==", "dev": true }, "@cspell/dict-vue": { @@ -8704,18 +8651,18 @@ "dev": true }, "@cspell/dynamic-import": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/dynamic-import/-/dynamic-import-7.3.8.tgz", - "integrity": "sha512-s8x7dH/ScfW0pFEIvNFo4JOR7YmvM2wZSHOykmWTJCQ8k2EQ/+uECPp6ZxkoJoukTz8sj+3KzF0fRl5mKxPd6g==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/dynamic-import/-/dynamic-import-8.7.0.tgz", + "integrity": "sha512-xlEPdiHVDu+4xYkvwjL9MgklxOi9XB+Pr1H9s3Ww9WEq+q6BA3xOHxLIU/k8mhqFTMZGFZRCsdy/EwMu6SyRhQ==", "dev": true, "requires": { - "import-meta-resolve": "^3.0.0" + "import-meta-resolve": "^4.0.0" } }, "@cspell/strong-weak-map": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/@cspell/strong-weak-map/-/strong-weak-map-7.3.8.tgz", - "integrity": "sha512-qNnt2wG45wb8JP54mENarnQgxfSYKPp3zlYID/2przbMNmVJRqUlcIBOdLI6plCgGeNkzJTl3T9T1ATbnN+LLw==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@cspell/strong-weak-map/-/strong-weak-map-8.7.0.tgz", + "integrity": "sha512-0bo0WwDr2lzGoCP7vbpWbDpPyuOrHKK+218txnUpx6Pn1EDBLfcDQsiZED5B6zlpwgbGi6y3vc0rWtJbjKvwzg==", "dev": true }, "@csstools/css-parser-algorithms": { @@ -10086,27 +10033,27 @@ } }, "cspell": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell/-/cspell-7.3.8.tgz", - "integrity": "sha512-8AkqsBQAMsKYV5XyJLB6rBs5hgspL4+MPOg6mBKG2j5EvQgRVc6dIfAPWDNLpIeW2a3+7K5BIWqKHapKPeiknQ==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell/-/cspell-8.7.0.tgz", + "integrity": "sha512-77nRPgLl240C6FK8RKVKo34lP15Lzp/6bk+SKYJFwUKKXlcgWXDis+Lw4JolA741/JgHtuxmhW1C8P7dCKjJ3w==", "dev": true, "requires": { - "@cspell/cspell-json-reporter": "7.3.8", - "@cspell/cspell-pipe": "7.3.8", - "@cspell/cspell-types": "7.3.8", - "@cspell/dynamic-import": "7.3.8", + "@cspell/cspell-json-reporter": "8.7.0", + "@cspell/cspell-pipe": "8.7.0", + "@cspell/cspell-types": "8.7.0", + "@cspell/dynamic-import": "8.7.0", "chalk": "^5.3.0", "chalk-template": "^1.1.0", - "commander": "^11.1.0", - "cspell-gitignore": "7.3.8", - "cspell-glob": "7.3.8", - "cspell-io": "7.3.8", - "cspell-lib": "7.3.8", - "fast-glob": "^3.3.1", + "commander": "^12.0.0", + "cspell-gitignore": "8.7.0", + "cspell-glob": "8.7.0", + "cspell-io": "8.7.0", + "cspell-lib": "8.7.0", + "fast-glob": "^3.3.2", "fast-json-stable-stringify": "^2.1.0", - "file-entry-cache": "^7.0.1", + "file-entry-cache": "^8.0.0", "get-stdin": "^9.0.0", - "semver": "^7.5.4", + "semver": "^7.6.0", "strip-ansi": "^7.1.0", "vscode-uri": "^3.0.8" }, @@ -10124,24 +10071,34 @@ "dev": true }, "commander": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", - "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.0.0.tgz", + "integrity": "sha512-MwVNWlYjDTtOjX5PiD7o5pK0UrFU/OYgcJfjjK4RaHZETNtjJqrZa9Y9ds88+A+f+d5lv+561eZ+yCKoS3gbAA==", "dev": true }, "file-entry-cache": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-7.0.1.tgz", - "integrity": "sha512-uLfFktPmRetVCbHe5UPuekWrQ6hENufnA46qEGbfACkK5drjTTdQYUragRgMjHldcbYG+nslUerqMPjbBSHXjQ==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", "dev": true, "requires": { - "flat-cache": "^3.1.1" + "flat-cache": "^4.0.0" + } + }, + "flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "requires": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" } }, "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "requires": { "lru-cache": "^6.0.0" @@ -10158,195 +10115,106 @@ } } }, + "cspell-config-lib": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-config-lib/-/cspell-config-lib-8.7.0.tgz", + "integrity": "sha512-depsd01GbLBo71/tfRrL5iECWQLS4CjCxA9C01dVkFAJqVB0s+K9KLKjTlq5aHOhcvo9Z3dHV+bGQCf5/Q7bfw==", + "dev": true, + "requires": { + "@cspell/cspell-types": "8.7.0", + "comment-json": "^4.2.3", + "yaml": "^2.4.1" + } + }, "cspell-dictionary": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-dictionary/-/cspell-dictionary-7.3.8.tgz", - "integrity": "sha512-gkq4t78eLR0xC3P0vDDHPeNY4iZRd5YE6Z8uDJ7RM4UaX/TSdVUN9KNFr34RnJ119NYVHujpL9+uW7wPSAe8Eg==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-dictionary/-/cspell-dictionary-8.7.0.tgz", + "integrity": "sha512-S6IpZSzIMxlOO/33NgCOuP0TPH2mZbw8d5CP44z5jajflloq8l74MeJLkeDzYfCRcm0Rtk0A5drBeMg+Ai34OA==", "dev": true, "requires": { - "@cspell/cspell-pipe": "7.3.8", - "@cspell/cspell-types": "7.3.8", - "cspell-trie-lib": "7.3.8", - "fast-equals": "^4.0.3", - "gensequence": "^6.0.0" - }, - "dependencies": { - "fast-equals": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-4.0.3.tgz", - "integrity": "sha512-G3BSX9cfKttjr+2o1O22tYMLq0DPluZnYtq1rXumE1SpL/F/SLIfHx08WYQoWSIpeMYf8sRbJ8++71+v6Pnxfg==", - "dev": true - } + "@cspell/cspell-pipe": "8.7.0", + "@cspell/cspell-types": "8.7.0", + "cspell-trie-lib": "8.7.0", + "fast-equals": "^5.0.1", + "gensequence": "^7.0.0" } }, "cspell-gitignore": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-7.3.8.tgz", - "integrity": "sha512-vJzCOUEiw6/MwV/U4Ux3bgSdj9mXB+X5eHL+qzVoyFI7ArlvrkuGTL+iFJThQcS8McM3SGqtvaBNCiKBmAeCkA==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-8.7.0.tgz", + "integrity": "sha512-yvUZ86qyopUpDgn+YXP1qTpUe/lp65ZFvpMtw21lWHTFlg1OWKntr349EQU/5ben/K6koxk1FiElCBV7Lr4uFg==", "dev": true, "requires": { - "cspell-glob": "7.3.8", - "find-up": "^5.0.0" - }, - "dependencies": { - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - } + "cspell-glob": "8.7.0", + "find-up-simple": "^1.0.0" } }, "cspell-glob": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-7.3.8.tgz", - "integrity": "sha512-wUZC6znyxEs0wlhzGfZ4XHkATPJyazJIFi/VvAdj+KHe7U8SoSgitJVDQqdgectI2y3MxR7lQdVLX9dONFh+7A==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-8.7.0.tgz", + "integrity": "sha512-AMdfx0gvROA/aIL8t8b5Y5NtMgscGZELFj6WhCSZiQSuWRxXUKiLGGLUFjx2y0hgXN9LUYOo6aBjvhnxI/v71g==", "dev": true, "requires": { "micromatch": "^4.0.5" } }, "cspell-grammar": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-7.3.8.tgz", - "integrity": "sha512-nTjAlMAZAVSFhBd9U3MB9l5FfC5JCCr9DTOA2wWxusVOm+36MbSEH90ucLPkhPa9/+0HtbpDhqVMwXCZllRpsg==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-8.7.0.tgz", + "integrity": "sha512-SGcXc7322wU2WNRi7vtpToWDXTqZHhxqvR+aIXHT2kkxlMSWp3Rvfpshd0ckgY54nZtgw7R/JtKND2jeACRpwQ==", "dev": true, "requires": { - "@cspell/cspell-pipe": "7.3.8", - "@cspell/cspell-types": "7.3.8" + "@cspell/cspell-pipe": "8.7.0", + "@cspell/cspell-types": "8.7.0" } }, "cspell-io": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-7.3.8.tgz", - "integrity": "sha512-XrxPbaiek7EZh+26k9RYVz2wKclaMqM6mXBiu/kpFAHRHHfz91ado6xWvyxZ7UAxQ8ixEwZ+oz9TU+k21gHzyw==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-8.7.0.tgz", + "integrity": "sha512-o7OltyyvVkRG1gQrIqGpN5pUkHNnv6rvihb7Qu6cJ8jITinLGuWJuEQpgt0eF5yIr624jDbFwSzAxsFox8riQg==", "dev": true, "requires": { - "@cspell/cspell-service-bus": "7.3.8", - "node-fetch": "^2.7.0" + "@cspell/cspell-service-bus": "8.7.0" } }, "cspell-lib": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-7.3.8.tgz", - "integrity": "sha512-2L770sI5DdsAKVzO3jxmfP2fz4LryW6dzL93BpN7WU+ebFC6rg4ioa5liOJV4WoDo2fNQMSeqfW4Aawu9zWR7A==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-8.7.0.tgz", + "integrity": "sha512-qDSHZGekwiDmouYRECTQokE+hgAuPqREm+Hb+G3DoIo3ZK5H47TtEUo8fNCw22XsKefcF8X28LiyoZwiYHVpSg==", "dev": true, "requires": { - "@cspell/cspell-bundled-dicts": "7.3.8", - "@cspell/cspell-pipe": "7.3.8", - "@cspell/cspell-resolver": "7.3.8", - "@cspell/cspell-types": "7.3.8", - "@cspell/dynamic-import": "7.3.8", - "@cspell/strong-weak-map": "7.3.8", + "@cspell/cspell-bundled-dicts": "8.7.0", + "@cspell/cspell-pipe": "8.7.0", + "@cspell/cspell-resolver": "8.7.0", + "@cspell/cspell-types": "8.7.0", + "@cspell/dynamic-import": "8.7.0", + "@cspell/strong-weak-map": "8.7.0", "clear-module": "^4.1.2", "comment-json": "^4.2.3", "configstore": "^6.0.0", - "cosmiconfig": "8.0.0", - "cspell-dictionary": "7.3.8", - "cspell-glob": "7.3.8", - "cspell-grammar": "7.3.8", - "cspell-io": "7.3.8", - "cspell-trie-lib": "7.3.8", + "cspell-config-lib": "8.7.0", + "cspell-dictionary": "8.7.0", + "cspell-glob": "8.7.0", + "cspell-grammar": "8.7.0", + "cspell-io": "8.7.0", + "cspell-trie-lib": "8.7.0", "fast-equals": "^5.0.1", - "find-up": "^6.3.0", - "gensequence": "^6.0.0", + "gensequence": "^7.0.0", "import-fresh": "^3.3.0", "resolve-from": "^5.0.0", "vscode-languageserver-textdocument": "^1.0.11", "vscode-uri": "^3.0.8" - }, - "dependencies": { - "find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, - "requires": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - } - }, - "locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dev": true, - "requires": { - "p-locate": "^6.0.0" - } - }, - "p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "requires": { - "yocto-queue": "^1.0.0" - } - }, - "p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "requires": { - "p-limit": "^4.0.0" - } - }, - "path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "dev": true - }, - "yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true - } } }, "cspell-trie-lib": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-7.3.8.tgz", - "integrity": "sha512-UQx1Bazbyz2eQJ/EnMohINnUdZvAQL+OcQU3EPPbNWM1DWF4bJGgmFXKNCRYfJk6wtOZVXG5g5AZXx9KnHeN9A==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-8.7.0.tgz", + "integrity": "sha512-W3Nh2cO7gMV91r+hLqyTMgKlvRl4W5diKs5YiyOxjZumRkMBy42IzcNYtgIIacOxghklv96F5Bd1Vx/zY6ylGA==", "dev": true, "requires": { - "@cspell/cspell-pipe": "7.3.8", - "@cspell/cspell-types": "7.3.8", - "gensequence": "^6.0.0" + "@cspell/cspell-pipe": "8.7.0", + "@cspell/cspell-types": "8.7.0", + "gensequence": "^7.0.0" } }, "css-functions-list": { @@ -11081,9 +10949,9 @@ "dev": true }, "fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dev": true, "requires": { "@nodelib/fs.stat": "^2.0.2", @@ -11166,6 +11034,12 @@ "path-exists": "^4.0.0" } }, + "find-up-simple": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-up-simple/-/find-up-simple-1.0.0.tgz", + "integrity": "sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==", + "dev": true + }, "flat-cache": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.1.tgz", @@ -11225,9 +11099,9 @@ } }, "gensequence": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gensequence/-/gensequence-6.0.0.tgz", - "integrity": "sha512-8WwuywE9pokJRAcg2QFR/plk3cVPebSUqRPzpGQh3WQ0wIiHAw+HyOQj5IuHyUTQBHpBKFoB2JUMu9zT3vJ16Q==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/gensequence/-/gensequence-7.0.0.tgz", + "integrity": "sha512-47Frx13aZh01afHJTB3zTtKIlFI6vWY+MYCN9Qpew6i52rfKjnhCF/l1YlC8UmEMvvntZZ6z4PiCcmyuedR2aQ==", "dev": true }, "gensync": { @@ -11296,19 +11170,19 @@ "is-glob": "^4.0.1" } }, - "global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", + "global-directory": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/global-directory/-/global-directory-4.0.1.tgz", + "integrity": "sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==", "dev": true, "requires": { - "ini": "2.0.0" + "ini": "4.1.1" }, "dependencies": { "ini": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", + "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", "dev": true } } @@ -11382,9 +11256,9 @@ } }, "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "dev": true }, "graphemer": { @@ -11609,9 +11483,9 @@ } }, "import-meta-resolve": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-3.0.0.tgz", - "integrity": "sha512-4IwhLhNNA8yy445rPjD/lWh++7hMDOml2eHtd58eG7h+qK3EryMuuRbsHGPikCoAgIkkDnckKfWSk2iDla/ejg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.1.0.tgz", + "integrity": "sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==", "dev": true }, "import-modules": { @@ -13729,9 +13603,9 @@ "dev": true }, "yaml": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.3.tgz", - "integrity": "sha512-zw0VAJxgeZ6+++/su5AFoqBbZbrEakwu+X0M5HmcwUiBL7AzcuPKjj5we4xfQLp78LkEMpD0cOnUhmgOVy3KdQ==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.2.tgz", + "integrity": "sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA==", "dev": true }, "yargs": { diff --git a/package.json b/package.json index 3b9c99b9a0..37de34a522 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "ava": "^5.3.1", "cheerio": "^1.0.0-rc.12", "cross-spawn": "^7.0.3", - "cspell": "^7.3.8", + "cspell": "^8.7.0", "eslint": "^8.57.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-ava": "^14.0.0", From 4bee76937d04bca29d2c513b69a655a84eb98367 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 2 May 2024 09:11:04 -0500 Subject: [PATCH 09/47] Infrastructure: Bump actions/setup-node from 2 to 4 (#3012) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2 to 4. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/examples.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/examples.yml b/.github/workflows/examples.yml index 8f34448dfa..45b8fa1660 100644 --- a/.github/workflows/examples.yml +++ b/.github/workflows/examples.yml @@ -48,7 +48,7 @@ jobs: - uses: actions/checkout@v2 - name: Set up Node.js - uses: actions/setup-node@v2 + uses: actions/setup-node@v4 with: cache: npm From 73cc4311a012f5e86eec7b600a6be1c4197181fb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 2 May 2024 09:11:37 -0500 Subject: [PATCH 10/47] Infrastructure: Bump actions/checkout from 2 to 4 (#3013) Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/examples.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/examples.yml b/.github/workflows/examples.yml index 45b8fa1660..f9168bf300 100644 --- a/.github/workflows/examples.yml +++ b/.github/workflows/examples.yml @@ -45,7 +45,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v4 From 2a4ee4bd25dc8458c6a1b0ba2ecc13dbd00d11d4 Mon Sep 17 00:00:00 2001 From: Howard Edwards Date: Sun, 5 May 2024 18:27:28 -0500 Subject: [PATCH 11/47] Regression Tests: Enable disclosure_navigation.js test to scroll to current element (pull #2997) Resolves #2996. --- test/tests/disclosure_navigation.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/test/tests/disclosure_navigation.js b/test/tests/disclosure_navigation.js index a12d64da3d..228e452f18 100644 --- a/test/tests/disclosure_navigation.js +++ b/test/tests/disclosure_navigation.js @@ -73,6 +73,10 @@ ariaTest( for (let l = 0; l < links.length; l++) { await buttons[b].click(); + await t.context.session.executeScript(function () { + const link = arguments[0]; + link.scrollIntoView({ block: 'center' }); + }, links[l]); await links[l].click(); t.is( From e21ef7f7a3e33457df43b50c820abd9a2ac89442 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Wed, 8 May 2024 09:12:16 -0400 Subject: [PATCH 12/47] Infrastructure: Use Stylelint GitHub Action matcher (#3014) --- .github/workflows/lint-css.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/lint-css.yml b/.github/workflows/lint-css.yml index 4c75075644..8131cfeaef 100644 --- a/.github/workflows/lint-css.yml +++ b/.github/workflows/lint-css.yml @@ -33,10 +33,11 @@ jobs: with: cache: npm - - uses: xt0rted/stylelint-problem-matcher@v1 - - name: Install npm dependencies run: npm ci - name: Stylelint - run: npm run lint:css + run: npx stylelint "**/*.css" -f github + + - name: Prettier + run: npx prettier --check "**/*.css" From 504391aa41af0fd55aedc226de200a14a94f922a Mon Sep 17 00:00:00 2001 From: Jon Gunderson Date: Wed, 22 May 2024 13:09:51 -0500 Subject: [PATCH 13/47] Infrastructure: Update skipto.js to fix shortcut key bug for non-english keyboard layouts (pull #2975) * Disables shortcut key for skipto when focus is on a text input. * When menu opens, prevents hover from triggering focus change. * Remove hover styling when pointer leaves menu. --- content/shared/js/skipto.js | 233 +++++++++++++++++++++++++----------- 1 file changed, 163 insertions(+), 70 deletions(-) diff --git a/content/shared/js/skipto.js b/content/shared/js/skipto.js index d5bc6b29bb..d65ab3c766 100644 --- a/content/shared/js/skipto.js +++ b/content/shared/js/skipto.js @@ -1,6 +1,6 @@ /* ======================================================================== - * Version: 5.2.1 - * Copyright (c) 2022, 2023 Jon Gunderson; Licensed BSD + * Version: 5.3.2 + * Copyright (c) 2022, 2023, 2024 Jon Gunderson; Licensed BSD * Copyright (c) 2021 PayPal Accessibility Team and University of Illinois; Licensed BSD * All rights reserved. * Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: @@ -9,7 +9,8 @@ * Neither the name of PayPal or any of its subsidiaries or affiliates, nor the name of the University of Illinois, nor the names of any other contributors contributors may be used to endorse or promote products derived from this software without specific prior written permission. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * Documenation: https://skipto-landmarks-headings.github.io/page-script-5 + * CDN: https://skipto-landmarks-headings.github.io/page-script-5/dist/skipto.min.js + * Documentation: https://skipto-landmarks-headings.github.io/page-script-5 * Code: https://github.com/skipto-landmarks-headings/page-script-5 * Report Issues: https://github.com/skipto-landmarks-headings/page-script-5/issues * ======================================================================== */ @@ -122,16 +123,19 @@ $skipToId.popup { transition: top 0.35s ease; } -$skipToId button .text { +$skipToId button .skipto-text { padding: 6px 8px 6px 8px; display: inline-block; } -$skipToId button img { - height: 24px; - padding: 2px 4px 2px 4px; +$skipToId button .skipto-small { + padding: 6px 8px 6px 8px; + display: none; +} + +$skipToId button .skipto-medium { + padding: 6px 8px 6px 8px; display: none; - background-color: #e8e9ea; } $skipToId, @@ -165,18 +169,54 @@ $skipToId button { z-index: $zIndex !important; } -@media screen and (max-width: $mediaBreakPointpx) { - $skipToId button img { - display: block; +@media screen and (max-width: $smallBreakPointpx) { + $skipToId:not(.popup) button .skipto-small { + transition: top 0.35s ease; + display: inline-block; + } + + $skipToId:not(.popup) button .skipto-text, + $skipToId:not(.popup) button .skipto-medium { + transition: top 0.35s ease; + display: none; + } + + $skipToId:not(.popup).focus button .skipto-text { + transition: top 0.35s ease; + display: inline-block; + } + + $skipToId:not(.popup).focus button .skipto-small, + $skipToId:not(.popup).focus button .skipto-medium { + transition: top 0.35s ease; + display: none; + } + +} + +@media screen and (min-width: $smallBreakPointpx) and (max-width: $mediumBreakPointpx) { + $skipToId:not(.popup) button .skipto-medium { + transition: top 0.35s ease; + display: inline-block; } - $skipToId button { - border-color: #e8e9ea; + $skipToId:not(.popup) button .skipto-text, + $skipToId:not(.popup) button .skipto-small { + transition: top 0.35s ease; + display: none; } - $skipToId button .text { + $skipToId:not(.popup).focus button .skipto-text { + transition: top 0.35s ease; + display: inline-block; + } + + $skipToId:not(.popup).focus button .skipto-small, + $skipToId:not(.popup).focus button .skipto-medium { + transition: top 0.35s ease; display: none; } + } $skipToId.fixed { @@ -329,37 +369,31 @@ $skipToId button:hover { background-color: $menuBackgroundColor; color: $menuTextColor; outline: none; -} - -$skipToId button:focus, -$skipToId button:hover { border-width: 0px 2px 2px 2px; border-color: $focusBorderColor; } -$skipToId button:focus .text, -$skipToId button:hover .text { - padding: 6px 7px 5px 7px; -} -$skipToId button:focus img, -$skipToId button:hover img { - padding: 2px 3px 4px 3px; +$skipToId button:focus .skipto-text, +$skipToId button:hover .skipto-text, +$skipToId button:focus .skipto-small, +$skipToId button:hover .skipto-small, +$skipToId button:focus .skipto-medium, +$skipToId button:hover .skipto-medium { + padding: 6px 7px 5px 7px; } - $skipToId [role="menuitem"]:focus { padding: 1px; border-width: 2px; border-style: solid; border-color: $focusBorderColor; - background-color: $menuitemFocusBackgroundColor; - color: $menuitemFocusTextColor; outline: none; } -$skipToId [role="menuitem"]:focus .level, -$skipToId [role="menuitem"]:focus .label { +$skipToId [role="menuitem"].hover, +$skipToId [role="menuitem"].hover .level, +$skipToId [role="menuitem"].hover .label { background-color: $menuitemFocusBackgroundColor; color: $menuitemFocusTextColor; } @@ -499,7 +533,8 @@ $skipToId [role="menuitem"]:focus .label { updateStyle('$fontSize', config.fontSize, theme.fontSize, defaultTheme.fontSize); updateStyle('$positionLeft', config.positionLeft, theme.positionLeft, defaultTheme.positionLeft); - updateStyle('$mediaBreakPoint', config.mediaBreakPoint, theme.mediaBreakPoint, defaultTheme.mediaBreakPoint); + updateStyle('$smallBreakPoint', config.smallBreakPoint, theme.smallBreakPoint, defaultTheme.smallBreakPoint); + updateStyle('$mediumBreakPoint', config.mediumBreakPoint, theme.mediumBreakPoint, defaultTheme.mediumBreakPoint); updateStyle('$menuTextColor', config.menuTextColor, theme.menuTextColor, defaultTheme.menuTextColor); updateStyle('$menuBackgroundColor', config.menuBackgroundColor, theme.menuBackgroundColor, defaultTheme.menuBackgroundColor); @@ -1851,14 +1886,19 @@ $skipToId [role="menuitem"]:focus .label { this.containerNode.appendChild(this.buttonNode); this.buttonTextNode = document.createElement('span'); - this.buttonTextNode.classList.add('text'); + this.buttonTextNode.classList.add('skipto-text'); this.buttonTextNode.textContent = buttonVisibleLabel; this.buttonNode.appendChild(this.buttonTextNode); - const imageNode = document.createElement('img'); - imageNode.src = "data:image/png;base64,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"; - imageNode.setAttribute('alt', ''); - this.buttonNode.appendChild(imageNode); + const smallButtonNode = document.createElement('span'); + smallButtonNode.classList.add('skipto-small'); + smallButtonNode.textContent = config.smallButtonLabel; + this.buttonNode.appendChild(smallButtonNode); + + const mediumButtonNode = document.createElement('span'); + mediumButtonNode.classList.add('skipto-medium'); + mediumButtonNode.textContent = config.buttonLabel; + this.buttonNode.appendChild(mediumButtonNode); // Create menu container @@ -1906,6 +1946,8 @@ $skipToId [role="menuitem"]:focus .label { attachNode.insertBefore(this.containerNode, attachNode.firstElementChild); + this.focusMenuitem = null; + return this.containerNode; } @@ -2019,8 +2061,8 @@ $skipToId [role="menuitem"]:focus .label { /* * @method updateMenuitems * - * @desc Updates the menu information with the current manu items - * used for menu navgation commands + * @desc Updates the menu information with the current menu items + * used for menu navigation commands */ updateMenuitems () { let menuitemNodes = this.menuNode.querySelectorAll('[role=menuitem'); @@ -2063,7 +2105,7 @@ $skipToId [role="menuitem"]:focus .label { menuitemNode.addEventListener('keydown', this.handleMenuitemKeydown.bind(this)); menuitemNode.addEventListener('click', this.handleMenuitemClick.bind(this)); menuitemNode.addEventListener('pointerenter', this.handleMenuitemPointerenter.bind(this)); - + menuitemNode.addEventListener('pointerleave', this.handleMenuitemPointerleave.bind(this)); groupNode.appendChild(menuitemNode); // add heading level and label @@ -2172,7 +2214,10 @@ $skipToId [role="menuitem"]:focus .label { */ setFocusToMenuitem(menuitem) { if (menuitem) { + this.removeHoverClass(); + menuitem.classList.add('hover'); menuitem.focus(); + this.focusMenuitem = menuitem; } } @@ -2341,7 +2386,18 @@ $skipToId [role="menuitem"]:focus .label { isOpen() { return this.buttonNode.getAttribute('aria-expanded') === 'true'; } - + + /* + * @method removeHoverClass + * + * @desc Removes hover class for menuitems + */ + removeHoverClass() { + this.menuitemNodes.forEach( node => { + node.classList.remove('hover'); + }); + } + // Menu event handlers handleFocusin() { @@ -2396,34 +2452,51 @@ $skipToId [role="menuitem"]:focus .label { } handleDocumentKeydown (event) { - let key = event.key, - flag = false; - let altPressed = - this.usesAltKey && - event.altKey && - !event.ctrlKey && - !event.shiftKey && - !event.metaKey; - - let optionPressed = - this.usesOptionKey && - event.altKey && - !event.ctrlKey && - !event.shiftKey && - !event.metaKey; - - if ( - (optionPressed && this.config.optionShortcut === key) || - (altPressed && this.config.altShortcut === key) - ) { - this.openPopup(); - this.setFocusToFirstMenuitem(); - flag = true; - } - if (flag) { - event.stopPropagation(); - event.preventDefault(); + const enabledInputTypes = [ + 'button', + 'checkbox', + 'color', + 'file', + 'image', + 'radio', + 'range', + 'reset', + 'submit' + ]; + + const target = event.target; + const tagName = target.tagName ? target.tagName.toLowerCase() : ''; + const type = tagName === 'input' ? target.type.toLowerCase() : ''; + + if ((tagName !== 'textarea') && + ((tagName !== 'input') || + ((tagName === 'input') && enabledInputTypes.includes(type)) + )) { + + const altPressed = + this.usesAltKey && + event.altKey && + !event.ctrlKey && + !event.shiftKey && + !event.metaKey; + + const optionPressed = + this.usesOptionKey && + event.altKey && + !event.ctrlKey && + !event.shiftKey && + !event.metaKey; + + if ((optionPressed && this.config.optionShortcut === event.key) || + (altPressed && this.config.altShortcut === event.key) || + ((optionPressed || altPressed) && (48 === event.keyCode)) + ) { + this.openPopup(); + this.setFocusToFirstMenuitem(); + event.stopPropagation(); + event.preventDefault(); + } } } @@ -2519,7 +2592,13 @@ $skipToId [role="menuitem"]:focus .label { handleMenuitemPointerenter(event) { let tgt = event.currentTarget; - tgt.focus(); + this.removeHoverClass(); + tgt.classList.add('hover'); + } + + handleMenuitemPointerleave(event) { + let tgt = event.currentTarget; + tgt.classList.remove('hover'); } handleBackgroundPointerdown(event) { @@ -2566,6 +2645,7 @@ $skipToId [role="menuitem"]:focus .label { // Button labels and messages buttonLabel: 'Skip To Content', + smallButtonLabel: 'SkipTo', altLabel: 'Alt', optionLabel: 'Option', buttonShortcut: ' ($modifier+$key)', @@ -2597,7 +2677,8 @@ $skipToId [role="menuitem"]:focus .label { fontFamily: '', fontSize: '', positionLeft: '', - mediaBreakPoint: '', + smallBreakPoint: '', + mediumBreakPoint: '', menuTextColor: '', menuBackgroundColor: '', menuitemFocusTextColor: '', @@ -2612,7 +2693,8 @@ $skipToId [role="menuitem"]:focus .label { fontFamily: 'inherit', fontSize: 'inherit', positionLeft: '46%', - mediaBreakPoint: '540', + smallBreakPoint: '576', + mediumBreakPoint: '992', menuTextColor: '#1a1a1a', menuBackgroundColor: '#dcdcdc', menuitemFocusTextColor: '#eeeeee', @@ -2686,6 +2768,17 @@ $skipToId [role="menuitem"]:focus .label { focusBorderColor: '#dd3444', buttonTextColor: '#fff', buttonBackgroundColor: '#036', + }, + 'openweba11y': { + hostnameSelector: 'openweba11y.com', + buttonTextColor: '#13294B', + buttonBackgroundColor: '#dddddd', + focusBorderColor: '#C5050C', + menuTextColor: '#13294B', + menuBackgroundColor: '#dddddd', + menuitemFocusTextColor: '#dddddd', + menuitemFocusBackgroundColor: '#13294B', + fontSize: '90%' } }, From 0e40c0dbe6eab6ab26268516354cee528a7099ec Mon Sep 17 00:00:00 2001 From: Ariella Gilmore Date: Wed, 22 May 2024 11:14:20 -0700 Subject: [PATCH 14/47] Feed Example: Move display of example from separate page into standard APG example page (pull #2775) Enables the feed example to be displayed inline within the feed example page using an iframe. Previously, the example had to be opened in a separate page. Also includes some editorial revisions and updates. --------- Co-authored-by: Andrea N. Cardona Co-authored-by: Matt King Co-authored-by: Mike Pennisi Co-authored-by: Howard Edwards --- .../coverage-and-quality-report.html | 18 +++++----- .../coverage-and-quality/prop-coverage.csv | 10 +++--- .../coverage-and-quality/role-coverage.csv | 4 +-- content/index/index.html | 14 ++++---- .../feed/examples/css/feedDisplay.css | 8 +++-- .../patterns/feed/examples/feed-display.html | 23 ++----------- content/patterns/feed/examples/feed.html | 31 +++++++++++++----- .../patterns/feed/examples/imgs/rating-1.png | Bin 5863 -> 0 bytes .../patterns/feed/examples/imgs/rating-2.png | Bin 6120 -> 0 bytes .../patterns/feed/examples/imgs/rating-3.png | Bin 6112 -> 0 bytes .../patterns/feed/examples/imgs/rating-4.png | Bin 6004 -> 0 bytes .../patterns/feed/examples/imgs/rating-5.png | Bin 4369 -> 0 bytes content/patterns/feed/examples/js/main.js | 5 +-- content/patterns/feed/feed-pattern.html | 2 +- test/tests/feed_feed.js | 23 ++++--------- 15 files changed, 64 insertions(+), 74 deletions(-) delete mode 100644 content/patterns/feed/examples/imgs/rating-1.png delete mode 100644 content/patterns/feed/examples/imgs/rating-2.png delete mode 100644 content/patterns/feed/examples/imgs/rating-3.png delete mode 100644 content/patterns/feed/examples/imgs/rating-4.png delete mode 100644 content/patterns/feed/examples/imgs/rating-5.png diff --git a/content/about/coverage-and-quality/coverage-and-quality-report.html b/content/about/coverage-and-quality/coverage-and-quality-report.html index f1b521862a..3876be8ae9 100644 --- a/content/about/coverage-and-quality/coverage-and-quality-report.html +++ b/content/about/coverage-and-quality/coverage-and-quality-report.html @@ -125,7 +125,7 @@

Roles with at Least One Guidance or Exampl article - Feed + Infinite Scrolling Feed @@ -145,7 +145,7 @@

Roles with at Least One Guidance or Exampl feed Feed Pattern - Feed + Infinite Scrolling Feed @@ -759,7 +759,7 @@

Properties and States with at Least One Gu aria-busy - Feed + Infinite Scrolling Feed @@ -920,7 +920,7 @@

Properties and States with More than One
  • Date Picker Combobox (HC)
  • Date Picker Dialog (HC)
  • Modal Dialog
  • -
  • Feed
  • +
  • Infinite Scrolling Feed
  • Table
  • @@ -1042,7 +1042,7 @@

    Properties and States with More than One
  • Editable Combobox with Grid Popup
  • Date Picker Dialog (HC)
  • Modal Dialog
  • -
  • Feed
  • +
  • Infinite Scrolling Feed
  • Data Grid
  • Layout Grid
  • (Deprecated) Collapsible Dropdown Listbox
  • @@ -1113,7 +1113,7 @@

    Properties and States with More than One aria-posinset @@ -1185,7 +1185,7 @@

    Properties and States with More than One aria-setsize @@ -1631,7 +1631,7 @@

    Coding Practices

    aria-busy,aria-describedby,aria-label,aria-labelledby,aria-posinset,aria-setsize - Feed + Infinite Scrolling Feed prototype Yes @@ -2741,7 +2741,7 @@

    Mouse and Pointer Events

    Yes - Feed + Infinite Scrolling Feed Yes diff --git a/content/about/coverage-and-quality/prop-coverage.csv b/content/about/coverage-and-quality/prop-coverage.csv index ed19b10250..7effc0b049 100644 --- a/content/about/coverage-and-quality/prop-coverage.csv +++ b/content/about/coverage-and-quality/prop-coverage.csv @@ -2,14 +2,14 @@ "aria-activedescendant","1","11","Guidance: Managing Focus in Composites Using aria-activedescendant","Example: Editable Combobox With Both List and Inline Autocomplete","Example: Editable Combobox With List Autocomplete","Example: Editable Combobox without Autocomplete","Example: Select-Only Combobox","Example: Editable Combobox with Grid Popup","Example: (Deprecated) Collapsible Dropdown Listbox","Example: Listbox with Grouped Options","Example: Listboxes with Rearrangeable Options","Example: Scrollable Listbox","Example: Actions Menu Button Using aria-activedescendant","Example: Radio Group Using aria-activedescendant" "aria-atomic","0","1","Example: Alert" "aria-autocomplete","0","5","Example: Editable Combobox With Both List and Inline Autocomplete","Example: Editable Combobox With List Autocomplete","Example: Editable Combobox without Autocomplete","Example: Date Picker Combobox","Example: Editable Combobox with Grid Popup" -"aria-busy","0","1","Example: Feed" +"aria-busy","0","1","Example: Infinite Scrolling Feed" "aria-checked","0","9","Example: Checkbox (Mixed-State)","Example: Checkbox (Two State)","Example: Editor Menubar","Example: Radio Group Using aria-activedescendant","Example: Rating Radio Group","Example: Radio Group Using Roving tabindex","Example: Switch Using HTML Button","Example: Switch","Example: Toolbar" "aria-colcount","1","1","Guidance: Using aria-colcount and aria-colindex","Example: Data Grid" "aria-colindex","3","1","Guidance: Using aria-colcount and aria-colindex","Guidance: Using aria-colindex When Column Indices Are Contiguous","Guidance: Using aria-colindex When Column Indices Are Not Contiguous","Example: Data Grid" "aria-colspan","1","0","Guidance: Defining cell spans using aria-colspan and aria-rowspan" "aria-controls","0","20","Example: Accordion","Example: Auto-Rotating Image Carousel with Buttons for Slide Control","Example: Auto-Rotating Image Carousel with Tabs for Slide Control","Example: Checkbox (Mixed-State)","Example: Editable Combobox With Both List and Inline Autocomplete","Example: Editable Combobox With List Autocomplete","Example: Editable Combobox without Autocomplete","Example: Date Picker Combobox","Example: Select-Only Combobox","Example: Editable Combobox with Grid Popup","Example: Disclosure (Show/Hide) for Answers to Frequently Asked Questions","Example: Disclosure (Show/Hide) for Image Description","Example: Disclosure Navigation Menu with Top-Level Links","Example: Disclosure Navigation Menu","Example: Actions Menu Button Using aria-activedescendant","Example: Actions Menu Button Using element.focus()","Example: Navigation Menu Button","Example: Tabs with Automatic Activation","Example: Tabs with Manual Activation","Example: Toolbar" "aria-current","0","5","Example: Breadcrumb","Example: Disclosure Navigation Menu with Top-Level Links","Example: Disclosure Navigation Menu","Example: Navigation Menubar","Example: Navigation Treeview" -"aria-describedby","1","6","Guidance: Describing by referencing content with aria-describedby","Example: Alert Dialog","Example: Date Picker Combobox","Example: Date Picker Dialog","Example: Modal Dialog","Example: Feed","Example: Table" +"aria-describedby","1","6","Guidance: Describing by referencing content with aria-describedby","Example: Alert Dialog","Example: Date Picker Combobox","Example: Date Picker Dialog","Example: Modal Dialog","Example: Infinite Scrolling Feed","Example: Table" "aria-details","0","0" "aria-disabled","0","3","Example: Alert Dialog","Example: Editor Menubar","Example: Toolbar" "aria-dropeffect","0","0" @@ -22,7 +22,7 @@ "aria-invalid","0","0" "aria-keyshortcuts","0","0" "aria-label","1","18","Guidance: Naming with a String Attribute Via aria-label","Example: Breadcrumb","Example: Auto-Rotating Image Carousel with Buttons for Slide Control","Example: Auto-Rotating Image Carousel with Tabs for Slide Control","Example: Editable Combobox With Both List and Inline Autocomplete","Example: Editable Combobox With List Autocomplete","Example: Editable Combobox without Autocomplete","Example: Date Picker Combobox","Example: Date Picker Dialog","Example: Link","Example: Editor Menubar","Example: Navigation Menubar","Example: Rating Radio Group","Example: Horizontal Multi-Thumb Slider","Example: Date Picker Spin Button","Example: Table","Example: Toolbar","Example: Treegrid Email Inbox","Example: Navigation Treeview" -"aria-labelledby","1","40","Guidance: Naming with Referenced Content Via aria-labelledby","Example: Accordion","Example: Alert Dialog","Example: Checkbox (Two State)","Example: Date Picker Combobox","Example: Select-Only Combobox","Example: Editable Combobox with Grid Popup","Example: Date Picker Dialog","Example: Modal Dialog","Example: Feed","Example: Data Grid","Example: Layout Grid","Example: (Deprecated) Collapsible Dropdown Listbox","Example: Listbox with Grouped Options","Example: Listboxes with Rearrangeable Options","Example: Scrollable Listbox","Example: Actions Menu Button Using aria-activedescendant","Example: Actions Menu Button Using element.focus()","Example: Navigation Menu Button","Example: Navigation Menubar","Example: Meter","Example: Radio Group Using aria-activedescendant","Example: Rating Radio Group","Example: Radio Group Using Roving tabindex","Example: Color Viewer Slider","Example: Rating Slider","Example: Media Seek Slider","Example: Vertical Temperature Slider","Example: Date Picker Spin Button","Example: Switch Using HTML Button","Example: Tabs with Automatic Activation","Example: Tabs with Manual Activation","Example: File Directory Treeview Using Computed Properties","Example: File Directory Treeview Using Declared Properties","Example: Navigation Treeview","Example: Complementary Landmark","Example: Form Landmark","Example: Main Landmark","Example: Navigation Landmark","Example: Region Landmark","Example: Search Landmark" +"aria-labelledby","1","40","Guidance: Naming with Referenced Content Via aria-labelledby","Example: Accordion","Example: Alert Dialog","Example: Checkbox (Two State)","Example: Date Picker Combobox","Example: Select-Only Combobox","Example: Editable Combobox with Grid Popup","Example: Date Picker Dialog","Example: Modal Dialog","Example: Infinite Scrolling Feed","Example: Data Grid","Example: Layout Grid","Example: (Deprecated) Collapsible Dropdown Listbox","Example: Listbox with Grouped Options","Example: Listboxes with Rearrangeable Options","Example: Scrollable Listbox","Example: Actions Menu Button Using aria-activedescendant","Example: Actions Menu Button Using element.focus()","Example: Navigation Menu Button","Example: Navigation Menubar","Example: Meter","Example: Radio Group Using aria-activedescendant","Example: Rating Radio Group","Example: Radio Group Using Roving tabindex","Example: Color Viewer Slider","Example: Rating Slider","Example: Media Seek Slider","Example: Vertical Temperature Slider","Example: Date Picker Spin Button","Example: Switch Using HTML Button","Example: Tabs with Automatic Activation","Example: Tabs with Manual Activation","Example: File Directory Treeview Using Computed Properties","Example: File Directory Treeview Using Declared Properties","Example: Navigation Treeview","Example: Complementary Landmark","Example: Form Landmark","Example: Main Landmark","Example: Navigation Landmark","Example: Region Landmark","Example: Search Landmark" "aria-level","0","2","Example: Treegrid Email Inbox","Example: File Directory Treeview Using Declared Properties" "aria-live","0","5","Example: Alert","Example: Auto-Rotating Image Carousel with Buttons for Slide Control","Example: Auto-Rotating Image Carousel with Tabs for Slide Control","Example: Date Picker Combobox","Example: Date Picker Dialog" "aria-modal","0","4","Example: Alert Dialog","Example: Date Picker Combobox","Example: Date Picker Dialog","Example: Modal Dialog" @@ -31,7 +31,7 @@ "aria-orientation","0","1","Example: Vertical Temperature Slider" "aria-owns","0","1","Example: Navigation Treeview" "aria-placeholder","0","0" -"aria-posinset","0","3","Example: Feed","Example: Treegrid Email Inbox","Example: File Directory Treeview Using Declared Properties" +"aria-posinset","0","3","Example: Infinite Scrolling Feed","Example: Treegrid Email Inbox","Example: File Directory Treeview Using Declared Properties" "aria-pressed","0","3","Example: Button (IDL Version)","Example: Button","Example: Toolbar" "aria-readonly","0","0" "aria-relevant","0","0" @@ -41,7 +41,7 @@ "aria-rowindex","1","2","Guidance: Using aria-rowcount and aria-rowindex","Example: Data Grid","Example: Layout Grid" "aria-rowspan","1","0","Guidance: Defining cell spans using aria-colspan and aria-rowspan" "aria-selected","0","16","Example: Auto-Rotating Image Carousel with Tabs for Slide Control","Example: Editable Combobox With Both List and Inline Autocomplete","Example: Editable Combobox With List Autocomplete","Example: Editable Combobox without Autocomplete","Example: Date Picker Combobox","Example: Select-Only Combobox","Example: Editable Combobox with Grid Popup","Example: Date Picker Dialog","Example: (Deprecated) Collapsible Dropdown Listbox","Example: Listbox with Grouped Options","Example: Listboxes with Rearrangeable Options","Example: Scrollable Listbox","Example: Tabs with Automatic Activation","Example: Tabs with Manual Activation","Example: File Directory Treeview Using Computed Properties","Example: File Directory Treeview Using Declared Properties" -"aria-setsize","0","3","Example: Feed","Example: Treegrid Email Inbox","Example: File Directory Treeview Using Declared Properties" +"aria-setsize","0","3","Example: Infinite Scrolling Feed","Example: Treegrid Email Inbox","Example: File Directory Treeview Using Declared Properties" "aria-sort","1","2","Guidance: Indicating sort order with aria-sort","Example: Data Grid","Example: Sortable Table" "aria-valuemax","1","8","Guidance: Using aria-valuemin, aria-valuemax and aria-valuenow","Example: Meter","Example: Horizontal Multi-Thumb Slider","Example: Color Viewer Slider","Example: Rating Slider","Example: Media Seek Slider","Example: Vertical Temperature Slider","Example: Date Picker Spin Button","Example: Toolbar" "aria-valuemin","0","8","Example: Meter","Example: Horizontal Multi-Thumb Slider","Example: Color Viewer Slider","Example: Rating Slider","Example: Media Seek Slider","Example: Vertical Temperature Slider","Example: Date Picker Spin Button","Example: Toolbar" diff --git a/content/about/coverage-and-quality/role-coverage.csv b/content/about/coverage-and-quality/role-coverage.csv index 104fad9ec2..cbebe3fb38 100644 --- a/content/about/coverage-and-quality/role-coverage.csv +++ b/content/about/coverage-and-quality/role-coverage.csv @@ -2,7 +2,7 @@ "alert","2","2","Guidance: Alert Pattern","Guidance: Alert and Message Dialogs Pattern","Example: Alert","Example: Alert Dialog" "alertdialog","0","1","Example: Alert Dialog" "application","0","0" -"article","0","1","Example: Feed" +"article","0","1","Example: Infinite Scrolling Feed" "banner","1","3","Guidance: Banner","Example: Navigation Menubar","Example: Navigation Treeview","Example: Banner Landmark" "button","2","2","Guidance: Button Pattern","Guidance: Menu Button Pattern","Example: Button (IDL Version)","Example: Button" "caption","0","0" @@ -19,7 +19,7 @@ "directory","0","0" "document","0","0" "emphasis","0","0" -"feed","1","1","Guidance: Feed Pattern","Example: Feed" +"feed","1","1","Guidance: Feed Pattern","Example: Infinite Scrolling Feed" "figure","0","0" "form","2","1","Guidance: Form","Guidance: Naming Form Controls with the Label Element","Example: Form Landmark" "generic","0","0" diff --git a/content/index/index.html b/content/index/index.html index b004007e85..bda61e74ce 100644 --- a/content/index/index.html +++ b/content/index/index.html @@ -48,7 +48,7 @@

    Examples by Role

    article - Feed + Infinite Scrolling Feed banner @@ -125,7 +125,7 @@

    Examples by Role

    feed - Feed + Infinite Scrolling Feed form @@ -483,7 +483,7 @@

    Examples By Properties and States

    aria-busy - Feed + Infinite Scrolling Feed aria-checked @@ -556,7 +556,7 @@

    Examples By Properties and States

  • Date Picker Combobox (HC)
  • Date Picker Dialog (HC)
  • Modal Dialog
  • -
  • Feed
  • +
  • Infinite Scrolling Feed
  • Table
  • @@ -676,7 +676,7 @@

    Examples By Properties and States

  • Editable Combobox with Grid Popup
  • Date Picker Dialog (HC)
  • Modal Dialog
  • -
  • Feed
  • +
  • Infinite Scrolling Feed
  • Data Grid
  • Layout Grid
  • (Deprecated) Collapsible Dropdown Listbox
  • @@ -759,7 +759,7 @@

    Examples By Properties and States

    aria-posinset @@ -829,7 +829,7 @@

    Examples By Properties and States

    aria-setsize diff --git a/content/patterns/feed/examples/css/feedDisplay.css b/content/patterns/feed/examples/css/feedDisplay.css index 4229c7d03d..eaa13a9635 100644 --- a/content/patterns/feed/examples/css/feedDisplay.css +++ b/content/patterns/feed/examples/css/feedDisplay.css @@ -60,12 +60,16 @@ body { } .restaurant-type { - color: #777; + color: black; font-size: 13px; } +.bookmark-button { + height: 24px; +} + .location-block { - color: #777; + color: black; display: inline-block; vertical-align: top; margin: 0 15px 10px; diff --git a/content/patterns/feed/examples/feed-display.html b/content/patterns/feed/examples/feed-display.html index d49daf25b4..fd79544b7a 100644 --- a/content/patterns/feed/examples/feed-display.html +++ b/content/patterns/feed/examples/feed-display.html @@ -22,30 +22,11 @@ -
    -

    Recommended Restaurants

    - -
    -

    About This Example

    -

    - NOTE: The feed role is a new WAI-ARIA feature, introduced by WAI-ARIA 1.1. - This page provides a proposed implementation of a feed component. - This proposal does not yet have ARIA Practices Task Force consensus. - Feedback is welcome in issue 565. -

    -
    +

    Recommended Restaurants

    - -
    - - -
    -
    + diff --git a/content/patterns/feed/examples/feed.html b/content/patterns/feed/examples/feed.html index 5eb04dcfc3..907a35dab9 100644 --- a/content/patterns/feed/examples/feed.html +++ b/content/patterns/feed/examples/feed.html @@ -3,7 +3,7 @@ - Feed Example + Infinite Scrolling Feed Example @@ -21,30 +21,43 @@
    -

    Feed Example

    +

    Infinite Scrolling Feed Example

    About This Example

    - NOTE: The feed role is a new WAI-ARIA feature, introduced by WAI-ARIA 1.1. - This page provides a proposed implementation of a feed component. - This proposal does not yet have ARIA Practices Task Force consensus. + NOTE: The feed role was introduced by WAI-ARIA 1.1. + Since native desktop operating systems offer only a few conventions that are applicable to the feed pattern, the implementation of a feed illustrated by this example is intended to serve as as a proposal. Feedback is welcome in issue 565.

    The example below implements the Feed Pattern for a restaurant review site. To imitate an infinitely scrolling set of data, information about ten restaurants is repeatedly loaded as the user reads the feed. - Outside of the feed, an article load time selector is available for simulating data fetch delays. + This example includes an article load time selector that simulates data fetch delays.

    -

    Unlike other examples in the WAI-ARIA Authoring Practices, the example experience has its own page separate from this documentation page.

    +
    + +
    +

    Example Usage Option

    +

    + The following article loading delay time selector enables simulation of different amounts of latency introduced by data fetches. + Such latency can affect assistive technology behavior when using assistive technology functions for navigating by article. +

    + +

    Example

    -

    The example feed experience is presented on a separate feed display page.

    +

    The example feed experience below is presented in an iframe in order not to obstruct from the rest of the content of the page.

    + +
    @@ -73,7 +86,7 @@

    Keyboard Support

    Control + Home - Move focus to the first focusable element before the feed. + Move focus to the first focusable element in the feed. diff --git a/content/patterns/feed/examples/imgs/rating-1.png b/content/patterns/feed/examples/imgs/rating-1.png deleted file mode 100644 index def9a045cff8134bc2f2cb2768e5cb4c6d681e82..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5863 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 G=>Gv1sA%&5 diff --git a/content/patterns/feed/examples/imgs/rating-2.png b/content/patterns/feed/examples/imgs/rating-2.png deleted file mode 100644 index 72b3ec4b7764b90cca1451ed7c7b0cd3845df74b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6120 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 diff --git a/content/patterns/feed/examples/imgs/rating-5.png b/content/patterns/feed/examples/imgs/rating-5.png deleted file mode 100644 index 8472c0e9127d04c52129f80d581dc6539029981e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4369 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 diff --git a/content/patterns/feed/examples/js/main.js b/content/patterns/feed/examples/js/main.js index d889d6b0d0..d183f9d5e0 100644 --- a/content/patterns/feed/examples/js/main.js +++ b/content/patterns/feed/examples/js/main.js @@ -15,8 +15,9 @@ */ window.addEventListener('load', function () { var feedNode = document.getElementById('restaurant-feed'); - var delaySelect = document.getElementById('delay-time-select'); - var restaurantFeed = new aria.Feed(feedNode, delaySelect); + var delaySelect = window.parent.document.getElementById('delay-time-select'); + var termsOfUse = window.parent.document.getElementById('terms-of-use'); + var restaurantFeed = new aria.Feed(feedNode, termsOfUse); var restaurantFeedDisplay = new aria.FeedDisplay(restaurantFeed, function () { return aria.RestaurantData; diff --git a/content/patterns/feed/feed-pattern.html b/content/patterns/feed/feed-pattern.html index 5e01061210..7ae27f47f0 100644 --- a/content/patterns/feed/feed-pattern.html +++ b/content/patterns/feed/feed-pattern.html @@ -65,7 +65,7 @@

    About This Pattern

    Example

    - Example Implementation of Feed Pattern + Infinite Scrolling Feed Example

    diff --git a/test/tests/feed_feed.js b/test/tests/feed_feed.js index 03387763a6..e253fc4ad8 100644 --- a/test/tests/feed_feed.js +++ b/test/tests/feed_feed.js @@ -10,26 +10,16 @@ const assertAriaDescribedby = require('../util/assertAriaDescribedby'); const exampleFile = 'content/patterns/feed/examples/feed.html'; const ex = { - feedLinkSelector: '#ex1 a', + frameID: 'feed_frame', feedSelector: '[role="feed"]', articleSelector: '[role="article"]', timeToLoad10Articles: 2500, numArticlesLoadedInSet: 10, - delayTimeSelector: '#delay-time-select', + termsOfUse: '#terms-of-use', }; const navigateToFeed = async function (t) { - await t.context.session.findElement(By.css(ex.feedLinkSelector)).click(); - - return t.context.session.wait( - () => { - return t.context.session.getCurrentUrl().then((url) => { - return url != t.context.url; - }); - }, - t.context.waitTime, - 'The feed url did not load after clicking: ' + ex.feedLinkSelector - ); + await t.context.session.switchTo().frame(ex.frameID); }; const waitForArticlesToLoad = async function (t) { @@ -264,12 +254,13 @@ ariaTest( await waitForArticlesToLoad(t); let articles = await t.context.queryElements(t, ex.articleSelector); - articles[0].sendKeys(Key.chord(Key.CONTROL, Key.END)); + await articles[0].sendKeys(Key.chord(Key.CONTROL, Key.END)); + await t.context.session.switchTo().defaultContent(); t.true( - await checkFocus(t, ex.delayTimeSelector, 0), + await checkFocus(t, ex.termsOfUse, 0), 'Focus should move off the feed (onto element: ' + - ex.delayTimeSelector + + ex.termsOfUse + ') after sending keys CONTROL+END' ); } From 2e21c92e07744ad019b20fdc66c569fe02d8cfcb Mon Sep 17 00:00:00 2001 From: Matt King Date: Wed, 22 May 2024 15:38:19 -0700 Subject: [PATCH 15/47] About: Add page to about section that explains the AT support tables (pull #3000) * Adds a page to the about section that explains AT support tables. * Adds link to the new about AT support table page from each of the example pages that includes an AT support table. --------- Co-authored-by: Boaz Sender --- content/about/about.html | 9 ++ .../at-support-tables/at-support-tables.html | 122 ++++++++++++++++++ content/patterns/alert/examples/alert.html | 1 + content/patterns/button/examples/button.html | 1 + .../dialog-modal/examples/dialog.html | 1 + content/patterns/link/examples/link.html | 1 + .../examples/menu-button-links.html | 1 + .../examples/radio-activedescendant.html | 1 + .../slider/examples/slider-color-viewer.html | 1 + 9 files changed, 138 insertions(+) create mode 100644 content/about/at-support-tables/at-support-tables.html diff --git a/content/about/about.html b/content/about/about.html index 6433880dd1..9a7a5b4214 100644 --- a/content/about/about.html +++ b/content/about/about.html @@ -58,6 +58,15 @@

    Related Specifi Related Specifications.

    +
  • +

    Assistive Technology Support Tables

    +

    + Pages that provide example implementations of APG patterns also, when available, provide a summary of assistive technology support of the ARIA used in those examples. + Learn how to interpret and use data in the + Assistive Technology Support Tables. +

    +
  • +
  • Coverage and Quality Report

    diff --git a/content/about/at-support-tables/at-support-tables.html b/content/about/at-support-tables/at-support-tables.html new file mode 100644 index 0000000000..adc8d08e76 --- /dev/null +++ b/content/about/at-support-tables/at-support-tables.html @@ -0,0 +1,122 @@ + + + + + + + AT Support Tables + + + + + + + + + + +

    +

    Assistive Technology Support Tables

    +

    + As the ARIA and Assistive Technologies Project + makes reports on assistive technology interoperability for APG examples available, + the APG Task Force adds summaries of assistive technology support to the relevant example pages. + This page explains how to interpret and use the assistive technology support summaries. +

    + +
    +

    Purpose of AT Support Tables

    +

    + The purpose of the support tables is to provide an actionable summary of the interoperability tests performed by the ARIA-AT project.

    +
    + +
    +

    Meaning of Support Levels

    +

    + The assistive technology support tables present two percentages for each assistive technology and browser combination that have been tested: "Must-Have Behaviors" and "Should-Have Behaviors". + A behavior designated as “Must-Have" is essential; if not provided, users could be blocked from using the UI element. + Failure to provide a “Should-Have” behavior could impede users. + Learn more about ARIA-AT’s + definitions of Must and Should on the project wiki. +

    + +
    +

    Examples of Must-Have Behaviors

    +
      +
    • Convey the name of a radio button.
    • +
    • Convey the state of a checked radio button.
    • +
    +
    + +
    +

    Examples of Should-Have Behaviors

    +
      +
    • Convey the position of a radio button in a radio group, e.g., the button is 1 of 3.
    • +
    • Convey the number of radio buttons in a radio group.
    • +
    +
    + +
    +

    Important Constraints

    +
      +
    • Unless otherwise noted, all testing is done using the assistive technology vendor's default configuration of an assistive technology.
    • +
    • + ARIA-AT interoperability tests do not prescribe exactly how to satisfy a need. + For example, they do not specify exactly what a screen reader should speak. + Two different screen readers may convey the same information in different ways. +
    • +
    +
    +
    + +
    +

    Recommendations

    + +
    +

    Don’t Code to the Bugs

    +

    + ARIA-AT is working with assistive technology vendors to increase their support levels. + This means that assistive technologies that align with ARIA-AT interoperability tests will change over time. + Exercise caution when implementing a pattern where support levels are less than 100%. + Avoid modifying code to accommodate an assistive technology bug unless you are confident the modified code provides an experience that: +

    +
      +
    • Works equally well when using assistive technologies that do not exhibit the bug.
    • +
    • Will work equally well after the assistive technology bug is fixed.
    • +
    +

    + When possible, test implementations of APG patterns with an assistive technology that provides 100% support for both must-have and should-have behaviors. +

    +
    + +
    +

    Design to Mitigate Critical Support Failures

    +

    + Where feasible, avoid designing experiences that rely on features of APG patterns that have less than 100% support for must-have behaviors. + If the must-have support level is less than 100% for one example implementation of a pattern, that does not mean every other way of implementing that pattern will present assistive technology users with the same problems. + In these cases: +

    +
      +
    1. If there are multiple implementation examples of the pattern, compare support levels across examples to discover whether another method of implementation provides better support.
    2. +
    3. learn about the specific aspects of an example implementation that are not fully supported by navigating to the detailed report with the View Complete Report button.
    4. +
    5. If possible, use the guidelines of the pattern to design interactions such that they avoid the problematic features.
    6. +
    +
    + +
    +

    Perform Your Own Tests

    +

    + A primary purpose of ARIA-AT data is to help assistive technology vendors coordinate interoperable rendering of ARIA. + While the ARIA-AT summary tables on APG example pages can be used as a guide of where to prioritize testing, the data is not as a final verdict on whether a feature in a web application will work. + It is essential for all developers to test applications with multiple assistive technologies to ensure a good user experience. +

    +
    + +
    + + +
    + + + \ No newline at end of file diff --git a/content/patterns/alert/examples/alert.html b/content/patterns/alert/examples/alert.html index 78687d9239..fe7df259db 100644 --- a/content/patterns/alert/examples/alert.html +++ b/content/patterns/alert/examples/alert.html @@ -122,6 +122,7 @@

    Role, Property, State, and Tabindex Attributes

    Assistive Technology Support

    +

    Learn how to interpret and use assistive technology support data