wikiparser-node 1.21.2 → 1.21.3

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 (70) hide show
  1. package/README.md +3 -5
  2. package/bundle/bundle-es8.min.js +25 -25
  3. package/bundle/bundle-lsp.min.js +26 -26
  4. package/bundle/bundle.min.js +25 -25
  5. package/dist/base.d.mts +6 -1
  6. package/dist/base.d.ts +6 -1
  7. package/dist/index.d.ts +2 -2
  8. package/dist/index.js +10 -1
  9. package/dist/lib/element.js +2 -1
  10. package/dist/lib/lintConfig.d.ts +13 -0
  11. package/dist/lib/lintConfig.js +161 -0
  12. package/dist/lib/lsp.js +6 -4
  13. package/dist/lib/node.js +646 -606
  14. package/dist/lib/text.js +4 -0
  15. package/dist/mixin/attributesParent.d.ts +6 -6
  16. package/dist/mixin/attributesParent.js +4 -4
  17. package/dist/mixin/cached.d.ts +5 -0
  18. package/dist/mixin/cached.js +22 -0
  19. package/dist/mixin/clone.d.ts +5 -0
  20. package/dist/mixin/clone.js +23 -0
  21. package/dist/mixin/hidden.js +68 -18
  22. package/dist/mixin/sol.js +1 -1
  23. package/dist/parser/commentAndExt.js +1 -1
  24. package/dist/parser/html.js +3 -3
  25. package/dist/parser/table.js +2 -2
  26. package/dist/src/arg.js +13 -7
  27. package/dist/src/atom.js +76 -31
  28. package/dist/src/attribute.js +49 -21
  29. package/dist/src/attributes.d.ts +7 -7
  30. package/dist/src/attributes.js +415 -366
  31. package/dist/src/commented.js +81 -35
  32. package/dist/src/converter.js +13 -7
  33. package/dist/src/converterFlags.js +33 -22
  34. package/dist/src/converterRule.js +263 -216
  35. package/dist/src/extLink.js +21 -16
  36. package/dist/src/gallery.js +18 -8
  37. package/dist/src/heading.js +66 -57
  38. package/dist/src/hidden.js +14 -9
  39. package/dist/src/html.js +28 -9
  40. package/dist/src/imageParameter.js +13 -6
  41. package/dist/src/imagemap.js +32 -25
  42. package/dist/src/index.js +53 -44
  43. package/dist/src/link/base.js +13 -8
  44. package/dist/src/link/file.js +401 -354
  45. package/dist/src/link/galleryImage.js +9 -5
  46. package/dist/src/link/index.js +7 -3
  47. package/dist/src/link/redirectTarget.js +7 -3
  48. package/dist/src/magicLink.js +23 -14
  49. package/dist/src/nested.js +122 -74
  50. package/dist/src/nowiki/base.js +5 -2
  51. package/dist/src/nowiki/comment.js +5 -1
  52. package/dist/src/nowiki/index.js +3 -3
  53. package/dist/src/nowiki/quote.js +13 -8
  54. package/dist/src/onlyinclude.js +17 -9
  55. package/dist/src/paramTag/index.js +21 -14
  56. package/dist/src/parameter.js +26 -20
  57. package/dist/src/pre.js +91 -45
  58. package/dist/src/syntax.js +14 -10
  59. package/dist/src/table/index.js +550 -503
  60. package/dist/src/table/td.js +65 -58
  61. package/dist/src/table/trBase.js +179 -129
  62. package/dist/src/tagPair/ext.js +32 -20
  63. package/dist/src/tagPair/include.js +5 -5
  64. package/dist/src/tagPair/translate.js +150 -103
  65. package/dist/src/transclude.js +13 -8
  66. package/dist/util/html.js +46 -41
  67. package/dist/util/lint.js +4 -4
  68. package/dist/util/string.js +13 -7
  69. package/extensions/dist/base.js +2 -2
  70. package/package.json +15 -15
@@ -1,52 +1,98 @@
1
1
  "use strict";
