build: Update jsdoc-wmf-theme to 1.1.0

Additional changes:
* Update Minerva so that it doesn't output any APIs
to the documentation - this is intentional as Minerva does
not have any public facing APIs.

Bug: T368081
Change-Id: Ie1a3ea30cbf35663c7fdd2494c1698044882969e
This commit is contained in:
Ed Sanders 2024-06-26 14:23:40 +01:00 committed by Jon Robson
parent 527e018af1
commit 2be7b9f919
21 changed files with 218 additions and 148 deletions

View file

@ -8,7 +8,7 @@
"template": "node_modules/jsdoc-wmf-theme"
},
"plugins": [
"plugins/markdown"
"node_modules/jsdoc-wmf-theme/plugins/default"
],
"source": {
"include": [ "resources" ]
@ -19,14 +19,19 @@
"useLongnameInNav": true
},
"wmf": {
"repository": "https://gerrit.wikimedia.org/g/mediawiki/skins/MinervaNeue/",
"prefixMap": {
"mw.": "https://doc.wikimedia.org/mediawiki-core/master/js/{type}.html"
},
"linkMap": {
"Overlay": "https://doc.wikimedia.org/MobileFrontend/master/js/js/Overlay.html",
"Window": "https://developer.mozilla.org/en-US/docs/Web/API/Window",
"Element": "https://developer.mozilla.org/en-US/docs/Web/API/Element",
"HTMLElement": "https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement",
"jQuery": "https://api.jquery.com/Types/#jQuery",
"jQuery": "https://api.jquery.com/jQuery/",
"Node": "https://developer.mozilla.org/docs/Web/API/Node",
"Element": "https://developer.mozilla.org/docs/Web/API/Element",
"HTMLElement": "https://developer.mozilla.org/docs/Web/API/HTMLElement",
"Drawer": "https://doc.wikimedia.org/MobileFrontend/master/js/js/Drawer.html",
"Icon": "https://doc.wikimedia.org/MobileFrontend/master/js/js/Icon.html",
"Overlay": "https://doc.wikimedia.org/MobileFrontend/master/js/js/Overlay.html",
"Page": "https://doc.wikimedia.org/MobileFrontend/master/js/js/Page.html",
"View": "https://doc.wikimedia.org/MobileFrontend/master/js/js/View.html"
}
}

268
package-lock.json generated
View file

