@markuplint/html-parser 3.0.0-dev.25 → 3.0.0-dev.300

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.
@@ -1,61 +1,59 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const parser_utils_1 = require("@markuplint/parser-utils");
1
+ import { tokenizer, uuid } from '@markuplint/parser-utils';
4
2
  const reAttrsInStartTag =
5
3
  // eslint-disable-next-line no-control-regex
6
4
  /(\s*)([^\x00-\x1f\x7f-\x9f "'>/=]+)(?:(\s*)(=)(\s*)(?:(?:"([^"]*)")|(?:'([^']*)')|([^\s]*)))?/;
7
- function attrTokenizer(raw, line, col, startOffset) {
5
+ export default function attrTokenizer(raw, line, col, startOffset) {
8
6
  const attrMatchedMap = raw.match(reAttrsInStartTag);
9
7
  if (!attrMatchedMap) {
10
8
  throw new SyntaxError('Illegal attribute token');
11
9
  }
12
- const spacesBeforeAttrString = attrMatchedMap[1];
13
- const nameChars = attrMatchedMap[2];
14
- const spacesBeforeEqualChars = attrMatchedMap[3] || '';
15
- const equalChars = attrMatchedMap[4] || null;
16
- const spacesAfterEqualChars = attrMatchedMap[5] || '';
10
+ const spacesBeforeAttrString = attrMatchedMap[1] ?? '';
11
+ const nameChars = attrMatchedMap[2] ?? '';
12
+ const spacesBeforeEqualChars = attrMatchedMap[3] ?? '';
13
+ const equalChars = attrMatchedMap[4] ?? null;
14
+ const spacesAfterEqualChars = attrMatchedMap[5] ?? '';
17
15
  const quoteChars = attrMatchedMap[6] != null ? '"' : attrMatchedMap[7] != null ? "'" : null;
18
- const valueChars = attrMatchedMap[6] || attrMatchedMap[7] || attrMatchedMap[8] || (quoteChars ? '' : null);
16
+ const valueChars = attrMatchedMap[6] ?? attrMatchedMap[7] ?? attrMatchedMap[8] ?? (quoteChars ? '' : null);
19
17
  let offset = startOffset;
20
- const spacesBeforeName = (0, parser_utils_1.tokenizer)(spacesBeforeAttrString, line, col, offset);
18
+ const spacesBeforeName = tokenizer(spacesBeforeAttrString, line, col, offset);
21
19
  line = spacesBeforeName.endLine;
22
20
  col = spacesBeforeName.endCol;
23
21
  offset = spacesBeforeName.endOffset;
24
- const name = (0, parser_utils_1.tokenizer)(nameChars, line, col, offset);
22
+ const name = tokenizer(nameChars, line, col, offset);
25
23
  line = name.endLine;
26
24
  col = name.endCol;
27
25
  offset = name.endOffset;
28
- const spacesBeforeEqual = (0, parser_utils_1.tokenizer)(spacesBeforeEqualChars, line, col, offset);
26
+ const spacesBeforeEqual = tokenizer(spacesBeforeEqualChars, line, col, offset);
29
27
  line = spacesBeforeEqual.endLine;
30
28
  col = spacesBeforeEqual.endCol;
31
29
  offset = spacesBeforeEqual.endOffset;
32
- const equal = (0, parser_utils_1.tokenizer)(equalChars, line, col, offset);
30
+ const equal = tokenizer(equalChars, line, col, offset);
33
31
  line = equal.endLine;
34
32
  col = equal.endCol;
35
33
  offset = equal.endOffset;
36
- const spacesAfterEqual = (0, parser_utils_1.tokenizer)(spacesAfterEqualChars, line, col, offset);
34
+ const spacesAfterEqual = tokenizer(spacesAfterEqualChars, line, col, offset);
37
35
  line = spacesAfterEqual.endLine;
38
36
  col = spacesAfterEqual.endCol;
39
37
  offset = spacesAfterEqual.endOffset;
40
- const startQuote = (0, parser_utils_1.tokenizer)(quoteChars, line, col, offset);
38
+ const startQuote = tokenizer(quoteChars, line, col, offset);
41
39
  line = startQuote.endLine;
42
40
  col = startQuote.endCol;
43
41
  offset = startQuote.endOffset;
44
- const value = (0, parser_utils_1.tokenizer)(valueChars, line, col, offset);
42
+ const value = tokenizer(valueChars, line, col, offset);
45
43
  line = value.endLine;
46
44
  col = value.endCol;
47
45
  offset = value.endOffset;
48
- const endQuote = (0, parser_utils_1.tokenizer)(quoteChars, line, col, offset);
49
- const attrToken = (0, parser_utils_1.tokenizer)(nameChars +
46
+ const endQuote = tokenizer(quoteChars, line, col, offset);
47
+ const attrToken = tokenizer(nameChars +
50
48
  spacesBeforeEqualChars +
51
- (equalChars || '') +
49
+ (equalChars ?? '') +
52
50
  spacesAfterEqualChars +
53
- (quoteChars || '') +
54
- (valueChars || '') +
55
- (quoteChars || ''), name.startLine, name.startCol, name.startOffset);
51
+ (quoteChars ?? '') +
52
+ (valueChars ?? '') +
53
+ (quoteChars ?? ''), name.startLine, name.startCol, name.startOffset);
56
54
  return {
57
55
  type: 'html-attr',
58
- uuid: (0, parser_utils_1.uuid)(),
56
+ uuid: uuid(),
59
57
  raw: attrToken.raw,
60
58
  startOffset: attrToken.startOffset,
61
59
  endOffset: attrToken.endOffset,
@@ -80,4 +78,3 @@ function attrTokenizer(raw, line, col, startOffset) {
80
78
  isGhost: false,
81
79
  };
82
80
  }
83
- exports.default = attrTokenizer;
@@ -1,19 +1,18 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createTree = void 0;
4
- const tslib_1 = require("tslib");
5
- const parser_utils_1 = require("@markuplint/parser-utils");
6
- const parse5_1 = require("parse5");
7
- const parse_raw_tag_1 = tslib_1.__importDefault(require("./parse-raw-tag"));
8
- const P5_OPTIONS = { sourceCodeLocationInfo: true };
9
- function createTree(rawCode, isFragment, offsetOffset, offsetLine, offsetColumn) {
10
- const doc = isFragment
11
- ? (0, parse5_1.parseFragment)(rawCode, P5_OPTIONS)
12
- : (0, parse5_1.parse)(rawCode, P5_OPTIONS);
1
+ // @ts-nocheck TODO: Parse5(https://github.com/inikulin/parse5) supports to expose type definitions as submodules.
2
+ import { detectElementType, getEndCol, getEndLine, sliceFragment, uuid } from '@markuplint/parser-utils';
3
+ import { parse, parseFragment } from 'parse5';
4
+ import parseRawTag from './parse-raw-tag.js';
5
+ const P5_OPTIONS = {
6
+ scriptingEnabled: false,
7
+ sourceCodeLocationInfo: true,
8
+ };
9
+ export function createTree(rawCode, isFragment, offsetOffset, offsetLine, offsetColumn) {
10
+ const doc = isFragment ? parseFragment(rawCode, P5_OPTIONS) : parse(rawCode, P5_OPTIONS);
13
11
  return createTreeRecursive(doc, null, rawCode, offsetOffset, offsetLine, offsetColumn);
14
12
  }
15
- exports.createTree = createTree;
16
- function createTreeRecursive(rootNode, parentNode, rawHtml, offsetOffset, offsetLine, offsetColumn) {
13
+ function createTreeRecursive(rootNode,
14
+ // eslint-disable-next-line @typescript-eslint/prefer-readonly-parameter-types
15
+ parentNode, rawHtml, offsetOffset, offsetLine, offsetColumn) {
17
16
  const nodeList = [];
18
17
  const childNodes = getChildNodes(rootNode);
19
18
  let prevNode = null;
@@ -33,11 +32,15 @@ function createTreeRecursive(rootNode, parentNode, rawHtml, offsetOffset, offset
33
32
  }
34
33
  return nodeList;
35
34
  }
36
- function nodeize(originNode, prevNode, parentNode, rawHtml, offsetOffset, offsetLine, offsetColumn) {
35
+ function nodeize(originNode,
36
+ // eslint-disable-next-line @typescript-eslint/prefer-readonly-parameter-types
37
+ prevNode,
38
+ // eslint-disable-next-line @typescript-eslint/prefer-readonly-parameter-types
39
+ parentNode, rawHtml, offsetOffset, offsetLine, offsetColumn) {
37
40
  const nextNode = null;
38
41
  const location = getLocation(originNode);
39
42
  if (!location) {
40
- const prevToken = prevNode || parentNode;
43
+ const prevToken = prevNode ?? parentNode;
41
44
  const startOffset = prevToken ? prevToken.endOffset : 0;
42
45
  const endOffset = prevToken ? prevToken.endOffset : 0;
43
46
  const startLine = prevToken ? prevToken.endLine : 0;
@@ -45,7 +48,7 @@ function nodeize(originNode, prevNode, parentNode, rawHtml, offsetOffset, offset
45
48
  const startCol = prevToken ? prevToken.endCol : 0;
46
49
  const endCol = prevToken ? prevToken.endCol : 0;
47
50
  const node = {
48
- uuid: (0, parser_utils_1.uuid)(),
51
+ uuid: uuid(),
49
52
  raw: '',
50
53
  startOffset: startOffset + offsetOffset,
51
54
  endOffset: endOffset + offsetOffset,
@@ -72,18 +75,18 @@ function nodeize(originNode, prevNode, parentNode, rawHtml, offsetOffset, offset
72
75
  return node;
73
76
  }
74
77
  const { startOffset, endOffset, startLine, endLine, startCol, endCol } = location;
75
- const raw = rawHtml.slice(startOffset, endOffset || startOffset);
78
+ const raw = rawHtml.slice(startOffset, endOffset ?? startOffset);
76
79
  switch (originNode.nodeName) {
77
80
  case '#documentType': {
78
81
  return {
79
- uuid: (0, parser_utils_1.uuid)(),
82
+ uuid: uuid(),
80
83
  raw,
81
84
  // @ts-ignore
82
- name: originNode.name || '',
85
+ name: originNode.name ?? '',
83
86
  // @ts-ignore
84
- publicId: originNode.publicId || '',
87
+ publicId: originNode.publicId ?? '',
85
88
  // @ts-ignore
86
- systemId: originNode.systemId || '',
89
+ systemId: originNode.systemId ?? '',
87
90
  startOffset: startOffset + offsetOffset,
88
91
  endOffset: endOffset + offsetOffset,
89
92
  startLine: startLine + offsetLine,
@@ -102,7 +105,7 @@ function nodeize(originNode, prevNode, parentNode, rawHtml, offsetOffset, offset
102
105
  }
103
106
  case '#text': {
104
107
  const node = {
105
- uuid: (0, parser_utils_1.uuid)(),
108
+ uuid: uuid(),
106
109
  raw,
107
110
  startOffset: startOffset + offsetOffset,
108
111
  endOffset: endOffset + offsetOffset,
@@ -122,7 +125,7 @@ function nodeize(originNode, prevNode, parentNode, rawHtml, offsetOffset, offset
122
125
  }
123
126
  case '#comment': {
124
127
  return {
125
- uuid: (0, parser_utils_1.uuid)(),
128
+ uuid: uuid(),
126
129
  raw,
127
130
  startOffset: startOffset + offsetOffset,
128
131
  endOffset: endOffset + offsetOffset,
@@ -143,8 +146,8 @@ function nodeize(originNode, prevNode, parentNode, rawHtml, offsetOffset, offset
143
146
  const tagLoc = 'startTag' in location ? location.startTag : null;
144
147
  const startTagRaw = tagLoc
145
148
  ? rawHtml.slice(tagLoc.startOffset, tagLoc.endOffset)
146
- : rawHtml.slice(startOffset, endOffset || startOffset);
147
- const tagTokens = (0, parse_raw_tag_1.default)(startTagRaw, startLine, startCol, startOffset, offsetOffset, offsetLine, offsetColumn);
149
+ : rawHtml.slice(startOffset, endOffset ?? startOffset);
150
+ const tagTokens = parseRawTag(startTagRaw, startLine, startCol, startOffset, offsetOffset, offsetLine, offsetColumn);
148
151
  const tagName = tagTokens.tagName;
149
152
  let endTag = null;
150
153
  let endTagLoc = 'endTag' in location ? location.endTag : null;
@@ -159,16 +162,16 @@ function nodeize(originNode, prevNode, parentNode, rawHtml, offsetOffset, offset
159
162
  const endTagMatched = belowRawHTMLFromStartTagEnd.match(new RegExp(`^</\\s*${tagName}[^>]*>`, 'm'));
160
163
  const endTag = endTagMatched && endTagMatched[0];
161
164
  if (endTag) {
162
- endTagLoc = (0, parser_utils_1.sliceFragment)(rawHtml, location.endOffset, location.endOffset + endTag.length);
165
+ endTagLoc = sliceFragment(rawHtml, location.endOffset, location.endOffset + endTag.length);
163
166
  }
164
167
  }
165
168
  if (endTagLoc) {
166
169
  const { startOffset, endOffset, startLine, endLine, startCol, endCol } = endTagLoc;
167
170
  const endTagRaw = rawHtml.slice(startOffset, endOffset);
168
- const endTagTokens = (0, parse_raw_tag_1.default)(endTagRaw, startLine, startCol, startOffset, offsetOffset, offsetLine, offsetColumn);
171
+ const endTagTokens = parseRawTag(endTagRaw, startLine, startCol, startOffset, offsetOffset, offsetLine, offsetColumn);
169
172
  const endTagName = endTagTokens.tagName;
170
173
  endTag = {
171
- uuid: (0, parser_utils_1.uuid)(),
174
+ uuid: uuid(),
172
175
  raw: endTagRaw,
173
176
  startOffset: startOffset + offsetOffset,
174
177
  endOffset: endOffset + offsetOffset,
@@ -191,10 +194,10 @@ function nodeize(originNode, prevNode, parentNode, rawHtml, offsetOffset, offset
191
194
  };
192
195
  }
193
196
  const _endOffset = startOffset + startTagRaw.length;
194
- const _endLine = (0, parser_utils_1.getEndLine)(startTagRaw, startLine);
195
- const _endCol = (0, parser_utils_1.getEndCol)(startTagRaw, startCol);
197
+ const _endLine = getEndLine(startTagRaw, startLine);
198
+ const _endCol = getEndCol(startTagRaw, startCol);
196
199
  const startTag = {
197
- uuid: (0, parser_utils_1.uuid)(),
200
+ uuid: uuid(),
198
201
  raw: startTagRaw,
199
202
  startOffset: startOffset + offsetOffset,
200
203
  endOffset: _endOffset + offsetOffset,
@@ -205,7 +208,7 @@ function nodeize(originNode, prevNode, parentNode, rawHtml, offsetOffset, offset
205
208
  nodeName: tagName,
206
209
  type: 'starttag',
207
210
  namespace: getNamespace(originNode),
208
- elementType: (0, parser_utils_1.detectElementType)(tagName),
211
+ elementType: detectElementType(tagName),
209
212
  attributes: tagTokens.attrs,
210
213
  hasSpreadAttr: false,
211
214
  parentNode,
@@ -231,29 +234,9 @@ function nodeize(originNode, prevNode, parentNode, rawHtml, offsetOffset, offset
231
234
  * getChildNodes
232
235
  *
233
236
  * - If node has "content" property then parse as document fragment.
234
- * - If node is <noscript> then that childNodes is a TextNode. But parse as document fragment it for disabled script.
235
237
  */
236
238
  function getChildNodes(rootNode) {
237
- if (rootNode.nodeName === 'noscript') {
238
- const textNode = rootNode.childNodes[0];
239
- if (!textNode || textNode.nodeName !== '#text') {
240
- return [];
241
- }
242
- // @ts-ignore
243
- const html = textNode.value;
244
- // @ts-ignore
245
- const { startOffset, startLine, startCol } = textNode.sourceCodeLocation;
246
- const breakCount = startLine - 1;
247
- const indentWidth = startCol - 1;
248
- const offsetSpaces = ' '.repeat(startOffset - Math.max(breakCount, 0) - Math.max(indentWidth, 0)) +
249
- '\n'.repeat(breakCount) +
250
- ' '.repeat(indentWidth);
251
- const fragment = (0, parse5_1.parseFragment)(`${offsetSpaces}${html}`, P5_OPTIONS);
252
- const childNodes = fragment.childNodes.slice(offsetSpaces ? 1 : 0);
253
- // const childNodes = ('childNodes' in _childNodes && _childNodes.childNodes) || [];
254
- return childNodes;
255
- }
256
- return rootNode.content ? rootNode.content.childNodes : rootNode.childNodes || [];
239
+ return rootNode.content ? rootNode.content.childNodes : rootNode.childNodes ?? [];
257
240
  }
258
241
  function hasLocation(node) {
259
242
  return 'sourceCodeLocation' in node;
@@ -1,15 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getNamespace = void 0;
4
- const parse5_1 = require("parse5");
1
+ import { parse, parseFragment } from 'parse5';
5
2
  const DEFAULT_NAMESPACE = 'http://www.w3.org/1999/xhtml';
6
- function getNamespace(tagName, parentNamespace = DEFAULT_NAMESPACE) {
3
+ export function getNamespace(tagName, parentNamespace = DEFAULT_NAMESPACE) {
7
4
  switch (parentNamespace) {
8
5
  case 'http://www.w3.org/2000/svg':
9
6
  case 'http://www.w3.org/1998/Math/MathML': {
10
7
  const parent = parentNamespace === 'http://www.w3.org/2000/svg' ? 'svg' : 'math';
11
8
  const tag = `<${parent}><${tagName}></${parent}>`;
12
- const frag = (0, parse5_1.parseFragment)(tag);
9
+ const frag = parseFragment(tag);
13
10
  const node = frag.childNodes[0];
14
11
  if (!node) {
15
12
  return DEFAULT_NAMESPACE;
@@ -21,15 +18,14 @@ function getNamespace(tagName, parentNamespace = DEFAULT_NAMESPACE) {
21
18
  }
22
19
  }
23
20
  const tag = `<${tagName}>`;
24
- const frag = (0, parse5_1.parseFragment)(tag);
21
+ const frag = parseFragment(tag);
25
22
  let node = frag.childNodes[0];
26
23
  if (!node) {
27
- const doc = (0, parse5_1.parse)(tag);
24
+ const doc = parse(tag);
28
25
  node = doc.childNodes[0];
29
26
  }
30
- if ('namespaceURI' in node) {
27
+ if (node && 'namespaceURI' in node) {
31
28
  return node.namespaceURI;
32
29
  }
33
30
  return DEFAULT_NAMESPACE;
34
31
  }
35
- exports.getNamespace = getNamespace;
package/lib/index.d.ts CHANGED
@@ -1,7 +1,6 @@
1
- export { default as isDocumentFragment } from './is-document-fragment';
2
- export { parse } from './parse';
3
- export { flattenNodes } from './flatten-nodes';
4
- export { removeDeprecatedNode } from './remove-deprecated-node';
5
- export { getNamespace } from './get-namespace';
6
- export { default as parseRawTag } from './parse-raw-tag';
7
- export { default as attrTokenizer } from './attr-tokenizer';
1
+ export { default as attrTokenizer } from './attr-tokenizer.js';
2
+ export { default as isDocumentFragment } from './is-document-fragment.js';
3
+ export { default as parseRawTag } from './parse-raw-tag.js';
4
+ export { getNamespace } from './get-namespace.js';
5
+ export { parse } from './parse.js';
6
+ export { createTree } from './create-tree.js';
package/lib/index.js CHANGED
@@ -1,20 +1,6 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.attrTokenizer = exports.parseRawTag = exports.getNamespace = exports.removeDeprecatedNode = exports.flattenNodes = exports.parse = exports.isDocumentFragment = void 0;
7
- var is_document_fragment_1 = require("./is-document-fragment");
8
- Object.defineProperty(exports, "isDocumentFragment", { enumerable: true, get: function () { return __importDefault(is_document_fragment_1).default; } });
9
- var parse_1 = require("./parse");
10
- Object.defineProperty(exports, "parse", { enumerable: true, get: function () { return parse_1.parse; } });
11
- var flatten_nodes_1 = require("./flatten-nodes");
12
- Object.defineProperty(exports, "flattenNodes", { enumerable: true, get: function () { return flatten_nodes_1.flattenNodes; } });
13
- var remove_deprecated_node_1 = require("./remove-deprecated-node");
14
- Object.defineProperty(exports, "removeDeprecatedNode", { enumerable: true, get: function () { return remove_deprecated_node_1.removeDeprecatedNode; } });
15
- var get_namespace_1 = require("./get-namespace");
16
- Object.defineProperty(exports, "getNamespace", { enumerable: true, get: function () { return get_namespace_1.getNamespace; } });
17
- var parse_raw_tag_1 = require("./parse-raw-tag");
18
- Object.defineProperty(exports, "parseRawTag", { enumerable: true, get: function () { return __importDefault(parse_raw_tag_1).default; } });
19
- var attr_tokenizer_1 = require("./attr-tokenizer");
20
- Object.defineProperty(exports, "attrTokenizer", { enumerable: true, get: function () { return __importDefault(attr_tokenizer_1).default; } });
1
+ export { default as attrTokenizer } from './attr-tokenizer.js';
2
+ export { default as isDocumentFragment } from './is-document-fragment.js';
3
+ export { default as parseRawTag } from './parse-raw-tag.js';
4
+ export { getNamespace } from './get-namespace.js';
5
+ export { parse } from './parse.js';
6
+ export { createTree } from './create-tree.js';
@@ -1,6 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function isDocumentFragment(html) {
1
+ export default function isDocumentFragment(html) {
4
2
  return !/^\s*(<!doctype html(?:\s*.+)?>|<html(?:\s|>))/im.test(html);
5
3
  }
6
- exports.default = isDocumentFragment;
@@ -1,12 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.optimizeStartsHeadTagOrBodyTagResume = exports.optimizeStartsHeadTagOrBodyTagSetup = exports.isStartsHeadTagOrBodyTag = void 0;
4
1
  const UNDUPLICATED_CHAR = '\uFFFD';
5
- function isStartsHeadTagOrBodyTag(rawCode) {
2
+ export function isStartsHeadTagOrBodyTag(rawCode) {
6
3
  return /^\s*<(?:head|body)>/i.test(rawCode);
7
4
  }
8
- exports.isStartsHeadTagOrBodyTag = isStartsHeadTagOrBodyTag;
9
- function optimizeStartsHeadTagOrBodyTagSetup(rawCode) {
5
+ export function optimizeStartsHeadTagOrBodyTagSetup(rawCode) {
10
6
  const heads = [];
11
7
  const bodies = [];
12
8
  const code = rawCode.replace(
@@ -33,8 +29,11 @@ function optimizeStartsHeadTagOrBodyTagSetup(rawCode) {
33
29
  bodies,
34
30
  };
35
31
  }
36
- exports.optimizeStartsHeadTagOrBodyTagSetup = optimizeStartsHeadTagOrBodyTagSetup;
37
- function optimizeStartsHeadTagOrBodyTagResume(nodeList, replacements) {
32
+ export function optimizeStartsHeadTagOrBodyTagResume(
33
+ // eslint-disable-next-line @typescript-eslint/prefer-readonly-parameter-types
34
+ nodeList,
35
+ // eslint-disable-next-line @typescript-eslint/prefer-readonly-parameter-types
36
+ replacements) {
38
37
  nodeList.forEach(node => {
39
38
  if (!node.nodeName.startsWith(`x-${UNDUPLICATED_CHAR}`)) {
40
39
  return;
@@ -50,4 +49,3 @@ function optimizeStartsHeadTagOrBodyTagResume(nodeList, replacements) {
50
49
  }
51
50
  });
52
51
  }
53
- exports.optimizeStartsHeadTagOrBodyTagResume = optimizeStartsHeadTagOrBodyTagResume;
@@ -1,25 +1,21 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const parser_utils_1 = require("@markuplint/parser-utils");
5
- const attr_tokenizer_1 = tslib_1.__importDefault(require("./attr-tokenizer"));
6
- const const_1 = require("./const");
1
+ import { reTag, reTagName, isPotentialCustomElementName, tokenizer } from '@markuplint/parser-utils';
2
+ import attrTokenizer from './attr-tokenizer.js';
7
3
  // eslint-disable-next-line no-control-regex
8
4
  const reAttrsInStartTag = /\s*[^\x00-\x1f\x7f-\x9f "'>/=]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^\s]*))?/;
9
5
  const reEndTokens = /(\s*\/)?(\s*)>$/;
10
- function parseRawTag(raw, startLine, startCol, startOffset, offsetOffset = 0, offsetLine = 0, offsetColumn = 0) {
6
+ export default function parseRawTag(raw, startLine, startCol, startOffset, offsetOffset = 0, offsetLine = 0, offsetColumn = 0) {
11
7
  let offset = startOffset + offsetOffset;
12
8
  let line = startLine + offsetLine;
13
9
  let col = startCol + (startLine === 1 ? offsetColumn : 0);
14
- const matches = raw.match(const_1.reTag);
15
- if (!matches) {
10
+ const matches = raw.match(reTag);
11
+ const tagWithAttrs = matches?.[1];
12
+ if (!tagWithAttrs) {
16
13
  throw new SyntaxError(`Invalid tag syntax: "${raw}"`);
17
14
  }
18
- const tagWithAttrs = matches[1];
19
15
  // eslint-disable-next-line no-control-regex
20
16
  const tagNameSplitted = tagWithAttrs.split(/[\u0000\u0009\u000A\u000C\u0020/>]/);
21
17
  const tagName = tagNameSplitted[0] || tagNameSplitted[1];
22
- if (!tagName || (!const_1.reTagName.test(tagName) && !(0, parser_utils_1.isPotentialCustomElementName)(tagName))) {
18
+ if (!tagName || (!reTagName.test(tagName) && !isPotentialCustomElementName(tagName))) {
23
19
  throw new SyntaxError(`Invalid tag name: "${tagName}" in <${tagWithAttrs}>`);
24
20
  }
25
21
  const tagStartPos = tagWithAttrs.indexOf(tagName);
@@ -32,7 +28,7 @@ function parseRawTag(raw, startLine, startCol, startOffset, offsetOffset = 0, of
32
28
  const attrMatchedMap = rawAttrs.match(reAttrsInStartTag);
33
29
  if (attrMatchedMap && attrMatchedMap[0]) {
34
30
  const rawAttr = attrMatchedMap[0];
35
- const attr = (0, attr_tokenizer_1.default)(rawAttr, line, col, offset);
31
+ const attr = attrTokenizer(rawAttr, line, col, offset);
36
32
  line = attr.endLine;
37
33
  col = attr.endCol;
38
34
  offset = attr.endOffset;
@@ -41,11 +37,11 @@ function parseRawTag(raw, startLine, startCol, startOffset, offsetOffset = 0, of
41
37
  }
42
38
  }
43
39
  const endTokens = reEndTokens.exec(raw);
44
- const selfClosingSolidus = (0, parser_utils_1.tokenizer)(endTokens && endTokens[1], line, col, offset);
40
+ const selfClosingSolidus = tokenizer(endTokens?.[1] ?? '', line, col, offset);
45
41
  line = selfClosingSolidus.endLine;
46
42
  col = selfClosingSolidus.endCol;
47
43
  offset = selfClosingSolidus.endOffset;
48
- const endSpace = (0, parser_utils_1.tokenizer)(endTokens && endTokens[2], line, col, offset);
44
+ const endSpace = tokenizer(endTokens?.[2] ?? '', line, col, offset);
49
45
  return {
50
46
  tagName,
51
47
  attrs,
@@ -53,4 +49,3 @@ function parseRawTag(raw, startLine, startCol, startOffset, offsetOffset = 0, of
53
49
  endSpace,
54
50
  };
55
51
  }
56
- exports.default = parseRawTag;
package/lib/parse.js CHANGED
@@ -1,30 +1,23 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parse = void 0;
4
- const tslib_1 = require("tslib");
5
- const parser_utils_1 = require("@markuplint/parser-utils");
6
- const create_tree_1 = require("./create-tree");
7
- const flatten_nodes_1 = require("./flatten-nodes");
8
- const is_document_fragment_1 = tslib_1.__importDefault(require("./is-document-fragment"));
9
- const optimize_starts_head_or_body_1 = require("./optimize-starts-head-or-body");
10
- const parse = (rawCode, options) => {
11
- var _a, _b, _c;
12
- if (options === null || options === void 0 ? void 0 : options.ignoreFrontMatter) {
13
- rawCode = (0, parser_utils_1.ignoreFrontMatter)(rawCode);
1
+ import { ignoreFrontMatter, flattenNodes } from '@markuplint/parser-utils';
2
+ import { createTree } from './create-tree.js';
3
+ import isDocumentFragment from './is-document-fragment.js';
4
+ import { isStartsHeadTagOrBodyTag, optimizeStartsHeadTagOrBodyTagResume, optimizeStartsHeadTagOrBodyTagSetup, } from './optimize-starts-head-or-body.js';
5
+ export const parse = (rawCode, options) => {
6
+ if (options?.ignoreFrontMatter) {
7
+ rawCode = ignoreFrontMatter(rawCode);
14
8
  }
15
- const isFragment = (0, is_document_fragment_1.default)(rawCode);
16
- const data = (0, optimize_starts_head_or_body_1.isStartsHeadTagOrBodyTag)(rawCode) ? (0, optimize_starts_head_or_body_1.optimizeStartsHeadTagOrBodyTagSetup)(rawCode) : null;
17
- if (data === null || data === void 0 ? void 0 : data.code) {
9
+ const isFragment = isDocumentFragment(rawCode);
10
+ const data = isStartsHeadTagOrBodyTag(rawCode) ? optimizeStartsHeadTagOrBodyTagSetup(rawCode) : null;
11
+ if (data?.code) {
18
12
  rawCode = data.code;
19
13
  }
20
- const nodeTree = (0, create_tree_1.createTree)(rawCode, isFragment, (_a = options === null || options === void 0 ? void 0 : options.offsetOffset) !== null && _a !== void 0 ? _a : 0, (_b = options === null || options === void 0 ? void 0 : options.offsetLine) !== null && _b !== void 0 ? _b : 0, (_c = options === null || options === void 0 ? void 0 : options.offsetColumn) !== null && _c !== void 0 ? _c : 0);
21
- const nodeList = (0, flatten_nodes_1.flattenNodes)(nodeTree, rawCode);
14
+ const nodeTree = createTree(rawCode, isFragment, options?.offsetOffset ?? 0, options?.offsetLine ?? 0, options?.offsetColumn ?? 0);
15
+ const nodeList = flattenNodes(nodeTree, rawCode);
22
16
  if (data) {
23
- (0, optimize_starts_head_or_body_1.optimizeStartsHeadTagOrBodyTagResume)(nodeList, data);
17
+ optimizeStartsHeadTagOrBodyTagResume(nodeList, data);
24
18
  }
25
19
  return {
26
20
  nodeList,
27
21
  isFragment,
28
22
  };
29
23
  };
30
- exports.parse = parse;
package/package.json CHANGED
@@ -1,26 +1,35 @@
1
1
  {
2
2
  "name": "@markuplint/html-parser",
3
- "version": "3.0.0-dev.25+a27e39aa",
3
+ "version": "3.0.0-dev.300+7ab32aca",
4
4
  "description": "HTML parser for markuplint",
5
5
  "repository": "git@github.com:markuplint/markuplint.git",
6
6
  "author": "Yusuke Hirao <yusukehirao@me.com>",
7
7
  "license": "MIT",
8
8
  "private": false,
9
- "main": "lib/index.js",
9
+ "type": "module",
10
+ "exports": {
11
+ ".": {
12
+ "import": "./lib/index.js"
13
+ }
14
+ },
10
15
  "types": "lib/index.d.ts",
11
16
  "publishConfig": {
12
17
  "access": "public"
13
18
  },
19
+ "typedoc": {
20
+ "entryPoint": "./src/index.ts"
21
+ },
14
22
  "scripts": {
15
23
  "build": "tsc",
16
24
  "dev": "tsc --build --watch",
17
25
  "clean": "tsc --build --clean"
18
26
  },
19
27
  "dependencies": {
20
- "@markuplint/ml-ast": "3.0.0-rc.0",
21
- "@markuplint/parser-utils": "3.0.0-dev.25+a27e39aa",
28
+ "@markuplint/ml-ast": "3.0.0-dev.300+7ab32aca",
29
+ "@markuplint/parser-utils": "3.0.0-dev.300+7ab32aca",
22
30
  "parse5": "7.1.2",
23
- "tslib": "^2.4.1"
31
+ "tslib": "^2.6.2",
32
+ "type-fest": "^4.3.1"
24
33
  },
25
- "gitHead": "a27e39aa4362bce572d1893df2f1571705b62df1"
34
+ "gitHead": "7ab32aca316e08a27753da8dceed72550a65d6c8"
26
35
  }
package/lib/const.d.ts DELETED
@@ -1,3 +0,0 @@
1
- export declare const reTag: RegExp;
2
- export declare const reTagName: RegExp;
3
- export declare const reSplitterTag: RegExp;
package/lib/const.js DELETED
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.reSplitterTag = exports.reTagName = exports.reTag = void 0;
4
- exports.reTag = /^<((?:.|\s|\n)+)>\s*$/;
5
- // eslint-disable-next-line no-control-regex
6
- exports.reTagName = /^(?:[a-z][^\u0000\u0009\u000A\u000C\u0020/>]*)/i;
7
- exports.reSplitterTag = /<[^>]+>/g;
@@ -1,2 +0,0 @@
1
- import type { MLASTNode } from '@markuplint/ml-ast';
2
- export declare function flattenNodes(nodeTree: MLASTNode[], rawHtml: string, createLastText?: boolean): MLASTNode[];
@@ -1,238 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.flattenNodes = void 0;
4
- const tslib_1 = require("tslib");
5
- const parser_utils_1 = require("@markuplint/parser-utils");
6
- const remove_deprecated_node_1 = require("./remove-deprecated-node");
7
- const tag_splitter_1 = tslib_1.__importDefault(require("./tag-splitter"));
8
- function flattenNodes(nodeTree, rawHtml, createLastText = true) {
9
- const nodeOrders = arrayize(nodeTree, rawHtml);
10
- {
11
- /**
12
- * Correction prev/next/parent
13
- */
14
- let prevToken = null;
15
- for (const node of nodeOrders) {
16
- if (!prevToken) {
17
- prevToken = node;
18
- continue;
19
- }
20
- if (node.type !== 'endtag') {
21
- prevToken = node;
22
- continue;
23
- }
24
- const endTag = node;
25
- if (endTag.nodeName.toLowerCase() === 'body' && prevToken.type === 'text') {
26
- const prevWreckagesText = prevToken;
27
- if (prevWreckagesText) {
28
- const wreckages = (0, tag_splitter_1.default)(prevWreckagesText.raw, prevWreckagesText.startLine, prevWreckagesText.startCol);
29
- if (wreckages.length) {
30
- // console.log('wreckages\n', wreckages);
31
- const lastText = wreckages[0];
32
- const raw = lastText.raw;
33
- const startLine = lastText.line;
34
- const startCol = lastText.col;
35
- prevWreckagesText.raw = raw;
36
- prevWreckagesText.endOffset = prevWreckagesText.startOffset + raw.length;
37
- prevWreckagesText.startLine = startLine;
38
- prevWreckagesText.endLine = (0, parser_utils_1.getEndLine)(raw, startLine);
39
- prevWreckagesText.startCol = startCol;
40
- prevWreckagesText.endCol = (0, parser_utils_1.getEndCol)(raw, startCol);
41
- }
42
- }
43
- }
44
- }
45
- }
46
- (0, remove_deprecated_node_1.removeDeprecatedNode)(nodeOrders);
47
- {
48
- /**
49
- * getting last node
50
- */
51
- let lastNode = null;
52
- for (const node of nodeOrders) {
53
- if (node.isGhost) {
54
- continue;
55
- }
56
- lastNode = node;
57
- }
58
- if (lastNode) {
59
- if (lastNode.type === 'text') {
60
- // Correction for Parse5 AST
61
- // prev node: ? -> html
62
- lastNode.prevNode = lastNode.parentNode && lastNode.parentNode.parentNode;
63
- if (lastNode.prevNode) {
64
- lastNode.prevNode.nextNode = lastNode;
65
- }
66
- // parent node: body -> null
67
- lastNode.parentNode = null;
68
- // next node: ? -> null
69
- lastNode.nextNode = null;
70
- }
71
- else if (createLastText) {
72
- /**
73
- * create Last spaces
74
- */
75
- let lastOffset = 0;
76
- nodeOrders.forEach((node, i) => {
77
- lastOffset = Math.max(node.endOffset, lastOffset);
78
- });
79
- // console.log(lastOffset);
80
- const lastTextContent = rawHtml.slice(lastOffset);
81
- // console.log(`"${lastTextContent}"`);
82
- if (lastTextContent) {
83
- const line = lastNode ? lastNode.endLine : 0;
84
- const col = lastNode ? lastNode.endCol : 0;
85
- const lastTextNode = {
86
- uuid: (0, parser_utils_1.uuid)(),
87
- raw: lastTextContent,
88
- startOffset: lastOffset,
89
- endOffset: lastOffset + lastTextContent.length,
90
- startLine: line,
91
- endLine: (0, parser_utils_1.getEndLine)(lastTextContent, line),
92
- startCol: col,
93
- endCol: (0, parser_utils_1.getEndCol)(lastTextContent, col),
94
- nodeName: '#text',
95
- type: 'text',
96
- parentNode: null,
97
- prevNode: lastNode,
98
- nextNode: null,
99
- isFragment: false,
100
- isGhost: false,
101
- };
102
- if (lastNode) {
103
- lastNode.nextNode = lastTextNode;
104
- if ((lastNode.type === 'starttag' || lastNode.type === 'endtag') && lastNode.pearNode) {
105
- lastNode.pearNode.nextNode = lastTextNode;
106
- }
107
- }
108
- nodeOrders.push(lastTextNode);
109
- }
110
- }
111
- }
112
- }
113
- /**
114
- * concat text nodes
115
- */
116
- const result = [];
117
- nodeOrders.forEach(node => {
118
- const prevNode = result[result.length - 1] || null;
119
- if (node.type === 'text' && prevNode && prevNode.type === 'text') {
120
- prevNode.raw = prevNode.raw + node.raw;
121
- prevNode.endOffset = node.endOffset;
122
- prevNode.endLine = node.endLine;
123
- prevNode.endCol = node.endCol;
124
- prevNode.nextNode = node.nextNode;
125
- if (prevNode.parentNode && prevNode.parentNode.childNodes) {
126
- prevNode.parentNode.childNodes = prevNode.parentNode.childNodes.filter(n => n.uuid !== node.uuid);
127
- }
128
- if (node.nextNode) {
129
- node.nextNode.prevNode = prevNode;
130
- }
131
- return;
132
- }
133
- result.push(node);
134
- });
135
- {
136
- /**
137
- * Correction prev/next/parent
138
- */
139
- let prevToken = null;
140
- for (const node of result) {
141
- if (!prevToken) {
142
- prevToken = node;
143
- continue;
144
- }
145
- if (((prevToken.type === 'endtag' && prevToken.nodeName.toLowerCase() === 'body') ||
146
- prevToken.type === 'doctype') &&
147
- node.type === 'text') {
148
- const nextNode = prevToken.nextNode;
149
- prevToken.nextNode = node;
150
- if (prevToken.type === 'endtag' && prevToken.pearNode) {
151
- prevToken.pearNode.nextNode = node;
152
- }
153
- node.prevNode = prevToken;
154
- node.nextNode = nextNode;
155
- node.parentNode = prevToken.parentNode;
156
- }
157
- // EndTag
158
- if (node.type === 'starttag' && node.pearNode) {
159
- const endTag = node.pearNode;
160
- endTag.pearNode = node;
161
- endTag.prevNode = node.prevNode;
162
- endTag.nextNode = node.nextNode;
163
- }
164
- // Children
165
- if (node.type === 'text') {
166
- const parent = node.parentNode;
167
- if (parent && parent.type === 'starttag' && parent.nodeName.toLowerCase() === 'html') {
168
- if (parent.childNodes && !parent.childNodes.some(n => n.uuid === node.uuid)) {
169
- parent.childNodes.push(node);
170
- }
171
- }
172
- }
173
- prevToken = node;
174
- }
175
- }
176
- // console.log(nodeOrders.map((n, i) => `${i}: ${n.raw.trim()}`));
177
- return result;
178
- }
179
- exports.flattenNodes = flattenNodes;
180
- function arrayize(nodeTree, rawHtml) {
181
- const nodeOrders = [];
182
- let prevLine = 1;
183
- let prevCol = 1;
184
- let currentStartOffset = 0;
185
- let currentEndOffset = 0;
186
- /**
187
- * pushing list
188
- */
189
- (0, parser_utils_1.walk)(nodeTree, node => {
190
- currentStartOffset = node.startOffset;
191
- const diff = currentStartOffset - currentEndOffset;
192
- if (diff > 0) {
193
- const html = rawHtml.slice(currentEndOffset, currentStartOffset);
194
- /**
195
- * first white spaces
196
- */
197
- if (/^\s+$/.test(html)) {
198
- const spaces = html;
199
- const textNode = {
200
- uuid: (0, parser_utils_1.uuid)(),
201
- raw: spaces,
202
- startOffset: currentEndOffset,
203
- endOffset: currentEndOffset + spaces.length,
204
- startLine: prevLine,
205
- endLine: (0, parser_utils_1.getEndLine)(spaces, prevLine),
206
- startCol: prevCol,
207
- endCol: (0, parser_utils_1.getEndCol)(spaces, prevCol),
208
- nodeName: '#text',
209
- type: 'text',
210
- parentNode: node.parentNode,
211
- prevNode: node.prevNode,
212
- nextNode: node,
213
- isFragment: false,
214
- isGhost: false,
215
- };
216
- node.prevNode = textNode;
217
- if (node.parentNode && node.parentNode.childNodes) {
218
- node.parentNode.childNodes.unshift(textNode);
219
- }
220
- nodeOrders.push(textNode);
221
- }
222
- else if (/^<\/[a-z0-9][a-z0-9:-]*>$/i.test(html)) {
223
- // close tag
224
- }
225
- else {
226
- // never
227
- }
228
- }
229
- currentEndOffset = currentStartOffset + node.raw.length;
230
- prevLine = node.endLine;
231
- prevCol = node.endCol;
232
- // for ghost nodes
233
- node.startOffset = node.startOffset || currentStartOffset;
234
- node.endOffset = node.endOffset || currentEndOffset;
235
- nodeOrders.push(node);
236
- });
237
- return nodeOrders;
238
- }
@@ -1,7 +0,0 @@
1
- import type { MLASTNode } from '@markuplint/ml-ast';
2
- /**
3
- *
4
- * @disruptive
5
- * @param nodeOrders [Disruptive change]
6
- */
7
- export declare function removeDeprecatedNode(nodeOrders: MLASTNode[]): void;
@@ -1,41 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.removeDeprecatedNode = void 0;
4
- /**
5
- *
6
- * @disruptive
7
- * @param nodeOrders [Disruptive change]
8
- */
9
- function removeDeprecatedNode(nodeOrders) {
10
- /**
11
- * sorting
12
- */
13
- nodeOrders.sort((a, b) => {
14
- if (a.isGhost || b.isGhost) {
15
- return 0;
16
- }
17
- return a.startOffset - b.startOffset;
18
- });
19
- /**
20
- * remove duplicated node
21
- */
22
- const stack = {};
23
- const removeIndexes = [];
24
- nodeOrders.forEach((node, i) => {
25
- if (node.isGhost) {
26
- return;
27
- }
28
- const id = `${node.startLine}:${node.startCol}:${node.endLine}:${node.endCol}`;
29
- if (stack[id] != null) {
30
- removeIndexes.push(i);
31
- }
32
- stack[id] = i;
33
- });
34
- let r = nodeOrders.length;
35
- while (r--) {
36
- if (removeIndexes.includes(r)) {
37
- nodeOrders.splice(r, 1);
38
- }
39
- }
40
- }
41
- exports.removeDeprecatedNode = removeDeprecatedNode;
@@ -1,7 +0,0 @@
1
- export interface N {
2
- type: 'text' | 'starttag' | 'endtag' | 'comment' | 'boguscomment';
3
- raw: string;
4
- line: number;
5
- col: number;
6
- }
7
- export default function tagSplitter(raw: string, line: number, col: number): N[];
@@ -1,92 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const parser_utils_1 = require("@markuplint/parser-utils");
4
- const const_1 = require("./const");
5
- function tagSplitter(raw, line, col) {
6
- return withLocation(tagSplitterAsString(raw), line, col);
7
- }
8
- exports.default = tagSplitter;
9
- function tagSplitterAsString(raw) {
10
- const tagMatches = raw.match(const_1.reSplitterTag);
11
- if (!tagMatches) {
12
- return [raw];
13
- }
14
- const tokens = Array.from(tagMatches);
15
- tokens.unshift(); // remove all match
16
- const nodes = [];
17
- let rest = raw;
18
- for (const token of tokens) {
19
- const index = rest.indexOf(token);
20
- let length = token.length;
21
- if (index > 0) {
22
- const text = rest.slice(0, index);
23
- nodes.push(text);
24
- length += text.length;
25
- }
26
- nodes.push(token);
27
- rest = rest.slice(length);
28
- }
29
- if (rest) {
30
- nodes.push(rest);
31
- }
32
- return nodes;
33
- }
34
- function withLocation(nodes, line, col) {
35
- const result = [];
36
- for (const node of nodes) {
37
- if (node[0] !== '<') {
38
- result.push({
39
- type: 'text',
40
- raw: node,
41
- line,
42
- col,
43
- });
44
- }
45
- else {
46
- const label = node.slice(1).slice(0, -1);
47
- if (const_1.reTagName.test(label)) {
48
- result.push({
49
- type: 'starttag',
50
- raw: node,
51
- line,
52
- col,
53
- });
54
- }
55
- else if (label[0] === '/') {
56
- result.push({
57
- type: 'endtag',
58
- raw: node,
59
- line,
60
- col,
61
- });
62
- }
63
- else if (label[0] === '!') {
64
- result.push({
65
- type: 'comment',
66
- raw: node,
67
- line,
68
- col,
69
- });
70
- }
71
- else if (label[0] === '?') {
72
- result.push({
73
- type: 'boguscomment',
74
- raw: node,
75
- line,
76
- col,
77
- });
78
- }
79
- else {
80
- result.push({
81
- type: 'text',
82
- raw: node,
83
- line,
84
- col,
85
- });
86
- }
87
- }
88
- line = (0, parser_utils_1.getEndLine)(node, line);
89
- col = (0, parser_utils_1.getEndCol)(node, col);
90
- }
91
- return result;
92
- }
@@ -1,3 +0,0 @@
1
- {
2
- "extends": "../../../tsconfig.json"
3
- }
@@ -1 +0,0 @@
1
- {"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/tslib/tslib.d.ts","../ml-ast/lib/types.d.ts","../ml-ast/lib/index.d.ts","../parser-utils/lib/decision.d.ts","../parser-utils/lib/get-location.d.ts","../parser-utils/lib/create-token.d.ts","../parser-utils/lib/idl-attributes.d.ts","../parser-utils/lib/walker.d.ts","../parser-utils/lib/types.d.ts","../parser-utils/lib/ignore-block.d.ts","../parser-utils/lib/ignore-front-matter.d.ts","../parser-utils/lib/debugger.d.ts","../parser-utils/lib/parser-error.d.ts","../parser-utils/lib/detect-element-type.d.ts","../parser-utils/lib/index.d.ts","./src/attr-tokenizer.ts","./src/const.ts","./node_modules/parse5/dist/common/html.d.ts","./node_modules/parse5/dist/common/token.d.ts","./node_modules/parse5/dist/tree-adapters/interface.d.ts","./node_modules/parse5/dist/tree-adapters/default.d.ts","./node_modules/parse5/dist/common/error-codes.d.ts","./node_modules/parse5/dist/tokenizer/preprocessor.d.ts","./node_modules/parse5/dist/tokenizer/index.d.ts","./node_modules/parse5/dist/parser/open-element-stack.d.ts","./node_modules/parse5/dist/parser/formatting-element-list.d.ts","./node_modules/parse5/dist/parser/index.d.ts","./node_modules/parse5/dist/serializer/index.d.ts","./node_modules/parse5/dist/common/foreign-content.d.ts","./node_modules/parse5/dist/index.d.ts","./src/parse-raw-tag.ts","./src/create-tree.ts","./src/remove-deprecated-node.ts","./src/tag-splitter.ts","./src/flatten-nodes.ts","./src/get-namespace.ts","./src/is-document-fragment.ts","./src/optimize-starts-head-or-body.ts","./src/parse.ts","./src/index.ts","../../../node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__generator/index.d.ts","../../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../../node_modules/@types/babel__template/index.d.ts","../../../node_modules/@types/babel__traverse/index.d.ts","../../../node_modules/@types/babel__core/index.d.ts","../../../node_modules/@types/bcp-47/index.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/@types/node/stream/web.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/globals.global.d.ts","../../../node_modules/@types/node/index.d.ts","../../../node_modules/@types/connect/index.d.ts","../../../node_modules/@types/body-parser/index.d.ts","../../../node_modules/@types/bonjour/index.d.ts","../../../node_modules/@types/cheerio/index.d.ts","../../../node_modules/@types/cli-color/art.d.ts","../../../node_modules/@types/cli-color/bare.d.ts","../../../node_modules/@types/cli-color/beep.d.ts","../../../node_modules/@types/cli-color/columns.d.ts","../../../node_modules/@types/cli-color/erase.d.ts","../../../node_modules/@types/cli-color/move.d.ts","../../../node_modules/@types/cli-color/get-stripped-length.d.ts","../../../node_modules/@types/cli-color/slice.d.ts","../../../node_modules/@types/cli-color/strip.d.ts","../../../node_modules/@types/cli-color/throbber.d.ts","../../../node_modules/@types/cli-color/reset.d.ts","../../../node_modules/@types/cli-color/window-size.d.ts","../../../node_modules/@types/cli-color/index.d.ts","../../../node_modules/@types/cli-progress/index.d.ts","../../../node_modules/@types/range-parser/index.d.ts","../../../node_modules/@types/qs/index.d.ts","../../../node_modules/@types/express-serve-static-core/index.d.ts","../../../node_modules/@types/connect-history-api-fallback/index.d.ts","../../../node_modules/@types/css-tree/index.d.ts","../../../node_modules/@types/ms/index.d.ts","../../../node_modules/@types/debug/index.d.ts","../../../node_modules/@types/eslint/helpers.d.ts","../../../node_modules/@types/json-schema/index.d.ts","../../../node_modules/@types/estree/index.d.ts","../../../node_modules/@types/eslint/index.d.ts","../../../node_modules/@types/eslint-scope/index.d.ts","../../../node_modules/@types/mime/index.d.ts","../../../node_modules/@types/serve-static/index.d.ts","../../../node_modules/@types/express/node_modules/@types/express-serve-static-core/index.d.ts","../../../node_modules/@types/express/index.d.ts","../../../node_modules/@types/fs-extra/index.d.ts","../../../node_modules/@types/minimatch/index.d.ts","../../../node_modules/@types/glob/index.d.ts","../../../node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/@types/html-minifier-terser/index.d.ts","../../../node_modules/@types/http-proxy/index.d.ts","../../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../../node_modules/@types/istanbul-lib-report/index.d.ts","../../../node_modules/@types/istanbul-reports/index.d.ts","../../../node_modules/@types/jest/node_modules/@jest/expect-utils/build/index.d.ts","../../../node_modules/chalk/index.d.ts","../../../node_modules/@sinclair/typebox/typebox.d.ts","../../../node_modules/@jest/schemas/build/index.d.ts","../../../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../../../node_modules/@types/jest/node_modules/jest-diff/build/index.d.ts","../../../node_modules/@types/jest/node_modules/jest-matcher-utils/build/index.d.ts","../../../node_modules/@types/jest/node_modules/expect/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts","../../../node_modules/parse5/dist/common/html.d.ts","../../../node_modules/parse5/dist/common/token.d.ts","../../../node_modules/parse5/dist/common/error-codes.d.ts","../../../node_modules/parse5/dist/tokenizer/preprocessor.d.ts","../../../node_modules/parse5/dist/tokenizer/index.d.ts","../../../node_modules/parse5/dist/tree-adapters/interface.d.ts","../../../node_modules/parse5/dist/parser/open-element-stack.d.ts","../../../node_modules/parse5/dist/parser/formatting-element-list.d.ts","../../../node_modules/parse5/dist/parser/index.d.ts","../../../node_modules/parse5/dist/tree-adapters/default.d.ts","../../../node_modules/parse5/dist/serializer/index.d.ts","../../../node_modules/parse5/dist/common/foreign-content.d.ts","../../../node_modules/parse5/dist/index.d.ts","../../../node_modules/@types/tough-cookie/index.d.ts","../../../node_modules/@types/jsdom/base.d.ts","../../../node_modules/@types/jsdom/ts4.0/index.d.ts","../../../node_modules/@types/jsdom/index.d.ts","../../../node_modules/@types/json5/index.d.ts","../../../node_modules/@types/lodash/common/common.d.ts","../../../node_modules/@types/lodash/common/array.d.ts","../../../node_modules/@types/lodash/common/collection.d.ts","../../../node_modules/@types/lodash/common/date.d.ts","../../../node_modules/@types/lodash/common/function.d.ts","../../../node_modules/@types/lodash/common/lang.d.ts","../../../node_modules/@types/lodash/common/math.d.ts","../../../node_modules/@types/lodash/common/number.d.ts","../../../node_modules/@types/lodash/common/object.d.ts","../../../node_modules/@types/lodash/common/seq.d.ts","../../../node_modules/@types/lodash/common/string.d.ts","../../../node_modules/@types/lodash/common/util.d.ts","../../../node_modules/@types/lodash/index.d.ts","../../../node_modules/@types/unist/index.d.ts","../../../node_modules/@types/mdast/index.d.ts","../../../node_modules/@types/minimist/index.d.ts","../../../node_modules/@types/mustache/index.d.ts","../../../node_modules/@types/node-fetch/node_modules/form-data/index.d.ts","../../../node_modules/@types/node-fetch/externals.d.ts","../../../node_modules/@types/node-fetch/index.d.ts","../../../node_modules/@types/normalize-package-data/index.d.ts","../../../node_modules/@types/parse-json/index.d.ts","../../../node_modules/@types/parse5/lib/tree-adapters/default.d.ts","../../../node_modules/@types/parse5/index.d.ts","../../../node_modules/@types/prettier/index.d.ts","../../../node_modules/@types/pug/index.d.ts","../../../node_modules/@types/retry/index.d.ts","../../../node_modules/@types/sass/index.d.ts","../../../node_modules/buffer/index.d.ts","../../../node_modules/webpack/node_modules/schema-utils/declarations/validationerror.d.ts","../../../node_modules/ajv/lib/ajv.d.ts","../../../node_modules/webpack/node_modules/schema-utils/declarations/validate.d.ts","../../../node_modules/webpack/node_modules/schema-utils/declarations/index.d.ts","../../../node_modules/tapable/tapable.d.ts","../../../node_modules/webpack/types.d.ts","../../../node_modules/@types/script-ext-html-webpack-plugin/index.d.ts","../../../node_modules/@types/semver/classes/semver.d.ts","../../../node_modules/@types/semver/functions/parse.d.ts","../../../node_modules/@types/semver/functions/valid.d.ts","../../../node_modules/@types/semver/functions/clean.d.ts","../../../node_modules/@types/semver/functions/inc.d.ts","../../../node_modules/@types/semver/functions/diff.d.ts","../../../node_modules/@types/semver/functions/major.d.ts","../../../node_modules/@types/semver/functions/minor.d.ts","../../../node_modules/@types/semver/functions/patch.d.ts","../../../node_modules/@types/semver/functions/prerelease.d.ts","../../../node_modules/@types/semver/functions/compare.d.ts","../../../node_modules/@types/semver/functions/rcompare.d.ts","../../../node_modules/@types/semver/functions/compare-loose.d.ts","../../../node_modules/@types/semver/functions/compare-build.d.ts","../../../node_modules/@types/semver/functions/sort.d.ts","../../../node_modules/@types/semver/functions/rsort.d.ts","../../../node_modules/@types/semver/functions/gt.d.ts","../../../node_modules/@types/semver/functions/lt.d.ts","../../../node_modules/@types/semver/functions/eq.d.ts","../../../node_modules/@types/semver/functions/neq.d.ts","../../../node_modules/@types/semver/functions/gte.d.ts","../../../node_modules/@types/semver/functions/lte.d.ts","../../../node_modules/@types/semver/functions/cmp.d.ts","../../../node_modules/@types/semver/functions/coerce.d.ts","../../../node_modules/@types/semver/classes/comparator.d.ts","../../../node_modules/@types/semver/classes/range.d.ts","../../../node_modules/@types/semver/functions/satisfies.d.ts","../../../node_modules/@types/semver/ranges/max-satisfying.d.ts","../../../node_modules/@types/semver/ranges/min-satisfying.d.ts","../../../node_modules/@types/semver/ranges/to-comparators.d.ts","../../../node_modules/@types/semver/ranges/min-version.d.ts","../../../node_modules/@types/semver/ranges/valid.d.ts","../../../node_modules/@types/semver/ranges/outside.d.ts","../../../node_modules/@types/semver/ranges/gtr.d.ts","../../../node_modules/@types/semver/ranges/ltr.d.ts","../../../node_modules/@types/semver/ranges/intersects.d.ts","../../../node_modules/@types/semver/ranges/simplify.d.ts","../../../node_modules/@types/semver/ranges/subset.d.ts","../../../node_modules/@types/semver/internals/identifiers.d.ts","../../../node_modules/@types/semver/index.d.ts","../../../node_modules/@types/serve-index/node_modules/@types/express/index.d.ts","../../../node_modules/@types/serve-index/index.d.ts","../../../node_modules/@types/sockjs/index.d.ts","../../../node_modules/@types/source-list-map/index.d.ts","../../../node_modules/@types/stack-utils/index.d.ts","../../../node_modules/@types/tapable/index.d.ts","../../../node_modules/source-map/source-map.d.ts","../../../node_modules/@types/uglify-js/index.d.ts","../../../node_modules/@types/uuid/index.d.ts","../../../node_modules/anymatch/index.d.ts","../../../node_modules/@types/webpack-sources/node_modules/source-map/source-map.d.ts","../../../node_modules/@types/webpack-sources/lib/source.d.ts","../../../node_modules/@types/webpack-sources/lib/compatsource.d.ts","../../../node_modules/@types/webpack-sources/lib/concatsource.d.ts","../../../node_modules/@types/webpack-sources/lib/originalsource.d.ts","../../../node_modules/@types/webpack-sources/lib/prefixsource.d.ts","../../../node_modules/@types/webpack-sources/lib/rawsource.d.ts","../../../node_modules/@types/webpack-sources/lib/replacesource.d.ts","../../../node_modules/@types/webpack-sources/lib/sizeonlysource.d.ts","../../../node_modules/@types/webpack-sources/lib/sourcemapsource.d.ts","../../../node_modules/@types/webpack-sources/lib/index.d.ts","../../../node_modules/@types/webpack-sources/lib/cachedsource.d.ts","../../../node_modules/@types/webpack-sources/index.d.ts","../../../node_modules/@types/webpack/index.d.ts","../../../node_modules/@types/whatwg-mimetype/index.d.ts","../../../node_modules/@types/ws/index.d.ts","../../../node_modules/@types/yargs-parser/index.d.ts","../../../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","4b421cbfb3a38a27c279dec1e9112c3d1da296f77a1a85ddadf7e7a425d45d18","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f","d11a03592451da2d1065e09e61f4e2a9bf68f780f4f6623c18b57816a9679d17","aea179452def8a6152f98f63b191b84e7cbd69b0e248c91e61fb2e52328abe8c",{"version":"3aafcb693fe5b5c3bd277bd4c3a617b53db474fe498fc5df067c5603b1eebde7","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"5f406584aef28a331c36523df688ca3650288d14f39c5d2e555c95f0d2ff8f6f","affectsGlobalScope":true},{"version":"22f230e544b35349cfb3bd9110b6ef37b41c6d6c43c3314a31bd0d9652fcec72","affectsGlobalScope":true},{"version":"7ea0b55f6b315cf9ac2ad622b0a7813315bb6e97bf4bb3fbf8f8affbca7dc695","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"eb26de841c52236d8222f87e9e6a235332e0788af8c87a71e9e210314300410a","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"5e5e095c4470c8bab227dbbc61374878ecead104c74ab9960d3adcccfee23205","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"2768ef564cfc0689a1b76106c421a2909bdff0acbe87da010785adab80efdd5c","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"34c839eaaa6d78c8674ae2c37af2236dee6831b13db7b4ef4df3ec889a04d4f2","affectsGlobalScope":true},{"version":"34478567f8a80171f88f2f30808beb7da15eac0538ae91282dd33dce928d98ed","affectsGlobalScope":true},{"version":"ab7d58e6161a550ff92e5aff755dc37fe896245348332cd5f1e1203479fe0ed1","affectsGlobalScope":true},{"version":"6bda95ea27a59a276e46043b7065b55bd4b316c25e70e29b572958fa77565d43","affectsGlobalScope":true},{"version":"aedb8de1abb2ff1095c153854a6df7deae4a5709c37297f9d6e9948b6806fa66","affectsGlobalScope":true},{"version":"a4da0551fd39b90ca7ce5f68fb55d4dc0c1396d589b612e1902f68ee090aaada","affectsGlobalScope":true},{"version":"11ffe3c281f375fff9ffdde8bbec7669b4dd671905509079f866f2354a788064","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},"14a84fbe4ec531dcbaf5d2594fd95df107258e60ae6c6a076404f13c3f66f28e","51956a7c3a0ae2f92df270f27e817e4888634fc3fee101dcfb725f4d0078410a","d5c19655468e29f60c871b21e73af8ebc653f736e7123ade916f22c4a5f80ce5","6376724527596ee9199df1b374a7c37f57a980e6045f26c7eb8ad217b1be4536","9e4f537a26b821c81b768e76f581ac1a0491b1414ad1ec8e2cc5513cfa0363e4","b5f2fe64c9a05bc11bb616d2bdc4a5c0b7855f009fd4493116f19e657bf82d47","325dc6178b2211d5bc61cc190d6cc188f6141cd2ced4fcc0172c408796aaf688","724ffe33e82f40fb3f4d7ef6e160bbd9a11703d65cb1fce2ac5a079706d57f11","d3958c4339b07dd20e0460a2279c64cb64d4f9aa278e626b0f08c01c2a9732ad","6720e6d8090bd6169b0e09c06355d8a7866b35df1cb0041dc7779cc5e19c2b33","69553d6f2b6dfaa4454946acda2dc9cac0c913e1ada1e5e64687e6c6499d92f4","3dd7e179e143ccff3598b13e7fc028950ec01a3f22f78a805cce1fd1d00dd4dc","65664131c79fb5aefeae0e9bbbbe38062c608a3f15cfe33a9b7492152a06cc8f","c8918990bd7e2b446b281113c29a23ee7991a93a63944d8ca40794392298a2bf","f53e5df144949e946a2ea829ebb7b3cba20dd2ded4b6e070f448b1250b4f76b6",{"version":"91842c77c2dc715d7d7b194815feb7b855f1d46c603f3c6aafd63f63c0aa2642","signature":"0c9102347e5106ba850a29539f687ab886583dbd96732c335ea6807b2ccc1177"},{"version":"65196a450e0c2ff287f201999405024484f7b7c5e834c36e1cc56e134e9a81ae","signature":"41d0ccb298f72267bd594059d836b73f3205e1feebbb969de49c083db9b58929"},"ba600bf38b5c1a5dffa1b99dd7a783549082bbba3b4fe9497eaaf5e4c1764b20","ae8cd6af37275eac75f5369cdb5f01063bcf1f48d74cb434303ee50ec446acfe","bbc57966c8c48ee78fd58aadb893784025be056ae538ae22d1e83c502a987e68","d393adc32e520d4274bb4c3dfdcdb342b806a230b66ef0f82b35bffbc4aa2590","2518830a2fda9c272ba48798d0e7b857037443b06594db8e42c87e86944ee9e4","95c1cf650d16b197525b5bfdf8dd7abba0a49d99ddb12a4ba66466a8a6903e49","1fe0aabe758d56ad72495d6e6c7b6ae75619faaeaaf03f0ddf1948eea4cfac84","5e5d6f6697e378b0660b567866bf67d099d0ea754f8810c0dabe737805f5cf03","99ab49d4732fdc98cf5c495925e65e796544cb4086fe42afc235dfc02bcf2351","af8339d509c40da075088e544c28ed37b519876e5c4d36a48644ebfb3c6ae6c8","c26af7eaedb4f710984634e419ab15e54e5bb99a0b3cae71188c2fff572276de","38b58ef018d0aeee42ef74c42978bb5805503233fdeeb82cd2aed2199fb0d013","3b6040253231d44e6778eb6861cc86c1758562e77783d21b7ecbc73322ded539",{"version":"40ad080bfbe56f8797b1aafd80a0510a2028926e127b5d7fd49b935052773a30","signature":"78c9630eead8ad34c4ed122d05fac0dac6002d6cc18907bf2c6b73b91100908a"},{"version":"c0a5348bb60ade74a3e95a73158b9c4779aadbcfe64a6cad547214f7ced21d83","signature":"1d3e643b9c6118dbb8ccd42baab535323e42e67e369af38e77d19f42d6791695"},{"version":"7bed4e124cedbc8d02bb086b04968a13537daf680d2e5e73aa4422148fc1d083","signature":"e9e8ae09420eebc4b554213c1f02dc9ba2bf02edf74413e33dbd4d5306289efe"},{"version":"1a04a5e49cf7126c70f57c5b8520a73fc3f83daf4edb86a3b983ac9348381476","signature":"3b03d32b65c9ec1f93925e573c0ffee2716502726caa318a31963f40ff1c9528"},{"version":"c7cd807dbbe234d21fd4b5ae0f44be8f37c30b8db70a86081790d9ecda9d3465","signature":"9ffde4657c3e2ebee7e3bec80caed66b7c4c79a436f4434f3c2685b679453750"},{"version":"cbc69aa5ab1c8fe25c9be67baa0acb76e8a6e8d8a450547cfd1a2db107a15212","signature":"ef2bd6b1dcc531ec8594416321851165be26afb5fa22afe20bde8809ef14b321"},{"version":"ca5405ad80de90e43fdbbad7b8c144c237464212738709471d06ab3216f56788","signature":"bf356dd705ed34b49f945417950cc210c3c15b4686cb799a284d6b825d71321c"},{"version":"62eade86439212c053d06fefe8a8dd491e4bbab74cc3fb06669a473b8c418ca2","signature":"4d8eed9183745d0235fc5b2fb4c55aca0964a71d21637e4e9a12b11cfb966951"},{"version":"864ff05e97714475d2239493908d5794617b0de79e061eee8b53039789bc1fe8","signature":"1a1da5552decfd0c419ebbfba1f87cc9b409cace8c2d1bb514d8ea3fd920e6dd"},"dc51089340a6a196726075688c9317245e667d88f38a0922da49e2b772cc57f0","2ff9995137f3e5d68971388ec58af0c79721626323884513f9f5e2e996ac1fdd","cc957354aa3c94c9961ebf46282cfde1e81d107fc5785a61f62c67f1dd3ac2eb","1a7cc144992d79b062c22ac0309c6624dbb0d49bbddff7ea3b9daa0c17bcac0a","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","3b043cf9a81854a72963fdb57d1884fc4da1cf5be69b5e0a4c5b751e58cb6d88","5426e62886b7be7806312d31a00e8f7dccd6fe63ba9bbefe99ee2eab29cc48a3","e2a56bb80f66ac0b6767fd7bb6b337ac3cb9cd4a368b13491e3fd1b5e26d93d6","0cba3a5d7b81356222594442753cf90dd2892e5ccfe1d262aaca6896ba6c1380","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"c2ab70bbc7a24c42a790890739dd8a0ba9d2e15038b40dff8163a97a5d148c00","affectsGlobalScope":true},"422dbb183fdced59425ca072c8bd09efaa77ce4e2ab928ec0d8a1ce062d2a45a",{"version":"712ba0d43b44d144dfd01593f61af6e2e21cfae83e834d297643e7973e55ed61","affectsGlobalScope":true},"1dab5ab6bcf11de47ab9db295df8c4f1d92ffa750e8f095e88c71ce4c3299628","f71f46ccd5a90566f0a37b25b23bc4684381ab2180bdf6733f4e6624474e1894",{"version":"54e65985a3ee3cec182e6a555e20974ea936fc8b8d1738c14e8ed8a42bd921d4","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","98a3ebfa494b46265634a73459050befba5da8fdc6ca0ef9b7269421780f4ff3","34e5de87d983bc6aefef8b17658556e3157003e8d9555d3cb098c6bef0b5fbc8","cc0b61316c4f37393f1f9595e93b673f4184e9d07f4c127165a490ec4a928668","f27371653aded82b2b160f7a7033fb4a5b1534b6f6081ef7be1468f0f15327d3","c762cd6754b13a461c54b59d0ae0ab7aeef3c292c6cf889873f786ee4d8e75c9","f4ea7d5df644785bd9fbf419930cbaec118f0d8b4160037d2339b8e23c059e79",{"version":"bfea28e6162ed21a0aeed181b623dcf250aa79abf49e24a6b7e012655af36d81","affectsGlobalScope":true},"b8aca9d0c81abb02bec9b7621983ae65bde71da6727580070602bd2500a9ce2a","ae97e20f2e10dbeec193d6a2f9cd9a367a1e293e7d6b33b68bacea166afd7792","10d4796a130577d57003a77b95d8723530bbec84718e364aa2129fa8ffba0378","ad41bb744149e92adb06eb953da195115620a3f2ad48e7d3ae04d10762dae197","bf73c576885408d4a176f44a9035d798827cc5020d58284cb18d7573430d9022","7ae078ca42a670445ae0c6a97c029cb83d143d62abd1730efb33f68f0b2c0e82",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"5d0a9ea09d990b5788f867f1c79d4878f86f7384cb7dab38eecbf22f9efd063d","12eea70b5e11e924bb0543aea5eadc16ced318aa26001b453b0d561c2fd0bd1e","08777cd9318d294646b121838574e1dd7acbb22c21a03df84e1f2c87b1ad47f2","08a90bcdc717df3d50a2ce178d966a8c353fd23e5c392fd3594a6e39d9bb6304",{"version":"4cd4cff679c9b3d9239fd7bf70293ca4594583767526916af8e5d5a47d0219c7","affectsGlobalScope":true},"2a12d2da5ac4c4979401a3f6eaafa874747a37c365e4bc18aa2b171ae134d21b","002b837927b53f3714308ecd96f72ee8a053b8aeb28213d8ec6de23ed1608b66","1dc9c847473bb47279e398b22c740c83ea37a5c88bf66629666e3cf4c5b9f99c","a9e4a5a24bf2c44de4c98274975a1a705a0abbaad04df3557c2d3cd8b1727949","00fa7ce8bc8acc560dc341bbfdf37840a8c59e6a67c9bfa3fa5f36254df35db2","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","5f0ed51db151c2cdc4fa3bb0f44ce6066912ad001b607a34e65a96c52eb76248",{"version":"3345c276cab0e76dda86c0fb79104ff915a4580ba0f3e440870e183b1baec476","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","103d70bfbeb3cd3a3f26d1705bf986322d8738c2c143f38ebb743b1e228d7444","f52fbf64c7e480271a9096763c4882d356b05cab05bf56a64e68a95313cd2ce2","59bdb65f28d7ce52ccfc906e9aaf422f8b8534b2d21c32a27d7819be5ad81df7",{"version":"3a2da34079a2567161c1359316a32e712404b56566c45332ac9dcee015ecce9f","affectsGlobalScope":true},"28a2e7383fd898c386ffdcacedf0ec0845e5d1a86b5a43f25b86bc315f556b79","3aff9c8c36192e46a84afe7b926136d520487155154ab9ba982a8b544ea8fc95","a880cf8d85af2e4189c709b0fea613741649c0e40fffb4360ec70762563d5de0","85bbf436a15bbeda4db888be3062d47f99c66fd05d7c50f0f6473a9151b6a070","9f9c49c95ecd25e0cb2587751925976cf64fd184714cb11e213749c80cf0f927","f0c75c08a71f9212c93a719a25fb0320d53f2e50ca89a812640e08f8ad8c408c",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"9cafe917bf667f1027b2bb62e2de454ecd2119c80873ad76fc41d941089753b8","6d829824ead8999f87b6df21200df3c6150391b894b4e80662caa462bd48d073","afc559c1b93df37c25aef6b3dfa2d64325b0e112e887ee18bf7e6f4ec383fc90","d78e5898c8de5e0f934eee83f680262de005caa268d137101b833fd932f95e07",{"version":"57a1cb6f082fa2df46deaa96fa0063463b3393dd39bd09359dab251db28000b9","affectsGlobalScope":true},"a7b9533447378e7f34fa432e26be9102173e79bceb65b20d258d61c4042e90ad","d71ffe64592c4e61c6b431d8fbaff58735cd659738d788a4c8423a27f78f01b7","b869f848bec826c9d3645d10a183b905672a4675747f41700fd30e1b7e0d0308","62cc84c2971b16cc82e1f7cb1dac7d8c70b589d492fbc2f6efbcbfc53b61d514","67729b7b26e1ecf2afeb2f4a0a8c3ba16712918ef22d23bb615f033169ebe0f3","903da09dbdfea0af66cb6b7b25950e42e350f1f3cc87f3516baa553cc4de882f","e237aa7b157ebfb2699d2e3bbf07c65a8cea0382201dc44c9da006f0f730de67","05e8a403b04248dbe9eebd2025d58e95495de303f37b39f13e7562f5f414087a","a56bf5dce7c05192e4c2d95eb1527feda15f9225afea8c5ad67034a79992ebb6","fcb510be50b0756cb770f8caf321dba38ae074665efbea090584f8a8d3e6b8f4","d4c9c56a2f4ecedcc224a495dfbaee88072c8e99679504fb32ef1d0629f843a1","5ec537948044f7c0280d6175729bf7aa13deae28fe0f6346628a8cf15569aefa","94998ffb6165ce44d492327169a7f7cb0e1e11a967f068fbda6796029a4a40dd","6d8c708a5237a8508ee8553f22143a6d2fb60807de0574b41622c1e281b04c6d","16d51f964ec125ad2024cf03f0af444b3bc3ec3614d9345cc54d09bab45c9a4c","ba601641fac98c229ccd4a303f747de376d761babb33229bb7153bed9356c9cc",{"version":"d2f7baf43dfa349d4010cbd9d64d84cdf3ec26c65fa5f44c8f74f052bedd0b49","affectsGlobalScope":true},"56cbe80e6c42d7e6e66b6f048add8b01c663797b843a074d9f19c4a3d63a269a","eafa2daa16a53d9a42d6ec56ffa607c78e96117fe52c434b5df60220d43b0a1e","6a9c5127096b35264eb7cd21b2417bfc1d42cceca9ba4ce2bb0c3410b7816042","78828b06c0d3b586954015e9ebde5480b009e166c71244763bda328ec0920f41",{"version":"64d4b35c5456adf258d2cf56c341e203a073253f229ef3208fc0d5020253b241","affectsGlobalScope":true},"f3e604694b624fa3f83f6684185452992088f5efb2cf136b62474aa106d6f1b6","a1c79f857f5c7754e14c93949dad8cfefcd7df2ecc0dc9dd79a30fd493e28449","8566fa84085caa46340393b1704ecd368491918fb45bd688d6e89736aec73a2f","dc33ce27fbeaf0ea3da556c80a6cc8af9d13eb443088c8f25cdc39fca8e756f6","84e3bbd6f80983d468260fdbfeeb431cc81f7ea98d284d836e4d168e36875e86","0b85cb069d0e427ba946e5eb2d86ef65ffd19867042810516d16919f6c1a5aec",{"version":"ae3fe461989bbd951344efc1f1fe932360ce7392e6126bdb225a82a1bbaf15ee","affectsGlobalScope":true},"15c88bfd1b8dc7231ff828ae8df5d955bae5ebca4cf2bcb417af5821e52299ae","ed19da84b7dbf00952ad0b98ce5c194f1903bcf7c94d8103e8e0d63b271543ae","8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649","a55ca8b5f8c6a8535bb26fac1e10132a5338234ca3d5b9ed739fbc8ef41c8075","3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba","ee65fe452abe1309389c5f50710f24114e08a302d40708101c4aa950a2a7d044","e4b4326b61261bf5ffd6de8b4825f00eb11ebb89a51bd92663dd6e660abf4210","8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","763e521cf114b80e0dd0e21ca49b9f8ae62e8999555a5e7bade8ce36b33001c2","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","032cbd1883827ca3728c1400145403b62e65b7b584a0d2115ae538c9edec7936","427ce5854885cfc34387e09de05c1d5c1acf94c2143e1693f1d9ff54880573e7","bed2c4f96fab3348be4a34d88dcb12578c1b2475b07c6acd369e99e227718d81","e3ba509d3dce019b3190ceb2f3fc88e2610ab717122dabd91a9efaa37804040d","cda0cb09b995489b7f4c57f168cd31b83dcbaa7aad49612734fb3c9c73f6e4f2","3ad5991645bbea846d4efe615cd847e785ca30fff0205fdffb0f9a3ade3d13df",{"version":"0c3b45b6a42c0074fadd59c5d370592ca48c89a706d903452565ca89b1b2c164","affectsGlobalScope":true},"ba600bf38b5c1a5dffa1b99dd7a783549082bbba3b4fe9497eaaf5e4c1764b20","172dddc700c620827370b416d4aafbd7a4abd6f929cb50d6448cf6e3baeca38c","8cfa7e547e353e06dc3b486a400f95eef3a4aa9ded83ae38f325c0ce02e6d708","95c1cf650d16b197525b5bfdf8dd7abba0a49d99ddb12a4ba66466a8a6903e49","1fe0aabe758d56ad72495d6e6c7b6ae75619faaeaaf03f0ddf1948eea4cfac84","bbc57966c8c48ee78fd58aadb893784025be056ae538ae22d1e83c502a987e68","5e5d6f6697e378b0660b567866bf67d099d0ea754f8810c0dabe737805f5cf03","016821973966c7663ee27e1d1c75fa51d5e4f942506c44e083feda52c82e0848","af8339d509c40da075088e544c28ed37b519876e5c4d36a48644ebfb3c6ae6c8","657d689b204952d36655db5c6ba626414ff5e97fcc278f41edf872a6d3cc9e92","c26af7eaedb4f710984634e419ab15e54e5bb99a0b3cae71188c2fff572276de","38b58ef018d0aeee42ef74c42978bb5805503233fdeeb82cd2aed2199fb0d013","7426c455724cc1e1e7e6de540803db0a5858563e442b0640819dd316e4bc913c","cc256fd958b33576ed32c7338c64adb0d08fc0c2c6525010202fab83f32745da","fd20dfa2434a61a87e3fa9450f9de2ed2c365ea43b17b34ac6616d90d9681381","389303117a81e90897689e7adb4b53a062e68a6fe4067088fae9552907aa28c3",{"version":"d4c4fe14b23180acf25e4a68dc3bb9e5c38233dd3de12a4ab9569e636090ac9b","affectsGlobalScope":true},"96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8","fe4a2042d087990ebfc7dc0142d5aaf5a152e4baea86b45f283f103ec1e871ea","d70c026dd2eeaa974f430ea229230a1897fdb897dc74659deebe2afd4feeb08f","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6","6702a1cd8818cb22ee95c85dcf2c31c117bde892e1afd2bc254bd720f4c6263c","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","7a79ca84e4370ed2e1afaa99ff7d25194901916b7672e977d16f77af3b71342f","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","3cf0d343c2276842a5b617f22ba82af6322c7cfe8bb52238ffc0c491a3c21019","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9",{"version":"f2eff8704452659641164876c1ef0df4174659ce7311b0665798ea3f556fa9ad","affectsGlobalScope":true},"cddf5c26907c0b8378bc05543161c11637b830da9fadf59e02a11e675d11e180","2a2e2c6463bcf3c59f31bc9ab4b6ef963bbf7dffb049cd017e2c1834e3adca63","209e814e8e71aec74f69686a9506dd7610b97ab59dcee9446266446f72a76d05","a74476691118f376a4d42c9721f76c5c896e41393df98c7789589f618ad1dbd5","736097ddbb2903bef918bb3b5811ef1c9c5656f2a73bd39b22a91b9cc2525e50","208bb742e0f201470da121bc73847c74b62cff4172f38ae5949ae77d6c9c6b71","3663d1b50f356656a314e5df169bb51cb9d5fd75905fa703f75db6bb32030568","6fa0008bf91a4cc9c8963bace4bba0bd6865cbfa29c3e3ccc461155660fb113a","2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b","fc37aca06f6b8b296c42412a2e75ab53d30cd1fa8a340a3bb328a723fd678377","5f2c582b9ef260cb9559a64221b38606378c1fabe17694592cdfe5975a6d7efa","93c4fc5b5237c09bc9ed65cb8f0dc1d89034406ab40500b89701341994897142","dac991ec2b7f56b1a39f74a65cca109ec9cde62df848c5bd41524030c894e341","58a3914b1cce4560d9ad6eee2b716caaa030eda0a90b21ca2457ea9e2783eaa3","d64037d2df4c89d6d2113b1aaad4b59259d448dbd8862bc20003d1caef23b1d4","8e9c23ba78aabc2e0a27033f18737a6df754067731e69dc5f52823957d60a4b6","dee5d387e2e6f3015cbf91fc0c13ed6f016f9c5c1f2ad9c62602f4fd398fa83a","67f129ed8b372622ff36b8b10e39d03e09e363a5ff7821105f92f085b8d1ccba","721124f5db1f4a42da2308dfa1414d2e99055d2dfc59de7bf2e0b6ac64356c0e","0d7569149194d622212c21d5d162b0715d5a6ca764cebae7145fdbaff1e07311","cd74c8275483d3fe0d07a9b4bba28845a8a611f0aa399e961dbd40e5d46dd9ad","2836f718f2458d81c2df3d01d1f998f75631b0763bd9298e1bd15331cc4f2632","44a9aadd9a9e24c7fab7f5b271c8eb89d0e6af07bbc637adae7f15f1c1b6f70e","2b93035328f7778d200252681c1d86285d501ed424825a18f81e4c3028aa51d9","2ac9c8332c5f8510b8bdd571f8271e0f39b0577714d5e95c1e79a12b2616f069","42c21aa963e7b86fa00801d96e88b36803188018d5ad91db2a9101bccd40b3ff","d31eb848cdebb4c55b4893b335a7c0cca95ad66dee13cbb7d0893810c0a9c301","77c1d91a129ba60b8c405f9f539e42df834afb174fe0785f89d92a2c7c16b77a","7a9e0a564fee396cacf706523b5aeed96e04c6b871a8bebefad78499fbffc5bc","906c751ef5822ec0dadcea2f0e9db64a33fb4ee926cc9f7efa38afe5d5371b2a","5387c049e9702f2d2d7ece1a74836a14b47fbebe9bbeb19f94c580a37c855351","c68391fb9efad5d99ff332c65b1606248c4e4a9f1dd9a087204242b56c7126d6","e9cf02252d3a0ced987d24845dcb1f11c1be5541f17e5daa44c6de2d18138d0c","e8b02b879754d85f48489294f99147aeccc352c760d95a6fe2b6e49cd400b2fe","9f6908ab3d8a86c68b86e38578afc7095114e66b2fc36a2a96e9252aac3998e0","0eedb2344442b143ddcd788f87096961cd8572b64f10b4afc3356aa0460171c6","71405cc70f183d029cc5018375f6c35117ffdaf11846c35ebf85ee3956b1b2a6","c68baff4d8ba346130e9753cefe2e487a16731bf17e05fdacc81e8c9a26aae9d","2cd15528d8bb5d0453aa339b4b52e0696e8b07e790c153831c642c3dea5ac8af","479d622e66283ffa9883fbc33e441f7fc928b2277ff30aacbec7b7761b4e9579","ade307876dc5ca267ca308d09e737b611505e015c535863f22420a11fffc1c54","f8cdefa3e0dee639eccbe9794b46f90291e5fd3989fcba60d2f08fde56179fb9","86c5a62f99aac7053976e317dbe9acb2eaf903aaf3d2e5bb1cafe5c2df7b37a8","2b300954ce01a8343866f737656e13243e86e5baef51bd0631b21dcef1f6e954","a2d409a9ffd872d6b9d78ead00baa116bbc73cfa959fce9a2f29d3227876b2a1","b288936f560cd71f4a6002953290de9ff8dfbfbf37f5a9391be5c83322324898","61178a781ef82e0ff54f9430397e71e8f365fc1e3725e0e5346f2de7b0d50dfa","6a6ccb37feb3aad32d9be026a3337db195979cd5727a616fc0f557e974101a54","c649ea79205c029a02272ef55b7ab14ada0903db26144d2205021f24727ac7a3","38e2b02897c6357bbcff729ef84c736727b45cc152abe95a7567caccdfad2a1d","d6610ea7e0b1a7686dba062a1e5544dd7d34140f4545305b7c6afaebfb348341","3dee35db743bdba2c8d19aece7ac049bde6fa587e195d86547c882784e6ba34c","b15e55c5fa977c2f25ca0b1db52cfa2d1fd4bf0baf90a8b90d4a7678ca462ff1","f41d30972724714763a2698ae949fbc463afb203b5fa7c4ad7e4de0871129a17","843dd7b6a7c6269fd43827303f5cbe65c1fecabc30b4670a50d5a15d57daeeb9","f06d8b8567ee9fd799bf7f806efe93b67683ef24f4dea5b23ef12edff4434d9d","6017384f697ff38bc3ef6a546df5b230c3c31329db84cbfe686c83bec011e2b2","e1a5b30d9248549ca0c0bb1d653bafae20c64c4aa5928cc4cd3017b55c2177b0","a593632d5878f17295bd53e1c77f27bf4c15212822f764a2bfc1702f4b413fa0","a868a534ba1c2ca9060b8a13b0ffbbbf78b4be7b0ff80d8c75b02773f7192c29","da7545aba8f54a50fde23e2ede00158dc8112560d934cee58098dfb03aae9b9d","34baf65cfee92f110d6653322e2120c2d368ee64b3c7981dff08ed105c4f19b0","6aee496bf0ecfbf6731aa8cca32f4b6e92cdc0a444911a7d88410408a45ecc5d","15c88bfd1b8dc7231ff828ae8df5d955bae5ebca4cf2bcb417af5821e52299ae","acebfe99678cf7cddcddc3435222cf132052b1226e902daac9fbb495c321a9b5","82b1f9a6eefef7386aebe22ac49f23b806421e82dbf35c6e5b7132d79e4165da","67fc055eb86a0632e2e072838f889ffe1754083cb13c8c80a06a7d895d877aae","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","3833c70307dc3d2b46cb6f2a8b6a90e4d7e7367a21ab18c481d7de0909a43e67","2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579","9d74c7330800b325bb19cc8c1a153a612c080a60094e1ab6cfb6e39cf1b88c36","d258b243f130c00b958bfad96586b5413bccc86cf17e9339e6a94d45f7e7b84f","4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349","b90c59ac4682368a01c83881b814738eb151de8a58f52eb7edadea2bcffb11b9","8560a87b2e9f8e2c3808c8f6172c9b7eb6c9b08cb9f937db71c285ecf292c81d","ffe3931ff864f28d80ae2f33bd11123ad3d7bad9896b910a1e61504cc093e1f5","083c1bd82f8dc3a1ed6fc9e8eaddf141f7c05df418eca386598821e045253af9","274ebe605bd7f71ce161f9f5328febc7d547a2929f803f04b44ec4a7d8729517","6ca0207e70d985a24396583f55836b10dc181063ab6069733561bfde404d1bad","5908142efeaab38ffdf43927ee0af681ae77e0d7672b956dfb8b6c705dbfe106","f772b188b943549b5c5eb803133314b8aa7689eced80eed0b70e2f30ca07ab9c","0026b816ef05cfbf290e8585820eef0f13250438669107dfc44482bac007b14f","05d64cc1118031b29786632a9a0f6d7cf1dcacb303f27023a466cf3cdc860538","e0fff9119e1a5d2fdd46345734126cd6cb99c2d98a9debf0257047fe3937cc3f","d84398556ba4595ee6be554671da142cfe964cbdebb2f0c517a10f76f2b016c0","e275297155ec3251200abbb334c7f5641fecc68b2a9573e40eed50dff7584762","b2f006ee835f315d01c43c0f5d9e9ad78a5870b380899877b32a33078d065dbd","3c71707988135662b344d59c4f92d2ea37b1f198149b762693db61e30bdaae9a","b4358a89fcd9c579f84a6c68e2ce44ca91b07e4db3f8f403c2b7a72c1a1e04b6","70e9a18da08294f75bf23e46c7d69e67634c0765d355887b9b41f0d959e1426e","28288f5e5f8b7b895ed2abe6359c1da3e0d14a64b5aef985071285671f347c01"],"options":{"allowSyntheticDefaultImports":true,"composite":true,"declaration":true,"esModuleInterop":true,"experimentalDecorators":true,"importHelpers":true,"module":1,"noImplicitAny":true,"outDir":"./lib","rootDir":"./src","skipLibCheck":true,"strict":true,"strictNullChecks":true,"strictPropertyInitialization":true,"target":6},"fileIdsList":[[96,146,220,221,222],[146,220,221,222],[146,199,220,221,222],[96,97,98,99,100,146,220,221,222],[96,98,146,220,221,222],[121,146,153,154,220,221,222],[113,146,153,220,221,222],[146,153,220,221,222],[146,158,159,160,161,162,163,164,165,166,167,168,169,220,221,222],[118,146,153,220,221,222],[145,146,153,174,220,221,222],[121,146,153,220,221,222],[146,177,220,221,222],[146,181,182,220,221,222],[146,179,180,181,220,221,222],[118,121,146,153,172,173,220,221,222],[146,155,173,174,185,186,220,221,222],[119,146,153,220,221,222],[118,119,146,153,189,220,221,222],[118,121,123,126,135,145,146,153,220,221,222],[146,194,220,221,222],[146,195,220,221,222],[146,201,204,220,221,222],[146,197,203,220,221,222],[146,201,220,221,222],[146,198,202,220,221,222],[146,200,220,221,222],[118,146,148,153,218,219,221,222],[146,220,221],[146,220,222],[146,220,221,222,224,226,227,228,229,230,231,232,233,234,235,236],[146,220,221,222,224,225,227,228,229,230,231,232,233,234,235,236],[146,220,221,222,225,226,227,228,229,230,231,232,233,234,235,236],[146,220,221,222,224,225,226,228,229,230,231,232,233,234,235,236],[146,220,221,222,224,225,226,227,229,230,231,232,233,234,235,236],[146,220,221,222,224,225,226,227,228,230,231,232,233,234,235,236],[146,220,221,222,224,225,226,227,228,229,231,232,233,234,235,236],[146,220,221,222,224,225,226,227,228,229,230,232,233,234,235,236],[146,220,221,222,224,225,226,227,228,229,230,231,233,234,235,236],[146,220,221,222,224,225,226,227,228,229,230,231,232,234,235,236],[146,220,221,222,224,225,226,227,228,229,230,231,232,233,235,236],[146,220,221,222,224,225,226,227,228,229,230,231,232,233,234,236],[146,220,221,222,224,225,226,227,228,229,230,231,232,233,234,235],[146,220,221,222,237],[121,145,146,153,220,221,222,241,242],[121,135,146,153,220,221,222],[103,146,220,221,222],[106,146,220,221,222],[107,112,146,220,221,222],[108,118,119,126,135,145,146,220,221,222],[108,109,118,126,146,220,221,222],[110,146,220,221,222],[111,112,119,127,146,220,221,222],[112,135,142,146,220,221,222],[113,115,118,126,146,220,221,222],[114,146,220,221,222],[115,116,146,220,221,222],[117,118,146,220,221,222],[118,146,220,221,222],[118,119,120,135,145,146,220,221,222],[118,119,120,135,146,220,221,222],[121,126,135,145,146,220,221,222],[118,119,121,122,126,135,142,145,146,220,221,222],[121,123,135,142,145,146,220,221,222],[103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,220,221,222],[118,124,146,220,221,222],[125,145,146,220,221,222],[115,118,126,135,146,220,221,222],[127,146,220,221,222],[128,146,220,221,222],[106,129,146,220,221,222],[130,144,146,150,220,221,222],[131,146,220,221,222],[132,146,220,221,222],[118,133,146,220,221,222],[133,134,146,148,220,221,222],[118,135,136,137,146,220,221,222],[135,137,146,220,221,222],[135,136,146,220,221,222],[138,146,220,221,222],[139,146,220,221,222],[118,140,141,146,220,221,222],[140,141,146,220,221,222],[112,126,135,142,146,220,221,222],[143,146,220,221,222],[126,144,146,220,221,222],[107,121,132,145,146,220,221,222],[112,146,220,221,222],[135,146,147,220,221,222],[146,148,220,221,222],[146,149,220,221,222],[107,112,118,120,129,135,145,146,148,150,220,221,222],[135,146,151,220,221,222],[146,220,221,222,246],[146,220,221,222,247],[145,146,153,220,221,222],[146,220,221,222,258],[146,220,221,222,260,299],[146,220,221,222,260,284,299],[146,220,221,222,299],[146,220,221,222,260],[146,220,221,222,260,285,299],[146,220,221,222,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298],[146,220,221,222,285,299],[119,146,220,221,222,300],[146,155,173,174,185,220,221,222],[121,146,153,184,220,221,222],[146,220,221,222,306],[146,153,220,221,222,311,312,313,314,315,316,317,318,319,320,321],[146,220,221,222,310,311,320],[146,220,221,222,311,320],[146,220,221,222,303,310,311,320],[146,220,221,222,310,311,312,313,314,315,316,317,318,319,321],[146,220,221,222,311],[112,146,220,221,222,310,320],[112,146,153,220,221,222,257,306,307,309,322],[118,121,123,135,142,145,146,151,153,220,221,222],[146,220,221,222,326],[146,207,220,221,222],[146,206,207,220,221,222],[146,206,220,221,222],[146,206,207,208,210,211,214,215,216,217,220,221,222],[146,207,211,220,221,222],[146,206,207,208,210,211,212,213,220,221,222],[146,206,211,220,221,222],[146,211,215,220,221,222],[146,207,208,209,220,221,222],[146,208,220,221,222],[146,206,207,211,220,221,222],[146,220,221,222,255],[146,180,220,221,222,253,254],[146,180,220,221,222,255],[107,121,126,142,146,181,220,221,222,253,255,256,257],[74,146,220,221,222],[73,74,146,220,221,222],[73,146,220,221,222],[73,74,75,76,77,79,82,83,84,146,220,221,222],[74,75,146,220,221,222],[73,74,75,77,79,80,81,146,220,221,222],[73,75,146,220,221,222],[75,76,146,220,221,222],[74,77,78,146,220,221,222],[77,146,220,221,222],[73,74,75,146,220,221,222],[56,58,70,146,220,221,222],[56,146,220,221,222],[56,58,70,74,76,85,86,146,220,221,222],[56,58,70,88,89,146,220,221,222],[56,58,85,146,220,221,222],[56,71,86,88,90,91,92,94,146,220,221,222],[56,58,146,220,221,222],[56,58,70,71,72,146,220,221,222],[56,58,70,87,90,92,93,146,220,221,222],[56,70,72,146,220,221,222],[57,146,220,221,222],[58,146,220,221,222],[58,64,146,220,221,222],[59,60,61,62,63,65,66,67,68,69,146,220,221,222],[58]],"referencedMap":[[98,1],[96,2],[200,3],[199,2],[101,4],[97,1],[99,5],[100,1],[102,2],[155,6],[156,7],[157,8],[158,2],[159,2],[160,2],[161,2],[162,2],[164,2],[170,9],[163,2],[168,2],[165,2],[166,2],[167,2],[169,2],[171,10],[175,11],[154,12],[176,2],[178,13],[183,14],[179,2],[182,15],[181,2],[174,16],[187,17],[186,16],[188,18],[190,19],[191,18],[192,2],[193,20],[194,2],[195,21],[196,22],[205,23],[197,2],[204,24],[202,25],[203,26],[201,27],[220,28],[222,29],[221,30],[180,2],[223,2],[225,31],[226,32],[224,33],[227,34],[228,35],[229,36],[230,37],[231,38],[232,39],[233,40],[234,41],[235,42],[236,43],[238,44],[184,2],[189,2],[239,2],[177,2],[240,2],[242,2],[243,45],[241,46],[103,47],[104,47],[106,48],[107,49],[108,50],[109,51],[110,52],[111,53],[112,54],[113,55],[114,56],[115,57],[116,57],[117,58],[118,59],[119,60],[120,61],[105,2],[152,2],[121,62],[122,63],[123,64],[153,65],[124,66],[125,67],[126,68],[127,69],[128,70],[129,71],[130,72],[131,73],[132,74],[133,75],[134,76],[135,77],[137,78],[136,79],[138,80],[139,81],[140,82],[141,83],[142,84],[143,85],[144,86],[145,87],[146,88],[147,89],[148,90],[149,91],[150,92],[151,93],[244,2],[245,2],[247,94],[246,95],[248,2],[249,2],[173,2],[172,2],[250,2],[251,96],[259,97],[284,98],[285,99],[260,100],[263,100],[282,98],[283,98],[273,98],[272,101],[270,98],[265,98],[278,98],[276,98],[280,98],[264,98],[277,98],[281,98],[266,98],[267,98],[279,98],[261,98],[268,98],[269,98],[271,98],[275,98],[286,102],[274,98],[262,98],[299,103],[298,2],[293,102],[295,104],[294,102],[287,102],[288,102],[290,102],[292,102],[296,104],[297,104],[289,104],[291,104],[301,105],[300,106],[185,107],[302,12],[303,2],[304,2],[305,2],[219,2],[307,108],[237,2],[308,2],[322,109],[321,110],[312,111],[313,112],[320,113],[314,112],[315,111],[316,111],[317,111],[318,114],[311,115],[319,110],[310,2],[323,116],[324,2],[325,117],[326,2],[327,118],[254,2],[309,2],[252,2],[198,2],[208,119],[217,120],[206,2],[207,121],[218,122],[213,123],[214,124],[212,125],[216,126],[210,127],[209,128],[215,129],[211,120],[306,2],[257,2],[56,2],[11,2],[13,2],[12,2],[2,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[3,2],[4,2],[25,2],[22,2],[23,2],[24,2],[26,2],[27,2],[28,2],[5,2],[29,2],[30,2],[31,2],[32,2],[6,2],[36,2],[33,2],[34,2],[35,2],[37,2],[7,2],[38,2],[43,2],[44,2],[39,2],[40,2],[41,2],[42,2],[8,2],[48,2],[45,2],[46,2],[47,2],[49,2],[9,2],[50,2],[51,2],[52,2],[53,2],[54,2],[1,2],[10,2],[55,2],[256,130],[255,131],[253,132],[258,133],[77,134],[84,135],[73,2],[74,136],[85,137],[81,138],[82,139],[80,140],[83,141],[79,142],[78,143],[76,144],[75,135],[71,145],[72,146],[87,147],[90,148],[91,149],[95,150],[92,146],[93,151],[86,152],[94,153],[88,151],[89,154],[58,155],[57,2],[61,156],[67,156],[59,2],[69,156],[60,2],[62,2],[65,157],[66,2],[70,158],[68,2],[64,2],[63,156]],"exportedModulesMap":[[98,1],[96,2],[200,3],[199,2],[101,4],[97,1],[99,5],[100,1],[102,2],[155,6],[156,7],[157,8],[158,2],[159,2],[160,2],[161,2],[162,2],[164,2],[170,9],[163,2],[168,2],[165,2],[166,2],[167,2],[169,2],[171,10],[175,11],[154,12],[176,2],[178,13],[183,14],[179,2],[182,15],[181,2],[174,16],[187,17],[186,16],[188,18],[190,19],[191,18],[192,2],[193,20],[194,2],[195,21],[196,22],[205,23],[197,2],[204,24],[202,25],[203,26],[201,27],[220,28],[222,29],[221,30],[180,2],[223,2],[225,31],[226,32],[224,33],[227,34],[228,35],[229,36],[230,37],[231,38],[232,39],[233,40],[234,41],[235,42],[236,43],[238,44],[184,2],[189,2],[239,2],[177,2],[240,2],[242,2],[243,45],[241,46],[103,47],[104,47],[106,48],[107,49],[108,50],[109,51],[110,52],[111,53],[112,54],[113,55],[114,56],[115,57],[116,57],[117,58],[118,59],[119,60],[120,61],[105,2],[152,2],[121,62],[122,63],[123,64],[153,65],[124,66],[125,67],[126,68],[127,69],[128,70],[129,71],[130,72],[131,73],[132,74],[133,75],[134,76],[135,77],[137,78],[136,79],[138,80],[139,81],[140,82],[141,83],[142,84],[143,85],[144,86],[145,87],[146,88],[147,89],[148,90],[149,91],[150,92],[151,93],[244,2],[245,2],[247,94],[246,95],[248,2],[249,2],[173,2],[172,2],[250,2],[251,96],[259,97],[284,98],[285,99],[260,100],[263,100],[282,98],[283,98],[273,98],[272,101],[270,98],[265,98],[278,98],[276,98],[280,98],[264,98],[277,98],[281,98],[266,98],[267,98],[279,98],[261,98],[268,98],[269,98],[271,98],[275,98],[286,102],[274,98],[262,98],[299,103],[298,2],[293,102],[295,104],[294,102],[287,102],[288,102],[290,102],[292,102],[296,104],[297,104],[289,104],[291,104],[301,105],[300,106],[185,107],[302,12],[303,2],[304,2],[305,2],[219,2],[307,108],[237,2],[308,2],[322,109],[321,110],[312,111],[313,112],[320,113],[314,112],[315,111],[316,111],[317,111],[318,114],[311,115],[319,110],[310,2],[323,116],[324,2],[325,117],[326,2],[327,118],[254,2],[309,2],[252,2],[198,2],[208,119],[217,120],[206,2],[207,121],[218,122],[213,123],[214,124],[212,125],[216,126],[210,127],[209,128],[215,129],[211,120],[306,2],[257,2],[56,2],[11,2],[13,2],[12,2],[2,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[3,2],[4,2],[25,2],[22,2],[23,2],[24,2],[26,2],[27,2],[28,2],[5,2],[29,2],[30,2],[31,2],[32,2],[6,2],[36,2],[33,2],[34,2],[35,2],[37,2],[7,2],[38,2],[43,2],[44,2],[39,2],[40,2],[41,2],[42,2],[8,2],[48,2],[45,2],[46,2],[47,2],[49,2],[9,2],[50,2],[51,2],[52,2],[53,2],[54,2],[1,2],[10,2],[55,2],[256,130],[255,131],[253,132],[258,133],[77,134],[84,135],[73,2],[74,136],[85,137],[81,138],[82,139],[80,140],[83,141],[79,142],[78,143],[76,144],[75,135],[71,159],[87,159],[90,159],[91,159],[95,150],[93,159],[86,159],[94,159],[88,159],[58,155],[57,2],[61,156],[67,156],[59,2],[69,156],[60,2],[62,2],[65,157],[66,2],[70,158],[68,2],[64,2],[63,156]],"semanticDiagnosticsPerFile":[98,96,200,199,101,97,99,100,102,155,156,157,158,159,160,161,162,164,170,163,168,165,166,167,169,171,175,154,176,178,183,179,182,181,174,187,186,188,190,191,192,193,194,195,196,205,197,204,202,203,201,220,222,221,180,223,225,226,224,227,228,229,230,231,232,233,234,235,236,238,184,189,239,177,240,242,243,241,103,104,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,105,152,121,122,123,153,124,125,126,127,128,129,130,131,132,133,134,135,137,136,138,139,140,141,142,143,144,145,146,147,148,149,150,151,244,245,247,246,248,249,173,172,250,251,259,284,285,260,263,282,283,273,272,270,265,278,276,280,264,277,281,266,267,279,261,268,269,271,275,286,274,262,299,298,293,295,294,287,288,290,292,296,297,289,291,301,300,185,302,303,304,305,219,307,237,308,322,321,312,313,320,314,315,316,317,318,311,319,310,323,324,325,326,327,254,309,252,198,208,217,206,207,218,213,214,212,216,210,209,215,211,306,257,56,11,13,12,2,14,15,16,17,18,19,20,21,3,4,25,22,23,24,26,27,28,5,29,30,31,32,6,36,33,34,35,37,7,38,43,44,39,40,41,42,8,48,45,46,47,49,9,50,51,52,53,54,1,10,55,256,255,253,258,77,84,73,74,85,81,82,80,83,79,78,76,75,71,72,87,90,91,95,92,93,86,94,88,89,58,57,61,67,59,69,60,62,65,66,70,68,64,63],"latestChangedDtsFile":"./lib/index.d.ts"},"version":"4.9.4"}