2
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
3
+ var useValue = arguments.length > 2;
4
+ for (var i = 0; i < initializers.length; i++) {
5
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
6
+ }
7
+ return useValue ? value : void 0;
8
+ };
9
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
10
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
11
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
12
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
13
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
14
+ var _, done = false;
15
+ for (var i = decorators.length - 1; i >= 0; i--) {
16
+ var context = {};
17
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
18
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
19
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
20
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
21
+ if (kind === "accessor") {
22
+ if (result === void 0) continue;
23
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
24
+ if (_ = accept(result.get)) descriptor.get = _;
25
+ if (_ = accept(result.set)) descriptor.set = _;
26
+ if (_ = accept(result.init)) initializers.unshift(_);
27
+ }
28
+ else if (_ = accept(result)) {
29
+ if (kind === "field") initializers.unshift(_);
30
+ else descriptor[key] = _;
31
+ }
32
+ }
33
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
34
+ done = true;
35
+ };
2
36
  Object.defineProperty(exports, "__esModule", { value: true });
3
37
  exports.CommentedToken = void 0;
4
38
  const index_1 = require("./index");
5
39
  const comment_1 = require("./nowiki/comment");
6
40
  /* NOT FOR BROWSER */
7
41
  const constants_1 = require("../util/constants");
8
- const html_1 = require("../util/html");
42
+ const clone_1 = require("../mixin/clone");
9
43
  /* NOT FOR BROWSER END */
10
44
  /**
11
45
  * `<hiero>`
12
46
  * @classdesc `{childNodes: (AstText|CommentToken)[]}`
13
47
  */
14
- class CommentedToken extends index_1.Token {
15
- /* NOT FOR BROWSER END */
16
- get type() {
17
- return 'ext-inner';
18
- }
19
- /** @class */
20
- constructor(wikitext, config, accum = []) {
21
- super(undefined, config, accum, {
22
- AstText: ':', CommentToken: ':',
23
- });
24
- if (wikitext) {
25
- let i = wikitext.indexOf('<!--'), j = i !== -1 && wikitext.indexOf('-->', i + 4), lastIndex = 0;
26
- while (j !== false && j !== -1) {
27
- if (i > lastIndex) {
28
- this.insertAt(wikitext.slice(lastIndex, i));
48
+ let CommentedToken = (() => {
49
+ let _classSuper = index_1.Token;
50
+ let _instanceExtraInitializers = [];
51
+ let _cloneNode_decorators;
52
+ return class CommentedToken extends _classSuper {
53
+ static {
54
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
55
+ _cloneNode_decorators = [clone_1.clone];
56
+ __esDecorate(this, null, _cloneNode_decorators, { kind: "method", name: "cloneNode", static: false, private: false, access: { has: obj => "cloneNode" in obj, get: obj => obj.cloneNode }, metadata: _metadata }, null, _instanceExtraInitializers);
57
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
58
+ }
59
+ /* NOT FOR BROWSER END */
60
+ get type() {
61
+ return 'ext-inner';
62
+ }
63
+ /** @class */
64
+ constructor(wikitext, config, accum = []) {
65
+ super(undefined, config, accum, {
66
+ AstText: ':', CommentToken: ':',
67
+ });
68
+ __runInitializers(this, _instanceExtraInitializers);
69
+ if (wikitext) {
70
+ let i = wikitext.indexOf('<!--'), j = i !== -1 && wikitext.indexOf('-->', i + 4), lastIndex = 0;
71
+ while (j !== false && j !== -1) {
72
+ if (i > lastIndex) {
73
+ this.insertAt(wikitext.slice(lastIndex, i));
74
+ }
75
+ // @ts-expect-error abstract class
76
+ this.insertAt(new comment_1.CommentToken(wikitext.slice(i + 4, j), true, config, accum));
77
+ lastIndex = j + 3;
78
+ i = wikitext.indexOf('<!--', lastIndex);
79
+ j = i !== -1 && wikitext.indexOf('-->', i + 4);
80
+ }
81
+ if (lastIndex < wikitext.length) {
82
+ this.insertAt(wikitext.slice(lastIndex));
29
83
  }
30
- // @ts-expect-error abstract class
31
- this.insertAt(new comment_1.CommentToken(wikitext.slice(i + 4, j), true, config, accum));
32
- lastIndex = j + 3;
33
- i = wikitext.indexOf('<!--', lastIndex);
34
- j = i !== -1 && wikitext.indexOf('-->', i + 4);
35
- }
36
- if (lastIndex < wikitext.length) {
37
- this.insertAt(wikitext.slice(lastIndex));
38
84
  }
39
85
  }
40
- }
41
- /** @private */
42
- lint(start = this.getAbsoluteIndex()) {
43
- return super.lint(start, /<\s*(?:\/\s*)?(hiero)\b/giu);
44
- }
45
- /* NOT FOR BROWSER */
46
- cloneNode() {
47
- // @ts-expect-error abstract class
48
- return (0, html_1.cloneNode)(this, () => new CommentedToken(undefined, this.getAttribute('config')));
49
- }
50
- }
86
+ /** @private */
87
+ lint(start = this.getAbsoluteIndex()) {
88
+ return super.lint(start, /<\s*(?:\/\s*)?(hiero)\b/giu);
89
+ }
90
+ /* NOT FOR BROWSER */
91
+ cloneNode() {
92
+ // @ts-expect-error abstract class
93
+ return new CommentedToken(undefined, this.getAttribute('config'));
94
+ }
95
+ };
96
+ })();
51
97
  exports.CommentedToken = CommentedToken;
52
98
  constants_1.classes['CommentedToken'] = __filename;
@@ -1,4 +1,11 @@
1
1
  "use strict";
2
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
3
+ var useValue = arguments.length > 2;
4
+ for (var i = 0; i < initializers.length; i++) {
5
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
6
+ }
7
+ return useValue ? value : void 0;
8
+ };
2
9
  var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
3
10
  function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
4
11
  var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
@@ -26,13 +33,6 @@ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn,
26
33
  if (target) Object.defineProperty(target, contextIn.name, descriptor);
27
34
  done = true;
28
35
  };
29
- var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
30
- var useValue = arguments.length > 2;
31
- for (var i = 0; i < initializers.length; i++) {
32
- value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
33
- }
34
- return useValue ? value : void 0;
35
- };
36
36
  Object.defineProperty(exports, "__esModule", { value: true });
