wikilint 2.4.0 → 2.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/config/default.json +18 -3
  2. package/config/enwiki.json +411 -0
  3. package/dist/index.js +6 -7
  4. package/dist/lib/element.d.ts +1 -0
  5. package/dist/lib/element.js +2 -2
  6. package/dist/lib/node.d.ts +1 -0
  7. package/dist/lib/text.d.ts +1 -0
  8. package/dist/lib/text.js +81 -38
  9. package/dist/lib/title.d.ts +1 -1
  10. package/dist/lib/title.js +14 -3
  11. package/dist/parser/braces.js +5 -2
  12. package/dist/parser/commentAndExt.js +7 -2
  13. package/dist/parser/converter.js +3 -2
  14. package/dist/parser/externalLinks.js +3 -2
  15. package/dist/parser/hrAndDoubleUnderscore.js +5 -2
  16. package/dist/parser/html.js +6 -3
  17. package/dist/parser/links.js +6 -5
  18. package/dist/parser/list.js +4 -2
  19. package/dist/parser/magicLinks.js +3 -2
  20. package/dist/parser/quotes.js +4 -3
  21. package/dist/parser/table.js +11 -7
  22. package/dist/src/arg.d.ts +2 -2
  23. package/dist/src/arg.js +7 -7
  24. package/dist/src/atom.d.ts +1 -1
  25. package/dist/src/atom.js +4 -4
  26. package/dist/src/attribute.d.ts +3 -2
  27. package/dist/src/attribute.js +41 -12
  28. package/dist/src/attributes.d.ts +2 -2
  29. package/dist/src/attributes.js +8 -6
  30. package/dist/src/converter.d.ts +2 -2
  31. package/dist/src/converter.js +14 -8
  32. package/dist/src/converterFlags.d.ts +3 -2
  33. package/dist/src/converterFlags.js +7 -7
  34. package/dist/src/converterRule.d.ts +2 -2
  35. package/dist/src/converterRule.js +7 -7
  36. package/dist/src/extLink.d.ts +6 -2
  37. package/dist/src/extLink.js +18 -8
  38. package/dist/src/gallery.d.ts +3 -2
  39. package/dist/src/gallery.js +10 -7
  40. package/dist/src/heading.d.ts +3 -2
  41. package/dist/src/heading.js +10 -10
  42. package/dist/src/hidden.d.ts +0 -2
  43. package/dist/src/html.d.ts +3 -2
  44. package/dist/src/html.js +10 -10
  45. package/dist/src/imageParameter.d.ts +3 -2
  46. package/dist/src/imageParameter.js +8 -10
  47. package/dist/src/imagemap.d.ts +2 -2
  48. package/dist/src/imagemap.js +10 -6
  49. package/dist/src/imagemapLink.d.ts +2 -2
  50. package/dist/src/imagemapLink.js +11 -7
  51. package/dist/src/index.d.ts +2 -1
  52. package/dist/src/index.js +15 -15
  53. package/dist/src/link/base.d.ts +2 -1
  54. package/dist/src/link/base.js +10 -11
  55. package/dist/src/link/category.d.ts +1 -1
  56. package/dist/src/link/category.js +0 -1
  57. package/dist/src/link/file.d.ts +3 -2
  58. package/dist/src/link/file.js +6 -5
  59. package/dist/src/link/galleryImage.d.ts +7 -4
  60. package/dist/src/link/galleryImage.js +4 -5
  61. package/dist/src/link/index.d.ts +1 -1
  62. package/dist/src/link/index.js +0 -1
  63. package/dist/src/magicLink.d.ts +2 -2
  64. package/dist/src/magicLink.js +6 -6
  65. package/dist/src/nested.d.ts +2 -2
  66. package/dist/src/nested.js +9 -6
  67. package/dist/src/nowiki/base.d.ts +1 -1
  68. package/dist/src/nowiki/base.js +4 -4
  69. package/dist/src/nowiki/comment.d.ts +2 -4
  70. package/dist/src/nowiki/comment.js +4 -5
  71. package/dist/src/nowiki/dd.d.ts +1 -1
  72. package/dist/src/nowiki/dd.js +0 -1
  73. package/dist/src/nowiki/doubleUnderscore.d.ts +2 -4
  74. package/dist/src/nowiki/doubleUnderscore.js +3 -4
  75. package/dist/src/nowiki/hr.d.ts +1 -1
  76. package/dist/src/nowiki/hr.js +0 -1
  77. package/dist/src/nowiki/index.d.ts +1 -1
  78. package/dist/src/nowiki/index.js +2 -3
  79. package/dist/src/nowiki/list.d.ts +1 -1
  80. package/dist/src/nowiki/list.js +0 -1
  81. package/dist/src/nowiki/listBase.d.ts +1 -1
  82. package/dist/src/nowiki/listBase.js +0 -1
  83. package/dist/src/nowiki/noinclude.d.ts +1 -3
  84. package/dist/src/nowiki/noinclude.js +0 -1
  85. package/dist/src/nowiki/quote.d.ts +1 -1
  86. package/dist/src/nowiki/quote.js +3 -4
  87. package/dist/src/onlyinclude.js +1 -1
  88. package/dist/src/paramTag/index.d.ts +2 -2
  89. package/dist/src/paramTag/index.js +7 -7
  90. package/dist/src/paramTag/inputbox.d.ts +2 -2
  91. package/dist/src/paramTag/inputbox.js +4 -5
  92. package/dist/src/parameter.d.ts +2 -2
  93. package/dist/src/parameter.js +9 -13
  94. package/dist/src/pre.d.ts +2 -2
  95. package/dist/src/pre.js +6 -4
  96. package/dist/src/syntax.d.ts +1 -1
  97. package/dist/src/syntax.js +4 -4
  98. package/dist/src/table/base.d.ts +1 -1
  99. package/dist/src/table/base.js +7 -5
  100. package/dist/src/table/index.d.ts +2 -2
  101. package/dist/src/table/index.js +3 -4
  102. package/dist/src/table/td.d.ts +3 -2
  103. package/dist/src/table/td.js +6 -7
  104. package/dist/src/table/tr.d.ts +2 -2
  105. package/dist/src/table/tr.js +2 -3
  106. package/dist/src/table/trBase.js +1 -0
  107. package/dist/src/tagPair/ext.d.ts +2 -2
  108. package/dist/src/tagPair/ext.js +24 -8
  109. package/dist/src/tagPair/include.d.ts +2 -4
  110. package/dist/src/tagPair/include.js +5 -5
  111. package/dist/src/tagPair/index.d.ts +4 -1
  112. package/dist/src/tagPair/index.js +12 -7
  113. package/dist/src/transclude.d.ts +3 -2
  114. package/dist/src/transclude.js +8 -7
  115. package/dist/util/diff.js +11 -1
  116. package/dist/util/lint.js +2 -2
  117. package/dist/util/string.js +3 -1
  118. package/i18n/zh-hans.json +4 -3
  119. package/i18n/zh-hant.json +5 -4
  120. package/package.json +14 -13
  121. package/dist/bin/declaration.js +0 -27
