Verified Commit 256c05ea authored by Théodore Biadala's avatar Théodore Biadala
Browse files

task: #3269001 Replace valid-jsdoc rule with eslint-plugin-jsdoc for eslint

By: @quietone
By: @john.karahalis
By: @tom-konda
By: @smustgrave
By: @tobiasb
(cherry picked from commit 703e5d41)
parent aeae5fd1
Loading
Loading
Loading
Loading
Loading
+22 −7
Original line number Diff line number Diff line
@@ -13,6 +13,9 @@
  "parserOptions": {
    "ecmaVersion": 2020
  },
  "plugins": [
    "jsdoc"
  ],
  "globals": {
    "Drupal": true,
    "drupalSettings": true,
@@ -43,15 +46,27 @@
    }],
    "no-param-reassign": ["off"],
    "no-prototype-builtins": ["off"],
    "valid-jsdoc": ["warn", {
      "prefer": {
        "returns": "return",
        "property": "prop"
      },
      "requireReturn": false
    }],
    "jsdoc/require-returns": ["off"],
    "jsdoc/require-returns-type": ["warn"],
    "jsdoc/require-returns-description": ["warn"],
    "jsdoc/require-returns-check": ["warn"],
    "jsdoc/require-param": ["warn"],
    "jsdoc/require-param-type": ["warn"],
    "jsdoc/require-param-description": ["warn"],
    "jsdoc/check-param-names": ["warn"],
    "jsdoc/valid-types": ["warn"],
    "jsdoc/require-param-name": ["warn"],
    "jsdoc/check-tag-names": ["warn"],
    "no-unused-vars": ["warn"],
    "operator-linebreak": ["error", "after", { "overrides": { "?": "ignore", ":": "ignore" } }],
    "yml/indent": ["error", 2]
  },
  "settings": {
    "jsdoc": {
      "tagNamePreference": {
        "returns": "return",
        "property": "prop"
      }
    }
  }
}
+20 −5
Original line number Diff line number Diff line
@@ -14,6 +14,9 @@
    "matchMedia": true,
    "Backbone": true
  },
  "plugins": [
    "jsdoc"
  ],
  "rules": {
    "array-bracket-spacing": ["error", "never"],
    "block-scoped-var": "error",
@@ -81,12 +84,24 @@
    "strict": ["error", "function"],
    "yoda": ["error", "never"],
    "max-nested-callbacks": ["warn", 3],
    "valid-jsdoc": ["warn", {
      "prefer": {
    "jsdoc/require-returns": ["off"],
    "jsdoc/require-returns-type": ["warn"],
    "jsdoc/require-returns-description": ["warn"],
    "jsdoc/require-returns-check": ["warn"],
    "jsdoc/require-param": ["warn"],
    "jsdoc/require-param-type": ["warn"],
    "jsdoc/require-param-description": ["warn"],
    "jsdoc/check-param-names": ["warn"],
    "jsdoc/valid-types": ["warn"],
    "jsdoc/require-param-name": ["warn"],
    "jsdoc/check-tag-names": ["warn"]
  },
  "settings": {
    "jsdoc": {
      "tagNamePreference": {
        "returns": "return",
        "property": "prop"
      },
      "requireReturn": false
    }]
      }
    }
  }
}
+1 −0
Original line number Diff line number Diff line
@@ -71,6 +71,7 @@
    "eslint-config-prettier": "^10.1.8",
    "eslint-formatter-gitlab": "^5.1.0",
    "eslint-plugin-import": "^2.32.0",
    "eslint-plugin-jsdoc": "^61.2.1",
    "eslint-plugin-no-jquery": "^3.1.1",
    "eslint-plugin-prettier": "^5.5.4",
    "eslint-plugin-yml": "^1.19.0",
+170 −1
Original line number Diff line number Diff line
@@ -2164,6 +2164,26 @@ __metadata:
  languageName: node
  linkType: hard

"@es-joy/jsdoccomment@npm:~0.76.0":
  version: 0.76.0
  resolution: "@es-joy/jsdoccomment@npm:0.76.0"
  dependencies:
    "@types/estree": "npm:^1.0.8"
    "@typescript-eslint/types": "npm:^8.46.0"
    comment-parser: "npm:1.4.1"
    esquery: "npm:^1.6.0"
    jsdoc-type-pratt-parser: "npm:~6.10.0"
  checksum: 10c0/8fe4edec7d60562787ea8c77193ebe8737a9e28ec3143d383506b63890d0ffd45a2813e913ad1f00f227cb10e3a1fb913e5a696b33d499dc564272ff1a6f3fdb
  languageName: node
  linkType: hard

