htmljs-parser 2.11.3 → 3.2.0

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 (1031) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +103 -106
  3. package/dist/core/Parser.d.ts +67 -0
  4. package/dist/index.d.ts +23 -0
  5. package/dist/index.js +2020 -0
  6. package/dist/index.mjs +1999 -0
  7. package/dist/internal.d.ts +4 -0
  8. package/dist/states/ATTRIBUTE.d.ts +18 -0
  9. package/dist/states/BEGIN_DELIMITED_HTML_BLOCK.d.ts +7 -0
  10. package/dist/states/CDATA.d.ts +3 -0
  11. package/dist/states/CLOSE_TAG.d.ts +3 -0
  12. package/dist/states/CONCISE_HTML_CONTENT.d.ts +2 -0
  13. package/dist/states/DECLARATION.d.ts +2 -0
  14. package/dist/states/DTD.d.ts +2 -0
  15. package/dist/states/EXPRESSION.d.ts +9 -0
  16. package/dist/states/HTML_COMMENT.d.ts +2 -0
  17. package/dist/states/HTML_CONTENT.d.ts +7 -0
  18. package/dist/states/INLINE_SCRIPT.d.ts +7 -0
  19. package/dist/states/JS_COMMENT_BLOCK.d.ts +2 -0
  20. package/dist/states/JS_COMMENT_LINE.d.ts +2 -0
  21. package/dist/states/OPEN_TAG.d.ts +25 -0
  22. package/dist/states/PARSED_TEXT_CONTENT.d.ts +7 -0
  23. package/dist/states/PLACEHOLDER.d.ts +7 -0
  24. package/dist/states/REGULAR_EXPRESSION.d.ts +6 -0
  25. package/dist/states/STRING.d.ts +6 -0
  26. package/dist/states/TAG_NAME.d.ts +5 -0
  27. package/dist/states/TEMPLATE_STRING.d.ts +2 -0
  28. package/dist/states/index.d.ts +20 -0
  29. package/dist/util/constants.d.ts +127 -0
  30. package/dist/util/util.d.ts +7 -0
  31. package/package.json +67 -30
  32. package/.jshintrc +0 -29
  33. package/.travis.yml +0 -8
  34. package/BaseParser.js +0 -188
  35. package/Parser.js +0 -3331
  36. package/html-tags.js +0 -126
  37. package/index.js +0 -6
  38. package/notify-util.js +0 -319
  39. package/operators.js +0 -65
  40. package/test/.jshintrc +0 -43
  41. package/test/1.x-test.js +0 -6
  42. package/test/autotest/argument-and-params/expected.html +0 -17
  43. package/test/autotest/argument-and-params/input.htmljs +0 -6
  44. package/test/autotest/argument-attr/expected.html +0 -2
  45. package/test/autotest/argument-attr/input.htmljs +0 -1
  46. package/test/autotest/argument-attr-extra-whitespace/expected.html +0 -4
  47. package/test/autotest/argument-attr-extra-whitespace/input.htmljs +0 -2
  48. package/test/autotest/argument-attr-multiple/expected.html +0 -1
  49. package/test/autotest/argument-attr-multiple/input.htmljs +0 -1
  50. package/test/autotest/argument-tag/expected.html +0 -9
  51. package/test/autotest/argument-tag/input.htmljs +0 -3
  52. package/test/autotest/argument-tag-attr/expected.html +0 -2
  53. package/test/autotest/argument-tag-attr/input.htmljs +0 -1
  54. package/test/autotest/argument-tag-complex/expected.html +0 -2
  55. package/test/autotest/argument-tag-complex/input.htmljs +0 -1
  56. package/test/autotest/argument-tag-extra-whitespace/expected.html +0 -2
  57. package/test/autotest/argument-tag-extra-whitespace/input.htmljs +0 -1
  58. package/test/autotest/argument-tag-multiple/expected.html +0 -1
  59. package/test/autotest/argument-tag-multiple/input.htmljs +0 -1
  60. package/test/autotest/argument-tag-nested-parens/expected.html +0 -3
  61. package/test/autotest/argument-tag-nested-parens/input.htmljs +0 -4
  62. package/test/autotest/attr-bound/expected.html +0 -23
  63. package/test/autotest/attr-bound/input.htmljs +0 -6
  64. package/test/autotest/attr-comma-multiline/expected.html +0 -3
  65. package/test/autotest/attr-comma-multiline/input.htmljs +0 -6
  66. package/test/autotest/attr-complex/expected.html +0 -3
  67. package/test/autotest/attr-complex/input.htmljs +0 -1
  68. package/test/autotest/attr-complex-instanceof/expected.html +0 -2
  69. package/test/autotest/attr-complex-instanceof/input.htmljs +0 -1
  70. package/test/autotest/attr-escape-characters/expected.html +0 -3
  71. package/test/autotest/attr-escape-characters/input.htmljs +0 -3
  72. package/test/autotest/attr-escaped-dollar/expected.html +0 -1
  73. package/test/autotest/attr-escaped-dollar/input.htmljs +0 -1
  74. package/test/autotest/attr-escaped-dollar/test.js +0 -5
  75. package/test/autotest/attr-grouped/expected.html +0 -3
  76. package/test/autotest/attr-grouped/input.htmljs +0 -5
  77. package/test/autotest/attr-grouped-2/expected.html +0 -3
  78. package/test/autotest/attr-grouped-2/input.htmljs +0 -5
  79. package/test/autotest/attr-grouped-3/expected.html +0 -3
  80. package/test/autotest/attr-grouped-3/input.htmljs +0 -5
  81. package/test/autotest/attr-grouped-4/expected.html +0 -3
  82. package/test/autotest/attr-grouped-4/input.htmljs +0 -5
  83. package/test/autotest/attr-grouped-invalid/expected.html +0 -1
  84. package/test/autotest/attr-grouped-invalid/input.htmljs +0 -5
  85. package/test/autotest/attr-grouped-invalid-eof/expected.html +0 -1
  86. package/test/autotest/attr-grouped-invalid-eof/input.htmljs +0 -4
  87. package/test/autotest/attr-grouped-multiple/expected.html +0 -3
  88. package/test/autotest/attr-grouped-multiple/input.htmljs +0 -4
  89. package/test/autotest/attr-inc-and-dec/expected.html +0 -4
  90. package/test/autotest/attr-inc-and-dec/input.htmljs +0 -2
  91. package/test/autotest/attr-inconsistent-commas/expected.html +0 -1
  92. package/test/autotest/attr-inconsistent-commas/input.htmljs +0 -1
  93. package/test/autotest/attr-int-and-id/expected.html +0 -2
  94. package/test/autotest/attr-int-and-id/input.htmljs +0 -1
  95. package/test/autotest/attr-literal-false/expected.html +0 -2
  96. package/test/autotest/attr-literal-false/input.htmljs +0 -1
  97. package/test/autotest/attr-literal-false/test.js +0 -1
  98. package/test/autotest/attr-literal-null/expected.html +0 -2
  99. package/test/autotest/attr-literal-null/input.htmljs +0 -1
  100. package/test/autotest/attr-literal-null/test.js +0 -1
  101. package/test/autotest/attr-literal-numbers/expected.html +0 -2
  102. package/test/autotest/attr-literal-numbers/input.htmljs +0 -1
  103. package/test/autotest/attr-literal-numbers/test.js +0 -1
  104. package/test/autotest/attr-literal-regex/expected.html +0 -11
  105. package/test/autotest/attr-literal-regex/input.htmljs +0 -4
  106. package/test/autotest/attr-literal-string-double-quotes/expected.html +0 -2
  107. package/test/autotest/attr-literal-string-double-quotes/input.htmljs +0 -1
  108. package/test/autotest/attr-literal-string-double-quotes/test.js +0 -1
  109. package/test/autotest/attr-literal-string-single-quotes/expected.html +0 -2
  110. package/test/autotest/attr-literal-string-single-quotes/input.htmljs +0 -1
  111. package/test/autotest/attr-literal-string-single-quotes/test.js +0 -1
  112. package/test/autotest/attr-literal-true/expected.html +0 -2
  113. package/test/autotest/attr-literal-true/input.htmljs +0 -1
  114. package/test/autotest/attr-literal-true/test.js +0 -1
  115. package/test/autotest/attr-literal-undefined/expected.html +0 -2
  116. package/test/autotest/attr-literal-undefined/input.htmljs +0 -1
  117. package/test/autotest/attr-literal-undefined/test.js +0 -1
  118. package/test/autotest/attr-method-shorthand/expected.html +0 -51
  119. package/test/autotest/attr-method-shorthand/input.htmljs +0 -39
  120. package/test/autotest/attr-multi-line-comment/expected.html +0 -3
  121. package/test/autotest/attr-multi-line-comment/input.htmljs +0 -1
  122. package/test/autotest/attr-multi-line-string/expected.html +0 -2
  123. package/test/autotest/attr-multi-line-string/input.htmljs +0 -3
  124. package/test/autotest/attr-name-with-html-chars/expected.html +0 -1
  125. package/test/autotest/attr-name-with-html-chars/input.htmljs +0 -1
  126. package/test/autotest/attr-nested-literal-regex/expected.html +0 -2
  127. package/test/autotest/attr-nested-literal-regex/input.htmljs +0 -1
  128. package/test/autotest/attr-no-value/expected.html +0 -3
  129. package/test/autotest/attr-no-value/input.htmljs +0 -1
  130. package/test/autotest/attr-no-value-self-closed/expected.html +0 -2
  131. package/test/autotest/attr-no-value-self-closed/input.htmljs +0 -1
  132. package/test/autotest/attr-non-literal/expected.html +0 -5
  133. package/test/autotest/attr-non-literal/input.htmljs +0 -2
  134. package/test/autotest/attr-non-literal/test.js +0 -1
  135. package/test/autotest/attr-object-expressions/expected.html +0 -4
  136. package/test/autotest/attr-object-expressions/input.htmljs +0 -3
  137. package/test/autotest/attr-simple-expression/expected.html +0 -3
  138. package/test/autotest/attr-simple-expression/input.htmljs +0 -1
  139. package/test/autotest/attr-unenclosed-whitespace/expected.html +0 -2
  140. package/test/autotest/attr-unenclosed-whitespace/input.htmljs +0 -1
  141. package/test/autotest/attr-unenclosed-whitespace-minus/expected.html +0 -2
  142. package/test/autotest/attr-unenclosed-whitespace-minus/input.htmljs +0 -1
  143. package/test/autotest/attr-unenclosed-whitespace-multiple-attrs/expected.html +0 -5
  144. package/test/autotest/attr-unenclosed-whitespace-multiple-attrs/input.htmljs +0 -2
  145. package/test/autotest/attr-unenclosed-whitespace-odd/expected.html +0 -2
  146. package/test/autotest/attr-unenclosed-whitespace-odd/input.htmljs +0 -1
  147. package/test/autotest/attr-value-self-closed/expected.html +0 -2
  148. package/test/autotest/attr-value-self-closed/input.htmljs +0 -1
  149. package/test/autotest/attr-value-single-quote-escaped/expected.html +0 -2
  150. package/test/autotest/attr-value-single-quote-escaped/input.htmljs +0 -1
  151. package/test/autotest/attr-value-string-concat/expected.html +0 -2
  152. package/test/autotest/attr-value-string-concat/input.htmljs +0 -1
  153. package/test/autotest/attr-value-typeof/expected.html +0 -2
  154. package/test/autotest/attr-value-typeof/input.htmljs +0 -1
  155. package/test/autotest/attr-value-typeof-comma/expected.html +0 -2
  156. package/test/autotest/attr-value-typeof-comma/input.htmljs +0 -1
  157. package/test/autotest/attr-value-typeof-no-space-prefix/expected.html +0 -2
  158. package/test/autotest/attr-value-typeof-no-space-prefix/input.htmljs +0 -1
  159. package/test/autotest/attr-value-void/expected.html +0 -2
  160. package/test/autotest/attr-value-void/input.htmljs +0 -1
  161. package/test/autotest/attr-with-parens-and-double-quoted-strings/expected.html +0 -2
  162. package/test/autotest/attr-with-parens-and-double-quoted-strings/input.htmljs +0 -1
  163. package/test/autotest/attr-with-parens-and-single-quoted-strings/expected.html +0 -2
  164. package/test/autotest/attr-with-parens-and-single-quoted-strings/input.htmljs +0 -1
  165. package/test/autotest/attr-with-right-angle-bracket/expected.html +0 -3
  166. package/test/autotest/attr-with-right-angle-bracket/input.htmljs +0 -1
  167. package/test/autotest/attr-with-right-angle-bracket-parens/expected.html +0 -3
  168. package/test/autotest/attr-with-right-angle-bracket-parens/input.htmljs +0 -1
  169. package/test/autotest/attr-without-delimiters/expected.html +0 -2
  170. package/test/autotest/attr-without-delimiters/input.htmljs +0 -1
  171. package/test/autotest/backtick-string/expected.html +0 -3
  172. package/test/autotest/backtick-string/input.htmljs +0 -2
  173. package/test/autotest/backtick-string-eof/expected.html +0 -1
  174. package/test/autotest/backtick-string-eof/input.htmljs +0 -2
  175. package/test/autotest/backtick-string-nested-with-space/expected.html +0 -2
  176. package/test/autotest/backtick-string-nested-with-space/input.htmljs +0 -1
  177. package/test/autotest/backtick-string-placeholder-newline/expected.html +0 -4
  178. package/test/autotest/backtick-string-placeholder-newline/input.htmljs +0 -3
  179. package/test/autotest/bad-tag-indent/expected.html +0 -1
  180. package/test/autotest/bad-tag-indent/input.htmljs +0 -1
  181. package/test/autotest/cdata/expected.html +0 -3
  182. package/test/autotest/cdata/input.htmljs +0 -1
  183. package/test/autotest/cdata-2/expected.html +0 -5
  184. package/test/autotest/cdata-2/input.htmljs +0 -3
  185. package/test/autotest/cdata-pos/expected.html +0 -7
  186. package/test/autotest/cdata-pos/input.htmljs +0 -4
  187. package/test/autotest/cdata-pos/test.js +0 -1
  188. package/test/autotest/comma-ends-attr-operators/expected.html +0 -2
  189. package/test/autotest/comma-ends-attr-operators/input.htmljs +0 -1
  190. package/test/autotest/commas-relax/expected.html +0 -2
  191. package/test/autotest/commas-relax/input.htmljs +0 -1
  192. package/test/autotest/commas-relax/test.js +0 -7
  193. package/test/autotest/commas-require-all-attrs-first/expected.html +0 -1
  194. package/test/autotest/commas-require-all-attrs-first/input.htmljs +0 -1
  195. package/test/autotest/commas-require-all-attrs-last/expected.html +0 -1
  196. package/test/autotest/commas-require-all-attrs-last/input.htmljs +0 -1
  197. package/test/autotest/comment-concise-js-block/expected.html +0 -4
  198. package/test/autotest/comment-concise-js-block/input.htmljs +0 -6
  199. package/test/autotest/comment-concise-js-block-trailing/expected.html +0 -4
  200. package/test/autotest/comment-concise-js-block-trailing/input.htmljs +0 -6
  201. package/test/autotest/comment-concise-js-line/expected.html +0 -4
  202. package/test/autotest/comment-concise-js-line/input.htmljs +0 -3
  203. package/test/autotest/comments-within-open-tag/expected.html +0 -2
  204. package/test/autotest/comments-within-open-tag/input.htmljs +0 -1
  205. package/test/autotest/complex/expected.html +0 -24
  206. package/test/autotest/complex/input.htmljs +0 -22
  207. package/test/autotest/complex-attr-name/expected.html +0 -2
  208. package/test/autotest/complex-attr-name/input.htmljs +0 -1
  209. package/test/autotest/concise-complex-tag-name/expected.html +0 -2
  210. package/test/autotest/concise-complex-tag-name/input.htmljs +0 -1
  211. package/test/autotest/concise-contentplaceholder-html-start/expected.html +0 -5
  212. package/test/autotest/concise-contentplaceholder-html-start/input.htmljs +0 -1
  213. package/test/autotest/concise-contentplaceholder-start/expected.html +0 -1
  214. package/test/autotest/concise-contentplaceholder-start/input.htmljs +0 -1
  215. package/test/autotest/concise-hyphen-after-tag-name/expected.html +0 -1
  216. package/test/autotest/concise-hyphen-after-tag-name/input.htmljs +0 -1
  217. package/test/autotest/css-calc/expected.html +0 -6
  218. package/test/autotest/css-calc/input.htmljs +0 -5
  219. package/test/autotest/declaration/expected.html +0 -1
  220. package/test/autotest/declaration/input.htmljs +0 -1
  221. package/test/autotest/default-attr/expected.html +0 -2
  222. package/test/autotest/default-attr/input.htmljs +0 -1
  223. package/test/autotest/default-attr-comma/expected.html +0 -2
  224. package/test/autotest/default-attr-comma/input.htmljs +0 -1
  225. package/test/autotest/default-attr-no-space/expected.html +0 -6
  226. package/test/autotest/default-attr-no-space/input.htmljs +0 -3
  227. package/test/autotest/double-hyphen-block/expected.html +0 -12
  228. package/test/autotest/double-hyphen-block/input.htmljs +0 -8
  229. package/test/autotest/double-hyphen-line/expected.html +0 -12
  230. package/test/autotest/double-hyphen-line/input.htmljs +0 -5
  231. package/test/autotest/double-hyphen-line-start/expected.html +0 -12
  232. package/test/autotest/double-hyphen-line-start/input.htmljs +0 -6
  233. package/test/autotest/dtd/expected.html +0 -1
  234. package/test/autotest/dtd/input.htmljs +0 -1
  235. package/test/autotest/empty-closing-tag/expected.html +0 -8
  236. package/test/autotest/empty-closing-tag/input.htmljs +0 -6
  237. package/test/autotest/empty-closing-tag2/expected.html +0 -9
  238. package/test/autotest/empty-closing-tag2/input.htmljs +0 -5
  239. package/test/autotest/eof-attr-argument/expected.html +0 -1
  240. package/test/autotest/eof-attr-argument/input.htmljs +0 -1
  241. package/test/autotest/eof-attr-name/expected.html +0 -3
  242. package/test/autotest/eof-attr-name/input.htmljs +0 -1
  243. package/test/autotest/eof-attr-value/expected.html +0 -3
  244. package/test/autotest/eof-attr-value/input.htmljs +0 -1
  245. package/test/autotest/eof-attr-value-js-comment-comment/expected.html +0 -3
  246. package/test/autotest/eof-attr-value-js-comment-comment/input.htmljs +0 -1
  247. package/test/autotest/eof-attr-value-js-comment-comment-concise/expected.html +0 -1
  248. package/test/autotest/eof-attr-value-js-comment-comment-concise/input.htmljs +0 -1
  249. package/test/autotest/eof-attr-value-string/expected.html +0 -1
  250. package/test/autotest/eof-attr-value-string/input.htmljs +0 -1
  251. package/test/autotest/eof-doctype/expected.html +0 -1
  252. package/test/autotest/eof-doctype/input.htmljs +0 -1
  253. package/test/autotest/eof-placeholder-body-escaped/expected.html +0 -4
  254. package/test/autotest/eof-placeholder-body-escaped/input.htmljs +0 -1
  255. package/test/autotest/eof-placeholder-body-non-escaped/expected.html +0 -4
  256. package/test/autotest/eof-placeholder-body-non-escaped/input.htmljs +0 -4
  257. package/test/autotest/eof-placeholder-concise/expected.html +0 -3
  258. package/test/autotest/eof-placeholder-concise/input.htmljs +0 -2
  259. package/test/autotest/eof-placeholder-script-body-escaped/expected.html +0 -4
  260. package/test/autotest/eof-placeholder-script-body-escaped/input.htmljs +0 -1
  261. package/test/autotest/eof-placeholder-script-body-non-escaped/expected.html +0 -4
  262. package/test/autotest/eof-placeholder-script-body-non-escaped/input.htmljs +0 -1
  263. package/test/autotest/eof-placeholder-string/expected.html +0 -4
  264. package/test/autotest/eof-placeholder-string/input.htmljs +0 -1
  265. package/test/autotest/eof-script-body/expected.html +0 -4
  266. package/test/autotest/eof-script-body/input.htmljs +0 -2
  267. package/test/autotest/eof-style/expected.html +0 -4
  268. package/test/autotest/eof-style/input.htmljs +0 -1
  269. package/test/autotest/eof-tag-start/expected.html +0 -3
  270. package/test/autotest/eof-tag-start/input.htmljs +0 -1
  271. package/test/autotest/eof-xml-declaration/expected.html +0 -1
  272. package/test/autotest/eof-xml-declaration/input.htmljs +0 -1
  273. package/test/autotest/html-block-after-tag/expected.html +0 -6
  274. package/test/autotest/html-block-after-tag/input.htmljs +0 -1
  275. package/test/autotest/html-comments/expected.html +0 -3
  276. package/test/autotest/html-comments/input.htmljs +0 -1
  277. package/test/autotest/html-comments-ignore-placeholders/expected.html +0 -1
  278. package/test/autotest/html-comments-ignore-placeholders/input.htmljs +0 -1
  279. package/test/autotest/ignoreAttributes/expected.html +0 -2
  280. package/test/autotest/ignoreAttributes/input.htmljs +0 -1
  281. package/test/autotest/ignoreAttributes/test.js +0 -7
  282. package/test/autotest/ignoreNonstandardStringPlaceholders/expected.html +0 -2
  283. package/test/autotest/ignoreNonstandardStringPlaceholders/input.htmljs +0 -1
  284. package/test/autotest/ignoreNonstandardStringPlaceholders/test.js +0 -1
  285. package/test/autotest/ignorePlaceholders-attr-double-escaped-dollar-placeholder/expected.html +0 -2
  286. package/test/autotest/ignorePlaceholders-attr-double-escaped-dollar-placeholder/input.htmljs +0 -1
  287. package/test/autotest/ignorePlaceholders-attr-double-escaped-dollar-placeholder/test.js +0 -1
  288. package/test/autotest/ignorePlaceholders-attr-escaped-dollar-placeholder/expected.html +0 -2
  289. package/test/autotest/ignorePlaceholders-attr-escaped-dollar-placeholder/input.htmljs +0 -1
  290. package/test/autotest/ignorePlaceholders-attr-escaped-dollar-placeholder/test.js +0 -1
  291. package/test/autotest/ignorePlaceholders-attr-placeholder/expected.html +0 -2
  292. package/test/autotest/ignorePlaceholders-attr-placeholder/input.htmljs +0 -1
  293. package/test/autotest/ignorePlaceholders-attr-placeholder/test.js +0 -1
  294. package/test/autotest/invalid-closing-tag/expected.html +0 -4
  295. package/test/autotest/invalid-closing-tag/input.htmljs +0 -1
  296. package/test/autotest/mixed/expected.html +0 -21
  297. package/test/autotest/mixed/input.htmljs +0 -8
  298. package/test/autotest/mixed-bad-indentation/expected.html +0 -7
  299. package/test/autotest/mixed-bad-indentation/input.htmljs +0 -3
  300. package/test/autotest/mixed-cdata/expected.html +0 -7
  301. package/test/autotest/mixed-cdata/input.htmljs +0 -3
  302. package/test/autotest/mixed-comment/expected.html +0 -7
  303. package/test/autotest/mixed-comment/input.htmljs +0 -6
  304. package/test/autotest/mixed-invalid/expected.html +0 -16
  305. package/test/autotest/mixed-invalid/input.htmljs +0 -9
  306. package/test/autotest/mixed-open-tag-only/expected.html +0 -14
  307. package/test/autotest/mixed-open-tag-only/input.htmljs +0 -6
  308. package/test/autotest/multiline-html-block/expected.html +0 -5
  309. package/test/autotest/multiline-html-block/input.htmljs +0 -4
  310. package/test/autotest/multiline-html-block-empty/expected.html +0 -0
  311. package/test/autotest/multiline-html-block-empty/input.htmljs +0 -2
  312. package/test/autotest/multiline-html-block-missing-end/expected.html +0 -7
  313. package/test/autotest/multiline-html-block-missing-end/input.htmljs +0 -12
  314. package/test/autotest/multiline-html-block-nested/expected.html +0 -7
  315. package/test/autotest/multiline-html-block-nested/input.htmljs +0 -5
  316. package/test/autotest/multiline-html-block-nested-empty/expected.html +0 -2
  317. package/test/autotest/multiline-html-block-nested-empty/input.htmljs +0 -3
  318. package/test/autotest/multiline-html-block-same-line/expected.html +0 -6
  319. package/test/autotest/multiline-html-block-same-line/input.htmljs +0 -7
  320. package/test/autotest/multiline-text-block/expected.html +0 -1
  321. package/test/autotest/multiline-text-block/input.htmljs +0 -4
  322. package/test/autotest/multiline-text-block-bad/expected.html +0 -1
  323. package/test/autotest/multiline-text-block-bad/input.htmljs +0 -5
  324. package/test/autotest/multiline-text-block-with-hyphens/expected.html +0 -1
  325. package/test/autotest/multiline-text-block-with-hyphens/input.htmljs +0 -4
  326. package/test/autotest/multiple-tags-on-line-close-next/input.htmljs +0 -2
  327. package/test/autotest/multiple-tags-on-line-close-next/test.js +0 -1
  328. package/test/autotest/nested-pyramid/expected.html +0 -12
  329. package/test/autotest/nested-pyramid/input.htmljs +0 -6
  330. package/test/autotest/nested-siblings/expected.html +0 -6
  331. package/test/autotest/nested-siblings/input.htmljs +0 -3
  332. package/test/autotest/nested-tags/expected.html +0 -4
  333. package/test/autotest/nested-tags/input.htmljs +0 -2
  334. package/test/autotest/nested-text/expected.html +0 -8
  335. package/test/autotest/nested-text/input.htmljs +0 -8
  336. package/test/autotest/open-tag-only/expected.html +0 -12
  337. package/test/autotest/open-tag-only/input.htmljs +0 -1
  338. package/test/autotest/open-tag-only-custom/expected.html +0 -10
  339. package/test/autotest/open-tag-only-custom/input.htmljs +0 -4
  340. package/test/autotest/open-tag-only-custom/test.js +0 -9
  341. package/test/autotest/open-tag-only-with-body/expected.html +0 -4
  342. package/test/autotest/open-tag-only-with-body/input.htmljs +0 -5
  343. package/test/autotest/open-tag-only-with-body-concise/expected.html +0 -3
  344. package/test/autotest/open-tag-only-with-body-concise/input.htmljs +0 -2
  345. package/test/autotest/open-tag-parser-state/expected.html +0 -21
  346. package/test/autotest/open-tag-parser-state/input.htmljs +0 -11
  347. package/test/autotest/open-tag-parser-state/test.js +0 -21
  348. package/test/autotest/open-tag-parser-state-concise/expected.html +0 -19
  349. package/test/autotest/open-tag-parser-state-concise/input.htmljs +0 -17
  350. package/test/autotest/open-tag-parser-state-concise/test.js +0 -17
  351. package/test/autotest/param-tag/expected.html +0 -2
  352. package/test/autotest/param-tag/input.htmljs +0 -1
  353. package/test/autotest/parsed-text-placeholder-in-template-literal-string/expected.html +0 -4
  354. package/test/autotest/parsed-text-placeholder-in-template-literal-string/input.htmljs +0 -3
  355. package/test/autotest/parsed-text-placeholder-in-template-literal-string/test.js +0 -1
  356. package/test/autotest/parsed-text-style-tag/expected.html +0 -3
  357. package/test/autotest/parsed-text-style-tag/input.htmljs +0 -1
  358. package/test/autotest/placeholder-attr-invalid/expected.html +0 -1
  359. package/test/autotest/placeholder-attr-invalid/input.htmljs +0 -1
  360. package/test/autotest/placeholder-attr-string-value/expected.html +0 -3
  361. package/test/autotest/placeholder-attr-string-value/input.htmljs +0 -1
  362. package/test/autotest/placeholder-attr-string-value-mixed-quotes/expected.html +0 -3
  363. package/test/autotest/placeholder-attr-string-value-mixed-quotes/input.htmljs +0 -1
  364. package/test/autotest/placeholder-attr-string-value-parens/expected.html +0 -3
  365. package/test/autotest/placeholder-attr-string-value-parens/input.htmljs +0 -1
  366. package/test/autotest/placeholder-attr-within-placeholder/expected.html +0 -2
  367. package/test/autotest/placeholder-attr-within-placeholder/input.htmljs +0 -1
  368. package/test/autotest/placeholder-attr-within-string-complex/expected.html +0 -2
  369. package/test/autotest/placeholder-attr-within-string-complex/input.htmljs +0 -1
  370. package/test/autotest/placeholder-attr-within-string-simple/expected.html +0 -2
  371. package/test/autotest/placeholder-attr-within-string-simple/input.htmljs +0 -1
  372. package/test/autotest/placeholder-attr-wrapped/expected.html +0 -2
  373. package/test/autotest/placeholder-attr-wrapped/input.htmljs +0 -1
  374. package/test/autotest/placeholder-backslash/expected.html +0 -23
  375. package/test/autotest/placeholder-backslash/input.htmljs +0 -15
  376. package/test/autotest/placeholder-body-multi-line-js-comment/expected.html +0 -3
  377. package/test/autotest/placeholder-body-multi-line-js-comment/input.htmljs +0 -1
  378. package/test/autotest/placeholder-body-single-line-js-comment/expected.html +0 -3
  379. package/test/autotest/placeholder-body-single-line-js-comment/input.htmljs +0 -2
  380. package/test/autotest/placeholder-body-text/expected.html +0 -5
  381. package/test/autotest/placeholder-body-text/input.htmljs +0 -1
  382. package/test/autotest/placeholder-escape/expected.html +0 -5
  383. package/test/autotest/placeholder-escape/input.htmljs +0 -3
  384. package/test/autotest/placeholder-no-escape/expected.html +0 -5
  385. package/test/autotest/placeholder-no-escape/input.htmljs +0 -3
  386. package/test/autotest/placeholder-tag-name-concise/expected.html +0 -2
  387. package/test/autotest/placeholder-tag-name-concise/input.htmljs +0 -1
  388. package/test/autotest/placeholder-tag-name-html/expected.html +0 -2
  389. package/test/autotest/placeholder-tag-name-html/input.htmljs +0 -1
  390. package/test/autotest/placeholder-unnamed-attr/expected.html +0 -2
  391. package/test/autotest/placeholder-unnamed-attr/input.htmljs +0 -1
  392. package/test/autotest/placeholder-unnamed-attr-escaped/expected.html +0 -2
  393. package/test/autotest/placeholder-unnamed-attr-escaped/input.htmljs +0 -1
  394. package/test/autotest/placeholder-unnamed-attr-escaped-escaped/expected.html +0 -2
  395. package/test/autotest/placeholder-unnamed-attr-escaped-escaped/input.htmljs +0 -1
  396. package/test/autotest/placeholder-unnamed-attr-last/expected.html +0 -2
  397. package/test/autotest/placeholder-unnamed-attr-last/input.htmljs +0 -1
  398. package/test/autotest/placeholder-unnamed-attr-last-concise/expected.html +0 -4
  399. package/test/autotest/placeholder-unnamed-attr-last-concise/input.htmljs +0 -2
  400. package/test/autotest/placeholder-unnamed-attr-last-self-closed/expected.html +0 -2
  401. package/test/autotest/placeholder-unnamed-attr-last-self-closed/input.htmljs +0 -1
  402. package/test/autotest/placeholder-unnamed-attr-trailing-text/expected.html +0 -1
  403. package/test/autotest/placeholder-unnamed-attr-trailing-text/input.htmljs +0 -1
  404. package/test/autotest/placeholder-within-placeholder/expected.html +0 -1
  405. package/test/autotest/placeholder-within-placeholder/input.htmljs +0 -1
  406. package/test/autotest/placeholder-within-placeholder-escaping/expected.html +0 -1
  407. package/test/autotest/placeholder-within-placeholder-escaping/input.htmljs +0 -1
  408. package/test/autotest/placeholder-within-script-tag/expected.html +0 -5
  409. package/test/autotest/placeholder-within-script-tag/input.htmljs +0 -1
  410. package/test/autotest/placeholder-within-script-within-string/expected.html +0 -5
  411. package/test/autotest/placeholder-within-script-within-string/input.htmljs +0 -1
  412. package/test/autotest/placeholder-within-string-newlines/expected.html +0 -4
  413. package/test/autotest/placeholder-within-string-newlines/input.htmljs +0 -3
  414. package/test/autotest/root-el/expected.html +0 -2
  415. package/test/autotest/root-el/input.htmljs +0 -1
  416. package/test/autotest/root-els/expected.html +0 -4
  417. package/test/autotest/root-els/input.htmljs +0 -2
  418. package/test/autotest/script/expected.html +0 -3
  419. package/test/autotest/script/input.htmljs +0 -2
  420. package/test/autotest/script-concise/expected.html +0 -6
  421. package/test/autotest/script-concise/input.htmljs +0 -7
  422. package/test/autotest/script-concise-invalid-nested-tag/expected.html +0 -3
  423. package/test/autotest/script-concise-invalid-nested-tag/input.htmljs +0 -3
  424. package/test/autotest/script-empty-concise/expected.html +0 -6
  425. package/test/autotest/script-empty-concise/input.htmljs +0 -3
  426. package/test/autotest/script-escaped-placeholder/expected.html +0 -5
  427. package/test/autotest/script-escaped-placeholder/input.htmljs +0 -4
  428. package/test/autotest/script-self-closed/expected.html +0 -9
  429. package/test/autotest/script-self-closed/input.htmljs +0 -4
  430. package/test/autotest/script-single-line-comment/expected.html +0 -3
  431. package/test/autotest/script-single-line-comment/input.htmljs +0 -1
  432. package/test/autotest/scriptlet-block/expected.html +0 -1
  433. package/test/autotest/scriptlet-block/input.htmljs +0 -4
  434. package/test/autotest/scriptlet-block-division/expected.html +0 -1
  435. package/test/autotest/scriptlet-block-division/input.htmljs +0 -4
  436. package/test/autotest/scriptlet-block-html/expected.html +0 -1
  437. package/test/autotest/scriptlet-block-html/input.htmljs +0 -6
  438. package/test/autotest/scriptlet-block-invalid-comment/expected.html +0 -1
  439. package/test/autotest/scriptlet-block-invalid-comment/input.htmljs +0 -3
  440. package/test/autotest/scriptlet-block-multiline-comment/expected.html +0 -1
  441. package/test/autotest/scriptlet-block-multiline-comment/input.htmljs +0 -4
  442. package/test/autotest/scriptlet-block-nested/expected.html +0 -1
  443. package/test/autotest/scriptlet-block-nested/input.htmljs +0 -16
  444. package/test/autotest/scriptlet-block-regex/expected.html +0 -1
  445. package/test/autotest/scriptlet-block-regex/input.htmljs +0 -4
  446. package/test/autotest/scriptlet-block-single-line-comment/expected.html +0 -1
  447. package/test/autotest/scriptlet-block-single-line-comment/input.htmljs +0 -4
  448. package/test/autotest/scriptlet-block-template-literal-href/expected.html +0 -1
  449. package/test/autotest/scriptlet-block-template-literal-href/input.htmljs +0 -4
  450. package/test/autotest/scriptlet-line/expected.html +0 -1
  451. package/test/autotest/scriptlet-line/input.htmljs +0 -1
  452. package/test/autotest/scriptlet-line-continue/expected.html +0 -1
  453. package/test/autotest/scriptlet-line-continue/input.htmljs +0 -3
  454. package/test/autotest/scriptlet-line-continue-chain/expected.html +0 -3
  455. package/test/autotest/scriptlet-line-continue-chain/input.htmljs +0 -8
  456. package/test/autotest/scriptlet-line-html/expected.html +0 -1
  457. package/test/autotest/scriptlet-line-html/input.htmljs +0 -3
  458. package/test/autotest/scriptlet-line-multiline-comments/expected.html +0 -5
  459. package/test/autotest/scriptlet-line-multiline-comments/input.htmljs +0 -7
  460. package/test/autotest/scriptlet-line-no-middle/expected.html +0 -2
  461. package/test/autotest/scriptlet-line-no-middle/input.htmljs +0 -1
  462. package/test/autotest/scriptlet-line-no-middle-html/expected.html +0 -1
  463. package/test/autotest/scriptlet-line-no-middle-html/input.htmljs +0 -3
  464. package/test/autotest/scriptlet-line-regex-open-bracket/input.htmljs +0 -1
  465. package/test/autotest/scriptlet-line-regex-open-bracket/test.js +0 -1
  466. package/test/autotest/scriptlet-line-regex-open-curly/input.htmljs +0 -1
  467. package/test/autotest/scriptlet-line-regex-open-curly/test.js +0 -1
  468. package/test/autotest/scriptlet-line-template-literal/expected.html +0 -1
  469. package/test/autotest/scriptlet-line-template-literal/input.htmljs +0 -4
  470. package/test/autotest/scriptlet-line-trailing-line-comment/expected.html +0 -5
  471. package/test/autotest/scriptlet-line-trailing-line-comment/input.htmljs +0 -5
  472. package/test/autotest/scriptlet-tag/expected.html +0 -11
  473. package/test/autotest/scriptlet-tag/input.htmljs +0 -6
  474. package/test/autotest/scriptlet-tag-html/expected.html +0 -7
  475. package/test/autotest/scriptlet-tag-html/input.htmljs +0 -8
  476. package/test/autotest/self-closed-tag/expected.html +0 -2
  477. package/test/autotest/self-closed-tag/input.htmljs +0 -1
  478. package/test/autotest/self-closed-tag-attrs/expected.html +0 -2
  479. package/test/autotest/self-closed-tag-attrs/input.htmljs +0 -1
  480. package/test/autotest/self-closing-open-tag-only/expected.html +0 -3
  481. package/test/autotest/self-closing-open-tag-only/input.htmljs +0 -1
  482. package/test/autotest/semicolon-concise/expected.html +0 -4
  483. package/test/autotest/semicolon-concise/input.htmljs +0 -2
  484. package/test/autotest/shorthand-class-dynamic/expected.html +0 -2
  485. package/test/autotest/shorthand-class-dynamic/input.htmljs +0 -1
  486. package/test/autotest/shorthand-class-dynamic-literal-prefix/expected.html +0 -2
  487. package/test/autotest/shorthand-class-dynamic-literal-prefix/input.htmljs +0 -1
  488. package/test/autotest/shorthand-class-dynamic-literal-suffix/expected.html +0 -2
  489. package/test/autotest/shorthand-class-dynamic-literal-suffix/input.htmljs +0 -1
  490. package/test/autotest/shorthand-class-self-closed/expected.html +0 -6
  491. package/test/autotest/shorthand-class-self-closed/input.htmljs +0 -3
  492. package/test/autotest/shorthand-closing-html/expected.html +0 -9
  493. package/test/autotest/shorthand-closing-html/input.htmljs +0 -5
  494. package/test/autotest/shorthand-closing-html2/expected.html +0 -3
  495. package/test/autotest/shorthand-closing-html2/input.htmljs +0 -2
  496. package/test/autotest/shorthand-closing-html3/expected.html +0 -3
  497. package/test/autotest/shorthand-closing-html3/input.htmljs +0 -2
  498. package/test/autotest/shorthand-div-id/expected.html +0 -2
  499. package/test/autotest/shorthand-div-id/input.htmljs +0 -1
  500. package/test/autotest/shorthand-div-id-class/expected.html +0 -2
  501. package/test/autotest/shorthand-div-id-class/input.htmljs +0 -1
  502. package/test/autotest/shorthand-div-id-class-multiple/expected.html +0 -2
  503. package/test/autotest/shorthand-div-id-class-multiple/input.htmljs +0 -1
  504. package/test/autotest/shorthand-id/expected.html +0 -2
  505. package/test/autotest/shorthand-id/input.htmljs +0 -1
  506. package/test/autotest/shorthand-id-class/expected.html +0 -2
  507. package/test/autotest/shorthand-id-class/input.htmljs +0 -1
  508. package/test/autotest/shorthand-id-class-html/expected.html +0 -3
  509. package/test/autotest/shorthand-id-class-html/input.htmljs +0 -2
  510. package/test/autotest/shorthand-id-dup/expected.html +0 -1
  511. package/test/autotest/shorthand-id-dup/input.htmljs +0 -1
  512. package/test/autotest/shorthand-id-dynamic/expected.html +0 -2
  513. package/test/autotest/shorthand-id-dynamic/input.htmljs +0 -1
  514. package/test/autotest/shorthand-id-dynamic-literal-prefix/expected.html +0 -2
  515. package/test/autotest/shorthand-id-dynamic-literal-prefix/input.htmljs +0 -1
  516. package/test/autotest/shorthand-id-dynamic-literal-suffix/expected.html +0 -2
  517. package/test/autotest/shorthand-id-dynamic-literal-suffix/input.htmljs +0 -1
  518. package/test/autotest/shorthand-id-self-closed/expected.html +0 -6
  519. package/test/autotest/shorthand-id-self-closed/input.htmljs +0 -3
  520. package/test/autotest/shorthand-mixed/expected.html +0 -15
  521. package/test/autotest/shorthand-mixed/input.htmljs +0 -5
  522. package/test/autotest/shorthand-mixed-concise/expected.html +0 -11
  523. package/test/autotest/shorthand-mixed-concise/input.htmljs +0 -5
  524. package/test/autotest/simple-text-delimited/expected.html +0 -1
  525. package/test/autotest/simple-text-delimited/input.htmljs +0 -3
  526. package/test/autotest/single-line-text-block/expected.html +0 -2
  527. package/test/autotest/single-line-text-block/input.htmljs +0 -2
  528. package/test/autotest/single-line-text-block-nested/expected.html +0 -4
  529. package/test/autotest/single-line-text-block-nested/input.htmljs +0 -3
  530. package/test/autotest/single-line-text-block-sibling/expected.html +0 -6
  531. package/test/autotest/single-line-text-block-sibling/input.htmljs +0 -5
  532. package/test/autotest/stray-forward-slash-within-open-tag/expected.html +0 -3
  533. package/test/autotest/stray-forward-slash-within-open-tag/input.htmljs +0 -1
  534. package/test/autotest/stray-special-chars/expected.html +0 -3
  535. package/test/autotest/stray-special-chars/input.htmljs +0 -1
  536. package/test/autotest/strip-bom/expected.html +0 -3
  537. package/test/autotest/strip-bom/input-good.htmljs +0 -1
  538. package/test/autotest/strip-bom/input.htmljs +0 -1
  539. package/test/autotest/strip-bom/input.htmljs.txt +0 -60
  540. package/test/autotest/tag-name-expression-literal-prefix/expected.html +0 -3
  541. package/test/autotest/tag-name-expression-literal-prefix/input.htmljs +0 -2
  542. package/test/autotest/tag-name-expression-literal-prefix-attrs/expected.html +0 -3
  543. package/test/autotest/tag-name-expression-literal-prefix-attrs/input.htmljs +0 -2
  544. package/test/autotest/tag-name-expression-literal-prefix-suffix/expected.html +0 -3
  545. package/test/autotest/tag-name-expression-literal-prefix-suffix/input.htmljs +0 -2
  546. package/test/autotest/tag-name-expression-literal-suffix/expected.html +0 -3
  547. package/test/autotest/tag-name-expression-literal-suffix/input.htmljs +0 -2
  548. package/test/autotest/tag-name-expression-shorthand-id/expected.html +0 -2
  549. package/test/autotest/tag-name-expression-shorthand-id/input.htmljs +0 -1
  550. package/test/autotest/tag-name-expression-simple/expected.html +0 -3
  551. package/test/autotest/tag-name-expression-simple/input.htmljs +0 -2
  552. package/test/autotest/tag-name-expression-simple-empty-close/expected.html +0 -3
  553. package/test/autotest/tag-name-expression-simple-empty-close/input.htmljs +0 -2
  554. package/test/autotest/tag-var-declaration/expected.html +0 -43
  555. package/test/autotest/tag-var-declaration/input.htmljs +0 -21
  556. package/test/autotest/tag-var-with-params/expected.html +0 -5
  557. package/test/autotest/tag-var-with-params/input.htmljs +0 -3
  558. package/test/autotest/text-after-semicolon/expected.html +0 -15
  559. package/test/autotest/text-after-semicolon/input.htmljs +0 -8
  560. package/test/autotest/text-after-tag/expected.html +0 -3
  561. package/test/autotest/text-after-tag/input.htmljs +0 -1
  562. package/test/autotest/text-parse-mode-concise/expected.html +0 -5
  563. package/test/autotest/text-parse-mode-concise/input.htmljs +0 -3
  564. package/test/autotest/text-parse-mode-concise/test.js +0 -1
  565. package/test/autotest/text-parse-mode-delimited-block/expected.html +0 -8
  566. package/test/autotest/text-parse-mode-delimited-block/input.htmljs +0 -6
  567. package/test/autotest/text-parse-mode-delimited-block/test.js +0 -1
  568. package/test/autotest/text-parse-mode-html/expected.html +0 -7
  569. package/test/autotest/text-parse-mode-html/input.htmljs +0 -3
  570. package/test/autotest/text-parse-mode-html/test.js +0 -1
  571. package/test/autotest/text-parse-mode-parsed-text/expected.html +0 -11
  572. package/test/autotest/text-parse-mode-parsed-text/input.htmljs +0 -7
  573. package/test/autotest/text-parse-mode-parsed-text/test.js +0 -7
  574. package/test/autotest/text-parse-mode-static-text/expected.html +0 -11
  575. package/test/autotest/text-parse-mode-static-text/input.htmljs +0 -7
  576. package/test/autotest/text-parse-mode-static-text/test.js +0 -7
  577. package/test/autotest/textarea/expected.html +0 -5
  578. package/test/autotest/textarea/input.htmljs +0 -2
  579. package/test/autotest/textarea/test.js +0 -0
  580. package/test/autotest/var/expected.html +0 -9
  581. package/test/autotest/var/input.htmljs +0 -5
  582. package/test/autotest/var-new-Date/expected.html +0 -2
  583. package/test/autotest/var-new-Date/input.htmljs +0 -1
  584. package/test/autotest/whitespace-around-equals/expected.html +0 -2
  585. package/test/autotest/whitespace-around-equals/input.htmljs +0 -1
  586. package/test/autotest/whitespace-empty-lines/expected.html +0 -7
  587. package/test/autotest/whitespace-empty-lines/input.htmljs +0 -4
  588. package/test/autotest/whitespace-empty-lines-indent/expected.html +0 -8
  589. package/test/autotest/whitespace-empty-lines-indent/input.htmljs +0 -4
  590. package/test/autotest/whitespace-newline/expected.html +0 -7
  591. package/test/autotest/whitespace-newline/input.htmljs +0 -6
  592. package/test/autotest/whitespace-newline-indent/expected.html +0 -7
  593. package/test/autotest/whitespace-newline-indent/input.htmljs +0 -6
  594. package/test/autotest/whitespace-only-reset-indent/expected.html +0 -6
  595. package/test/autotest/whitespace-only-reset-indent/input.htmljs +0 -3
  596. package/test/autotest/windows-line-ending/expected.html +0 -10
  597. package/test/autotest/windows-line-ending/test.js +0 -11
  598. package/test/autotest/xml-declaration/expected.html +0 -5
  599. package/test/autotest/xml-declaration/input.htmljs +0 -2
  600. package/test/autotest/xml-declaration-ill-formed/expected.html +0 -5
  601. package/test/autotest/xml-declaration-ill-formed/input.htmljs +0 -2
  602. package/test/autotest-1.x/argument-attr/expected.html +0 -2
  603. package/test/autotest-1.x/argument-attr/input.htmljs +0 -1
  604. package/test/autotest-1.x/argument-attr-extra-whitespace/expected.html +0 -4
  605. package/test/autotest-1.x/argument-attr-extra-whitespace/input.htmljs +0 -2
  606. package/test/autotest-1.x/argument-attr-multiple/expected.html +0 -1
  607. package/test/autotest-1.x/argument-attr-multiple/input.htmljs +0 -1
  608. package/test/autotest-1.x/argument-tag/expected.html +0 -2
  609. package/test/autotest-1.x/argument-tag/input.htmljs +0 -1
  610. package/test/autotest-1.x/argument-tag-attr/expected.html +0 -2
  611. package/test/autotest-1.x/argument-tag-attr/input.htmljs +0 -1
  612. package/test/autotest-1.x/argument-tag-complex/expected.html +0 -2
  613. package/test/autotest-1.x/argument-tag-complex/input.htmljs +0 -1
  614. package/test/autotest-1.x/argument-tag-extra-whitespace/expected.html +0 -2
  615. package/test/autotest-1.x/argument-tag-extra-whitespace/input.htmljs +0 -1
  616. package/test/autotest-1.x/argument-tag-multiple/expected.html +0 -1
  617. package/test/autotest-1.x/argument-tag-multiple/input.htmljs +0 -1
  618. package/test/autotest-1.x/argument-tag-nested-parens/expected.html +0 -3
  619. package/test/autotest-1.x/argument-tag-nested-parens/input.htmljs +0 -4
  620. package/test/autotest-1.x/attr-complex/expected.html +0 -1
  621. package/test/autotest-1.x/attr-complex/input.htmljs +0 -1
  622. package/test/autotest-1.x/attr-escape-characters/expected.html +0 -3
  623. package/test/autotest-1.x/attr-escape-characters/input.htmljs +0 -3
  624. package/test/autotest-1.x/attr-escaped-dollar/expected.html +0 -1
  625. package/test/autotest-1.x/attr-escaped-dollar/input.htmljs +0 -1
  626. package/test/autotest-1.x/attr-escaped-dollar/test.js +0 -5
  627. package/test/autotest-1.x/attr-grouped/expected.html +0 -3
  628. package/test/autotest-1.x/attr-grouped/input.htmljs +0 -5
  629. package/test/autotest-1.x/attr-grouped-2/expected.html +0 -3
  630. package/test/autotest-1.x/attr-grouped-2/input.htmljs +0 -5
  631. package/test/autotest-1.x/attr-grouped-3/expected.html +0 -3
  632. package/test/autotest-1.x/attr-grouped-3/input.htmljs +0 -5
  633. package/test/autotest-1.x/attr-grouped-4/expected.html +0 -3
  634. package/test/autotest-1.x/attr-grouped-4/input.htmljs +0 -5
  635. package/test/autotest-1.x/attr-grouped-invalid/expected.html +0 -1
  636. package/test/autotest-1.x/attr-grouped-invalid/input.htmljs +0 -5
  637. package/test/autotest-1.x/attr-grouped-invalid-eof/expected.html +0 -1
  638. package/test/autotest-1.x/attr-grouped-invalid-eof/input.htmljs +0 -4
  639. package/test/autotest-1.x/attr-grouped-multiple/expected.html +0 -3
  640. package/test/autotest-1.x/attr-grouped-multiple/input.htmljs +0 -4
  641. package/test/autotest-1.x/attr-int-and-id/expected.html +0 -2
  642. package/test/autotest-1.x/attr-int-and-id/input.htmljs +0 -1
  643. package/test/autotest-1.x/attr-literal-false/expected.html +0 -2
  644. package/test/autotest-1.x/attr-literal-false/input.htmljs +0 -1
  645. package/test/autotest-1.x/attr-literal-false/test.js +0 -1
  646. package/test/autotest-1.x/attr-literal-null/expected.html +0 -2
  647. package/test/autotest-1.x/attr-literal-null/input.htmljs +0 -1
  648. package/test/autotest-1.x/attr-literal-null/test.js +0 -1
  649. package/test/autotest-1.x/attr-literal-numbers/expected.html +0 -2
  650. package/test/autotest-1.x/attr-literal-numbers/input.htmljs +0 -1
  651. package/test/autotest-1.x/attr-literal-numbers/test.js +0 -1
  652. package/test/autotest-1.x/attr-literal-string-double-quotes/expected.html +0 -2
  653. package/test/autotest-1.x/attr-literal-string-double-quotes/input.htmljs +0 -1
  654. package/test/autotest-1.x/attr-literal-string-double-quotes/test.js +0 -1
  655. package/test/autotest-1.x/attr-literal-string-single-quotes/expected.html +0 -2
  656. package/test/autotest-1.x/attr-literal-string-single-quotes/input.htmljs +0 -1
  657. package/test/autotest-1.x/attr-literal-string-single-quotes/test.js +0 -1
  658. package/test/autotest-1.x/attr-literal-true/expected.html +0 -2
  659. package/test/autotest-1.x/attr-literal-true/input.htmljs +0 -1
  660. package/test/autotest-1.x/attr-literal-true/test.js +0 -1
  661. package/test/autotest-1.x/attr-literal-undefined/expected.html +0 -2
  662. package/test/autotest-1.x/attr-literal-undefined/input.htmljs +0 -1
  663. package/test/autotest-1.x/attr-literal-undefined/test.js +0 -1
  664. package/test/autotest-1.x/attr-multi-line-comment/expected.html +0 -3
  665. package/test/autotest-1.x/attr-multi-line-comment/input.htmljs +0 -1
  666. package/test/autotest-1.x/attr-multi-line-string/expected.html +0 -2
  667. package/test/autotest-1.x/attr-multi-line-string/input.htmljs +0 -3
  668. package/test/autotest-1.x/attr-name-with-html-chars/expected.html +0 -1
  669. package/test/autotest-1.x/attr-name-with-html-chars/input.htmljs +0 -1
  670. package/test/autotest-1.x/attr-no-value/expected.html +0 -3
  671. package/test/autotest-1.x/attr-no-value/input.htmljs +0 -1
  672. package/test/autotest-1.x/attr-no-value-self-closed/expected.html +0 -2
  673. package/test/autotest-1.x/attr-no-value-self-closed/input.htmljs +0 -1
  674. package/test/autotest-1.x/attr-non-literal/expected.html +0 -5
  675. package/test/autotest-1.x/attr-non-literal/input.htmljs +0 -2
  676. package/test/autotest-1.x/attr-non-literal/test.js +0 -1
  677. package/test/autotest-1.x/attr-object-expressions/expected.html +0 -4
  678. package/test/autotest-1.x/attr-object-expressions/input.htmljs +0 -3
  679. package/test/autotest-1.x/attr-simple-expression/expected.html +0 -3
  680. package/test/autotest-1.x/attr-simple-expression/input.htmljs +0 -1
  681. package/test/autotest-1.x/attr-value-self-closed/expected.html +0 -2
  682. package/test/autotest-1.x/attr-value-self-closed/input.htmljs +0 -1
  683. package/test/autotest-1.x/attr-with-parens-and-double-quoted-strings/expected.html +0 -2
  684. package/test/autotest-1.x/attr-with-parens-and-double-quoted-strings/input.htmljs +0 -1
  685. package/test/autotest-1.x/attr-with-parens-and-single-quoted-strings/expected.html +0 -2
  686. package/test/autotest-1.x/attr-with-parens-and-single-quoted-strings/input.htmljs +0 -1
  687. package/test/autotest-1.x/attr-with-right-angle-bracket/expected.html +0 -3
  688. package/test/autotest-1.x/attr-with-right-angle-bracket/input.htmljs +0 -1
  689. package/test/autotest-1.x/attr-with-right-angle-bracket-parens/expected.html +0 -3
  690. package/test/autotest-1.x/attr-with-right-angle-bracket-parens/input.htmljs +0 -1
  691. package/test/autotest-1.x/attr-without-delimiters/expected.html +0 -2
  692. package/test/autotest-1.x/attr-without-delimiters/input.htmljs +0 -1
  693. package/test/autotest-1.x/backtick-string/expected.html +0 -3
  694. package/test/autotest-1.x/backtick-string/input.htmljs +0 -2
  695. package/test/autotest-1.x/backtick-string-eof/expected.html +0 -1
  696. package/test/autotest-1.x/backtick-string-eof/input.htmljs +0 -2
  697. package/test/autotest-1.x/bad-tag-indent/expected.html +0 -1
  698. package/test/autotest-1.x/bad-tag-indent/input.htmljs +0 -1
  699. package/test/autotest-1.x/cdata/expected.html +0 -3
  700. package/test/autotest-1.x/cdata/input.htmljs +0 -1
  701. package/test/autotest-1.x/cdata-2/expected.html +0 -5
  702. package/test/autotest-1.x/cdata-2/input.htmljs +0 -3
  703. package/test/autotest-1.x/cdata-pos/expected.html +0 -7
  704. package/test/autotest-1.x/cdata-pos/input.htmljs +0 -4
  705. package/test/autotest-1.x/cdata-pos/test.js +0 -1
  706. package/test/autotest-1.x/comment-concise-js-block/expected.html +0 -4
  707. package/test/autotest-1.x/comment-concise-js-block/input.htmljs +0 -6
  708. package/test/autotest-1.x/comment-concise-js-block-trailing/expected.html +0 -4
  709. package/test/autotest-1.x/comment-concise-js-block-trailing/input.htmljs +0 -6
  710. package/test/autotest-1.x/comment-concise-js-line/expected.html +0 -4
  711. package/test/autotest-1.x/comment-concise-js-line/input.htmljs +0 -3
  712. package/test/autotest-1.x/comments-within-open-tag/expected.html +0 -2
  713. package/test/autotest-1.x/comments-within-open-tag/input.htmljs +0 -1
  714. package/test/autotest-1.x/complex/expected.html +0 -24
  715. package/test/autotest-1.x/complex/input.htmljs +0 -22
  716. package/test/autotest-1.x/complex-attr-name/expected.html +0 -2
  717. package/test/autotest-1.x/complex-attr-name/input.htmljs +0 -1
  718. package/test/autotest-1.x/concise-complex-tag-name/expected.html +0 -2
  719. package/test/autotest-1.x/concise-complex-tag-name/input.htmljs +0 -1
  720. package/test/autotest-1.x/concise-contentplaceholder-html-start/expected.html +0 -5
  721. package/test/autotest-1.x/concise-contentplaceholder-html-start/input.htmljs +0 -1
  722. package/test/autotest-1.x/concise-contentplaceholder-start/expected.html +0 -1
  723. package/test/autotest-1.x/concise-contentplaceholder-start/input.htmljs +0 -1
  724. package/test/autotest-1.x/declaration/expected.html +0 -1
  725. package/test/autotest-1.x/declaration/input.htmljs +0 -1
  726. package/test/autotest-1.x/double-hyphen-block/expected.html +0 -12
  727. package/test/autotest-1.x/double-hyphen-block/input.htmljs +0 -8
  728. package/test/autotest-1.x/double-hyphen-line/expected.html +0 -12
  729. package/test/autotest-1.x/double-hyphen-line/input.htmljs +0 -5
  730. package/test/autotest-1.x/double-hyphen-line-start/expected.html +0 -12
  731. package/test/autotest-1.x/double-hyphen-line-start/input.htmljs +0 -6
  732. package/test/autotest-1.x/dtd/expected.html +0 -1
  733. package/test/autotest-1.x/dtd/input.htmljs +0 -1
  734. package/test/autotest-1.x/empty-closing-tag/expected.html +0 -8
  735. package/test/autotest-1.x/empty-closing-tag/input.htmljs +0 -6
  736. package/test/autotest-1.x/empty-closing-tag2/expected.html +0 -9
  737. package/test/autotest-1.x/empty-closing-tag2/input.htmljs +0 -5
  738. package/test/autotest-1.x/eof-attr-argument/expected.html +0 -1
  739. package/test/autotest-1.x/eof-attr-argument/input.htmljs +0 -1
  740. package/test/autotest-1.x/eof-attr-name/expected.html +0 -3
  741. package/test/autotest-1.x/eof-attr-name/input.htmljs +0 -1
  742. package/test/autotest-1.x/eof-attr-value/expected.html +0 -3
  743. package/test/autotest-1.x/eof-attr-value/input.htmljs +0 -1
  744. package/test/autotest-1.x/eof-attr-value-js-comment-comment/expected.html +0 -3
  745. package/test/autotest-1.x/eof-attr-value-js-comment-comment/input.htmljs +0 -1
  746. package/test/autotest-1.x/eof-attr-value-js-comment-comment-concise/expected.html +0 -1
  747. package/test/autotest-1.x/eof-attr-value-js-comment-comment-concise/input.htmljs +0 -1
  748. package/test/autotest-1.x/eof-attr-value-string/expected.html +0 -1
  749. package/test/autotest-1.x/eof-attr-value-string/input.htmljs +0 -1
  750. package/test/autotest-1.x/eof-doctype/expected.html +0 -1
  751. package/test/autotest-1.x/eof-doctype/input.htmljs +0 -1
  752. package/test/autotest-1.x/eof-placeholder-body-escaped/expected.html +0 -4
  753. package/test/autotest-1.x/eof-placeholder-body-escaped/input.htmljs +0 -1
  754. package/test/autotest-1.x/eof-placeholder-body-non-escaped/expected.html +0 -4
  755. package/test/autotest-1.x/eof-placeholder-body-non-escaped/input.htmljs +0 -4
  756. package/test/autotest-1.x/eof-placeholder-concise/expected.html +0 -3
  757. package/test/autotest-1.x/eof-placeholder-concise/input.htmljs +0 -2
  758. package/test/autotest-1.x/eof-placeholder-script-body-escaped/expected.html +0 -4
  759. package/test/autotest-1.x/eof-placeholder-script-body-escaped/input.htmljs +0 -1
  760. package/test/autotest-1.x/eof-placeholder-script-body-non-escaped/expected.html +0 -4
  761. package/test/autotest-1.x/eof-placeholder-script-body-non-escaped/input.htmljs +0 -1
  762. package/test/autotest-1.x/eof-placeholder-string/expected.html +0 -4
  763. package/test/autotest-1.x/eof-placeholder-string/input.htmljs +0 -1
  764. package/test/autotest-1.x/eof-script-body/expected.html +0 -4
  765. package/test/autotest-1.x/eof-script-body/input.htmljs +0 -2
  766. package/test/autotest-1.x/eof-style/expected.html +0 -4
  767. package/test/autotest-1.x/eof-style/input.htmljs +0 -1
  768. package/test/autotest-1.x/eof-tag-start/expected.html +0 -3
  769. package/test/autotest-1.x/eof-tag-start/input.htmljs +0 -1
  770. package/test/autotest-1.x/eof-xml-declaration/expected.html +0 -1
  771. package/test/autotest-1.x/eof-xml-declaration/input.htmljs +0 -1
  772. package/test/autotest-1.x/html-block-after-tag/expected.html +0 -6
  773. package/test/autotest-1.x/html-block-after-tag/input.htmljs +0 -1
  774. package/test/autotest-1.x/html-comments/expected.html +0 -3
  775. package/test/autotest-1.x/html-comments/input.htmljs +0 -1
  776. package/test/autotest-1.x/html-comments-ignore-placeholders/expected.html +0 -1
  777. package/test/autotest-1.x/html-comments-ignore-placeholders/input.htmljs +0 -1
  778. package/test/autotest-1.x/ignorePlaceholders-attr-double-escaped-dollar-placeholder/expected.html +0 -2
  779. package/test/autotest-1.x/ignorePlaceholders-attr-double-escaped-dollar-placeholder/input.htmljs +0 -1
  780. package/test/autotest-1.x/ignorePlaceholders-attr-double-escaped-dollar-placeholder/test.js +0 -1
  781. package/test/autotest-1.x/ignorePlaceholders-attr-escaped-dollar-placeholder/expected.html +0 -2
  782. package/test/autotest-1.x/ignorePlaceholders-attr-escaped-dollar-placeholder/input.htmljs +0 -1
  783. package/test/autotest-1.x/ignorePlaceholders-attr-escaped-dollar-placeholder/test.js +0 -1
  784. package/test/autotest-1.x/ignorePlaceholders-attr-placeholder/expected.html +0 -2
  785. package/test/autotest-1.x/ignorePlaceholders-attr-placeholder/input.htmljs +0 -1
  786. package/test/autotest-1.x/ignorePlaceholders-attr-placeholder/test.js +0 -1
  787. package/test/autotest-1.x/invalid-closing-tag/expected.html +0 -4
  788. package/test/autotest-1.x/invalid-closing-tag/input.htmljs +0 -1
  789. package/test/autotest-1.x/mixed/expected.html +0 -21
  790. package/test/autotest-1.x/mixed/input.htmljs +0 -8
  791. package/test/autotest-1.x/mixed-bad-indentation/expected.html +0 -7
  792. package/test/autotest-1.x/mixed-bad-indentation/input.htmljs +0 -3
  793. package/test/autotest-1.x/mixed-cdata/expected.html +0 -7
  794. package/test/autotest-1.x/mixed-cdata/input.htmljs +0 -3
  795. package/test/autotest-1.x/mixed-comment/expected.html +0 -7
  796. package/test/autotest-1.x/mixed-comment/input.htmljs +0 -6
  797. package/test/autotest-1.x/mixed-invalid/expected.html +0 -16
  798. package/test/autotest-1.x/mixed-invalid/input.htmljs +0 -9
  799. package/test/autotest-1.x/mixed-open-tag-only/expected.html +0 -14
  800. package/test/autotest-1.x/mixed-open-tag-only/input.htmljs +0 -6
  801. package/test/autotest-1.x/multiline-html-block/expected.html +0 -5
  802. package/test/autotest-1.x/multiline-html-block/input.htmljs +0 -4
  803. package/test/autotest-1.x/multiline-html-block-empty/expected.html +0 -0
  804. package/test/autotest-1.x/multiline-html-block-empty/input.htmljs +0 -2
  805. package/test/autotest-1.x/multiline-html-block-missing-end/expected.html +0 -1
  806. package/test/autotest-1.x/multiline-html-block-missing-end/input.htmljs +0 -3
  807. package/test/autotest-1.x/multiline-html-block-nested/expected.html +0 -7
  808. package/test/autotest-1.x/multiline-html-block-nested/input.htmljs +0 -5
  809. package/test/autotest-1.x/multiline-html-block-nested-empty/expected.html +0 -2
  810. package/test/autotest-1.x/multiline-html-block-nested-empty/input.htmljs +0 -3
  811. package/test/autotest-1.x/multiline-text-block/expected.html +0 -1
  812. package/test/autotest-1.x/multiline-text-block/input.htmljs +0 -4
  813. package/test/autotest-1.x/multiline-text-block-bad/expected.html +0 -1
  814. package/test/autotest-1.x/multiline-text-block-bad/input.htmljs +0 -5
  815. package/test/autotest-1.x/multiline-text-block-with-hyphens/expected.html +0 -1
  816. package/test/autotest-1.x/multiline-text-block-with-hyphens/input.htmljs +0 -4
  817. package/test/autotest-1.x/nested-pyramid/expected.html +0 -12
  818. package/test/autotest-1.x/nested-pyramid/input.htmljs +0 -6
  819. package/test/autotest-1.x/nested-siblings/expected.html +0 -6
  820. package/test/autotest-1.x/nested-siblings/input.htmljs +0 -3
  821. package/test/autotest-1.x/nested-tags/expected.html +0 -4
  822. package/test/autotest-1.x/nested-tags/input.htmljs +0 -2
  823. package/test/autotest-1.x/nested-text/expected.html +0 -8
  824. package/test/autotest-1.x/nested-text/input.htmljs +0 -8
  825. package/test/autotest-1.x/new-attr-prefix/expected.html +0 -3
  826. package/test/autotest-1.x/new-attr-prefix/input.htmljs +0 -1
  827. package/test/autotest-1.x/open-tag-only/expected.html +0 -12
  828. package/test/autotest-1.x/open-tag-only/input.htmljs +0 -1
  829. package/test/autotest-1.x/open-tag-only-custom/expected.html +0 -10
  830. package/test/autotest-1.x/open-tag-only-custom/input.htmljs +0 -4
  831. package/test/autotest-1.x/open-tag-only-custom/test.js +0 -9
  832. package/test/autotest-1.x/open-tag-only-with-body/expected.html +0 -4
  833. package/test/autotest-1.x/open-tag-only-with-body/input.htmljs +0 -5
  834. package/test/autotest-1.x/open-tag-only-with-body-concise/expected.html +0 -3
  835. package/test/autotest-1.x/open-tag-only-with-body-concise/input.htmljs +0 -2
  836. package/test/autotest-1.x/open-tag-parser-state/expected.html +0 -21
  837. package/test/autotest-1.x/open-tag-parser-state/input.htmljs +0 -11
  838. package/test/autotest-1.x/open-tag-parser-state/test.js +0 -21
  839. package/test/autotest-1.x/open-tag-parser-state-concise/expected.html +0 -19
  840. package/test/autotest-1.x/open-tag-parser-state-concise/input.htmljs +0 -17
  841. package/test/autotest-1.x/open-tag-parser-state-concise/test.js +0 -17
  842. package/test/autotest-1.x/parsed-text-style-tag/expected.html +0 -3
  843. package/test/autotest-1.x/parsed-text-style-tag/input.htmljs +0 -1
  844. package/test/autotest-1.x/parsed-text-style-tag-class/expected.html +0 -12
  845. package/test/autotest-1.x/parsed-text-style-tag-class/input.htmljs +0 -3
  846. package/test/autotest-1.x/placeholder-attr-invalid/expected.html +0 -1
  847. package/test/autotest-1.x/placeholder-attr-invalid/input.htmljs +0 -1
  848. package/test/autotest-1.x/placeholder-attr-string-value/expected.html +0 -3
  849. package/test/autotest-1.x/placeholder-attr-string-value/input.htmljs +0 -1
  850. package/test/autotest-1.x/placeholder-attr-string-value-mixed-quotes/expected.html +0 -3
  851. package/test/autotest-1.x/placeholder-attr-string-value-mixed-quotes/input.htmljs +0 -1
  852. package/test/autotest-1.x/placeholder-attr-string-value-parens/expected.html +0 -3
  853. package/test/autotest-1.x/placeholder-attr-string-value-parens/input.htmljs +0 -1
  854. package/test/autotest-1.x/placeholder-attr-within-placeholder/expected.html +0 -2
  855. package/test/autotest-1.x/placeholder-attr-within-placeholder/input.htmljs +0 -1
  856. package/test/autotest-1.x/placeholder-attr-within-string-complex/expected.html +0 -2
  857. package/test/autotest-1.x/placeholder-attr-within-string-complex/input.htmljs +0 -1
  858. package/test/autotest-1.x/placeholder-attr-within-string-simple/expected.html +0 -2
  859. package/test/autotest-1.x/placeholder-attr-within-string-simple/input.htmljs +0 -1
  860. package/test/autotest-1.x/placeholder-attr-wrapped/expected.html +0 -2
  861. package/test/autotest-1.x/placeholder-attr-wrapped/input.htmljs +0 -1
  862. package/test/autotest-1.x/placeholder-backslash/expected.html +0 -23
  863. package/test/autotest-1.x/placeholder-backslash/input.htmljs +0 -15
  864. package/test/autotest-1.x/placeholder-body-multi-line-js-comment/expected.html +0 -3
  865. package/test/autotest-1.x/placeholder-body-multi-line-js-comment/input.htmljs +0 -1
  866. package/test/autotest-1.x/placeholder-body-single-line-js-comment/expected.html +0 -3
  867. package/test/autotest-1.x/placeholder-body-single-line-js-comment/input.htmljs +0 -2
  868. package/test/autotest-1.x/placeholder-body-text/expected.html +0 -5
  869. package/test/autotest-1.x/placeholder-body-text/input.htmljs +0 -1
  870. package/test/autotest-1.x/placeholder-escape/expected.html +0 -5
  871. package/test/autotest-1.x/placeholder-escape/input.htmljs +0 -3
  872. package/test/autotest-1.x/placeholder-no-escape/expected.html +0 -5
  873. package/test/autotest-1.x/placeholder-no-escape/input.htmljs +0 -3
  874. package/test/autotest-1.x/placeholder-unnamed-attr/expected.html +0 -2
  875. package/test/autotest-1.x/placeholder-unnamed-attr/input.htmljs +0 -1
  876. package/test/autotest-1.x/placeholder-unnamed-attr-escaped/expected.html +0 -2
  877. package/test/autotest-1.x/placeholder-unnamed-attr-escaped/input.htmljs +0 -1
  878. package/test/autotest-1.x/placeholder-unnamed-attr-escaped-escaped/expected.html +0 -2
  879. package/test/autotest-1.x/placeholder-unnamed-attr-escaped-escaped/input.htmljs +0 -1
  880. package/test/autotest-1.x/placeholder-unnamed-attr-last/expected.html +0 -2
  881. package/test/autotest-1.x/placeholder-unnamed-attr-last/input.htmljs +0 -1
  882. package/test/autotest-1.x/placeholder-unnamed-attr-last-concise/expected.html +0 -4
  883. package/test/autotest-1.x/placeholder-unnamed-attr-last-concise/input.htmljs +0 -2
  884. package/test/autotest-1.x/placeholder-unnamed-attr-last-self-closed/expected.html +0 -2
  885. package/test/autotest-1.x/placeholder-unnamed-attr-last-self-closed/input.htmljs +0 -1
  886. package/test/autotest-1.x/placeholder-unnamed-attr-trailing-text/expected.html +0 -1
  887. package/test/autotest-1.x/placeholder-unnamed-attr-trailing-text/input.htmljs +0 -1
  888. package/test/autotest-1.x/placeholder-within-placeholder/expected.html +0 -1
  889. package/test/autotest-1.x/placeholder-within-placeholder/input.htmljs +0 -1
  890. package/test/autotest-1.x/placeholder-within-placeholder-escaping/expected.html +0 -1
  891. package/test/autotest-1.x/placeholder-within-placeholder-escaping/input.htmljs +0 -1
  892. package/test/autotest-1.x/placeholder-within-script-tag/expected.html +0 -5
  893. package/test/autotest-1.x/placeholder-within-script-tag/input.htmljs +0 -1
  894. package/test/autotest-1.x/placeholder-within-script-within-string/expected.html +0 -5
  895. package/test/autotest-1.x/placeholder-within-script-within-string/input.htmljs +0 -1
  896. package/test/autotest-1.x/placeholder-within-string-newlines/expected.html +0 -4
  897. package/test/autotest-1.x/placeholder-within-string-newlines/input.htmljs +0 -3
  898. package/test/autotest-1.x/root-el/expected.html +0 -2
  899. package/test/autotest-1.x/root-el/input.htmljs +0 -1
  900. package/test/autotest-1.x/root-els/expected.html +0 -4
  901. package/test/autotest-1.x/root-els/input.htmljs +0 -2
  902. package/test/autotest-1.x/script/expected.html +0 -3
  903. package/test/autotest-1.x/script/input.htmljs +0 -2
  904. package/test/autotest-1.x/script-concise/expected.html +0 -6
  905. package/test/autotest-1.x/script-concise/input.htmljs +0 -7
  906. package/test/autotest-1.x/script-concise-invalid-nested-tag/expected.html +0 -3
  907. package/test/autotest-1.x/script-concise-invalid-nested-tag/input.htmljs +0 -3
  908. package/test/autotest-1.x/script-empty-concise/expected.html +0 -6
  909. package/test/autotest-1.x/script-empty-concise/input.htmljs +0 -3
  910. package/test/autotest-1.x/script-self-closed/expected.html +0 -9
  911. package/test/autotest-1.x/script-self-closed/input.htmljs +0 -4
  912. package/test/autotest-1.x/script-single-line-comment/expected.html +0 -3
  913. package/test/autotest-1.x/script-single-line-comment/input.htmljs +0 -1
  914. package/test/autotest-1.x/scriptlet/expected.html +0 -11
  915. package/test/autotest-1.x/scriptlet/input.htmljs +0 -6
  916. package/test/autotest-1.x/scriptlet-html-block/expected.html +0 -7
  917. package/test/autotest-1.x/scriptlet-html-block/input.htmljs +0 -8
  918. package/test/autotest-1.x/self-closed-tag/expected.html +0 -2
  919. package/test/autotest-1.x/self-closed-tag/input.htmljs +0 -1
  920. package/test/autotest-1.x/self-closed-tag-attrs/expected.html +0 -2
  921. package/test/autotest-1.x/self-closed-tag-attrs/input.htmljs +0 -1
  922. package/test/autotest-1.x/self-closing-open-tag-only/expected.html +0 -3
  923. package/test/autotest-1.x/self-closing-open-tag-only/input.htmljs +0 -1
  924. package/test/autotest-1.x/shorthand-class-dynamic/expected.html +0 -2
  925. package/test/autotest-1.x/shorthand-class-dynamic/input.htmljs +0 -1
  926. package/test/autotest-1.x/shorthand-class-dynamic-literal-prefix/expected.html +0 -2
  927. package/test/autotest-1.x/shorthand-class-dynamic-literal-prefix/input.htmljs +0 -1
  928. package/test/autotest-1.x/shorthand-class-dynamic-literal-suffix/expected.html +0 -2
  929. package/test/autotest-1.x/shorthand-class-dynamic-literal-suffix/input.htmljs +0 -1
  930. package/test/autotest-1.x/shorthand-class-self-closed/expected.html +0 -6
  931. package/test/autotest-1.x/shorthand-class-self-closed/input.htmljs +0 -3
  932. package/test/autotest-1.x/shorthand-closing-html/expected.html +0 -9
  933. package/test/autotest-1.x/shorthand-closing-html/input.htmljs +0 -5
  934. package/test/autotest-1.x/shorthand-closing-html2/expected.html +0 -3
  935. package/test/autotest-1.x/shorthand-closing-html2/input.htmljs +0 -2
  936. package/test/autotest-1.x/shorthand-closing-html3/expected.html +0 -3
  937. package/test/autotest-1.x/shorthand-closing-html3/input.htmljs +0 -2
  938. package/test/autotest-1.x/shorthand-div-id/expected.html +0 -2
  939. package/test/autotest-1.x/shorthand-div-id/input.htmljs +0 -1
  940. package/test/autotest-1.x/shorthand-div-id-class/expected.html +0 -2
  941. package/test/autotest-1.x/shorthand-div-id-class/input.htmljs +0 -1
  942. package/test/autotest-1.x/shorthand-div-id-class-multiple/expected.html +0 -2
  943. package/test/autotest-1.x/shorthand-div-id-class-multiple/input.htmljs +0 -1
  944. package/test/autotest-1.x/shorthand-id/expected.html +0 -2
  945. package/test/autotest-1.x/shorthand-id/input.htmljs +0 -1
  946. package/test/autotest-1.x/shorthand-id-class/expected.html +0 -2
  947. package/test/autotest-1.x/shorthand-id-class/input.htmljs +0 -1
  948. package/test/autotest-1.x/shorthand-id-class-html/expected.html +0 -3
  949. package/test/autotest-1.x/shorthand-id-class-html/input.htmljs +0 -2
  950. package/test/autotest-1.x/shorthand-id-dup/expected.html +0 -1
  951. package/test/autotest-1.x/shorthand-id-dup/input.htmljs +0 -1
  952. package/test/autotest-1.x/shorthand-id-dynamic/expected.html +0 -2
  953. package/test/autotest-1.x/shorthand-id-dynamic/input.htmljs +0 -1
  954. package/test/autotest-1.x/shorthand-id-dynamic-literal-prefix/expected.html +0 -2
  955. package/test/autotest-1.x/shorthand-id-dynamic-literal-prefix/input.htmljs +0 -1
  956. package/test/autotest-1.x/shorthand-id-dynamic-literal-suffix/expected.html +0 -2
  957. package/test/autotest-1.x/shorthand-id-dynamic-literal-suffix/input.htmljs +0 -1
  958. package/test/autotest-1.x/shorthand-id-self-closed/expected.html +0 -6
  959. package/test/autotest-1.x/shorthand-id-self-closed/input.htmljs +0 -3
  960. package/test/autotest-1.x/shorthand-mixed/expected.html +0 -15
  961. package/test/autotest-1.x/shorthand-mixed/input.htmljs +0 -5
  962. package/test/autotest-1.x/shorthand-mixed-concise/expected.html +0 -11
  963. package/test/autotest-1.x/shorthand-mixed-concise/input.htmljs +0 -5
  964. package/test/autotest-1.x/simple-text-delimited/expected.html +0 -1
  965. package/test/autotest-1.x/simple-text-delimited/input.htmljs +0 -3
  966. package/test/autotest-1.x/single-hyphen-after-attr/expected.html +0 -3
  967. package/test/autotest-1.x/single-hyphen-after-attr/input.htmljs +0 -1
  968. package/test/autotest-1.x/single-line-text-block/expected.html +0 -2
  969. package/test/autotest-1.x/single-line-text-block/input.htmljs +0 -2
  970. package/test/autotest-1.x/single-line-text-block-nested/expected.html +0 -4
  971. package/test/autotest-1.x/single-line-text-block-nested/input.htmljs +0 -3
  972. package/test/autotest-1.x/single-line-text-block-sibling/expected.html +0 -6
  973. package/test/autotest-1.x/single-line-text-block-sibling/input.htmljs +0 -5
  974. package/test/autotest-1.x/stray-forward-slash-within-open-tag/expected.html +0 -3
  975. package/test/autotest-1.x/stray-forward-slash-within-open-tag/input.htmljs +0 -1
  976. package/test/autotest-1.x/stray-special-chars/expected.html +0 -3
  977. package/test/autotest-1.x/stray-special-chars/input.htmljs +0 -1
  978. package/test/autotest-1.x/strip-bom/expected.html +0 -3
  979. package/test/autotest-1.x/strip-bom/input-good.htmljs +0 -1
  980. package/test/autotest-1.x/strip-bom/input.htmljs +0 -1
  981. package/test/autotest-1.x/strip-bom/input.htmljs.txt +0 -60
  982. package/test/autotest-1.x/tag-name-expression-literal-prefix/expected.html +0 -3
  983. package/test/autotest-1.x/tag-name-expression-literal-prefix/input.htmljs +0 -2
  984. package/test/autotest-1.x/tag-name-expression-literal-prefix-attrs/expected.html +0 -3
  985. package/test/autotest-1.x/tag-name-expression-literal-prefix-attrs/input.htmljs +0 -2
  986. package/test/autotest-1.x/tag-name-expression-literal-prefix-suffix/expected.html +0 -3
  987. package/test/autotest-1.x/tag-name-expression-literal-prefix-suffix/input.htmljs +0 -2
  988. package/test/autotest-1.x/tag-name-expression-literal-suffix/expected.html +0 -3
  989. package/test/autotest-1.x/tag-name-expression-literal-suffix/input.htmljs +0 -2
  990. package/test/autotest-1.x/tag-name-expression-shorthand-id/expected.html +0 -2
  991. package/test/autotest-1.x/tag-name-expression-shorthand-id/input.htmljs +0 -1
  992. package/test/autotest-1.x/tag-name-expression-simple/expected.html +0 -3
  993. package/test/autotest-1.x/tag-name-expression-simple/input.htmljs +0 -2
  994. package/test/autotest-1.x/tag-name-expression-simple-empty-close/expected.html +0 -3
  995. package/test/autotest-1.x/tag-name-expression-simple-empty-close/input.htmljs +0 -2
  996. package/test/autotest-1.x/text-after-tag/expected.html +0 -3
  997. package/test/autotest-1.x/text-after-tag/input.htmljs +0 -1
  998. package/test/autotest-1.x/text-parse-mode-concise/expected.html +0 -5
  999. package/test/autotest-1.x/text-parse-mode-concise/input.htmljs +0 -3
  1000. package/test/autotest-1.x/text-parse-mode-concise/test.js +0 -1
  1001. package/test/autotest-1.x/text-parse-mode-delimited-block/expected.html +0 -8
  1002. package/test/autotest-1.x/text-parse-mode-delimited-block/input.htmljs +0 -6
  1003. package/test/autotest-1.x/text-parse-mode-delimited-block/test.js +0 -1
  1004. package/test/autotest-1.x/text-parse-mode-html/expected.html +0 -7
  1005. package/test/autotest-1.x/text-parse-mode-html/input.htmljs +0 -3
  1006. package/test/autotest-1.x/text-parse-mode-html/test.js +0 -1
  1007. package/test/autotest-1.x/text-parse-mode-parsed-text/expected.html +0 -11
  1008. package/test/autotest-1.x/text-parse-mode-parsed-text/input.htmljs +0 -7
  1009. package/test/autotest-1.x/text-parse-mode-parsed-text/test.js +0 -7
  1010. package/test/autotest-1.x/text-parse-mode-static-text/expected.html +0 -11
  1011. package/test/autotest-1.x/text-parse-mode-static-text/input.htmljs +0 -7
  1012. package/test/autotest-1.x/text-parse-mode-static-text/test.js +0 -7
  1013. package/test/autotest-1.x/var/expected.html +0 -9
  1014. package/test/autotest-1.x/var/input.htmljs +0 -5
  1015. package/test/autotest-1.x/whitespace-empty-lines/expected.html +0 -7
  1016. package/test/autotest-1.x/whitespace-empty-lines/input.htmljs +0 -4
  1017. package/test/autotest-1.x/whitespace-empty-lines-indent/expected.html +0 -8
  1018. package/test/autotest-1.x/whitespace-empty-lines-indent/input.htmljs +0 -4
  1019. package/test/autotest-1.x/whitespace-newline/expected.html +0 -7
  1020. package/test/autotest-1.x/whitespace-newline/input.htmljs +0 -6
  1021. package/test/autotest-1.x/whitespace-newline-indent/expected.html +0 -7
  1022. package/test/autotest-1.x/whitespace-newline-indent/input.htmljs +0 -6
  1023. package/test/autotest-1.x/windows-line-ending/expected.html +0 -10
  1024. package/test/autotest-1.x/windows-line-ending/test.js +0 -11
  1025. package/test/autotest-1.x/xml-declaration/expected.html +0 -5
  1026. package/test/autotest-1.x/xml-declaration/input.htmljs +0 -2
  1027. package/test/autotest-1.x/xml-declaration-ill-formed/expected.html +0 -5
  1028. package/test/autotest-1.x/xml-declaration-ill-formed/input.htmljs +0 -2
  1029. package/test/test.js +0 -6
  1030. package/test/util/TreeBuilder.js +0 -417
  1031. package/test/util/runDirTest.js +0 -76
