@ynput/ayon-frontend-shared 0.3.1 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/dist/_virtual/index.cjs10.js +1 -1
  2. package/dist/_virtual/index.cjs11.js +1 -1
  3. package/dist/_virtual/index.cjs12.js +1 -1
  4. package/dist/_virtual/index.es10.js +3 -3
  5. package/dist/_virtual/index.es11.js +5 -5
  6. package/dist/_virtual/index.es12.js +5 -5
  7. package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
  8. package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
  9. package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js +1 -1
  10. package/dist/node_modules/rehype/node_modules/vfile/lib/index.es.js +1 -1
  11. package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
  12. package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
  13. package/dist/node_modules/web-namespaces/index.cjs.js +1 -1
  14. package/dist/node_modules/web-namespaces/index.cjs.js.map +1 -1
  15. package/dist/node_modules/web-namespaces/index.es.js +3 -8
  16. package/dist/node_modules/web-namespaces/index.es.js.map +1 -1
  17. package/dist/shared/src/api/generated/graphql.cjs.js +12 -8
  18. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  19. package/dist/shared/src/api/generated/graphql.es.js +11 -7
  20. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  21. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  22. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  23. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +2 -2
  24. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
  25. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +66 -61
  26. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
  27. package/dist/shared/src/containers/Feed/hooks/useTransformActivities.cjs.js +1 -1
  28. package/dist/shared/src/containers/Feed/hooks/useTransformActivities.cjs.js.map +1 -1
  29. package/dist/shared/src/containers/Feed/hooks/useTransformActivities.es.js +6 -6
  30. package/dist/shared/src/containers/Feed/hooks/useTransformActivities.es.js.map +1 -1
  31. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js +2 -2
  32. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js.map +1 -1
  33. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js +10 -10
  34. package/dist/shared/src/hooks/useLoadModules.cjs.js +1 -1
  35. package/dist/shared/src/hooks/useLoadModules.cjs.js.map +1 -1
  36. package/dist/shared/src/hooks/useLoadModules.es.js +86 -80
  37. package/dist/shared/src/hooks/useLoadModules.es.js.map +1 -1
  38. package/dist/types/api/generated/graphql.d.ts +2 -1
  39. package/dist/types/api/generated/graphqlLinks.d.ts +1 -0
  40. package/package.json +2 -1
  41. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.cjs.js +0 -2
  42. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.cjs.js.map +0 -1
  43. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.es.js +0 -63
  44. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.es.js.map +0 -1
  45. package/dist/node_modules/@ungap/structured-clone/esm/index.cjs.js +0 -2
  46. package/dist/node_modules/@ungap/structured-clone/esm/index.cjs.js.map +0 -1
  47. package/dist/node_modules/@ungap/structured-clone/esm/index.es.js +0 -12
  48. package/dist/node_modules/@ungap/structured-clone/esm/index.es.js.map +0 -1
  49. package/dist/node_modules/@ungap/structured-clone/esm/serialize.cjs.js +0 -2
  50. package/dist/node_modules/@ungap/structured-clone/esm/serialize.cjs.js.map +0 -1
  51. package/dist/node_modules/@ungap/structured-clone/esm/serialize.es.js +0 -107
  52. package/dist/node_modules/@ungap/structured-clone/esm/serialize.es.js.map +0 -1
  53. package/dist/node_modules/@ungap/structured-clone/esm/types.cjs.js +0 -2
  54. package/dist/node_modules/@ungap/structured-clone/esm/types.cjs.js.map +0 -1
  55. package/dist/node_modules/@ungap/structured-clone/esm/types.es.js +0 -14
  56. package/dist/node_modules/@ungap/structured-clone/esm/types.es.js.map +0 -1
  57. package/dist/node_modules/devlop/lib/default.cjs.js +0 -2
  58. package/dist/node_modules/devlop/lib/default.cjs.js.map +0 -1
  59. package/dist/node_modules/devlop/lib/default.es.js +0 -6
  60. package/dist/node_modules/devlop/lib/default.es.js.map +0 -1
  61. package/dist/node_modules/entities/dist/esm/decode-codepoint.cjs.js +0 -2
  62. package/dist/node_modules/entities/dist/esm/decode-codepoint.cjs.js.map +0 -1
  63. package/dist/node_modules/entities/dist/esm/decode-codepoint.es.js +0 -39
  64. package/dist/node_modules/entities/dist/esm/decode-codepoint.es.js.map +0 -1
  65. package/dist/node_modules/entities/dist/esm/decode.cjs.js +0 -2
  66. package/dist/node_modules/entities/dist/esm/decode.cjs.js.map +0 -1
  67. package/dist/node_modules/entities/dist/esm/decode.es.js +0 -246
  68. package/dist/node_modules/entities/dist/esm/decode.es.js.map +0 -1
  69. package/dist/node_modules/entities/dist/esm/generated/decode-data-html.cjs.js +0 -2
  70. package/dist/node_modules/entities/dist/esm/generated/decode-data-html.cjs.js.map +0 -1
  71. package/dist/node_modules/entities/dist/esm/generated/decode-data-html.es.js +0 -8
  72. package/dist/node_modules/entities/dist/esm/generated/decode-data-html.es.js.map +0 -1
  73. package/dist/node_modules/hast-util-raw/lib/index.cjs.js +0 -2
  74. package/dist/node_modules/hast-util-raw/lib/index.cjs.js.map +0 -1
  75. package/dist/node_modules/hast-util-raw/lib/index.es.js +0 -218
  76. package/dist/node_modules/hast-util-raw/lib/index.es.js.map +0 -1
  77. package/dist/node_modules/hast-util-raw/node_modules/hast-util-from-parse5/lib/index.cjs.js +0 -2
  78. package/dist/node_modules/hast-util-raw/node_modules/hast-util-from-parse5/lib/index.cjs.js.map +0 -1
  79. package/dist/node_modules/hast-util-raw/node_modules/hast-util-from-parse5/lib/index.es.js +0 -146
  80. package/dist/node_modules/hast-util-raw/node_modules/hast-util-from-parse5/lib/index.es.js.map +0 -1
  81. package/dist/node_modules/hast-util-raw/node_modules/hast-util-parse-selector/lib/index.cjs.js +0 -2
  82. package/dist/node_modules/hast-util-raw/node_modules/hast-util-parse-selector/lib/index.cjs.js.map +0 -1
  83. package/dist/node_modules/hast-util-raw/node_modules/hast-util-parse-selector/lib/index.es.js +0 -21
  84. package/dist/node_modules/hast-util-raw/node_modules/hast-util-parse-selector/lib/index.es.js.map +0 -1
  85. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/create-h.cjs.js +0 -2
  86. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/create-h.cjs.js.map +0 -1
  87. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/create-h.es.js +0 -113
  88. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/create-h.es.js.map +0 -1
  89. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/index.cjs.js +0 -2
  90. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/index.cjs.js.map +0 -1
  91. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/index.es.js +0 -9
  92. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/index.es.js.map +0 -1
  93. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/svg-case-sensitive-tag-names.cjs.js +0 -2
  94. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/svg-case-sensitive-tag-names.cjs.js.map +0 -1
  95. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/svg-case-sensitive-tag-names.es.js +0 -45
  96. package/dist/node_modules/hast-util-raw/node_modules/hastscript/lib/svg-case-sensitive-tag-names.es.js.map +0 -1
  97. package/dist/node_modules/hast-util-raw/node_modules/html-void-elements/index.cjs.js +0 -2
  98. package/dist/node_modules/hast-util-raw/node_modules/html-void-elements/index.cjs.js.map +0 -1
  99. package/dist/node_modules/hast-util-raw/node_modules/html-void-elements/index.es.js +0 -26
  100. package/dist/node_modules/hast-util-raw/node_modules/html-void-elements/index.es.js.map +0 -1
  101. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/doctype.cjs.js +0 -2
  102. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/doctype.cjs.js.map +0 -1
  103. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/doctype.es.js +0 -99
  104. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/doctype.es.js.map +0 -1
  105. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/error-codes.cjs.js +0 -2
  106. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/error-codes.cjs.js.map +0 -1
  107. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/error-codes.es.js +0 -8
  108. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/error-codes.es.js.map +0 -1
  109. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/foreign-content.cjs.js +0 -2
  110. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/foreign-content.cjs.js.map +0 -1
  111. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/foreign-content.es.js +0 -211
  112. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/foreign-content.es.js.map +0 -1
  113. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/html.cjs.js +0 -2
  114. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/html.cjs.js.map +0 -1
  115. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/html.es.js +0 -251
  116. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/html.es.js.map +0 -1
  117. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/token.cjs.js +0 -2
  118. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/token.cjs.js.map +0 -1
  119. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/token.es.js +0 -15
  120. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/token.es.js.map +0 -1
  121. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/unicode.cjs.js +0 -2
  122. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/unicode.cjs.js.map +0 -1
  123. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/unicode.es.js +0 -74
  124. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/unicode.es.js.map +0 -1
  125. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/formatting-element-list.cjs.js +0 -2
  126. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/formatting-element-list.cjs.js.map +0 -1
  127. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/formatting-element-list.es.js +0 -85
  128. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/formatting-element-list.es.js.map +0 -1
  129. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/index.cjs.js +0 -2
  130. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/index.cjs.js.map +0 -1
  131. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/index.es.js +0 -2272
  132. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/index.es.js.map +0 -1
  133. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/open-element-stack.cjs.js +0 -2
  134. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/open-element-stack.cjs.js.map +0 -1
  135. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/open-element-stack.es.js +0 -241
  136. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/open-element-stack.es.js.map +0 -1
  137. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/serializer/index.cjs.js +0 -2
  138. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/serializer/index.cjs.js.map +0 -1
  139. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/serializer/index.es.js +0 -3
  140. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/serializer/index.es.js.map +0 -1
  141. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.cjs.js +0 -2
  142. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.cjs.js.map +0 -1
  143. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.es.js +0 -1941
  144. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.es.js.map +0 -1
  145. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/preprocessor.cjs.js +0 -2
  146. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/preprocessor.cjs.js.map +0 -1
  147. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/preprocessor.es.js +0 -89
  148. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/preprocessor.es.js.map +0 -1
  149. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tree-adapters/default.cjs.js +0 -2
  150. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tree-adapters/default.cjs.js.map +0 -1
  151. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tree-adapters/default.es.js +0 -163
  152. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tree-adapters/default.es.js.map +0 -1
  153. package/dist/node_modules/hast-util-raw/node_modules/property-information/index.cjs.js +0 -2
  154. package/dist/node_modules/hast-util-raw/node_modules/property-information/index.cjs.js.map +0 -1
  155. package/dist/node_modules/hast-util-raw/node_modules/property-information/index.es.js +0 -13
  156. package/dist/node_modules/hast-util-raw/node_modules/property-information/index.es.js.map +0 -1
  157. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/aria.cjs.js +0 -2
  158. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/aria.cjs.js.map +0 -1
  159. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/aria.es.js +0 -62
  160. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/aria.es.js.map +0 -1
  161. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/find.cjs.js +0 -2
  162. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/find.cjs.js.map +0 -1
  163. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/find.es.js +0 -34
  164. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/find.es.js.map +0 -1
  165. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/html.cjs.js +0 -2
  166. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/html.cjs.js.map +0 -1
  167. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/html.es.js +0 -369
  168. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/html.es.js.map +0 -1
  169. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/normalize.cjs.js +0 -2
  170. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/normalize.cjs.js.map +0 -1
  171. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/normalize.es.js +0 -7
  172. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/normalize.es.js.map +0 -1
  173. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/svg.cjs.js +0 -2
  174. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/svg.cjs.js.map +0 -1
  175. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/svg.es.js +0 -567
  176. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/svg.es.js.map +0 -1
  177. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-insensitive-transform.cjs.js +0 -2
  178. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-insensitive-transform.cjs.js.map +0 -1
  179. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-insensitive-transform.es.js +0 -8
  180. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-insensitive-transform.es.js.map +0 -1
  181. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-sensitive-transform.cjs.js +0 -2
  182. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-sensitive-transform.cjs.js.map +0 -1
  183. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-sensitive-transform.es.js +0 -7
  184. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/case-sensitive-transform.es.js.map +0 -1
  185. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/create.cjs.js +0 -2
  186. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/create.cjs.js.map +0 -1
  187. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/create.es.js +0 -20
  188. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/create.es.js.map +0 -1
  189. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/defined-info.cjs.js +0 -2
  190. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/defined-info.cjs.js.map +0 -1
  191. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/defined-info.es.js +0 -37
  192. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/defined-info.es.js.map +0 -1
  193. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/info.cjs.js +0 -2
  194. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/info.cjs.js.map +0 -1
  195. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/info.es.js +0 -29
  196. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/info.es.js.map +0 -1
  197. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/merge.cjs.js +0 -2
  198. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/merge.cjs.js.map +0 -1
  199. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/merge.es.js +0 -11
  200. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/merge.es.js.map +0 -1
  201. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/schema.cjs.js +0 -2
  202. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/schema.cjs.js.map +0 -1
  203. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/schema.es.js +0 -22
  204. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/schema.es.js.map +0 -1
  205. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/types.cjs.js +0 -2
  206. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/types.cjs.js.map +0 -1
  207. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/types.es.js +0 -15
  208. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/util/types.es.js.map +0 -1
  209. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xlink.cjs.js +0 -2
  210. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xlink.cjs.js.map +0 -1
  211. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xlink.es.js +0 -20
  212. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xlink.es.js.map +0 -1
  213. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xml.cjs.js +0 -2
  214. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xml.cjs.js.map +0 -1
  215. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xml.es.js +0 -12
  216. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xml.es.js.map +0 -1
  217. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xmlns.cjs.js +0 -2
  218. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xmlns.cjs.js.map +0 -1
  219. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xmlns.es.js +0 -12
  220. package/dist/node_modules/hast-util-raw/node_modules/property-information/lib/xmlns.es.js.map +0 -1
  221. package/dist/node_modules/hast-util-raw/node_modules/vfile-location/lib/index.cjs.js +0 -3
  222. package/dist/node_modules/hast-util-raw/node_modules/vfile-location/lib/index.cjs.js.map +0 -1
  223. package/dist/node_modules/hast-util-raw/node_modules/vfile-location/lib/index.es.js +0 -43
  224. package/dist/node_modules/hast-util-raw/node_modules/vfile-location/lib/index.es.js.map +0 -1
  225. package/dist/node_modules/hast-util-to-parse5/lib/index.cjs.js +0 -2
  226. package/dist/node_modules/hast-util-to-parse5/lib/index.cjs.js.map +0 -1
  227. package/dist/node_modules/hast-util-to-parse5/lib/index.es.js +0 -119
  228. package/dist/node_modules/hast-util-to-parse5/lib/index.es.js.map +0 -1
  229. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/index.cjs.js +0 -2
  230. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/index.cjs.js.map +0 -1
  231. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/index.es.js +0 -13
  232. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/index.es.js.map +0 -1
  233. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/aria.cjs.js +0 -2
  234. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/aria.cjs.js.map +0 -1
  235. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/aria.es.js +0 -62
  236. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/aria.es.js.map +0 -1
  237. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/find.cjs.js +0 -2
  238. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/find.cjs.js.map +0 -1
  239. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/find.es.js +0 -34
  240. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/find.es.js.map +0 -1
  241. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/html.cjs.js +0 -2
  242. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/html.cjs.js.map +0 -1
  243. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/html.es.js +0 -369
  244. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/html.es.js.map +0 -1
  245. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/normalize.cjs.js +0 -2
  246. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/normalize.cjs.js.map +0 -1
  247. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/normalize.es.js +0 -7
  248. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/normalize.es.js.map +0 -1
  249. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/svg.cjs.js +0 -2
  250. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/svg.cjs.js.map +0 -1
  251. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/svg.es.js +0 -567
  252. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/svg.es.js.map +0 -1
  253. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-insensitive-transform.cjs.js +0 -2
  254. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-insensitive-transform.cjs.js.map +0 -1
  255. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-insensitive-transform.es.js +0 -8
  256. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-insensitive-transform.es.js.map +0 -1
  257. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-sensitive-transform.cjs.js +0 -2
  258. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-sensitive-transform.cjs.js.map +0 -1
  259. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-sensitive-transform.es.js +0 -7
  260. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/case-sensitive-transform.es.js.map +0 -1
  261. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/create.cjs.js +0 -2
  262. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/create.cjs.js.map +0 -1
  263. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/create.es.js +0 -20
  264. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/create.es.js.map +0 -1
  265. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/defined-info.cjs.js +0 -2
  266. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/defined-info.cjs.js.map +0 -1
  267. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/defined-info.es.js +0 -37
  268. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/defined-info.es.js.map +0 -1
  269. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/info.cjs.js +0 -2
  270. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/info.cjs.js.map +0 -1
  271. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/info.es.js +0 -29
  272. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/info.es.js.map +0 -1
  273. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/merge.cjs.js +0 -2
  274. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/merge.cjs.js.map +0 -1
  275. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/merge.es.js +0 -11
  276. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/merge.es.js.map +0 -1
  277. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/schema.cjs.js +0 -2
  278. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/schema.cjs.js.map +0 -1
  279. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/schema.es.js +0 -22
  280. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/schema.es.js.map +0 -1
  281. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/types.cjs.js +0 -2
  282. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/types.cjs.js.map +0 -1
  283. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/types.es.js +0 -15
  284. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/util/types.es.js.map +0 -1
  285. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xlink.cjs.js +0 -2
  286. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xlink.cjs.js.map +0 -1
  287. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xlink.es.js +0 -20
  288. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xlink.es.js.map +0 -1
  289. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xml.cjs.js +0 -2
  290. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xml.cjs.js.map +0 -1
  291. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xml.es.js +0 -12
  292. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xml.es.js.map +0 -1
  293. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xmlns.cjs.js +0 -2
  294. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xmlns.cjs.js.map +0 -1
  295. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xmlns.es.js +0 -12
  296. package/dist/node_modules/hast-util-to-parse5/node_modules/property-information/lib/xmlns.es.js.map +0 -1
  297. package/dist/node_modules/rehype-raw/lib/index.cjs.js +0 -2
  298. package/dist/node_modules/rehype-raw/lib/index.cjs.js.map +0 -1
  299. package/dist/node_modules/rehype-raw/lib/index.es.js +0 -13
  300. package/dist/node_modules/rehype-raw/lib/index.es.js.map +0 -1
  301. package/dist/node_modules/unist-util-is/lib/index.cjs.js +0 -2
  302. package/dist/node_modules/unist-util-is/lib/index.cjs.js.map +0 -1
  303. package/dist/node_modules/unist-util-is/lib/index.es.js +0 -92
  304. package/dist/node_modules/unist-util-is/lib/index.es.js.map +0 -1
  305. package/dist/node_modules/unist-util-position/lib/index.cjs.js +0 -2
  306. package/dist/node_modules/unist-util-position/lib/index.cjs.js.map +0 -1
  307. package/dist/node_modules/unist-util-position/lib/index.es.js +0 -18
  308. package/dist/node_modules/unist-util-position/lib/index.es.js.map +0 -1
  309. package/dist/node_modules/unist-util-visit/lib/index.cjs.js +0 -2
  310. package/dist/node_modules/unist-util-visit/lib/index.cjs.js.map +0 -1
  311. package/dist/node_modules/unist-util-visit/lib/index.es.js +0 -17
  312. package/dist/node_modules/unist-util-visit/lib/index.es.js.map +0 -1
  313. package/dist/node_modules/unist-util-visit-parents/lib/color.cjs.js +0 -2
  314. package/dist/node_modules/unist-util-visit-parents/lib/color.cjs.js.map +0 -1
  315. package/dist/node_modules/unist-util-visit-parents/lib/color.es.js +0 -7
  316. package/dist/node_modules/unist-util-visit-parents/lib/color.es.js.map +0 -1
  317. package/dist/node_modules/unist-util-visit-parents/lib/index.cjs.js +0 -2
  318. package/dist/node_modules/unist-util-visit-parents/lib/index.cjs.js.map +0 -1
  319. package/dist/node_modules/unist-util-visit-parents/lib/index.es.js +0 -57
  320. package/dist/node_modules/unist-util-visit-parents/lib/index.es.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../../../../../../../node_modules/hast-util-raw/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"],"names":["State","TokenizerMode","isAsciiDigit","cp","$","isAsciiUpper","isAsciiLower","isAsciiLetter","isAsciiAlphaNumeric","toAsciiLower","isWhitespace","isScriptDataDoubleEscapeSequenceEnd","getErrorForNumericCharacterReference","code","ERR","isSurrogate","isUndefinedCodePoint","isControlCodePoint","Tokenizer","options","handler","Preprocessor","EntityDecoder","htmlDecodeTree","consumed","error","cpOffset","_a","_b","offset","writeCallback","chunk","isLastChunk","count","i","pattern","caseSensitive","TokenType","TAG_ID","initialName","type","chars","attrNameFirstCh","token","getTokenAttr","attrLocations","ct","getTagID","nextLocation","location","ch","DecodingMode","REPLACEMENT_CHARACTER","_cp","$$","length"],"mappings":"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","x_google_ignoreList":[0]}