@ -17,8 +17,8 @@
"@wdio/spec-reporter": "7.29.1",
"eslint-config-wikimedia": "0.27.0",
"grunt-banana-checker": "0.11.1",
"jsdoc": "4.0.2",
"jsdoc-wmf-theme": "0.0.12",
"jsdoc": "4.0.3",
"jsdoc-wmf-theme": "1.1.0",
"mwbot": "2.0.0",
"pre-commit": "1.2.2",
"stylelint-config-wikimedia": "0.16.1",
@ -2499,9 +2499,9 @@
}
},
"node_modules/@jsdoc/salty": {
"version": "0.2.7",
"resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.7.tgz",
"integrity": "sha512-mh8LbS9d4Jq84KLw8pzho7XC2q2/IJGiJss3xwRoLD1A+EE16SjN4PfaG4jRCzKegTFLlN0Zd8SdUPE6XdoPFg==",
"version": "0.2.8",
"resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.8.tgz",
"integrity": "sha512-5e+SFVavj1ORKlKaKr2BmTOekmXbelU7dC0cDkQLqag7xfuTPuGMUFx7KWJuv4bYZrTsoL2Z18VVCOKYxzoHcg==",
"dev": true,
"dependencies": {
"lodash": "^4.17.21"
@ -2788,9 +2788,9 @@
}
},
"node_modules/@types/linkify-it": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz",
"integrity": "sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA==",
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz",
"integrity": "sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==",
"dev": true
},
"node_modules/@types/lodash": {
@ -2833,19 +2833,19 @@
"dev": true
},
"node_modules/@types/markdown-it": {
"version": "12.2.3",
"resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-12.2.3.tgz",
"integrity": "sha512-GKMHFfv3458yYy+v/N8gjufHO6MSZKCOXpZc5GXIWWy8uldwfmPn98vp81gZ5f9SVw8YYBctgfJ22a2d7AOMeQ==",
"version": "14.1.1",
"resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.1.tgz",
"integrity": "sha512-4NpsnpYl2Gt1ljyBGrKMxFYAYvpqbnnkgP/i/g+NLpjEUa3obn1XJCur9YbEXKDAkaXqsR1LbDnGEJ0MmKFxfg==",
"dev": true,
"dependencies": {
"@types/linkify-it": "*",
"@types/mdurl": "*"
"@types/linkify-it": "^5",
"@types/mdurl": "^2"
}
},
"node_modules/@types/mdurl": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz",
"integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==",
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-2.0.0.tgz",
"integrity": "sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==",
"dev": true
},
"node_modules/@types/minimatch": {
@ -11781,21 +11781,21 @@
"dev": true
},
"node_modules/jsdoc": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.2.tgz",
"integrity": "sha512-e8cIg2z62InH7azBBi3EsSEqrKx+nUtAS5bBcYTSpZFA+vhNPyhv8PTFZ0WsjOPDj04/dOLlm08EDcQJDqaGQg==",
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.3.tgz",
"integrity": "sha512-Nu7Sf35kXJ1MWDZIMAuATRQTg1iIPdzh7tqJ6jjvaU/GfDf+qi5UV8zJR3Mo+/pYFvm8mzay4+6O5EWigaQBQw==",
"dev": true,
"dependencies": {
"@babel/parser": "^7.20.15",
"@jsdoc/salty": "^0.2.1",
"@types/markdown-it": "^12.2.3",
"@types/markdown-it": "^14.1.1",
"bluebird": "^3.7.2",
"catharsis": "^0.9.0",
"escape-string-regexp": "^2.0.0",
"js2xmlparser": "^4.0.2",
"klaw": "^3.0.0",
"markdown-it": "^12.3.2",
"markdown-it-anchor": "^8.4.1",
"markdown-it": "^14.1.0",
"markdown-it-anchor": "^8.6.7",
"marked": "^4.0.10",
"mkdirp": "^1.0.4",
"requizzle": "^0.2.3",
@ -11809,6 +11809,12 @@
"node": ">=12.0.0"
}
},
"node_modules/jsdoc-class-hierarchy": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/jsdoc-class-hierarchy/-/jsdoc-class-hierarchy-1.1.2.tgz",
"integrity": "sha512-oU7UgWr0Qbtxd2J81/ee1lM8xAdyUU7B1ZosVwZxJwjhPWvtkX9ooHjD1Fk97OyOlpTBXxYVTpptvSCKRt8wvQ==",
"dev": true
},
"node_modules/jsdoc-type-pratt-parser": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz",
@ -11819,16 +11825,30 @@
}
},
"node_modules/jsdoc-wmf-theme": {
"version": "0.0.12",
"resolved": "https://registry.npmjs.org/jsdoc-wmf-theme/-/jsdoc-wmf-theme-0.0.12.tgz",
"integrity": "sha512-nuM3TZ91hYWr0GcWr0ECccUMaqxmfQaQTrvqh6n2OSCJj1PRYLMAX7ME3iR+3NX8yBI5MLA+SoiZMwDq/B6pdg==",
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/jsdoc-wmf-theme/-/jsdoc-wmf-theme-1.1.0.tgz",
"integrity": "sha512-0BQMgaSBmdGRVSiyAF7SMm1mTS59Y5vpPHAFFABcZRL15TIc5UyL88DtrrA1nuKL+jgTBsMgaeu8NDfNstC8RA==",
"dev": true,
"dependencies": {
"@jsdoc/salty": "^0.2.8",
"@wikimedia/codex-design-tokens": "1.1.1",
"domino": "^2.1.6",
"jsdoc-class-hierarchy": "1.1.2",
"lunr": "2.3.9",
"normalize.css": "8.0.1",
"taffydb": "^2.7.3"
"marked": "^12.0.2",
"normalize.css": "8.0.1"
}
},
"node_modules/jsdoc-wmf-theme/node_modules/marked": {
"version": "12.0.2",
"resolved": "https://registry.npmjs.org/marked/-/marked-12.0.2.tgz",
"integrity": "sha512-qXUm7e/YKFoqFPYPa3Ukg9xlI5cyAtGmyEIzMfW//m6kXwCy2Ps9DYf5ioijFKQ8qyuscrHoY04iJGctu2Kg0Q==",
"dev": true,
"bin": {
"marked": "bin/marked.js"
},
"engines": {
"node": ">= 18"
}
},
"node_modules/jsdoc/node_modules/escape-string-regexp": {
@ -12292,12 +12312,12 @@
"integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
},
"node_modules/linkify-it": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.3.tgz",
"integrity": "sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==",
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz",
"integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==",
"dev": true,
"dependencies": {
"uc.micro": "^1.0.1"
"uc.micro": "^2.0.0"
}
},
"node_modules/load-json-file": {
@ -12633,40 +12653,32 @@
}
},
"node_modules/markdown-it": {
"version": "12.3.2",
"resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz",
"integrity": "sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==",
"version": "14.1.0",
"resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz",
"integrity": "sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==",
"dev": true,
"dependencies": {
"argparse": "^2.0.1",
"entities": "~2.1.0",
"linkify-it": "^3.0.1",
"mdurl": "^1.0.1",
"uc.micro": "^1.0.5"
"entities": "^4.4.0",
"linkify-it": "^5.0.0",
"mdurl": "^2.0.0",
"punycode.js": "^2.3.1",
"uc.micro": "^2.1.0"
},
"bin": {
"markdown-it": "bin/markdown-it.js"
"markdown-it": "bin/markdown-it.mjs"
}
},
"node_modules/markdown-it-anchor": {
"version": "8.6.4",
"resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.4.tgz",
"integrity": "sha512-Ul4YVYZNxMJYALpKtu+ZRdrryYt/GlQ5CK+4l1bp/gWXOG2QWElt6AqF3Mih/wfUKdZbNAZVXGR73/n6U/8img==",
"version": "8.6.7",
"resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.7.tgz",
"integrity": "sha512-FlCHFwNnutLgVTflOYHPW2pPcl2AACqVzExlkGQNsi4CJgqOHN7YTgDd4LuhgN1BFO3TS0vLAruV1Td6dwWPJA==",
"dev": true,
"peerDependencies": {
"@types/markdown-it": "*",
"markdown-it": "*"
}
},
"node_modules/markdown-it/node_modules/entities": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz",
"integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==",
"dev": true,
"funding": {
"url": "https://github.com/fb55/entities?sponsor=1"
}
},
"node_modules/marked": {
"version": "4.0.15",
"resolved": "https://registry.npmjs.org/marked/-/marked-4.0.15.tgz",
@ -12702,9 +12714,9 @@
"dev": true
},
"node_modules/mdurl": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz",
"integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=",
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz",
"integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==",
"dev": true
},
"node_modules/meow": {
@ -14110,6 +14122,15 @@
"node": ">=6"
}
},
"node_modules/punycode.js": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz",
"integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==",
"dev": true,
"engines": {
"node": ">=6"
}
},
"node_modules/puppeteer-core": {
"version": "13.7.0",
"resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-13.7.0.tgz",
@ -15551,12 +15572,6 @@
"integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
"dev": true
},
"node_modules/taffydb": {
"version": "2.7.3",
"resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.7.3.tgz",
"integrity": "sha512-GQ3gtYFSOAxSMN/apGtDKKkbJf+8izz5YfbGqIsUc7AMiQOapARZ76dhilRY2h39cynYxBFdafQo5HUL5vgkrg==",
"dev": true
},
"node_modules/tar-fs": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",
@ -15915,9 +15930,9 @@
}
},
"node_modules/uc.micro": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz",
"integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==",
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz",
"integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==",
"dev": true
},
"node_modules/unbzip2-stream": {
@ -18673,9 +18688,9 @@
}
},
"@jsdoc/salty": {
"version": "0.2.7",
"resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.7.tgz",
"integrity": "sha512-mh8LbS9d4Jq84KLw8pzho7XC2q2/IJGiJss3xwRoLD1A+EE16SjN4PfaG4jRCzKegTFLlN0Zd8SdUPE6XdoPFg==",
"version": "0.2.8",
"resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.8.tgz",
"integrity": "sha512-5e+SFVavj1ORKlKaKr2BmTOekmXbelU7dC0cDkQLqag7xfuTPuGMUFx7KWJuv4bYZrTsoL2Z18VVCOKYxzoHcg==",
"dev": true,
"requires": {
"lodash": "^4.17.21"
@ -18931,9 +18946,9 @@
}
},
"@types/linkify-it": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz",
"integrity": "sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA==",
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz",
"integrity": "sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==",
"dev": true
},
"@types/lodash": {
@ -18976,19 +18991,19 @@
"dev": true
},
"@types/markdown-it": {
"version": "12.2.3",
"resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-12.2.3.tgz",
"integrity": "sha512-GKMHFfv3458yYy+v/N8gjufHO6MSZKCOXpZc5GXIWWy8uldwfmPn98vp81gZ5f9SVw8YYBctgfJ22a2d7AOMeQ==",
"version": "14.1.1",
"resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.1.tgz",
"integrity": "sha512-4NpsnpYl2Gt1ljyBGrKMxFYAYvpqbnnkgP/i/g+NLpjEUa3obn1XJCur9YbEXKDAkaXqsR1LbDnGEJ0MmKFxfg==",
"dev": true,
"requires": {
"@types/linkify-it": "*",
"@types/mdurl": "*"
"@types/linkify-it": "^5",
"@types/mdurl": "^2"
}
},
"@types/mdurl": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz",
"integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==",
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-2.0.0.tgz",
"integrity": "sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==",
"dev": true
},
"@types/minimatch": {
@ -25729,21 +25744,21 @@
"dev": true
},
"jsdoc": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.2.tgz",
"integrity": "sha512-e8cIg2z62InH7azBBi3EsSEqrKx+nUtAS5bBcYTSpZFA+vhNPyhv8PTFZ0WsjOPDj04/dOLlm08EDcQJDqaGQg==",
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.3.tgz",
"integrity": "sha512-Nu7Sf35kXJ1MWDZIMAuATRQTg1iIPdzh7tqJ6jjvaU/GfDf+qi5UV8zJR3Mo+/pYFvm8mzay4+6O5EWigaQBQw==",
"dev": true,
"requires": {
"@babel/parser": "^7.20.15",
"@jsdoc/salty": "^0.2.1",
"@types/markdown-it": "^12.2.3",
"@types/markdown-it": "^14.1.1",
"bluebird": "^3.7.2",
"catharsis": "^0.9.0",
"escape-string-regexp": "^2.0.0",
"js2xmlparser": "^4.0.2",
"klaw": "^3.0.0",
"markdown-it": "^12.3.2",
"markdown-it-anchor": "^8.4.1",
"markdown-it": "^14.1.0",
"markdown-it-anchor": "^8.6.7",
"marked": "^4.0.10",
"mkdirp": "^1.0.4",
"requizzle": "^0.2.3",
@ -25759,6 +25774,12 @@
}
}
},
"jsdoc-class-hierarchy": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/jsdoc-class-hierarchy/-/jsdoc-class-hierarchy-1.1.2.tgz",
"integrity": "sha512-oU7UgWr0Qbtxd2J81/ee1lM8xAdyUU7B1ZosVwZxJwjhPWvtkX9ooHjD1Fk97OyOlpTBXxYVTpptvSCKRt8wvQ==",
"dev": true
},
"jsdoc-type-pratt-parser": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz",
@ -25766,16 +25787,26 @@
"dev": true
},
"jsdoc-wmf-theme": {
"version": "0.0.12",
"resolved": "https://registry.npmjs.org/jsdoc-wmf-theme/-/jsdoc-wmf-theme-0.0.12.tgz",
"integrity": "sha512-nuM3TZ91hYWr0GcWr0ECccUMaqxmfQaQTrvqh6n2OSCJj1PRYLMAX7ME3iR+3NX8yBI5MLA+SoiZMwDq/B6pdg==",
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/jsdoc-wmf-theme/-/jsdoc-wmf-theme-1.1.0.tgz",
"integrity": "sha512-0BQMgaSBmdGRVSiyAF7SMm1mTS59Y5vpPHAFFABcZRL15TIc5UyL88DtrrA1nuKL+jgTBsMgaeu8NDfNstC8RA==",
"dev": true,
"requires": {
"@jsdoc/salty": "^0.2.8",
"@wikimedia/codex-design-tokens": "1.1.1",
"domino": "^2.1.6",
"jsdoc-class-hierarchy": "1.1.2",
"lunr": "2.3.9",
"normalize.css": "8.0.1",
"taffydb": "^2.7.3"
"marked": "^12.0.2",
"normalize.css": "8.0.1"
},
"dependencies": {
"marked": {
"version": "12.0.2",
"resolved": "https://registry.npmjs.org/marked/-/marked-12.0.2.tgz",
"integrity": "sha512-qXUm7e/YKFoqFPYPa3Ukg9xlI5cyAtGmyEIzMfW//m6kXwCy2Ps9DYf5ioijFKQ8qyuscrHoY04iJGctu2Kg0Q==",
"dev": true
}
}
},
"jsdom": {
@ -26147,12 +26178,12 @@
"integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
},
"linkify-it": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.3.tgz",
"integrity": "sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==",
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz",
"integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==",
"dev": true,
"requires": {
"uc.micro": "^1.0.1"
"uc.micro": "^2.0.0"
}
},
"load-json-file": {
@ -26424,30 +26455,23 @@
"dev": true
},
"markdown-it": {
"version": "12.3.2",
"resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz",
"integrity": "sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==",
"version": "14.1.0",
"resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz",
"integrity": "sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==",
"dev": true,
"requires": {
"argparse": "^2.0.1",
"entities": "~2.1.0",
"linkify-it": "^3.0.1",
"mdurl": "^1.0.1",
"uc.micro": "^1.0.5"
},
"dependencies": {
"entities": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz",
"integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==",
"dev": true
}
"entities": "^4.4.0",
"linkify-it": "^5.0.0",
"mdurl": "^2.0.0",
"punycode.js": "^2.3.1",
"uc.micro": "^2.1.0"
}
},
"markdown-it-anchor": {
"version": "8.6.4",
"resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.4.tgz",
"integrity": "sha512-Ul4YVYZNxMJYALpKtu+ZRdrryYt/GlQ5CK+4l1bp/gWXOG2QWElt6AqF3Mih/wfUKdZbNAZVXGR73/n6U/8img==",
"version": "8.6.7",
"resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.7.tgz",
"integrity": "sha512-FlCHFwNnutLgVTflOYHPW2pPcl2AACqVzExlkGQNsi4CJgqOHN7YTgDd4LuhgN1BFO3TS0vLAruV1Td6dwWPJA==",
"dev": true,
"requires": {}
},
@ -26476,9 +26500,9 @@
"dev": true
},
"mdurl": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz",
"integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=",
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz",
"integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==",
"dev": true
},
"meow": {
@ -27524,6 +27548,12 @@
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
"integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
},
"punycode.js": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz",
"integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==",
"dev": true
},
"puppeteer-core": {
"version": "13.7.0",
"resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-13.7.0.tgz",
@ -28641,12 +28671,6 @@
}
}
},
"taffydb": {
"version": "2.7.3",
"resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.7.3.tgz",
"integrity": "sha512-GQ3gtYFSOAxSMN/apGtDKKkbJf+8izz5YfbGqIsUc7AMiQOapARZ76dhilRY2h39cynYxBFdafQo5HUL5vgkrg==",
"dev": true
},
"tar-fs": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",
@ -28927,9 +28951,9 @@
"dev": true
},
"uc.micro": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz",
"integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==",
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz",
"integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==",
"dev": true
},
"unbzip2-stream": {

View file

@ -24,8 +24,8 @@
"@wdio/spec-reporter": "7.29.1",
"eslint-config-wikimedia": "0.27.0",
"grunt-banana-checker": "0.11.1",
"jsdoc": "4.0.2",
"jsdoc-wmf-theme": "0.0.12",
"jsdoc": "4.0.3",
"jsdoc-wmf-theme": "1.1.0",
"mwbot": "2.0.0",
"pre-commit": "1.2.2",
"stylelint-config-wikimedia": "0.16.1",

View file

@ -14,6 +14,8 @@ const bucket = {
/**
* Buckets users based on params and exposes an `isSampled` and `getBucket` method.
*
* @ignore
* @ignore
* @param {Object} config Configuration object for AB test.
* @param {string} config.testName
* @param {number} config.samplingRate Sampling rate for the AB-test.

View file

@ -33,6 +33,7 @@ function testScrollLeftStyle() {
/**
* When tabs are present and one is selected, scroll the selected tab into view.
* @ignore
*/
function initTabsScrollPosition() {
// eslint-disable-next-line no-jquery/no-global-selector

View file

@ -37,6 +37,7 @@ const UriUtil = require( './UriUtil.js' );
*
* This function doesn't throw. `null` is returned for any unparseable input.
*
* @ignore
* @param {mw.Uri|Object|string} [uri] Passed to Uri.
* @param {Object|boolean} [options] Passed to Uri.
* @param {Object|boolean} [options.validateReadOnlyLink] If true, only links that would show a
@ -131,5 +132,5 @@ function isReadOnlyUri( uri ) {
}
module.exports = {
newFromUri: newFromUri
newFromUri
};

View file

@ -2,15 +2,16 @@ const
mobile = require( 'mobile.startup' ),
ToggleList = require( '../../includes/Skins/ToggleList/ToggleList.js' ),
page = mobile.currentPage(),
/** The top level menu. */
// The top level menu.
selector = '.page-actions-menu',
/** The secondary overflow submenu component container. */
// The secondary overflow submenu component container.
overflowSubmenuSelector = '#page-actions-overflow',
overflowListSelector = '.toggle-list__list';
/**
* @param {Window} window
* @param {Element} toolbar
* @ignore
*/
function bind( window, toolbar ) {
const overflowSubmenu = toolbar.querySelector( overflowSubmenuSelector );
@ -22,6 +23,7 @@ function bind( window, toolbar ) {
/**
* @param {Window} window
* @param {Element} toolbar
* @ignore
*/
function render( window, toolbar ) {
const overflowList = toolbar.querySelector( overflowListSelector );
@ -57,6 +59,7 @@ function checkForReadOnlyMode() {
* all device/os/operating system related checks and if device supports printing it will inject
* the Download icon
*
* @ignore
* @param {Window} window
* @param {Element|null} overflowList
*/

View file

@ -20,6 +20,7 @@
* https://en.wikipedia.org/
* https://en.wikipedia.org/wiki/Bar
*
* @ignore
* @param {mw.Uri} uri
* @return {boolean}
*/
@ -33,5 +34,5 @@ function isInternal( uri ) {
}
module.exports = {
isInternal: isInternal
isInternal
};

View file

@ -1,4 +1,5 @@
/**
* @private
* @param {jQuery} $item The added list item, or null if no element was added.
* @return {Object} of arrays with mandatory class names for list item elements.
*/
@ -48,6 +49,7 @@ function getClassesForItem( $item ) {
/**
* Insert icon into the portlet link.
*
* @private
* @param {jQuery} $link
* @param {string|undefined} id for icon
*/
@ -67,6 +69,7 @@ function insertIcon( $link, id ) {
/**
* @param {HTMLElement|null} listItem The added list item, or null if no element was added.
* @param {Object} data
* @ignore
*/
function hookHandler( listItem, data ) {
if ( listItem && !listItem.dataset.minervaPortlet ) {
@ -94,6 +97,7 @@ function hookHandler( listItem, data ) {
/**
* Init portlet link items added by gadgets prior to Minerva
* loading.
* @ignore
*/
function init() {
Array.prototype.forEach.call(
@ -106,6 +110,6 @@ function init() {
);
}
module.exports = {
init: init,
hookHandler: hookHandler
init,
hookHandler
};

View file

@ -18,7 +18,7 @@ const CtaDrawer = mobile.CtaDrawer;
* will be red. In both cases, another user follows this link, not to edit create a page for
* that user but to obtain information on them.
*
* @ignore
* @private
* @param {jQuery} $redLinks
*/
function initRedlinksCta( $redLinks ) {
@ -51,6 +51,7 @@ function initRedlinksCta( $redLinks ) {
* A CtaDrawer should show for anonymous users.
*
* @param {jQuery} $watchstar
* @ignore
*/
function initWatchstarCta( $watchstar ) {
let watchCtaDrawer;

View file

@ -81,6 +81,7 @@ function isAvailable( windowObj, page, userAgent, supportedNamespaces ) {
/**
* onClick handler for button that invokes print function
*
* @private
* @param {HTMLElement} portletItem
* @param {Icon} spinner
* @param {Function} [loadAllImagesInPage]
@ -124,6 +125,7 @@ function onClick( portletItem, spinner, loadAllImagesInPage ) {
* Calling this method has side effects:
* It calls mw.util.addPortletLink and may inject an element into the page.
*
* @ignore
* @param {Page} page
* @param {number[]} supportedNamespaces
* @param {Window} [windowObj] window object

View file

@ -4,7 +4,7 @@ const BODY_CLASS_SCROLL_LOCKED = 'has-drawer--with-scroll-locked';
/**
* Discard a drawer from display on the page.
*
* @ignore
* @private
* @param {Drawer} drawer
*/
function discardDrawer( drawer ) {
@ -23,6 +23,7 @@ function discardDrawer( drawer ) {
/**
* Lock scroll of viewport.
* @ignore
*/
function lockScroll() {
$drawerContainer.addClass( BODY_CLASS_SCROLL_LOCKED );
@ -32,6 +33,7 @@ function lockScroll() {
* @param {Drawer} drawer to display
* @param {Object} options for display
* @param {boolean} options.hideOnScroll whether a scroll closes the drawer
* @ignore
*/
function displayDrawer( drawer, options ) {
$drawerContainer.append( drawer.$el );
@ -43,7 +45,7 @@ function displayDrawer( drawer, options ) {
}
}
module.exports = {
displayDrawer: displayDrawer,
lockScroll: lockScroll,
discardDrawer: discardDrawer
displayDrawer,
lockScroll,
discardDrawer
};

View file

@ -2,6 +2,7 @@ const BODY_NOTIFICATIONS_REVEAL_CLASS = 'navigation-enabled secondary-navigation
/**
* Wire up the main menu
* @ignore
*/
function init() {
@ -15,5 +16,5 @@ function init() {
}
module.exports = {
init: init
init
};

View file

@ -1,4 +1,7 @@
/** @typedef {Object.<string, IssueSummary[]>} IssueSummaryMap */
/**
* @typedef {Object.<string, IssueSummary[]>} IssueSummaryMap
* @ignore
*/
const PageHTMLParser = require( 'mobile.startup' ).PageHTMLParser;
const KEYWORD_ALL_SECTIONS = 'all';
@ -88,7 +91,9 @@ function insertBannersOrNotice( pageHTMLParser, labelText, section, inline, over
/**
* Obtains the list of issues for the current page and provided section
*
* @param {IssueSummaryMap} allIssues mapping section {number} to {IssueSummary}
* @ignore
* @param {IssueSummaryMap} allIssues Mapping section {number}
* to {IssueSummary}
* @param {number|string} section either KEYWORD_ALL_SECTIONS or a number relating to the
* section the issues belong to
* @return {jQuery[]} array of all issues.

View file

@ -6,7 +6,8 @@ const
/**
* IssueList
*
* @class IssueList
* @class
* @ignore
* @extends View
*
* @param {IssueSummary} issues

View file

@ -5,7 +5,8 @@ const
/**
* IssueNotice
*
* @class IssueNotice
* @class
* @ignore
* @extends View
*
* @param {IssueSummary} props

View file

@ -8,7 +8,9 @@ const NS_CATEGORY = namespaceIds.category;
/**
* Overlay for displaying page issues
*
* @param {IssueSummary[]} issues list of page issue summaries for display.
* @ignore
* @param {IssueSummary[]} issues List of page issue
* summaries for display.
* @param {string} section
* @param {number} namespaceID
* @return {Overlay}
@ -35,6 +37,7 @@ function pageIssuesOverlay( issues, section, namespaceID ) {
/**
* Obtain a suitable heading for the issues overlay based on the namespace
*
* @private
* @param {number} namespaceID is the namespace to generate heading for
* @return {string} heading for overlay
*/

View file

@ -1,11 +1,13 @@
/**
* @typedef PageIssue
* @ignore
* @property {string} severity A SEVERITY_LEVEL key.
* @property {boolean} grouped True if part of a group of multiple issues, false if singular.
* @property {Icon} icon
*/
/**
* @typedef {Object} IssueSummary
* @ignore
* @property {PageIssue} issue
* @property {jQuery} $el where the issue was extracted from
* @property {string} iconString a string representation of icon.
@ -104,6 +106,7 @@ const TYPE_SEVERITY = {
/**
* @param {Element} box
* @return {string} An SEVERITY_SELECTOR key.
* @private
*/
function parseSeverity( box ) {
let severity;
@ -119,6 +122,7 @@ function parseSeverity( box ) {
* @param {Element} box
* @param {string} severity An SEVERITY_LEVEL key.
* @return {{name: string, severity: string}} An ICON_NAME.
* @private
*/
function parseType( box, severity ) {
let identifiedType;
@ -136,12 +140,14 @@ function parseType( box, severity ) {
/**
* @param {Element} box
* @return {boolean} True if part of a group of multiple issues, false if singular.
* @private
*/
function parseGroup( box ) {
return !!box.parentNode && GROUPED_PARENT_REGEX.test( box.parentNode.className );
}
/**
* @ignore
* @param {Element} box
* @param {string} severity An SEVERITY_LEVEL key.
* @return {string} A severity or type ISSUE_ICON.
@ -154,6 +160,7 @@ function iconName( box, severity ) {
}
/**
* @ignore
* @param {string[]} severityLevels an array of SEVERITY_KEY values.
* @return {string} The greatest SEVERITY_LEVEL key.
*/
@ -162,6 +169,7 @@ function maxSeverity( severityLevels ) {
}
/**
* @ignore
* @param {Element} box
* @return {PageIssue}
*/
@ -180,6 +188,7 @@ function parse( box ) {
* Extract a summary message from a cleanup template generated element that is
* friendly for mobile display.
*
* @ignore
* @param {Object} $box element to extract the message from
* @return {IssueSummary}
*/

View file

@ -1,4 +1,5 @@
/**
* @private
* @return {boolean}
*/
function reportDisabled() {
@ -7,9 +8,9 @@ function reportDisabled() {
}
/**
* @ignore
* @param {Document} doc
* @return {boolean} whether it was reported as disabled.
* @ignore
*/
function reportIfNightModeWasDisabledOnPage( doc ) {
if ( !doc.classList.contains( 'skin-night-mode-page-disabled' ) ) {

View file

@ -1,6 +1,7 @@
/**
* This setups the Minerva skin.
* It should run without errors even if MobileFrontend is not installed.
* @ignore
*/
const ms = require( 'mobile.startup' );
const reportIfNightModeWasDisabledOnPage = require( './reportIfNightModeWasDisabledOnPage.js' );

View file

@ -7,6 +7,7 @@ const UNWATCHED_ICON_CLASS = 'minerva-icon--star-base20';
* Tweaks the global watchstar handler in core to use the correct classes for Minerva.
*
* @param {jQuery} $icon
* @ignore
*/
function init( $icon ) {
const $watchlink = $icon.find( 'a' );
@ -17,6 +18,7 @@ function init( $icon ) {
* @param {jQuery} $link
* @param {boolean} isWatched
* @param {string} expiry
* @private
*/
function toggleClasses( $link, isWatched, expiry ) {
const $icon = $link.find( '.minerva-icon' );