@mavogel/awscdk-rootmail 0.1.24 → 0.1.26

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 (252) hide show
  1. package/.jsii +9 -9
  2. package/lib/rootmail.js +1 -1
  3. package/lib/ses-receive.js +1 -1
  4. package/lib/ses-receive.ops-santa-handler.js +2 -2
  5. package/node_modules/@aws-sdk/checksums/package.json +3 -3
  6. package/node_modules/@aws-sdk/client-cloudwatch-logs/dist-cjs/index.js +9 -7
  7. package/node_modules/@aws-sdk/client-cloudwatch-logs/dist-es/schemas/schemas_0.js +11 -6
  8. package/node_modules/@aws-sdk/client-cloudwatch-logs/dist-types/commands/DescribeDeliveriesCommand.d.ts +3 -0
  9. package/node_modules/@aws-sdk/client-cloudwatch-logs/dist-types/commands/DescribeDeliveryDestinationsCommand.d.ts +3 -0
  10. package/node_modules/@aws-sdk/client-cloudwatch-logs/dist-types/commands/DescribeDeliverySourcesCommand.d.ts +3 -0
  11. package/node_modules/@aws-sdk/client-cloudwatch-logs/dist-types/commands/PutResourcePolicyCommand.d.ts +1 -1
  12. package/node_modules/@aws-sdk/client-cloudwatch-logs/dist-types/models/models_0.d.ts +27 -1
  13. package/node_modules/@aws-sdk/client-cloudwatch-logs/dist-types/ts3.4/models/models_0.d.ts +3 -0
  14. package/node_modules/@aws-sdk/client-cloudwatch-logs/package.json +4 -4
  15. package/node_modules/@aws-sdk/client-route-53/dist-cjs/index.js +1 -1
  16. package/node_modules/@aws-sdk/client-route-53/package.json +4 -4
  17. package/node_modules/@aws-sdk/client-s3/dist-cjs/index.js +1 -1
  18. package/node_modules/@aws-sdk/client-s3/package.json +7 -7
  19. package/node_modules/@aws-sdk/client-ses/dist-cjs/index.js +1 -1
  20. package/node_modules/@aws-sdk/client-ses/package.json +4 -4
  21. package/node_modules/@aws-sdk/client-ssm/dist-cjs/index.js +1 -1
  22. package/node_modules/@aws-sdk/client-ssm/package.json +4 -4
  23. package/node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js +94 -1589
  24. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js +1 -7
  25. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsJsonRpcProtocol.js +1 -3
  26. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsRestJsonProtocol.js +1 -3
  27. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/index.d.ts +2 -8
  28. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJson1_0Protocol.d.ts +1 -2
  29. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJson1_1Protocol.d.ts +1 -2
  30. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +2 -3
  31. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsRestJsonProtocol.d.ts +2 -3
  32. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/index.d.ts +10 -10
  33. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_0Protocol.d.ts +1 -2
  34. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_1Protocol.d.ts +1 -2
  35. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +2 -3
  36. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsRestJsonProtocol.d.ts +2 -3
  37. package/node_modules/@aws-sdk/core/package.json +2 -2
  38. package/node_modules/@aws-sdk/credential-provider-env/package.json +3 -3
  39. package/node_modules/@aws-sdk/credential-provider-http/package.json +3 -3
  40. package/node_modules/@aws-sdk/credential-provider-ini/package.json +10 -10
  41. package/node_modules/@aws-sdk/credential-provider-login/package.json +4 -4
  42. package/node_modules/@aws-sdk/credential-provider-node/package.json +8 -8
  43. package/node_modules/@aws-sdk/credential-provider-process/package.json +3 -3
  44. package/node_modules/@aws-sdk/credential-provider-sso/package.json +5 -5
  45. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +4 -4
  46. package/node_modules/@aws-sdk/middleware-sdk-s3/package.json +3 -3
  47. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/index.js +1 -1
  48. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/index.js +1 -1
  49. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/index.js +1 -1
  50. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/index.js +1 -1
  51. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/index.js +1 -1
  52. package/node_modules/@aws-sdk/nested-clients/package.json +3 -3
  53. package/node_modules/@aws-sdk/token-providers/dist-cjs/index.js +37 -19
  54. package/node_modules/@aws-sdk/token-providers/dist-es/fromSso.js +37 -19
  55. package/node_modules/@aws-sdk/token-providers/package.json +4 -4
  56. package/node_modules/@smithy/core/dist-cjs/submodules/protocols/index.js +1695 -3
  57. package/node_modules/@smithy/core/dist-es/submodules/protocols/ConfigurableSerdeContext.js +6 -0
  58. package/node_modules/@smithy/core/dist-es/submodules/protocols/UnionSerde.js +26 -0
  59. package/node_modules/@smithy/core/dist-es/submodules/protocols/common.js +3 -0
  60. package/node_modules/@smithy/core/dist-es/submodules/protocols/index.js +8 -0
  61. package/node_modules/@smithy/core/dist-es/submodules/protocols/json/SmithyRpcV2JsonProtocol.js +102 -0
  62. package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/codec-v1/JsonShapeDeserializer.js +8 -1
  63. package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/codec-v1/JsonShapeSerializer.js +8 -1
  64. package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/codec-v2/JsonShapeDeserializer2.js +13 -2
  65. package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/codec-v2/JsonShapeSerializer2.js +11 -1
  66. package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/parseJsonBody.js +16 -1
  67. package/node_modules/@smithy/core/dist-es/submodules/protocols/writeKey.js +3 -0
  68. package/node_modules/@smithy/core/dist-types/submodules/protocols/ConfigurableSerdeContext.d.ts +8 -0
  69. package/node_modules/@smithy/core/dist-types/submodules/protocols/UnionSerde.d.ts +24 -0
  70. package/node_modules/@smithy/core/dist-types/submodules/protocols/common.d.ts +2 -0
  71. package/node_modules/@smithy/core/dist-types/submodules/protocols/index.d.ts +9 -0
  72. package/node_modules/@smithy/core/dist-types/submodules/protocols/json/JsonSettings.d.ts +13 -0
  73. package/node_modules/@smithy/core/dist-types/submodules/protocols/json/SmithyRpcV2JsonProtocol.d.ts +28 -0
  74. package/node_modules/{@aws-sdk → @smithy}/core/dist-types/submodules/protocols/json/parseJsonBody.d.ts +16 -0
  75. package/node_modules/@smithy/core/dist-types/submodules/protocols/writeKey.d.ts +4 -0
  76. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/ConfigurableSerdeContext.d.ts +8 -0
  77. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/UnionSerde.d.ts +24 -0
  78. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/common.d.ts +2 -0
  79. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/index.d.ts +9 -0
  80. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/json/JsonSettings.d.ts +13 -0
  81. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/json/SmithyRpcV2JsonProtocol.d.ts +28 -0
  82. package/node_modules/{@aws-sdk → @smithy}/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonCodec.d.ts +15 -11
  83. package/node_modules/{@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json → @smithy/core/dist-types/ts3.4/submodules/protocols/json/codec-v1}/JsonSettings.d.ts +7 -4
  84. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonShapeDeserializer.d.ts +14 -0
  85. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonShapeSerializer.d.ts +29 -0
  86. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.d.ts +51 -0
  87. package/node_modules/{@aws-sdk → @smithy}/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonCodec2.d.ts +13 -9
  88. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonShapeDeserializer2.d.ts +30 -0
  89. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonShapeSerializer2.d.ts +60 -0
  90. package/node_modules/{@aws-sdk → @smithy}/core/dist-types/ts3.4/submodules/protocols/json/detectBufferParsing.d.ts +1 -1
  91. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/json/jsonReplacer.d.ts +21 -0
  92. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/json/jsonReviver.d.ts +15 -0
  93. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/json/needsReviver.d.ts +11 -0
  94. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/json/parseJsonBody.d.ts +38 -0
  95. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/writeKey.d.ts +4 -0
  96. package/node_modules/@smithy/core/package.json +2 -1
  97. package/node_modules/@zone-eu/mailsplit/README.md +43 -54
  98. package/node_modules/@zone-eu/mailsplit/lib/headers.js +10 -4
  99. package/node_modules/@zone-eu/mailsplit/lib/message-splitter.js +5 -4
  100. package/node_modules/@zone-eu/mailsplit/lib/mime-node.d.ts +4 -1
  101. package/node_modules/@zone-eu/mailsplit/lib/mime-node.js +30 -5
  102. package/node_modules/@zone-eu/mailsplit/lib/types.d.ts +3 -1
  103. package/node_modules/@zone-eu/mailsplit/package.json +22 -17
  104. package/node_modules/libbase64/CHANGELOG.md +20 -0
  105. package/node_modules/libbase64/README.md +40 -13
  106. package/node_modules/libbase64/dist/cjs/libbase64.d.ts +80 -0
  107. package/node_modules/libbase64/dist/cjs/libbase64.js +310 -0
  108. package/node_modules/libbase64/dist/cjs/package.json +3 -0
  109. package/node_modules/libbase64/dist/esm/libbase64.d.ts +80 -0
  110. package/node_modules/libbase64/{lib → dist/esm}/libbase64.js +74 -117
  111. package/node_modules/libbase64/dist/esm/package.json +3 -0
  112. package/node_modules/libbase64/package.json +59 -13
  113. package/node_modules/libmime/CHANGELOG.md +38 -0
  114. package/node_modules/libmime/README.md +55 -26
  115. package/node_modules/libmime/SECURITY.md +152 -0
  116. package/node_modules/libmime/dist/cjs/charset.d.ts +43 -0
  117. package/node_modules/libmime/dist/cjs/charset.js +135 -0
  118. package/node_modules/libmime/dist/cjs/charsets.d.ts +2 -0
  119. package/node_modules/libmime/dist/cjs/charsets.js +213 -0
  120. package/node_modules/libmime/dist/cjs/get-charset-name.d.ts +1 -0
  121. package/node_modules/libmime/dist/cjs/get-charset-name.js +224 -0
  122. package/node_modules/libmime/dist/cjs/libmime.d.ts +218 -0
  123. package/node_modules/libmime/dist/cjs/libmime.js +1027 -0
  124. package/node_modules/libmime/dist/cjs/mimetypes.d.ts +7 -0
  125. package/node_modules/libmime/dist/cjs/mimetypes.js +2072 -0
  126. package/node_modules/libmime/dist/cjs/package.json +3 -0
  127. package/node_modules/libmime/dist/cjs/types.d.ts +59 -0
  128. package/node_modules/libmime/dist/cjs/types.js +4 -0
  129. package/node_modules/libmime/dist/esm/charset.d.ts +43 -0
  130. package/node_modules/libmime/dist/esm/charset.js +125 -0
  131. package/node_modules/libmime/dist/esm/charsets.d.ts +2 -0
  132. package/node_modules/libmime/{lib → dist/esm}/charsets.js +3 -5
  133. package/node_modules/libmime/dist/esm/get-charset-name.d.ts +1 -0
  134. package/node_modules/libmime/{lib → dist/esm}/get-charset-name.js +1 -8
  135. package/node_modules/libmime/dist/esm/libmime.d.ts +219 -0
  136. package/node_modules/libmime/{lib → dist/esm}/libmime.js +275 -334
  137. package/node_modules/libmime/dist/esm/mimetypes.d.ts +7 -0
  138. package/node_modules/libmime/dist/esm/mimetypes.js +2068 -0
  139. package/node_modules/libmime/dist/esm/package.json +3 -0
  140. package/node_modules/libmime/dist/esm/types.d.ts +59 -0
  141. package/node_modules/libmime/dist/esm/types.js +3 -0
  142. package/node_modules/libmime/package.json +60 -15
  143. package/node_modules/libqp/CHANGELOG.md +18 -0
  144. package/node_modules/libqp/README.md +50 -19
  145. package/node_modules/libqp/dist/cjs/libqp.d.ts +74 -0
  146. package/node_modules/libqp/dist/cjs/libqp.js +378 -0
  147. package/node_modules/libqp/dist/cjs/package.json +3 -0
  148. package/node_modules/libqp/dist/esm/libqp.d.ts +74 -0
  149. package/node_modules/libqp/dist/esm/libqp.js +369 -0
  150. package/node_modules/libqp/dist/esm/package.json +3 -0
  151. package/node_modules/libqp/lib/libqp.js +4 -383
  152. package/node_modules/libqp/lib/package.json +3 -0
  153. package/node_modules/libqp/package.json +62 -6
  154. package/node_modules/mailparser/CHANGELOG.md +56 -0
  155. package/node_modules/mailparser/README.md +6 -0
  156. package/node_modules/mailparser/dist/cjs/index.d.ts +10 -0
  157. package/node_modules/mailparser/dist/cjs/index.js +12 -0
  158. package/node_modules/mailparser/dist/cjs/mail-parser.d.ts +98 -0
  159. package/node_modules/mailparser/dist/cjs/mail-parser.js +1419 -0
  160. package/node_modules/mailparser/dist/cjs/package.json +3 -0
  161. package/node_modules/mailparser/dist/cjs/simple-parser.d.ts +17 -0
  162. package/node_modules/mailparser/dist/cjs/simple-parser.js +133 -0
  163. package/node_modules/mailparser/dist/cjs/stream-hash.d.ts +24 -0
  164. package/node_modules/mailparser/dist/cjs/stream-hash.js +33 -0
  165. package/node_modules/mailparser/dist/cjs/tlds.cjs +8 -0
  166. package/node_modules/mailparser/dist/cjs/types.d.ts +309 -0
  167. package/node_modules/mailparser/dist/cjs/types.js +2 -0
  168. package/node_modules/mailparser/dist/esm/index.d.ts +10 -0
  169. package/node_modules/mailparser/dist/esm/index.js +4 -0
  170. package/node_modules/mailparser/dist/esm/mail-parser.d.ts +98 -0
  171. package/node_modules/mailparser/{lib → dist/esm}/mail-parser.js +302 -368
  172. package/node_modules/mailparser/dist/esm/package.json +3 -0
  173. package/node_modules/mailparser/dist/esm/simple-parser.d.ts +17 -0
  174. package/node_modules/mailparser/{lib → dist/esm}/simple-parser.js +45 -68
  175. package/node_modules/mailparser/dist/esm/stream-hash.d.ts +24 -0
  176. package/node_modules/mailparser/{lib → dist/esm}/stream-hash.js +7 -9
  177. package/node_modules/mailparser/dist/esm/tlds.cjs +8 -0
  178. package/node_modules/mailparser/dist/esm/types.d.ts +309 -0
  179. package/node_modules/mailparser/dist/esm/types.js +1 -0
  180. package/node_modules/mailparser/package.json +88 -17
  181. package/node_modules/nodemailer/CHANGELOG.md +44 -0
  182. package/node_modules/nodemailer/dist/cjs/addressparser/index.js +695 -267
  183. package/node_modules/nodemailer/dist/cjs/mailer/mail-message.js +4 -1
  184. package/node_modules/nodemailer/dist/cjs/mime-funcs/index.js +8 -2
  185. package/node_modules/nodemailer/dist/cjs/mime-node/index.js +48 -16
  186. package/node_modules/nodemailer/dist/cjs/package-info.d.ts +1 -1
  187. package/node_modules/nodemailer/dist/cjs/package-info.js +1 -1
  188. package/node_modules/nodemailer/dist/cjs/shared/url.js +22 -5
  189. package/node_modules/nodemailer/dist/esm/addressparser/index.js +695 -267
  190. package/node_modules/nodemailer/dist/esm/mailer/mail-message.js +4 -1
  191. package/node_modules/nodemailer/dist/esm/mime-funcs/index.js +8 -2
  192. package/node_modules/nodemailer/dist/esm/mime-node/index.js +48 -16
  193. package/node_modules/nodemailer/dist/esm/package-info.d.ts +1 -1
  194. package/node_modules/nodemailer/dist/esm/package-info.js +1 -1
  195. package/node_modules/nodemailer/dist/esm/shared/url.js +22 -5
  196. package/node_modules/nodemailer/package.json +1 -1
  197. package/package.json +9 -9
  198. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v1/JsonSettings.d.ts +0 -7
  199. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonSettings.d.ts +0 -4
  200. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonShapeDeserializer.d.ts +0 -13
  201. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonShapeSerializer.d.ts +0 -18
  202. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.d.ts +0 -27
  203. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonShapeDeserializer2.d.ts +0 -15
  204. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonShapeSerializer2.d.ts +0 -39
  205. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReplacer.d.ts +0 -7
  206. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReviver.d.ts +0 -7
  207. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/needsReviver.d.ts +0 -2
  208. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/parseJsonBody.d.ts +0 -14
  209. package/node_modules/libbase64/.eslintrc +0 -11
  210. package/node_modules/libbase64/.github/FUNDING.yml +0 -4
  211. package/node_modules/libbase64/.github/VULNERABILITY_REPORT.yml +0 -75
  212. package/node_modules/libbase64/.github/workflows/release.yaml +0 -39
  213. package/node_modules/libbase64/.github/workflows/test.yml +0 -21
  214. package/node_modules/libbase64/.ncurc.js +0 -13
  215. package/node_modules/libbase64/.prettierrc.js +0 -8
  216. package/node_modules/libmime/lib/charset.js +0 -131
  217. package/node_modules/libmime/lib/mimetypes.js +0 -2049
  218. package/node_modules/libqp/.eslintrc +0 -15
  219. package/node_modules/libqp/.github/FUNDING.yml +0 -4
  220. package/node_modules/libqp/.github/VULNERABILITY_REPORT.yml +0 -75
  221. package/node_modules/libqp/.github/workflows/release.yaml +0 -39
  222. package/node_modules/libqp/.github/workflows/test.yml +0 -21
  223. package/node_modules/libqp/.prettierrc.js +0 -8
  224. package/node_modules/libqp/test/libqp-test.js +0 -366
  225. package/node_modules/mailparser/.gitattributes +0 -1
  226. package/node_modules/mailparser/.prettierignore +0 -3
  227. package/node_modules/mailparser/.prettierrc.js +0 -10
  228. package/node_modules/mailparser/.release-please-manifest.json +0 -3
  229. package/node_modules/mailparser/eslint.config.js +0 -33
  230. package/node_modules/mailparser/index.js +0 -9
  231. package/node_modules/mailparser/release-please-config.json +0 -10
  232. /package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/JsonSettings.js +0 -0
  233. /package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/codec-v1/JsonCodec.js +0 -0
  234. /package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/codec-v1/JsonSettings.js +0 -0
  235. /package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.js +0 -0
  236. /package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/codec-v2/JsonCodec2.js +0 -0
  237. /package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/detectBufferParsing.js +0 -0
  238. /package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/jsonReplacer.js +0 -0
  239. /package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/jsonReviver.js +0 -0
  240. /package/node_modules/{@aws-sdk → @smithy}/core/dist-es/submodules/protocols/json/needsReviver.js +0 -0
  241. /package/node_modules/{@aws-sdk → @smithy}/core/dist-types/submodules/protocols/json/codec-v1/JsonCodec.d.ts +0 -0
  242. /package/node_modules/{@aws-sdk/core/dist-types/submodules/protocols/json → @smithy/core/dist-types/submodules/protocols/json/codec-v1}/JsonSettings.d.ts +0 -0
  243. /package/node_modules/{@aws-sdk → @smithy}/core/dist-types/submodules/protocols/json/codec-v1/JsonShapeDeserializer.d.ts +0 -0
  244. /package/node_modules/{@aws-sdk → @smithy}/core/dist-types/submodules/protocols/json/codec-v1/JsonShapeSerializer.d.ts +0 -0
  245. /package/node_modules/{@aws-sdk → @smithy}/core/dist-types/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.d.ts +0 -0
  246. /package/node_modules/{@aws-sdk → @smithy}/core/dist-types/submodules/protocols/json/codec-v2/JsonCodec2.d.ts +0 -0
  247. /package/node_modules/{@aws-sdk → @smithy}/core/dist-types/submodules/protocols/json/codec-v2/JsonShapeDeserializer2.d.ts +0 -0
  248. /package/node_modules/{@aws-sdk → @smithy}/core/dist-types/submodules/protocols/json/codec-v2/JsonShapeSerializer2.d.ts +0 -0
  249. /package/node_modules/{@aws-sdk → @smithy}/core/dist-types/submodules/protocols/json/detectBufferParsing.d.ts +0 -0
  250. /package/node_modules/{@aws-sdk → @smithy}/core/dist-types/submodules/protocols/json/jsonReplacer.d.ts +0 -0
  251. /package/node_modules/{@aws-sdk → @smithy}/core/dist-types/submodules/protocols/json/jsonReviver.d.ts +0 -0
  252. /package/node_modules/{@aws-sdk → @smithy}/core/dist-types/submodules/protocols/json/needsReviver.d.ts +0 -0
