aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.eslintrc.json12
-rw-r--r--ext/js/app/popup-factory.js1
-rw-r--r--ext/js/core.js4
-rw-r--r--ext/js/dom/dom-text-scanner.js4
-rw-r--r--ext/js/dom/sandbox/css-style-applier.js4
-rw-r--r--package-lock.json143
-rw-r--r--package.json2
7 files changed, 118 insertions, 52 deletions
diff --git a/.eslintrc.json b/.eslintrc.json
index b5328f41..06a2be34 100644
--- a/.eslintrc.json
+++ b/.eslintrc.json
@@ -233,7 +233,13 @@
"no-unsanitized/property": "error",
"jsdoc/check-access": "error",
"jsdoc/check-alignment": "error",
- "jsdoc/check-line-alignment": "error",
+ "jsdoc/check-line-alignment": [
+ "error",
+ "never",
+ {
+ "wrapIndent": " "
+ }
+ ],
"jsdoc/check-param-names": "error",
"jsdoc/check-property-names": "error",
"jsdoc/check-tag-names": "error",
@@ -242,10 +248,6 @@
"jsdoc/empty-tags": "error",
"jsdoc/implements-on-classes": "error",
"jsdoc/multiline-blocks": "error",
- "jsdoc/newline-after-description": [
- "error",
- "never"
- ],
"jsdoc/no-bad-blocks": "error",
"jsdoc/no-multi-asterisks": "error",
"jsdoc/require-asterisk-prefix": "error",
diff --git a/ext/js/app/popup-factory.js b/ext/js/app/popup-factory.js
index eeb31a1b..c3c98162 100644
--- a/ext/js/app/popup-factory.js
+++ b/ext/js/app/popup-factory.js
@@ -71,6 +71,7 @@ class PopupFactory {
* @param {?number} [details.depth] A specific depth value to assign to the popup.
* @param {boolean} [details.popupWindow] Whether or not a separate popup window should be used, rather than an iframe.
* @param {boolean} [details.childrenSupported] Whether or not the popup is able to show child popups.
+ * @returns {Popup|PopupWindow|PopupProxy} The new or existing popup.
*/
async getOrCreatePopup({
frameId=null,
diff --git a/ext/js/core.js b/ext/js/core.js
index 5b064a36..1e749c7d 100644
--- a/ext/js/core.js
+++ b/ext/js/core.js
@@ -309,7 +309,7 @@ function promiseTimeout(delay, resolveValue) {
* Creates a promise that will resolve after the next animation frame, using `requestAnimationFrame`.
* @param {number} [timeout] A maximum duration (in milliseconds) to wait until the promise resolves. If null or omitted, no timeout is used.
* @returns {Promise<{time: number, timeout: number}>} A promise that is resolved with `{time, timeout}`, where `time` is the timestamp from `requestAnimationFrame`,
- * and `timeout` is a boolean indicating whether the cause was a timeout or not.
+ * and `timeout` is a boolean indicating whether the cause was a timeout or not.
* @throws The promise throws an error if animation is not supported in this context, such as in a service worker.
*/
function promiseAnimationFrame(timeout=null) {
@@ -609,7 +609,7 @@ class DynamicProperty extends EventDispatcher {
* @param {*} value The override value to assign.
* @param {number} [priority] The priority value to use, as a number.
* @returns {string} A string token which can be passed to the clearOverride function
- * to remove the override.
+ * to remove the override.
*/
setOverride(value, priority=0) {
const overridesCount = this._overrides.length;
diff --git a/ext/js/dom/dom-text-scanner.js b/ext/js/dom/dom-text-scanner.js
index dc5bd96a..ec4c7bd6 100644
--- a/ext/js/dom/dom-text-scanner.js
+++ b/ext/js/dom/dom-text-scanner.js
@@ -405,8 +405,8 @@ class DOMTextScanner {
* @returns {{enterable: boolean, newlines: number}} The seek information.
* The `enterable` value indicates whether the content of this node should be entered.
* The `newlines` value corresponds to the number of newline characters that should be added.
- * 1 newline corresponds to a simple new line in the layout.
- * 2 newlines corresponds to a significant visual distinction since the previous content.
+ * - 1 newline corresponds to a simple new line in the layout.
+ * - 2 newlines corresponds to a significant visual distinction since the previous content.
*/
static getElementSeekInfo(element) {
let enterable = true;
diff --git a/ext/js/dom/sandbox/css-style-applier.js b/ext/js/dom/sandbox/css-style-applier.js
index 01936d26..a47ef6ef 100644
--- a/ext/js/dom/sandbox/css-style-applier.js
+++ b/ext/js/dom/sandbox/css-style-applier.js
@@ -35,9 +35,10 @@ class CssStyleApplier {
* @property {string} value The property's value.
*/
+ /* eslint-disable jsdoc/check-line-alignment */
/**
* Creates a new instance of the class.
- * @param {string} styleDataUrl The local URL to the JSON file continaing the style rules.
+ * @param {string} styleDataUrl The local URL to the JSON file containing the style rules.
* The style rules should be of the format:
* ```
* [
@@ -57,6 +58,7 @@ class CssStyleApplier {
this._patternHtmlWhitespace = /[\t\r\n\f ]+/g;
this._patternClassNameCharacter = /[0-9a-zA-Z-_]/;
}
+ /* eslint-enable jsdoc/check-line-alignment */
/**
* Loads the data file for use.
diff --git a/package-lock.json b/package-lock.json
index d4acb3f2..88207e0e 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -16,7 +16,7 @@
"css": "^3.0.0",
"eslint": "^8.50.0",
"eslint-plugin-header": "^3.1.1",
- "eslint-plugin-jsdoc": "^39.3.6",
+ "eslint-plugin-jsdoc": "^46.8.2",
"eslint-plugin-jsonc": "^2.9.0",
"eslint-plugin-no-unsanitized": "^4.0.1",
"fake-indexeddb": "^4.0.2",
@@ -229,17 +229,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.40.1",
+ "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.40.1.tgz",
+ "integrity": "sha512-YORCdZSusAlBrFpZ77pJjc5r1bQs5caPWtAu+WWmiSo+8XaUzseapVrfAtiRFbQWnrBxxLLEwF6f6ZG/UgCQCg==",
"dev": true,
"dependencies": {
- "comment-parser": "1.3.1",
- "esquery": "^1.4.0",
- "jsdoc-type-pratt-parser": "~3.1.0"
+ "comment-parser": "1.4.0",
+ "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": {
@@ -640,6 +640,15 @@
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
+ "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": "2.0.1",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
@@ -1012,6 +1021,18 @@
"integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
"dev": true
},
+ "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/builtin-status-codes": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
@@ -1163,9 +1184,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.0",
+ "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.0.tgz",
+ "integrity": "sha512-QLyTNiZ2KDOibvFPlZ6ZngVsZ/0gYnE6uTXi5aoDg8ed3AkJAz4sEje3Y8a29hQ1s6A99MZXe47fLAXQ1rTqaw==",
"dev": true,
"engines": {
"node": ">= 12.0.0"
@@ -1814,21 +1835,23 @@
}
},
"node_modules/eslint-plugin-jsdoc": {
- "version": "39.3.6",
- "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.3.6.tgz",
- "integrity": "sha512-R6dZ4t83qPdMhIOGr7g2QII2pwCjYyKP+z0tPOfO1bbAbQyKC20Y2Rd6z1te86Lq3T7uM8bNo+VD9YFpE8HU/g==",
+ "version": "46.8.2",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.8.2.tgz",
+ "integrity": "sha512-5TSnD018f3tUJNne4s4gDWQflbsgOycIKEUBoCLn6XtBMgNHxQFmV8vVxUtiPxAQq8lrX85OaSG/2gnctxw9uQ==",
"dev": true,
"dependencies": {
- "@es-joy/jsdoccomment": "~0.31.0",
- "comment-parser": "1.3.1",
+ "@es-joy/jsdoccomment": "~0.40.1",
+ "are-docs-informative": "^0.0.2",
+ "comment-parser": "1.4.0",
"debug": "^4.3.4",
"escape-string-regexp": "^4.0.0",
- "esquery": "^1.4.0",
- "semver": "^7.3.7",
+ "esquery": "^1.5.0",
+ "is-builtin-module": "^3.2.1",
+ "semver": "^7.5.4",
"spdx-expression-parse": "^3.0.1"
},
"engines": {
- "node": "^14 || ^16 || ^17 || ^18"
+ "node": ">=16"
},
"peerDependencies": {
"eslint": "^7.0.0 || ^8.0.0"
@@ -2837,6 +2860,21 @@
"integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
"dev": true
},
+ "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-callable": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz",
@@ -3128,9 +3166,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"
@@ -5792,14 +5830,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.40.1",
+ "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.40.1.tgz",
+ "integrity": "sha512-YORCdZSusAlBrFpZ77pJjc5r1bQs5caPWtAu+WWmiSo+8XaUzseapVrfAtiRFbQWnrBxxLLEwF6f6ZG/UgCQCg==",
"dev": true,
"requires": {
- "comment-parser": "1.3.1",
- "esquery": "^1.4.0",
- "jsdoc-type-pratt-parser": "~3.1.0"
+ "comment-parser": "1.4.0",
+ "esquery": "^1.5.0",
+ "jsdoc-type-pratt-parser": "~4.0.0"
}
},
"@eslint-community/eslint-utils": {
@@ -6090,6 +6128,12 @@
"color-convert": "^2.0.1"
}
},
+ "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": "2.0.1",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
@@ -6415,6 +6459,12 @@
"integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
"dev": true
},
+ "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
+ },
"builtin-status-codes": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
@@ -6532,9 +6582,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.0",
+ "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.0.tgz",
+ "integrity": "sha512-QLyTNiZ2KDOibvFPlZ6ZngVsZ/0gYnE6uTXi5aoDg8ed3AkJAz4sEje3Y8a29hQ1s6A99MZXe47fLAXQ1rTqaw==",
"dev": true
},
"concat-map": {
@@ -7079,17 +7129,19 @@
"requires": {}
},
"eslint-plugin-jsdoc": {
- "version": "39.3.6",
- "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.3.6.tgz",
- "integrity": "sha512-R6dZ4t83qPdMhIOGr7g2QII2pwCjYyKP+z0tPOfO1bbAbQyKC20Y2Rd6z1te86Lq3T7uM8bNo+VD9YFpE8HU/g==",
+ "version": "46.8.2",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.8.2.tgz",
+ "integrity": "sha512-5TSnD018f3tUJNne4s4gDWQflbsgOycIKEUBoCLn6XtBMgNHxQFmV8vVxUtiPxAQq8lrX85OaSG/2gnctxw9uQ==",
"dev": true,
"requires": {
- "@es-joy/jsdoccomment": "~0.31.0",
- "comment-parser": "1.3.1",
+ "@es-joy/jsdoccomment": "~0.40.1",
+ "are-docs-informative": "^0.0.2",
+ "comment-parser": "1.4.0",
"debug": "^4.3.4",
"escape-string-regexp": "^4.0.0",
- "esquery": "^1.4.0",
- "semver": "^7.3.7",
+ "esquery": "^1.5.0",
+ "is-builtin-module": "^3.2.1",
+ "semver": "^7.5.4",
"spdx-expression-parse": "^3.0.1"
}
},
@@ -7807,6 +7859,15 @@
"integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
"dev": true
},
+ "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-callable": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz",
@@ -8003,9 +8064,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
},
"jsdom": {
diff --git a/package.json b/package.json
index 1dc0e292..ce906797 100644
--- a/package.json
+++ b/package.json
@@ -41,7 +41,7 @@
"css": "^3.0.0",
"eslint": "^8.50.0",
"eslint-plugin-header": "^3.1.1",
- "eslint-plugin-jsdoc": "^39.3.6",
+ "eslint-plugin-jsdoc": "^46.8.2",
"eslint-plugin-jsonc": "^2.9.0",
"eslint-plugin-no-unsanitized": "^4.0.1",
"fake-indexeddb": "^4.0.2",