@zowe/cli 8.36.1 → 8.37.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 (562) hide show
  1. package/lib/zosfiles/-strings-/en.d.ts +2 -0
  2. package/lib/zosfiles/-strings-/en.d.ts.map +1 -1
  3. package/lib/zosfiles/-strings-/en.js +5 -1
  4. package/lib/zosfiles/-strings-/en.js.map +1 -1
  5. package/lib/zosfiles/ZosFiles.options.d.ts.map +1 -1
  6. package/lib/zosfiles/ZosFiles.options.js +3 -1
  7. package/lib/zosfiles/ZosFiles.options.js.map +1 -1
  8. package/lib/zosfiles/create/Create.utils.d.ts.map +1 -1
  9. package/lib/zosfiles/create/Create.utils.js +3 -1
  10. package/lib/zosfiles/create/Create.utils.js.map +1 -1
  11. package/lib/zosfiles/create/ussDir/ussDir.handler.d.ts.map +1 -1
  12. package/lib/zosfiles/create/ussDir/ussDir.handler.js +5 -1
  13. package/lib/zosfiles/create/ussDir/ussDir.handler.js.map +1 -1
  14. package/lib/zosfiles/create/ussFile/ussFile.handler.d.ts.map +1 -1
  15. package/lib/zosfiles/create/ussFile/ussFile.handler.js +5 -1
  16. package/lib/zosfiles/create/ussFile/ussFile.handler.js.map +1 -1
  17. package/lib/zosfiles/create/vsam/vsam.handler.d.ts.map +1 -1
  18. package/lib/zosfiles/create/vsam/vsam.handler.js +3 -1
  19. package/lib/zosfiles/create/vsam/vsam.handler.js.map +1 -1
  20. package/lib/zosfiles/create/zfs/zfs.handler.d.ts.map +1 -1
  21. package/lib/zosfiles/create/zfs/zfs.handler.js +3 -1
  22. package/lib/zosfiles/create/zfs/zfs.handler.js.map +1 -1
  23. package/lib/zosfiles/delete/ds/Ds.handler.d.ts.map +1 -1
  24. package/lib/zosfiles/delete/ds/Ds.handler.js +4 -1
  25. package/lib/zosfiles/delete/ds/Ds.handler.js.map +1 -1
  26. package/lib/zosfiles/delete/uss/Uss.handler.d.ts.map +1 -1
  27. package/lib/zosfiles/delete/uss/Uss.handler.js +5 -1
  28. package/lib/zosfiles/delete/uss/Uss.handler.js.map +1 -1
  29. package/lib/zosfiles/delete/vsam/Vsam.handler.d.ts.map +1 -1
  30. package/lib/zosfiles/delete/vsam/Vsam.handler.js +3 -1
  31. package/lib/zosfiles/delete/vsam/Vsam.handler.js.map +1 -1
  32. package/lib/zosfiles/delete/zfs/zfs.handler.d.ts.map +1 -1
  33. package/lib/zosfiles/delete/zfs/zfs.handler.js +3 -1
  34. package/lib/zosfiles/delete/zfs/zfs.handler.js.map +1 -1
  35. package/lib/zosfiles/download/am/AllMembers.handler.d.ts.map +1 -1
  36. package/lib/zosfiles/download/am/AllMembers.handler.js +3 -1
  37. package/lib/zosfiles/download/am/AllMembers.handler.js.map +1 -1
  38. package/lib/zosfiles/download/amm/AllMembersMatching.handler.d.ts.map +1 -1
  39. package/lib/zosfiles/download/amm/AllMembersMatching.handler.js +2 -0
  40. package/lib/zosfiles/download/amm/AllMembersMatching.handler.js.map +1 -1
  41. package/lib/zosfiles/download/ds/Dataset.handler.d.ts.map +1 -1
  42. package/lib/zosfiles/download/ds/Dataset.handler.js +3 -1
  43. package/lib/zosfiles/download/ds/Dataset.handler.js.map +1 -1
  44. package/lib/zosfiles/download/dsm/DataSetMatching.handler.d.ts.map +1 -1
  45. package/lib/zosfiles/download/dsm/DataSetMatching.handler.js +6 -2
  46. package/lib/zosfiles/download/dsm/DataSetMatching.handler.js.map +1 -1
  47. package/lib/zosfiles/download/uss/UssFile.handler.d.ts.map +1 -1
  48. package/lib/zosfiles/download/uss/UssFile.handler.js +2 -0
  49. package/lib/zosfiles/download/uss/UssFile.handler.js.map +1 -1
  50. package/lib/zosfiles/download/ussdir/UssDir.handler.d.ts.map +1 -1
  51. package/lib/zosfiles/download/ussdir/UssDir.handler.js +6 -2
  52. package/lib/zosfiles/download/ussdir/UssDir.handler.js.map +1 -1
  53. package/lib/zosfiles/edit/Edit.utils.d.ts +2 -2
  54. package/lib/zosfiles/edit/Edit.utils.d.ts.map +1 -1
  55. package/lib/zosfiles/edit/Edit.utils.js +10 -10
  56. package/lib/zosfiles/edit/Edit.utils.js.map +1 -1
  57. package/lib/zosfiles/invoke/amsFile/AmsFile.handler.d.ts.map +1 -1
  58. package/lib/zosfiles/invoke/amsFile/AmsFile.handler.js +5 -1
  59. package/lib/zosfiles/invoke/amsFile/AmsFile.handler.js.map +1 -1
  60. package/lib/zosfiles/invoke/amsStatements/AmsStatements.handler.d.ts.map +1 -1
  61. package/lib/zosfiles/invoke/amsStatements/AmsStatements.handler.js +5 -1
  62. package/lib/zosfiles/invoke/amsStatements/AmsStatements.handler.js.map +1 -1
  63. package/lib/zosfiles/list/alias/Alias.handler.d.ts.map +1 -1
  64. package/lib/zosfiles/list/alias/Alias.handler.js +3 -1
  65. package/lib/zosfiles/list/alias/Alias.handler.js.map +1 -1
  66. package/lib/zosfiles/list/am/AllMembers.handler.d.ts.map +1 -1
  67. package/lib/zosfiles/list/am/AllMembers.handler.js +3 -1
  68. package/lib/zosfiles/list/am/AllMembers.handler.js.map +1 -1
  69. package/lib/zosfiles/list/ds/DataSet.handler.d.ts.map +1 -1
  70. package/lib/zosfiles/list/ds/DataSet.handler.js +3 -1
  71. package/lib/zosfiles/list/ds/DataSet.handler.js.map +1 -1
  72. package/lib/zosfiles/list/fs/Fs.handler.d.ts.map +1 -1
  73. package/lib/zosfiles/list/fs/Fs.handler.js +6 -2
  74. package/lib/zosfiles/list/fs/Fs.handler.js.map +1 -1
  75. package/lib/zosfiles/list/uss/UssFile.handler.d.ts.map +1 -1
  76. package/lib/zosfiles/list/uss/UssFile.handler.js +3 -1
  77. package/lib/zosfiles/list/uss/UssFile.handler.js.map +1 -1
  78. package/lib/zosfiles/mount/fs/fs.handler.d.ts.map +1 -1
  79. package/lib/zosfiles/mount/fs/fs.handler.js +3 -1
  80. package/lib/zosfiles/mount/fs/fs.handler.js.map +1 -1
  81. package/lib/zosfiles/rename/ds/Ds.handler.d.ts.map +1 -1
  82. package/lib/zosfiles/rename/ds/Ds.handler.js +4 -1
  83. package/lib/zosfiles/rename/ds/Ds.handler.js.map +1 -1
  84. package/lib/zosfiles/rename/dsm/Dsm.handler.d.ts.map +1 -1
  85. package/lib/zosfiles/rename/dsm/Dsm.handler.js +4 -1
  86. package/lib/zosfiles/rename/dsm/Dsm.handler.js.map +1 -1
  87. package/lib/zosfiles/search/ds/DataSets.handler.d.ts.map +1 -1
  88. package/lib/zosfiles/search/ds/DataSets.handler.js +10 -2
  89. package/lib/zosfiles/search/ds/DataSets.handler.js.map +1 -1
  90. package/lib/zosfiles/upload/dtp/DirToPds.handler.d.ts.map +1 -1
  91. package/lib/zosfiles/upload/dtp/DirToPds.handler.js +3 -1
  92. package/lib/zosfiles/upload/dtp/DirToPds.handler.js.map +1 -1
  93. package/lib/zosfiles/upload/dtu/DirToUSSDir.handler.d.ts.map +1 -1
  94. package/lib/zosfiles/upload/dtu/DirToUSSDir.handler.js +3 -1
  95. package/lib/zosfiles/upload/dtu/DirToUSSDir.handler.js.map +1 -1
  96. package/lib/zosfiles/upload/ftds/FileToDataSet.handler.d.ts.map +1 -1
  97. package/lib/zosfiles/upload/ftds/FileToDataSet.handler.js +3 -1
  98. package/lib/zosfiles/upload/ftds/FileToDataSet.handler.js.map +1 -1
  99. package/lib/zosfiles/upload/ftu/FileToUSS.handler.d.ts.map +1 -1
  100. package/lib/zosfiles/upload/ftu/FileToUSS.handler.js +3 -1
  101. package/lib/zosfiles/upload/ftu/FileToUSS.handler.js.map +1 -1
  102. package/lib/zosfiles/upload/stds/StdinToDataSet.handler.d.ts.map +1 -1
  103. package/lib/zosfiles/upload/stds/StdinToDataSet.handler.js +3 -1
  104. package/lib/zosfiles/upload/stds/StdinToDataSet.handler.js.map +1 -1
  105. package/lib/zosfiles/view/ds/Dataset.handler.d.ts.map +1 -1
  106. package/lib/zosfiles/view/ds/Dataset.handler.js +3 -1
  107. package/lib/zosfiles/view/ds/Dataset.handler.js.map +1 -1
  108. package/lib/zosfiles/view/uss/USSFile.handler.d.ts.map +1 -1
  109. package/lib/zosfiles/view/uss/USSFile.handler.js +3 -1
  110. package/lib/zosfiles/view/uss/USSFile.handler.js.map +1 -1
  111. package/node_modules/@zowe/core-for-zowe-sdk/lib/rest/ZosmfHeaders.d.ts +14 -0
  112. package/node_modules/@zowe/core-for-zowe-sdk/lib/rest/ZosmfHeaders.d.ts.map +1 -1
  113. package/node_modules/@zowe/core-for-zowe-sdk/lib/rest/ZosmfHeaders.js +14 -0
  114. package/node_modules/@zowe/core-for-zowe-sdk/lib/rest/ZosmfHeaders.js.map +1 -1
  115. package/node_modules/@zowe/core-for-zowe-sdk/package.json +3 -3
  116. package/node_modules/@zowe/imperative/lib/config/src/ConfigSchema.d.ts.map +1 -1
  117. package/node_modules/@zowe/imperative/lib/config/src/ConfigSchema.js +1 -0
  118. package/node_modules/@zowe/imperative/lib/config/src/ConfigSchema.js.map +1 -1
  119. package/node_modules/@zowe/imperative/package.json +3 -3
  120. package/node_modules/@zowe/imperative/web-help/package-lock.json +62 -62
  121. package/node_modules/@zowe/provisioning-for-zowe-sdk/package.json +4 -4
  122. package/node_modules/@zowe/secrets-for-zowe-sdk/README.md +70 -0
  123. package/node_modules/@zowe/secrets-for-zowe-sdk/package.json +1 -1
  124. package/node_modules/@zowe/secrets-for-zowe-sdk/prebuilds/keyring.darwin-arm64.node +0 -0
  125. package/node_modules/@zowe/secrets-for-zowe-sdk/prebuilds/keyring.darwin-x64.node +0 -0
  126. package/node_modules/@zowe/secrets-for-zowe-sdk/prebuilds/keyring.linux-arm-gnueabihf.node +0 -0
  127. package/node_modules/@zowe/secrets-for-zowe-sdk/prebuilds/keyring.linux-arm64-gnu.node +0 -0
  128. package/node_modules/@zowe/secrets-for-zowe-sdk/prebuilds/keyring.linux-ia32-gnu.node +0 -0
  129. package/node_modules/@zowe/secrets-for-zowe-sdk/prebuilds/keyring.linux-x64-gnu.node +0 -0
  130. package/node_modules/@zowe/secrets-for-zowe-sdk/prebuilds/keyring.win32-arm64-msvc.node +0 -0
  131. package/node_modules/@zowe/secrets-for-zowe-sdk/prebuilds/keyring.win32-ia32-msvc.node +0 -0
  132. package/node_modules/@zowe/secrets-for-zowe-sdk/prebuilds/keyring.win32-x64-msvc.node +0 -0
  133. package/node_modules/@zowe/zos-console-for-zowe-sdk/package.json +4 -4
  134. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/doc/IZosFilesOptions.d.ts +12 -0
  135. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/doc/IZosFilesOptions.d.ts.map +1 -1
  136. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/copy/Copy.js +1 -1
  137. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/copy/Copy.js.map +1 -1
  138. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/create/Create.d.ts.map +1 -1
  139. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/create/Create.js +18 -3
  140. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/create/Create.js.map +1 -1
  141. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/delete/Delete.d.ts.map +1 -1
  142. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/delete/Delete.js +7 -3
  143. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/delete/Delete.js.map +1 -1
  144. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/download/Download.js +1 -1
  145. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/download/Download.js.map +1 -1
  146. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/invoke/Invoke.d.ts.map +1 -1
  147. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/invoke/Invoke.js +2 -1
  148. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/invoke/Invoke.js.map +1 -1
  149. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/list/List.d.ts.map +1 -1
  150. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/list/List.js +6 -5
  151. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/list/List.js.map +1 -1
  152. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/mount/Mount.d.ts.map +1 -1
  153. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/mount/Mount.js +6 -0
  154. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/mount/Mount.js.map +1 -1
  155. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/rename/Rename.d.ts.map +1 -1
  156. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/rename/Rename.js +2 -1
  157. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/rename/Rename.js.map +1 -1
  158. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/unmount/Unmount.d.ts.map +1 -1
  159. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/unmount/Unmount.js +3 -1
  160. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/unmount/Unmount.js.map +1 -1
  161. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/upload/Upload.d.ts.map +1 -1
  162. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/upload/Upload.js +5 -5
  163. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/upload/Upload.js.map +1 -1
  164. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/utilities/Utilities.d.ts +4 -4
  165. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/utilities/Utilities.d.ts.map +1 -1
  166. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/utilities/Utilities.js +10 -33
  167. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/methods/utilities/Utilities.js.map +1 -1
  168. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/utils/ZosFilesUtils.d.ts +7 -0
  169. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/utils/ZosFilesUtils.d.ts.map +1 -1
  170. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/utils/ZosFilesUtils.js +16 -0
  171. package/node_modules/@zowe/zos-files-for-zowe-sdk/lib/utils/ZosFilesUtils.js.map +1 -1
  172. package/node_modules/@zowe/zos-files-for-zowe-sdk/package.json +5 -5
  173. package/node_modules/@zowe/zos-jobs-for-zowe-sdk/package.json +5 -5
  174. package/node_modules/@zowe/zos-logs-for-zowe-sdk/package.json +4 -4
  175. package/node_modules/@zowe/zos-tso-for-zowe-sdk/package.json +5 -5
  176. package/node_modules/@zowe/zos-uss-for-zowe-sdk/package.json +3 -3
  177. package/node_modules/@zowe/zos-workflows-for-zowe-sdk/package.json +5 -5
  178. package/node_modules/@zowe/zosmf-for-zowe-sdk/lib/constants/Zosmf.constants.d.ts.map +1 -1
  179. package/node_modules/@zowe/zosmf-for-zowe-sdk/lib/constants/Zosmf.constants.js +21 -0
  180. package/node_modules/@zowe/zosmf-for-zowe-sdk/lib/constants/Zosmf.constants.js.map +1 -1
  181. package/node_modules/@zowe/zosmf-for-zowe-sdk/lib/constants/Zosmf.profile.d.ts.map +1 -1
  182. package/node_modules/@zowe/zosmf-for-zowe-sdk/lib/constants/Zosmf.profile.js +8 -0
  183. package/node_modules/@zowe/zosmf-for-zowe-sdk/lib/constants/Zosmf.profile.js.map +1 -1
  184. package/node_modules/@zowe/zosmf-for-zowe-sdk/package.json +4 -4
  185. package/node_modules/js-yaml/dist/js-yaml.js +11 -3
  186. package/node_modules/js-yaml/dist/js-yaml.js.map +1 -1
  187. package/node_modules/js-yaml/dist/js-yaml.min.js +1 -1
  188. package/node_modules/js-yaml/dist/js-yaml.min.js.map +1 -1
  189. package/node_modules/js-yaml/dist/js-yaml.mjs +11 -3
  190. package/node_modules/js-yaml/dist/js-yaml.mjs.map +1 -1
  191. package/node_modules/js-yaml/lib/loader.js +16 -3
  192. package/node_modules/js-yaml/package.json +1 -1
  193. package/node_modules/sanitize-html/README.md +13 -0
  194. package/node_modules/sanitize-html/index.js +86 -12
  195. package/node_modules/sanitize-html/node_modules/dom-serializer/LICENSE +7 -0
  196. package/node_modules/{dom-serializer → sanitize-html/node_modules/dom-serializer}/README.md +14 -8
  197. package/node_modules/sanitize-html/node_modules/dom-serializer/dist/foreign-names.d.ts +11 -0
  198. package/node_modules/sanitize-html/node_modules/dom-serializer/dist/foreign-names.d.ts.map +1 -0
  199. package/node_modules/sanitize-html/node_modules/dom-serializer/dist/foreign-names.js +15 -0
  200. package/node_modules/sanitize-html/node_modules/dom-serializer/dist/foreign-names.js.map +1 -0
  201. package/node_modules/sanitize-html/node_modules/dom-serializer/dist/index.d.ts +72 -0
  202. package/node_modules/sanitize-html/node_modules/dom-serializer/dist/index.d.ts.map +1 -0
  203. package/node_modules/sanitize-html/node_modules/dom-serializer/dist/index.js +173 -0
  204. package/node_modules/sanitize-html/node_modules/dom-serializer/dist/index.js.map +1 -0
  205. package/node_modules/sanitize-html/node_modules/dom-serializer/package.json +69 -0
  206. package/node_modules/sanitize-html/node_modules/dom-serializer/src/foreign-names.ts +19 -0
  207. package/node_modules/sanitize-html/node_modules/dom-serializer/src/index.ts +315 -0
  208. package/node_modules/{domelementtype/lib → sanitize-html/node_modules/domelementtype/dist}/index.d.ts +12 -12
  209. package/node_modules/sanitize-html/node_modules/domelementtype/dist/index.d.ts.map +1 -0
  210. package/node_modules/{domelementtype/lib/esm → sanitize-html/node_modules/domelementtype/dist}/index.js +15 -6
  211. package/node_modules/sanitize-html/node_modules/domelementtype/package.json +59 -0
  212. package/node_modules/{domhandler/lib → sanitize-html/node_modules/domhandler/dist}/index.d.ts +9 -6
  213. package/node_modules/sanitize-html/node_modules/domhandler/dist/index.d.ts.map +1 -0
  214. package/node_modules/{domhandler/lib/esm → sanitize-html/node_modules/domhandler/dist}/index.js +34 -25
  215. package/node_modules/{domhandler/lib → sanitize-html/node_modules/domhandler/dist}/node.d.ts +34 -15
  216. package/node_modules/sanitize-html/node_modules/domhandler/dist/node.d.ts.map +1 -0
  217. package/node_modules/{domhandler/lib/esm → sanitize-html/node_modules/domhandler/dist}/node.js +81 -60
  218. package/node_modules/sanitize-html/node_modules/domhandler/package.json +65 -0
  219. package/node_modules/{domhandler → sanitize-html/node_modules/domhandler}/readme.md +1 -7
  220. package/node_modules/{domutils/lib → sanitize-html/node_modules/domutils/dist}/feeds.d.ts +2 -2
  221. package/node_modules/sanitize-html/node_modules/domutils/dist/feeds.d.ts.map +1 -0
  222. package/node_modules/{domutils/lib/esm → sanitize-html/node_modules/domutils/dist}/feeds.js +22 -25
  223. package/node_modules/sanitize-html/node_modules/domutils/dist/feeds.js.map +1 -0
  224. package/node_modules/{domutils/lib → sanitize-html/node_modules/domutils/dist}/helpers.d.ts +1 -1
  225. package/node_modules/sanitize-html/node_modules/domutils/dist/helpers.d.ts.map +1 -0
  226. package/node_modules/{domutils/lib/esm → sanitize-html/node_modules/domutils/dist}/helpers.js +16 -16
  227. package/node_modules/sanitize-html/node_modules/domutils/dist/helpers.js.map +1 -0
  228. package/node_modules/{domutils/lib/esm → sanitize-html/node_modules/domutils/dist}/index.d.ts +5 -7
  229. package/node_modules/sanitize-html/node_modules/domutils/dist/index.d.ts.map +1 -0
  230. package/node_modules/{domutils/lib/esm → sanitize-html/node_modules/domutils/dist}/index.js +5 -7
  231. package/node_modules/sanitize-html/node_modules/domutils/dist/index.js.map +1 -0
  232. package/node_modules/{domutils/lib/esm → sanitize-html/node_modules/domutils/dist}/legacy.d.ts +1 -1
  233. package/node_modules/sanitize-html/node_modules/domutils/dist/legacy.d.ts.map +1 -0
  234. package/node_modules/{domutils/lib/esm → sanitize-html/node_modules/domutils/dist}/legacy.js +15 -15
  235. package/node_modules/sanitize-html/node_modules/domutils/dist/legacy.js.map +1 -0
  236. package/node_modules/{domutils/lib/esm → sanitize-html/node_modules/domutils/dist}/manipulation.d.ts +9 -9
  237. package/node_modules/sanitize-html/node_modules/domutils/dist/manipulation.d.ts.map +1 -0
  238. package/node_modules/sanitize-html/node_modules/domutils/dist/manipulation.js +138 -0
  239. package/node_modules/sanitize-html/node_modules/domutils/dist/manipulation.js.map +1 -0
  240. package/node_modules/{domutils/lib → sanitize-html/node_modules/domutils/dist}/querying.d.ts +6 -16
  241. package/node_modules/sanitize-html/node_modules/domutils/dist/querying.d.ts.map +1 -0
  242. package/node_modules/{domutils/lib/esm → sanitize-html/node_modules/domutils/dist}/querying.js +13 -26
  243. package/node_modules/sanitize-html/node_modules/domutils/dist/querying.js.map +1 -0
  244. package/node_modules/{domutils/lib → sanitize-html/node_modules/domutils/dist}/stringify.d.ts +2 -2
  245. package/node_modules/sanitize-html/node_modules/domutils/dist/stringify.d.ts.map +1 -0
  246. package/node_modules/{domutils/lib/esm → sanitize-html/node_modules/domutils/dist}/stringify.js +1 -1
  247. package/node_modules/sanitize-html/node_modules/domutils/dist/stringify.js.map +1 -0
  248. package/node_modules/sanitize-html/node_modules/domutils/dist/traversal.d.ts +74 -0
  249. package/node_modules/sanitize-html/node_modules/domutils/dist/traversal.d.ts.map +1 -0
  250. package/node_modules/sanitize-html/node_modules/domutils/dist/traversal.js +105 -0
  251. package/node_modules/sanitize-html/node_modules/domutils/dist/traversal.js.map +1 -0
  252. package/node_modules/sanitize-html/node_modules/domutils/package.json +69 -0
  253. package/node_modules/{domutils → sanitize-html/node_modules/domutils}/readme.md +0 -6
  254. package/node_modules/sanitize-html/node_modules/domutils/src/__snapshots__/feeds.spec.ts.snap +103 -0
  255. package/node_modules/sanitize-html/node_modules/domutils/src/feeds.ts +301 -0
  256. package/node_modules/{domutils/lib/helpers.js → sanitize-html/node_modules/domutils/src/helpers.ts} +55 -43
  257. package/node_modules/{domutils/lib/index.d.ts → sanitize-html/node_modules/domutils/src/index.ts} +5 -8
  258. package/node_modules/sanitize-html/node_modules/domutils/src/legacy.ts +224 -0
  259. package/node_modules/sanitize-html/node_modules/domutils/src/manipulation.ts +156 -0
  260. package/node_modules/{domutils/lib/querying.js → sanitize-html/node_modules/domutils/src/querying.ts} +77 -60
  261. package/node_modules/sanitize-html/node_modules/domutils/src/stringify.ts +90 -0
  262. package/node_modules/sanitize-html/node_modules/domutils/src/traversal.ts +132 -0
  263. package/node_modules/sanitize-html/node_modules/entities/dist/decode-codepoint.d.ts +28 -0
  264. package/node_modules/sanitize-html/node_modules/entities/dist/decode-codepoint.d.ts.map +1 -0
  265. package/node_modules/sanitize-html/node_modules/entities/dist/decode-codepoint.js +61 -0
  266. package/node_modules/sanitize-html/node_modules/entities/dist/decode-codepoint.js.map +1 -0
  267. package/node_modules/{htmlparser2/node_modules/entities/dist/commonjs → sanitize-html/node_modules/entities/dist}/decode.d.ts +66 -44
  268. package/node_modules/sanitize-html/node_modules/entities/dist/decode.d.ts.map +1 -0
  269. package/node_modules/sanitize-html/node_modules/entities/dist/decode.js +1132 -0
  270. package/node_modules/sanitize-html/node_modules/entities/dist/decode.js.map +1 -0
  271. package/node_modules/{htmlparser2/node_modules/entities/dist/commonjs → sanitize-html/node_modules/entities/dist}/encode.d.ts +4 -0
  272. package/node_modules/sanitize-html/node_modules/entities/dist/encode.d.ts.map +1 -0
  273. package/node_modules/sanitize-html/node_modules/entities/dist/encode.js +295 -0
  274. package/node_modules/sanitize-html/node_modules/entities/dist/encode.js.map +1 -0
  275. package/node_modules/{htmlparser2/node_modules/entities/dist/commonjs → sanitize-html/node_modules/entities/dist}/escape.d.ts +23 -9
  276. package/node_modules/sanitize-html/node_modules/entities/dist/escape.d.ts.map +1 -0
  277. package/node_modules/sanitize-html/node_modules/entities/dist/escape.js +172 -0
  278. package/node_modules/sanitize-html/node_modules/entities/dist/escape.js.map +1 -0
  279. package/node_modules/sanitize-html/node_modules/entities/dist/generated/decode-data-html.d.ts +3 -0
  280. package/node_modules/sanitize-html/node_modules/entities/dist/generated/decode-data-html.d.ts.map +1 -0
  281. package/node_modules/sanitize-html/node_modules/entities/dist/generated/decode-data-html.js +5 -0
  282. package/node_modules/sanitize-html/node_modules/entities/dist/generated/decode-data-html.js.map +1 -0
  283. package/node_modules/sanitize-html/node_modules/entities/dist/generated/decode-data-xml.d.ts +3 -0
  284. package/node_modules/sanitize-html/node_modules/entities/dist/generated/decode-data-xml.d.ts.map +1 -0
  285. package/node_modules/sanitize-html/node_modules/entities/dist/generated/decode-data-xml.js +7 -0
  286. package/node_modules/sanitize-html/node_modules/entities/dist/generated/decode-data-xml.js.map +1 -0
  287. package/node_modules/sanitize-html/node_modules/entities/dist/generated/encode-html.d.ts +3 -0
  288. package/node_modules/sanitize-html/node_modules/entities/dist/generated/encode-html.d.ts.map +1 -0
  289. package/node_modules/sanitize-html/node_modules/entities/dist/generated/encode-html.js +3 -0
  290. package/node_modules/sanitize-html/node_modules/entities/dist/generated/encode-html.js.map +1 -0
  291. package/node_modules/{htmlparser2/node_modules/entities/dist/commonjs → sanitize-html/node_modules/entities/dist}/index.d.ts +11 -18
  292. package/node_modules/sanitize-html/node_modules/entities/dist/index.d.ts.map +1 -0
  293. package/node_modules/{htmlparser2/node_modules/entities/dist/esm → sanitize-html/node_modules/entities/dist}/index.js +9 -29
  294. package/node_modules/sanitize-html/node_modules/entities/dist/index.js.map +1 -0
  295. package/node_modules/sanitize-html/node_modules/entities/dist/internal/bin-trie-flags.d.ts +48 -0
  296. package/node_modules/sanitize-html/node_modules/entities/dist/internal/bin-trie-flags.d.ts.map +1 -0
  297. package/node_modules/sanitize-html/node_modules/entities/dist/internal/bin-trie-flags.js +49 -0
  298. package/node_modules/sanitize-html/node_modules/entities/dist/internal/bin-trie-flags.js.map +1 -0
  299. package/node_modules/sanitize-html/node_modules/entities/dist/internal/decode-shared.d.ts +38 -0
  300. package/node_modules/sanitize-html/node_modules/entities/dist/internal/decode-shared.d.ts.map +1 -0
  301. package/node_modules/sanitize-html/node_modules/entities/dist/internal/decode-shared.js +195 -0
  302. package/node_modules/sanitize-html/node_modules/entities/dist/internal/decode-shared.js.map +1 -0
  303. package/node_modules/sanitize-html/node_modules/entities/package.json +83 -0
  304. package/node_modules/{htmlparser2 → sanitize-html}/node_modules/entities/readme.md +4 -16
  305. package/node_modules/sanitize-html/node_modules/entities/src/decode-codepoint.ts +69 -0
  306. package/node_modules/sanitize-html/node_modules/entities/src/decode.ts +1368 -0
  307. package/node_modules/sanitize-html/node_modules/entities/src/encode.ts +337 -0
  308. package/node_modules/sanitize-html/node_modules/entities/src/escape.ts +187 -0
  309. package/node_modules/sanitize-html/node_modules/entities/src/generated/decode-data-html.ts +12 -0
  310. package/node_modules/sanitize-html/node_modules/entities/src/generated/decode-data-xml.ts +7 -0
  311. package/node_modules/sanitize-html/node_modules/entities/src/generated/encode-html.ts +3 -0
  312. package/node_modules/{htmlparser2 → sanitize-html}/node_modules/entities/src/index.ts +14 -41
  313. package/node_modules/sanitize-html/node_modules/entities/src/internal/bin-trie-flags.ts +47 -0
  314. package/node_modules/sanitize-html/node_modules/entities/src/internal/decode-shared.ts +209 -0
  315. package/node_modules/sanitize-html/node_modules/htmlparser2/README.md +257 -0
  316. package/node_modules/{htmlparser2/dist/esm → sanitize-html/node_modules/htmlparser2/dist}/Parser.d.ts +97 -38
  317. package/node_modules/sanitize-html/node_modules/htmlparser2/dist/Parser.d.ts.map +1 -0
  318. package/node_modules/sanitize-html/node_modules/htmlparser2/dist/Parser.js +644 -0
  319. package/node_modules/sanitize-html/node_modules/htmlparser2/dist/Parser.js.map +1 -0
  320. package/node_modules/{htmlparser2/dist/commonjs → sanitize-html/node_modules/htmlparser2/dist}/Tokenizer.d.ts +75 -7
  321. package/node_modules/sanitize-html/node_modules/htmlparser2/dist/Tokenizer.d.ts.map +1 -0
  322. package/node_modules/{htmlparser2/dist/esm → sanitize-html/node_modules/htmlparser2/dist}/Tokenizer.js +434 -179
  323. package/node_modules/sanitize-html/node_modules/htmlparser2/dist/Tokenizer.js.map +1 -0
  324. package/node_modules/sanitize-html/node_modules/htmlparser2/dist/WebWritableStream.d.ts +24 -0
  325. package/node_modules/sanitize-html/node_modules/htmlparser2/dist/WebWritableStream.d.ts.map +1 -0
  326. package/node_modules/sanitize-html/node_modules/htmlparser2/dist/WebWritableStream.js +44 -0
  327. package/node_modules/sanitize-html/node_modules/htmlparser2/dist/WebWritableStream.js.map +1 -0
  328. package/node_modules/{htmlparser2/dist/commonjs → sanitize-html/node_modules/htmlparser2/dist}/WritableStream.d.ts +1 -2
  329. package/node_modules/sanitize-html/node_modules/htmlparser2/dist/WritableStream.d.ts.map +1 -0
  330. package/node_modules/{htmlparser2/dist/esm → sanitize-html/node_modules/htmlparser2/dist}/WritableStream.js +3 -3
  331. package/node_modules/sanitize-html/node_modules/htmlparser2/dist/WritableStream.js.map +1 -0
  332. package/node_modules/{htmlparser2/dist/commonjs → sanitize-html/node_modules/htmlparser2/dist}/index.d.ts +6 -26
  333. package/node_modules/sanitize-html/node_modules/htmlparser2/dist/index.d.ts.map +1 -0
  334. package/node_modules/{htmlparser2/dist/esm → sanitize-html/node_modules/htmlparser2/dist}/index.js +2 -30
  335. package/node_modules/sanitize-html/node_modules/htmlparser2/dist/index.js.map +1 -0
  336. package/node_modules/sanitize-html/node_modules/htmlparser2/package.json +86 -0
  337. package/node_modules/{htmlparser2 → sanitize-html/node_modules/htmlparser2}/src/Parser.ts +260 -100
  338. package/node_modules/{htmlparser2 → sanitize-html/node_modules/htmlparser2}/src/Tokenizer.ts +438 -165
  339. package/node_modules/sanitize-html/node_modules/htmlparser2/src/WebWritableStream.ts +47 -0
  340. package/node_modules/{htmlparser2 → sanitize-html/node_modules/htmlparser2}/src/WritableStream.ts +1 -2
  341. package/node_modules/{htmlparser2 → sanitize-html/node_modules/htmlparser2}/src/index.ts +14 -43
  342. package/node_modules/sanitize-html/package.json +5 -2
  343. package/package.json +15 -15
  344. package/scripts/validateSecretsPrebuild.js +231 -0
  345. package/node_modules/dom-serializer/LICENSE +0 -11
  346. package/node_modules/dom-serializer/lib/esm/foreignNames.d.ts +0 -3
  347. package/node_modules/dom-serializer/lib/esm/foreignNames.d.ts.map +0 -1
  348. package/node_modules/dom-serializer/lib/esm/foreignNames.js +0 -100
  349. package/node_modules/dom-serializer/lib/esm/index.d.ts +0 -52
  350. package/node_modules/dom-serializer/lib/esm/index.d.ts.map +0 -1
  351. package/node_modules/dom-serializer/lib/esm/index.js +0 -190
  352. package/node_modules/dom-serializer/lib/esm/package.json +0 -1
  353. package/node_modules/dom-serializer/lib/foreignNames.d.ts +0 -3
  354. package/node_modules/dom-serializer/lib/foreignNames.d.ts.map +0 -1
  355. package/node_modules/dom-serializer/lib/foreignNames.js +0 -103
  356. package/node_modules/dom-serializer/lib/index.d.ts +0 -52
  357. package/node_modules/dom-serializer/lib/index.d.ts.map +0 -1
  358. package/node_modules/dom-serializer/lib/index.js +0 -229
  359. package/node_modules/dom-serializer/package.json +0 -69
  360. package/node_modules/domelementtype/lib/esm/index.d.ts +0 -48
  361. package/node_modules/domelementtype/lib/esm/index.d.ts.map +0 -1
  362. package/node_modules/domelementtype/lib/esm/package.json +0 -1
  363. package/node_modules/domelementtype/lib/index.d.ts.map +0 -1
  364. package/node_modules/domelementtype/lib/index.js +0 -55
  365. package/node_modules/domelementtype/package.json +0 -54
  366. package/node_modules/domhandler/lib/esm/index.d.ts +0 -76
  367. package/node_modules/domhandler/lib/esm/index.d.ts.map +0 -1
  368. package/node_modules/domhandler/lib/esm/node.d.ts +0 -245
  369. package/node_modules/domhandler/lib/esm/node.d.ts.map +0 -1
  370. package/node_modules/domhandler/lib/esm/package.json +0 -1
  371. package/node_modules/domhandler/lib/index.d.ts.map +0 -1
  372. package/node_modules/domhandler/lib/index.js +0 -165
  373. package/node_modules/domhandler/lib/node.d.ts.map +0 -1
  374. package/node_modules/domhandler/lib/node.js +0 -474
  375. package/node_modules/domhandler/package.json +0 -73
  376. package/node_modules/domutils/lib/esm/feeds.d.ts +0 -71
  377. package/node_modules/domutils/lib/esm/feeds.d.ts.map +0 -1
  378. package/node_modules/domutils/lib/esm/feeds.js.map +0 -1
  379. package/node_modules/domutils/lib/esm/helpers.d.ts +0 -59
  380. package/node_modules/domutils/lib/esm/helpers.d.ts.map +0 -1
  381. package/node_modules/domutils/lib/esm/helpers.js.map +0 -1
  382. package/node_modules/domutils/lib/esm/index.d.ts.map +0 -1
  383. package/node_modules/domutils/lib/esm/index.js.map +0 -1
  384. package/node_modules/domutils/lib/esm/legacy.d.ts.map +0 -1
  385. package/node_modules/domutils/lib/esm/legacy.js.map +0 -1
  386. package/node_modules/domutils/lib/esm/manipulation.d.ts.map +0 -1
  387. package/node_modules/domutils/lib/esm/manipulation.js +0 -134
  388. package/node_modules/domutils/lib/esm/manipulation.js.map +0 -1
  389. package/node_modules/domutils/lib/esm/package.json +0 -1
  390. package/node_modules/domutils/lib/esm/querying.d.ts +0 -64
  391. package/node_modules/domutils/lib/esm/querying.d.ts.map +0 -1
  392. package/node_modules/domutils/lib/esm/querying.js.map +0 -1
  393. package/node_modules/domutils/lib/esm/stringify.d.ts +0 -46
  394. package/node_modules/domutils/lib/esm/stringify.d.ts.map +0 -1
  395. package/node_modules/domutils/lib/esm/stringify.js.map +0 -1
  396. package/node_modules/domutils/lib/esm/traversal.d.ts +0 -67
  397. package/node_modules/domutils/lib/esm/traversal.d.ts.map +0 -1
  398. package/node_modules/domutils/lib/esm/traversal.js +0 -112
  399. package/node_modules/domutils/lib/esm/traversal.js.map +0 -1
  400. package/node_modules/domutils/lib/feeds.d.ts.map +0 -1
  401. package/node_modules/domutils/lib/feeds.js +0 -190
  402. package/node_modules/domutils/lib/feeds.js.map +0 -1
  403. package/node_modules/domutils/lib/helpers.d.ts.map +0 -1
  404. package/node_modules/domutils/lib/helpers.js.map +0 -1
  405. package/node_modules/domutils/lib/index.d.ts.map +0 -1
  406. package/node_modules/domutils/lib/index.js +0 -33
  407. package/node_modules/domutils/lib/index.js.map +0 -1
  408. package/node_modules/domutils/lib/legacy.d.ts +0 -79
  409. package/node_modules/domutils/lib/legacy.d.ts.map +0 -1
  410. package/node_modules/domutils/lib/legacy.js +0 -168
  411. package/node_modules/domutils/lib/legacy.js.map +0 -1
  412. package/node_modules/domutils/lib/manipulation.d.ts +0 -49
  413. package/node_modules/domutils/lib/manipulation.d.ts.map +0 -1
  414. package/node_modules/domutils/lib/manipulation.js +0 -142
  415. package/node_modules/domutils/lib/manipulation.js.map +0 -1
  416. package/node_modules/domutils/lib/querying.d.ts.map +0 -1
  417. package/node_modules/domutils/lib/querying.js.map +0 -1
  418. package/node_modules/domutils/lib/stringify.d.ts.map +0 -1
  419. package/node_modules/domutils/lib/stringify.js +0 -91
  420. package/node_modules/domutils/lib/stringify.js.map +0 -1
  421. package/node_modules/domutils/lib/traversal.d.ts +0 -67
  422. package/node_modules/domutils/lib/traversal.d.ts.map +0 -1
  423. package/node_modules/domutils/lib/traversal.js +0 -125
  424. package/node_modules/domutils/lib/traversal.js.map +0 -1
  425. package/node_modules/domutils/package.json +0 -79
  426. package/node_modules/htmlparser2/README.md +0 -171
  427. package/node_modules/htmlparser2/WritableStream.js +0 -3
  428. package/node_modules/htmlparser2/dist/commonjs/Parser.d.ts +0 -198
  429. package/node_modules/htmlparser2/dist/commonjs/Parser.d.ts.map +0 -1
  430. package/node_modules/htmlparser2/dist/commonjs/Parser.js +0 -527
  431. package/node_modules/htmlparser2/dist/commonjs/Parser.js.map +0 -1
  432. package/node_modules/htmlparser2/dist/commonjs/Tokenizer.d.ts.map +0 -1
  433. package/node_modules/htmlparser2/dist/commonjs/Tokenizer.js +0 -805
  434. package/node_modules/htmlparser2/dist/commonjs/Tokenizer.js.map +0 -1
  435. package/node_modules/htmlparser2/dist/commonjs/WritableStream.d.ts.map +0 -1
  436. package/node_modules/htmlparser2/dist/commonjs/WritableStream.js +0 -36
  437. package/node_modules/htmlparser2/dist/commonjs/WritableStream.js.map +0 -1
  438. package/node_modules/htmlparser2/dist/commonjs/index.d.ts.map +0 -1
  439. package/node_modules/htmlparser2/dist/commonjs/index.js +0 -123
  440. package/node_modules/htmlparser2/dist/commonjs/index.js.map +0 -1
  441. package/node_modules/htmlparser2/dist/commonjs/package.json +0 -3
  442. package/node_modules/htmlparser2/dist/esm/Parser.d.ts.map +0 -1
  443. package/node_modules/htmlparser2/dist/esm/Parser.js +0 -490
  444. package/node_modules/htmlparser2/dist/esm/Parser.js.map +0 -1
  445. package/node_modules/htmlparser2/dist/esm/Tokenizer.d.ts +0 -126
  446. package/node_modules/htmlparser2/dist/esm/Tokenizer.d.ts.map +0 -1
  447. package/node_modules/htmlparser2/dist/esm/Tokenizer.js.map +0 -1
  448. package/node_modules/htmlparser2/dist/esm/WritableStream.d.ts +0 -15
  449. package/node_modules/htmlparser2/dist/esm/WritableStream.d.ts.map +0 -1
  450. package/node_modules/htmlparser2/dist/esm/WritableStream.js.map +0 -1
  451. package/node_modules/htmlparser2/dist/esm/index.d.ts +0 -54
  452. package/node_modules/htmlparser2/dist/esm/index.d.ts.map +0 -1
  453. package/node_modules/htmlparser2/dist/esm/index.js.map +0 -1
  454. package/node_modules/htmlparser2/dist/esm/package.json +0 -3
  455. package/node_modules/htmlparser2/node_modules/entities/decode.d.ts +0 -3
  456. package/node_modules/htmlparser2/node_modules/entities/decode.js +0 -3
  457. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/decode-codepoint.d.ts +0 -19
  458. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/decode-codepoint.d.ts.map +0 -1
  459. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/decode-codepoint.js +0 -77
  460. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/decode-codepoint.js.map +0 -1
  461. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/decode.d.ts.map +0 -1
  462. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/decode.js +0 -568
  463. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/decode.js.map +0 -1
  464. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/encode.d.ts.map +0 -1
  465. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/encode.js +0 -92
  466. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/encode.js.map +0 -1
  467. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/escape.d.ts.map +0 -1
  468. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/escape.js +0 -138
  469. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/escape.js.map +0 -1
  470. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/decode-data-html.d.ts +0 -2
  471. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/decode-data-html.d.ts.map +0 -1
  472. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/decode-data-html.js +0 -7
  473. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/decode-data-html.js.map +0 -1
  474. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/decode-data-xml.d.ts +0 -2
  475. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/decode-data-xml.d.ts.map +0 -1
  476. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/decode-data-xml.js +0 -7
  477. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/decode-data-xml.js.map +0 -1
  478. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/encode-html.d.ts +0 -3
  479. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/encode-html.d.ts.map +0 -1
  480. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/encode-html.js +0 -14
  481. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/encode-html.js.map +0 -1
  482. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/index.d.ts.map +0 -1
  483. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/index.js +0 -131
  484. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/index.js.map +0 -1
  485. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/internal/bin-trie-flags.d.ts +0 -17
  486. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/internal/bin-trie-flags.d.ts.map +0 -1
  487. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/internal/bin-trie-flags.js +0 -21
  488. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/internal/bin-trie-flags.js.map +0 -1
  489. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/internal/decode-shared.d.ts +0 -2
  490. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/internal/decode-shared.d.ts.map +0 -1
  491. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/internal/decode-shared.js +0 -31
  492. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/internal/decode-shared.js.map +0 -1
  493. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/internal/encode-shared.d.ts +0 -32
  494. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/internal/encode-shared.d.ts.map +0 -1
  495. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/internal/encode-shared.js +0 -94
  496. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/internal/encode-shared.js.map +0 -1
  497. package/node_modules/htmlparser2/node_modules/entities/dist/commonjs/package.json +0 -3
  498. package/node_modules/htmlparser2/node_modules/entities/dist/esm/decode-codepoint.d.ts +0 -19
  499. package/node_modules/htmlparser2/node_modules/entities/dist/esm/decode-codepoint.d.ts.map +0 -1
  500. package/node_modules/htmlparser2/node_modules/entities/dist/esm/decode-codepoint.js +0 -72
  501. package/node_modules/htmlparser2/node_modules/entities/dist/esm/decode-codepoint.js.map +0 -1
  502. package/node_modules/htmlparser2/node_modules/entities/dist/esm/decode.d.ts +0 -205
  503. package/node_modules/htmlparser2/node_modules/entities/dist/esm/decode.d.ts.map +0 -1
  504. package/node_modules/htmlparser2/node_modules/entities/dist/esm/decode.js +0 -554
  505. package/node_modules/htmlparser2/node_modules/entities/dist/esm/decode.js.map +0 -1
  506. package/node_modules/htmlparser2/node_modules/entities/dist/esm/encode.d.ts +0 -22
  507. package/node_modules/htmlparser2/node_modules/entities/dist/esm/encode.d.ts.map +0 -1
  508. package/node_modules/htmlparser2/node_modules/entities/dist/esm/encode.js +0 -88
  509. package/node_modules/htmlparser2/node_modules/entities/dist/esm/encode.js.map +0 -1
  510. package/node_modules/htmlparser2/node_modules/entities/dist/esm/escape.d.ts +0 -46
  511. package/node_modules/htmlparser2/node_modules/entities/dist/esm/escape.d.ts.map +0 -1
  512. package/node_modules/htmlparser2/node_modules/entities/dist/esm/escape.js +0 -134
  513. package/node_modules/htmlparser2/node_modules/entities/dist/esm/escape.js.map +0 -1
  514. package/node_modules/htmlparser2/node_modules/entities/dist/esm/generated/decode-data-html.d.ts +0 -2
  515. package/node_modules/htmlparser2/node_modules/entities/dist/esm/generated/decode-data-html.d.ts.map +0 -1
  516. package/node_modules/htmlparser2/node_modules/entities/dist/esm/generated/decode-data-html.js +0 -4
  517. package/node_modules/htmlparser2/node_modules/entities/dist/esm/generated/decode-data-html.js.map +0 -1
  518. package/node_modules/htmlparser2/node_modules/entities/dist/esm/generated/decode-data-xml.d.ts +0 -2
  519. package/node_modules/htmlparser2/node_modules/entities/dist/esm/generated/decode-data-xml.d.ts.map +0 -1
  520. package/node_modules/htmlparser2/node_modules/entities/dist/esm/generated/decode-data-xml.js +0 -4
  521. package/node_modules/htmlparser2/node_modules/entities/dist/esm/generated/decode-data-xml.js.map +0 -1
  522. package/node_modules/htmlparser2/node_modules/entities/dist/esm/generated/encode-html.d.ts +0 -3
  523. package/node_modules/htmlparser2/node_modules/entities/dist/esm/generated/encode-html.d.ts.map +0 -1
  524. package/node_modules/htmlparser2/node_modules/entities/dist/esm/generated/encode-html.js +0 -11
  525. package/node_modules/htmlparser2/node_modules/entities/dist/esm/generated/encode-html.js.map +0 -1
  526. package/node_modules/htmlparser2/node_modules/entities/dist/esm/index.d.ts +0 -96
  527. package/node_modules/htmlparser2/node_modules/entities/dist/esm/index.d.ts.map +0 -1
  528. package/node_modules/htmlparser2/node_modules/entities/dist/esm/index.js.map +0 -1
  529. package/node_modules/htmlparser2/node_modules/entities/dist/esm/internal/bin-trie-flags.d.ts +0 -17
  530. package/node_modules/htmlparser2/node_modules/entities/dist/esm/internal/bin-trie-flags.d.ts.map +0 -1
  531. package/node_modules/htmlparser2/node_modules/entities/dist/esm/internal/bin-trie-flags.js +0 -18
  532. package/node_modules/htmlparser2/node_modules/entities/dist/esm/internal/bin-trie-flags.js.map +0 -1
  533. package/node_modules/htmlparser2/node_modules/entities/dist/esm/internal/decode-shared.d.ts +0 -2
  534. package/node_modules/htmlparser2/node_modules/entities/dist/esm/internal/decode-shared.d.ts.map +0 -1
  535. package/node_modules/htmlparser2/node_modules/entities/dist/esm/internal/decode-shared.js +0 -28
  536. package/node_modules/htmlparser2/node_modules/entities/dist/esm/internal/decode-shared.js.map +0 -1
  537. package/node_modules/htmlparser2/node_modules/entities/dist/esm/internal/encode-shared.d.ts +0 -32
  538. package/node_modules/htmlparser2/node_modules/entities/dist/esm/internal/encode-shared.d.ts.map +0 -1
  539. package/node_modules/htmlparser2/node_modules/entities/dist/esm/internal/encode-shared.js +0 -91
  540. package/node_modules/htmlparser2/node_modules/entities/dist/esm/internal/encode-shared.js.map +0 -1
  541. package/node_modules/htmlparser2/node_modules/entities/dist/esm/package.json +0 -3
  542. package/node_modules/htmlparser2/node_modules/entities/escape.d.ts +0 -3
  543. package/node_modules/htmlparser2/node_modules/entities/escape.js +0 -3
  544. package/node_modules/htmlparser2/node_modules/entities/package.json +0 -120
  545. package/node_modules/htmlparser2/node_modules/entities/src/decode-codepoint.ts +0 -81
  546. package/node_modules/htmlparser2/node_modules/entities/src/decode.ts +0 -685
  547. package/node_modules/htmlparser2/node_modules/entities/src/encode.ts +0 -93
  548. package/node_modules/htmlparser2/node_modules/entities/src/escape.ts +0 -161
  549. package/node_modules/htmlparser2/node_modules/entities/src/generated/.eslintrc.json +0 -10
  550. package/node_modules/htmlparser2/node_modules/entities/src/generated/decode-data-html.ts +0 -6
  551. package/node_modules/htmlparser2/node_modules/entities/src/generated/decode-data-xml.ts +0 -6
  552. package/node_modules/htmlparser2/node_modules/entities/src/generated/encode-html.ts +0 -17
  553. package/node_modules/htmlparser2/node_modules/entities/src/internal/bin-trie-flags.ts +0 -16
  554. package/node_modules/htmlparser2/node_modules/entities/src/internal/decode-shared.ts +0 -30
  555. package/node_modules/htmlparser2/node_modules/entities/src/internal/encode-shared.ts +0 -121
  556. package/node_modules/htmlparser2/package.json +0 -113
  557. /package/node_modules/{domelementtype → sanitize-html/node_modules/domelementtype}/LICENSE +0 -0
  558. /package/node_modules/{domelementtype → sanitize-html/node_modules/domelementtype}/readme.md +0 -0
  559. /package/node_modules/{domhandler → sanitize-html/node_modules/domhandler}/LICENSE +0 -0
  560. /package/node_modules/{domutils → sanitize-html/node_modules/domutils}/LICENSE +0 -0
  561. /package/node_modules/{htmlparser2 → sanitize-html}/node_modules/entities/LICENSE +0 -0
  562. /package/node_modules/{htmlparser2 → sanitize-html/node_modules/htmlparser2}/LICENSE +0 -0