package/i18n/zh-hans.json CHANGED
@@ -10,6 +10,7 @@
10
10
  "containing invalid attribute": "包含无效属性",
11
11
  "content to be moved out from the table": "将被移出表格的内容",
12
12
  "duplicated $1 attribute": "重复的$1属性",
13
+ "duplicated category": "重复的分类",
13
14
  "duplicated image $1 parameter": "重复的图片$1参数",
14
15
  "duplicated parameter": "重复参数",
15
16
  "extension tag in HTML tag attributes": "HTML标签属性中的扩展标签",
@@ -27,13 +28,12 @@
27
28
  "invalid gallery image": "无效的图库图片",
28
29
  "invalid gallery image parameter": "无效的图库图片参数",
29
30
  "invalid link in <imagemap>": "无效的<imagemap>链接",
30
- "invalid parameter of $1": "$1的无效参数",
31
+ "invalid parameter of <$1>": "<$1>的无效参数",
31
32
  "invalid self-closing tag": "无效自封闭标签",
32
- "invisible content inside triple brackets": "三重括号内的不可见部分",
33
+ "invisible content inside triple braces": "三重括号内的不可见部分",
33
34
  "italic": "斜体单引号",
34
35
  "lonely \"$1\"": "孤立的\"$1\"",
35
36
  "missing module function": "缺少模块函数",
