@shell-shock/preset-cli 0.9.11 → 0.9.12
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/_virtual/_rolldown/runtime.cjs +16 -0
- package/dist/_virtual/_rolldown/runtime.mjs +45 -0
- package/dist/components/upgrade-builtin.cjs +1 -1
- package/dist/components/upgrade-builtin.mjs +1 -1
- package/dist/components/upgrade-builtin.mjs.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/node_modules/.pnpm/@mdit_plugin-alert@0.23.2_markdown-it@14.1.1/node_modules/@mdit/plugin-alert/dist/index.cjs +94 -0
- package/dist/node_modules/.pnpm/@mdit_plugin-alert@0.23.2_markdown-it@14.1.1/node_modules/@mdit/plugin-alert/dist/index.mjs +94 -0
- package/dist/node_modules/.pnpm/@mdit_plugin-alert@0.23.2_markdown-it@14.1.1/node_modules/@mdit/plugin-alert/dist/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/ansi-styles@6.2.3/node_modules/ansi-styles/index.cjs +167 -0
- package/dist/node_modules/.pnpm/ansi-styles@6.2.3/node_modules/ansi-styles/index.mjs +167 -0
- package/dist/node_modules/.pnpm/ansi-styles@6.2.3/node_modules/ansi-styles/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/chalk-string@4.0.0/node_modules/chalk-string/build/src/args.cjs +36 -0
- package/dist/node_modules/.pnpm/chalk-string@4.0.0/node_modules/chalk-string/build/src/args.mjs +36 -0
- package/dist/node_modules/.pnpm/chalk-string@4.0.0/node_modules/chalk-string/build/src/args.mjs.map +1 -0
- package/dist/node_modules/.pnpm/chalk-string@4.0.0/node_modules/chalk-string/build/src/main.cjs +32 -0
- package/dist/node_modules/.pnpm/chalk-string@4.0.0/node_modules/chalk-string/build/src/main.mjs +33 -0
- package/dist/node_modules/.pnpm/chalk-string@4.0.0/node_modules/chalk-string/build/src/main.mjs.map +1 -0
- package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/index.cjs +133 -0
- package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/index.mjs +134 -0
- package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/utilities.cjs +32 -0
- package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/utilities.mjs +31 -0
- package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/utilities.mjs.map +1 -0
- package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/ansi-styles/index.cjs +169 -0
- package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/ansi-styles/index.mjs +167 -0
- package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/ansi-styles/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/supports-color/index.cjs +98 -0
- package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/supports-color/index.mjs +95 -0
- package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/supports-color/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/colors-option@6.1.2/node_modules/colors-option/build/src/main.cjs +23 -0
- package/dist/node_modules/.pnpm/colors-option@6.1.2/node_modules/colors-option/build/src/main.mjs +23 -0
- package/dist/node_modules/.pnpm/colors-option@6.1.2/node_modules/colors-option/build/src/main.mjs.map +1 -0
- package/dist/node_modules/.pnpm/colors-option@6.1.2/node_modules/colors-option/build/src/options.cjs +36 -0
- package/dist/node_modules/.pnpm/colors-option@6.1.2/node_modules/colors-option/build/src/options.mjs +36 -0
- package/dist/node_modules/.pnpm/colors-option@6.1.2/node_modules/colors-option/build/src/options.mjs.map +1 -0
- package/dist/node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/decode.cjs +373 -0
- package/dist/node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/decode.mjs +374 -0
- package/dist/node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/decode.mjs.map +1 -0
- package/dist/node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/decode_codepoint.cjs +60 -0
- package/dist/node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/decode_codepoint.mjs +59 -0
- package/dist/node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/decode_codepoint.mjs.map +1 -0
- package/dist/node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/generated/decode-data-html.cjs +6 -0
- package/dist/node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/generated/decode-data-html.mjs +6 -0
- package/dist/node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/generated/decode-data-html.mjs.map +1 -0
- package/dist/node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/generated/decode-data-xml.cjs +6 -0
- package/dist/node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/generated/decode-data-xml.mjs +6 -0
- package/dist/node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/generated/decode-data-xml.mjs.map +1 -0
- package/dist/node_modules/.pnpm/entities@6.0.1/node_modules/entities/dist/esm/decode-codepoint.cjs +59 -0
- package/dist/node_modules/.pnpm/entities@6.0.1/node_modules/entities/dist/esm/decode-codepoint.mjs +59 -0
- package/dist/node_modules/.pnpm/entities@6.0.1/node_modules/entities/dist/esm/decode-codepoint.mjs.map +1 -0
- package/dist/node_modules/.pnpm/entities@6.0.1/node_modules/entities/dist/esm/decode.cjs +338 -0
- package/dist/node_modules/.pnpm/entities@6.0.1/node_modules/entities/dist/esm/decode.mjs +333 -0
- package/dist/node_modules/.pnpm/entities@6.0.1/node_modules/entities/dist/esm/decode.mjs.map +1 -0
- package/dist/node_modules/.pnpm/entities@6.0.1/node_modules/entities/dist/esm/generated/decode-data-html.cjs +6 -0
- package/dist/node_modules/.pnpm/entities@6.0.1/node_modules/entities/dist/esm/generated/decode-data-html.mjs +6 -0
- package/dist/node_modules/.pnpm/entities@6.0.1/node_modules/entities/dist/esm/generated/decode-data-html.mjs.map +1 -0
- package/dist/node_modules/.pnpm/he@1.2.0/node_modules/he/he.cjs +4095 -0
- package/dist/node_modules/.pnpm/he@1.2.0/node_modules/he/he.mjs +4093 -0
- package/dist/node_modules/.pnpm/he@1.2.0/node_modules/he/he.mjs.map +1 -0
- package/dist/node_modules/.pnpm/is-plain-obj@4.1.0/node_modules/is-plain-obj/index.cjs +10 -0
- package/dist/node_modules/.pnpm/is-plain-obj@4.1.0/node_modules/is-plain-obj/index.mjs +10 -0
- package/dist/node_modules/.pnpm/is-plain-obj@4.1.0/node_modules/is-plain-obj/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/linkify-it@5.0.0/node_modules/linkify-it/index.cjs +449 -0
- package/dist/node_modules/.pnpm/linkify-it@5.0.0/node_modules/linkify-it/index.mjs +450 -0
- package/dist/node_modules/.pnpm/linkify-it@5.0.0/node_modules/linkify-it/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/linkify-it@5.0.0/node_modules/linkify-it/lib/re.cjs +47 -0
- package/dist/node_modules/.pnpm/linkify-it@5.0.0/node_modules/linkify-it/lib/re.mjs +48 -0
- package/dist/node_modules/.pnpm/linkify-it@5.0.0/node_modules/linkify-it/lib/re.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it-abbr@2.0.0/node_modules/markdown-it-abbr/index.cjs +94 -0
- package/dist/node_modules/.pnpm/markdown-it-abbr@2.0.0/node_modules/markdown-it-abbr/index.mjs +94 -0
- package/dist/node_modules/.pnpm/markdown-it-abbr@2.0.0/node_modules/markdown-it-abbr/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it-container@4.0.0/node_modules/markdown-it-container/index.cjs +78 -0
- package/dist/node_modules/.pnpm/markdown-it-container@4.0.0/node_modules/markdown-it-container/index.mjs +78 -0
- package/dist/node_modules/.pnpm/markdown-it-container@4.0.0/node_modules/markdown-it-container/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it-deflist@3.0.0/node_modules/markdown-it-deflist/index.cjs +123 -0
- package/dist/node_modules/.pnpm/markdown-it-deflist@3.0.0/node_modules/markdown-it-deflist/index.mjs +123 -0
- package/dist/node_modules/.pnpm/markdown-it-deflist@3.0.0/node_modules/markdown-it-deflist/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it-footnote@4.0.0/node_modules/markdown-it-footnote/index.cjs +246 -0
- package/dist/node_modules/.pnpm/markdown-it-footnote@4.0.0/node_modules/markdown-it-footnote/index.mjs +244 -0
- package/dist/node_modules/.pnpm/markdown-it-footnote@4.0.0/node_modules/markdown-it-footnote/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it-ins@4.0.0/node_modules/markdown-it-ins/index.cjs +80 -0
- package/dist/node_modules/.pnpm/markdown-it-ins@4.0.0/node_modules/markdown-it-ins/index.mjs +80 -0
- package/dist/node_modules/.pnpm/markdown-it-ins@4.0.0/node_modules/markdown-it-ins/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it-mark@4.0.0/node_modules/markdown-it-mark/index.cjs +80 -0
- package/dist/node_modules/.pnpm/markdown-it-mark@4.0.0/node_modules/markdown-it-mark/index.mjs +80 -0
- package/dist/node_modules/.pnpm/markdown-it-mark@4.0.0/node_modules/markdown-it-mark/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it-sub@2.0.0/node_modules/markdown-it-sub/index.cjs +45 -0
- package/dist/node_modules/.pnpm/markdown-it-sub@2.0.0/node_modules/markdown-it-sub/index.mjs +45 -0
- package/dist/node_modules/.pnpm/markdown-it-sub@2.0.0/node_modules/markdown-it-sub/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it-sup@2.0.0/node_modules/markdown-it-sup/index.cjs +45 -0
- package/dist/node_modules/.pnpm/markdown-it-sup@2.0.0/node_modules/markdown-it-sup/index.mjs +45 -0
- package/dist/node_modules/.pnpm/markdown-it-sup@2.0.0/node_modules/markdown-it-sup/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it-task-lists@2.1.1/node_modules/markdown-it-task-lists/index.cjs +94 -0
- package/dist/node_modules/.pnpm/markdown-it-task-lists@2.1.1/node_modules/markdown-it-task-lists/index.mjs +92 -0
- package/dist/node_modules/.pnpm/markdown-it-task-lists@2.1.1/node_modules/markdown-it-task-lists/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/index.cjs +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/index.mjs +3 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/common/html_blocks.cjs +69 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/common/html_blocks.mjs +69 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/common/html_blocks.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/common/html_re.cjs +9 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/common/html_re.mjs +8 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/common/html_re.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/common/utils.cjs +205 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/common/utils.mjs +189 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/common/utils.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/helpers/index.cjs +19 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/helpers/index.mjs +15 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/helpers/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/helpers/parse_link_destination.cjs +61 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/helpers/parse_link_destination.mjs +62 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/helpers/parse_link_destination.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/helpers/parse_link_label.cjs +35 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/helpers/parse_link_label.mjs +35 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/helpers/parse_link_label.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/helpers/parse_link_title.cjs +43 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/helpers/parse_link_title.mjs +44 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/helpers/parse_link_title.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/index.cjs +488 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/index.mjs +489 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/parser_block.cjs +148 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/parser_block.mjs +149 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/parser_block.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/parser_core.cjs +51 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/parser_core.mjs +52 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/parser_core.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/parser_inline.cjs +126 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/parser_inline.mjs +127 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/parser_inline.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/presets/commonmark.cjs +57 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/presets/commonmark.mjs +57 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/presets/commonmark.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/presets/default.cjs +23 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/presets/default.mjs +23 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/presets/default.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/presets/zero.cjs +31 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/presets/zero.mjs +31 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/presets/zero.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/renderer.cjs +217 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/renderer.mjs +218 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/renderer.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/ruler.cjs +274 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/ruler.mjs +274 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/ruler.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/blockquote.cjs +107 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/blockquote.mjs +108 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/blockquote.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/code.cjs +27 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/code.mjs +27 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/code.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/fence.cjs +48 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/fence.mjs +48 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/fence.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/heading.cjs +35 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/heading.mjs +36 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/heading.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/hr.cjs +26 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/hr.mjs +27 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/hr.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/html_block.cjs +72 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/html_block.mjs +73 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/html_block.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/lheading.cjs +53 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/lheading.mjs +53 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/lheading.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/list.cjs +157 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/list.mjs +158 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/list.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/paragraph.cjs +32 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/paragraph.mjs +32 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/paragraph.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/reference.cjs +140 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/reference.mjs +141 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/reference.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/state_block.cjs +112 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/state_block.mjs +113 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/state_block.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/table.cjs +139 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/table.mjs +140 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_block/table.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/block.cjs +15 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/block.mjs +15 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/block.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/inline.cjs +12 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/inline.mjs +12 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/inline.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/linkify.cjs +81 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/linkify.mjs +82 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/linkify.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/normalize.cjs +13 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/normalize.mjs +13 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/normalize.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/replacements.cjs +45 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/replacements.mjs +45 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/replacements.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/smartquotes.cjs +112 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/smartquotes.mjs +113 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/smartquotes.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/state_core.cjs +14 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/state_core.mjs +15 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/state_core.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/text_join.cjs +22 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/text_join.mjs +22 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_core/text_join.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/autolink.cjs +55 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/autolink.mjs +55 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/autolink.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/backticks.cjs +41 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/backticks.mjs +41 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/backticks.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/balance_pairs.cjs +62 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/balance_pairs.mjs +62 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/balance_pairs.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/emphasis.cjs +64 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/emphasis.mjs +64 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/emphasis.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/entity.cjs +45 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/entity.mjs +46 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/entity.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/escape.cjs +48 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/escape.mjs +49 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/escape.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/fragments_join.cjs +22 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/fragments_join.mjs +22 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/fragments_join.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/html_inline.cjs +34 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/html_inline.mjs +35 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/html_inline.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/image.cjs +82 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/image.mjs +83 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/image.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/link.cjs +84 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/link.mjs +85 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/link.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/linkify.cjs +42 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/linkify.mjs +42 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/linkify.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/newline.cjs +26 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/newline.mjs +27 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/newline.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/state_inline.cjs +74 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/state_inline.mjs +75 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/state_inline.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/strikethrough.cjs +80 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/strikethrough.mjs +80 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/strikethrough.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/text.cjs +41 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/text.mjs +41 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/rules_inline/text.mjs.map +1 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/token.cjs +157 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/token.mjs +157 -0
- package/dist/node_modules/.pnpm/markdown-it@14.1.1/node_modules/markdown-it/lib/token.mjs.map +1 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/index.cjs +21 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/index.mjs +17 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/decode.cjs +74 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/decode.mjs +74 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/decode.mjs.map +1 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/encode.cjs +57 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/encode.mjs +57 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/encode.mjs.map +1 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/format.cjs +18 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/format.mjs +18 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/format.mjs.map +1 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/parse.cjs +175 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/parse.mjs +175 -0
- package/dist/node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/parse.mjs.map +1 -0
- package/dist/node_modules/.pnpm/normalize-html-whitespace@1.0.0/node_modules/normalize-html-whitespace/index.cjs +19 -0
- package/dist/node_modules/.pnpm/normalize-html-whitespace@1.0.0/node_modules/normalize-html-whitespace/index.mjs +15 -0
- package/dist/node_modules/.pnpm/normalize-html-whitespace@1.0.0/node_modules/normalize-html-whitespace/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/doctype.cjs +104 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/doctype.mjs +104 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/doctype.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/error-codes.cjs +73 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/error-codes.mjs +68 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/error-codes.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/foreign-content.cjs +266 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/foreign-content.mjs +262 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/foreign-content.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/html.cjs +575 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/html.mjs +543 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/html.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/token.cjs +27 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/token.mjs +21 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/token.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/unicode.cjs +105 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/unicode.mjs +94 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/unicode.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/index.cjs +33 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/index.mjs +34 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/parser/formatting-element-list.cjs +99 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/parser/formatting-element-list.mjs +93 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/parser/formatting-element-list.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/parser/index.cjs +2544 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/parser/index.mjs +2545 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/parser/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/parser/open-element-stack.cjs +296 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/parser/open-element-stack.mjs +297 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/parser/open-element-stack.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/serializer/index.cjs +26 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/serializer/index.mjs +28 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/serializer/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tokenizer/index.cjs +2069 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tokenizer/index.mjs +2069 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tokenizer/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tokenizer/preprocessor.cjs +156 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tokenizer/preprocessor.mjs +157 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tokenizer/preprocessor.mjs.map +1 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tree-adapters/default.cjs +166 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tree-adapters/default.mjs +167 -0
- package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tree-adapters/default.mjs.map +1 -0
- package/dist/node_modules/.pnpm/punycode.js@2.3.1/node_modules/punycode.js/punycode.cjs +299 -0
- package/dist/node_modules/.pnpm/punycode.js@2.3.1/node_modules/punycode.js/punycode.mjs +295 -0
- package/dist/node_modules/.pnpm/punycode.js@2.3.1/node_modules/punycode.js/punycode.mjs.map +1 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/Cc/regex.cjs +6 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/Cc/regex.mjs +6 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/Cc/regex.mjs.map +1 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/Cf/regex.cjs +6 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/Cf/regex.mjs +6 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/Cf/regex.mjs.map +1 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/P/regex.cjs +6 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/P/regex.mjs +6 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/P/regex.mjs.map +1 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/S/regex.cjs +6 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/S/regex.mjs +6 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/S/regex.mjs.map +1 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/Z/regex.cjs +6 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/Z/regex.mjs +6 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/Z/regex.mjs.map +1 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/index.cjs +25 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/index.mjs +21 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/index.mjs.map +1 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/properties/Any/regex.cjs +6 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/properties/Any/regex.mjs +6 -0
- package/dist/node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/properties/Any/regex.mjs.map +1 -0
- package/dist/node_modules/.pnpm/wrap-ansi@10.0.0/node_modules/wrap-ansi/index.cjs +15 -0
- package/dist/node_modules/.pnpm/wrap-ansi@10.0.0/node_modules/wrap-ansi/index.mjs +17 -0
- package/dist/node_modules/.pnpm/wrap-ansi@10.0.0/node_modules/wrap-ansi/index.mjs.map +1 -0
- package/dist/{plugin-changelog → packages/plugin-changelog}/dist/components/changelog-command.cjs +5 -4
- package/dist/packages/plugin-changelog/dist/components/changelog-command.mjs +4 -3
- package/dist/packages/plugin-changelog/dist/components/changelog-command.mjs.map +1 -1
- package/dist/{plugin-changelog → packages/plugin-changelog}/dist/index.cjs +1 -1
- package/dist/packages/unified/dist/html-Di3_LwV3.cjs +337 -0
- package/dist/packages/unified/dist/html-Di3_LwV3.mjs +338 -0
- package/dist/packages/unified/dist/html-Di3_LwV3.mjs.map +1 -0
- package/dist/packages/unified/dist/markdown/index.cjs +1 -0
- package/dist/packages/unified/dist/markdown/index.mjs +3 -0
- package/dist/packages/unified/dist/markdown-OuY_JOk0.cjs +82 -0
- package/dist/packages/unified/dist/markdown-OuY_JOk0.mjs +83 -0
- package/dist/packages/unified/dist/markdown-OuY_JOk0.mjs.map +1 -0
- package/package.json +39 -12
- package/dist/packages/unified/dist/markdown-Bs-BRrSC.mjs +0 -10
- package/dist/packages/unified/dist/markdown-Bs-BRrSC.mjs.map +0 -1
- package/dist/unified/dist/markdown-Bs-BRrSC.cjs +0 -10
- /package/dist/{plugin-changelog → packages/plugin-changelog}/dist/components/index.cjs +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["$","$$"],"sources":["../../../../../../../../../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tokenizer/index.js"],"sourcesContent":["import { Preprocessor } from './preprocessor.js';\nimport { CODE_POINTS as $, SEQUENCES as $$, REPLACEMENT_CHARACTER, isSurrogate, isUndefinedCodePoint, isControlCodePoint, } from '../common/unicode.js';\nimport { TokenType, getTokenAttr, } from '../common/token.js';\nimport { htmlDecodeTree, EntityDecoder, DecodingMode } from 'entities/decode';\nimport { ERR } from '../common/error-codes.js';\nimport { TAG_ID, getTagID } from '../common/html.js';\n//States\nvar State;\n(function (State) {\n State[State[\"DATA\"] = 0] = \"DATA\";\n State[State[\"RCDATA\"] = 1] = \"RCDATA\";\n State[State[\"RAWTEXT\"] = 2] = \"RAWTEXT\";\n State[State[\"SCRIPT_DATA\"] = 3] = \"SCRIPT_DATA\";\n State[State[\"PLAINTEXT\"] = 4] = \"PLAINTEXT\";\n State[State[\"TAG_OPEN\"] = 5] = \"TAG_OPEN\";\n State[State[\"END_TAG_OPEN\"] = 6] = \"END_TAG_OPEN\";\n State[State[\"TAG_NAME\"] = 7] = \"TAG_NAME\";\n State[State[\"RCDATA_LESS_THAN_SIGN\"] = 8] = \"RCDATA_LESS_THAN_SIGN\";\n State[State[\"RCDATA_END_TAG_OPEN\"] = 9] = \"RCDATA_END_TAG_OPEN\";\n State[State[\"RCDATA_END_TAG_NAME\"] = 10] = \"RCDATA_END_TAG_NAME\";\n State[State[\"RAWTEXT_LESS_THAN_SIGN\"] = 11] = \"RAWTEXT_LESS_THAN_SIGN\";\n State[State[\"RAWTEXT_END_TAG_OPEN\"] = 12] = \"RAWTEXT_END_TAG_OPEN\";\n State[State[\"RAWTEXT_END_TAG_NAME\"] = 13] = \"RAWTEXT_END_TAG_NAME\";\n State[State[\"SCRIPT_DATA_LESS_THAN_SIGN\"] = 14] = \"SCRIPT_DATA_LESS_THAN_SIGN\";\n State[State[\"SCRIPT_DATA_END_TAG_OPEN\"] = 15] = \"SCRIPT_DATA_END_TAG_OPEN\";\n State[State[\"SCRIPT_DATA_END_TAG_NAME\"] = 16] = \"SCRIPT_DATA_END_TAG_NAME\";\n State[State[\"SCRIPT_DATA_ESCAPE_START\"] = 17] = \"SCRIPT_DATA_ESCAPE_START\";\n State[State[\"SCRIPT_DATA_ESCAPE_START_DASH\"] = 18] = \"SCRIPT_DATA_ESCAPE_START_DASH\";\n State[State[\"SCRIPT_DATA_ESCAPED\"] = 19] = \"SCRIPT_DATA_ESCAPED\";\n State[State[\"SCRIPT_DATA_ESCAPED_DASH\"] = 20] = \"SCRIPT_DATA_ESCAPED_DASH\";\n State[State[\"SCRIPT_DATA_ESCAPED_DASH_DASH\"] = 21] = \"SCRIPT_DATA_ESCAPED_DASH_DASH\";\n State[State[\"SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN\"] = 22] = \"SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN\";\n State[State[\"SCRIPT_DATA_ESCAPED_END_TAG_OPEN\"] = 23] = \"SCRIPT_DATA_ESCAPED_END_TAG_OPEN\";\n State[State[\"SCRIPT_DATA_ESCAPED_END_TAG_NAME\"] = 24] = \"SCRIPT_DATA_ESCAPED_END_TAG_NAME\";\n State[State[\"SCRIPT_DATA_DOUBLE_ESCAPE_START\"] = 25] = \"SCRIPT_DATA_DOUBLE_ESCAPE_START\";\n State[State[\"SCRIPT_DATA_DOUBLE_ESCAPED\"] = 26] = \"SCRIPT_DATA_DOUBLE_ESCAPED\";\n State[State[\"SCRIPT_DATA_DOUBLE_ESCAPED_DASH\"] = 27] = \"SCRIPT_DATA_DOUBLE_ESCAPED_DASH\";\n State[State[\"SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH\"] = 28] = \"SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH\";\n State[State[\"SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN\"] = 29] = \"SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN\";\n State[State[\"SCRIPT_DATA_DOUBLE_ESCAPE_END\"] = 30] = \"SCRIPT_DATA_DOUBLE_ESCAPE_END\";\n State[State[\"BEFORE_ATTRIBUTE_NAME\"] = 31] = \"BEFORE_ATTRIBUTE_NAME\";\n State[State[\"ATTRIBUTE_NAME\"] = 32] = \"ATTRIBUTE_NAME\";\n State[State[\"AFTER_ATTRIBUTE_NAME\"] = 33] = \"AFTER_ATTRIBUTE_NAME\";\n State[State[\"BEFORE_ATTRIBUTE_VALUE\"] = 34] = \"BEFORE_ATTRIBUTE_VALUE\";\n State[State[\"ATTRIBUTE_VALUE_DOUBLE_QUOTED\"] = 35] = \"ATTRIBUTE_VALUE_DOUBLE_QUOTED\";\n State[State[\"ATTRIBUTE_VALUE_SINGLE_QUOTED\"] = 36] = \"ATTRIBUTE_VALUE_SINGLE_QUOTED\";\n State[State[\"ATTRIBUTE_VALUE_UNQUOTED\"] = 37] = \"ATTRIBUTE_VALUE_UNQUOTED\";\n State[State[\"AFTER_ATTRIBUTE_VALUE_QUOTED\"] = 38] = \"AFTER_ATTRIBUTE_VALUE_QUOTED\";\n State[State[\"SELF_CLOSING_START_TAG\"] = 39] = \"SELF_CLOSING_START_TAG\";\n State[State[\"BOGUS_COMMENT\"] = 40] = \"BOGUS_COMMENT\";\n State[State[\"MARKUP_DECLARATION_OPEN\"] = 41] = \"MARKUP_DECLARATION_OPEN\";\n State[State[\"COMMENT_START\"] = 42] = \"COMMENT_START\";\n State[State[\"COMMENT_START_DASH\"] = 43] = \"COMMENT_START_DASH\";\n State[State[\"COMMENT\"] = 44] = \"COMMENT\";\n State[State[\"COMMENT_LESS_THAN_SIGN\"] = 45] = \"COMMENT_LESS_THAN_SIGN\";\n State[State[\"COMMENT_LESS_THAN_SIGN_BANG\"] = 46] = \"COMMENT_LESS_THAN_SIGN_BANG\";\n State[State[\"COMMENT_LESS_THAN_SIGN_BANG_DASH\"] = 47] = \"COMMENT_LESS_THAN_SIGN_BANG_DASH\";\n State[State[\"COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH\"] = 48] = \"COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH\";\n State[State[\"COMMENT_END_DASH\"] = 49] = \"COMMENT_END_DASH\";\n State[State[\"COMMENT_END\"] = 50] = \"COMMENT_END\";\n State[State[\"COMMENT_END_BANG\"] = 51] = \"COMMENT_END_BANG\";\n State[State[\"DOCTYPE\"] = 52] = \"DOCTYPE\";\n State[State[\"BEFORE_DOCTYPE_NAME\"] = 53] = \"BEFORE_DOCTYPE_NAME\";\n State[State[\"DOCTYPE_NAME\"] = 54] = \"DOCTYPE_NAME\";\n State[State[\"AFTER_DOCTYPE_NAME\"] = 55] = \"AFTER_DOCTYPE_NAME\";\n State[State[\"AFTER_DOCTYPE_PUBLIC_KEYWORD\"] = 56] = \"AFTER_DOCTYPE_PUBLIC_KEYWORD\";\n State[State[\"BEFORE_DOCTYPE_PUBLIC_IDENTIFIER\"] = 57] = \"BEFORE_DOCTYPE_PUBLIC_IDENTIFIER\";\n State[State[\"DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED\"] = 58] = \"DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED\";\n State[State[\"DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED\"] = 59] = \"DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED\";\n State[State[\"AFTER_DOCTYPE_PUBLIC_IDENTIFIER\"] = 60] = \"AFTER_DOCTYPE_PUBLIC_IDENTIFIER\";\n State[State[\"BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS\"] = 61] = \"BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS\";\n State[State[\"AFTER_DOCTYPE_SYSTEM_KEYWORD\"] = 62] = \"AFTER_DOCTYPE_SYSTEM_KEYWORD\";\n State[State[\"BEFORE_DOCTYPE_SYSTEM_IDENTIFIER\"] = 63] = \"BEFORE_DOCTYPE_SYSTEM_IDENTIFIER\";\n State[State[\"DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED\"] = 64] = \"DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED\";\n State[State[\"DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED\"] = 65] = \"DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED\";\n State[State[\"AFTER_DOCTYPE_SYSTEM_IDENTIFIER\"] = 66] = \"AFTER_DOCTYPE_SYSTEM_IDENTIFIER\";\n State[State[\"BOGUS_DOCTYPE\"] = 67] = \"BOGUS_DOCTYPE\";\n State[State[\"CDATA_SECTION\"] = 68] = \"CDATA_SECTION\";\n State[State[\"CDATA_SECTION_BRACKET\"] = 69] = \"CDATA_SECTION_BRACKET\";\n State[State[\"CDATA_SECTION_END\"] = 70] = \"CDATA_SECTION_END\";\n State[State[\"CHARACTER_REFERENCE\"] = 71] = \"CHARACTER_REFERENCE\";\n State[State[\"AMBIGUOUS_AMPERSAND\"] = 72] = \"AMBIGUOUS_AMPERSAND\";\n})(State || (State = {}));\n//Tokenizer initial states for different modes\nexport const TokenizerMode = {\n DATA: State.DATA,\n RCDATA: State.RCDATA,\n RAWTEXT: State.RAWTEXT,\n SCRIPT_DATA: State.SCRIPT_DATA,\n PLAINTEXT: State.PLAINTEXT,\n CDATA_SECTION: State.CDATA_SECTION,\n};\n//Utils\n//OPTIMIZATION: these utility functions should not be moved out of this module. V8 Crankshaft will not inline\n//this functions if they will be situated in another module due to context switch.\n//Always perform inlining check before modifying this functions ('node --trace-inlining').\nfunction isAsciiDigit(cp) {\n return cp >= $.DIGIT_0 && cp <= $.DIGIT_9;\n}\nfunction isAsciiUpper(cp) {\n return cp >= $.LATIN_CAPITAL_A && cp <= $.LATIN_CAPITAL_Z;\n}\nfunction isAsciiLower(cp) {\n return cp >= $.LATIN_SMALL_A && cp <= $.LATIN_SMALL_Z;\n}\nfunction isAsciiLetter(cp) {\n return isAsciiLower(cp) || isAsciiUpper(cp);\n}\nfunction isAsciiAlphaNumeric(cp) {\n return isAsciiLetter(cp) || isAsciiDigit(cp);\n}\nfunction toAsciiLower(cp) {\n return cp + 32;\n}\nfunction isWhitespace(cp) {\n return cp === $.SPACE || cp === $.LINE_FEED || cp === $.TABULATION || cp === $.FORM_FEED;\n}\nfunction isScriptDataDoubleEscapeSequenceEnd(cp) {\n return isWhitespace(cp) || cp === $.SOLIDUS || cp === $.GREATER_THAN_SIGN;\n}\nfunction getErrorForNumericCharacterReference(code) {\n if (code === $.NULL) {\n return ERR.nullCharacterReference;\n }\n else if (code > 1114111) {\n return ERR.characterReferenceOutsideUnicodeRange;\n }\n else if (isSurrogate(code)) {\n return ERR.surrogateCharacterReference;\n }\n else if (isUndefinedCodePoint(code)) {\n return ERR.noncharacterCharacterReference;\n }\n else if (isControlCodePoint(code) || code === $.CARRIAGE_RETURN) {\n return ERR.controlCharacterReference;\n }\n return null;\n}\n//Tokenizer\nexport class Tokenizer {\n constructor(options, handler) {\n this.options = options;\n this.handler = handler;\n this.paused = false;\n /** Ensures that the parsing loop isn't run multiple times at once. */\n this.inLoop = false;\n /**\n * Indicates that the current adjusted node exists, is not an element in the HTML namespace,\n * and that it is not an integration point for either MathML or HTML.\n *\n * @see {@link https://html.spec.whatwg.org/multipage/parsing.html#tree-construction}\n */\n this.inForeignNode = false;\n this.lastStartTagName = '';\n this.active = false;\n this.state = State.DATA;\n this.returnState = State.DATA;\n this.entityStartPos = 0;\n this.consumedAfterSnapshot = -1;\n this.currentCharacterToken = null;\n this.currentToken = null;\n this.currentAttr = { name: '', value: '' };\n this.preprocessor = new Preprocessor(handler);\n this.currentLocation = this.getCurrentLocation(-1);\n this.entityDecoder = new EntityDecoder(htmlDecodeTree, (cp, consumed) => {\n // Note: Set `pos` _before_ flushing, as flushing might drop\n // the current chunk and invalidate `entityStartPos`.\n this.preprocessor.pos = this.entityStartPos + consumed - 1;\n this._flushCodePointConsumedAsCharacterReference(cp);\n }, handler.onParseError\n ? {\n missingSemicolonAfterCharacterReference: () => {\n this._err(ERR.missingSemicolonAfterCharacterReference, 1);\n },\n absenceOfDigitsInNumericCharacterReference: (consumed) => {\n this._err(ERR.absenceOfDigitsInNumericCharacterReference, this.entityStartPos - this.preprocessor.pos + consumed);\n },\n validateNumericCharacterReference: (code) => {\n const error = getErrorForNumericCharacterReference(code);\n if (error)\n this._err(error, 1);\n },\n }\n : undefined);\n }\n //Errors\n _err(code, cpOffset = 0) {\n var _a, _b;\n (_b = (_a = this.handler).onParseError) === null || _b === void 0 ? void 0 : _b.call(_a, this.preprocessor.getError(code, cpOffset));\n }\n // NOTE: `offset` may never run across line boundaries.\n getCurrentLocation(offset) {\n if (!this.options.sourceCodeLocationInfo) {\n return null;\n }\n return {\n startLine: this.preprocessor.line,\n startCol: this.preprocessor.col - offset,\n startOffset: this.preprocessor.offset - offset,\n endLine: -1,\n endCol: -1,\n endOffset: -1,\n };\n }\n _runParsingLoop() {\n if (this.inLoop)\n return;\n this.inLoop = true;\n while (this.active && !this.paused) {\n this.consumedAfterSnapshot = 0;\n const cp = this._consume();\n if (!this._ensureHibernation()) {\n this._callState(cp);\n }\n }\n this.inLoop = false;\n }\n //API\n pause() {\n this.paused = true;\n }\n resume(writeCallback) {\n if (!this.paused) {\n throw new Error('Parser was already resumed');\n }\n this.paused = false;\n // Necessary for synchronous resume.\n if (this.inLoop)\n return;\n this._runParsingLoop();\n if (!this.paused) {\n writeCallback === null || writeCallback === void 0 ? void 0 : writeCallback();\n }\n }\n write(chunk, isLastChunk, writeCallback) {\n this.active = true;\n this.preprocessor.write(chunk, isLastChunk);\n this._runParsingLoop();\n if (!this.paused) {\n writeCallback === null || writeCallback === void 0 ? void 0 : writeCallback();\n }\n }\n insertHtmlAtCurrentPos(chunk) {\n this.active = true;\n this.preprocessor.insertHtmlAtCurrentPos(chunk);\n this._runParsingLoop();\n }\n //Hibernation\n _ensureHibernation() {\n if (this.preprocessor.endOfChunkHit) {\n this.preprocessor.retreat(this.consumedAfterSnapshot);\n this.consumedAfterSnapshot = 0;\n this.active = false;\n return true;\n }\n return false;\n }\n //Consumption\n _consume() {\n this.consumedAfterSnapshot++;\n return this.preprocessor.advance();\n }\n _advanceBy(count) {\n this.consumedAfterSnapshot += count;\n for (let i = 0; i < count; i++) {\n this.preprocessor.advance();\n }\n }\n _consumeSequenceIfMatch(pattern, caseSensitive) {\n if (this.preprocessor.startsWith(pattern, caseSensitive)) {\n // We will already have consumed one character before calling this method.\n this._advanceBy(pattern.length - 1);\n return true;\n }\n return false;\n }\n //Token creation\n _createStartTagToken() {\n this.currentToken = {\n type: TokenType.START_TAG,\n tagName: '',\n tagID: TAG_ID.UNKNOWN,\n selfClosing: false,\n ackSelfClosing: false,\n attrs: [],\n location: this.getCurrentLocation(1),\n };\n }\n _createEndTagToken() {\n this.currentToken = {\n type: TokenType.END_TAG,\n tagName: '',\n tagID: TAG_ID.UNKNOWN,\n selfClosing: false,\n ackSelfClosing: false,\n attrs: [],\n location: this.getCurrentLocation(2),\n };\n }\n _createCommentToken(offset) {\n this.currentToken = {\n type: TokenType.COMMENT,\n data: '',\n location: this.getCurrentLocation(offset),\n };\n }\n _createDoctypeToken(initialName) {\n this.currentToken = {\n type: TokenType.DOCTYPE,\n name: initialName,\n forceQuirks: false,\n publicId: null,\n systemId: null,\n location: this.currentLocation,\n };\n }\n _createCharacterToken(type, chars) {\n this.currentCharacterToken = {\n type,\n chars,\n location: this.currentLocation,\n };\n }\n //Tag attributes\n _createAttr(attrNameFirstCh) {\n this.currentAttr = {\n name: attrNameFirstCh,\n value: '',\n };\n this.currentLocation = this.getCurrentLocation(0);\n }\n _leaveAttrName() {\n var _a;\n var _b;\n const token = this.currentToken;\n if (getTokenAttr(token, this.currentAttr.name) === null) {\n token.attrs.push(this.currentAttr);\n if (token.location && this.currentLocation) {\n const attrLocations = ((_a = (_b = token.location).attrs) !== null && _a !== void 0 ? _a : (_b.attrs = Object.create(null)));\n attrLocations[this.currentAttr.name] = this.currentLocation;\n // Set end location\n this._leaveAttrValue();\n }\n }\n else {\n this._err(ERR.duplicateAttribute);\n }\n }\n _leaveAttrValue() {\n if (this.currentLocation) {\n this.currentLocation.endLine = this.preprocessor.line;\n this.currentLocation.endCol = this.preprocessor.col;\n this.currentLocation.endOffset = this.preprocessor.offset;\n }\n }\n //Token emission\n prepareToken(ct) {\n this._emitCurrentCharacterToken(ct.location);\n this.currentToken = null;\n if (ct.location) {\n ct.location.endLine = this.preprocessor.line;\n ct.location.endCol = this.preprocessor.col + 1;\n ct.location.endOffset = this.preprocessor.offset + 1;\n }\n this.currentLocation = this.getCurrentLocation(-1);\n }\n emitCurrentTagToken() {\n const ct = this.currentToken;\n this.prepareToken(ct);\n ct.tagID = getTagID(ct.tagName);\n if (ct.type === TokenType.START_TAG) {\n this.lastStartTagName = ct.tagName;\n this.handler.onStartTag(ct);\n }\n else {\n if (ct.attrs.length > 0) {\n this._err(ERR.endTagWithAttributes);\n }\n if (ct.selfClosing) {\n this._err(ERR.endTagWithTrailingSolidus);\n }\n this.handler.onEndTag(ct);\n }\n this.preprocessor.dropParsedChunk();\n }\n emitCurrentComment(ct) {\n this.prepareToken(ct);\n this.handler.onComment(ct);\n this.preprocessor.dropParsedChunk();\n }\n emitCurrentDoctype(ct) {\n this.prepareToken(ct);\n this.handler.onDoctype(ct);\n this.preprocessor.dropParsedChunk();\n }\n _emitCurrentCharacterToken(nextLocation) {\n if (this.currentCharacterToken) {\n //NOTE: if we have a pending character token, make it's end location equal to the\n //current token's start location.\n if (nextLocation && this.currentCharacterToken.location) {\n this.currentCharacterToken.location.endLine = nextLocation.startLine;\n this.currentCharacterToken.location.endCol = nextLocation.startCol;\n this.currentCharacterToken.location.endOffset = nextLocation.startOffset;\n }\n switch (this.currentCharacterToken.type) {\n case TokenType.CHARACTER: {\n this.handler.onCharacter(this.currentCharacterToken);\n break;\n }\n case TokenType.NULL_CHARACTER: {\n this.handler.onNullCharacter(this.currentCharacterToken);\n break;\n }\n case TokenType.WHITESPACE_CHARACTER: {\n this.handler.onWhitespaceCharacter(this.currentCharacterToken);\n break;\n }\n }\n this.currentCharacterToken = null;\n }\n }\n _emitEOFToken() {\n const location = this.getCurrentLocation(0);\n if (location) {\n location.endLine = location.startLine;\n location.endCol = location.startCol;\n location.endOffset = location.startOffset;\n }\n this._emitCurrentCharacterToken(location);\n this.handler.onEof({ type: TokenType.EOF, location });\n this.active = false;\n }\n //Characters emission\n //OPTIMIZATION: The specification uses only one type of character token (one token per character).\n //This causes a huge memory overhead and a lot of unnecessary parser loops. parse5 uses 3 groups of characters.\n //If we have a sequence of characters that belong to the same group, the parser can process it\n //as a single solid character token.\n //So, there are 3 types of character tokens in parse5:\n //1)TokenType.NULL_CHARACTER - \\u0000-character sequences (e.g. '\\u0000\\u0000\\u0000')\n //2)TokenType.WHITESPACE_CHARACTER - any whitespace/new-line character sequences (e.g. '\\n \\r\\t \\f')\n //3)TokenType.CHARACTER - any character sequence which don't belong to groups 1 and 2 (e.g. 'abcdef1234@@#$%^')\n _appendCharToCurrentCharacterToken(type, ch) {\n if (this.currentCharacterToken) {\n if (this.currentCharacterToken.type === type) {\n this.currentCharacterToken.chars += ch;\n return;\n }\n else {\n this.currentLocation = this.getCurrentLocation(0);\n this._emitCurrentCharacterToken(this.currentLocation);\n this.preprocessor.dropParsedChunk();\n }\n }\n this._createCharacterToken(type, ch);\n }\n _emitCodePoint(cp) {\n const type = isWhitespace(cp)\n ? TokenType.WHITESPACE_CHARACTER\n : cp === $.NULL\n ? TokenType.NULL_CHARACTER\n : TokenType.CHARACTER;\n this._appendCharToCurrentCharacterToken(type, String.fromCodePoint(cp));\n }\n //NOTE: used when we emit characters explicitly.\n //This is always for non-whitespace and non-null characters, which allows us to avoid additional checks.\n _emitChars(ch) {\n this._appendCharToCurrentCharacterToken(TokenType.CHARACTER, ch);\n }\n // Character reference helpers\n _startCharacterReference() {\n this.returnState = this.state;\n this.state = State.CHARACTER_REFERENCE;\n this.entityStartPos = this.preprocessor.pos;\n this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute() ? DecodingMode.Attribute : DecodingMode.Legacy);\n }\n _isCharacterReferenceInAttribute() {\n return (this.returnState === State.ATTRIBUTE_VALUE_DOUBLE_QUOTED ||\n this.returnState === State.ATTRIBUTE_VALUE_SINGLE_QUOTED ||\n this.returnState === State.ATTRIBUTE_VALUE_UNQUOTED);\n }\n _flushCodePointConsumedAsCharacterReference(cp) {\n if (this._isCharacterReferenceInAttribute()) {\n this.currentAttr.value += String.fromCodePoint(cp);\n }\n else {\n this._emitCodePoint(cp);\n }\n }\n // Calling states this way turns out to be much faster than any other approach.\n _callState(cp) {\n switch (this.state) {\n case State.DATA: {\n this._stateData(cp);\n break;\n }\n case State.RCDATA: {\n this._stateRcdata(cp);\n break;\n }\n case State.RAWTEXT: {\n this._stateRawtext(cp);\n break;\n }\n case State.SCRIPT_DATA: {\n this._stateScriptData(cp);\n break;\n }\n case State.PLAINTEXT: {\n this._statePlaintext(cp);\n break;\n }\n case State.TAG_OPEN: {\n this._stateTagOpen(cp);\n break;\n }\n case State.END_TAG_OPEN: {\n this._stateEndTagOpen(cp);\n break;\n }\n case State.TAG_NAME: {\n this._stateTagName(cp);\n break;\n }\n case State.RCDATA_LESS_THAN_SIGN: {\n this._stateRcdataLessThanSign(cp);\n break;\n }\n case State.RCDATA_END_TAG_OPEN: {\n this._stateRcdataEndTagOpen(cp);\n break;\n }\n case State.RCDATA_END_TAG_NAME: {\n this._stateRcdataEndTagName(cp);\n break;\n }\n case State.RAWTEXT_LESS_THAN_SIGN: {\n this._stateRawtextLessThanSign(cp);\n break;\n }\n case State.RAWTEXT_END_TAG_OPEN: {\n this._stateRawtextEndTagOpen(cp);\n break;\n }\n case State.RAWTEXT_END_TAG_NAME: {\n this._stateRawtextEndTagName(cp);\n break;\n }\n case State.SCRIPT_DATA_LESS_THAN_SIGN: {\n this._stateScriptDataLessThanSign(cp);\n break;\n }\n case State.SCRIPT_DATA_END_TAG_OPEN: {\n this._stateScriptDataEndTagOpen(cp);\n break;\n }\n case State.SCRIPT_DATA_END_TAG_NAME: {\n this._stateScriptDataEndTagName(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPE_START: {\n this._stateScriptDataEscapeStart(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPE_START_DASH: {\n this._stateScriptDataEscapeStartDash(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPED: {\n this._stateScriptDataEscaped(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPED_DASH: {\n this._stateScriptDataEscapedDash(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPED_DASH_DASH: {\n this._stateScriptDataEscapedDashDash(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN: {\n this._stateScriptDataEscapedLessThanSign(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPED_END_TAG_OPEN: {\n this._stateScriptDataEscapedEndTagOpen(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPED_END_TAG_NAME: {\n this._stateScriptDataEscapedEndTagName(cp);\n break;\n }\n case State.SCRIPT_DATA_DOUBLE_ESCAPE_START: {\n this._stateScriptDataDoubleEscapeStart(cp);\n break;\n }\n case State.SCRIPT_DATA_DOUBLE_ESCAPED: {\n this._stateScriptDataDoubleEscaped(cp);\n break;\n }\n case State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH: {\n this._stateScriptDataDoubleEscapedDash(cp);\n break;\n }\n case State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH: {\n this._stateScriptDataDoubleEscapedDashDash(cp);\n break;\n }\n case State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN: {\n this._stateScriptDataDoubleEscapedLessThanSign(cp);\n break;\n }\n case State.SCRIPT_DATA_DOUBLE_ESCAPE_END: {\n this._stateScriptDataDoubleEscapeEnd(cp);\n break;\n }\n case State.BEFORE_ATTRIBUTE_NAME: {\n this._stateBeforeAttributeName(cp);\n break;\n }\n case State.ATTRIBUTE_NAME: {\n this._stateAttributeName(cp);\n break;\n }\n case State.AFTER_ATTRIBUTE_NAME: {\n this._stateAfterAttributeName(cp);\n break;\n }\n case State.BEFORE_ATTRIBUTE_VALUE: {\n this._stateBeforeAttributeValue(cp);\n break;\n }\n case State.ATTRIBUTE_VALUE_DOUBLE_QUOTED: {\n this._stateAttributeValueDoubleQuoted(cp);\n break;\n }\n case State.ATTRIBUTE_VALUE_SINGLE_QUOTED: {\n this._stateAttributeValueSingleQuoted(cp);\n break;\n }\n case State.ATTRIBUTE_VALUE_UNQUOTED: {\n this._stateAttributeValueUnquoted(cp);\n break;\n }\n case State.AFTER_ATTRIBUTE_VALUE_QUOTED: {\n this._stateAfterAttributeValueQuoted(cp);\n break;\n }\n case State.SELF_CLOSING_START_TAG: {\n this._stateSelfClosingStartTag(cp);\n break;\n }\n case State.BOGUS_COMMENT: {\n this._stateBogusComment(cp);\n break;\n }\n case State.MARKUP_DECLARATION_OPEN: {\n this._stateMarkupDeclarationOpen(cp);\n break;\n }\n case State.COMMENT_START: {\n this._stateCommentStart(cp);\n break;\n }\n case State.COMMENT_START_DASH: {\n this._stateCommentStartDash(cp);\n break;\n }\n case State.COMMENT: {\n this._stateComment(cp);\n break;\n }\n case State.COMMENT_LESS_THAN_SIGN: {\n this._stateCommentLessThanSign(cp);\n break;\n }\n case State.COMMENT_LESS_THAN_SIGN_BANG: {\n this._stateCommentLessThanSignBang(cp);\n break;\n }\n case State.COMMENT_LESS_THAN_SIGN_BANG_DASH: {\n this._stateCommentLessThanSignBangDash(cp);\n break;\n }\n case State.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH: {\n this._stateCommentLessThanSignBangDashDash(cp);\n break;\n }\n case State.COMMENT_END_DASH: {\n this._stateCommentEndDash(cp);\n break;\n }\n case State.COMMENT_END: {\n this._stateCommentEnd(cp);\n break;\n }\n case State.COMMENT_END_BANG: {\n this._stateCommentEndBang(cp);\n break;\n }\n case State.DOCTYPE: {\n this._stateDoctype(cp);\n break;\n }\n case State.BEFORE_DOCTYPE_NAME: {\n this._stateBeforeDoctypeName(cp);\n break;\n }\n case State.DOCTYPE_NAME: {\n this._stateDoctypeName(cp);\n break;\n }\n case State.AFTER_DOCTYPE_NAME: {\n this._stateAfterDoctypeName(cp);\n break;\n }\n case State.AFTER_DOCTYPE_PUBLIC_KEYWORD: {\n this._stateAfterDoctypePublicKeyword(cp);\n break;\n }\n case State.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER: {\n this._stateBeforeDoctypePublicIdentifier(cp);\n break;\n }\n case State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED: {\n this._stateDoctypePublicIdentifierDoubleQuoted(cp);\n break;\n }\n case State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED: {\n this._stateDoctypePublicIdentifierSingleQuoted(cp);\n break;\n }\n case State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER: {\n this._stateAfterDoctypePublicIdentifier(cp);\n break;\n }\n case State.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS: {\n this._stateBetweenDoctypePublicAndSystemIdentifiers(cp);\n break;\n }\n case State.AFTER_DOCTYPE_SYSTEM_KEYWORD: {\n this._stateAfterDoctypeSystemKeyword(cp);\n break;\n }\n case State.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER: {\n this._stateBeforeDoctypeSystemIdentifier(cp);\n break;\n }\n case State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED: {\n this._stateDoctypeSystemIdentifierDoubleQuoted(cp);\n break;\n }\n case State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED: {\n this._stateDoctypeSystemIdentifierSingleQuoted(cp);\n break;\n }\n case State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER: {\n this._stateAfterDoctypeSystemIdentifier(cp);\n break;\n }\n case State.BOGUS_DOCTYPE: {\n this._stateBogusDoctype(cp);\n break;\n }\n case State.CDATA_SECTION: {\n this._stateCdataSection(cp);\n break;\n }\n case State.CDATA_SECTION_BRACKET: {\n this._stateCdataSectionBracket(cp);\n break;\n }\n case State.CDATA_SECTION_END: {\n this._stateCdataSectionEnd(cp);\n break;\n }\n case State.CHARACTER_REFERENCE: {\n this._stateCharacterReference();\n break;\n }\n case State.AMBIGUOUS_AMPERSAND: {\n this._stateAmbiguousAmpersand(cp);\n break;\n }\n default: {\n throw new Error('Unknown state');\n }\n }\n }\n // State machine\n // Data state\n //------------------------------------------------------------------\n _stateData(cp) {\n switch (cp) {\n case $.LESS_THAN_SIGN: {\n this.state = State.TAG_OPEN;\n break;\n }\n case $.AMPERSAND: {\n this._startCharacterReference();\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitCodePoint(cp);\n break;\n }\n case $.EOF: {\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // RCDATA state\n //------------------------------------------------------------------\n _stateRcdata(cp) {\n switch (cp) {\n case $.AMPERSAND: {\n this._startCharacterReference();\n break;\n }\n case $.LESS_THAN_SIGN: {\n this.state = State.RCDATA_LESS_THAN_SIGN;\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case $.EOF: {\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // RAWTEXT state\n //------------------------------------------------------------------\n _stateRawtext(cp) {\n switch (cp) {\n case $.LESS_THAN_SIGN: {\n this.state = State.RAWTEXT_LESS_THAN_SIGN;\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case $.EOF: {\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data state\n //------------------------------------------------------------------\n _stateScriptData(cp) {\n switch (cp) {\n case $.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_LESS_THAN_SIGN;\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case $.EOF: {\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // PLAINTEXT state\n //------------------------------------------------------------------\n _statePlaintext(cp) {\n switch (cp) {\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case $.EOF: {\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // Tag open state\n //------------------------------------------------------------------\n _stateTagOpen(cp) {\n if (isAsciiLetter(cp)) {\n this._createStartTagToken();\n this.state = State.TAG_NAME;\n this._stateTagName(cp);\n }\n else\n switch (cp) {\n case $.EXCLAMATION_MARK: {\n this.state = State.MARKUP_DECLARATION_OPEN;\n break;\n }\n case $.SOLIDUS: {\n this.state = State.END_TAG_OPEN;\n break;\n }\n case $.QUESTION_MARK: {\n this._err(ERR.unexpectedQuestionMarkInsteadOfTagName);\n this._createCommentToken(1);\n this.state = State.BOGUS_COMMENT;\n this._stateBogusComment(cp);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofBeforeTagName);\n this._emitChars('<');\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.invalidFirstCharacterOfTagName);\n this._emitChars('<');\n this.state = State.DATA;\n this._stateData(cp);\n }\n }\n }\n // End tag open state\n //------------------------------------------------------------------\n _stateEndTagOpen(cp) {\n if (isAsciiLetter(cp)) {\n this._createEndTagToken();\n this.state = State.TAG_NAME;\n this._stateTagName(cp);\n }\n else\n switch (cp) {\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.missingEndTagName);\n this.state = State.DATA;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofBeforeTagName);\n this._emitChars('</');\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.invalidFirstCharacterOfTagName);\n this._createCommentToken(2);\n this.state = State.BOGUS_COMMENT;\n this._stateBogusComment(cp);\n }\n }\n }\n // Tag name state\n //------------------------------------------------------------------\n _stateTagName(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n this.state = State.BEFORE_ATTRIBUTE_NAME;\n break;\n }\n case $.SOLIDUS: {\n this.state = State.SELF_CLOSING_START_TAG;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentTagToken();\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.tagName += REPLACEMENT_CHARACTER;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n token.tagName += String.fromCodePoint(isAsciiUpper(cp) ? toAsciiLower(cp) : cp);\n }\n }\n }\n // RCDATA less-than sign state\n //------------------------------------------------------------------\n _stateRcdataLessThanSign(cp) {\n if (cp === $.SOLIDUS) {\n this.state = State.RCDATA_END_TAG_OPEN;\n }\n else {\n this._emitChars('<');\n this.state = State.RCDATA;\n this._stateRcdata(cp);\n }\n }\n // RCDATA end tag open state\n //------------------------------------------------------------------\n _stateRcdataEndTagOpen(cp) {\n if (isAsciiLetter(cp)) {\n this.state = State.RCDATA_END_TAG_NAME;\n this._stateRcdataEndTagName(cp);\n }\n else {\n this._emitChars('</');\n this.state = State.RCDATA;\n this._stateRcdata(cp);\n }\n }\n handleSpecialEndTag(_cp) {\n if (!this.preprocessor.startsWith(this.lastStartTagName, false)) {\n return !this._ensureHibernation();\n }\n this._createEndTagToken();\n const token = this.currentToken;\n token.tagName = this.lastStartTagName;\n const cp = this.preprocessor.peek(this.lastStartTagName.length);\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n this._advanceBy(this.lastStartTagName.length);\n this.state = State.BEFORE_ATTRIBUTE_NAME;\n return false;\n }\n case $.SOLIDUS: {\n this._advanceBy(this.lastStartTagName.length);\n this.state = State.SELF_CLOSING_START_TAG;\n return false;\n }\n case $.GREATER_THAN_SIGN: {\n this._advanceBy(this.lastStartTagName.length);\n this.emitCurrentTagToken();\n this.state = State.DATA;\n return false;\n }\n default: {\n return !this._ensureHibernation();\n }\n }\n }\n // RCDATA end tag name state\n //------------------------------------------------------------------\n _stateRcdataEndTagName(cp) {\n if (this.handleSpecialEndTag(cp)) {\n this._emitChars('</');\n this.state = State.RCDATA;\n this._stateRcdata(cp);\n }\n }\n // RAWTEXT less-than sign state\n //------------------------------------------------------------------\n _stateRawtextLessThanSign(cp) {\n if (cp === $.SOLIDUS) {\n this.state = State.RAWTEXT_END_TAG_OPEN;\n }\n else {\n this._emitChars('<');\n this.state = State.RAWTEXT;\n this._stateRawtext(cp);\n }\n }\n // RAWTEXT end tag open state\n //------------------------------------------------------------------\n _stateRawtextEndTagOpen(cp) {\n if (isAsciiLetter(cp)) {\n this.state = State.RAWTEXT_END_TAG_NAME;\n this._stateRawtextEndTagName(cp);\n }\n else {\n this._emitChars('</');\n this.state = State.RAWTEXT;\n this._stateRawtext(cp);\n }\n }\n // RAWTEXT end tag name state\n //------------------------------------------------------------------\n _stateRawtextEndTagName(cp) {\n if (this.handleSpecialEndTag(cp)) {\n this._emitChars('</');\n this.state = State.RAWTEXT;\n this._stateRawtext(cp);\n }\n }\n // Script data less-than sign state\n //------------------------------------------------------------------\n _stateScriptDataLessThanSign(cp) {\n switch (cp) {\n case $.SOLIDUS: {\n this.state = State.SCRIPT_DATA_END_TAG_OPEN;\n break;\n }\n case $.EXCLAMATION_MARK: {\n this.state = State.SCRIPT_DATA_ESCAPE_START;\n this._emitChars('<!');\n break;\n }\n default: {\n this._emitChars('<');\n this.state = State.SCRIPT_DATA;\n this._stateScriptData(cp);\n }\n }\n }\n // Script data end tag open state\n //------------------------------------------------------------------\n _stateScriptDataEndTagOpen(cp) {\n if (isAsciiLetter(cp)) {\n this.state = State.SCRIPT_DATA_END_TAG_NAME;\n this._stateScriptDataEndTagName(cp);\n }\n else {\n this._emitChars('</');\n this.state = State.SCRIPT_DATA;\n this._stateScriptData(cp);\n }\n }\n // Script data end tag name state\n //------------------------------------------------------------------\n _stateScriptDataEndTagName(cp) {\n if (this.handleSpecialEndTag(cp)) {\n this._emitChars('</');\n this.state = State.SCRIPT_DATA;\n this._stateScriptData(cp);\n }\n }\n // Script data escape start state\n //------------------------------------------------------------------\n _stateScriptDataEscapeStart(cp) {\n if (cp === $.HYPHEN_MINUS) {\n this.state = State.SCRIPT_DATA_ESCAPE_START_DASH;\n this._emitChars('-');\n }\n else {\n this.state = State.SCRIPT_DATA;\n this._stateScriptData(cp);\n }\n }\n // Script data escape start dash state\n //------------------------------------------------------------------\n _stateScriptDataEscapeStartDash(cp) {\n if (cp === $.HYPHEN_MINUS) {\n this.state = State.SCRIPT_DATA_ESCAPED_DASH_DASH;\n this._emitChars('-');\n }\n else {\n this.state = State.SCRIPT_DATA;\n this._stateScriptData(cp);\n }\n }\n // Script data escaped state\n //------------------------------------------------------------------\n _stateScriptDataEscaped(cp) {\n switch (cp) {\n case $.HYPHEN_MINUS: {\n this.state = State.SCRIPT_DATA_ESCAPED_DASH;\n this._emitChars('-');\n break;\n }\n case $.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInScriptHtmlCommentLikeText);\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data escaped dash state\n //------------------------------------------------------------------\n _stateScriptDataEscapedDash(cp) {\n switch (cp) {\n case $.HYPHEN_MINUS: {\n this.state = State.SCRIPT_DATA_ESCAPED_DASH_DASH;\n this._emitChars('-');\n break;\n }\n case $.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInScriptHtmlCommentLikeText);\n this._emitEOFToken();\n break;\n }\n default: {\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data escaped dash dash state\n //------------------------------------------------------------------\n _stateScriptDataEscapedDashDash(cp) {\n switch (cp) {\n case $.HYPHEN_MINUS: {\n this._emitChars('-');\n break;\n }\n case $.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this.state = State.SCRIPT_DATA;\n this._emitChars('>');\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInScriptHtmlCommentLikeText);\n this._emitEOFToken();\n break;\n }\n default: {\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data escaped less-than sign state\n //------------------------------------------------------------------\n _stateScriptDataEscapedLessThanSign(cp) {\n if (cp === $.SOLIDUS) {\n this.state = State.SCRIPT_DATA_ESCAPED_END_TAG_OPEN;\n }\n else if (isAsciiLetter(cp)) {\n this._emitChars('<');\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPE_START;\n this._stateScriptDataDoubleEscapeStart(cp);\n }\n else {\n this._emitChars('<');\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._stateScriptDataEscaped(cp);\n }\n }\n // Script data escaped end tag open state\n //------------------------------------------------------------------\n _stateScriptDataEscapedEndTagOpen(cp) {\n if (isAsciiLetter(cp)) {\n this.state = State.SCRIPT_DATA_ESCAPED_END_TAG_NAME;\n this._stateScriptDataEscapedEndTagName(cp);\n }\n else {\n this._emitChars('</');\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._stateScriptDataEscaped(cp);\n }\n }\n // Script data escaped end tag name state\n //------------------------------------------------------------------\n _stateScriptDataEscapedEndTagName(cp) {\n if (this.handleSpecialEndTag(cp)) {\n this._emitChars('</');\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._stateScriptDataEscaped(cp);\n }\n }\n // Script data double escape start state\n //------------------------------------------------------------------\n _stateScriptDataDoubleEscapeStart(cp) {\n if (this.preprocessor.startsWith($$.SCRIPT, false) &&\n isScriptDataDoubleEscapeSequenceEnd(this.preprocessor.peek($$.SCRIPT.length))) {\n this._emitCodePoint(cp);\n for (let i = 0; i < $$.SCRIPT.length; i++) {\n this._emitCodePoint(this._consume());\n }\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n }\n else if (!this._ensureHibernation()) {\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._stateScriptDataEscaped(cp);\n }\n }\n // Script data double escaped state\n //------------------------------------------------------------------\n _stateScriptDataDoubleEscaped(cp) {\n switch (cp) {\n case $.HYPHEN_MINUS: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH;\n this._emitChars('-');\n break;\n }\n case $.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN;\n this._emitChars('<');\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInScriptHtmlCommentLikeText);\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data double escaped dash state\n //------------------------------------------------------------------\n _stateScriptDataDoubleEscapedDash(cp) {\n switch (cp) {\n case $.HYPHEN_MINUS: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH;\n this._emitChars('-');\n break;\n }\n case $.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN;\n this._emitChars('<');\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInScriptHtmlCommentLikeText);\n this._emitEOFToken();\n break;\n }\n default: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data double escaped dash dash state\n //------------------------------------------------------------------\n _stateScriptDataDoubleEscapedDashDash(cp) {\n switch (cp) {\n case $.HYPHEN_MINUS: {\n this._emitChars('-');\n break;\n }\n case $.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN;\n this._emitChars('<');\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this.state = State.SCRIPT_DATA;\n this._emitChars('>');\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInScriptHtmlCommentLikeText);\n this._emitEOFToken();\n break;\n }\n default: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data double escaped less-than sign state\n //------------------------------------------------------------------\n _stateScriptDataDoubleEscapedLessThanSign(cp) {\n if (cp === $.SOLIDUS) {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPE_END;\n this._emitChars('/');\n }\n else {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n this._stateScriptDataDoubleEscaped(cp);\n }\n }\n // Script data double escape end state\n //------------------------------------------------------------------\n _stateScriptDataDoubleEscapeEnd(cp) {\n if (this.preprocessor.startsWith($$.SCRIPT, false) &&\n isScriptDataDoubleEscapeSequenceEnd(this.preprocessor.peek($$.SCRIPT.length))) {\n this._emitCodePoint(cp);\n for (let i = 0; i < $$.SCRIPT.length; i++) {\n this._emitCodePoint(this._consume());\n }\n this.state = State.SCRIPT_DATA_ESCAPED;\n }\n else if (!this._ensureHibernation()) {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n this._stateScriptDataDoubleEscaped(cp);\n }\n }\n // Before attribute name state\n //------------------------------------------------------------------\n _stateBeforeAttributeName(cp) {\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n // Ignore whitespace\n break;\n }\n case $.SOLIDUS:\n case $.GREATER_THAN_SIGN:\n case $.EOF: {\n this.state = State.AFTER_ATTRIBUTE_NAME;\n this._stateAfterAttributeName(cp);\n break;\n }\n case $.EQUALS_SIGN: {\n this._err(ERR.unexpectedEqualsSignBeforeAttributeName);\n this._createAttr('=');\n this.state = State.ATTRIBUTE_NAME;\n break;\n }\n default: {\n this._createAttr('');\n this.state = State.ATTRIBUTE_NAME;\n this._stateAttributeName(cp);\n }\n }\n }\n // Attribute name state\n //------------------------------------------------------------------\n _stateAttributeName(cp) {\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED:\n case $.SOLIDUS:\n case $.GREATER_THAN_SIGN:\n case $.EOF: {\n this._leaveAttrName();\n this.state = State.AFTER_ATTRIBUTE_NAME;\n this._stateAfterAttributeName(cp);\n break;\n }\n case $.EQUALS_SIGN: {\n this._leaveAttrName();\n this.state = State.BEFORE_ATTRIBUTE_VALUE;\n break;\n }\n case $.QUOTATION_MARK:\n case $.APOSTROPHE:\n case $.LESS_THAN_SIGN: {\n this._err(ERR.unexpectedCharacterInAttributeName);\n this.currentAttr.name += String.fromCodePoint(cp);\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.currentAttr.name += REPLACEMENT_CHARACTER;\n break;\n }\n default: {\n this.currentAttr.name += String.fromCodePoint(isAsciiUpper(cp) ? toAsciiLower(cp) : cp);\n }\n }\n }\n // After attribute name state\n //------------------------------------------------------------------\n _stateAfterAttributeName(cp) {\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n // Ignore whitespace\n break;\n }\n case $.SOLIDUS: {\n this.state = State.SELF_CLOSING_START_TAG;\n break;\n }\n case $.EQUALS_SIGN: {\n this.state = State.BEFORE_ATTRIBUTE_VALUE;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentTagToken();\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n this._createAttr('');\n this.state = State.ATTRIBUTE_NAME;\n this._stateAttributeName(cp);\n }\n }\n }\n // Before attribute value state\n //------------------------------------------------------------------\n _stateBeforeAttributeValue(cp) {\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n // Ignore whitespace\n break;\n }\n case $.QUOTATION_MARK: {\n this.state = State.ATTRIBUTE_VALUE_DOUBLE_QUOTED;\n break;\n }\n case $.APOSTROPHE: {\n this.state = State.ATTRIBUTE_VALUE_SINGLE_QUOTED;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.missingAttributeValue);\n this.state = State.DATA;\n this.emitCurrentTagToken();\n break;\n }\n default: {\n this.state = State.ATTRIBUTE_VALUE_UNQUOTED;\n this._stateAttributeValueUnquoted(cp);\n }\n }\n }\n // Attribute value (double-quoted) state\n //------------------------------------------------------------------\n _stateAttributeValueDoubleQuoted(cp) {\n switch (cp) {\n case $.QUOTATION_MARK: {\n this.state = State.AFTER_ATTRIBUTE_VALUE_QUOTED;\n break;\n }\n case $.AMPERSAND: {\n this._startCharacterReference();\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.currentAttr.value += REPLACEMENT_CHARACTER;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n this.currentAttr.value += String.fromCodePoint(cp);\n }\n }\n }\n // Attribute value (single-quoted) state\n //------------------------------------------------------------------\n _stateAttributeValueSingleQuoted(cp) {\n switch (cp) {\n case $.APOSTROPHE: {\n this.state = State.AFTER_ATTRIBUTE_VALUE_QUOTED;\n break;\n }\n case $.AMPERSAND: {\n this._startCharacterReference();\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.currentAttr.value += REPLACEMENT_CHARACTER;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n this.currentAttr.value += String.fromCodePoint(cp);\n }\n }\n }\n // Attribute value (unquoted) state\n //------------------------------------------------------------------\n _stateAttributeValueUnquoted(cp) {\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n this._leaveAttrValue();\n this.state = State.BEFORE_ATTRIBUTE_NAME;\n break;\n }\n case $.AMPERSAND: {\n this._startCharacterReference();\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._leaveAttrValue();\n this.state = State.DATA;\n this.emitCurrentTagToken();\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.currentAttr.value += REPLACEMENT_CHARACTER;\n break;\n }\n case $.QUOTATION_MARK:\n case $.APOSTROPHE:\n case $.LESS_THAN_SIGN:\n case $.EQUALS_SIGN:\n case $.GRAVE_ACCENT: {\n this._err(ERR.unexpectedCharacterInUnquotedAttributeValue);\n this.currentAttr.value += String.fromCodePoint(cp);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n this.currentAttr.value += String.fromCodePoint(cp);\n }\n }\n }\n // After attribute value (quoted) state\n //------------------------------------------------------------------\n _stateAfterAttributeValueQuoted(cp) {\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n this._leaveAttrValue();\n this.state = State.BEFORE_ATTRIBUTE_NAME;\n break;\n }\n case $.SOLIDUS: {\n this._leaveAttrValue();\n this.state = State.SELF_CLOSING_START_TAG;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._leaveAttrValue();\n this.state = State.DATA;\n this.emitCurrentTagToken();\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingWhitespaceBetweenAttributes);\n this.state = State.BEFORE_ATTRIBUTE_NAME;\n this._stateBeforeAttributeName(cp);\n }\n }\n }\n // Self-closing start tag state\n //------------------------------------------------------------------\n _stateSelfClosingStartTag(cp) {\n switch (cp) {\n case $.GREATER_THAN_SIGN: {\n const token = this.currentToken;\n token.selfClosing = true;\n this.state = State.DATA;\n this.emitCurrentTagToken();\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.unexpectedSolidusInTag);\n this.state = State.BEFORE_ATTRIBUTE_NAME;\n this._stateBeforeAttributeName(cp);\n }\n }\n }\n // Bogus comment state\n //------------------------------------------------------------------\n _stateBogusComment(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentComment(token);\n break;\n }\n case $.EOF: {\n this.emitCurrentComment(token);\n this._emitEOFToken();\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.data += REPLACEMENT_CHARACTER;\n break;\n }\n default: {\n token.data += String.fromCodePoint(cp);\n }\n }\n }\n // Markup declaration open state\n //------------------------------------------------------------------\n _stateMarkupDeclarationOpen(cp) {\n if (this._consumeSequenceIfMatch($$.DASH_DASH, true)) {\n this._createCommentToken($$.DASH_DASH.length + 1);\n this.state = State.COMMENT_START;\n }\n else if (this._consumeSequenceIfMatch($$.DOCTYPE, false)) {\n // NOTE: Doctypes tokens are created without fixed offsets. We keep track of the moment a doctype *might* start here.\n this.currentLocation = this.getCurrentLocation($$.DOCTYPE.length + 1);\n this.state = State.DOCTYPE;\n }\n else if (this._consumeSequenceIfMatch($$.CDATA_START, true)) {\n if (this.inForeignNode) {\n this.state = State.CDATA_SECTION;\n }\n else {\n this._err(ERR.cdataInHtmlContent);\n this._createCommentToken($$.CDATA_START.length + 1);\n this.currentToken.data = '[CDATA[';\n this.state = State.BOGUS_COMMENT;\n }\n }\n //NOTE: Sequence lookups can be abrupted by hibernation. In that case, lookup\n //results are no longer valid and we will need to start over.\n else if (!this._ensureHibernation()) {\n this._err(ERR.incorrectlyOpenedComment);\n this._createCommentToken(2);\n this.state = State.BOGUS_COMMENT;\n this._stateBogusComment(cp);\n }\n }\n // Comment start state\n //------------------------------------------------------------------\n _stateCommentStart(cp) {\n switch (cp) {\n case $.HYPHEN_MINUS: {\n this.state = State.COMMENT_START_DASH;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.abruptClosingOfEmptyComment);\n this.state = State.DATA;\n const token = this.currentToken;\n this.emitCurrentComment(token);\n break;\n }\n default: {\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n }\n // Comment start dash state\n //------------------------------------------------------------------\n _stateCommentStartDash(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.HYPHEN_MINUS: {\n this.state = State.COMMENT_END;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.abruptClosingOfEmptyComment);\n this.state = State.DATA;\n this.emitCurrentComment(token);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInComment);\n this.emitCurrentComment(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.data += '-';\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n }\n // Comment state\n //------------------------------------------------------------------\n _stateComment(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.HYPHEN_MINUS: {\n this.state = State.COMMENT_END_DASH;\n break;\n }\n case $.LESS_THAN_SIGN: {\n token.data += '<';\n this.state = State.COMMENT_LESS_THAN_SIGN;\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.data += REPLACEMENT_CHARACTER;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInComment);\n this.emitCurrentComment(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.data += String.fromCodePoint(cp);\n }\n }\n }\n // Comment less-than sign state\n //------------------------------------------------------------------\n _stateCommentLessThanSign(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.EXCLAMATION_MARK: {\n token.data += '!';\n this.state = State.COMMENT_LESS_THAN_SIGN_BANG;\n break;\n }\n case $.LESS_THAN_SIGN: {\n token.data += '<';\n break;\n }\n default: {\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n }\n // Comment less-than sign bang state\n //------------------------------------------------------------------\n _stateCommentLessThanSignBang(cp) {\n if (cp === $.HYPHEN_MINUS) {\n this.state = State.COMMENT_LESS_THAN_SIGN_BANG_DASH;\n }\n else {\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n // Comment less-than sign bang dash state\n //------------------------------------------------------------------\n _stateCommentLessThanSignBangDash(cp) {\n if (cp === $.HYPHEN_MINUS) {\n this.state = State.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH;\n }\n else {\n this.state = State.COMMENT_END_DASH;\n this._stateCommentEndDash(cp);\n }\n }\n // Comment less-than sign bang dash dash state\n //------------------------------------------------------------------\n _stateCommentLessThanSignBangDashDash(cp) {\n if (cp !== $.GREATER_THAN_SIGN && cp !== $.EOF) {\n this._err(ERR.nestedComment);\n }\n this.state = State.COMMENT_END;\n this._stateCommentEnd(cp);\n }\n // Comment end dash state\n //------------------------------------------------------------------\n _stateCommentEndDash(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.HYPHEN_MINUS: {\n this.state = State.COMMENT_END;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInComment);\n this.emitCurrentComment(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.data += '-';\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n }\n // Comment end state\n //------------------------------------------------------------------\n _stateCommentEnd(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentComment(token);\n break;\n }\n case $.EXCLAMATION_MARK: {\n this.state = State.COMMENT_END_BANG;\n break;\n }\n case $.HYPHEN_MINUS: {\n token.data += '-';\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInComment);\n this.emitCurrentComment(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.data += '--';\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n }\n // Comment end bang state\n //------------------------------------------------------------------\n _stateCommentEndBang(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.HYPHEN_MINUS: {\n token.data += '--!';\n this.state = State.COMMENT_END_DASH;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.incorrectlyClosedComment);\n this.state = State.DATA;\n this.emitCurrentComment(token);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInComment);\n this.emitCurrentComment(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.data += '--!';\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n }\n // DOCTYPE state\n //------------------------------------------------------------------\n _stateDoctype(cp) {\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n this.state = State.BEFORE_DOCTYPE_NAME;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this.state = State.BEFORE_DOCTYPE_NAME;\n this._stateBeforeDoctypeName(cp);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n this._createDoctypeToken(null);\n const token = this.currentToken;\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingWhitespaceBeforeDoctypeName);\n this.state = State.BEFORE_DOCTYPE_NAME;\n this._stateBeforeDoctypeName(cp);\n }\n }\n }\n // Before DOCTYPE name state\n //------------------------------------------------------------------\n _stateBeforeDoctypeName(cp) {\n if (isAsciiUpper(cp)) {\n this._createDoctypeToken(String.fromCharCode(toAsciiLower(cp)));\n this.state = State.DOCTYPE_NAME;\n }\n else\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n // Ignore whitespace\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._createDoctypeToken(REPLACEMENT_CHARACTER);\n this.state = State.DOCTYPE_NAME;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.missingDoctypeName);\n this._createDoctypeToken(null);\n const token = this.currentToken;\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n this._createDoctypeToken(null);\n const token = this.currentToken;\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._createDoctypeToken(String.fromCodePoint(cp));\n this.state = State.DOCTYPE_NAME;\n }\n }\n }\n // DOCTYPE name state\n //------------------------------------------------------------------\n _stateDoctypeName(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n this.state = State.AFTER_DOCTYPE_NAME;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.name += REPLACEMENT_CHARACTER;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.name += String.fromCodePoint(isAsciiUpper(cp) ? toAsciiLower(cp) : cp);\n }\n }\n }\n // After DOCTYPE name state\n //------------------------------------------------------------------\n _stateAfterDoctypeName(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n // Ignore whitespace\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n if (this._consumeSequenceIfMatch($$.PUBLIC, false)) {\n this.state = State.AFTER_DOCTYPE_PUBLIC_KEYWORD;\n }\n else if (this._consumeSequenceIfMatch($$.SYSTEM, false)) {\n this.state = State.AFTER_DOCTYPE_SYSTEM_KEYWORD;\n }\n //NOTE: sequence lookup can be abrupted by hibernation. In that case lookup\n //results are no longer valid and we will need to start over.\n else if (!this._ensureHibernation()) {\n this._err(ERR.invalidCharacterSequenceAfterDoctypeName);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n }\n // After DOCTYPE public keyword state\n //------------------------------------------------------------------\n _stateAfterDoctypePublicKeyword(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n this.state = State.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER;\n break;\n }\n case $.QUOTATION_MARK: {\n this._err(ERR.missingWhitespaceAfterDoctypePublicKeyword);\n token.publicId = '';\n this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;\n break;\n }\n case $.APOSTROPHE: {\n this._err(ERR.missingWhitespaceAfterDoctypePublicKeyword);\n token.publicId = '';\n this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.missingDoctypePublicIdentifier);\n token.forceQuirks = true;\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingQuoteBeforeDoctypePublicIdentifier);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // Before DOCTYPE public identifier state\n //------------------------------------------------------------------\n _stateBeforeDoctypePublicIdentifier(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n // Ignore whitespace\n break;\n }\n case $.QUOTATION_MARK: {\n token.publicId = '';\n this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;\n break;\n }\n case $.APOSTROPHE: {\n token.publicId = '';\n this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.missingDoctypePublicIdentifier);\n token.forceQuirks = true;\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingQuoteBeforeDoctypePublicIdentifier);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // DOCTYPE public identifier (double-quoted) state\n //------------------------------------------------------------------\n _stateDoctypePublicIdentifierDoubleQuoted(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.QUOTATION_MARK: {\n this.state = State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.publicId += REPLACEMENT_CHARACTER;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.abruptDoctypePublicIdentifier);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.publicId += String.fromCodePoint(cp);\n }\n }\n }\n // DOCTYPE public identifier (single-quoted) state\n //------------------------------------------------------------------\n _stateDoctypePublicIdentifierSingleQuoted(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.APOSTROPHE: {\n this.state = State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.publicId += REPLACEMENT_CHARACTER;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.abruptDoctypePublicIdentifier);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.publicId += String.fromCodePoint(cp);\n }\n }\n }\n // After DOCTYPE public identifier state\n //------------------------------------------------------------------\n _stateAfterDoctypePublicIdentifier(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n this.state = State.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case $.QUOTATION_MARK: {\n this._err(ERR.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers);\n token.systemId = '';\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;\n break;\n }\n case $.APOSTROPHE: {\n this._err(ERR.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers);\n token.systemId = '';\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // Between DOCTYPE public and system identifiers state\n //------------------------------------------------------------------\n _stateBetweenDoctypePublicAndSystemIdentifiers(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n // Ignore whitespace\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case $.QUOTATION_MARK: {\n token.systemId = '';\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;\n break;\n }\n case $.APOSTROPHE: {\n token.systemId = '';\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // After DOCTYPE system keyword state\n //------------------------------------------------------------------\n _stateAfterDoctypeSystemKeyword(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n this.state = State.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER;\n break;\n }\n case $.QUOTATION_MARK: {\n this._err(ERR.missingWhitespaceAfterDoctypeSystemKeyword);\n token.systemId = '';\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;\n break;\n }\n case $.APOSTROPHE: {\n this._err(ERR.missingWhitespaceAfterDoctypeSystemKeyword);\n token.systemId = '';\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.missingDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // Before DOCTYPE system identifier state\n //------------------------------------------------------------------\n _stateBeforeDoctypeSystemIdentifier(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n // Ignore whitespace\n break;\n }\n case $.QUOTATION_MARK: {\n token.systemId = '';\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;\n break;\n }\n case $.APOSTROPHE: {\n token.systemId = '';\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.missingDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // DOCTYPE system identifier (double-quoted) state\n //------------------------------------------------------------------\n _stateDoctypeSystemIdentifierDoubleQuoted(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.QUOTATION_MARK: {\n this.state = State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.systemId += REPLACEMENT_CHARACTER;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.abruptDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.systemId += String.fromCodePoint(cp);\n }\n }\n }\n // DOCTYPE system identifier (single-quoted) state\n //------------------------------------------------------------------\n _stateDoctypeSystemIdentifierSingleQuoted(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.APOSTROPHE: {\n this.state = State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.systemId += REPLACEMENT_CHARACTER;\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this._err(ERR.abruptDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.systemId += String.fromCodePoint(cp);\n }\n }\n }\n // After DOCTYPE system identifier state\n //------------------------------------------------------------------\n _stateAfterDoctypeSystemIdentifier(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.SPACE:\n case $.LINE_FEED:\n case $.TABULATION:\n case $.FORM_FEED: {\n // Ignore whitespace\n break;\n }\n case $.GREATER_THAN_SIGN: {\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.unexpectedCharacterAfterDoctypeSystemIdentifier);\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // Bogus DOCTYPE state\n //------------------------------------------------------------------\n _stateBogusDoctype(cp) {\n const token = this.currentToken;\n switch (cp) {\n case $.GREATER_THAN_SIGN: {\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case $.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n break;\n }\n case $.EOF: {\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default:\n // Do nothing\n }\n }\n // CDATA section state\n //------------------------------------------------------------------\n _stateCdataSection(cp) {\n switch (cp) {\n case $.RIGHT_SQUARE_BRACKET: {\n this.state = State.CDATA_SECTION_BRACKET;\n break;\n }\n case $.EOF: {\n this._err(ERR.eofInCdata);\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // CDATA section bracket state\n //------------------------------------------------------------------\n _stateCdataSectionBracket(cp) {\n if (cp === $.RIGHT_SQUARE_BRACKET) {\n this.state = State.CDATA_SECTION_END;\n }\n else {\n this._emitChars(']');\n this.state = State.CDATA_SECTION;\n this._stateCdataSection(cp);\n }\n }\n // CDATA section end state\n //------------------------------------------------------------------\n _stateCdataSectionEnd(cp) {\n switch (cp) {\n case $.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n break;\n }\n case $.RIGHT_SQUARE_BRACKET: {\n this._emitChars(']');\n break;\n }\n default: {\n this._emitChars(']]');\n this.state = State.CDATA_SECTION;\n this._stateCdataSection(cp);\n }\n }\n }\n // Character reference state\n //------------------------------------------------------------------\n _stateCharacterReference() {\n let length = this.entityDecoder.write(this.preprocessor.html, this.preprocessor.pos);\n if (length < 0) {\n if (this.preprocessor.lastChunkWritten) {\n length = this.entityDecoder.end();\n }\n else {\n // Wait for the rest of the entity.\n this.active = false;\n // Mark the entire buffer as read.\n this.preprocessor.pos = this.preprocessor.html.length - 1;\n this.consumedAfterSnapshot = 0;\n this.preprocessor.endOfChunkHit = true;\n return;\n }\n }\n if (length === 0) {\n // This was not a valid entity. Go back to the beginning, and\n // figure out what to do.\n this.preprocessor.pos = this.entityStartPos;\n this._flushCodePointConsumedAsCharacterReference($.AMPERSAND);\n this.state =\n !this._isCharacterReferenceInAttribute() && isAsciiAlphaNumeric(this.preprocessor.peek(1))\n ? State.AMBIGUOUS_AMPERSAND\n : this.returnState;\n }\n else {\n // We successfully parsed an entity. Switch to the return state.\n this.state = this.returnState;\n }\n }\n // Ambiguos ampersand state\n //------------------------------------------------------------------\n _stateAmbiguousAmpersand(cp) {\n if (isAsciiAlphaNumeric(cp)) {\n this._flushCodePointConsumedAsCharacterReference(cp);\n }\n else {\n if (cp === $.SEMICOLON) {\n this._err(ERR.unknownNamedCharacterReference);\n }\n this.state = this.returnState;\n this._callState(cp);\n }\n }\n}\n"],"x_google_ignoreList":[0],"mappings":"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"}
|
package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tokenizer/preprocessor.cjs
ADDED
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
const require_unicode = require('../common/unicode.cjs');
|
|
2
|
+
const require_error_codes = require('../common/error-codes.cjs');
|
|
3
|
+
|
|
4
|
+
//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tokenizer/preprocessor.js
|
|
5
|
+
const DEFAULT_BUFFER_WATERLINE = 65536;
|
|
6
|
+
var Preprocessor = class {
|
|
7
|
+
constructor(handler) {
|
|
8
|
+
this.handler = handler;
|
|
9
|
+
this.html = "";
|
|
10
|
+
this.pos = -1;
|
|
11
|
+
this.lastGapPos = -2;
|
|
12
|
+
this.gapStack = [];
|
|
13
|
+
this.skipNextNewLine = false;
|
|
14
|
+
this.lastChunkWritten = false;
|
|
15
|
+
this.endOfChunkHit = false;
|
|
16
|
+
this.bufferWaterline = DEFAULT_BUFFER_WATERLINE;
|
|
17
|
+
this.isEol = false;
|
|
18
|
+
this.lineStartPos = 0;
|
|
19
|
+
this.droppedBufferSize = 0;
|
|
20
|
+
this.line = 1;
|
|
21
|
+
this.lastErrOffset = -1;
|
|
22
|
+
}
|
|
23
|
+
/** The column on the current line. If we just saw a gap (eg. a surrogate pair), return the index before. */
|
|
24
|
+
get col() {
|
|
25
|
+
return this.pos - this.lineStartPos + Number(this.lastGapPos !== this.pos);
|
|
26
|
+
}
|
|
27
|
+
get offset() {
|
|
28
|
+
return this.droppedBufferSize + this.pos;
|
|
29
|
+
}
|
|
30
|
+
getError(code, cpOffset) {
|
|
31
|
+
const { line, col, offset } = this;
|
|
32
|
+
const startCol = col + cpOffset;
|
|
33
|
+
const startOffset = offset + cpOffset;
|
|
34
|
+
return {
|
|
35
|
+
code,
|
|
36
|
+
startLine: line,
|
|
37
|
+
endLine: line,
|
|
38
|
+
startCol,
|
|
39
|
+
endCol: startCol,
|
|
40
|
+
startOffset,
|
|
41
|
+
endOffset: startOffset
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
_err(code) {
|
|
45
|
+
if (this.handler.onParseError && this.lastErrOffset !== this.offset) {
|
|
46
|
+
this.lastErrOffset = this.offset;
|
|
47
|
+
this.handler.onParseError(this.getError(code, 0));
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
_addGap() {
|
|
51
|
+
this.gapStack.push(this.lastGapPos);
|
|
52
|
+
this.lastGapPos = this.pos;
|
|
53
|
+
}
|
|
54
|
+
_processSurrogate(cp) {
|
|
55
|
+
if (this.pos !== this.html.length - 1) {
|
|
56
|
+
const nextCp = this.html.charCodeAt(this.pos + 1);
|
|
57
|
+
if (require_unicode.isSurrogatePair(nextCp)) {
|
|
58
|
+
this.pos++;
|
|
59
|
+
this._addGap();
|
|
60
|
+
return require_unicode.getSurrogatePairCodePoint(cp, nextCp);
|
|
61
|
+
}
|
|
62
|
+
} else if (!this.lastChunkWritten) {
|
|
63
|
+
this.endOfChunkHit = true;
|
|
64
|
+
return require_unicode.CODE_POINTS.EOF;
|
|
65
|
+
}
|
|
66
|
+
this._err(require_error_codes.ERR.surrogateInInputStream);
|
|
67
|
+
return cp;
|
|
68
|
+
}
|
|
69
|
+
willDropParsedChunk() {
|
|
70
|
+
return this.pos > this.bufferWaterline;
|
|
71
|
+
}
|
|
72
|
+
dropParsedChunk() {
|
|
73
|
+
if (this.willDropParsedChunk()) {
|
|
74
|
+
this.html = this.html.substring(this.pos);
|
|
75
|
+
this.lineStartPos -= this.pos;
|
|
76
|
+
this.droppedBufferSize += this.pos;
|
|
77
|
+
this.pos = 0;
|
|
78
|
+
this.lastGapPos = -2;
|
|
79
|
+
this.gapStack.length = 0;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
write(chunk, isLastChunk) {
|
|
83
|
+
if (this.html.length > 0) this.html += chunk;
|
|
84
|
+
else this.html = chunk;
|
|
85
|
+
this.endOfChunkHit = false;
|
|
86
|
+
this.lastChunkWritten = isLastChunk;
|
|
87
|
+
}
|
|
88
|
+
insertHtmlAtCurrentPos(chunk) {
|
|
89
|
+
this.html = this.html.substring(0, this.pos + 1) + chunk + this.html.substring(this.pos + 1);
|
|
90
|
+
this.endOfChunkHit = false;
|
|
91
|
+
}
|
|
92
|
+
startsWith(pattern, caseSensitive) {
|
|
93
|
+
if (this.pos + pattern.length > this.html.length) {
|
|
94
|
+
this.endOfChunkHit = !this.lastChunkWritten;
|
|
95
|
+
return false;
|
|
96
|
+
}
|
|
97
|
+
if (caseSensitive) return this.html.startsWith(pattern, this.pos);
|
|
98
|
+
for (let i = 0; i < pattern.length; i++) if ((this.html.charCodeAt(this.pos + i) | 32) !== pattern.charCodeAt(i)) return false;
|
|
99
|
+
return true;
|
|
100
|
+
}
|
|
101
|
+
peek(offset) {
|
|
102
|
+
const pos = this.pos + offset;
|
|
103
|
+
if (pos >= this.html.length) {
|
|
104
|
+
this.endOfChunkHit = !this.lastChunkWritten;
|
|
105
|
+
return require_unicode.CODE_POINTS.EOF;
|
|
106
|
+
}
|
|
107
|
+
const code = this.html.charCodeAt(pos);
|
|
108
|
+
return code === require_unicode.CODE_POINTS.CARRIAGE_RETURN ? require_unicode.CODE_POINTS.LINE_FEED : code;
|
|
109
|
+
}
|
|
110
|
+
advance() {
|
|
111
|
+
this.pos++;
|
|
112
|
+
if (this.isEol) {
|
|
113
|
+
this.isEol = false;
|
|
114
|
+
this.line++;
|
|
115
|
+
this.lineStartPos = this.pos;
|
|
116
|
+
}
|
|
117
|
+
if (this.pos >= this.html.length) {
|
|
118
|
+
this.endOfChunkHit = !this.lastChunkWritten;
|
|
119
|
+
return require_unicode.CODE_POINTS.EOF;
|
|
120
|
+
}
|
|
121
|
+
let cp = this.html.charCodeAt(this.pos);
|
|
122
|
+
if (cp === require_unicode.CODE_POINTS.CARRIAGE_RETURN) {
|
|
123
|
+
this.isEol = true;
|
|
124
|
+
this.skipNextNewLine = true;
|
|
125
|
+
return require_unicode.CODE_POINTS.LINE_FEED;
|
|
126
|
+
}
|
|
127
|
+
if (cp === require_unicode.CODE_POINTS.LINE_FEED) {
|
|
128
|
+
this.isEol = true;
|
|
129
|
+
if (this.skipNextNewLine) {
|
|
130
|
+
this.line--;
|
|
131
|
+
this.skipNextNewLine = false;
|
|
132
|
+
this._addGap();
|
|
133
|
+
return this.advance();
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
this.skipNextNewLine = false;
|
|
137
|
+
if (require_unicode.isSurrogate(cp)) cp = this._processSurrogate(cp);
|
|
138
|
+
if (!(this.handler.onParseError === null || cp > 31 && cp < 127 || cp === require_unicode.CODE_POINTS.LINE_FEED || cp === require_unicode.CODE_POINTS.CARRIAGE_RETURN || cp > 159 && cp < 64976)) this._checkForProblematicCharacters(cp);
|
|
139
|
+
return cp;
|
|
140
|
+
}
|
|
141
|
+
_checkForProblematicCharacters(cp) {
|
|
142
|
+
if (require_unicode.isControlCodePoint(cp)) this._err(require_error_codes.ERR.controlCharacterInInputStream);
|
|
143
|
+
else if (require_unicode.isUndefinedCodePoint(cp)) this._err(require_error_codes.ERR.noncharacterInInputStream);
|
|
144
|
+
}
|
|
145
|
+
retreat(count) {
|
|
146
|
+
this.pos -= count;
|
|
147
|
+
while (this.pos < this.lastGapPos) {
|
|
148
|
+
this.lastGapPos = this.gapStack.pop();
|
|
149
|
+
this.pos--;
|
|
150
|
+
}
|
|
151
|
+
this.isEol = false;
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
|
|
155
|
+
//#endregion
|
|
156
|
+
exports.Preprocessor = Preprocessor;
|
package/dist/node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tokenizer/preprocessor.mjs
ADDED
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { CODE_POINTS, getSurrogatePairCodePoint, isControlCodePoint, isSurrogate, isSurrogatePair, isUndefinedCodePoint } from "../common/unicode.mjs";
|
|
2
|
+
import { ERR } from "../common/error-codes.mjs";
|
|
3
|
+
|
|
4
|
+
//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tokenizer/preprocessor.js
|
|
5
|
+
const DEFAULT_BUFFER_WATERLINE = 65536;
|
|
6
|
+
var Preprocessor = class {
|
|
7
|
+
constructor(handler) {
|
|
8
|
+
this.handler = handler;
|
|
9
|
+
this.html = "";
|
|
10
|
+
this.pos = -1;
|
|
11
|
+
this.lastGapPos = -2;
|
|
12
|
+
this.gapStack = [];
|
|
13
|
+
this.skipNextNewLine = false;
|
|
14
|
+
this.lastChunkWritten = false;
|
|
15
|
+
this.endOfChunkHit = false;
|
|
16
|
+
this.bufferWaterline = DEFAULT_BUFFER_WATERLINE;
|
|
17
|
+
this.isEol = false;
|
|
18
|
+
this.lineStartPos = 0;
|
|
19
|
+
this.droppedBufferSize = 0;
|
|
20
|
+
this.line = 1;
|
|
21
|
+
this.lastErrOffset = -1;
|
|
22
|
+
}
|
|
23
|
+
/** The column on the current line. If we just saw a gap (eg. a surrogate pair), return the index before. */
|
|
24
|
+
get col() {
|
|
25
|
+
return this.pos - this.lineStartPos + Number(this.lastGapPos !== this.pos);
|
|
26
|
+
}
|
|
27
|
+
get offset() {
|
|
28
|
+
return this.droppedBufferSize + this.pos;
|
|
29
|
+
}
|
|
30
|
+
getError(code, cpOffset) {
|
|
31
|
+
const { line, col, offset } = this;
|
|
32
|
+
const startCol = col + cpOffset;
|
|
33
|
+
const startOffset = offset + cpOffset;
|
|
34
|
+
return {
|
|
35
|
+
code,
|
|
36
|
+
startLine: line,
|
|
37
|
+
endLine: line,
|
|
38
|
+
startCol,
|
|
39
|
+
endCol: startCol,
|
|
40
|
+
startOffset,
|
|
41
|
+
endOffset: startOffset
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
_err(code) {
|
|
45
|
+
if (this.handler.onParseError && this.lastErrOffset !== this.offset) {
|
|
46
|
+
this.lastErrOffset = this.offset;
|
|
47
|
+
this.handler.onParseError(this.getError(code, 0));
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
_addGap() {
|
|
51
|
+
this.gapStack.push(this.lastGapPos);
|
|
52
|
+
this.lastGapPos = this.pos;
|
|
53
|
+
}
|
|
54
|
+
_processSurrogate(cp) {
|
|
55
|
+
if (this.pos !== this.html.length - 1) {
|
|
56
|
+
const nextCp = this.html.charCodeAt(this.pos + 1);
|
|
57
|
+
if (isSurrogatePair(nextCp)) {
|
|
58
|
+
this.pos++;
|
|
59
|
+
this._addGap();
|
|
60
|
+
return getSurrogatePairCodePoint(cp, nextCp);
|
|
61
|
+
}
|
|
62
|
+
} else if (!this.lastChunkWritten) {
|
|
63
|
+
this.endOfChunkHit = true;
|
|
64
|
+
return CODE_POINTS.EOF;
|
|
65
|
+
}
|
|
66
|
+
this._err(ERR.surrogateInInputStream);
|
|
67
|
+
return cp;
|
|
68
|
+
}
|
|
69
|
+
willDropParsedChunk() {
|
|
70
|
+
return this.pos > this.bufferWaterline;
|
|
71
|
+
}
|
|
72
|
+
dropParsedChunk() {
|
|
73
|
+
if (this.willDropParsedChunk()) {
|
|
74
|
+
this.html = this.html.substring(this.pos);
|
|
75
|
+
this.lineStartPos -= this.pos;
|
|
76
|
+
this.droppedBufferSize += this.pos;
|
|
77
|
+
this.pos = 0;
|
|
78
|
+
this.lastGapPos = -2;
|
|
79
|
+
this.gapStack.length = 0;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
write(chunk, isLastChunk) {
|
|
83
|
+
if (this.html.length > 0) this.html += chunk;
|
|
84
|
+
else this.html = chunk;
|
|
85
|
+
this.endOfChunkHit = false;
|
|
86
|
+
this.lastChunkWritten = isLastChunk;
|
|
87
|
+
}
|
|
88
|
+
insertHtmlAtCurrentPos(chunk) {
|
|
89
|
+
this.html = this.html.substring(0, this.pos + 1) + chunk + this.html.substring(this.pos + 1);
|
|
90
|
+
this.endOfChunkHit = false;
|
|
91
|
+
}
|
|
92
|
+
startsWith(pattern, caseSensitive) {
|
|
93
|
+
if (this.pos + pattern.length > this.html.length) {
|
|
94
|
+
this.endOfChunkHit = !this.lastChunkWritten;
|
|
95
|
+
return false;
|
|
96
|
+
}
|
|
97
|
+
if (caseSensitive) return this.html.startsWith(pattern, this.pos);
|
|
98
|
+
for (let i = 0; i < pattern.length; i++) if ((this.html.charCodeAt(this.pos + i) | 32) !== pattern.charCodeAt(i)) return false;
|
|
99
|
+
return true;
|
|
100
|
+
}
|
|
101
|
+
peek(offset) {
|
|
102
|
+
const pos = this.pos + offset;
|
|
103
|
+
if (pos >= this.html.length) {
|
|
104
|
+
this.endOfChunkHit = !this.lastChunkWritten;
|
|
105
|
+
return CODE_POINTS.EOF;
|
|
106
|
+
}
|
|
107
|
+
const code = this.html.charCodeAt(pos);
|
|
108
|
+
return code === CODE_POINTS.CARRIAGE_RETURN ? CODE_POINTS.LINE_FEED : code;
|
|
109
|
+
}
|
|
110
|
+
advance() {
|
|
111
|
+
this.pos++;
|
|
112
|
+
if (this.isEol) {
|
|
113
|
+
this.isEol = false;
|
|
114
|
+
this.line++;
|
|
115
|
+
this.lineStartPos = this.pos;
|
|
116
|
+
}
|
|
117
|
+
if (this.pos >= this.html.length) {
|
|
118
|
+
this.endOfChunkHit = !this.lastChunkWritten;
|
|
119
|
+
return CODE_POINTS.EOF;
|
|
120
|
+
}
|
|
121
|
+
let cp = this.html.charCodeAt(this.pos);
|
|
122
|
+
if (cp === CODE_POINTS.CARRIAGE_RETURN) {
|
|
123
|
+
this.isEol = true;
|
|
124
|
+
this.skipNextNewLine = true;
|
|
125
|
+
return CODE_POINTS.LINE_FEED;
|
|
126
|
+
}
|
|
127
|
+
if (cp === CODE_POINTS.LINE_FEED) {
|
|
128
|
+
this.isEol = true;
|
|
129
|
+
if (this.skipNextNewLine) {
|
|
130
|
+
this.line--;
|
|
131
|
+
this.skipNextNewLine = false;
|
|
132
|
+
this._addGap();
|
|
133
|
+
return this.advance();
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
this.skipNextNewLine = false;
|
|
137
|
+
if (isSurrogate(cp)) cp = this._processSurrogate(cp);
|
|
138
|
+
if (!(this.handler.onParseError === null || cp > 31 && cp < 127 || cp === CODE_POINTS.LINE_FEED || cp === CODE_POINTS.CARRIAGE_RETURN || cp > 159 && cp < 64976)) this._checkForProblematicCharacters(cp);
|
|
139
|
+
return cp;
|
|
140
|
+
}
|
|
141
|
+
_checkForProblematicCharacters(cp) {
|
|
142
|
+
if (isControlCodePoint(cp)) this._err(ERR.controlCharacterInInputStream);
|
|
143
|
+
else if (isUndefinedCodePoint(cp)) this._err(ERR.noncharacterInInputStream);
|
|
144
|
+
}
|
|
145
|
+
retreat(count) {
|
|
146
|
+
this.pos -= count;
|
|
147
|
+
while (this.pos < this.lastGapPos) {
|
|
148
|
+
this.lastGapPos = this.gapStack.pop();
|
|
149
|
+
this.pos--;
|
|
150
|
+
}
|
|
151
|
+
this.isEol = false;
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
|
|
155
|
+
//#endregion
|
|
156
|
+
export { Preprocessor };
|
|
157
|
+
//# sourceMappingURL=preprocessor.mjs.map
|