"@es-joy/resolve.exports@npm:1.2.0":
  version: 1.2.0
  resolution: "@es-joy/resolve.exports@npm:1.2.0"
  checksum: 10c0/7e4713471f5eccb17a925a12415a2d9e372a42376813a19f6abd9c35e8d01ab1403777265817da67c6150cffd4f558d9ad51e26a8de6911dad89d9cb7eedacd8
  languageName: node
  linkType: hard

"@eslint-community/eslint-utils@npm:^4.2.0":
  version: 4.7.0
  resolution: "@eslint-community/eslint-utils@npm:4.7.0"
@@ -2644,6 +2664,13 @@ __metadata:
  languageName: node
  linkType: hard

"@sindresorhus/base62@npm:^1.0.0":
  version: 1.0.0
  resolution: "@sindresorhus/base62@npm:1.0.0"
  checksum: 10c0/9a14df0f058fdf4731c30f0f05728a4822144ee42236030039d7fa5a1a1072c2879feba8091fd4a17c8922d1056bc07bada77c31fddc3e15836fc05a266fd918
  languageName: node
  linkType: hard

"@types/chai@npm:^4.3.5":
  version: 4.3.20
  resolution: "@types/chai@npm:4.3.20"
@@ -2784,6 +2811,13 @@ __metadata:
  languageName: node
  linkType: hard

"@typescript-eslint/types@npm:^8.46.0":
  version: 8.46.4
  resolution: "@typescript-eslint/types@npm:8.46.4"
  checksum: 10c0/b92166dd9b6d8e4cf0a6a90354b6e94af8542d8ab341aed3955990e6599db7a583af638e22909a1417e41fd8a0ef5861c5ba12ad84b307c27d26f3e0c5e2020f
  languageName: node
  linkType: hard

"@ungap/structured-clone@npm:^1.0.0, @ungap/structured-clone@npm:^1.2.0":
  version: 1.3.0
  resolution: "@ungap/structured-clone@npm:1.3.0"
@@ -3031,6 +3065,7 @@ __metadata:
    eslint-config-prettier: "npm:^10.1.8"
    eslint-formatter-gitlab: "npm:^5.1.0"
    eslint-plugin-import: "npm:^2.32.0"
    eslint-plugin-jsdoc: "npm:^61.2.1"
    eslint-plugin-no-jquery: "npm:^3.1.1"
    eslint-plugin-prettier: "npm:^5.5.4"
    eslint-plugin-yml: "npm:^1.19.0"
@@ -3286,6 +3321,13 @@ __metadata:
  languageName: node
  linkType: hard

"are-docs-informative@npm:^0.0.2":
  version: 0.0.2
  resolution: "are-docs-informative@npm:0.0.2"
  checksum: 10c0/f0326981bd699c372d268b526b170a28f2e1aec2cf99d7de0686083528427ecdf6ae41fef5d9988e224a5616298af747ad8a76e7306b0a7c97cc085a99636d60
  languageName: node
  linkType: hard

"argparse@npm:^2.0.1":
  version: 2.0.1
  resolution: "argparse@npm:2.0.1"
@@ -4120,6 +4162,13 @@ __metadata:
  languageName: node
  linkType: hard

"comment-parser@npm:1.4.1":
  version: 1.4.1
  resolution: "comment-parser@npm:1.4.1"
  checksum: 10c0/d6c4be3f5be058f98b24f2d557f745d8fe1cc9eb75bebbdccabd404a0e1ed41563171b16285f593011f8b6a5ec81f564fb1f2121418ac5cbf0f49255bf0840dd
  languageName: node
  linkType: hard

"compress-commons@npm:^4.1.2":
  version: 4.1.2
  resolution: "compress-commons@npm:4.1.2"
@@ -5223,6 +5272,30 @@ __metadata:
  languageName: node
  linkType: hard

