@markuplint/ml-core 3.13.0 → 4.0.0-alpha.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 (95) hide show
  1. package/lib/configs.browser.js +1 -5
  2. package/lib/configs.js +33 -30
  3. package/lib/convert-ruleset.d.ts +1 -1
  4. package/lib/convert-ruleset.js +3 -8
  5. package/lib/debug.js +9 -14
  6. package/lib/index.d.ts +12 -12
  7. package/lib/index.js +13 -29
  8. package/lib/ml-core.d.ts +2 -2
  9. package/lib/ml-core.js +60 -66
  10. package/lib/ml-dom/helper/accname.d.ts +1 -1
  11. package/lib/ml-dom/helper/accname.js +9 -16
  12. package/lib/ml-dom/helper/create-node.d.ts +2 -2
  13. package/lib/ml-dom/helper/create-node.js +11 -15
  14. package/lib/ml-dom/helper/debug.d.ts +1 -1
  15. package/lib/ml-dom/helper/debug.js +2 -7
  16. package/lib/ml-dom/helper/getIndent.d.ts +2 -2
  17. package/lib/ml-dom/helper/getIndent.js +15 -19
  18. package/lib/ml-dom/helper/walkers.d.ts +1 -1
  19. package/lib/ml-dom/helper/walkers.js +2 -7
  20. package/lib/ml-dom/index.d.ts +9 -9
  21. package/lib/ml-dom/index.js +1 -5
  22. package/lib/ml-dom/manipulations/child-node-methods.d.ts +2 -2
  23. package/lib/ml-dom/manipulations/child-node-methods.js +13 -25
  24. package/lib/ml-dom/manipulations/get-children.d.ts +2 -2
  25. package/lib/ml-dom/manipulations/get-children.js +3 -7
  26. package/lib/ml-dom/node/attr.d.ts +5 -5
  27. package/lib/ml-dom/node/attr.js +28 -33
  28. package/lib/ml-dom/node/block.d.ts +4 -4
  29. package/lib/ml-dom/node/block.js +7 -11
  30. package/lib/ml-dom/node/character-data.d.ts +2 -2
  31. package/lib/ml-dom/node/character-data.js +11 -16
  32. package/lib/ml-dom/node/child-node.d.ts +6 -6
  33. package/lib/ml-dom/node/child-node.js +1 -5
  34. package/lib/ml-dom/node/comment.d.ts +2 -2
  35. package/lib/ml-dom/node/comment.js +2 -6
  36. package/lib/ml-dom/node/document-fragment.d.ts +2 -2
  37. package/lib/ml-dom/node/document-fragment.js +4 -9
  38. package/lib/ml-dom/node/document-type.d.ts +4 -4
  39. package/lib/ml-dom/node/document-type.js +7 -11
  40. package/lib/ml-dom/node/document.d.ts +13 -13
  41. package/lib/ml-dom/node/document.js +234 -242
  42. package/lib/ml-dom/node/dom-token-list.d.ts +1 -1
  43. package/lib/ml-dom/node/dom-token-list.js +25 -31
  44. package/lib/ml-dom/node/element.d.ts +8 -8
  45. package/lib/ml-dom/node/element.js +283 -301
  46. package/lib/ml-dom/node/named-node-map.d.ts +1 -1
  47. package/lib/ml-dom/node/named-node-map.js +10 -18
  48. package/lib/ml-dom/node/node-list.d.ts +2 -2
  49. package/lib/ml-dom/node/node-list.js +6 -14
  50. package/lib/ml-dom/node/node-store.d.ts +2 -2
  51. package/lib/ml-dom/node/node-store.js +9 -12
  52. package/lib/ml-dom/node/node.d.ts +8 -8
  53. package/lib/ml-dom/node/node.js +58 -66
  54. package/lib/ml-dom/node/parent-node.d.ts +2 -2
  55. package/lib/ml-dom/node/parent-node.js +22 -29
  56. package/lib/ml-dom/node/rule-mapper.d.ts +2 -2
  57. package/lib/ml-dom/node/rule-mapper.js +11 -16
  58. package/lib/ml-dom/node/text.d.ts +2 -2
  59. package/lib/ml-dom/node/text.js +6 -11
  60. package/lib/ml-dom/node/types.d.ts +10 -10
  61. package/lib/ml-dom/node/types.js +1 -2
  62. package/lib/ml-dom/node/unexpected-call-error.js +1 -4
  63. package/lib/ml-dom/token/token.js +19 -23
  64. package/lib/ml-rule/create-rule.d.ts +1 -1
  65. package/lib/ml-rule/create-rule.js +1 -5
  66. package/lib/ml-rule/create-test-rule.d.ts +2 -2
  67. package/lib/ml-rule/create-test-rule.js +3 -7
  68. package/lib/ml-rule/index.d.ts +3 -3
  69. package/lib/ml-rule/index.js +3 -6
  70. package/lib/ml-rule/ml-rule-context.d.ts +2 -2
  71. package/lib/ml-rule/ml-rule-context.js +7 -11
  72. package/lib/ml-rule/ml-rule.d.ts +3 -3
  73. package/lib/ml-rule/ml-rule.js +23 -30
  74. package/lib/ml-rule/types.d.ts +2 -2
  75. package/lib/ml-rule/types.js +1 -2
  76. package/lib/plugin/index.d.ts +2 -2
  77. package/lib/plugin/index.js +2 -5
  78. package/lib/plugin/plugin.d.ts +1 -1
  79. package/lib/plugin/plugin.js +1 -5
  80. package/lib/plugin/types.d.ts +1 -1
  81. package/lib/plugin/types.js +1 -2
  82. package/lib/ruleset/index.js +4 -8
  83. package/lib/test/index.d.ts +4 -4
  84. package/lib/test/index.js +13 -23
  85. package/lib/types.d.ts +2 -2
  86. package/lib/types.js +1 -2
  87. package/lib/utils/get-location-from-chars.js +1 -5
  88. package/lib/utils/index.d.ts +1 -1
  89. package/lib/utils/index.js +1 -5
  90. package/lib/utils/string-splice.js +1 -5
  91. package/package.json +19 -14
  92. package/test/ml-dom/helper/accname.spec.js +0 -85
  93. package/test/ml-dom/helper/create-node.spec.js +0 -18
  94. package/test/ml-dom/index.spec.js +0 -680
  95. package/test/ml-dom/ml-rule/create-rule.spec.js +0 -108