36
- "missing module name": "缺少模块名称",
37
37
  "nonzero tabindex": "不为0的tabindex",
38
38
  "nothing should be in <$1>": "<$1>标签内不应有任何内容",
39
39
  "obsolete attribute": "过时的属性",
@@ -51,5 +51,6 @@
51
51
  "unmatched closing tag": "未匹配的闭合标签",
52
52
  "unnecessary URL encoding in an internal link": "内链中不必要的URL编码",
53
53
  "useless fragment": "多余的fragment",
54
+ "variable anchor in a section header": "段落标题中可变的锚点",
54
55
  "vertical-alignment": "垂直对齐"
55
56
  }
package/i18n/zh-hant.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "<imagemap> without an image": "缺少圖片的<imagemap>",
3
3
  "$1 in URL": "URL中的$1",
4
- "additional \"|\" in a table cell": "表哥單元格中多餘的\"|\"",
4
+ "additional \"|\" in a table cell": "表格單元格中多餘的\"|\"",
5
5
  "additional \"|\" in the link text": "連結文本中多餘的\"|\"",
6
6
  "attributes of a closing tag": "位於閉合標籤的屬性",
7
7
  "bold apostrophes": "粗體撇號",
@@ -10,6 +10,7 @@
10
10
  "containing invalid attribute": "包含無效屬性",
11
11
  "content to be moved out from the table": "將被移出表格的內容",
12
12
  "duplicated $1 attribute": "重複的$1屬性",
13
+ "duplicated category": "重複的分類",
13
14
  "duplicated image $1 parameter": "重複的圖片$1參數",
14
15
  "duplicated parameter": "重複參數",
15
16
  "extension tag in HTML tag attributes": "HTML標籤屬性中的擴展標籤",
@@ -27,13 +28,12 @@
27
28
  "invalid gallery image": "無效的圖庫圖片",
28
29
  "invalid gallery image parameter": "無效的圖庫圖片參數",
29
30
  "invalid link in <imagemap>": "無效的<imagemap>連結",
30
- "invalid parameter of $1": "$1的無效參數",
31
+ "invalid parameter of <$1>": "<$1>的無效參數",
31
32
  "invalid self-closing tag": "無效自封閉標籤",
32
- "invisible content inside triple brackets": "三重括號內的不可見部分",
33
+ "invisible content inside triple braces": "三重括號內的不可見部分",
33
34
  "italic apostrophes": "斜體撇號",
34
35
  "lonely \"$1\"": "孤立的\"$1\"",
35
36
  "missing module function": "缺少模組函式",
36
- "missing module name": "缺少模組名稱",
37
37
  "nonzero tabindex": "不為0的tabindex",
38
38
  "nothing should be in <$1>": "<$1>標籤內不應有任何內容",
39
39
  "obsolete attribute": "過時的屬性",
@@ -51,5 +51,6 @@
51
51
  "unmatched closing tag": "未匹配的閉合標籤",
52
52
  "unnecessary URL encoding in an internal link": "內部連結中不必要的URL編碼",
53
53
  "useless fragment": "多餘的fragment",
54
+ "variable anchor in a section header": "段落標題中可變的錨點",
54
55
  "vertical-alignment": "垂直對齊"
55
56
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wikilint",
3
- "version": "2.4.0",
3
+ "version": "2.4.2",
4
4
  "description": "A Node.js linter for MediaWiki markup",
5
5
  "keywords": [
6
6
  "mediawiki",
@@ -18,9 +18,10 @@
18
18
  "/errors/README",
19
19
  "/config/",
20
20
  "/i18n/",
21
- "/bin/cli",
21
+ "/bin/cli.js",
22
22
  "/dist/",
23
- "!/dist/test/"
23
+ "!/dist/test/",
24
+ "!/dist/bin/declaration.js"
24
25
  ],
25
26
  "bin": {
26
27
  "wikilint": "./bin/cli.js"
@@ -31,7 +32,7 @@
31
32
  "url": "git+https://github.com/bhsd-harry/wikiparser-node.git"
32
33
  },
