@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
@@ -371,19 +371,28 @@ function captureSegment (state, start, end, checkJson) {
371
371
  }
372
372
  }
373
373
 
374
+ function chargeMergeWork (state) {
375
+ state.totalMergeKeys++
376
+
377
+ if (state.maxTotalMergeKeys !== -1 && state.totalMergeKeys > state.maxTotalMergeKeys) {
378
+ throwError(state, 'merge keys exceeded maxTotalMergeKeys (' + state.maxTotalMergeKeys + ')')
379
+ }
380
+ }
381
+
374
382
  function mergeMappings (state, destination, source, overridableKeys) {
375
383
  if (!common.isObject(source)) {
376
384
  throwError(state, 'cannot merge mappings; the provided source object is unacceptable')
377
385
  }
378
386
 
387
+ // Count the source mapping itself to bound sequences of empty mappings.
388
+ chargeMergeWork(state)
389
+
379
390
  const sourceKeys = Object.keys(source)
380
391
 
381
392
  for (let index = 0, quantity = sourceKeys.length; index < quantity; index += 1) {
382
393
  const key = sourceKeys[index]
383
394
 
384
- if (state.maxTotalMergeKeys !== -1 && ++state.totalMergeKeys > state.maxTotalMergeKeys) {
385
- throwError(state, 'merge keys exceeded maxTotalMergeKeys (' + state.maxTotalMergeKeys + ')')
386
- }
395
+ chargeMergeWork(state)
387
396
 
388
397
  if (!_hasOwnProperty.call(destination, key)) {
389
398
  setProperty(destination, key, source[key])
@@ -426,6 +435,10 @@ function storeMappingPair (state, _result, overridableKeys, keyTag, keyNode, val
426
435
 
427
436
  if (keyTag === 'tag:yaml.org,2002:merge') {
428
437
  if (Array.isArray(valueNode)) {
438
+ if (valueNode.length > 100) {
439
+ throwError(state, 'abnormal merge sequence size')
440
+ }
441
+
429
442
  for (let index = 0, quantity = valueNode.length; index < quantity; index += 1) {
430
443
  mergeMappings(state, _result, valueNode[index], overridableKeys)
431
444
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "js-yaml",
3
- "version": "4.3.1",
3
+ "version": "4.3.2",
4
4
  "description": "YAML 1.2 parser and serializer",
5
5
  "keywords": [
6
6
  "yaml",
@@ -696,6 +696,19 @@ And you can forbid the use of protocol-relative URLs (starting with `//`) to acc
696
696
  allowProtocolRelative: false
697
697
  ```
698
698
 
699
+ ### SVG animations of URL attributes are discarded
700
+
701
+ For security reasons, if your `allowedTags` includes the SVG animation elements (`animate`, `animateColor`, `animateMotion`, `animateTransform` and `set`), note that an animation which targets a URL attribute is always discarded:
702
+
703
+ ```html
704
+ <!-- Discarded: this would set the link's href to javascript: after sanitization -->
705
+ <animate attributeName="href" values="#safe;javascript:alert(1)" dur=".01s" fill="freeze">
706
+ ```
707
+
708
+ An animation element carries no URL itself. It names the attribute it animates with `attributeName` and supplies the new value in `values`, `from`, `to` or `by`, which the browser copies into the target attribute after sanitization. Scheme checking those values is not sufficient, because `values` is a semicolon-separated *list* of destinations, so we discard the animation instead whenever `attributeName` selects `href`, `xlink:href` or any other attribute listed in `allowedSchemesAppliedToAttributes`.
709
+
710
+ Animations of attributes that are not URLs, such as `fill` or `opacity`, are unaffected.
711
+
699
712
  ### Discarding the entire contents of a disallowed tag
700
713
 
701
714
  Normally, with a few exceptions, if a tag is not allowed, all of the text within it is preserved, and so are any allowed tags within it.
@@ -12,6 +12,17 @@ const mediaTags = [
12
12
  ];
13
13
  // Tags that are inherently vulnerable to being used in XSS attacks.
14
14
  const vulnerableTags = [ 'script', 'style' ];
15
+ // SVG SMIL animation elements. These do not carry a URL themselves: they
16
+ // retarget an attribute of another element, naming it with `attributeName`
17
+ // and supplying the new value(s) in `values`, `from`, `to` and `by`.
18
+ const svgAnimationTags = [
19
+ 'animate', 'animatecolor', 'animatemotion', 'animatetransform', 'set'
20
+ ];
21
+ // Attribute names that always name a URL sink, whatever
22
+ // `allowedSchemesAppliedToAttributes` has been narrowed to. A namespace prefix
23
+ // is ignored when matching, so `xlink:href` and any other prefixed spelling of
24
+ // `href` are covered.
25
+ const alwaysUrlAttributes = [ 'href' ];
15
26
 
16
27
  function each(obj, cb) {
17
28
  if (obj) {
@@ -272,7 +283,7 @@ function sanitizeHtml(html, options, _recursing) {
272
283
  }
273
284
  }
274
285
 
275
- if (!tagAllowed(name) || (options.disallowedTagsMode === 'recursiveEscape' && !isEmptyObject(skipMap)) || (options.nestingLimit != null && depth >= options.nestingLimit)) {
286
+ if (!tagAllowed(name) || animatesUrlAttribute(name, attribs) || (options.disallowedTagsMode === 'recursiveEscape' && !isEmptyObject(skipMap)) || (options.nestingLimit != null && depth >= options.nestingLimit)) {
276
287
  skip = true;
277
288
  skipMap[depth] = true;
278
289
  if (options.disallowedTagsMode === 'discard' || options.disallowedTagsMode === 'completelyDiscard') {
@@ -540,8 +551,13 @@ function sanitizeHtml(html, options, _recursing) {
540
551
  result += ' />';
541
552
  } else {
542
553
  result += '>';
543
- if (frame.innerText && !hasText && !options.textFilter) {
544
- result += escapeHtml(frame.innerText);
554
+ if (frame.innerText && !hasText) {
555
+ const escaped = escapeHtml(frame.innerText);
556
+ if (options.textFilter) {
557
+ result += options.textFilter(escaped, name);
558
+ } else {
559
+ result += escaped;
560
+ }
545
561
  addedText = true;
546
562
  }
547
563
  }
@@ -573,14 +589,39 @@ function sanitizeHtml(html, options, _recursing) {
573
589
  // which have their own collection of XSS vectors.
574
590
  result += text;
575
591
  } else if (tag && tagAllowed(tag) && (options.disallowedTagsMode === 'discard' || options.disallowedTagsMode === 'completelyDiscard') && (tag === 'textarea' || tag === 'xmp')) {
576
- // htmlparser2 treats <textarea> and <xmp> as raw text elements and
577
- // does NOT decode entities inside them. The text is already properly
578
- // encoded, so pass it through without additional escaping to avoid
579
- // double-encoding. Other "nonTextTags" like <option> are not raw text
580
- // elements in htmlparser2, so their contents are decoded and must be
581
- // escaped below like any other text (important to prevent XSS via
582
- // entity-encoded payloads such as <option>&lt;script&gt;...&lt;/script&gt;</option>).
583
- result += text;
592
+ // <textarea> and <xmp> hold text that must not be re-emitted verbatim:
593
+ // if a raw `<` survives into the output it can reopen a tag when the
594
+ // result is re-parsed by a browser, smuggling non-allowlisted markup
595
+ // through the allowlist (mutation-XSS, GHSA-jxwj-j7wr-gfrw e.g. the
596
+ // `</textarea/>` solidus mis-close). We therefore ALWAYS escape this
597
+ // content rather than passing it through. Escaping unconditionally also
598
+ // closes the related SVG/MathML foreign-content bypass (where the HTML5
599
+ // parser treats <textarea>/<xmp> as ordinary foreign elements and a
600
+ // browser re-parses their contents as live markup, e.g.
601
+ // `<svg><textarea><img src=x onerror=alert(1)></textarea></svg>`): since
602
+ // we never re-emit raw text for these tags, no namespace check is
603
+ // needed. The two tags need different escaping because htmlparser2
604
+ // tokenizes them differently:
605
+ if (tag === 'xmp') {
606
+ // <xmp> is a raw-text (CDATA) element: entities are NOT decoded, so
607
+ // its content reaches us as raw source that is already entity-encoded.
608
+ // Escape only the angle brackets so a literal `<` cannot reopen a tag,
609
+ // while leaving `&` untouched to avoid double-encoding entities that
610
+ // are already encoded in the source.
611
+ result += text.replace(/</g, '&lt;').replace(/>/g, '&gt;');
612
+ } else {
613
+ // <textarea> is an RCDATA element: htmlparser2 (>= 11) decodes
614
+ // entities inside it, so its content reaches us as plain decoded text.
615
+ // It must therefore be fully escaped like any other text — escaping
616
+ // `&` as well as `<`/`>` — so entities round-trip faithfully (no
617
+ // double-encoding, see the CVE-2026-40186 regression tests) and no
618
+ // `<` can reopen a tag.
619
+ result += escapeHtml(text, false);
620
+ }
621
+ // Other "nonTextTags" like <option> are not raw text elements in
622
+ // htmlparser2, so their contents are decoded and must be escaped below
623
+ // like any other text (important to prevent XSS via entity-encoded
624
+ // payloads such as <option>&lt;script&gt;...&lt;/script&gt;</option>).
584
625
  } else if (!addedText) {
585
626
  const escaped = escapeHtml(text, false);
586
627
  if (options.textFilter) {
@@ -743,6 +784,39 @@ function sanitizeHtml(html, options, _recursing) {
743
784
  });
744
785
  }
745
786
 
787
+ // True if this is an SVG SMIL animation element that animates a URL-bearing
788
+ // attribute, e.g. `<animate attributeName="href" values="#safe;javascript:...">`.
789
+ //
790
+ // Such an element carries no URL of its own: the browser copies the animation
791
+ // values into the target attribute *after* sanitization, so a `javascript:`
792
+ // destination reaches a live link sink without ever being scheme checked.
793
+ // `values` compounds this, because it is a semicolon-separated LIST of
794
+ // destinations: checking it as one flat URL only validates its first entry, so
795
+ // a leading `#safe` fragment carries the rest of the list past the policy.
796
+ //
797
+ // Re-checking each entry of each value attribute would leave the safety of the
798
+ // output resting on our imitation of SMIL list parsing, so we reject the
799
+ // animation on the strength of its target instead. Animations of attributes
800
+ // that are not URL sinks, such as `fill` or `opacity`, are unaffected.
801
+ function animatesUrlAttribute(name, attribs) {
802
+ if (svgAnimationTags.indexOf(name.toLowerCase()) === -1) {
803
+ return false;
804
+ }
805
+ const schemeCheckedAttributes = options.allowedSchemesAppliedToAttributes || [];
806
+ return Object.keys(attribs || {}).some(function(attributeName) {
807
+ if (attributeName.toLowerCase() !== 'attributename') {
808
+ return false;
809
+ }
810
+ const target = (attribs[attributeName] || '').trim().toLowerCase();
811
+ // The target may be namespace prefixed (`xlink:href`). Which prefixes are
812
+ // in scope depends on the document, so consider the local name too.
813
+ const localName = target.slice(target.lastIndexOf(':') + 1);
814
+ return alwaysUrlAttributes.indexOf(localName) !== -1 ||
815
+ schemeCheckedAttributes.indexOf(target) !== -1 ||
816
+ schemeCheckedAttributes.indexOf(localName) !== -1;
817
+ });
818
+ }
819
+
746
820
  function parseUrl(value) {
747
821
  value = value.replace(/^(\w+:)?\s*[\\/]\s*[\\/]/, '$1//');
748
822
  if (value.startsWith('relative:')) {
@@ -953,7 +1027,7 @@ sanitizeHtml.defaults = {
953
1027
  'alt'
954
1028
  ],
955
1029
  // Lots of these won't come up by default because we don't allow them
956
- selfClosing: [ 'img', 'br', 'hr', 'area', 'base', 'basefont', 'input', 'link', 'meta' ],
1030
+ selfClosing: [ 'img', 'br', 'hr', 'area', 'base', 'basefont', 'input', 'link', 'meta', 'col' ],
957
1031
  // URL schemes we permit
958
1032
  allowedSchemes: [ 'http', 'https', 'ftp', 'mailto', 'tel' ],
959
1033
  allowedSchemesByTag: {},
@@ -0,0 +1,7 @@
1
+ Copyright © 2022 The Cheerio contributors
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
4
+
5
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
6
+
7
+ THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,4 +1,4 @@
1
- # dom-serializer [![Build Status](https://travis-ci.com/cheeriojs/dom-serializer.svg?branch=master)](https://travis-ci.com/cheeriojs/dom-serializer)
1
+ # dom-serializer [![Node.js CI](https://github.com/cheeriojs/dom-serializer/actions/workflows/nodejs-test.yml/badge.svg)](https://github.com/cheeriojs/dom-serializer/actions/workflows/nodejs-test.yml)
2
2
 
3
3
  Renders a [domhandler](https://github.com/fb55/domhandler) DOM node or an array of domhandler DOM nodes to a string.
4
4
 
@@ -33,11 +33,13 @@ Can be thought of as the equivalent of the `outerHTML` of the passed node(s).
33
33
 
34
34
  ### `encodeEntities`
35
35
 
36
- • `Optional` **decodeEntities**: _boolean | "utf8"_
36
+ • `Optional` **encodeEntities**: _boolean | "utf8"_
37
37
 
38
- Encode characters that are either reserved in HTML or XML.
38
+ Encode characters reserved in HTML or XML in text and attribute values.
39
39
 
40
- If `xmlMode` is `true` or the value not `'utf8'`, characters outside of the utf8 range will be encoded as well.
40
+ If `xmlMode` is `true` or the value is not `'utf8'`, characters outside of the ASCII range will be encoded as well.
41
+
42
+ > **Security:** Setting this to `false` disables encoding of `<`, `>`, and `&` in text and attribute values. This is intended for the round-trip case where the DOM was parsed with `decodeEntities: false`, so markup characters only exist as entity references. If the DOM contains raw markup characters (e.g., from a default-decoded parse, or from programmatic manipulation), they will be emitted literally — do not use this option with untrusted input unless you have validated the DOM yourself.
41
43
 
42
44
  **`default`** `decodeEntities`
43
45
 
@@ -47,7 +49,7 @@ If `xmlMode` is `true` or the value not `'utf8'`, characters outside of the utf8
47
49
 
48
50
  • `Optional` **decodeEntities**: _boolean_
49
51
 
50
- Option inherited from parsing; will be used as the default value for `encodeEntities`.
52
+ Default for `encodeEntities`. Named to match the parser option of the same name so a single options object can be threaded through parse and serialize. Despite the name, on the serializer this option controls *encoding* — setting it to `false` carries the same security caveat as `encodeEntities: false`.
51
53
 
52
54
  **`default`** true
53
55
 
@@ -71,13 +73,17 @@ Print an empty attribute's value.
71
73
 
72
74
  • `Optional` **selfClosingTags**: _boolean_
73
75
 
74
- Print self-closing tags for tags without contents.
76
+ Print self-closing tags for tags without contents. If `xmlMode` is set, this
77
+ will apply to all tags. Otherwise, only tags that are defined as self-closing
78
+ in the HTML specification will be printed as such.
75
79
 
76
80
  **`default`** xmlMode
77
81
 
78
- **`example`** With <code>selfClosingTags: false</code>: <code>&lt;foo&gt;&lt;/foo&gt;</code>
82
+ **`example`** With <code>selfClosingTags: false</code>: <code>&lt;foo&gt;&lt;/foo&gt;&lt;br&gt;&lt;/br&gt;</code>
83
+
84
+ **`example`** With <code>xmlMode: true</code> and <code>selfClosingTags: true</code>: <code>&lt;foo/&gt;&lt;br/&gt;</code>
79
85
 
80
- **`example`** With <code>selfClosingTags: true</code>: <code>&lt;foo /&gt;</code>
86
+ **`example`** With <code>xmlMode: false</code> and <code>selfClosingTags: true</code>: <code>&lt;foo&gt;&lt;/foo&gt;&lt;br /&gt;</code>
81
87
 
82
88
  ---
83
89
 
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Mixed-case SVG and MathML element names recognized in foreign content.
3
+ * @see https://html.spec.whatwg.org/multipage/parsing.html#parsing-main-inforeign
4
+ */
5
+ export declare const elementNames: Map<string, string>;
6
+ /**
7
+ * Mixed-case SVG and MathML attribute names recognized in foreign content.
8
+ * @see https://html.spec.whatwg.org/multipage/parsing.html#parsing-main-inforeign
9
+ */
10
+ export declare const attributeNames: Map<string, string>;
11
+ //# sourceMappingURL=foreign-names.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"foreign-names.d.ts","sourceRoot":"","sources":["../src/foreign-names.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,YAAY,qBAIxB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,qBAI1B,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Mixed-case SVG and MathML element names recognized in foreign content.
3
+ * @see https://html.spec.whatwg.org/multipage/parsing.html#parsing-main-inforeign
4
+ */
5
+ export const elementNames = new Map("altGlyph altGlyphDef altGlyphItem animateColor animateMotion animateTransform clipPath feBlend feColorMatrix feComponentTransfer feComposite feConvolveMatrix feDiffuseLighting feDisplacementMap feDistantLight feDropShadow feFlood feFuncA feFuncB feFuncG feFuncR feGaussianBlur feImage feMerge feMergeNode feMorphology feOffset fePointLight feSpecularLighting feSpotLight feTile feTurbulence foreignObject glyphRef linearGradient radialGradient textPath"
6
+ .split(" ")
7
+ .map((name) => [name.toLowerCase(), name]));
8
+ /**
9
+ * Mixed-case SVG and MathML attribute names recognized in foreign content.
10
+ * @see https://html.spec.whatwg.org/multipage/parsing.html#parsing-main-inforeign
11
+ */
12
+ export const attributeNames = new Map("definitionURL attributeName attributeType baseFrequency baseProfile calcMode clipPathUnits diffuseConstant edgeMode filterUnits glyphRef gradientTransform gradientUnits kernelMatrix kernelUnitLength keyPoints keySplines keyTimes lengthAdjust limitingConeAngle markerHeight markerUnits markerWidth maskContentUnits maskUnits numOctaves pathLength patternContentUnits patternTransform patternUnits pointsAtX pointsAtY pointsAtZ preserveAlpha preserveAspectRatio primitiveUnits refX refY repeatCount repeatDur requiredExtensions requiredFeatures specularConstant specularExponent spreadMethod startOffset stdDeviation stitchTiles surfaceScale systemLanguage tableValues targetX targetY textLength viewBox viewTarget xChannelSelector yChannelSelector zoomAndPan"
13
+ .split(" ")
14
+ .map((name) => [name.toLowerCase(), name]));
15
+ //# sourceMappingURL=foreign-names.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"foreign-names.js","sourceRoot":"","sources":["../src/foreign-names.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,GAAG,CACjC,scAAsc;KACnc,KAAK,CAAC,GAAG,CAAC;KACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC,CAC7C,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,GAAG,CACnC,uvBAAuvB;KACpvB,KAAK,CAAC,GAAG,CAAC;KACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC,CAC7C,CAAC"}
@@ -0,0 +1,72 @@
1
+ import type { AnyNode } from "domhandler";
2
+ /**
3
+ * Options for DOM serialization.
4
+ */
5
+ export interface DomSerializerOptions {
6
+ /**
7
+ * Print an empty attribute's value.
8
+ * @default xmlMode
9
+ * @example With <code>emptyAttrs: false</code>: <code>&lt;input checked&gt;</code>
10
+ * @example With <code>emptyAttrs: true</code>: <code>&lt;input checked=""&gt;</code>
11
+ */
12
+ emptyAttrs?: boolean;
13
+ /**
14
+ * Print self-closing tags for tags without contents. If `xmlMode` is set,
15
+ * this will apply to all tags. Otherwise, only tags that are defined as
16
+ * self-closing in the HTML specification will be printed as such.
17
+ * @default xmlMode
18
+ * @example With <code>selfClosingTags: false</code>: <code>&lt;foo&gt;&lt;/foo&gt;&lt;br&gt;&lt;/br&gt;</code>
19
+ * @example With <code>xmlMode: true</code> and <code>selfClosingTags: true</code>: <code>&lt;foo/&gt;&lt;br/&gt;</code>
20
+ * @example With <code>xmlMode: false</code> and <code>selfClosingTags: true</code>: <code>&lt;foo&gt;&lt;/foo&gt;&lt;br /&gt;</code>
21
+ */
22
+ selfClosingTags?: boolean;
23
+ /**
24
+ * Treat the input as an XML document; enables the `emptyAttrs` and
25
+ * `selfClosingTags` options.
26
+ *
27
+ * If the value is `"foreign"`, it will try to correct mixed-case attribute
28
+ * names.
29
+ * @default false
30
+ */
31
+ xmlMode?: boolean | "foreign";
32
+ /**
33
+ * Encode characters reserved in HTML or XML in text and attribute values.
34
+ *
35
+ * If `xmlMode` is set or the value is not `'utf8'`, characters outside the
36
+ * ASCII range will also be encoded as numeric entities.
37
+ *
38
+ * **Security:** Setting this to `false` disables encoding of `<`, `>`, `&`,
39
+ * and (in attribute values) `'` — only `"` in attribute values is escaped.
40
+ * This is safe for the round-trip case (DOM was parsed with
41
+ * `decodeEntities: false`, so any markup characters in text or attribute
42
+ * values exist only as entity references), and unsafe otherwise. If text
43
+ * or attribute values in the DOM contain raw `<`, `>`, or `&`, those
44
+ * characters will appear literally in the output.
45
+ * @default `decodeEntities`
46
+ */
47
+ encodeEntities?: boolean | "utf8";
48
+ /**
49
+ * Default for `encodeEntities`. Named to match the parser option of the
50
+ * same name so a single options object can be threaded through parse and
51
+ * serialize for a faithful round-trip — for example, cheerio parses with
52
+ * `decodeEntities: false` to preserve entity references and passes the
53
+ * same option here so they are not re-encoded.
54
+ *
55
+ * Despite the name, on the serializer this option controls *encoding*.
56
+ * Setting it to `false` carries the same caveat as `encodeEntities: false`
57
+ * — see that option.
58
+ * @default true
59
+ */
60
+ decodeEntities?: boolean;
61
+ }
62
+ /**
63
+ * Renders a DOM node or an array of DOM nodes to a string.
64
+ *
65
+ * Can be thought of as the equivalent of the `outerHTML` of the passed
66
+ * node(s).
67
+ * @param node Node to be rendered.
68
+ * @param options Changes serialization behavior
69
+ */
70
+ export declare function render(node: AnyNode | ArrayLike<AnyNode>, options?: DomSerializerOptions): string;
71
+ export default render;
72
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,OAAO,EAMR,MAAM,YAAY,CAAC;AAIpB;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B;;;;;;;;;;;;;;OAcG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAClC;;;;;;;;;;;OAWG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AA6BD;;;;;;;GAOG;AACH,wBAAgB,MAAM,CACpB,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,EAClC,OAAO,GAAE,oBAAyB,GACjC,MAAM,CAiBR;AAED,eAAe,MAAM,CAAC"}
@@ -0,0 +1,173 @@
1
+ import * as ElementType from "domelementtype";
2
+ import { encodeXML, escapeAttribute, escapeText } from "entities";
3
+ import { attributeNames, elementNames } from "./foreign-names.js";
4
+ // ── Constants ────────────────────────────────────────────────────────
5
+ /** Elements whose text content is never entity-encoded. */
6
+ const unencodedElements = new Set("style script xmp iframe noembed noframes plaintext noscript".split(" "));
7
+ /** HTML void elements — they cannot have children. */
8
+ const voidElements = new Set("area base basefont br col command embed frame hr img input isindex keygen link meta param source track wbr".split(" "));
9
+ /** Elements that switch the parser into foreign (XML-like) mode. */
10
+ const foreignElements = new Set(["svg", "math"]);
11
+ /**
12
+ * Foreign-mode integration points: children of these elements are parsed
13
+ * as HTML again, not as foreign content.
14
+ */
15
+ const foreignModeIntegrationPoints = new Set("mi mo mn ms mtext annotation-xml foreignObject desc title".split(" "));
16
+ // ── Public API ───────────────────────────────────────────────────────
17
+ /**
18
+ * Renders a DOM node or an array of DOM nodes to a string.
19
+ *
20
+ * Can be thought of as the equivalent of the `outerHTML` of the passed
21
+ * node(s).
22
+ * @param node Node to be rendered.
23
+ * @param options Changes serialization behavior
24
+ */
25
+ export function render(node, options = {}) {
26
+ const nodes = "length" in node ? node : [node];
27
+ /*
28
+ * `xmlMode` is threaded as a separate argument through the internal
29
+ * functions so that foreign-mode transitions (svg/mathml ↔ html) can
30
+ * adjust it without copying the options object on every element.
31
+ */
32
+ const xmlMode = options.xmlMode ?? false;
33
+ let output = "";
34
+ // eslint-disable-next-line unicorn/no-for-loop
35
+ for (let index = 0; index < nodes.length; index++) {
36
+ output += renderNode(nodes[index], options, xmlMode);
37
+ }
38
+ return output;
39
+ }
40
+ export default render;
41
+ // ── Internal rendering ───────────────────────────────────────────────
42
+ /**
43
+ * Render an array of child nodes (skips the single-node wrapping in `render`).
44
+ * @param children The child nodes to render.
45
+ * @param options The serialization options.
46
+ * @param xmlMode The XML mode to use.
47
+ */
48
+ function renderChildren(children, options, xmlMode) {
49
+ let output = "";
50
+ // eslint-disable-next-line unicorn/no-for-loop
51
+ for (let index = 0; index < children.length; index++) {
52
+ output += renderNode(children[index], options, xmlMode);
53
+ }
54
+ return output;
55
+ }
56
+ function renderNode(node, options, xmlMode) {
57
+ switch (node.type) {
58
+ case ElementType.Root: {
59
+ return renderChildren(node.children, options, xmlMode);
60
+ }
61
+ case ElementType.Directive: {
62
+ return `<${node.data}>`;
63
+ }
64
+ case ElementType.Comment: {
65
+ return `<!--${node.data}-->`;
66
+ }
67
+ case ElementType.CDATA: {
68
+ return `<![CDATA[${node.children[0].data}]]>`;
69
+ }
70
+ case ElementType.Script:
71
+ case ElementType.Style:
72
+ case ElementType.Tag: {
73
+ return renderTag(node, options, xmlMode);
74
+ }
75
+ case ElementType.Text: {
76
+ const element = node;
77
+ const data = element.data || "";
78
+ /*
79
+ * Skip encoding when entities weren't decoded on input, or when
80
+ * inside a raw-text element (script, style, etc.) in HTML mode.
81
+ */
82
+ if ((options.encodeEntities ?? options.decodeEntities) !== false &&
83
+ !(!xmlMode &&
84
+ element.parent &&
85
+ unencodedElements.has(element.parent.name))) {
86
+ // `xmlMode: "foreign"` is truthy
87
+ return xmlMode || options.encodeEntities !== "utf8"
88
+ ? encodeXML(data)
89
+ : escapeText(data);
90
+ }
91
+ return data;
92
+ }
93
+ }
94
+ }
95
+ function renderTag(element, options, xmlMode) {
96
+ if (xmlMode === "foreign") {
97
+ // Correct lowercase element names back to their canonical mixed-case form
98
+ element.name = elementNames.get(element.name) ?? element.name;
99
+ // Integration points exit foreign mode: their children are HTML
100
+ if (element.parent &&
101
+ foreignModeIntegrationPoints.has(element.parent.name)) {
102
+ xmlMode = false;
103
+ }
104
+ }
105
+ if (!xmlMode && foreignElements.has(element.name)) {
106
+ xmlMode = "foreign";
107
+ }
108
+ const { name, children } = element;
109
+ // Cache the void-element check — used for both self-closing and closing-tag logic
110
+ const isVoid = !xmlMode && voidElements.has(name);
111
+ let tag = `<${name}${formatAttributes(element.attribs, options, xmlMode)}`;
112
+ if (children.length === 0 &&
113
+ (xmlMode
114
+ ? options.selfClosingTags !== false
115
+ : options.selfClosingTags && isVoid)) {
116
+ // XML: `<br/>`, HTML: `<br />`
117
+ tag += xmlMode ? "/>" : " />";
118
+ }
119
+ else {
120
+ tag += ">";
121
+ if (children.length > 0) {
122
+ tag += renderChildren(children, options, xmlMode);
123
+ }
124
+ if (!isVoid) {
125
+ tag += `</${name}>`;
126
+ }
127
+ }
128
+ return tag;
129
+ }
130
+ // ── Attribute formatting ─────────────────────────────────────────────
131
+ function replaceQuotes(value) {
132
+ return value.replaceAll('"', "&quot;");
133
+ }
134
+ /**
135
+ * Serialize an element's attribute map to a string.
136
+ *
137
+ * Returns a string with a leading space before each attribute, or an
138
+ * empty string if there are no attributes. This convention lets the
139
+ * caller unconditionally concatenate the result onto the tag name.
140
+ * @param attributes
141
+ * @param options
142
+ * @param xmlMode
143
+ */
144
+ function formatAttributes(attributes, options, xmlMode) {
145
+ if (!attributes)
146
+ return "";
147
+ /*
148
+ * Pick the right encoder:
149
+ * - Encoding disabled → only escape double-quotes (for valid attributes)
150
+ * - XML / non-utf8 → full numeric entity encoding (encodeXML)
151
+ * - HTML + utf8 → minimal escaping (escapeAttribute)
152
+ */
153
+ const encode = (options.encodeEntities ?? options.decodeEntities) === false
154
+ ? replaceQuotes
155
+ : xmlMode || options.encodeEntities !== "utf8"
156
+ ? encodeXML
157
+ : escapeAttribute;
158
+ const isForeign = xmlMode === "foreign";
159
+ const showEmpty = !!(options.emptyAttrs ?? xmlMode);
160
+ let result = "";
161
+ for (const key in attributes) {
162
+ if (!Object.hasOwn(attributes, key))
163
+ continue;
164
+ const value = attributes[key];
165
+ const k = isForeign ? (attributeNames.get(key) ?? key) : key;
166
+ result +=
167
+ !showEmpty && (value == null || value === "")
168
+ ? ` ${k}`
169
+ : ` ${k}="${encode(value == null ? "" : String(value))}"`;
170
+ }
171
+ return result;
172
+ }
173
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,69 @@
1
+ {
2
+ "type": "module",
3
+ "name": "dom-serializer",
4
+ "version": "3.1.1",
5
+ "description": "render domhandler DOM nodes to a string",
6
+ "author": "Felix Boehm <me@feedic.com>",
7
+ "sideEffects": false,
8
+ "keywords": [
9
+ "html",
10
+ "xml",
11
+ "render"
12
+ ],
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "git://github.com/cheeriojs/dom-serializer.git"
16
+ },
17
+ "main": "./dist/index.js",
18
+ "types": "./dist/index.d.ts",
19
+ "exports": {
20
+ ".": {
21
+ "types": "./dist/index.d.ts",
22
+ "default": "./dist/index.js"
23
+ }
24
+ },
25
+ "files": [
26
+ "dist",
27
+ "src",
28
+ "!**/*.spec.ts",
29
+ "!**/*.bench.ts"
30
+ ],
31
+ "dependencies": {
32
+ "domelementtype": "^3.0.0",
33
+ "domhandler": "^6.0.0",
34
+ "entities": "^8.0.0"
35
+ },
36
+ "devDependencies": {
37
+ "@biomejs/biome": "^2.4.14",
38
+ "@eslint/compat": "^2.0.5",
39
+ "@feedic/eslint-config": "^0.4.1",
40
+ "@types/node": "^25.6.0",
41
+ "cheerio": "^1.2.0",
42
+ "eslint": "^10.3.0",
43
+ "eslint-config-biome": "^2.1.3",
44
+ "typescript": "^6.0.2",
45
+ "typescript-eslint": "^8.59.1",
46
+ "vitest": "^4.1.5"
47
+ },
48
+ "engines": {
49
+ "node": ">=20.19.0"
50
+ },
51
+ "scripts": {
52
+ "build": "tsc",
53
+ "format": "npm run format:es && npm run format:biome",
54
+ "format:biome": "biome check --write .",
55
+ "format:es": "npm run lint:es -- --fix",
56
+ "lint": "npm run lint:es && npm run lint:ts && npm run lint:biome",
57
+ "lint:biome": "biome check .",
58
+ "lint:es": "eslint .",
59
+ "lint:ts": "tsc --noEmit -p tsconfig.eslint.json",
60
+ "prepare": "npm run build",
61
+ "test": "npm run test:vi && npm run lint",
62
+ "test:vi": "vitest run"
63
+ },
64
+ "funding": {
65
+ "type": "github",
66
+ "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
67
+ },
68
+ "license": "MIT"
69
+ }