cdk-ecr-deployment 2.5.5 → 2.5.21

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 (378) hide show
  1. package/.gitattributes +5 -4
  2. package/.jsii +673 -21
  3. package/.jsii.tabl.json +1 -0
  4. package/.projenrc.ts +100 -0
  5. package/API.md +4 -4
  6. package/README.md +4 -4
  7. package/lambda/go.mod +2 -5
  8. package/lambda/go.sum +39 -14
  9. package/lib/index.d.ts +7 -65
  10. package/lib/index.js +7 -45
  11. package/node_modules/@sindresorhus/is/dist/index.d.ts +12 -7
  12. package/node_modules/@sindresorhus/is/dist/index.js +9 -4
  13. package/node_modules/@sindresorhus/is/dist/types.d.ts +1 -0
  14. package/node_modules/@sindresorhus/is/package.json +1 -1
  15. package/node_modules/@sindresorhus/is/readme.md +25 -7
  16. package/node_modules/@types/cacheable-request/README.md +2 -2
  17. package/node_modules/@types/cacheable-request/node_modules/@types/node/README.md +2 -2
  18. package/node_modules/@types/cacheable-request/node_modules/@types/node/assert.d.ts +135 -75
  19. package/node_modules/@types/cacheable-request/node_modules/@types/node/async_hooks.d.ts +67 -38
  20. package/node_modules/@types/cacheable-request/node_modules/@types/node/buffer.d.ts +226 -104
  21. package/node_modules/@types/cacheable-request/node_modules/@types/node/child_process.d.ts +87 -58
  22. package/node_modules/@types/cacheable-request/node_modules/@types/node/cluster.d.ts +29 -29
  23. package/node_modules/@types/cacheable-request/node_modules/@types/node/console.d.ts +5 -5
  24. package/node_modules/@types/cacheable-request/node_modules/@types/node/crypto.d.ts +888 -256
  25. package/node_modules/@types/cacheable-request/node_modules/@types/node/dgram.d.ts +16 -16
  26. package/node_modules/@types/cacheable-request/node_modules/@types/node/diagnostics_channel.d.ts +60 -21
  27. package/node_modules/@types/cacheable-request/node_modules/@types/node/dns/promises.d.ts +52 -8
  28. package/node_modules/@types/cacheable-request/node_modules/@types/node/dns.d.ts +27 -18
  29. package/node_modules/@types/cacheable-request/node_modules/@types/node/dom-events.d.ts +126 -0
  30. package/node_modules/@types/cacheable-request/node_modules/@types/node/domain.d.ts +6 -5
  31. package/node_modules/@types/cacheable-request/node_modules/@types/node/events.d.ts +166 -93
  32. package/node_modules/@types/cacheable-request/node_modules/@types/node/fs/promises.d.ts +169 -70
  33. package/node_modules/@types/cacheable-request/node_modules/@types/node/fs.d.ts +301 -126
  34. package/node_modules/@types/cacheable-request/node_modules/@types/node/globals.d.ts +22 -13
  35. package/node_modules/@types/cacheable-request/node_modules/@types/node/http.d.ts +453 -125
  36. package/node_modules/@types/cacheable-request/node_modules/@types/node/http2.d.ts +74 -46
  37. package/node_modules/@types/cacheable-request/node_modules/@types/node/https.d.ts +103 -53
  38. package/node_modules/@types/cacheable-request/node_modules/@types/node/index.d.ts +6 -2
  39. package/node_modules/@types/cacheable-request/node_modules/@types/node/inspector.d.ts +20 -16
  40. package/node_modules/@types/cacheable-request/node_modules/@types/node/module.d.ts +6 -4
  41. package/node_modules/@types/cacheable-request/node_modules/@types/node/net.d.ts +114 -22
  42. package/node_modules/@types/cacheable-request/node_modules/@types/node/os.d.ts +36 -14
  43. package/node_modules/@types/cacheable-request/node_modules/@types/node/package.json +15 -3
  44. package/node_modules/@types/cacheable-request/node_modules/@types/node/path.d.ts +37 -26
  45. package/node_modules/@types/cacheable-request/node_modules/@types/node/perf_hooks.d.ts +96 -15
  46. package/node_modules/@types/cacheable-request/node_modules/@types/node/process.d.ts +95 -82
  47. package/node_modules/@types/cacheable-request/node_modules/@types/node/punycode.d.ts +1 -1
  48. package/node_modules/@types/cacheable-request/node_modules/@types/node/querystring.d.ts +6 -6
  49. package/node_modules/@types/cacheable-request/node_modules/@types/node/readline/promises.d.ts +145 -0
  50. package/node_modules/@types/cacheable-request/node_modules/@types/node/readline.d.ts +51 -175
  51. package/node_modules/@types/cacheable-request/node_modules/@types/node/repl.d.ts +21 -21
  52. package/node_modules/@types/cacheable-request/node_modules/@types/node/stream/consumers.d.ts +2 -14
  53. package/node_modules/@types/cacheable-request/node_modules/@types/node/stream.d.ts +983 -824
  54. package/node_modules/@types/cacheable-request/node_modules/@types/node/string_decoder.d.ts +6 -6
  55. package/node_modules/@types/cacheable-request/node_modules/@types/node/test.d.ts +1052 -0
  56. package/node_modules/@types/cacheable-request/node_modules/@types/node/timers/promises.d.ts +26 -1
  57. package/node_modules/@types/cacheable-request/node_modules/@types/node/timers.d.ts +127 -6
  58. package/node_modules/@types/cacheable-request/node_modules/@types/node/tls.d.ts +149 -50
  59. package/node_modules/@types/cacheable-request/node_modules/@types/node/trace_events.d.ts +30 -9
  60. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/assert/strict.d.ts +8 -0
  61. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/assert.d.ts +972 -0
  62. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/async_hooks.d.ts +530 -0
  63. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/buffer.d.ts +2354 -0
  64. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/child_process.d.ts +1395 -0
  65. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/cluster.d.ts +414 -0
  66. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/console.d.ts +412 -0
  67. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/constants.d.ts +18 -0
  68. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/crypto.d.ts +3969 -0
  69. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/dgram.d.ts +545 -0
  70. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/diagnostics_channel.d.ts +191 -0
  71. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/dns/promises.d.ts +414 -0
  72. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/dns.d.ts +668 -0
  73. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/dom-events.d.ts +126 -0
  74. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/domain.d.ts +170 -0
  75. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/events.d.ts +724 -0
  76. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/fs/promises.d.ts +1189 -0
  77. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/fs.d.ts +4044 -0
  78. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/globals.d.ts +303 -0
  79. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/globals.global.d.ts +1 -0
  80. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/http.d.ts +1724 -0
  81. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/http2.d.ts +2129 -0
  82. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/https.d.ts +441 -0
  83. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/index.d.ts +88 -0
  84. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/inspector.d.ts +2748 -0
  85. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/module.d.ts +116 -0
  86. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/net.d.ts +888 -0
  87. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/os.d.ts +477 -0
  88. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/path.d.ts +191 -0
  89. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/perf_hooks.d.ts +638 -0
  90. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/process.d.ts +1494 -0
  91. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/punycode.d.ts +117 -0
  92. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/querystring.d.ts +131 -0
  93. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/readline/promises.d.ts +145 -0
  94. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/readline.d.ts +526 -0
  95. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/repl.d.ts +424 -0
  96. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/stream/consumers.d.ts +12 -0
  97. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/stream/promises.d.ts +42 -0
  98. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/stream/web.d.ts +330 -0
  99. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/stream.d.ts +1392 -0
  100. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/string_decoder.d.ts +67 -0
  101. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/test.d.ts +1052 -0
  102. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/timers/promises.d.ts +93 -0
  103. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/timers.d.ts +215 -0
  104. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/tls.d.ts +1119 -0
  105. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/trace_events.d.ts +182 -0
  106. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/tty.d.ts +208 -0
  107. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/url.d.ts +901 -0
  108. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/util.d.ts +2052 -0
  109. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/v8.d.ts +635 -0
  110. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/vm.d.ts +894 -0
  111. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/wasi.d.ts +152 -0
  112. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/worker_threads.d.ts +693 -0
  113. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts4.8/zlib.d.ts +517 -0
  114. package/node_modules/@types/cacheable-request/node_modules/@types/node/tty.d.ts +11 -7
  115. package/node_modules/@types/cacheable-request/node_modules/@types/node/url.d.ts +66 -56
  116. package/node_modules/@types/cacheable-request/node_modules/@types/node/util.d.ts +528 -70
  117. package/node_modules/@types/cacheable-request/node_modules/@types/node/v8.d.ts +271 -14
  118. package/node_modules/@types/cacheable-request/node_modules/@types/node/vm.d.ts +421 -34
  119. package/node_modules/@types/cacheable-request/node_modules/@types/node/wasi.d.ts +15 -21
  120. package/node_modules/@types/cacheable-request/node_modules/@types/node/worker_threads.d.ts +81 -37
  121. package/node_modules/@types/cacheable-request/node_modules/@types/node/zlib.d.ts +11 -11
  122. package/node_modules/@types/cacheable-request/package.json +5 -5
  123. package/node_modules/@types/keyv/README.md +1 -1
  124. package/node_modules/@types/keyv/index.d.ts +16 -3
  125. package/node_modules/@types/keyv/node_modules/@types/node/README.md +2 -2
  126. package/node_modules/@types/keyv/node_modules/@types/node/assert.d.ts +135 -75
  127. package/node_modules/@types/keyv/node_modules/@types/node/async_hooks.d.ts +67 -38
  128. package/node_modules/@types/keyv/node_modules/@types/node/buffer.d.ts +226 -104
  129. package/node_modules/@types/keyv/node_modules/@types/node/child_process.d.ts +87 -58
  130. package/node_modules/@types/keyv/node_modules/@types/node/cluster.d.ts +29 -29
  131. package/node_modules/@types/keyv/node_modules/@types/node/console.d.ts +5 -5
  132. package/node_modules/@types/keyv/node_modules/@types/node/crypto.d.ts +888 -256
  133. package/node_modules/@types/keyv/node_modules/@types/node/dgram.d.ts +16 -16
  134. package/node_modules/@types/keyv/node_modules/@types/node/diagnostics_channel.d.ts +60 -21
  135. package/node_modules/@types/keyv/node_modules/@types/node/dns/promises.d.ts +52 -8
  136. package/node_modules/@types/keyv/node_modules/@types/node/dns.d.ts +27 -18
  137. package/node_modules/@types/keyv/node_modules/@types/node/dom-events.d.ts +126 -0
  138. package/node_modules/@types/keyv/node_modules/@types/node/domain.d.ts +6 -5
  139. package/node_modules/@types/keyv/node_modules/@types/node/events.d.ts +166 -93
  140. package/node_modules/@types/keyv/node_modules/@types/node/fs/promises.d.ts +169 -70
  141. package/node_modules/@types/keyv/node_modules/@types/node/fs.d.ts +301 -126
  142. package/node_modules/@types/keyv/node_modules/@types/node/globals.d.ts +22 -13
  143. package/node_modules/@types/keyv/node_modules/@types/node/http.d.ts +453 -125
  144. package/node_modules/@types/keyv/node_modules/@types/node/http2.d.ts +74 -46
  145. package/node_modules/@types/keyv/node_modules/@types/node/https.d.ts +103 -53
  146. package/node_modules/@types/keyv/node_modules/@types/node/index.d.ts +6 -2
  147. package/node_modules/@types/keyv/node_modules/@types/node/inspector.d.ts +20 -16
  148. package/node_modules/@types/keyv/node_modules/@types/node/module.d.ts +6 -4
  149. package/node_modules/@types/keyv/node_modules/@types/node/net.d.ts +114 -22
  150. package/node_modules/@types/keyv/node_modules/@types/node/os.d.ts +36 -14
  151. package/node_modules/@types/keyv/node_modules/@types/node/package.json +15 -3
  152. package/node_modules/@types/keyv/node_modules/@types/node/path.d.ts +37 -26
  153. package/node_modules/@types/keyv/node_modules/@types/node/perf_hooks.d.ts +96 -15
  154. package/node_modules/@types/keyv/node_modules/@types/node/process.d.ts +95 -82
  155. package/node_modules/@types/keyv/node_modules/@types/node/punycode.d.ts +1 -1
  156. package/node_modules/@types/keyv/node_modules/@types/node/querystring.d.ts +6 -6
  157. package/node_modules/@types/keyv/node_modules/@types/node/readline/promises.d.ts +145 -0
  158. package/node_modules/@types/keyv/node_modules/@types/node/readline.d.ts +51 -175
  159. package/node_modules/@types/keyv/node_modules/@types/node/repl.d.ts +21 -21
  160. package/node_modules/@types/keyv/node_modules/@types/node/stream/consumers.d.ts +2 -14
  161. package/node_modules/@types/keyv/node_modules/@types/node/stream.d.ts +983 -824
  162. package/node_modules/@types/keyv/node_modules/@types/node/string_decoder.d.ts +6 -6
  163. package/node_modules/@types/keyv/node_modules/@types/node/test.d.ts +1052 -0
  164. package/node_modules/@types/keyv/node_modules/@types/node/timers/promises.d.ts +26 -1
  165. package/node_modules/@types/keyv/node_modules/@types/node/timers.d.ts +127 -6
  166. package/node_modules/@types/keyv/node_modules/@types/node/tls.d.ts +149 -50
  167. package/node_modules/@types/keyv/node_modules/@types/node/trace_events.d.ts +30 -9
  168. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/assert/strict.d.ts +8 -0
  169. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/assert.d.ts +972 -0
  170. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/async_hooks.d.ts +530 -0
  171. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/buffer.d.ts +2354 -0
  172. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/child_process.d.ts +1395 -0
  173. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/cluster.d.ts +414 -0
  174. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/console.d.ts +412 -0
  175. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/constants.d.ts +18 -0
  176. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/crypto.d.ts +3969 -0
  177. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/dgram.d.ts +545 -0
  178. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/diagnostics_channel.d.ts +191 -0
  179. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/dns/promises.d.ts +414 -0
  180. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/dns.d.ts +668 -0
  181. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/dom-events.d.ts +126 -0
  182. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/domain.d.ts +170 -0
  183. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/events.d.ts +724 -0
  184. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/fs/promises.d.ts +1189 -0
  185. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/fs.d.ts +4044 -0
  186. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/globals.d.ts +303 -0
  187. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/globals.global.d.ts +1 -0
  188. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/http.d.ts +1724 -0
  189. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/http2.d.ts +2129 -0
  190. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/https.d.ts +441 -0
  191. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/index.d.ts +88 -0
  192. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/inspector.d.ts +2748 -0
  193. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/module.d.ts +116 -0
  194. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/net.d.ts +888 -0
  195. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/os.d.ts +477 -0
  196. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/path.d.ts +191 -0
  197. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/perf_hooks.d.ts +638 -0
  198. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/process.d.ts +1494 -0
  199. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/punycode.d.ts +117 -0
  200. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/querystring.d.ts +131 -0
  201. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/readline/promises.d.ts +145 -0
  202. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/readline.d.ts +526 -0
  203. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/repl.d.ts +424 -0
  204. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/stream/consumers.d.ts +12 -0
  205. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/stream/promises.d.ts +42 -0
  206. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/stream/web.d.ts +330 -0
  207. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/stream.d.ts +1392 -0
  208. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/string_decoder.d.ts +67 -0
  209. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/test.d.ts +1052 -0
  210. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/timers/promises.d.ts +93 -0
  211. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/timers.d.ts +215 -0
  212. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/tls.d.ts +1119 -0
  213. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/trace_events.d.ts +182 -0
  214. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/tty.d.ts +208 -0
  215. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/url.d.ts +901 -0
  216. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/util.d.ts +2052 -0
  217. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/v8.d.ts +635 -0
  218. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/vm.d.ts +894 -0
  219. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/wasi.d.ts +152 -0
  220. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/worker_threads.d.ts +693 -0
  221. package/node_modules/@types/keyv/node_modules/@types/node/ts4.8/zlib.d.ts +517 -0
  222. package/node_modules/@types/keyv/node_modules/@types/node/tty.d.ts +11 -7
  223. package/node_modules/@types/keyv/node_modules/@types/node/url.d.ts +66 -56
  224. package/node_modules/@types/keyv/node_modules/@types/node/util.d.ts +528 -70
  225. package/node_modules/@types/keyv/node_modules/@types/node/v8.d.ts +271 -14
  226. package/node_modules/@types/keyv/node_modules/@types/node/vm.d.ts +421 -34
  227. package/node_modules/@types/keyv/node_modules/@types/node/wasi.d.ts +15 -21
  228. package/node_modules/@types/keyv/node_modules/@types/node/worker_threads.d.ts +81 -37
  229. package/node_modules/@types/keyv/node_modules/@types/node/zlib.d.ts +11 -11
  230. package/node_modules/@types/keyv/package.json +3 -3
  231. package/node_modules/@types/responselike/node_modules/@types/node/README.md +2 -2
  232. package/node_modules/@types/responselike/node_modules/@types/node/assert.d.ts +135 -75
  233. package/node_modules/@types/responselike/node_modules/@types/node/async_hooks.d.ts +67 -38
  234. package/node_modules/@types/responselike/node_modules/@types/node/buffer.d.ts +226 -104
  235. package/node_modules/@types/responselike/node_modules/@types/node/child_process.d.ts +87 -58
  236. package/node_modules/@types/responselike/node_modules/@types/node/cluster.d.ts +29 -29
  237. package/node_modules/@types/responselike/node_modules/@types/node/console.d.ts +5 -5
  238. package/node_modules/@types/responselike/node_modules/@types/node/crypto.d.ts +888 -256
  239. package/node_modules/@types/responselike/node_modules/@types/node/dgram.d.ts +16 -16
  240. package/node_modules/@types/responselike/node_modules/@types/node/diagnostics_channel.d.ts +60 -21
  241. package/node_modules/@types/responselike/node_modules/@types/node/dns/promises.d.ts +52 -8
  242. package/node_modules/@types/responselike/node_modules/@types/node/dns.d.ts +27 -18
  243. package/node_modules/@types/responselike/node_modules/@types/node/dom-events.d.ts +126 -0
  244. package/node_modules/@types/responselike/node_modules/@types/node/domain.d.ts +6 -5
  245. package/node_modules/@types/responselike/node_modules/@types/node/events.d.ts +166 -93
  246. package/node_modules/@types/responselike/node_modules/@types/node/fs/promises.d.ts +169 -70
  247. package/node_modules/@types/responselike/node_modules/@types/node/fs.d.ts +301 -126
  248. package/node_modules/@types/responselike/node_modules/@types/node/globals.d.ts +22 -13
  249. package/node_modules/@types/responselike/node_modules/@types/node/http.d.ts +453 -125
  250. package/node_modules/@types/responselike/node_modules/@types/node/http2.d.ts +74 -46
  251. package/node_modules/@types/responselike/node_modules/@types/node/https.d.ts +103 -53
  252. package/node_modules/@types/responselike/node_modules/@types/node/index.d.ts +6 -2
  253. package/node_modules/@types/responselike/node_modules/@types/node/inspector.d.ts +20 -16
  254. package/node_modules/@types/responselike/node_modules/@types/node/module.d.ts +6 -4
  255. package/node_modules/@types/responselike/node_modules/@types/node/net.d.ts +114 -22
  256. package/node_modules/@types/responselike/node_modules/@types/node/os.d.ts +36 -14
  257. package/node_modules/@types/responselike/node_modules/@types/node/package.json +15 -3
  258. package/node_modules/@types/responselike/node_modules/@types/node/path.d.ts +37 -26
  259. package/node_modules/@types/responselike/node_modules/@types/node/perf_hooks.d.ts +96 -15
  260. package/node_modules/@types/responselike/node_modules/@types/node/process.d.ts +95 -82
  261. package/node_modules/@types/responselike/node_modules/@types/node/punycode.d.ts +1 -1
  262. package/node_modules/@types/responselike/node_modules/@types/node/querystring.d.ts +6 -6
  263. package/node_modules/@types/responselike/node_modules/@types/node/readline/promises.d.ts +145 -0
  264. package/node_modules/@types/responselike/node_modules/@types/node/readline.d.ts +51 -175
  265. package/node_modules/@types/responselike/node_modules/@types/node/repl.d.ts +21 -21
  266. package/node_modules/@types/responselike/node_modules/@types/node/stream/consumers.d.ts +2 -14
  267. package/node_modules/@types/responselike/node_modules/@types/node/stream.d.ts +983 -824
  268. package/node_modules/@types/responselike/node_modules/@types/node/string_decoder.d.ts +6 -6
  269. package/node_modules/@types/responselike/node_modules/@types/node/test.d.ts +1052 -0
  270. package/node_modules/@types/responselike/node_modules/@types/node/timers/promises.d.ts +26 -1
  271. package/node_modules/@types/responselike/node_modules/@types/node/timers.d.ts +127 -6
  272. package/node_modules/@types/responselike/node_modules/@types/node/tls.d.ts +149 -50
  273. package/node_modules/@types/responselike/node_modules/@types/node/trace_events.d.ts +30 -9
  274. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/assert/strict.d.ts +8 -0
  275. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/assert.d.ts +972 -0
  276. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/async_hooks.d.ts +530 -0
  277. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/buffer.d.ts +2354 -0
  278. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/child_process.d.ts +1395 -0
  279. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/cluster.d.ts +414 -0
  280. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/console.d.ts +412 -0
  281. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/constants.d.ts +18 -0
  282. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/crypto.d.ts +3969 -0
  283. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/dgram.d.ts +545 -0
  284. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/diagnostics_channel.d.ts +191 -0
  285. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/dns/promises.d.ts +414 -0
  286. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/dns.d.ts +668 -0
  287. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/dom-events.d.ts +126 -0
  288. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/domain.d.ts +170 -0
  289. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/events.d.ts +724 -0
  290. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/fs/promises.d.ts +1189 -0
  291. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/fs.d.ts +4044 -0
  292. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/globals.d.ts +303 -0
  293. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/globals.global.d.ts +1 -0
  294. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/http.d.ts +1724 -0
  295. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/http2.d.ts +2129 -0
  296. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/https.d.ts +441 -0
  297. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/index.d.ts +88 -0
  298. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/inspector.d.ts +2748 -0
  299. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/module.d.ts +116 -0
  300. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/net.d.ts +888 -0
  301. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/os.d.ts +477 -0
  302. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/path.d.ts +191 -0
  303. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/perf_hooks.d.ts +638 -0
  304. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/process.d.ts +1494 -0
  305. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/punycode.d.ts +117 -0
  306. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/querystring.d.ts +131 -0
  307. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/readline/promises.d.ts +145 -0
  308. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/readline.d.ts +526 -0
  309. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/repl.d.ts +424 -0
  310. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/stream/consumers.d.ts +12 -0
  311. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/stream/promises.d.ts +42 -0
  312. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/stream/web.d.ts +330 -0
  313. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/stream.d.ts +1392 -0
  314. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/string_decoder.d.ts +67 -0
  315. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/test.d.ts +1052 -0
  316. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/timers/promises.d.ts +93 -0
  317. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/timers.d.ts +215 -0
  318. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/tls.d.ts +1119 -0
  319. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/trace_events.d.ts +182 -0
  320. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/tty.d.ts +208 -0
  321. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/url.d.ts +901 -0
  322. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/util.d.ts +2052 -0
  323. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/v8.d.ts +635 -0
  324. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/vm.d.ts +894 -0
  325. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/wasi.d.ts +152 -0
  326. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/worker_threads.d.ts +693 -0
  327. package/node_modules/@types/responselike/node_modules/@types/node/ts4.8/zlib.d.ts +517 -0
  328. package/node_modules/@types/responselike/node_modules/@types/node/tty.d.ts +11 -7
  329. package/node_modules/@types/responselike/node_modules/@types/node/url.d.ts +66 -56
  330. package/node_modules/@types/responselike/node_modules/@types/node/util.d.ts +528 -70
  331. package/node_modules/@types/responselike/node_modules/@types/node/v8.d.ts +271 -14
  332. package/node_modules/@types/responselike/node_modules/@types/node/vm.d.ts +421 -34
  333. package/node_modules/@types/responselike/node_modules/@types/node/wasi.d.ts +15 -21
  334. package/node_modules/@types/responselike/node_modules/@types/node/worker_threads.d.ts +81 -37
  335. package/node_modules/@types/responselike/node_modules/@types/node/zlib.d.ts +11 -11
  336. package/node_modules/cacheable-request/package.json +1 -1
  337. package/node_modules/clone-response/node_modules/mimic-response/index.js +32 -0
  338. package/node_modules/{get-stream → clone-response/node_modules/mimic-response}/license +1 -1
  339. package/node_modules/clone-response/node_modules/mimic-response/package.json +37 -0
  340. package/node_modules/clone-response/node_modules/mimic-response/readme.md +54 -0
  341. package/node_modules/clone-response/package.json +3 -6
  342. package/node_modules/got/dist/source/as-promise/index.js +2 -1
  343. package/node_modules/got/dist/source/core/index.js +8 -0
  344. package/node_modules/got/dist/source/types.d.ts +8 -8
  345. package/node_modules/got/package.json +2 -1
  346. package/node_modules/http-cache-semantics/index.js +4 -3
  347. package/node_modules/http-cache-semantics/package.json +2 -8
  348. package/node_modules/keyv/README.md +141 -5
  349. package/node_modules/keyv/package.json +56 -50
  350. package/node_modules/keyv/src/index.d.ts +116 -0
  351. package/node_modules/keyv/src/index.js +179 -24
  352. package/node_modules/mimic-response/index.js +58 -13
  353. package/node_modules/mimic-response/license +1 -1
  354. package/node_modules/mimic-response/package.json +40 -35
  355. package/node_modules/mimic-response/readme.md +33 -9
  356. package/node_modules/responselike/package.json +3 -2
  357. package/package.json +54 -25
  358. package/rosetta/default.ts-fixture +17 -0
  359. package/changelog.md +0 -2
  360. package/node_modules/decompress-response/node_modules/mimic-response/index.js +0 -77
  361. package/node_modules/decompress-response/node_modules/mimic-response/package.json +0 -42
  362. package/node_modules/decompress-response/node_modules/mimic-response/readme.md +0 -78
  363. package/node_modules/keyv/.nyc_output/37411020-4142-4b08-b825-343ba2427bf7.json +0 -1
  364. package/node_modules/keyv/.nyc_output/cd79f2de-c8b8-4493-bc15-b2bde28efa4b.json +0 -1
  365. package/node_modules/keyv/.nyc_output/processinfo/37411020-4142-4b08-b825-343ba2427bf7.json +0 -1
  366. package/node_modules/keyv/.nyc_output/processinfo/cd79f2de-c8b8-4493-bc15-b2bde28efa4b.json +0 -1
  367. package/node_modules/keyv/.nyc_output/processinfo/index.json +0 -1
  368. package/node_modules/keyv/test/test.js +0 -132
  369. package/node_modules/keyv/test/testdb.sqlite +0 -0
  370. package/releasetag.txt +0 -1
  371. package/version.txt +0 -1
  372. /package/node_modules/{get-stream → cacheable-request/node_modules/get-stream}/buffer-stream.js +0 -0
  373. /package/node_modules/{get-stream → cacheable-request/node_modules/get-stream}/index.d.ts +0 -0
  374. /package/node_modules/{get-stream → cacheable-request/node_modules/get-stream}/index.js +0 -0
  375. /package/node_modules/{decompress-response/node_modules/mimic-response → cacheable-request/node_modules/get-stream}/license +0 -0
  376. /package/node_modules/{get-stream → cacheable-request/node_modules/get-stream}/package.json +0 -0
  377. /package/node_modules/{get-stream → cacheable-request/node_modules/get-stream}/readme.md +0 -0
  378. /package/node_modules/{decompress-response/node_modules/mimic-response → mimic-response}/index.d.ts +0 -0