"eslint-plugin-jsdoc@npm:^61.2.1":
  version: 61.2.1
  resolution: "eslint-plugin-jsdoc@npm:61.2.1"
  dependencies:
    "@es-joy/jsdoccomment": "npm:~0.76.0"
    "@es-joy/resolve.exports": "npm:1.2.0"
    are-docs-informative: "npm:^0.0.2"
    comment-parser: "npm:1.4.1"
    debug: "npm:^4.4.3"
    escape-string-regexp: "npm:^4.0.0"
    espree: "npm:^10.4.0"
    esquery: "npm:^1.6.0"
    html-entities: "npm:^2.6.0"
    object-deep-merge: "npm:^2.0.0"
    parse-imports-exports: "npm:^0.2.4"
    semver: "npm:^7.7.3"
    spdx-expression-parse: "npm:^4.0.0"
    to-valid-identifier: "npm:^1.0.0"
  peerDependencies:
    eslint: ^7.0.0 || ^8.0.0 || ^9.0.0
  checksum: 10c0/c2288ab5cffcb8a21adc4b7baa26d253c616463367d52157bdcce322135fd9d141fa5f0d27bd1a8c9d93db16dc1727d9a5c58bf6d2008ed0849e6c4b2f811384
  languageName: node
  linkType: hard

"eslint-plugin-no-jquery@npm:^3.1.1":
  version: 3.1.1
  resolution: "eslint-plugin-no-jquery@npm:3.1.1"
@@ -5295,6 +5368,13 @@ __metadata:
  languageName: node
  linkType: hard

"eslint-visitor-keys@npm:^4.2.1":
  version: 4.2.1
  resolution: "eslint-visitor-keys@npm:4.2.1"
  checksum: 10c0/fcd43999199d6740db26c58dbe0c2594623e31ca307e616ac05153c9272f12f1364f5a0b1917a8e962268fdecc6f3622c1c2908b4fcc2e047a106fe6de69dc43
  languageName: node
  linkType: hard

"eslint@npm:^8.57.1":
  version: 8.57.1
  resolution: "eslint@npm:8.57.1"
@@ -5343,6 +5423,17 @@ __metadata:
  languageName: node
  linkType: hard

"espree@npm:^10.4.0":
  version: 10.4.0
  resolution: "espree@npm:10.4.0"
  dependencies:
    acorn: "npm:^8.15.0"
    acorn-jsx: "npm:^5.3.2"
    eslint-visitor-keys: "npm:^4.2.1"
  checksum: 10c0/c63fe06131c26c8157b4083313cb02a9a54720a08e21543300e55288c40e06c3fc284bdecf108d3a1372c5934a0a88644c98714f38b6ae8ed272b40d9ea08d6b
  languageName: node
  linkType: hard

"espree@npm:^9.6.0, espree@npm:^9.6.1":
  version: 9.6.1
  resolution: "espree@npm:9.6.1"
@@ -5364,7 +5455,7 @@ __metadata:
  languageName: node
  linkType: hard

"esquery@npm:^1.4.2":
"esquery@npm:^1.4.2, esquery@npm:^1.6.0":
  version: 1.6.0
  resolution: "esquery@npm:1.6.0"
  dependencies:
@@ -6213,6 +6304,13 @@ __metadata:
  languageName: node
  linkType: hard

"html-entities@npm:^2.6.0":
  version: 2.6.0
  resolution: "html-entities@npm:2.6.0"
  checksum: 10c0/7c8b15d9ea0cd00dc9279f61bab002ba6ca8a7a0f3c36ed2db3530a67a9621c017830d1d2c1c65beb9b8e3436ea663e9cf8b230472e0e413359399413b27c8b7
  languageName: node
  linkType: hard

"html-tags@npm:^3.3.1":
  version: 3.3.1
  resolution: "html-tags@npm:3.3.1"
@@ -6871,6 +6969,13 @@ __metadata:
  languageName: node
  linkType: hard

"jsdoc-type-pratt-parser@npm:~6.10.0":
  version: 6.10.0
  resolution: "jsdoc-type-pratt-parser@npm:6.10.0"
  checksum: 10c0/8ea395df0cae0e41d4bdba5f8d81b8d3e467fe53d1e4182a5d4e653235a5f17d60ed137343d68dbc74fa10e767f1c58fb85b1f6d5489c2cf16fc7216cc6d3e1a
  languageName: node
  linkType: hard

"jsdom@npm:^24.1.0":
  version: 24.1.3
  resolution: "jsdom@npm:24.1.3"
@@ -8190,6 +8295,13 @@ __metadata:
  languageName: node
  linkType: hard

"object-deep-merge@npm:^2.0.0":
  version: 2.0.0
  resolution: "object-deep-merge@npm:2.0.0"
  checksum: 10c0/69e8741131ad49fa8720fb96007a3c82dca1119b5d874151d2ecbcc3b44ccd46e8553c7a30b0abcba752c099ba361bbba97f33a68c9ae54c57eed7be116ffc97
  languageName: node
  linkType: hard