33
34
  "scripts": {
34
- "declaration": "grep -rl --include='*.d.ts' '@private' dist/ | xargs gsed -i -E '/^\\s+\\/\\*\\* @private/,+1d'; grep -rl --include='*.d.ts' '#private' dist/ | xargs gsed -i '/#private/d'; node ./dist/bin/declaration.js",
35
+ "declaration": "grep -rl --include='*.d.ts' '@private' dist/ | xargs bash sed.sh -i -E '/^\\s+\\/\\*\\* @private/,+1d'; node ./dist/bin/declaration.js",
35
36
  "prepublishOnly": "npm run build && rm dist/internal.js dist/base.js dist/[bmpu]*/*.d.ts",
36
37
  "build": "bash build.sh",
37
38
  "diff": "git diff --ignore-all-space --color-moved",
@@ -45,22 +46,22 @@
45
46
  },
46
47
  "devDependencies": {
47
48
  "@cypress/request": "^3.0.1",
48
- "@stylistic/eslint-plugin": "^1.5.3",
49
- "@types/node": "^20.9.0",
49
+ "@stylistic/eslint-plugin": "^1.5.4",
50
+ "@types/node": "^20.11.6",
50
51
  "@types/request": "^2.48.12",
51
- "@typescript-eslint/eslint-plugin": "^6.12.0",
52
- "@typescript-eslint/parser": "^6.12.0",
52
+ "@typescript-eslint/eslint-plugin": "^6.19.1",
53
+ "@typescript-eslint/parser": "^6.19.1",
53
54
  "ajv-cli": "^5.0.0",
54
55
  "eslint": "^8.56.0",
55
- "eslint-plugin-es-x": "^7.3.0",
56
+ "eslint-plugin-es-x": "^7.5.0",
56
57
  "eslint-plugin-eslint-comments": "^3.2.0",
57
- "eslint-plugin-jsdoc": "^47.0.2",
58
+ "eslint-plugin-jsdoc": "^48.0.2",
58
59
  "eslint-plugin-json-es": "^1.5.7",
59
- "eslint-plugin-n": "^16.3.1",
60
+ "eslint-plugin-n": "^16.6.2",
60
61
  "eslint-plugin-promise": "^6.1.1",
61
- "eslint-plugin-regexp": "^2.1.1",
62
+ "eslint-plugin-regexp": "^2.2.0",
62
63
  "eslint-plugin-unicorn": "^50.0.1",
63
- "typescript": "^5.1.6"
64
+ "typescript": "^5.3.3"
64
65
  },
65
66
  "engines": {
66
67
  "node": "^20.9.0"
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const fs = require("fs");
4
- const path = require("path");
5
- // eslint-disable-next-line @stylistic/max-len
6
- const regex = /declare [^\n]+?: \(+abstract new [^\n]+\n(.+)\}\) & typeof (\w+\.)?(\w+)\b.+(export [^\n]+ extends )\w+\b(.+?\n)/isu;
7
- for (const file of fs.readdirSync('dist/src/', { recursive: true })) {
8
- if (!file.endsWith('.d.ts')) {
9
- continue;
10
- }
11
- const fullPath = path.join('dist/src', file), content = fs.readFileSync(fullPath, 'utf8');
12
- if (content.includes('(abstract new ')) {
13
- // console.log(file);
14
- fs.writeFileSync(fullPath, content.replace(regex, (_, mixins, parser, base, exp, impl) => {
15
- const str = `${exp}${base}${impl}${mixins.split(/\n\}\) & \(+abstract new .+/u)
16
- .map(mixin => mixin.slice(0, mixin.indexOf('toString'))
17
- .replace(/^[ \t]+(?:$|readonly .+\n)/gmu, ''))
18
- .join('\n')}`, regex2 = new RegExp(`import \\{\\s*${base}\\b.+?;\n`, 'su');
19
- let imports = '';
20
- if (parser && !regex2.test(content)) {
21
- const original = fs.readFileSync(path.join('src', file.replace(/d\.ts$/u, 'ts')), 'utf8');
22
- [imports] = regex2.exec(original);
23
- }
24
- return imports + str;
25
- }));
26
- }
27
- }