@@ -0,0 +1,369 @@
1
+ import { Transform } from 'node:stream';
2
+ // the shortest line wrap() can make progress with: a complete =XX sequence and the soft break
3
+ const MIN_LINE_LENGTH = 4;
4
+ // 1 for every byte value that is written as is: <TAB>, <LF>, <CR> and the printable ASCII
5
+ // range except "=", https://tools.ietf.org/html/rfc2045#section-6.7
6
+ const QP_LITERAL = new Uint8Array(256);
7
+ for (let i = 0; i < 256; i++) {
8
+ QP_LITERAL[i] = i === 0x09 || i === 0x0a || i === 0x0d || (i >= 0x20 && i <= 0x7e && i !== 0x3d) ? 1 : 0;
9
+ }
10
+ const HEX_DIGITS = Buffer.from('0123456789ABCDEF', 'latin1');
11
+ const isWhitespace = (c) => c === 0x20 || c === 0x09;
12
+ /**
13
+ * Encodes a Buffer into a Quoted-Printable encoded string
14
+ *
15
+ * @param buffer Buffer to convert, a string is encoded as UTF-8
16
+ * @returns Quoted-Printable encoded string
17
+ */
18
+ export function encode(buffer) {
19
+ return encodeBytes(typeof buffer === 'string' ? Buffer.from(buffer, 'utf-8') : buffer);
20
+ }
21
+ /**
22
+ * Encodes bytes that may be followed by more input
23
+ *
24
+ * @param buffer Bytes to encode
25
+ * @param [next] The byte that follows the buffer, whitespace before it is kept literal unless it
26
+ * is a line break. Without it the buffer ends the input and its trailing whitespace is encoded
27
+ * @param [binary] Keep only CRLF pairs literal. A lone CR or LF is data, not a line break, and
28
+ * anything that rewrites line endings on the way would change it
29
+ * @param [previous] The byte before the buffer. Without it the buffer starts a line
30
+ * @returns Quoted-Printable encoded string
31
+ */
32
+ function encodeBytes(buffer, next, binary, previous) {
33
+ const len = buffer.length;
34
+ // every byte takes three characters at most
35
+ const output = Buffer.allocUnsafe(len * 3);
36
+ let pos = 0;
37
+ for (let i = 0; i < len; i++) {
38
+ const ord = buffer[i];
39
+ const preceding = i > 0 ? buffer[i - 1] : previous;
40
+ const following = i + 1 < len ? buffer[i + 1] : next;
41
+ // in binary data only a CR followed by LF, or an LF that follows CR, is a line break
42
+ const loneLineBreak = binary && (ord === 0x0d ? following !== 0x0a : ord === 0x0a && preceding !== 0x0d);
43
+ // if the char is in allowed range, then keep as is, unless it is a ws in the end of a line
44
+ // or a hyphen in the start of a line. A line starting with two hyphens reads as a MIME
45
+ // boundary delimiter, so a decoded body that gets encoded again could inject a part. A lone
46
+ // CR counts as a line break here, a relay may turn it into CRLF
47
+ if (QP_LITERAL[ord] &&
48
+ !loneLineBreak &&
49
+ !(isWhitespace(ord) && (following === undefined || following === 0x0a || following === 0x0d)) &&
50
+ !(ord === 0x2d && (preceding === undefined || preceding === 0x0a || preceding === 0x0d))) {
51
+ output[pos++] = ord;
52
+ continue;
53
+ }
54
+ output[pos++] = 0x3d; // =
55
+ output[pos++] = HEX_DIGITS[Math.floor(ord / 16)];
56
+ output[pos++] = HEX_DIGITS[ord % 16];
57
+ }
58
+ return output.toString('latin1', 0, pos);
59
+ }
60
+ /**
61
+ * Decodes a Quoted-Printable encoded string to a Buffer object
62
+ *
63
+ * @param str Quoted-Printable encoded string. A Buffer is read byte for byte, so raw 8-bit bytes
64
+ * in the input are copied to the output unchanged. A char of a string is copied as the low
65
+ * byte of its char code, so a string should only hold chars below 256 ('binary')
66
+ * @returns Decoded value
67
+ */
68
+ export function decode(str) {
69
+ // 'binary' maps every byte to one char code 0-255. A UTF-8 read would collapse raw
70
+ // multi-byte chars into one byte below and turn raw latin1 bytes into U+FFFD
71
+ let input;
72
+ if (str instanceof Uint8Array) {
73
+ input = (Buffer.isBuffer(str) ? str : Buffer.from(str.buffer, str.byteOffset, str.byteLength)).toString('binary');
74
+ }
75
+ else {
76
+ input = (str || '').toString();
77
+ }
78
+ input = input
79
+ // remove invalid whitespace from the end of lines. The leading group keeps this linear,
80
+ // a plain /[\t ]+$/gm rescans the rest of a whitespace run from every position inside it,
81
+ // which is quadratic. The lookahead lists the line terminators multiline $ matches before
82
+ .replace(/(^|[^ \t])[ \t]+(?=[\n\r\u2028\u2029]|$)/g, '$1')
83
+ // remove soft line breaks
84
+ .replace(/[=](?:\r?\n|$)/g, '');
85
+ // every =XX escape decodes into one byte, so count them to size the output.
86
+ // Counted with a loop, a match() would build an array with a string for every escape
87
+ const len = input.length;
88
+ let encodedBytesCount = 0;
89
+ for (let i = input.indexOf('='); i >= 0 && i < len - 2; i = input.indexOf('=', i + 1)) {
90
+ if (hexValue(input.charCodeAt(i + 1)) >= 0 && hexValue(input.charCodeAt(i + 2)) >= 0) {
91
+ encodedBytesCount++;
92
+ i += 2;
93
+ }
94
+ }
95
+ const buffer = Buffer.alloc(len - encodedBytesCount * 2);
96
+ let bufferPos = 0;
97
+ for (let i = 0; i < len; i++) {
98
+ const code = input.charCodeAt(i);
99
+ if (code === 0x3d /* = */ && i < len - 2) {
100
+ const hi = hexValue(input.charCodeAt(i + 1));
101
+ const lo = hexValue(input.charCodeAt(i + 2));
102
+ if (hi >= 0 && lo >= 0) {
103
+ buffer[bufferPos++] = hi * 16 + lo;
104
+ i += 2;
105
+ continue;
106
+ }
107
+ }
108
+ buffer[bufferPos++] = code;
109
+ }
110
+ return buffer;
111
+ }
112
+ /**
113
+ * Helper function to read the value of a hex digit
114
+ *
115
+ * @param code Char code
116
+ * @returns 0-15, or -1 if the char is not a hex digit
117
+ */
118
+ function hexValue(code) {
119
+ if (code >= 0x30 && code <= 0x39) {
120
+ return code - 0x30; // 0-9
121
+ }
122
+ if (code >= 0x41 && code <= 0x46) {
123
+ return code - 0x41 + 10; // A-F
124
+ }
125
+ if (code >= 0x61 && code <= 0x66) {
126
+ return code - 0x61 + 10; // a-f
127
+ }
128
+ return -1;
129
+ }
130
+ /**
131
+ * Adds soft line breaks to a Quoted-Printable string
132
+ *
133
+ * @param str Quoted-Printable encoded string that might need line wrapping
134
+ * @param [lineLength=76] Maximum allowed length for a line, at least 4
135
+ * @returns Soft-wrapped Quoted-Printable encoded string
136
+ */
137
+ export function wrap(str, lineLength) {
138
+ str = (str || '').toString();
139
+ // a line has to hold a complete =XX sequence plus the soft break, shorter lengths
140
+ // (or a negative one) would loop without consuming input
141
+ lineLength = Math.max(Number(lineLength) || 76, MIN_LINE_LENGTH);
142
+ if (str.length <= lineLength) {
143
+ return str;
144
+ }
145
+ // every line is wrapped on its own, a line break does not count towards the line length
146
+ const parts = str.split(/(\r?\n)/);
147
+ for (let i = 0; i < parts.length; i += 2) {
148
+ parts[i] = wrapLine(parts[i], lineLength);
149
+ }
150
+ return parts.join('');
151
+ }
152
+ /**
153
+ * Adds soft line breaks to one line of a Quoted-Printable string
154
+ *
155
+ * @param str Quoted-Printable encoded line, without line breaks
156
+ * @param lineLength Maximum allowed length for a line, at least MIN_LINE_LENGTH
157
+ * @returns Soft-wrapped line
158
+ */
159
+ function wrapLine(str, lineLength) {
160
+ const len = str.length;
161
+ const lineMargin = Math.floor(lineLength / 3);
162
+ let pos = 0;
163
+ let result = '';
164
+ // every pass either ends with the rest of the line or consumes input
165
+ for (;;) {
166
+ // a line started by a soft break must not begin with a hyphen either, see encodeBytes().
167
+ // The escape takes the place of the hyphen, as if the input held it
168
+ const escapeHyphen = pos > 0 && str.charCodeAt(pos) === 0x2d;
169
+ if (len - pos + (escapeHyphen ? 2 : 0) <= lineLength) {
170
+ // the rest fits on a line
171
+ result += escapeHyphen ? '=2D' + str.substr(pos + 1) : str.substr(pos);
172
+ break;
173
+ }
174
+ let line = escapeHyphen ? '=2D' + str.substr(pos + 1, lineLength - 3) : str.substr(pos, lineLength);
175
+ let match;
176
+ if ((match = line.substr(-lineMargin).match(/[ \t.,!?][^ \t.,!?]*$/))) {
177
+ // truncate to nearest space
178
+ line = line.substr(0, line.length - (match[0].length - 1));
179
+ }
180
+ else if (/[=][\da-f]{0,2}$/i.test(line)) {
181
+ // push an incomplete encoding sequence to the next line and ensure that utf-8
182
+ // sequences are not split
183
+ line = trimUtf8Sequence(line.replace(/[=][\da-f]?$/i, ''));
184
+ }
185
+ // make room for the soft break, without splitting an encoding sequence
186
+ if (line.length === lineLength) {
187
+ line = line.substr(0, line.length - (/[=][\da-f]{2}$/i.test(line) ? 3 : 1));
188
+ }
189
+ // the escape stands for one char of the input
190
+ pos += escapeHyphen ? line.length - 2 : line.length;
191
+ result += line + '=\r\n';
192
+ }
193
+ return result;
194
+ }
195
+ /**
196
+ * Cuts the escapes of a trailing UTF-8 sequence off a line, so that a soft line break does not
197
+ * split the sequence. A line that holds nothing but the sequence, after the escape of a hyphen
198
+ * that starts the line, is kept whole
199
+ *
200
+ * @param line Quoted-Printable encoded line that ends with an escape
201
+ * @returns The line without the escapes of its last multi-byte sequence
202
+ */
203
+ function trimUtf8Sequence(line) {
204
+ let end = line.length;
205
+ while (end >= 3 && line.charCodeAt(end - 3) === 0x3d /* = */) {
206
+ const hi = hexValue(line.charCodeAt(end - 2));
207
+ const lo = hexValue(line.charCodeAt(end - 1));
208
+ if (hi < 0 || lo < 0) {
209
+ break;
210
+ }
211
+ const code = hi * 16 + lo;
212
+ if (code < 0x80) {
213
+ break;
214
+ }
215
+ end -= 3;
216
+ if (code >= 0xc0) {
217
+ // the lead byte of the sequence
218
+ break;
219
+ }
220
+ }
221
+ return end > (line.startsWith('=2D') ? 3 : 0) ? line.substr(0, end) : line;
222
+ }
223
+ // Converts a chunk of a stream to bytes. A stream only hands over a string when its decodeStrings
224
+ // option is off, and then the encoding is the one the chunk was written with
225
+ const toBuffer = (chunk, encoding) => typeof chunk === 'string' ? Buffer.from(chunk, encoding) : chunk;
226
+ // Input is encoded and wrapped this many bytes at a time. wrap() works on strings, and a large
227
+ // chunk handed over at once, such as a whole Buffer attachment, would be held several times over
228
+ // as intermediate strings
229
+ const ENCODE_SLICE_SIZE = 64 * 1024;
230
+ /**
231
+ * Creates a transform stream for encoding data to Quoted-Printable encoding
232
+ */
233
+ export class Encoder extends Transform {
234
+ /**
235
+ * @param [options] Stream options
236
+ * @param [options.lineLength=76] Maximum length for lines, set to false to disable wrapping
237
+ * @param [options.binary=false] Encode every CR or LF that is not part of a CRLF pair
238
+ */
239
+ constructor(options) {
240
+ const opts = options || {};
241
+ super(opts);
242
+ this.options = opts;
243
+ if (this.options.lineLength !== false) {
244
+ this.options.lineLength = this.options.lineLength || 76;
245
+ }
246
+ this._curLine = '';
247
+ this._heldByte = undefined;
248
+ this._lastByte = undefined;
249
+ this.inputBytes = 0;
250
+ this.outputBytes = 0;
251
+ }
252
+ /** @internal */
253
+ _transform(chunk, encoding, done) {
254
+ let buf = toBuffer(chunk, encoding);
255
+ if (!buf || !buf.length) {
256
+ return done();
257
+ }
258
+ this.inputBytes += buf.length;
259
+ if (this._heldByte !== undefined) {
260
+ this._encodeSlices(Buffer.of(this._heldByte), buf[0]);
261
+ this._heldByte = undefined;
262
+ }
263
+ // Whitespace is encoded when it ends a line, and the end of the input counts as one, and a
264
+ // binary CR is a line break only when LF follows. Hold back such a last byte until it is
265
+ // known what follows it, so the output does not depend on where the input was split. Every
266
+ // other byte depends only on its neighbours, which _encodeSlices passes on
267
+ const last = buf[buf.length - 1];
268
+ if (isWhitespace(last) || (this.options.binary && last === 0x0d)) {
269
+ this._heldByte = last;
270
+ buf = buf.subarray(0, buf.length - 1);
271
+ }
272
+ // the bytes before a held back one only need to know it follows them
273
+ this._encodeSlices(buf, this._heldByte);
274
+ done();
275
+ }
276
+ /** @internal */
277
+ _flush(done) {
278
+ if (this._heldByte !== undefined) {
279
+ this._encodeSlices(Buffer.of(this._heldByte), undefined);
280
+ this._heldByte = undefined;
281
+ }
282
+ if (this._curLine) {
283
+ // it can end with a CR that was not wrapped yet
284
+ const qp = wrap(this._curLine, this.options.lineLength);
285
+ this.outputBytes += qp.length;
286
+ this.push(qp, 'ascii');
287
+ this._curLine = '';
288
+ }
289
+ done();
290
+ }
291
+ /**
292
+ * Encodes the input in slices of ENCODE_SLICE_SIZE bytes. Each slice is told the bytes around
293
+ * it, so a slice is encoded as if the input was not split
294
+ *
295
+ * @param buf Bytes to encode
296
+ * @param next The byte that follows buf, undefined when it is not known
297
+ * @internal
298
+ */
299
+ _encodeSlices(buf, next) {
300
+ for (let start = 0; start < buf.length; start += ENCODE_SLICE_SIZE) {
301
+ const end = Math.min(start + ENCODE_SLICE_SIZE, buf.length);
302
+ let qp = encodeBytes(buf.subarray(start, end), end < buf.length ? buf[end] : next, this.options.binary, this._lastByte);
303
+ this._lastByte = buf[end - 1];
304
+ if (this.options.lineLength) {
305
+ qp = this._curLine + qp;
306
+ // a CR at the end is a line break if LF follows, so it is wrapped once that is known
307
+ const cr = qp.endsWith('\r') ? '\r' : '';
308
+ qp = wrap(cr ? qp.slice(0, -1) : qp, this.options.lineLength);
309
+ // the last line is kept until it is known whether it needs a soft break
310
+ const lastLF = qp.lastIndexOf('\n');
311
+ this._curLine = qp.substring(lastLF + 1) + cr;
312
+ qp = qp.substring(0, lastLF + 1);
313
+ }
314
+ if (qp) {
315
+ this.outputBytes += qp.length;
316
+ this.push(qp, 'ascii');
317
+ }
318
+ }
319
+ }
320
+ }
321
+ /**
322
+ * Creates a transform stream for decoding Quoted-Printable encoded strings.
323
+ * The input is not actually processed as a stream but concatted and processed as a single input,
324
+ * so escapes and soft line breaks split across chunks decode the same as unsplit input
325
+ */
326
+ export class Decoder extends Transform {
327
+ /**
328
+ * @param [options] Stream options
329
+ */
330
+ constructor(options) {
331
+ const opts = options || {};
332
+ super(opts);
333
+ this.options = opts;
334
+ this.inputBytes = 0;
335
+ this.outputBytes = 0;
336
+ this.qpChunks = [];
337
+ }
338
+ /** @internal */
339
+ _transform(chunk, encoding, done) {
340
+ if (!chunk || !chunk.length) {
341
+ return done();
342
+ }
343
+ const buf = toBuffer(chunk, encoding);
344
+ // kept as a binary string, so joining the chunks is the only copy made before decoding
345
+ this.qpChunks.push(buf.toString('binary'));
346
+ this.inputBytes += buf.length;
347
+ done();
348
+ }
349
+ /** @internal */
350
+ _flush(done) {
351
+ if (this.inputBytes) {
352
+ const input = this.qpChunks.join('');
353
+ // the chunks are not needed anymore, release them before decoding allocates more
354
+ this.qpChunks = [];
355
+ const buf = decode(input);
356
+ this.outputBytes += buf.length;
357
+ this.push(buf);
358
+ }
359
+ done();
360
+ }
361
+ }
362
+ const libqp = {
363
+ encode,
364
+ decode,
365
+ wrap,
366
+ Encoder,
367
+ Decoder
368
+ };
369
+ export default libqp;
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "module"
3
+ }