@@ -0,0 +1,644 @@
1
+ const { fromCodePoint } = String;
2
+ import Tokenizer, { QuoteType } from "./Tokenizer.js";
3
+ const formTags = new Set([
4
+ "input",
5
+ "option",
6
+ "optgroup",
7
+ "select",
8
+ "button",
9
+ "datalist",
10
+ "textarea",
11
+ ]);
12
+ const pTag = new Set(["p"]);
13
+ const headingTags = new Set(["h1", "h2", "h3", "h4", "h5", "h6", "p"]);
14
+ const tableSectionTags = new Set(["thead", "tbody"]);
15
+ const ddtTags = new Set(["dd", "dt"]);
16
+ const rtpTags = new Set(["rt", "rp"]);
17
+ const openImpliesClose = new Map([
18
+ ["tr", new Set(["tr", "th", "td"])],
19
+ ["th", new Set(["th"])],
20
+ ["td", new Set(["thead", "th", "td"])],
21
+ ["body", new Set(["head", "link", "script"])],
22
+ ["a", new Set(["a"])],
23
+ ["li", new Set(["li"])],
24
+ ["p", pTag],
25
+ ["h1", headingTags],
26
+ ["h2", headingTags],
27
+ ["h3", headingTags],
28
+ ["h4", headingTags],
29
+ ["h5", headingTags],
30
+ ["h6", headingTags],
31
+ ["select", formTags],
32
+ ["input", formTags],
33
+ ["output", formTags],
34
+ ["button", formTags],
35
+ ["datalist", formTags],
36
+ ["textarea", formTags],
37
+ ["option", new Set(["option"])],
38
+ ["optgroup", new Set(["optgroup", "option"])],
39
+ ["dd", ddtTags],
40
+ ["dt", ddtTags],
41
+ ["address", pTag],
42
+ ["article", pTag],
43
+ ["aside", pTag],
44
+ ["blockquote", pTag],
45
+ ["details", pTag],
46
+ ["div", pTag],
47
+ ["dl", pTag],
48
+ ["fieldset", pTag],
49
+ ["figcaption", pTag],
50
+ ["figure", pTag],
51
+ ["footer", pTag],
52
+ ["form", pTag],
53
+ ["header", pTag],
54
+ ["hr", pTag],
55
+ ["main", pTag],
56
+ ["nav", pTag],
57
+ ["ol", pTag],
58
+ ["pre", pTag],
59
+ ["section", pTag],
60
+ ["table", pTag],
61
+ ["ul", pTag],
62
+ ["rt", rtpTags],
63
+ ["rp", rtpTags],
64
+ ["tbody", tableSectionTags],
65
+ ["tfoot", tableSectionTags],
66
+ ]);
67
+ const DOCUMENT_TYPE = "doctype";
68
+ const voidElements = new Set([
69
+ "area",
70
+ "base",
71
+ "basefont",
72
+ "br",
73
+ "col",
74
+ "command",
75
+ "embed",
76
+ "frame",
77
+ "hr",
78
+ "img",
79
+ "input",
80
+ "isindex",
81
+ "keygen",
82
+ "link",
83
+ "meta",
84
+ "param",
85
+ "source",
86
+ "track",
87
+ "wbr",
88
+ ]);
89
+ const foreignContextElements = new Set(["math", "svg"]);
90
+ /**
91
+ * Elements that can be used to integrate HTML content within foreign namespaces (e.g., SVG or MathML).
92
+ *
93
+ * Entries must use the SVG-adjusted casing (e.g. "foreignObject" not
94
+ * "foreignobject") since they are compared against adjusted tag names.
95
+ */
96
+ const htmlIntegrationElements = new Set([
97
+ "mi",
98
+ "mo",
99
+ "mn",
100
+ "ms",
101
+ "mtext",
102
+ "annotation-xml",
103
+ "foreignObject",
104
+ "desc",
105
+ "title",
106
+ ]);
107
+ const svgTagNameAdjustments = new Map([
108
+ ["altglyph", "altGlyph"],
109
+ ["altglyphdef", "altGlyphDef"],
110
+ ["altglyphitem", "altGlyphItem"],
111
+ ["animatecolor", "animateColor"],
112
+ ["animatemotion", "animateMotion"],
113
+ ["animatetransform", "animateTransform"],
114
+ ["clippath", "clipPath"],
115
+ ["feblend", "feBlend"],
116
+ ["fecolormatrix", "feColorMatrix"],
117
+ ["fecomponenttransfer", "feComponentTransfer"],
118
+ ["fecomposite", "feComposite"],
119
+ ["feconvolvematrix", "feConvolveMatrix"],
120
+ ["fediffuselighting", "feDiffuseLighting"],
121
+ ["fedisplacementmap", "feDisplacementMap"],
122
+ ["fedistantlight", "feDistantLight"],
123
+ ["fedropshadow", "feDropShadow"],
124
+ ["feflood", "feFlood"],
125
+ ["fefunca", "feFuncA"],
126
+ ["fefuncb", "feFuncB"],
127
+ ["fefuncg", "feFuncG"],
128
+ ["fefuncr", "feFuncR"],
129
+ ["fegaussianblur", "feGaussianBlur"],
130
+ ["feimage", "feImage"],
131
+ ["femerge", "feMerge"],
132
+ ["femergenode", "feMergeNode"],
133
+ ["femorphology", "feMorphology"],
134
+ ["feoffset", "feOffset"],
135
+ ["fepointlight", "fePointLight"],
136
+ ["fespecularlighting", "feSpecularLighting"],
137
+ ["fespotlight", "feSpotLight"],
138
+ ["fetile", "feTile"],
139
+ ["feturbulence", "feTurbulence"],
140
+ ["foreignobject", "foreignObject"],
141
+ ["glyphref", "glyphRef"],
142
+ ["lineargradient", "linearGradient"],
143
+ ["radialgradient", "radialGradient"],
144
+ ["textpath", "textPath"],
145
+ ]);
146
+ var ForeignContext;
147
+ (function (ForeignContext) {
148
+ ForeignContext[ForeignContext["None"] = 0] = "None";
149
+ ForeignContext[ForeignContext["Svg"] = 1] = "Svg";
150
+ ForeignContext[ForeignContext["MathML"] = 2] = "MathML";
151
+ })(ForeignContext || (ForeignContext = {}));
152
+ const reNameEnd = /\s|\//;
153
+ /**
154
+ * Incremental parser implementation.
155
+ */
156
+ export class Parser {
157
+ options;
158
+ /** The start index of the last event. */
159
+ startIndex = 0;
160
+ /** The end index of the last event. */
161
+ endIndex = 0;
162
+ /**
163
+ * Store the start index of the current open tag,
164
+ * so we can update the start index for attributes.
165
+ */
166
+ openTagStart = 0;
167
+ tagname = "";
168
+ attribname = "";
169
+ attribvalue = "";
170
+ attribs = null;
171
+ stack = [];
172
+ foreignContext;
173
+ cbs;
174
+ lowerCaseTagNames;
175
+ lowerCaseAttributeNames;
176
+ recognizeSelfClosing;
177
+ /** We are parsing HTML. Inverse of the `xmlMode` option. */
178
+ htmlMode;
179
+ tokenizer;
180
+ buffers = [];
181
+ bufferOffset = 0;
182
+ /** The index of the last written buffer. Used when resuming after a `pause()`. */
183
+ writeIndex = 0;
184
+ /** Indicates whether the parser has finished running / `.end` has been called. */
185
+ ended = false;
186
+ constructor(cbs, options = {}) {
187
+ this.options = options;
188
+ this.cbs = cbs ?? {};
189
+ this.htmlMode = !this.options.xmlMode;
190
+ this.lowerCaseTagNames = options.lowerCaseTags ?? this.htmlMode;
191
+ this.lowerCaseAttributeNames =
192
+ options.lowerCaseAttributeNames ?? this.htmlMode;
193
+ this.recognizeSelfClosing =
194
+ options.recognizeSelfClosing ?? !this.htmlMode;
195
+ this.tokenizer = new (options.Tokenizer ?? Tokenizer)(this.options, this);
196
+ this.foreignContext = [ForeignContext.None];
197
+ this.cbs.onparserinit?.(this);
198
+ }
199
+ // Tokenizer event handlers
200
+ /**
201
+ * @param start Start index for the current parser event.
202
+ * @param endIndex End index for the current parser event.
203
+ * @internal
204
+ */
205
+ ontext(start, endIndex) {
206
+ const data = this.getSlice(start, endIndex);
207
+ this.endIndex = endIndex - 1;
208
+ this.cbs.ontext?.(data);
209
+ this.startIndex = endIndex;
210
+ }
211
+ /**
212
+ * @param cp Current Unicode code point.
213
+ * @param endIndex End index for the current parser event.
214
+ * @internal
215
+ */
216
+ ontextentity(cp, endIndex) {
217
+ this.endIndex = endIndex - 1;
218
+ this.cbs.ontext?.(fromCodePoint(cp));
219
+ this.startIndex = endIndex;
220
+ }
221
+ /** @internal */
222
+ isInForeignContext() {
223
+ return this.foreignContext[0] !== ForeignContext.None;
224
+ }
225
+ /**
226
+ * Checks if the current tag is a void element. Override this if you want
227
+ * to specify your own additional void elements.
228
+ * @param name Name of the pseudo selector.
229
+ */
230
+ isVoidElement(name) {
231
+ return this.htmlMode && voidElements.has(name);
232
+ }
233
+ /**
234
+ * Read a tag name from the buffer.
235
+ *
236
+ * When `lowerCaseTagNames` is enabled (the default in HTML mode), the name
237
+ * is lowercased and may be adjusted for SVG casing or the `image` → `img`
238
+ * alias.
239
+ * @param start Start index of the tag name in the buffer.
240
+ * @param endIndex End index of the tag name in the buffer.
241
+ */
242
+ readTagName(start, endIndex) {
243
+ const name = this.lowerCaseTagNames
244
+ ? this.getSlice(start, endIndex).toLowerCase()
245
+ : this.getSlice(start, endIndex);
246
+ if (!(this.lowerCaseTagNames && this.htmlMode)) {
247
+ return name;
248
+ }
249
+ if (this.foreignContext[0] === ForeignContext.Svg) {
250
+ return svgTagNameAdjustments.get(name) ?? name;
251
+ }
252
+ /*
253
+ * Closing tags for SVG elements inside HTML integration points
254
+ * (e.g. </foreignObject> while inside its own content) need case
255
+ * adjustment so the name matches what was pushed to the stack.
256
+ * `foreignContext.length > 1` means a foreign ancestor exists —
257
+ * the base [None] entry plus at least one pushed context.
258
+ */
259
+ if (this.foreignContext.length > 1) {
260
+ const adjusted = svgTagNameAdjustments.get(name);
261
+ if (adjusted !== undefined && this.stack.includes(adjusted)) {
262
+ return adjusted;
263
+ }
264
+ }
265
+ if (!this.isInForeignContext()) {
266
+ return name === "image" ? "img" : name;
267
+ }
268
+ return name;
269
+ }
270
+ /**
271
+ * @param start Start index for the current parser event.
272
+ * @param endIndex End index for the current parser event.
273
+ * @internal
274
+ */
275
+ onopentagname(start, endIndex) {
276
+ this.endIndex = endIndex;
277
+ this.emitOpenTag(this.readTagName(start, endIndex));
278
+ }
279
+ emitOpenTag(name) {
280
+ this.openTagStart = this.startIndex;
281
+ this.tagname = name;
282
+ /*
283
+ * The spec ignores a second <form> when one is already open.
284
+ * Setting tagname to "" suppresses all downstream effects: attribs
285
+ * stays null so endOpenTag is a no-op, and closeCurrentTag can't
286
+ * match "" on the stack.
287
+ */
288
+ if (this.htmlMode && name === "form" && this.stack.includes("form")) {
289
+ this.tagname = "";
290
+ return;
291
+ }
292
+ const impliesClose = this.htmlMode && openImpliesClose.get(name);
293
+ if (impliesClose) {
294
+ while (this.stack.length > 0 && impliesClose.has(this.stack[0])) {
295
+ this.popElement(true);
296
+ }
297
+ }
298
+ if (!this.isVoidElement(name)) {
299
+ this.stack.unshift(name);
300
+ if (this.htmlMode) {
301
+ if (name === "svg") {
302
+ this.foreignContext.unshift(ForeignContext.Svg);
303
+ }
304
+ else if (name === "math") {
305
+ this.foreignContext.unshift(ForeignContext.MathML);
306
+ }
307
+ else if (htmlIntegrationElements.has(name)) {
308
+ this.foreignContext.unshift(ForeignContext.None);
309
+ }
310
+ }
311
+ }
312
+ this.cbs.onopentagname?.(name);
313
+ if (this.cbs.onopentag)
314
+ this.attribs = {};
315
+ }
316
+ endOpenTag(isImplied) {
317
+ this.startIndex = this.openTagStart;
318
+ if (this.attribs) {
319
+ this.cbs.onopentag?.(this.tagname, this.attribs, isImplied);
320
+ this.attribs = null;
321
+ }
322
+ if (this.cbs.onclosetag && this.isVoidElement(this.tagname)) {
323
+ this.cbs.onclosetag(this.tagname, true);
324
+ }
325
+ this.tagname = "";
326
+ }
327
+ /**
328
+ * @param endIndex End index for the current parser event.
329
+ * @internal
330
+ */
331
+ onopentagend(endIndex) {
332
+ this.endIndex = endIndex;
333
+ this.endOpenTag(false);
334
+ // Set `startIndex` for next node
335
+ this.startIndex = endIndex + 1;
336
+ }
337
+ /**
338
+ * @param start Start index for the current parser event.
339
+ * @param endIndex End index for the current parser event.
340
+ * @internal
341
+ */
342
+ onclosetag(start, endIndex) {
343
+ this.endIndex = endIndex;
344
+ const name = this.readTagName(start, endIndex);
345
+ if (!this.isVoidElement(name)) {
346
+ const pos = this.stack.indexOf(name);
347
+ if (pos !== -1) {
348
+ for (let index = 0; index < pos; index++) {
349
+ this.popElement(true);
350
+ }
351
+ this.popElement(false);
352
+ }
353
+ else if (this.htmlMode && name === "p") {
354
+ // Implicit open before close
355
+ this.emitOpenTag("p");
356
+ this.closeCurrentTag(true);
357
+ }
358
+ }
359
+ else if (this.htmlMode && name === "br") {
360
+ // We can't use `emitOpenTag` for implicit open, as `br` would be implicitly closed.
361
+ this.cbs.onopentagname?.("br");
362
+ this.cbs.onopentag?.("br", {}, true);
363
+ this.cbs.onclosetag?.("br", false);
364
+ }
365
+ // Set `startIndex` for next node
366
+ this.startIndex = endIndex + 1;
367
+ }
368
+ /**
369
+ * @param endIndex End index for the current parser event.
370
+ * @internal
371
+ */
372
+ onselfclosingtag(endIndex) {
373
+ this.endIndex = endIndex;
374
+ if (this.recognizeSelfClosing || this.isInForeignContext()) {
375
+ this.closeCurrentTag(false);
376
+ // Set `startIndex` for next node
377
+ this.startIndex = endIndex + 1;
378
+ }
379
+ else {
380
+ // Ignore the fact that the tag is self-closing.
381
+ this.onopentagend(endIndex);
382
+ }
383
+ }
384
+ /**
385
+ * Pop the top element off the stack, emit a close event, and maintain
386
+ * the foreign context stack.
387
+ * @param implied Whether this close is implied (not from an explicit end tag).
388
+ */
389
+ popElement(implied) {
390
+ // biome-ignore lint/style/noNonNullAssertion: The element is guaranteed to exist.
391
+ const element = this.stack.shift();
392
+ if (this.htmlMode &&
393
+ (foreignContextElements.has(element) ||
394
+ htmlIntegrationElements.has(element))) {
395
+ this.foreignContext.shift();
396
+ }
397
+ this.cbs.onclosetag?.(element, implied);
398
+ }
399
+ closeCurrentTag(isOpenImplied) {
400
+ const name = this.tagname;
401
+ this.endOpenTag(isOpenImplied);
402
+ // Self-closing tags will be on the top of the stack
403
+ if (this.stack[0] === name) {
404
+ this.popElement(!isOpenImplied);
405
+ }
406
+ }
407
+ /**
408
+ * @param start Start index for the current parser event.
409
+ * @param endIndex End index for the current parser event.
410
+ * @internal
411
+ */
412
+ onattribname(start, endIndex) {
413
+ this.startIndex = start;
414
+ const name = this.getSlice(start, endIndex);
415
+ this.attribname = this.lowerCaseAttributeNames
416
+ ? name.toLowerCase()
417
+ : name;
418
+ }
419
+ /**
420
+ * @param start Start index for the current parser event.
421
+ * @param endIndex End index for the current parser event.
422
+ * @internal
423
+ */
424
+ onattribdata(start, endIndex) {
425
+ this.attribvalue += this.getSlice(start, endIndex);
426
+ }
427
+ /**
428
+ * @param cp Current Unicode code point.
429
+ * @internal
430
+ */
431
+ onattribentity(cp) {
432
+ this.attribvalue += fromCodePoint(cp);
433
+ }
434
+ /**
435
+ * @param quote Quote type used for the current attribute.
436
+ * @param endIndex End index for the current parser event.
437
+ * @internal
438
+ */
439
+ onattribend(quote, endIndex) {
440
+ this.endIndex = endIndex;
441
+ this.cbs.onattribute?.(this.attribname, this.attribvalue, quote === QuoteType.Double
442
+ ? '"'
443
+ : quote === QuoteType.Single
444
+ ? "'"
445
+ : quote === QuoteType.NoValue
446
+ ? undefined
447
+ : null);
448
+ if (this.attribs && !Object.hasOwn(this.attribs, this.attribname)) {
449
+ this.attribs[this.attribname] = this.attribvalue;
450
+ }
451
+ this.attribvalue = "";
452
+ }
453
+ getInstructionName(value) {
454
+ const index = value.search(reNameEnd);
455
+ let name = index < 0 ? value : value.substr(0, index);
456
+ if (this.lowerCaseTagNames) {
457
+ name = name.toLowerCase();
458
+ }
459
+ return name;
460
+ }
461
+ /**
462
+ * @param start Start index for the current parser event.
463
+ * @param endIndex End index for the current parser event.
464
+ * @internal
465
+ */
466
+ ondeclaration(start, endIndex) {
467
+ this.endIndex = endIndex;
468
+ const value = this.getSlice(start, endIndex);
469
+ if (this.cbs.onprocessinginstruction) {
470
+ /*
471
+ * In HTML mode, ondeclaration is only reached for DOCTYPE
472
+ * (the tokenizer routes everything else to bogus comments).
473
+ */
474
+ const name = this.htmlMode
475
+ ? this.lowerCaseTagNames
476
+ ? DOCUMENT_TYPE
477
+ : value.slice(0, DOCUMENT_TYPE.length)
478
+ : this.getInstructionName(value);
479
+ this.cbs.onprocessinginstruction(`!${name}`, `!${value}`);
480
+ }
481
+ // Set `startIndex` for next node
482
+ this.startIndex = endIndex + 1;
483
+ }
484
+ /**
485
+ * @param start Start index for the current parser event.
486
+ * @param endIndex End index for the current parser event.
487
+ * @internal
488
+ */
489
+ onprocessinginstruction(start, endIndex) {
490
+ this.endIndex = endIndex;
491
+ const value = this.getSlice(start, endIndex);
492
+ if (this.cbs.onprocessinginstruction) {
493
+ const name = this.getInstructionName(value);
494
+ this.cbs.onprocessinginstruction(`?${name}`, `?${value}`);
495
+ }
496
+ // Set `startIndex` for next node
497
+ this.startIndex = endIndex + 1;
498
+ }
499
+ /**
500
+ * @param start Start index for the current parser event.
501
+ * @param endIndex End index for the current parser event.
502
+ * @param offset Offset applied when computing parser indices.
503
+ * @internal
504
+ */
505
+ oncomment(start, endIndex, offset) {
506
+ this.endIndex = endIndex;
507
+ this.cbs.oncomment?.(this.getSlice(start, endIndex - offset));
508
+ this.cbs.oncommentend?.();
509
+ // Set `startIndex` for next node
510
+ this.startIndex = endIndex + 1;
511
+ }
512
+ /**
513
+ * @param start Start index for the current parser event.
514
+ * @param endIndex End index for the current parser event.
515
+ * @param offset Offset applied when computing parser indices.
516
+ * @internal
517
+ */
518
+ oncdata(start, endIndex, offset) {
519
+ this.endIndex = endIndex;
520
+ const value = this.getSlice(start, endIndex - offset);
521
+ if (!this.htmlMode || this.options.recognizeCDATA) {
522
+ this.cbs.oncdatastart?.();
523
+ this.cbs.ontext?.(value);
524
+ this.cbs.oncdataend?.();
525
+ }
526
+ else if (this.isInForeignContext()) {
527
+ this.cbs.ontext?.(value);
528
+ }
529
+ else {
530
+ this.cbs.oncomment?.(`[CDATA[${value}]]`);
531
+ this.cbs.oncommentend?.();
532
+ }
533
+ // Set `startIndex` for next node
534
+ this.startIndex = endIndex + 1;
535
+ }
536
+ /** @internal */
537
+ onend() {
538
+ if (this.cbs.onclosetag) {
539
+ // Set the end index for all remaining tags
540
+ this.endIndex = this.startIndex;
541
+ for (let index = 0; index < this.stack.length; index++) {
542
+ this.cbs.onclosetag(this.stack[index], true);
543
+ }
544
+ }
545
+ this.cbs.onend?.();
546
+ }
547
+ /**
548
+ * Resets the parser to a blank state, ready to parse a new HTML document
549
+ */
550
+ reset() {
551
+ this.cbs.onreset?.();
552
+ this.tokenizer.reset();
553
+ this.tagname = "";
554
+ this.attribname = "";
555
+ this.attribvalue = "";
556
+ this.attribs = null;
557
+ this.stack.length = 0;
558
+ this.startIndex = 0;
559
+ this.endIndex = 0;
560
+ this.cbs.onparserinit?.(this);
561
+ this.buffers.length = 0;
562
+ this.foreignContext.length = 0;
563
+ this.foreignContext.unshift(ForeignContext.None);
564
+ this.bufferOffset = 0;
565
+ this.writeIndex = 0;
566
+ this.ended = false;
567
+ }
568
+ /**
569
+ * Resets the parser, then parses a complete document and
570
+ * pushes it to the handler.
571
+ * @param data Document to parse.
572
+ */
573
+ parseComplete(data) {
574
+ this.reset();
575
+ this.end(data);
576
+ }
577
+ getSlice(start, end) {
578
+ if (start === end) {
579
+ return "";
580
+ }
581
+ while (start - this.bufferOffset >= this.buffers[0].length) {
582
+ this.shiftBuffer();
583
+ }
584
+ let slice = this.buffers[0].slice(start - this.bufferOffset, end - this.bufferOffset);
585
+ while (end - this.bufferOffset > this.buffers[0].length) {
586
+ this.shiftBuffer();
587
+ slice += this.buffers[0].slice(0, end - this.bufferOffset);
588
+ }
589
+ return slice;
590
+ }
591
+ shiftBuffer() {
592
+ this.bufferOffset += this.buffers[0].length;
593
+ this.writeIndex--;
594
+ this.buffers.shift();
595
+ }
596
+ /**
597
+ * Parses a chunk of data and calls the corresponding callbacks.
598
+ * @param chunk Chunk to parse.
599
+ */
600
+ write(chunk) {
601
+ if (this.ended) {
602
+ this.cbs.onerror?.(new Error(".write() after done!"));
603
+ return;
604
+ }
605
+ this.buffers.push(chunk);
606
+ if (this.tokenizer.running) {
607
+ this.tokenizer.write(chunk);
608
+ this.writeIndex++;
609
+ }
610
+ }
611
+ /**
612
+ * Parses the end of the buffer and clears the stack, calls onend.
613
+ * @param chunk Optional final chunk to parse.
614
+ */
615
+ end(chunk) {
616
+ if (this.ended) {
617
+ this.cbs.onerror?.(new Error(".end() after done!"));
618
+ return;
619
+ }
620
+ if (chunk)
621
+ this.write(chunk);
622
+ this.ended = true;
623
+ this.tokenizer.end();
624
+ }
625
+ /**
626
+ * Pauses parsing. The parser won't emit events until `resume` is called.
627
+ */
628
+ pause() {
629
+ this.tokenizer.pause();
630
+ }
631
+ /**
632
+ * Resumes parsing after `pause` was called.
633
+ */
634
+ resume() {
635
+ this.tokenizer.resume();
636
+ while (this.tokenizer.running &&
637
+ this.writeIndex < this.buffers.length) {
638
+ this.tokenizer.write(this.buffers[this.writeIndex++]);
639
+ }
640
+ if (this.ended)
641
+ this.tokenizer.end();
642
+ }
643
+ }
644
+ //# sourceMappingURL=Parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Parser.js","sourceRoot":"","sources":["../src/Parser.ts"],"names":[],"mappings":"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"}