37
37
  exports.ConverterToken = void 0;
38
38
  const string_1 = require("../util/string");
@@ -45,6 +45,7 @@ const html_1 = require("../util/html");
45
45
  const debug_1 = require("../util/debug");
46
46
  const constants_1 = require("../util/constants");
47
47
  const noEscape_1 = require("../mixin/noEscape");
48
+ const cached_1 = require("../mixin/cached");
48
49
  /* NOT FOR BROWSER END */
49
50
  /**
50
51
  * language conversion
@@ -58,10 +59,14 @@ let ConverterToken = (() => {
58
59
  let _classExtraInitializers = [];
59
60
  let _classThis;
60
61
  let _classSuper = index_1.Token;
62
+ let _instanceExtraInitializers = [];
63
+ let _toHtmlInternal_decorators;
61
64
  var ConverterToken = class extends _classSuper {
62
65
  static { _classThis = this; }
63
66
  static {
64
67
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
68
+ _toHtmlInternal_decorators = [(0, cached_1.cached)()];
69
+ __esDecorate(this, null, _toHtmlInternal_decorators, { kind: "method", name: "toHtmlInternal", static: false, private: false, access: { has: obj => "toHtmlInternal" in obj, get: obj => obj.toHtmlInternal }, metadata: _metadata }, null, _instanceExtraInitializers);
65
70
  __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
66
71
  ConverterToken = _classThis = _classDescriptor.value;
67
72
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
@@ -90,6 +95,7 @@ let ConverterToken = (() => {
90
95
  */
91
96
  constructor(flags, rules, config, accum = []) {
92
97
  super(undefined, config, accum);
98
+ __runInitializers(this, _instanceExtraInitializers);
93
99
  // @ts-expect-error abstract class
94
100
  this.insertAt(new converterFlags_1.ConverterFlagsToken(flags, config, accum));
95
101
  const [firstRule] = rules, hasColon = firstRule.includes(':'),
@@ -1,4 +1,11 @@
1
1
  "use strict";
2
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
3
+ var useValue = arguments.length > 2;
4
+ for (var i = 0; i < initializers.length; i++) {
5
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
6
+ }
7
+ return useValue ? value : void 0;
8
+ };
2
9
  var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
3
10
  function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
4
11
  var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
@@ -26,24 +33,21 @@ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn,
26
33
  if (target) Object.defineProperty(target, contextIn.name, descriptor);
27
34
  done = true;
28
35
  };
29
- var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
30
- var useValue = arguments.length > 2;
31
- for (var i = 0; i < initializers.length; i++) {
32
- value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
33
- }
34
- return useValue ? value : void 0;
36
+ var __importDefault = (this && this.__importDefault) || function (mod) {
37
+ return (mod && mod.__esModule) ? mod : { "default": mod };
35
38
  };
36
39
  Object.defineProperty(exports, "__esModule", { value: true });
37
40
  exports.ConverterFlagsToken = void 0;
38
41
  const lint_1 = require("../util/lint");
39
42
  const rect_1 = require("../lib/rect");
40
43
  const gapped_1 = require("../mixin/gapped");
