parse5 7.1.0 → 7.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/common/error-codes.d.ts +1 -1
- package/dist/cjs/common/token.d.ts +1 -1
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.js +3 -1
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/parser/formatting-element-list.d.ts +1 -1
- package/dist/cjs/parser/index.js +220 -110
- package/dist/cjs/parser/open-element-stack.js +3 -3
- package/dist/cjs/tokenizer/index.js +2 -1
- package/dist/cjs/tokenizer/preprocessor.js +2 -1
- package/dist/cjs/tree-adapters/default.d.ts +4 -4
- package/dist/common/error-codes.d.ts +1 -1
- package/dist/common/token.d.ts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -0
- package/dist/parser/formatting-element-list.d.ts +1 -1
- package/dist/parser/index.js +220 -110
- package/dist/parser/open-element-stack.js +3 -3
- package/dist/tokenizer/index.js +2 -1
- package/dist/tokenizer/preprocessor.js +2 -1
- package/dist/tree-adapters/default.d.ts +4 -4
- package/package.json +2 -1
|
@@ -42,6 +42,9 @@ const TABLE_CONTEXT = [html_js_1.TAG_ID.TABLE, html_js_1.TAG_ID.TEMPLATE, html_j
|
|
|
42
42
|
const TABLE_CELLS = [html_js_1.TAG_ID.TD, html_js_1.TAG_ID.TH];
|
|
43
43
|
//Stack of open elements
|
|
44
44
|
class OpenElementStack {
|
|
45
|
+
get currentTmplContentOrNode() {
|
|
46
|
+
return this._isInTemplate() ? this.treeAdapter.getTemplateContent(this.current) : this.current;
|
|
47
|
+
}
|
|
45
48
|
constructor(document, treeAdapter, handler) {
|
|
46
49
|
this.treeAdapter = treeAdapter;
|
|
47
50
|
this.handler = handler;
|
|
@@ -52,9 +55,6 @@ class OpenElementStack {
|
|
|
52
55
|
this.currentTagId = html_js_1.TAG_ID.UNKNOWN;
|
|
53
56
|
this.current = document;
|
|
54
57
|
}
|
|
55
|
-
get currentTmplContentOrNode() {
|
|
56
|
-
return this._isInTemplate() ? this.treeAdapter.getTemplateContent(this.current) : this.current;
|
|
57
|
-
}
|
|
58
58
|
//Index of element
|
|
59
59
|
_indexOf(element) {
|
|
60
60
|
return this.items.lastIndexOf(element, this.stackTop);
|
|
@@ -2238,7 +2238,7 @@ class Tokenizer {
|
|
|
2238
2238
|
this._emitEOFToken();
|
|
2239
2239
|
break;
|
|
2240
2240
|
}
|
|
2241
|
-
default:
|
|
2241
|
+
default: {
|
|
2242
2242
|
if (this._consumeSequenceIfMatch(unicode_js_1.SEQUENCES.PUBLIC, false)) {
|
|
2243
2243
|
this.state = State.AFTER_DOCTYPE_PUBLIC_KEYWORD;
|
|
2244
2244
|
}
|
|
@@ -2253,6 +2253,7 @@ class Tokenizer {
|
|
|
2253
2253
|
this.state = State.BOGUS_DOCTYPE;
|
|
2254
2254
|
this._stateBogusDoctype(cp);
|
|
2255
2255
|
}
|
|
2256
|
+
}
|
|
2256
2257
|
}
|
|
2257
2258
|
}
|
|
2258
2259
|
// After DOCTYPE public keyword state
|
|
@@ -127,7 +127,8 @@ class Preprocessor {
|
|
|
127
127
|
this.endOfChunkHit = !this.lastChunkWritten;
|
|
128
128
|
return unicode_js_1.CODE_POINTS.EOF;
|
|
129
129
|
}
|
|
130
|
-
|
|
130
|
+
const code = this.html.charCodeAt(pos);
|
|
131
|
+
return code === unicode_js_1.CODE_POINTS.CARRIAGE_RETURN ? unicode_js_1.CODE_POINTS.LINE_FEED : code;
|
|
131
132
|
}
|
|
132
133
|
advance() {
|
|
133
134
|
this.pos++;
|
|
@@ -77,9 +77,9 @@ export interface DocumentType {
|
|
|
77
77
|
/** Comment source code location info. Available if location info is enabled. */
|
|
78
78
|
sourceCodeLocation?: Location | null;
|
|
79
79
|
}
|
|
80
|
-
export
|
|
81
|
-
export
|
|
82
|
-
export
|
|
83
|
-
export
|
|
80
|
+
export type ParentNode = Document | DocumentFragment | Element | Template;
|
|
81
|
+
export type ChildNode = Element | Template | CommentNode | TextNode | DocumentType;
|
|
82
|
+
export type Node = ParentNode | ChildNode;
|
|
83
|
+
export type DefaultTreeAdapterMap = TreeAdapterTypeMap<Node, ParentNode, ChildNode, Document, DocumentFragment, Element, CommentNode, TextNode, Template, DocumentType>;
|
|
84
84
|
export declare const defaultTreeAdapter: TreeAdapter<DefaultTreeAdapterMap>;
|
|
85
85
|
//# sourceMappingURL=default.d.ts.map
|
|
@@ -2,7 +2,7 @@ import type { Location } from './token.js';
|
|
|
2
2
|
export interface ParserError extends Location {
|
|
3
3
|
code: ERR;
|
|
4
4
|
}
|
|
5
|
-
export
|
|
5
|
+
export type ParserErrorHandler = (error: ParserError) => void;
|
|
6
6
|
export declare enum ERR {
|
|
7
7
|
controlCharacterInInputStream = "control-character-in-input-stream",
|
|
8
8
|
noncharacterInInputStream = "noncharacter-in-input-stream",
|
package/dist/common/token.d.ts
CHANGED
|
@@ -80,6 +80,6 @@ export interface CharacterToken extends TokenBase {
|
|
|
80
80
|
type: TokenType.CHARACTER | TokenType.NULL_CHARACTER | TokenType.WHITESPACE_CHARACTER;
|
|
81
81
|
chars: string;
|
|
82
82
|
}
|
|
83
|
-
export
|
|
83
|
+
export type Token = DoctypeToken | TagToken | CommentToken | EOFToken | CharacterToken;
|
|
84
84
|
export {};
|
|
85
85
|
//# sourceMappingURL=token.d.ts.map
|
package/dist/index.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export { type DefaultTreeAdapterMap, defaultTreeAdapter } from './tree-adapters/
|
|
|
5
5
|
export type { TreeAdapter, TreeAdapterTypeMap } from './tree-adapters/interface.js';
|
|
6
6
|
export { type ParserOptions, /** @internal */ Parser } from './parser/index.js';
|
|
7
7
|
export { serialize, serializeOuter, type SerializerOptions } from './serializer/index.js';
|
|
8
|
-
export type
|
|
8
|
+
export { ERR as ErrorCodes, type ParserError } from './common/error-codes.js';
|
|
9
9
|
/** @internal */
|
|
10
10
|
export * as foreignContent from './common/foreign-content.js';
|
|
11
11
|
/** @internal */
|
package/dist/index.js
CHANGED
|
@@ -2,6 +2,7 @@ import { Parser } from './parser/index.js';
|
|
|
2
2
|
export { defaultTreeAdapter } from './tree-adapters/default.js';
|
|
3
3
|
export { /** @internal */ Parser } from './parser/index.js';
|
|
4
4
|
export { serialize, serializeOuter } from './serializer/index.js';
|
|
5
|
+
export { ERR as ErrorCodes } from './common/error-codes.js';
|
|
5
6
|
/** @internal */
|
|
6
7
|
export * as foreignContent from './common/foreign-content.js';
|
|
7
8
|
/** @internal */
|
|
@@ -12,7 +12,7 @@ export interface ElementEntry<T extends TreeAdapterTypeMap> {
|
|
|
12
12
|
element: T['element'];
|
|
13
13
|
token: TagToken;
|
|
14
14
|
}
|
|
15
|
-
export
|
|
15
|
+
export type Entry<T extends TreeAdapterTypeMap> = MarkerEntry | ElementEntry<T>;
|
|
16
16
|
export declare class FormattingElementList<T extends TreeAdapterTypeMap> {
|
|
17
17
|
private treeAdapter;
|
|
18
18
|
entries: Entry<T>[];
|