@@ -6,64 +6,178 @@ const JSONB = require('json-buffer');
6
6
  const loadStore = options => {
7
7
  const adapters = {
8
8
  redis: '@keyv/redis',
9
+ rediss: '@keyv/redis',
9
10
  mongodb: '@keyv/mongo',
10
11
  mongo: '@keyv/mongo',
11
12
  sqlite: '@keyv/sqlite',
12
13
  postgresql: '@keyv/postgres',
13
14
  postgres: '@keyv/postgres',
14
15
  mysql: '@keyv/mysql',
16
+ etcd: '@keyv/etcd',
17
+ offline: '@keyv/offline',
18
+ tiered: '@keyv/tiered',
15
19
  };
16
20
  if (options.adapter || options.uri) {
17
- const adapter = options.adapter || /^[^:]*/.exec(options.uri)[0];
21
+ const adapter = options.adapter || /^[^:+]*/.exec(options.uri)[0];
18
22
  return new (require(adapters[adapter]))(options);
19
23
  }
20
24
 
21
25
  return new Map();
22
26
  };
23
27
 
28
+ const iterableAdapters = [
29
+ 'sqlite',
30
+ 'postgres',
31
+ 'mysql',
32
+ 'mongo',
33
+ 'redis',
34
+ 'tiered',
35
+ ];
36
+
24
37
  class Keyv extends EventEmitter {
25
- constructor(uri, options) {
38
+ constructor(uri, {emitErrors = true, ...options} = {}) {
26
39
  super();
27
- this.opts = Object.assign(
28
- {
29
- namespace: 'keyv',
30
- serialize: JSONB.stringify,
31
- deserialize: JSONB.parse,
32
- },
33
- (typeof uri === 'string') ? { uri } : uri,
34
- options,
35
- );
40
+ this.opts = {
41
+ namespace: 'keyv',
42
+ serialize: JSONB.stringify,
43
+ deserialize: JSONB.parse,
44
+ ...((typeof uri === 'string') ? {uri} : uri),
45
+ ...options,
46
+ };
36
47
 
37
48
  if (!this.opts.store) {
38
- const adapterOptions = Object.assign({}, this.opts);
49
+ const adapterOptions = {...this.opts};
39
50
  this.opts.store = loadStore(adapterOptions);
40
51
  }
41
52
 
42
- if (typeof this.opts.store.on === 'function') {
53
+ if (this.opts.compression) {
54
+ const compression = this.opts.compression;
55
+ this.opts.serialize = compression.serialize.bind(compression);
56
+ this.opts.deserialize = compression.deserialize.bind(compression);
57
+ }
58
+
59
+ if (typeof this.opts.store.on === 'function' && emitErrors) {
43
60
  this.opts.store.on('error', error => this.emit('error', error));
44
61
  }
45
62
 
46
63
  this.opts.store.namespace = this.opts.namespace;
64
+
65
+ const generateIterator = iterator => async function * () {
66
+ for await (const [key, raw] of typeof iterator === 'function'
67
+ ? iterator(this.opts.store.namespace)
68
+ : iterator) {
69
+ const data = this.opts.deserialize(raw);
70
+ if (this.opts.store.namespace && !key.includes(this.opts.store.namespace)) {
71
+ continue;
72
+ }
73
+
74
+ if (typeof data.expires === 'number' && Date.now() > data.expires) {
75
+ this.delete(key);
76
+ continue;
77
+ }
78
+
79
+ yield [this._getKeyUnprefix(key), data.value];
80
+ }
81
+ };
82
+
83
+ // Attach iterators
84
+ if (typeof this.opts.store[Symbol.iterator] === 'function' && this.opts.store instanceof Map) {
85
+ this.iterator = generateIterator(this.opts.store);
86
+ } else if (typeof this.opts.store.iterator === 'function' && this.opts.store.opts
87
+ && this._checkIterableAdaptar()) {
88
+ this.iterator = generateIterator(this.opts.store.iterator.bind(this.opts.store));
89
+ }
90
+ }
91
+
92
+ _checkIterableAdaptar() {
93
+ return iterableAdapters.includes(this.opts.store.opts.dialect)
94
+ || iterableAdapters.findIndex(element => this.opts.store.opts.url.includes(element)) >= 0;
47
95
  }
48
96
 
49
97
  _getKeyPrefix(key) {
50
98
  return `${this.opts.namespace}:${key}`;
51
99
  }
52
100
 
101
+ _getKeyPrefixArray(keys) {
102
+ return keys.map(key => `${this.opts.namespace}:${key}`);
103
+ }
104
+
105
+ _getKeyUnprefix(key) {
106
+ return key
107
+ .split(':')
108
+ .splice(1)
109
+ .join(':');
110
+ }
111
+
53
112
  get(key, options) {
54
- const keyPrefixed = this._getKeyPrefix(key);
55
- const { store } = this.opts;
113
+ const {store} = this.opts;
114
+ const isArray = Array.isArray(key);
115
+ const keyPrefixed = isArray ? this._getKeyPrefixArray(key) : this._getKeyPrefix(key);
116
+ if (isArray && store.getMany === undefined) {
117
+ const promises = [];
118
+ for (const key of keyPrefixed) {
119
+ promises.push(Promise.resolve()
120
+ .then(() => store.get(key))
121
+ .then(data => (typeof data === 'string') ? this.opts.deserialize(data) : (this.opts.compression ? this.opts.deserialize(data) : data))
122
+ .then(data => {
123
+ if (data === undefined || data === null) {
124
+ return undefined;
125
+ }
126
+
127
+ if (typeof data.expires === 'number' && Date.now() > data.expires) {
128
+ return this.delete(key).then(() => undefined);
129
+ }
130
+
131
+ return (options && options.raw) ? data : data.value;
132
+ }),
133
+ );
134
+ }
135
+
136
+ return Promise.allSettled(promises)
137
+ .then(values => {
138
+ const data = [];
139
+ for (const value of values) {
140
+ data.push(value.value);
141
+ }
142
+
143
+ return data;
144
+ });
145
+ }
146
+
56
147
  return Promise.resolve()
57
- .then(() => store.get(keyPrefixed))
58
- .then(data => (typeof data === 'string') ? this.opts.deserialize(data) : data)
148
+ .then(() => isArray ? store.getMany(keyPrefixed) : store.get(keyPrefixed))
149
+ .then(data => (typeof data === 'string') ? this.opts.deserialize(data) : (this.opts.compression ? this.opts.deserialize(data) : data))
59
150
  .then(data => {
60
- if (data === undefined) {
151
+ if (data === undefined || data === null) {
61
152
  return undefined;
62
153
  }
63
154
 
155
+ if (isArray) {
156
+ const result = [];
157
+
158
+ for (let row of data) {
159
+ if ((typeof row === 'string')) {
160
+ row = this.opts.deserialize(row);
161
+ }
162
+
163
+ if (row === undefined || row === null) {
164
+ result.push(undefined);
165
+ continue;
166
+ }
167
+
168
+ if (typeof row.expires === 'number' && Date.now() > row.expires) {
169
+ this.delete(key).then(() => undefined);
170
+ result.push(undefined);
171
+ } else {
172
+ result.push((options && options.raw) ? row : row.value);
173
+ }
174
+ }
175
+
176
+ return result;
177
+ }
178
+
64
179
  if (typeof data.expires === 'number' && Date.now() > data.expires) {
65
- this.delete(key);
66
- return undefined;
180
+ return this.delete(key).then(() => undefined);
67
181
  }
68
182
 
69
183
  return (options && options.raw) ? data : data.value;
@@ -80,12 +194,16 @@ class Keyv extends EventEmitter {
80
194
  ttl = undefined;
81
195
  }
82
196
 
83
- const { store } = this.opts;
197
+ const {store} = this.opts;
84
198
 
85
199
  return Promise.resolve()
86
200
  .then(() => {
87
201
  const expires = (typeof ttl === 'number') ? (Date.now() + ttl) : null;
88
- value = { value, expires };
202
+ if (typeof value === 'symbol') {
203
+ this.emit('error', 'symbol cannot be serialized');
204
+ }
205
+
206
+ value = {value, expires};
89
207
  return this.opts.serialize(value);
90
208
  })
91
209
  .then(value => store.set(keyPrefixed, value, ttl))
@@ -93,17 +211,54 @@ class Keyv extends EventEmitter {
93
211
  }
94
212
 
95
213
  delete(key) {
214
+ const {store} = this.opts;
215
+ if (Array.isArray(key)) {
216
+ const keyPrefixed = this._getKeyPrefixArray(key);
217
+ if (store.deleteMany === undefined) {
218
+ const promises = [];
219
+ for (const key of keyPrefixed) {
220
+ promises.push(store.delete(key));
221
+ }
222
+
223
+ return Promise.allSettled(promises)
224
+ .then(values => values.every(x => x.value === true));
225
+ }
226
+
227
+ return Promise.resolve()
228
+ .then(() => store.deleteMany(keyPrefixed));
229
+ }
230
+
96
231
  const keyPrefixed = this._getKeyPrefix(key);
97
- const { store } = this.opts;
98
232
  return Promise.resolve()
99
233
  .then(() => store.delete(keyPrefixed));
100
234
  }
101
235
 
102
236
  clear() {
103
- const { store } = this.opts;
237
+ const {store} = this.opts;
104
238
  return Promise.resolve()
105
239
  .then(() => store.clear());
106
240
  }
241
+
242
+ has(key) {
243
+ const keyPrefixed = this._getKeyPrefix(key);
244
+ const {store} = this.opts;
245
+ return Promise.resolve()
246
+ .then(async () => {
247
+ if (typeof store.has === 'function') {
248
+ return store.has(keyPrefixed);
249
+ }
250
+
251
+ const value = await store.get(keyPrefixed);
252
+ return value !== undefined;
253
+ });
254
+ }
255
+
256
+ disconnect() {
257
+ const {store} = this.opts;
258
+ if (typeof store.disconnect === 'function') {
259
+ return store.disconnect();
260
+ }
261
+ }
107
262
  }
108
263
 
109
264
  module.exports = Keyv;
@@ -3,30 +3,75 @@
3
3
  // We define these manually to ensure they're always copied
4
4
  // even if they would move up the prototype chain
5
5
  // https://nodejs.org/api/http.html#http_class_http_incomingmessage
6
- const knownProps = [
7
- 'destroy',
8
- 'setTimeout',
9
- 'socket',
6
+ const knownProperties = [
7
+ 'aborted',
8
+ 'complete',
10
9
  'headers',
11
- 'trailers',
12
- 'rawHeaders',
13
- 'statusCode',
14
10
  'httpVersion',
15
11
  'httpVersionMinor',
16
12
  'httpVersionMajor',
13
+ 'method',
14
+ 'rawHeaders',
17
15
  'rawTrailers',
18
- 'statusMessage'
16
+ 'setTimeout',
17
+ 'socket',
18
+ 'statusCode',
19
+ 'statusMessage',
20
+ 'trailers',
21
+ 'url'
19
22
  ];
20
23
 
21
24
  module.exports = (fromStream, toStream) => {
22
- const fromProps = new Set(Object.keys(fromStream).concat(knownProps));
25
+ if (toStream._readableState.autoDestroy) {
26
+ throw new Error('The second stream must have the `autoDestroy` option set to `false`');
27
+ }
28
+
29
+ const fromProperties = new Set(Object.keys(fromStream).concat(knownProperties));
30
+
31
+ const properties = {};
23
32
 
24
- for (const prop of fromProps) {
25
- // Don't overwrite existing properties
26
- if (prop in toStream) {
33
+ for (const property of fromProperties) {
34
+ // Don't overwrite existing properties.
35
+ if (property in toStream) {
27
36
  continue;
28
37
  }
29
38
 
30
- toStream[prop] = typeof fromStream[prop] === 'function' ? fromStream[prop].bind(fromStream) : fromStream[prop];
39
+ properties[property] = {
40
+ get() {
41
+ const value = fromStream[property];
42
+ const isFunction = typeof value === 'function';
43
+
44
+ return isFunction ? value.bind(fromStream) : value;
45
+ },
46
+ set(value) {
47
+ fromStream[property] = value;
48
+ },
49
+ enumerable: true,
50
+ configurable: false
51
+ };
31
52
  }
53
+
54
+ Object.defineProperties(toStream, properties);
55
+
56
+ fromStream.once('aborted', () => {
57
+ toStream.destroy();
58
+
59
+ toStream.emit('aborted');
60
+ });
61
+
62
+ fromStream.once('close', () => {
63
+ if (fromStream.complete) {
64
+ if (toStream.readable) {
65
+ toStream.once('end', () => {
66
+ toStream.emit('close');
67
+ });
68
+ } else {
69
+ toStream.emit('close');
70
+ }
71
+ } else {
72
+ toStream.emit('close');
73
+ }
74
+ });
75
+
76
+ return toStream;
32
77
  };
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
3
+ Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
4
4
 
5
5
  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:
6
6
 
@@ -1,37 +1,42 @@
1
1
  {
2
- "name": "mimic-response",
3
- "version": "1.0.1",
4
- "description": "Mimic a Node.js HTTP response stream",
5
- "license": "MIT",
6
- "repository": "sindresorhus/mimic-response",
7
- "author": {
8
- "name": "Sindre Sorhus",
9
- "email": "sindresorhus@gmail.com",
10
- "url": "sindresorhus.com"
11
- },
12
- "engines": {
13
- "node": ">=4"
14
- },
15
- "scripts": {
16
- "test": "xo && ava"
17
- },
18
- "files": [
19
- "index.js"
20
- ],
21
- "keywords": [
22
- "mimic",
23
- "response",
24
- "stream",
25
- "http",
26
- "https",
27
- "request",
28
- "get",
29
- "core"
30
- ],
31
- "devDependencies": {
32
- "ava": "*",
33
- "create-test-server": "^0.1.0",
34
- "pify": "^3.0.0",
35
- "xo": "*"
36
- }
2
+ "name": "mimic-response",
3
+ "version": "3.1.0",
4
+ "description": "Mimic a Node.js HTTP response stream",
5
+ "license": "MIT",
6
+ "repository": "sindresorhus/mimic-response",
7
+ "funding": "https://github.com/sponsors/sindresorhus",
8
+ "author": {
9
+ "name": "Sindre Sorhus",
10
+ "email": "sindresorhus@gmail.com",
11
+ "url": "https://sindresorhus.com"
12
+ },
13
+ "engines": {
14
+ "node": ">=10"
15
+ },
16
+ "scripts": {
17
+ "test": "xo && ava && tsd"
18
+ },
19
+ "files": [
20
+ "index.d.ts",
21
+ "index.js"
22
+ ],
23
+ "keywords": [
24
+ "mimic",
25
+ "response",
26
+ "stream",
27
+ "http",
28
+ "https",
29
+ "request",
30
+ "get",
31
+ "core"
32
+ ],
33
+ "devDependencies": {
34
+ "@types/node": "^14.0.1",
35
+ "ava": "^2.4.0",
36
+ "create-test-server": "^2.4.0",
37
+ "p-event": "^4.1.0",
38
+ "pify": "^5.0.0",
39
+ "tsd": "^0.11.0",
40
+ "xo": "^0.30.0"
41
+ }
37
42
  }
@@ -1,15 +1,13 @@
1
- # mimic-response [![Build Status](https://travis-ci.org/sindresorhus/mimic-response.svg?branch=master)](https://travis-ci.org/sindresorhus/mimic-response)
1
+ # mimic-response [![Build Status](https://travis-ci.com/sindresorhus/mimic-response.svg?branch=master)](https://travis-ci.com/sindresorhus/mimic-response)
2
2
 
3
3
  > Mimic a [Node.js HTTP response stream](https://nodejs.org/api/http.html#http_class_http_incomingmessage)
4
4
 
5
-
6
5
  ## Install
7
6
 
8
7
  ```
9
8
  $ npm install mimic-response
10
9
  ```
11
10
 
12
-
13
11
  ## Usage
14
12
 
15
13
  ```js
@@ -25,11 +23,31 @@ console.log(myStream.statusCode);
25
23
  //=> 200
26
24
  ```
27
25
 
28
-
29
26
  ## API
30
27
 
31
28
  ### mimicResponse(from, to)
32
29
 
30
+ **Note #1:** The `from.destroy(error)` function is not proxied. You have to call it manually:
31
+
32
+ ```js
33
+ const stream = require('stream');
34
+ const mimicResponse = require('mimic-response');
35
+
36
+ const responseStream = getHttpResponseStream();
37
+
38
+ const myStream = new stream.PassThrough({
39
+ destroy(error, callback) {
40
+ responseStream.destroy();
41
+
42
+ callback(error);
43
+ }
44
+ });
45
+
46
+ myStream.destroy();
47
+ ```
48
+
49
+ Please note that `myStream` and `responseStream` never throws. The error is passed to the request instead.
50
+
33
51
  #### from
34
52
 
35
53
  Type: `Stream`
@@ -42,13 +60,19 @@ Type: `Stream`
42
60
 
43
61
  Any stream.
44
62
 
45
-
46
63
  ## Related
47
64
 
48
65
  - [mimic-fn](https://github.com/sindresorhus/mimic-fn) - Make a function mimic another one
49
66
  - [clone-response](https://github.com/lukechilds/clone-response) - Clone a Node.js response stream
50
67
 
51
-
52
- ## License
53
-
54
- MIT © [Sindre Sorhus](https://sindresorhus.com)
68
+ ---
69
+
70
+ <div align="center">
71
+ <b>
72
+ <a href="https://tidelift.com/subscription/pkg/npm-mimic-response?utm_source=npm-mimic-response&utm_medium=referral&utm_campaign=readme">Get professional support for this package with a Tidelift subscription</a>
73
+ </b>
74
+ <br>
75
+ <sub>
76
+ Tidelift helps make open source sustainable for maintainers while giving companies<br>assurances about security, maintenance, and licensing for their dependencies.
77
+ </sub>
78
+ </div>
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "responselike",
3
- "version": "2.0.0",
3
+ "version": "2.0.1",
4
4
  "description": "A response-like object for mocking a Node.js HTTP response stream",
5
+ "funding": "https://github.com/sponsors/sindresorhus",
5
6
  "main": "src/index.js",
6
7
  "scripts": {
7
8
  "test": "xo && nyc ava",
@@ -20,7 +21,7 @@
20
21
  ],
21
22
  "repository": {
22
23
  "type": "git",
23
- "url": "https://github.com/lukechilds/responselike.git"
24
+ "url": "https://github.com/sindresorhus/responselike.git"
24
25
  },
25
26
  "author": "lukechilds",
26
27
  "license": "MIT",