41
- const index_1 = require("./index");
44
+ const index_1 = __importDefault(require("../index"));
45
+ const index_2 = require("./index");
42
46
  const atom_1 = require("./atom");
43
47
  /* NOT FOR BROWSER */
44
48
  const debug_1 = require("../util/debug");
45
49
  const constants_1 = require("../util/constants");
46
- const html_1 = require("../util/html");
50
+ const clone_1 = require("../mixin/clone");
47
51
  /* NOT FOR BROWSER END */
48
52
  const definedFlags = new Set(['A', 'T', 'R', 'D', '-', 'H', 'N']);
49
53
  /**
@@ -57,17 +61,21 @@ let ConverterFlagsToken = (() => {
57
61
  let _classDescriptor;
58
62
  let _classExtraInitializers = [];
59
63
  let _classThis;
60
- let _classSuper = index_1.Token;
64
+ let _classSuper = index_2.Token;
65
+ let _instanceExtraInitializers = [];
66
+ let _cloneNode_decorators;
61
67
  var ConverterFlagsToken = class extends _classSuper {
62
68
  static { _classThis = this; }
63
69
  static {
64
70
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
71
+ _cloneNode_decorators = [clone_1.clone];
72
+ __esDecorate(this, null, _cloneNode_decorators, { kind: "method", name: "cloneNode", static: false, private: false, access: { has: obj => "cloneNode" in obj, get: obj => obj.cloneNode }, metadata: _metadata }, null, _instanceExtraInitializers);
65
73
  __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
66
74
  ConverterFlagsToken = _classThis = _classDescriptor.value;
67
75
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
68
76
  __runInitializers(_classThis, _classExtraInitializers);
69
77
  }
70
- #flags;
78
+ #flags = __runInitializers(this, _instanceExtraInitializers);
71
79
  /* NOT FOR BROWSER END */
72
80
  get type() {
73
81
  return 'converter-flags';
@@ -146,18 +154,21 @@ let ConverterFlagsToken = (() => {
146
154
  if (variantFlags.size === knownFlagCount || validFlags.size === knownFlagCount) {
147
155
  return errors;
148
156
  }
149
- const rect = new rect_1.BoundingRect(this, start);
150
- for (let i = 0; i < this.length; i++) {
151
- const child = this.childNodes[i], flag = child.text().trim();
152
- if (this.isInvalidFlag(flag, variantFlags, unknownFlags, validFlags)) {
153
- const e = (0, lint_1.generateForChild)(child, rect, 'no-ignored', 'invalid conversion flag');
154
- if (variantFlags.size === 0 && definedFlags.has(flag.toUpperCase())) {
155
- e.fix = { desc: 'uppercase', range: [e.startIndex, e.endIndex], text: flag.toUpperCase() };
156
- }
157
- else {
158
- e.suggestions = [{ desc: 'remove', range: [e.startIndex - (i && 1), e.endIndex], text: '' }];
157
+ const rule = 'no-ignored', s = index_1.default.lintConfig.getSeverity(rule, 'conversionFlag');
158
+ if (s) {
159
+ const rect = new rect_1.BoundingRect(this, start);
160
+ for (let i = 0; i < this.length; i++) {
161
+ const child = this.childNodes[i], flag = child.text().trim();
162
+ if (this.isInvalidFlag(flag, variantFlags, unknownFlags, validFlags)) {
163
+ const e = (0, lint_1.generateForChild)(child, rect, rule, 'invalid conversion flag', s);
164
+ if (variantFlags.size === 0 && definedFlags.has(flag.toUpperCase())) {
165
+ e.fix = { desc: 'uppercase', range: [e.startIndex, e.endIndex], text: flag.toUpperCase() };
166
+ }
167
+ else {
168
+ e.suggestions = [{ desc: 'remove', range: [e.startIndex - (i && 1), e.endIndex], text: '' }];
169
+ }
170
+ errors.push(e);
159
171
  }
160
- errors.push(e);
161
172
  }
162
173
  }
163
174
  return errors;
@@ -169,7 +180,7 @@ let ConverterFlagsToken = (() => {
169
180
  /* NOT FOR BROWSER */
170
181
  cloneNode() {
171
182
  // @ts-expect-error abstract class
172
- return (0, html_1.cloneNode)(this, () => new ConverterFlagsToken([], this.getAttribute('config')));
183
+ return new ConverterFlagsToken([], this.getAttribute('config'));
173
184
  }
174
185
  /**
175
186
  * @override