"object-inspect@npm:^1.13.3, object-inspect@npm:^1.13.4":
  version: 1.13.4
  resolution: "object-inspect@npm:1.13.4"
@@ -8428,6 +8540,15 @@ __metadata:
  languageName: node
  linkType: hard

"parse-imports-exports@npm:^0.2.4":
  version: 0.2.4
  resolution: "parse-imports-exports@npm:0.2.4"
  dependencies:
    parse-statements: "npm:1.0.11"
  checksum: 10c0/51b729037208abdf65c4a1f8e9ed06f4e7ccd907c17c668a64db54b37d95bb9e92081f8b16e4133e14102af3cb4e89870975b6ad661b4d654e9ec8f4fb5c77d6
  languageName: node
  linkType: hard

"parse-json@npm:^5.2.0":
  version: 5.2.0
  resolution: "parse-json@npm:5.2.0"
@@ -8440,6 +8561,13 @@ __metadata:
  languageName: node
  linkType: hard

"parse-statements@npm:1.0.11":
  version: 1.0.11
  resolution: "parse-statements@npm:1.0.11"
  checksum: 10c0/48960e085019068a5f5242e875fd9d21ec87df2e291acf5ad4e4887b40eab6929a8c8d59542acb85a6497e870c5c6a24f5ab7f980ef5f907c14cc5f7984a93f3
  languageName: node
  linkType: hard

"parse5@npm:^7.1.2":
  version: 7.3.0
  resolution: "parse5@npm:7.3.0"
@@ -9389,6 +9517,13 @@ __metadata:
  languageName: node
  linkType: hard

"reserved-identifiers@npm:^1.0.0":
  version: 1.2.0
  resolution: "reserved-identifiers@npm:1.2.0"
  checksum: 10c0/b82651b12e6c608e80463c3753d275bc20fd89294d0415f04e670aeec3611ae3582ddc19e8fedd497e7d0bcbfaddab6a12823ec86e855b1e6a245e0a734eb43d
  languageName: node
  linkType: hard

"resolve-cwd@npm:^3.0.0":
  version: 3.0.0
  resolution: "resolve-cwd@npm:3.0.0"
@@ -9874,6 +10009,30 @@ __metadata:
  languageName: node
  linkType: hard

"spdx-exceptions@npm:^2.1.0":
  version: 2.5.0
  resolution: "spdx-exceptions@npm:2.5.0"
  checksum: 10c0/37217b7762ee0ea0d8b7d0c29fd48b7e4dfb94096b109d6255b589c561f57da93bf4e328c0290046115961b9209a8051ad9f525e48d433082fc79f496a4ea940
  languageName: node
  linkType: hard

"spdx-expression-parse@npm:^4.0.0":
  version: 4.0.0
  resolution: "spdx-expression-parse@npm:4.0.0"
  dependencies:
    spdx-exceptions: "npm:^2.1.0"
    spdx-license-ids: "npm:^3.0.0"
  checksum: 10c0/965c487e77f4fb173f1c471f3eef4eb44b9f0321adc7f93d95e7620da31faa67d29356eb02523cd7df8a7fc1ec8238773cdbf9e45bd050329d2b26492771b736
  languageName: node
  linkType: hard

"spdx-license-ids@npm:^3.0.0":
  version: 3.0.22
  resolution: "spdx-license-ids@npm:3.0.22"
  checksum: 10c0/4a85e44c2ccfc06eebe63239193f526508ebec1abc7cf7bca8ee43923755636234395447c2c87f40fb672cf580a9c8e684513a676bfb2da3d38a4983684bbb38
  languageName: node
  linkType: hard

"sprintf-js@npm:^1.1.3":
  version: 1.1.3
  resolution: "sprintf-js@npm:1.1.3"
@@ -10360,6 +10519,16 @@ __metadata:
  languageName: node
  linkType: hard

"to-valid-identifier@npm:^1.0.0":
  version: 1.0.0
  resolution: "to-valid-identifier@npm:1.0.0"
  dependencies:
    "@sindresorhus/base62": "npm:^1.0.0"
    reserved-identifiers: "npm:^1.0.0"
  checksum: 10c0/569b49f43b5aaaa20677e67f0f1cdcff344855149934cfb80c793c7ac7c30e191b224bc81cab40fb57641af9ca73795c78053c164a2addc617671e2d22c13a4a
  languageName: node
  linkType: hard

"tough-cookie@npm:^4.1.4":
  version: 4.1.4
  resolution: "tough-cookie@npm:4.1.4"