@@ -1 +0,0 @@
1
- span - Hello World
@@ -1,5 +0,0 @@
1
- <div>
2
- <span>
3
- text:"Hello World" [parseMode=html]
4
- </span>
5
- </div>
@@ -1,3 +0,0 @@
1
- div
2
- span
3
- - Hello World
@@ -1 +0,0 @@
1
- exports.includeTextParserState = true;
@@ -1,8 +0,0 @@
1
- <div>
2
- <span>
3
- text:"Test\n" [parseMode=html]
4
- <b>
5
- text:"Hello World" [parseMode=html]
6
- </b>
7
- </span>
8
- </div>
@@ -1,6 +0,0 @@
1
- div
2
- span
3
- ---
4
- Test
5
- <b>Hello World</b>
6
- ---
@@ -1 +0,0 @@
1
- exports.includeTextParserState = true;
@@ -1,7 +0,0 @@
1
- <div>
2
- text:"\n " [parseMode=html]
3
- <span>
4
- text:"Hello World" [parseMode=html]
5
- </span>
6
- text:"\n" [parseMode=html]
7
- </div>
@@ -1,3 +0,0 @@
1
- <div>
2
- <span>Hello World</span>
3
- </div>
@@ -1 +0,0 @@
1
- exports.includeTextParserState = true;
@@ -1,11 +0,0 @@
1
- <div>
2
- <parsed-text>
3
- text:"This is parsed text" [parseMode=parsed-text]
4
- </parsed-text>
5
- <span>
6
- text:"This is " [parseMode=html]
7
- <b>
8
- text:"parsed" [parseMode=html]
9
- </b>
10
- </span>
11
- </div>
@@ -1,7 +0,0 @@
1
- div
2
- parsed-text
3
- ---
4
- This is parsed text
5
- ---
6
- span
7
- - This is <b>parsed</b>
@@ -1,7 +0,0 @@
1
- exports.includeTextParserState = true;
2
-
3
- exports.openTagHandlers = {
4
- 'parsed-text': function(event) {
5
- this.enterParsedTextContentState();
6
- }
7
- };
@@ -1,11 +0,0 @@
1
- <div>
2
- <static-text>
3
- text:"This is static text" [parseMode=static-text]
4
- </static-text>
5
- <span>
6
- text:"This is " [parseMode=html]
7
- <b>
8
- text:"parsed" [parseMode=html]
9
- </b>
10
- </span>
11
- </div>
@@ -1,7 +0,0 @@
1
- div
2
- static-text
3
- ---
4
- This is static text
5
- ---
6
- span
7
- - This is <b>parsed</b>
@@ -1,7 +0,0 @@
1
- exports.includeTextParserState = true;
2
-
3
- exports.openTagHandlers = {
4
- 'static-text': function(event) {
5
- this.enterStaticTextContentState();
6
- }
7
- };
@@ -1,9 +0,0 @@
1
- <var pageTitle="Marko Templating Engine">
2
- </var>
3
- <var currentPage='home'>
4
- </var>
5
- text:"\n"
6
- documentType:"DOCTYPE html"
7
- text:"\n"
8
- <html lang="en">
9
- </html>
@@ -1,5 +0,0 @@
1
- var pageTitle="Marko Templating Engine"
2
- var currentPage='home'
3
-
4
- <!DOCTYPE html>
5
- html lang="en"
@@ -1,7 +0,0 @@
1
- <foo>
2
- </foo>
3
- <bar>
4
- </bar>
5
- text:"\n"
6
- <baz>
7
- </baz>
@@ -1,4 +0,0 @@
1
- foo
2
- bar
3
-
4
- baz
@@ -1,8 +0,0 @@
1
- <foo>
2
- </foo>
3
- <bar>
4
- text:"\n"
5
- <baz>
6
- text:"test"
7
- </baz>
8
- </bar>
@@ -1,4 +0,0 @@
1
- foo
2
- bar
3
-
4
- baz - test
@@ -1,7 +0,0 @@
1
- <div>
2
- </div>
3
- text:"\n"
4
- text:"\n\n"
5
- <span>
6
- text:"\n\n"
7
- </span>
@@ -1,6 +0,0 @@
1
- <div></div>
2
-
3
-
4
- <span>
5
-
6
- </span>
@@ -1,7 +0,0 @@
1
- <div>
2
- </div>
3
- text:"\n"
4
- text:"\n\n"
5
- <span>
6
- text:"\n\n"
7
- </span>
@@ -1,6 +0,0 @@
1
- <div></div>
2
-
3
-
4
- <span>
5
-
6
- </span>
@@ -1,10 +0,0 @@
1
- <div class="foo">
2
- <span class="bar">
3
- <strong>
4
- text:"baz"
5
- </strong>
6
- </span>
7
- </div>
8
- text:"Hello "
9
- ${"$escapeXml(data.name)"}
10
- text:"!"
@@ -1,11 +0,0 @@
1
- exports.getSource = function() {
2
- return [
3
- 'div class="foo"',
4
- ' span class="bar" - <strong>baz</strong>',
5
- '---',
6
- 'Hello ${data.name}!',
7
- '---'
8
- ].join('\r\n');
9
- };
10
-
11
- exports.preserveLineEndings = true;
@@ -1,5 +0,0 @@
1
- declaration:"xml version=\"1.0\" encoding=\"UTF-8\" "
2
- text:"\n"
3
- <div>
4
- text:"Hello"
5
- </div>
@@ -1,2 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8" ?>
2
- <div>Hello</div>
@@ -1,5 +0,0 @@
1
- declaration:"xml version=\"1.0\" encoding=\"UTF-8\""
2
- text:"\n"
3
- <div>
4
- text:"Hello"
5
- </div>
@@ -1,2 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8">
2
- <div>Hello</div>
package/test/test.js DELETED
@@ -1,6 +0,0 @@
1
- var autotest = require('mocha-autotest').default;
2
- var runDirTest = require('./util/runDirTest');
3
-
4
- describe('parser', () => {
5
- autotest('autotest', runDirTest({}));
6
- });
@@ -1,417 +0,0 @@
1
- 'use strict';
2
- var expect = require('chai').expect;
3
-
4
- function attributesToString(attributes, includeLiteralValues) {
5
- var len = attributes && attributes.length || 0;
6
- if (!len) {
7
- return '';
8
- }
9
-
10
- var i = 0;
11
- var result = "";
12
- var attr = attributes[0];
13
-
14
- if (attr.default) {
15
- i = 1;
16
- result = " DEFAULT" + attributeAssignmentToString(attr, includeLiteralValues);
17
- }
18
-
19
- for (;i < len; i++) {
20
- attr = attributes[i];
21
- result += " " + attr.name;
22
-
23
- if (attr.argument) {
24
- result += '(' + attr.argument.value + ')';
25
- }
26
-
27
- result += attributeAssignmentToString(attr, includeLiteralValues);
28
- }
29
-
30
- return result;
31
- }
32
-
33
- function attributeAssignmentToString(attr, includeLiteralValues) {
34
- var result = "";
35
-
36
- if (attr.value) {
37
- if (attr.bound) {
38
- result += '=BOUND(' + attr.value + ")";
39
- } else {
40
- result += '=' + attr.value;
41
- }
42
- } else if (!attr.argument) {
43
- result += '=(EMPTY)';
44
- }
45
-
46
- if (includeLiteralValues) {
47
- result += '[Literal: ' + (attr.hasOwnProperty('literalValue') ? JSON.stringify(attr.literalValue) : '(empty)') + ']';
48
- }
49
-
50
- return result;
51
- }
52
-
53
- class RootNode {
54
- constructor() {
55
- this.children = [];
56
- }
57
-
58
- write(out) {
59
- this.children.forEach((child) => {
60
- child.write(out);
61
- });
62
- }
63
- }
64
-
65
- class Node {
66
- constructor(event) {
67
- this.event = event;
68
- }
69
-
70
- write(out) {
71
- var event = this.event;
72
- switch(event.type) {
73
- case 'text': {
74
- var line = 'text:' + JSON.stringify(event.value);
75
- if (out.includeTextParserState) {
76
- line += ' [parseMode=' + event.parseMode + ']';
77
- }
78
- out.writeLine(line);
79
- break;
80
- }
81
-
82
- case 'comment': {
83
- out.writeLine('comment:' + JSON.stringify(event.value));
84
- break;
85
- }
86
-
87
- case 'cdata': {
88
- out.writeLine('cdata:' + JSON.stringify(event.value) + (out.includePositions ? ':' + event.pos + '-' + event.endPos : ''));
89
- break;
90
- }
91
-
92
- case 'declaration': {
93
- out.writeLine('declaration:' + JSON.stringify(event.value) + (out.includePositions ? ':' + event.pos + '-' + event.endPos : ''));
94
- break;
95
- }
96
-
97
- case 'documentType': {
98
- out.writeLine('documentType:' + JSON.stringify(event.value) + (out.includePositions ? ':' + event.pos + '-' + event.endPos : ''));
99
- break;
100
- }
101
-
102
- case 'placeholder': {
103
- out.writeLine((event.escape ? '${' : '$!{') + JSON.stringify(event.value) + '}');
104
- break;
105
- }
106
-
107
- case 'scriptlet': {
108
- if(event.tag) {
109
- out.writeLine('scriptlet:' + JSON.stringify(event.value));
110
- } else if (event.line) {
111
- out.writeLine('scriptlet(line):' + JSON.stringify(event.value));
112
- } else if (event.block) {
113
- out.writeLine('scriptlet(block):' + JSON.stringify(event.value));
114
- }
115
- break;
116
- }
117
-
118
- case 'error': {
119
- out.writeLine('error:' + JSON.stringify(event.message) + ' (code: ' + JSON.stringify(event.code) + ')');
120
- break;
121
- }
122
-
123
- default: {
124
- throw new Error('Not implemented: ' + event.type);
125
- }
126
- }
127
- }
128
- }
129
-
130
- class ElementNode {
131
- constructor(event) {
132
- this.event = event;
133
- this.children = [];
134
- }
135
-
136
- write(out) {
137
- var event = this.event;
138
- var tagName = event.tagName;
139
- var tagNameExpression = event.tagNameExpression;
140
- var argument = event.argument;
141
- var variable = event.var;
142
- var params = event.params;
143
- var attributes = event.attributes;
144
- var openTagOnly = event.openTagOnly === true;
145
- var selfClosed = event.selfClosed === true;
146
-
147
- var str = '<';
148
-
149
- if (tagNameExpression) {
150
- str += '(' + tagNameExpression + ')';
151
- } else {
152
- str += tagName;
153
- }
154
-
155
- if (variable) {
156
- str += ' VAR=(' + variable.value + ')';
157
- }
158
-
159
- if (argument) {
160
- str += ' ARGS=(' + argument.value + ')';
161
- }
162
-
163
- if (params) {
164
- str += ' PARAMS=(' + params.value + ')';
165
- }
166
-
167
- if (out.includePositions) {
168
- str += ':' + event.pos;
169
- }
170
-
171
- if (event.shorthandId) {
172
- str += ' shorthandId=' + event.shorthandId.value;
173
- }
174
-
175
- if (event.shorthandClassNames) {
176
- str += ' shorthandClassNames=[' + event.shorthandClassNames.map((classNamePart) => {
177
- return classNamePart.value;
178
- }).join(', ') + ']';
179
- }
180
-
181
- str += attributesToString(attributes, out.includeLiteralValues) + (openTagOnly ? ' OPEN_ONLY' : '') + (selfClosed ? ' SELF_CLOSED' : '') + '>';
182
- out.writeLine(str);
183
-
184
- out.incIndent();
185
- this.children.forEach((child) => {
186
- child.write(out);
187
- });
188
- out.decIndent();
189
-
190
- out.writeLine('</' + tagName + '>');
191
- }
192
- }
193
-
194
-
195
-
196
- class TreeBuilder {
197
-
198
- constructor(src, options) {
199
- options = options || {};
200
-
201
- this.src = src;
202
- this.includePositions = options && options.includePositions === true;
203
- this.includeLiteralValues = options && options.includeLiteralValues === true;
204
- this.includeTextParserState = options.includeTextParserState === true;
205
-
206
- this.root = new RootNode();
207
- this.stack = [this.root];
208
-
209
- var openTagHandlers = options.openTagHandlers;
210
- var openTagNameHandlers = options.openTagNameHandlers;
211
-
212
- this.listeners = {
213
- onText: (event) => {
214
- this.last.children.push(new Node(event));
215
- },
216
-
217
- onString: (event) => {
218
- if (!event.isStringLiteral) {
219
- event.value = '$placeholderString(' + event.value + ')';
220
- }
221
- },
222
-
223
- onPlaceholder: (event) => {
224
- var escape = event.escape;
225
- var withinString = event.withinString;
226
-
227
- if (withinString) {
228
- event.value = '$withinString(' + event.value + ')';
229
- }
230
-
231
- if (escape) {
232
- expect(src.substring(event.pos, event.pos+2)).to.equal('${');
233
- } else {
234
- expect(src.substring(event.pos, event.pos+3)).to.equal('$!{');
235
- }
236
-
237
- expect(src.substring(event.endPos-1, event.endPos)).to.equal('}');
238
-
239
- if (event.withinTagName) {
240
- return;
241
- }
242
-
243
- var escapeFunc = escape ? '$escapeXml' : '$noEscapeXml';
244
- event.value = escapeFunc + '(' + event.value + ')';
245
-
246
- if (event.withinBody && !event.withinString) {
247
- expect(event.withinAttribute).to.equal(false);
248
- this.last.children.push(new Node(event));
249
- }
250
- },
251
-
252
- onCDATA: (event) => {
253
- var startPos = event.pos;
254
- var endPos = event.endPos;
255
-
256
- // Make sure the position information is correct
257
- expect(src.substring(startPos, startPos + '<![CDATA['.length)).to.equal('<![CDATA[');
258
- expect(src.substring(endPos-']]>'.length, endPos)).to.equal(']]>');
259
-
260
- this.last.children.push(new Node(event));
261
- },
262
-
263
- onOpenTagName: (event, parser) => {
264
- var tagName = event.tagName;
265
- if (!event.shorthandId && !event.shorthandClassNames) {
266
- if (event.emptyTagName) {
267
- expect(tagName).to.equal('');
268
- } else {
269
- expect(!!tagName).to.equal(true);
270
- }
271
-
272
- }
273
-
274
- var openTagNameHandler = openTagNameHandlers && openTagNameHandlers[tagName];
275
- if (openTagNameHandler) {
276
- openTagNameHandler.call(parser, event, parser);
277
- }
278
- },
279
-
280
- onOpenTag: (event, parser) => {
281
- var startPos = event.pos;
282
- var endPos = event.endPos;
283
-
284
- var tagName = event.tagName;
285
-
286
- if (!event.shorthandId && !event.shorthandClassNames) {
287
- // Make sure the position information is correct, but only if the
288
- // shorthand syntax was not used on the tag name
289
- if (event.concise) {
290
- expect(src.substring(startPos, startPos + tagName.length)).to.equal(tagName);
291
- } else {
292
- expect(src.substring(startPos, startPos + 1 + tagName.length)).to.equal('<' + tagName);
293
-
294
- if (event.selfClosed) {
295
- expect(src.substring(endPos - 2, endPos)).to.equal('/>');
296
- } else {
297
- expect(src.charAt(endPos-1)).to.equal('>');
298
- }
299
-
300
- }
301
- }
302
-
303
-
304
- var el = new ElementNode(event);
305
- this.last.children.push(el);
306
- this.stack.push(el);
307
-
308
- var openTagHandler = openTagHandlers && openTagHandlers[tagName];
309
- if (openTagHandler) {
310
- openTagHandler.call(parser, event, parser);
311
- }
312
- },
313
-
314
- onCloseTag: (event) => {
315
- var tagName = event.tagName;
316
-
317
- var last = this.stack.pop();
318
-
319
- if (!last) {
320
- throw new Error('Illegal state: unmatched close tag: ' + tagName);
321
- }
322
-
323
- var lastEvent = last.event;
324
-
325
- if (last.event.tagName !== event.tagName) {
326
- throw new Error('Illegal state: incorrectly close tag: ' + last.event.tagName + ' != ' + tagName);
327
- }
328
-
329
- // Make sure the position information is correct
330
- var startPos = event.pos;
331
- var endPos = event.endPos;
332
-
333
- if (lastEvent.concise || lastEvent.selfClosed || lastEvent.openTagOnly) {
334
- expect(startPos == null).to.equal(true);
335
- expect(endPos == null).to.equal(true);
336
- } else {
337
- if (!lastEvent.shorthandId && !lastEvent.shorthandClassNames) {
338
- var actualEndTag = src.substring(startPos, endPos);
339
- if (actualEndTag !== '</' + tagName + '>' && actualEndTag !== '</>') {
340
- throw new Error('Incorrect start/stop pos for close tag: ' + actualEndTag);
341
- }
342
- }
343
- }
344
-
345
-
346
- last.closeEvent = event;
347
- },
348
-
349
- onDocumentType: (event) => {
350
- expect(src.substring(event.pos, event.pos+2)).to.equal('<!');
351
- expect(src.substring(event.endPos-1, event.endPos)).to.equal('>');
352
- this.last.children.push(new Node(event));
353
- },
354
-
355
- onDeclaration: (event) => {
356
- expect(src.substring(event.pos, event.pos+2)).to.equal('<?');
357
- expect(src.substring(event.endPos-1, event.endPos)).to.equal('>');
358
- this.last.children.push(new Node(event));
359
- },
360
-
361
- onComment: (event) => {
362
- var prefix = src.substring(event.pos, event.pos + 2);
363
- if (prefix === '//') {
364
- } else if (prefix === '/*') {
365
- expect(src.substring(event.endPos-2, event.endPos)).to.equal('*/');
366
- } else {
367
- expect(src.substring(event.pos, event.pos+4)).to.equal('<!--');
368
- expect(src.substring(event.endPos-3, event.endPos)).to.equal('-->');
369
- }
370
-
371
- this.last.children.push(new Node(event));
372
- },
373
-
374
- onScriptlet: (event) => {
375
- if (event.tag) {
376
- expect(src.substring(event.pos, event.pos+2)).to.equal('<%');
377
- expect(src.substring(event.endPos-2, event.endPos)).to.equal('%>');
378
- }
379
- this.last.children.push(new Node(event));
380
- },
381
-
382
- onError: (event) => {
383
- this.last.children.push(new Node(event));
384
- }
385
- };
386
- }
387
-
388
- get last() {
389
- return this.stack[this.stack.length-1];
390
- }
391
-
392
- toString() {
393
- var indent = '';
394
- var buffer = '';
395
- var out = {
396
- includePositions: this.includePositions === true,
397
- includeLiteralValues: this.includeLiteralValues === true,
398
- includeTextParserState: this.includeTextParserState === true,
399
- incIndent() {
400
- indent += ' ';
401
- },
402
- decIndent() {
403
- indent = indent.substring(4);
404
- },
405
- writeLine(text) {
406
- buffer += indent + text + '\n';
407
- }
408
- };
409
-
410
- this.root.write(out);
411
-
412
- return buffer;
413
- }
414
-
415
- }
416
-
417
- module.exports = TreeBuilder;