@@ -1,4 +1,4 @@
1
- import type { MLAttr } from './attr';
1
+ import type { MLAttr } from './attr.js';
2
2
  import type { RuleInfo } from '@markuplint/ml-config';
3
3
  type Scope = {
4
4
  raw: string;
@@ -1,11 +1,8 @@
1
- "use strict";
2
1
  var _MLDomTokenList_origin, _MLDomTokenList_ownerAttrs, _MLDomTokenList_set;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.MLDomTokenList = void 0;
5
- const tslib_1 = require("tslib");
6
- const parser_utils_1 = require("@markuplint/parser-utils");
7
- const unexpected_call_error_1 = tslib_1.__importDefault(require("./unexpected-call-error"));
8
- class MLDomTokenList extends Array {
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ import { getCol, getLine } from '@markuplint/parser-utils';
4
+ import UnexpectedCallError from './unexpected-call-error.js';
5
+ export class MLDomTokenList extends Array {
9
6
  constructor(tokens,
10
7
  // eslint-disable-next-line @typescript-eslint/prefer-readonly-parameter-types
11
8
  ownerAttrs) {
@@ -21,22 +18,22 @@ class MLDomTokenList extends Array {
21
18
  */
22
19
  _MLDomTokenList_ownerAttrs.set(this, void 0);
23
20
  _MLDomTokenList_set.set(this, void 0);
24
- tslib_1.__classPrivateFieldSet(this, _MLDomTokenList_origin, tokens, "f");
25
- tslib_1.__classPrivateFieldSet(this, _MLDomTokenList_ownerAttrs, ownerAttrs, "f");
26
- tslib_1.__classPrivateFieldSet(this, _MLDomTokenList_set, new Set(list), "f");
21
+ __classPrivateFieldSet(this, _MLDomTokenList_origin, tokens, "f");
22
+ __classPrivateFieldSet(this, _MLDomTokenList_ownerAttrs, ownerAttrs, "f");
23
+ __classPrivateFieldSet(this, _MLDomTokenList_set, new Set(list), "f");
27
24
  }
28
25
  get value() {
29
26
  return this.join(' ');
30
27
  }
31
28
  add(...tokens) {
32
29
  for (const token of tokens) {
33
- if (tslib_1.__classPrivateFieldGet(this, _MLDomTokenList_set, "f").has(token)) {
30
+ if (__classPrivateFieldGet(this, _MLDomTokenList_set, "f").has(token)) {
34
31
  continue;
35
32
  }
36
- tslib_1.__classPrivateFieldGet(this, _MLDomTokenList_set, "f").add(token);
33
+ __classPrivateFieldGet(this, _MLDomTokenList_set, "f").add(token);
37
34
  this.push(token);
38
35
  }
39
- tslib_1.__classPrivateFieldSet(this, _MLDomTokenList_origin, tslib_1.__classPrivateFieldGet(this, _MLDomTokenList_origin, "f") + tokens.join(' '), "f");
36
+ __classPrivateFieldSet(this, _MLDomTokenList_origin, __classPrivateFieldGet(this, _MLDomTokenList_origin, "f") + tokens.join(' '), "f");
40
37
  }
41
38
  /**
42
39
  * @implements `@markuplint/ml-core` API: `MLDomTokenList`
@@ -67,14 +64,13 @@ class MLDomTokenList extends Array {
67
64
  return locs;
68
65
  }
69
66
  contains(token) {
70
- return tslib_1.__classPrivateFieldGet(this, _MLDomTokenList_set, "f").has(token);
67
+ return __classPrivateFieldGet(this, _MLDomTokenList_set, "f").has(token);
71
68
  }
72
69
  forEach(callbackfn, thisArg) {
73
- this.forEach.bind(this)((v, i) => callbackfn(v, i, thisArg !== null && thisArg !== void 0 ? thisArg : this));
70
+ this.forEach.bind(this)((v, i) => callbackfn(v, i, thisArg ?? this));
74
71
  }
75
72
  item(index) {
76
- var _a;
77
- return (_a = this[index]) !== null && _a !== void 0 ? _a : null;
73
+ return this[index] ?? null;
78
74
  }
79
75
  /**
80
76
  * @implements `@markuplint/ml-core` API: `MLDomTokenList`
@@ -93,41 +89,40 @@ class MLDomTokenList extends Array {
93
89
  };
94
90
  }
95
91
  remove(...tokens) {
96
- throw new unexpected_call_error_1.default('Not supported "remove" method');
92
+ throw new UnexpectedCallError('Not supported "remove" method');
97
93
  }
98
94
  replace(token, newToken) {
99
- throw new unexpected_call_error_1.default('Not supported "replace" method');
95
+ throw new UnexpectedCallError('Not supported "replace" method');
100
96
  }
101
97
  supports(token) {
102
- throw new unexpected_call_error_1.default('Not supported "supports" method');
98
+ throw new UnexpectedCallError('Not supported "supports" method');
103
99
  }
104
100
  toString() {
105
101
  return this.value;
106
102
  }
107
103
  toggle(token, force) {
108
- throw new unexpected_call_error_1.default('Not supported "toggle" method');
104
+ throw new UnexpectedCallError('Not supported "toggle" method');
109
105
  }
110
106
  _pick(token, _offset = 0) {
111
- var _a, _b, _c, _d, _e, _f, _g;
112
- token = (_a = token.trim().split(/\s+/g)[0]) !== null && _a !== void 0 ? _a : '';
107
+ token = token.trim().split(/\s+/g)[0] ?? '';
113
108
  if (!token) {
114
109
  return null;
115
110
  }
116
- for (const ownerAttr of tslib_1.__classPrivateFieldGet(this, _MLDomTokenList_ownerAttrs, "f")) {
111
+ for (const ownerAttr of __classPrivateFieldGet(this, _MLDomTokenList_ownerAttrs, "f")) {
117
112
  if (ownerAttr.isDynamicValue) {
118
113
  continue;
119
114
  }
120
- const startOffset = tslib_1.__classPrivateFieldGet(this, _MLDomTokenList_origin, "f").indexOf(token, _offset);
115
+ const startOffset = __classPrivateFieldGet(this, _MLDomTokenList_origin, "f").indexOf(token, _offset);
121
116
  if (startOffset === -1) {
122
117
  continue;
123
118
  }
124
- const startLine = (0, parser_utils_1.getLine)(tslib_1.__classPrivateFieldGet(this, _MLDomTokenList_origin, "f"), startOffset);
125
- const startCol = (0, parser_utils_1.getCol)(tslib_1.__classPrivateFieldGet(this, _MLDomTokenList_origin, "f"), startOffset);
119
+ const startLine = getLine(__classPrivateFieldGet(this, _MLDomTokenList_origin, "f"), startOffset);
120
+ const startCol = getCol(__classPrivateFieldGet(this, _MLDomTokenList_origin, "f"), startOffset);
126
121
  return {
127
122
  raw: token,
128
- startOffset: ((_c = (_b = ownerAttr.valueNode) === null || _b === void 0 ? void 0 : _b.startOffset) !== null && _c !== void 0 ? _c : 0) + startOffset,
129
- startLine: ((_e = (_d = ownerAttr.valueNode) === null || _d === void 0 ? void 0 : _d.startLine) !== null && _e !== void 0 ? _e : 0) + (startLine - 1),
130
- startCol: ((_g = (_f = ownerAttr.valueNode) === null || _f === void 0 ? void 0 : _f.startCol) !== null && _g !== void 0 ? _g : 0) + (startCol - 1),
123
+ startOffset: (ownerAttr.valueNode?.startOffset ?? 0) + startOffset,
124
+ startLine: (ownerAttr.valueNode?.startLine ?? 0) + (startLine - 1),
125
+ startCol: (ownerAttr.valueNode?.startCol ?? 0) + (startCol - 1),
131
126
  rule: ownerAttr.rule,
132
127
  _searchedIndex: startOffset,
133
128
  };
@@ -135,5 +130,4 @@ class MLDomTokenList extends Array {
135
130
  return null;
136
131
  }
137
132
  }
138
- exports.MLDomTokenList = MLDomTokenList;
139
133
  _MLDomTokenList_origin = new WeakMap(), _MLDomTokenList_ownerAttrs = new WeakMap(), _MLDomTokenList_set = new WeakMap();
@@ -1,14 +1,14 @@
1
- import type { MLDocument } from './document';
2
- import type { MLNamedNodeMap } from './named-node-map';
3
- import type { MLText } from './text';
4
- import type { ElementNodeType, PretenderContext } from './types';
1
+ import type { MLDocument } from './document.js';
2
+ import type { MLNamedNodeMap } from './named-node-map.js';
3
+ import type { MLText } from './text.js';
4
+ import type { ElementNodeType, PretenderContext } from './types.js';
5
5
  import type { ElementType, MLASTElement, NamespaceURI } from '@markuplint/ml-ast';
6
6
  import type { PlainData, Pretender, RuleConfigValue, RuleInfo } from '@markuplint/ml-config';
7
7
  import type { ARIAVersion } from '@markuplint/ml-spec';
8
- import { MLToken } from '../token/token';
9
- import { MLAttr } from './attr';
10
- import { MLDomTokenList } from './dom-token-list';
11
- import { MLParentNode } from './parent-node';
8
+ import { MLToken } from '../token/token.js';
9
+ import { MLAttr } from './attr.js';
10
+ import { MLDomTokenList } from './dom-token-list.js';
11
+ import { MLParentNode } from './parent-node.js';
12
12
  export declare class MLElement<T extends RuleConfigValue, O extends PlainData = undefined> extends MLParentNode<T, O, MLASTElement> implements Element, HTMLOrSVGElement, HTMLElement {
13
13
  #private;
14
14
  readonly closeTag: MLToken | null;