isomorfeus-puppetmaster 0.5.5 → 0.5.6

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 (710) hide show
  1. checksums.yaml +4 -4
  2. data/lib/isomorfeus/puppetmaster/console_message.rb +18 -18
  3. data/lib/isomorfeus/puppetmaster/cookie.rb +46 -46
  4. data/lib/isomorfeus/puppetmaster/driver/puppeteer.rb +413 -415
  5. data/lib/isomorfeus/puppetmaster/driver/puppeteer_document.rb +953 -953
  6. data/lib/isomorfeus/puppetmaster/driver/puppeteer_node.rb +851 -851
  7. data/lib/isomorfeus/puppetmaster/errors.rb +90 -90
  8. data/lib/isomorfeus/puppetmaster/iframe.rb +16 -16
  9. data/lib/isomorfeus/puppetmaster/node/content_editable.rb +17 -17
  10. data/lib/isomorfeus/puppetmaster/node/input.rb +20 -20
  11. data/lib/isomorfeus/puppetmaster/node/select.rb +35 -35
  12. data/lib/isomorfeus/puppetmaster/node.rb +279 -279
  13. data/lib/isomorfeus/puppetmaster/request.rb +16 -16
  14. data/lib/isomorfeus/puppetmaster/response.rb +25 -25
  15. data/lib/isomorfeus/puppetmaster/self_forwardable.rb +38 -38
  16. data/lib/isomorfeus/puppetmaster/version.rb +3 -3
  17. data/lib/isomorfeus/puppetmaster.rb +85 -85
  18. data/lib/isomorfeus-puppetmaster.rb +1 -0
  19. data/node_modules/.bin/extract-zip +12 -12
  20. data/node_modules/.bin/extract-zip.ps1 +28 -28
  21. data/node_modules/.bin/rimraf +12 -12
  22. data/node_modules/.bin/rimraf.ps1 +28 -28
  23. data/node_modules/.package-lock.json +530 -585
  24. data/node_modules/@types/node/LICENSE +21 -21
  25. data/node_modules/@types/node/assert/strict.d.ts +8 -8
  26. data/node_modules/@types/node/assert.d.ts +912 -912
  27. data/node_modules/@types/node/async_hooks.d.ts +497 -497
  28. data/node_modules/@types/node/buffer.d.ts +2142 -2142
  29. data/node_modules/@types/node/child_process.d.ts +1355 -1355
  30. data/node_modules/@types/node/cluster.d.ts +414 -414
  31. data/node_modules/@types/node/console.d.ts +407 -407
  32. data/node_modules/@types/node/constants.d.ts +18 -18
  33. data/node_modules/@types/node/crypto.d.ts +3224 -3224
  34. data/node_modules/@types/node/dgram.d.ts +545 -545
  35. data/node_modules/@types/node/diagnostics_channel.d.ts +128 -128
  36. data/node_modules/@types/node/dns/promises.d.ts +357 -357
  37. data/node_modules/@types/node/dns.d.ts +643 -643
  38. data/node_modules/@types/node/domain.d.ts +169 -169
  39. data/node_modules/@types/node/events.d.ts +623 -623
  40. data/node_modules/@types/node/fs/promises.d.ts +997 -997
  41. data/node_modules/@types/node/fs.d.ts +3723 -3723
  42. data/node_modules/@types/node/globals.d.ts +285 -285
  43. data/node_modules/@types/node/globals.global.d.ts +1 -1
  44. data/node_modules/@types/node/http.d.ts +1358 -1358
  45. data/node_modules/@types/node/http2.d.ts +2100 -2100
  46. data/node_modules/@types/node/https.d.ts +391 -391
  47. data/node_modules/@types/node/index.d.ts +131 -131
  48. data/node_modules/@types/node/inspector.d.ts +2738 -2738
  49. data/node_modules/@types/node/module.d.ts +114 -114
  50. data/node_modules/@types/node/net.d.ts +783 -783
  51. data/node_modules/@types/node/os.d.ts +455 -455
  52. data/node_modules/@types/node/package.json +229 -229
  53. data/node_modules/@types/node/path.d.ts +172 -172
  54. data/node_modules/@types/node/perf_hooks.d.ts +555 -555
  55. data/node_modules/@types/node/process.d.ts +1477 -1477
  56. data/node_modules/@types/node/punycode.d.ts +117 -117
  57. data/node_modules/@types/node/querystring.d.ts +131 -131
  58. data/node_modules/@types/node/readline.d.ts +542 -542
  59. data/node_modules/@types/node/repl.d.ts +424 -424
  60. data/node_modules/@types/node/stream/consumers.d.ts +24 -24
  61. data/node_modules/@types/node/stream/promises.d.ts +42 -42
  62. data/node_modules/@types/node/stream/web.d.ts +6 -6
  63. data/node_modules/@types/node/stream.d.ts +1181 -1181
  64. data/node_modules/@types/node/string_decoder.d.ts +67 -67
  65. data/node_modules/@types/node/timers/promises.d.ts +68 -68
  66. data/node_modules/@types/node/timers.d.ts +94 -94
  67. data/node_modules/@types/node/tls.d.ts +1019 -1019
  68. data/node_modules/@types/node/trace_events.d.ts +161 -161
  69. data/node_modules/@types/node/tty.d.ts +206 -206
  70. data/node_modules/@types/node/url.d.ts +798 -798
  71. data/node_modules/@types/node/util.d.ts +1556 -1556
  72. data/node_modules/@types/node/v8.d.ts +378 -378
  73. data/node_modules/@types/node/vm.d.ts +504 -504
  74. data/node_modules/@types/node/wasi.d.ts +153 -153
  75. data/node_modules/@types/node/worker_threads.d.ts +649 -649
  76. data/node_modules/@types/node/zlib.d.ts +517 -517
  77. data/node_modules/@types/yauzl/LICENSE +21 -21
  78. data/node_modules/@types/yauzl/index.d.ts +98 -98
  79. data/node_modules/@types/yauzl/package.json +26 -26
  80. data/node_modules/agent-base/README.md +145 -145
  81. data/node_modules/agent-base/dist/src/index.d.ts +78 -78
  82. data/node_modules/agent-base/dist/src/index.js +202 -202
  83. data/node_modules/agent-base/dist/src/promisify.d.ts +4 -4
  84. data/node_modules/agent-base/dist/src/promisify.js +17 -17
  85. data/node_modules/agent-base/package.json +64 -64
  86. data/node_modules/agent-base/src/index.ts +345 -345
  87. data/node_modules/agent-base/src/promisify.ts +33 -33
  88. data/node_modules/balanced-match/.github/FUNDING.yml +2 -2
  89. data/node_modules/balanced-match/LICENSE.md +21 -21
  90. data/node_modules/balanced-match/README.md +97 -97
  91. data/node_modules/balanced-match/index.js +62 -62
  92. data/node_modules/balanced-match/package.json +48 -48
  93. data/node_modules/base64-js/LICENSE +21 -21
  94. data/node_modules/base64-js/README.md +34 -34
  95. data/node_modules/base64-js/index.d.ts +3 -3
  96. data/node_modules/base64-js/index.js +150 -150
  97. data/node_modules/base64-js/package.json +47 -47
  98. data/node_modules/bl/.travis.yml +17 -17
  99. data/node_modules/bl/BufferList.js +396 -396
  100. data/node_modules/bl/LICENSE.md +13 -13
  101. data/node_modules/bl/README.md +247 -247
  102. data/node_modules/bl/bl.js +84 -84
  103. data/node_modules/bl/package.json +37 -37
  104. data/node_modules/bl/test/convert.js +21 -21
  105. data/node_modules/bl/test/indexOf.js +492 -492
  106. data/node_modules/bl/test/isBufferList.js +32 -32
  107. data/node_modules/bl/test/test.js +869 -869
  108. data/node_modules/brace-expansion/LICENSE +21 -21
  109. data/node_modules/brace-expansion/README.md +129 -129
  110. data/node_modules/brace-expansion/index.js +201 -201
  111. data/node_modules/brace-expansion/package.json +47 -47
  112. data/node_modules/buffer/AUTHORS.md +70 -70
  113. data/node_modules/buffer/LICENSE +21 -21
  114. data/node_modules/buffer/README.md +410 -410
  115. data/node_modules/buffer/index.d.ts +186 -186
  116. data/node_modules/buffer/index.js +1817 -1817
  117. data/node_modules/buffer/package.json +96 -96
  118. data/node_modules/buffer-crc32/LICENSE +19 -19
  119. data/node_modules/buffer-crc32/README.md +47 -47
  120. data/node_modules/buffer-crc32/index.js +111 -111
  121. data/node_modules/buffer-crc32/package.json +39 -39
  122. data/node_modules/chownr/LICENSE +15 -15
  123. data/node_modules/chownr/README.md +3 -3
  124. data/node_modules/chownr/chownr.js +167 -167
  125. data/node_modules/chownr/package.json +29 -29
  126. data/node_modules/concat-map/.travis.yml +4 -4
  127. data/node_modules/concat-map/LICENSE +18 -18
  128. data/node_modules/concat-map/README.markdown +62 -62
  129. data/node_modules/concat-map/example/map.js +6 -6
  130. data/node_modules/concat-map/index.js +13 -13
  131. data/node_modules/concat-map/package.json +43 -43
  132. data/node_modules/concat-map/test/map.js +39 -39
  133. data/node_modules/debug/LICENSE +19 -19
  134. data/node_modules/debug/README.md +455 -455
  135. data/node_modules/debug/package.json +59 -59
  136. data/node_modules/debug/src/browser.js +269 -269
  137. data/node_modules/debug/src/common.js +274 -274
  138. data/node_modules/debug/src/index.js +10 -10
  139. data/node_modules/debug/src/node.js +263 -263
  140. data/node_modules/devtools-protocol/LICENSE +27 -27
  141. data/node_modules/devtools-protocol/README.md +12 -12
  142. data/node_modules/devtools-protocol/json/browser_protocol.json +20985 -20640
  143. data/node_modules/devtools-protocol/json/js_protocol.json +3531 -3580
  144. data/node_modules/devtools-protocol/package.json +17 -18
  145. data/node_modules/devtools-protocol/pdl/browser_protocol.pdl +9849 -9637
  146. data/node_modules/devtools-protocol/pdl/js_protocol.pdl +1653 -1678
  147. data/node_modules/devtools-protocol/types/protocol-mapping.d.ts +4333 -4321
  148. data/node_modules/devtools-protocol/types/protocol-proxy-api.d.ts +3695 -3683
  149. data/node_modules/devtools-protocol/types/protocol.d.ts +15714 -15538
  150. data/node_modules/end-of-stream/LICENSE +20 -20
  151. data/node_modules/end-of-stream/README.md +54 -54
  152. data/node_modules/end-of-stream/index.js +94 -94
  153. data/node_modules/end-of-stream/package.json +37 -37
  154. data/node_modules/extract-zip/LICENSE +23 -23
  155. data/node_modules/extract-zip/cli.js +19 -19
  156. data/node_modules/extract-zip/index.d.ts +21 -21
  157. data/node_modules/extract-zip/index.js +173 -173
  158. data/node_modules/extract-zip/package.json +80 -80
  159. data/node_modules/extract-zip/readme.md +57 -57
  160. data/node_modules/fd-slicer/.npmignore +2 -2
  161. data/node_modules/fd-slicer/.travis.yml +7 -7
  162. data/node_modules/fd-slicer/CHANGELOG.md +49 -49
  163. data/node_modules/fd-slicer/LICENSE +21 -21
  164. data/node_modules/fd-slicer/README.md +199 -199
  165. data/node_modules/fd-slicer/index.js +296 -296
  166. data/node_modules/fd-slicer/package.json +36 -36
  167. data/node_modules/fd-slicer/test/test.js +350 -350
  168. data/node_modules/find-up/index.d.ts +137 -137
  169. data/node_modules/find-up/index.js +89 -89
  170. data/node_modules/find-up/license +9 -9
  171. data/node_modules/find-up/package.json +53 -53
  172. data/node_modules/find-up/readme.md +156 -156
  173. data/node_modules/fs-constants/LICENSE +21 -21
  174. data/node_modules/fs-constants/README.md +26 -26
  175. data/node_modules/fs-constants/browser.js +1 -1
  176. data/node_modules/fs-constants/index.js +1 -1
  177. data/node_modules/fs-constants/package.json +19 -19
  178. data/node_modules/fs.realpath/LICENSE +43 -43
  179. data/node_modules/fs.realpath/README.md +33 -33
  180. data/node_modules/fs.realpath/index.js +66 -66
  181. data/node_modules/fs.realpath/old.js +303 -303
  182. data/node_modules/fs.realpath/package.json +26 -26
  183. data/node_modules/get-stream/buffer-stream.js +52 -52
  184. data/node_modules/get-stream/index.d.ts +108 -108
  185. data/node_modules/get-stream/index.js +60 -60
  186. data/node_modules/get-stream/license +9 -9
  187. data/node_modules/get-stream/package.json +50 -50
  188. data/node_modules/get-stream/readme.md +124 -124
  189. data/node_modules/glob/LICENSE +21 -21
  190. data/node_modules/glob/README.md +375 -375
  191. data/node_modules/glob/changelog.md +67 -67
  192. data/node_modules/glob/common.js +234 -234
  193. data/node_modules/glob/glob.js +788 -788
  194. data/node_modules/glob/package.json +51 -51
  195. data/node_modules/glob/sync.js +484 -484
  196. data/node_modules/https-proxy-agent/README.md +137 -137
  197. data/node_modules/https-proxy-agent/dist/agent.d.ts +30 -30
  198. data/node_modules/https-proxy-agent/dist/agent.js +179 -179
  199. data/node_modules/https-proxy-agent/dist/index.d.ts +23 -23
  200. data/node_modules/https-proxy-agent/dist/index.js +13 -13
  201. data/node_modules/https-proxy-agent/dist/parse-proxy-response.d.ts +7 -7
  202. data/node_modules/https-proxy-agent/dist/parse-proxy-response.js +65 -65
  203. data/node_modules/https-proxy-agent/package.json +56 -56
  204. data/node_modules/ieee754/LICENSE +11 -11
  205. data/node_modules/ieee754/README.md +51 -51
  206. data/node_modules/ieee754/index.d.ts +9 -9
  207. data/node_modules/ieee754/index.js +85 -85
  208. data/node_modules/ieee754/package.json +52 -52
  209. data/node_modules/inflight/LICENSE +15 -15
  210. data/node_modules/inflight/README.md +37 -37
  211. data/node_modules/inflight/inflight.js +54 -54
  212. data/node_modules/inflight/package.json +29 -29
  213. data/node_modules/inherits/LICENSE +16 -16
  214. data/node_modules/inherits/README.md +42 -42
  215. data/node_modules/inherits/inherits.js +9 -9
  216. data/node_modules/inherits/inherits_browser.js +27 -27
  217. data/node_modules/inherits/package.json +29 -29
  218. data/node_modules/locate-path/index.d.ts +83 -83
  219. data/node_modules/locate-path/index.js +65 -65
  220. data/node_modules/locate-path/license +9 -9
  221. data/node_modules/locate-path/package.json +45 -45
  222. data/node_modules/locate-path/readme.md +122 -122
  223. data/node_modules/minimatch/LICENSE +15 -15
  224. data/node_modules/minimatch/README.md +209 -209
  225. data/node_modules/minimatch/minimatch.js +923 -923
  226. data/node_modules/minimatch/package.json +30 -30
  227. data/node_modules/mkdirp-classic/LICENSE +21 -21
  228. data/node_modules/mkdirp-classic/README.md +18 -18
  229. data/node_modules/mkdirp-classic/index.js +98 -98
  230. data/node_modules/mkdirp-classic/package.json +18 -18
  231. data/node_modules/ms/index.js +162 -162
  232. data/node_modules/ms/license.md +21 -21
  233. data/node_modules/ms/package.json +37 -37
  234. data/node_modules/ms/readme.md +60 -60
  235. data/node_modules/node-fetch/LICENSE.md +22 -22
  236. data/node_modules/node-fetch/README.md +590 -590
  237. data/node_modules/node-fetch/browser.js +24 -24
  238. data/node_modules/node-fetch/lib/index.es.js +1662 -1662
  239. data/node_modules/node-fetch/lib/index.js +1671 -1671
  240. data/node_modules/node-fetch/lib/index.mjs +1660 -1660
  241. data/node_modules/node-fetch/package.json +68 -68
  242. data/node_modules/once/LICENSE +15 -15
  243. data/node_modules/once/README.md +79 -79
  244. data/node_modules/once/once.js +42 -42
  245. data/node_modules/once/package.json +33 -33
  246. data/node_modules/p-limit/index.d.ts +38 -38
  247. data/node_modules/p-limit/index.js +57 -57
  248. data/node_modules/p-limit/license +9 -9
  249. data/node_modules/p-limit/package.json +52 -52
  250. data/node_modules/p-limit/readme.md +101 -101
  251. data/node_modules/p-locate/index.d.ts +64 -64
  252. data/node_modules/p-locate/index.js +52 -52
  253. data/node_modules/p-locate/license +9 -9
  254. data/node_modules/p-locate/package.json +53 -53
  255. data/node_modules/p-locate/readme.md +90 -90
  256. data/node_modules/p-try/index.d.ts +39 -39
  257. data/node_modules/p-try/index.js +9 -9
  258. data/node_modules/p-try/license +9 -9
  259. data/node_modules/p-try/package.json +42 -42
  260. data/node_modules/p-try/readme.md +58 -58
  261. data/node_modules/path-exists/index.d.ts +28 -28
  262. data/node_modules/path-exists/index.js +23 -23
  263. data/node_modules/path-exists/license +9 -9
  264. data/node_modules/path-exists/package.json +39 -39
  265. data/node_modules/path-exists/readme.md +52 -52
  266. data/node_modules/path-is-absolute/index.js +20 -20
  267. data/node_modules/path-is-absolute/license +21 -21
  268. data/node_modules/path-is-absolute/package.json +43 -43
  269. data/node_modules/path-is-absolute/readme.md +59 -59
  270. data/node_modules/pend/LICENSE +23 -23
  271. data/node_modules/pend/README.md +41 -41
  272. data/node_modules/pend/index.js +55 -55
  273. data/node_modules/pend/package.json +18 -18
  274. data/node_modules/pend/test.js +137 -137
  275. data/node_modules/pkg-dir/index.d.ts +44 -44
  276. data/node_modules/pkg-dir/index.js +17 -17
  277. data/node_modules/pkg-dir/license +9 -9
  278. data/node_modules/pkg-dir/package.json +56 -56
  279. data/node_modules/pkg-dir/readme.md +66 -66
  280. data/node_modules/progress/CHANGELOG.md +115 -115
  281. data/node_modules/progress/LICENSE +22 -22
  282. data/node_modules/progress/Makefile +8 -8
  283. data/node_modules/progress/Readme.md +146 -146
  284. data/node_modules/progress/index.js +1 -1
  285. data/node_modules/progress/lib/node-progress.js +236 -236
  286. data/node_modules/progress/package.json +26 -26
  287. data/node_modules/proxy-from-env/.eslintrc +29 -29
  288. data/node_modules/proxy-from-env/.travis.yml +10 -10
  289. data/node_modules/proxy-from-env/LICENSE +20 -20
  290. data/node_modules/proxy-from-env/README.md +131 -131
  291. data/node_modules/proxy-from-env/index.js +108 -108
  292. data/node_modules/proxy-from-env/package.json +34 -34
  293. data/node_modules/proxy-from-env/test.js +483 -483
  294. data/node_modules/pump/.travis.yml +5 -5
  295. data/node_modules/pump/LICENSE +20 -20
  296. data/node_modules/pump/README.md +65 -65
  297. data/node_modules/pump/index.js +82 -82
  298. data/node_modules/pump/package.json +24 -24
  299. data/node_modules/pump/test-browser.js +66 -66
  300. data/node_modules/pump/test-node.js +53 -53
  301. data/node_modules/puppeteer-core/CHANGELOG.md +319 -290
  302. data/node_modules/puppeteer-core/LICENSE +202 -202
  303. data/node_modules/puppeteer-core/README.md +481 -481
  304. data/node_modules/puppeteer-core/cjs-entry-core.js +29 -29
  305. data/node_modules/puppeteer-core/cjs-entry.js +29 -29
  306. data/node_modules/puppeteer-core/install.js +89 -89
  307. data/node_modules/puppeteer-core/lib/cjs/puppeteer/api-docs-entry.d.ts +110 -110
  308. data/node_modules/puppeteer-core/lib/cjs/puppeteer/api-docs-entry.js +80 -80
  309. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Accessibility.d.ts +175 -175
  310. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Accessibility.js +360 -360
  311. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/AriaQueryHandler.d.ts +20 -20
  312. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/AriaQueryHandler.js +84 -84
  313. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/AriaQueryHandler.js.map +1 -1
  314. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Browser.d.ts +455 -455
  315. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Browser.js +540 -540
  316. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/BrowserConnector.d.ts +53 -53
  317. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/BrowserConnector.js +97 -97
  318. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/BrowserWebSocketTransport.d.ts +25 -25
  319. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/BrowserWebSocketTransport.js +34 -34
  320. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Connection.d.ts +135 -135
  321. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Connection.js +298 -298
  322. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ConnectionTransport.d.ts +24 -24
  323. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ConnectionTransport.js +17 -17
  324. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ConsoleMessage.d.ts +72 -72
  325. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ConsoleMessage.js +64 -64
  326. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Coverage.d.ts +204 -204
  327. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Coverage.js +335 -335
  328. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DOMWorld.d.ts +175 -175
  329. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DOMWorld.js +662 -662
  330. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Debug.d.ts +52 -52
  331. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Debug.js +81 -81
  332. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DeviceDescriptors.d.ts +40 -40
  333. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DeviceDescriptors.js +1070 -1070
  334. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Dialog.d.ts +74 -74
  335. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Dialog.js +97 -97
  336. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EmulationManager.d.ts +24 -24
  337. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EmulationManager.js +37 -37
  338. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Errors.d.ts +50 -50
  339. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Errors.js +56 -56
  340. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EvalTypes.d.ts +60 -60
  341. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EvalTypes.js +17 -17
  342. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EventEmitter.d.ts +92 -92
  343. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EventEmitter.js +116 -116
  344. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Events.d.ts +81 -81
  345. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Events.js +86 -86
  346. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ExecutionContext.d.ts +193 -193
  347. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ExecutionContext.js +321 -321
  348. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FileChooser.d.ts +58 -58
  349. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FileChooser.js +71 -71
  350. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FrameManager.d.ts +744 -744
  351. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FrameManager.js +1047 -1047
  352. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FrameManager.js.map +1 -1
  353. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPRequest.d.ts +350 -345
  354. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPRequest.d.ts.map +1 -1
  355. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPRequest.js +549 -549
  356. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPRequest.js.map +1 -1
  357. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPResponse.d.ts +134 -125
  358. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPResponse.d.ts.map +1 -1
  359. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPResponse.js +184 -164
  360. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPResponse.js.map +1 -1
  361. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Input.d.ts +358 -358
  362. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Input.js +543 -543
  363. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/JSHandle.d.ts +490 -490
  364. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/JSHandle.js +827 -827
  365. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts +65 -65
  366. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts.map +1 -1
  367. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js +149 -148
  368. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js.map +1 -1
  369. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkConditions.d.ts +26 -26
  370. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkConditions.js +33 -33
  371. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkManager.d.ts +126 -97
  372. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkManager.d.ts.map +1 -1
  373. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkManager.js +467 -342
  374. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkManager.js.map +1 -1
  375. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/PDFOptions.d.ts +161 -161
  376. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/PDFOptions.js +34 -34
  377. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Page.d.ts +2055 -2055
  378. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Page.js +2533 -2533
  379. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Product.d.ts +20 -20
  380. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Product.js +17 -17
  381. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Puppeteer.d.ts +159 -159
  382. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Puppeteer.js +161 -161
  383. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/PuppeteerViewport.d.ts +51 -51
  384. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/PuppeteerViewport.js +2 -2
  385. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/QueryHandler.d.ts +64 -64
  386. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/QueryHandler.js +165 -165
  387. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/SecurityDetails.d.ts +60 -60
  388. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/SecurityDetails.js +76 -76
  389. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Target.d.ts +100 -100
  390. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Target.js +145 -145
  391. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TaskQueue.d.ts +20 -20
  392. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TaskQueue.js +29 -29
  393. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TimeoutSettings.d.ts +27 -27
  394. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TimeoutSettings.js +47 -47
  395. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Tracing.d.ts +46 -46
  396. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Tracing.js +109 -109
  397. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/USKeyboardLayout.d.ts +39 -39
  398. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/USKeyboardLayout.js +406 -406
  399. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/WebWorker.d.ts +98 -98
  400. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/WebWorker.js +112 -112
  401. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/assert.d.ts +22 -22
  402. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/assert.js +33 -33
  403. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/fetch.d.ts +16 -16
  404. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/fetch.js +43 -43
  405. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/helper.d.ts +84 -84
  406. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/helper.js +327 -327
  407. data/node_modules/puppeteer-core/lib/cjs/puppeteer/environment.d.ts +16 -16
  408. data/node_modules/puppeteer-core/lib/cjs/puppeteer/environment.js +19 -19
  409. data/node_modules/puppeteer-core/lib/cjs/puppeteer/global.d.ts +16 -16
  410. data/node_modules/puppeteer-core/lib/cjs/puppeteer/global.js +2 -2
  411. data/node_modules/puppeteer-core/lib/cjs/puppeteer/initialize-node.d.ts +17 -17
  412. data/node_modules/puppeteer-core/lib/cjs/puppeteer/initialize-node.js +44 -44
  413. data/node_modules/puppeteer-core/lib/cjs/puppeteer/initialize-web.d.ts +17 -17
  414. data/node_modules/puppeteer-core/lib/cjs/puppeteer/initialize-web.js +26 -26
  415. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserFetcher.d.ts +133 -133
  416. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserFetcher.js +500 -500
  417. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserRunner.d.ts +40 -39
  418. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserRunner.d.ts.map +1 -1
  419. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserRunner.js +256 -230
  420. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserRunner.js.map +1 -1
  421. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/LaunchOptions.d.ts +134 -134
  422. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/LaunchOptions.js +17 -17
  423. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Launcher.d.ts +16 -16
  424. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Launcher.d.ts.map +1 -1
  425. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Launcher.js +655 -588
  426. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Launcher.js.map +1 -1
  427. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/NodeWebSocketTransport.d.ts +26 -26
  428. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/NodeWebSocketTransport.js +47 -47
  429. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/PipeTransport.d.ts +29 -29
  430. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/PipeTransport.js +64 -64
  431. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Puppeteer.d.ts +153 -153
  432. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Puppeteer.js +188 -188
  433. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/install.d.ts +17 -17
  434. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/install.js +173 -173
  435. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node-puppeteer-core.d.ts +17 -17
  436. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node-puppeteer-core.js +24 -24
  437. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node.d.ts +17 -17
  438. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node.js +23 -23
  439. data/node_modules/puppeteer-core/lib/cjs/puppeteer/revisions.d.ts +21 -21
  440. data/node_modules/puppeteer-core/lib/cjs/puppeteer/revisions.js +22 -22
  441. data/node_modules/puppeteer-core/lib/cjs/puppeteer/web.d.ts +17 -17
  442. data/node_modules/puppeteer-core/lib/cjs/puppeteer/web.js +23 -23
  443. data/node_modules/puppeteer-core/lib/cjs/vendor/mitt/src/index.d.ts +27 -27
  444. data/node_modules/puppeteer-core/lib/cjs/vendor/mitt/src/index.js +56 -56
  445. data/node_modules/puppeteer-core/lib/esm/puppeteer/api-docs-entry.d.ts +110 -110
  446. data/node_modules/puppeteer-core/lib/esm/puppeteer/api-docs-entry.js +80 -80
  447. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Accessibility.d.ts +175 -175
  448. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Accessibility.js +356 -356
  449. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/AriaQueryHandler.d.ts +20 -20
  450. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/AriaQueryHandler.js +81 -81
  451. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/AriaQueryHandler.js.map +1 -1
  452. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Browser.d.ts +455 -455
  453. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Browser.js +535 -535
  454. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/BrowserConnector.d.ts +53 -53
  455. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/BrowserConnector.js +74 -74
  456. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/BrowserWebSocketTransport.d.ts +25 -25
  457. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/BrowserWebSocketTransport.js +30 -30
  458. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Connection.d.ts +135 -135
  459. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Connection.js +293 -293
  460. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/ConnectionTransport.d.ts +24 -24
  461. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/ConnectionTransport.js +16 -16
  462. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/ConsoleMessage.d.ts +72 -72
  463. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/ConsoleMessage.js +60 -60
  464. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Coverage.d.ts +204 -204
  465. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Coverage.js +329 -329
  466. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DOMWorld.d.ts +175 -175
  467. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DOMWorld.js +657 -657
  468. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Debug.d.ts +52 -52
  469. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Debug.js +77 -77
  470. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DeviceDescriptors.d.ts +40 -40
  471. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DeviceDescriptors.js +1067 -1067
  472. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Dialog.d.ts +74 -74
  473. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Dialog.js +93 -93
  474. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EmulationManager.d.ts +24 -24
  475. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EmulationManager.js +33 -33
  476. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Errors.d.ts +50 -50
  477. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Errors.js +50 -50
  478. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EvalTypes.d.ts +60 -60
  479. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EvalTypes.js +16 -16
  480. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EventEmitter.d.ts +92 -92
  481. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EventEmitter.js +109 -109
  482. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Events.d.ts +81 -81
  483. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Events.js +83 -83
  484. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/ExecutionContext.d.ts +193 -193
  485. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/ExecutionContext.js +317 -317
  486. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FileChooser.d.ts +58 -58
  487. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FileChooser.js +67 -67
  488. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FrameManager.d.ts +744 -744
  489. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FrameManager.js +1042 -1042
  490. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FrameManager.js.map +1 -1
  491. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPRequest.d.ts +350 -345
  492. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPRequest.d.ts.map +1 -1
  493. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPRequest.js +545 -545
  494. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPRequest.js.map +1 -1
  495. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPResponse.d.ts +134 -125
  496. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPResponse.d.ts.map +1 -1
  497. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPResponse.js +180 -160
  498. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPResponse.js.map +1 -1
  499. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Input.d.ts +358 -358
  500. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Input.js +537 -537
  501. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/JSHandle.d.ts +490 -490
  502. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/JSHandle.js +802 -802
  503. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/LifecycleWatcher.d.ts +65 -65
  504. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/LifecycleWatcher.d.ts.map +1 -1
  505. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/LifecycleWatcher.js +145 -144
  506. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/LifecycleWatcher.js.map +1 -1
  507. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkConditions.d.ts +26 -26
  508. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkConditions.js +30 -30
  509. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManager.d.ts +126 -97
  510. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManager.d.ts.map +1 -1
  511. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManager.js +463 -338
  512. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManager.js.map +1 -1
  513. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/PDFOptions.d.ts +161 -161
  514. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/PDFOptions.js +31 -31
  515. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Page.d.ts +2055 -2055
  516. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Page.js +2529 -2529
  517. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Product.d.ts +20 -20
  518. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Product.js +16 -16
  519. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Puppeteer.d.ts +159 -159
  520. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Puppeteer.js +157 -157
  521. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/PuppeteerViewport.d.ts +51 -51
  522. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/PuppeteerViewport.js +1 -1
  523. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/QueryHandler.d.ts +64 -64
  524. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/QueryHandler.js +157 -157
  525. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/SecurityDetails.d.ts +60 -60
  526. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/SecurityDetails.js +72 -72
  527. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Target.d.ts +100 -100
  528. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Target.js +141 -141
  529. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TaskQueue.d.ts +20 -20
  530. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TaskQueue.js +25 -25
  531. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TimeoutSettings.d.ts +27 -27
  532. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TimeoutSettings.js +43 -43
  533. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Tracing.d.ts +46 -46
  534. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Tracing.js +105 -105
  535. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/USKeyboardLayout.d.ts +39 -39
  536. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/USKeyboardLayout.js +403 -403
  537. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/WebWorker.d.ts +98 -98
  538. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/WebWorker.js +108 -108
  539. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/assert.d.ts +22 -22
  540. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/assert.js +28 -28
  541. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/fetch.d.ts +16 -16
  542. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/fetch.js +20 -20
  543. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/helper.d.ts +84 -84
  544. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/helper.js +305 -305
  545. data/node_modules/puppeteer-core/lib/esm/puppeteer/environment.d.ts +16 -16
  546. data/node_modules/puppeteer-core/lib/esm/puppeteer/environment.js +16 -16
  547. data/node_modules/puppeteer-core/lib/esm/puppeteer/global.d.ts +16 -16
  548. data/node_modules/puppeteer-core/lib/esm/puppeteer/global.js +1 -1
  549. data/node_modules/puppeteer-core/lib/esm/puppeteer/initialize-node.d.ts +17 -17
  550. data/node_modules/puppeteer-core/lib/esm/puppeteer/initialize-node.js +37 -37
  551. data/node_modules/puppeteer-core/lib/esm/puppeteer/initialize-web.d.ts +17 -17
  552. data/node_modules/puppeteer-core/lib/esm/puppeteer/initialize-web.js +22 -22
  553. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserFetcher.d.ts +133 -133
  554. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserFetcher.js +474 -474
  555. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserRunner.d.ts +40 -39
  556. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserRunner.d.ts.map +1 -1
  557. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserRunner.js +230 -204
  558. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserRunner.js.map +1 -1
  559. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/LaunchOptions.d.ts +134 -134
  560. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/LaunchOptions.js +16 -16
  561. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Launcher.d.ts +16 -16
  562. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Launcher.d.ts.map +1 -1
  563. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Launcher.js +633 -566
  564. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Launcher.js.map +1 -1
  565. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/NodeWebSocketTransport.d.ts +26 -26
  566. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/NodeWebSocketTransport.js +40 -40
  567. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/PipeTransport.d.ts +29 -29
  568. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/PipeTransport.js +60 -60
  569. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Puppeteer.d.ts +153 -153
  570. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Puppeteer.js +181 -181
  571. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/install.d.ts +17 -17
  572. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/install.js +165 -165
  573. data/node_modules/puppeteer-core/lib/esm/puppeteer/node-puppeteer-core.d.ts +17 -17
  574. data/node_modules/puppeteer-core/lib/esm/puppeteer/node-puppeteer-core.js +22 -22
  575. data/node_modules/puppeteer-core/lib/esm/puppeteer/node.d.ts +17 -17
  576. data/node_modules/puppeteer-core/lib/esm/puppeteer/node.js +21 -21
  577. data/node_modules/puppeteer-core/lib/esm/puppeteer/revisions.d.ts +21 -21
  578. data/node_modules/puppeteer-core/lib/esm/puppeteer/revisions.js +19 -19
  579. data/node_modules/puppeteer-core/lib/esm/puppeteer/web.d.ts +17 -17
  580. data/node_modules/puppeteer-core/lib/esm/puppeteer/web.js +21 -21
  581. data/node_modules/puppeteer-core/lib/esm/vendor/mitt/src/index.d.ts +27 -27
  582. data/node_modules/puppeteer-core/lib/esm/vendor/mitt/src/index.js +53 -53
  583. data/node_modules/puppeteer-core/lib/types.d.ts +67 -25
  584. data/node_modules/puppeteer-core/package.json +115 -115
  585. data/node_modules/puppeteer-core/typescript-if-required.js +61 -61
  586. data/node_modules/readable-stream/CONTRIBUTING.md +38 -38
  587. data/node_modules/readable-stream/GOVERNANCE.md +136 -136
  588. data/node_modules/readable-stream/LICENSE +47 -47
  589. data/node_modules/readable-stream/README.md +106 -106
  590. data/node_modules/readable-stream/errors-browser.js +127 -127
  591. data/node_modules/readable-stream/errors.js +116 -116
  592. data/node_modules/readable-stream/experimentalWarning.js +17 -17
  593. data/node_modules/readable-stream/lib/_stream_duplex.js +138 -138
  594. data/node_modules/readable-stream/lib/_stream_passthrough.js +38 -38
  595. data/node_modules/readable-stream/lib/_stream_readable.js +1123 -1123
  596. data/node_modules/readable-stream/lib/_stream_transform.js +200 -200
  597. data/node_modules/readable-stream/lib/_stream_writable.js +696 -696
  598. data/node_modules/readable-stream/lib/internal/streams/async_iterator.js +206 -206
  599. data/node_modules/readable-stream/lib/internal/streams/buffer_list.js +209 -209
  600. data/node_modules/readable-stream/lib/internal/streams/destroy.js +104 -104
  601. data/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +103 -103
  602. data/node_modules/readable-stream/lib/internal/streams/from-browser.js +3 -3
  603. data/node_modules/readable-stream/lib/internal/streams/from.js +63 -63
  604. data/node_modules/readable-stream/lib/internal/streams/pipeline.js +96 -96
  605. data/node_modules/readable-stream/lib/internal/streams/state.js +26 -26
  606. data/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -1
  607. data/node_modules/readable-stream/lib/internal/streams/stream.js +1 -1
  608. data/node_modules/readable-stream/package.json +68 -68
  609. data/node_modules/readable-stream/readable-browser.js +9 -9
  610. data/node_modules/readable-stream/readable.js +16 -16
  611. data/node_modules/rimraf/CHANGELOG.md +65 -65
  612. data/node_modules/rimraf/LICENSE +15 -15
  613. data/node_modules/rimraf/README.md +101 -101
  614. data/node_modules/rimraf/bin.js +68 -68
  615. data/node_modules/rimraf/package.json +32 -32
  616. data/node_modules/rimraf/rimraf.js +360 -360
  617. data/node_modules/safe-buffer/LICENSE +21 -21
  618. data/node_modules/safe-buffer/README.md +584 -584
  619. data/node_modules/safe-buffer/index.d.ts +186 -186
  620. data/node_modules/safe-buffer/index.js +65 -65
  621. data/node_modules/safe-buffer/package.json +51 -51
  622. data/node_modules/string_decoder/LICENSE +48 -48
  623. data/node_modules/string_decoder/README.md +47 -47
  624. data/node_modules/string_decoder/lib/string_decoder.js +295 -295
  625. data/node_modules/string_decoder/package.json +34 -34
  626. data/node_modules/tar-fs/.travis.yml +6 -6
  627. data/node_modules/tar-fs/LICENSE +20 -20
  628. data/node_modules/tar-fs/README.md +165 -165
  629. data/node_modules/tar-fs/index.js +351 -351
  630. data/node_modules/tar-fs/package.json +41 -41
  631. data/node_modules/tar-fs/test/fixtures/a/hello.txt +1 -1
  632. data/node_modules/tar-fs/test/fixtures/b/a/test.txt +1 -1
  633. data/node_modules/tar-fs/test/index.js +346 -346
  634. data/node_modules/tar-stream/LICENSE +20 -20
  635. data/node_modules/tar-stream/README.md +168 -168
  636. data/node_modules/tar-stream/extract.js +257 -257
  637. data/node_modules/tar-stream/headers.js +295 -295
  638. data/node_modules/tar-stream/index.js +2 -2
  639. data/node_modules/tar-stream/pack.js +255 -255
  640. data/node_modules/tar-stream/package.json +58 -58
  641. data/node_modules/tar-stream/sandbox.js +11 -11
  642. data/node_modules/through/.travis.yml +5 -5
  643. data/node_modules/through/LICENSE.APACHE2 +15 -15
  644. data/node_modules/through/LICENSE.MIT +24 -24
  645. data/node_modules/through/index.js +108 -108
  646. data/node_modules/through/package.json +36 -36
  647. data/node_modules/through/readme.markdown +64 -64
  648. data/node_modules/through/test/async.js +28 -28
  649. data/node_modules/through/test/auto-destroy.js +30 -30
  650. data/node_modules/through/test/buffering.js +71 -71
  651. data/node_modules/through/test/end.js +45 -45
  652. data/node_modules/through/test/index.js +133 -133
  653. data/node_modules/tr46/.npmignore +4 -4
  654. data/node_modules/tr46/index.js +193 -193
  655. data/node_modules/tr46/package.json +31 -31
  656. data/node_modules/unbzip2-stream/LICENSE +24 -24
  657. data/node_modules/unbzip2-stream/README.md +59 -59
  658. data/node_modules/unbzip2-stream/dist/unbzip2-stream.min.js +1 -1
  659. data/node_modules/unbzip2-stream/index.js +93 -93
  660. data/node_modules/unbzip2-stream/lib/bit_iterator.js +39 -39
  661. data/node_modules/unbzip2-stream/lib/bzip2.js +365 -365
  662. data/node_modules/unbzip2-stream/package.json +51 -51
  663. data/node_modules/util-deprecate/History.md +16 -16
  664. data/node_modules/util-deprecate/LICENSE +24 -24
  665. data/node_modules/util-deprecate/README.md +53 -53
  666. data/node_modules/util-deprecate/browser.js +67 -67
  667. data/node_modules/util-deprecate/node.js +6 -6
  668. data/node_modules/util-deprecate/package.json +27 -27
  669. data/node_modules/webidl-conversions/LICENSE.md +12 -12
  670. data/node_modules/webidl-conversions/README.md +53 -53
  671. data/node_modules/webidl-conversions/lib/index.js +189 -189
  672. data/node_modules/webidl-conversions/package.json +23 -23
  673. data/node_modules/whatwg-url/LICENSE.txt +21 -21
  674. data/node_modules/whatwg-url/README.md +67 -67
  675. data/node_modules/whatwg-url/lib/URL-impl.js +200 -200
  676. data/node_modules/whatwg-url/lib/URL.js +196 -196
  677. data/node_modules/whatwg-url/lib/public-api.js +11 -11
  678. data/node_modules/whatwg-url/lib/utils.js +20 -20
  679. data/node_modules/whatwg-url/package.json +32 -32
  680. data/node_modules/wrappy/LICENSE +15 -15
  681. data/node_modules/wrappy/README.md +36 -36
  682. data/node_modules/wrappy/package.json +29 -29
  683. data/node_modules/wrappy/wrappy.js +33 -33
  684. data/node_modules/ws/LICENSE +19 -19
  685. data/node_modules/ws/README.md +493 -493
  686. data/node_modules/ws/browser.js +8 -8
  687. data/node_modules/ws/index.js +13 -13
  688. data/node_modules/ws/lib/buffer-util.js +126 -126
  689. data/node_modules/ws/lib/constants.js +12 -12
  690. data/node_modules/ws/lib/event-target.js +266 -266
  691. data/node_modules/ws/lib/extension.js +203 -203
  692. data/node_modules/ws/lib/limiter.js +55 -55
  693. data/node_modules/ws/lib/permessage-deflate.js +511 -511
  694. data/node_modules/ws/lib/receiver.js +612 -612
  695. data/node_modules/ws/lib/sender.js +422 -422
  696. data/node_modules/ws/lib/stream.js +180 -180
  697. data/node_modules/ws/lib/subprotocol.js +62 -62
  698. data/node_modules/ws/lib/validation.js +124 -124
  699. data/node_modules/ws/lib/websocket-server.js +485 -485
  700. data/node_modules/ws/lib/websocket.js +1149 -1149
  701. data/node_modules/ws/package.json +61 -61
  702. data/node_modules/ws/wrapper.mjs +8 -8
  703. data/node_modules/yauzl/LICENSE +21 -21
  704. data/node_modules/yauzl/README.md +658 -658
  705. data/node_modules/yauzl/index.js +796 -796
  706. data/node_modules/yauzl/package.json +40 -40
  707. data/package.json +1 -1
  708. metadata +23 -25
  709. data/node_modules/devtools-protocol/changelog.md +0 -10491
  710. data/node_modules/devtools-protocol/externs/protocol_externs.js +0 -9734
@@ -1,697 +1,697 @@
1
- // Copyright Joyent, Inc. and other Node contributors.
2
- //
3
- // Permission is hereby granted, free of charge, to any person obtaining a
4
- // copy of this software and associated documentation files (the
5
- // "Software"), to deal in the Software without restriction, including
6
- // without limitation the rights to use, copy, modify, merge, publish,
7
- // distribute, sublicense, and/or sell copies of the Software, and to permit
8
- // persons to whom the Software is furnished to do so, subject to the
9
- // following conditions:
10
- //
11
- // The above copyright notice and this permission notice shall be included
12
- // in all copies or substantial portions of the Software.
13
- //
14
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15
- // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
17
- // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
18
- // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
19
- // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
20
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
21
- // A bit simpler than readable streams.
22
- // Implement an async ._write(chunk, encoding, cb), and it'll handle all
23
- // the drain event emission and buffering.
24
- 'use strict';
25
-
26
- module.exports = Writable;
27
- /* <replacement> */
28
-
29
- function WriteReq(chunk, encoding, cb) {
30
- this.chunk = chunk;
31
- this.encoding = encoding;
32
- this.callback = cb;
33
- this.next = null;
34
- } // It seems a linked list but it is not
35
- // there will be only 2 of these for each stream
36
-
37
-
38
- function CorkedRequest(state) {
39
- var _this = this;
40
-
41
- this.next = null;
42
- this.entry = null;
43
-
44
- this.finish = function () {
45
- onCorkedFinish(_this, state);
46
- };
47
- }
48
- /* </replacement> */
49
-
50
- /*<replacement>*/
51
-
52
-
53
- var Duplex;
54
- /*</replacement>*/
55
-
56
- Writable.WritableState = WritableState;
57
- /*<replacement>*/
58
-
59
- var internalUtil = {
60
- deprecate: require('util-deprecate')
61
- };
62
- /*</replacement>*/
63
-
64
- /*<replacement>*/
65
-
66
- var Stream = require('./internal/streams/stream');
67
- /*</replacement>*/
68
-
69
-
70
- var Buffer = require('buffer').Buffer;
71
-
72
- var OurUint8Array = global.Uint8Array || function () {};
73
-
74
- function _uint8ArrayToBuffer(chunk) {
75
- return Buffer.from(chunk);
76
- }
77
-
78
- function _isUint8Array(obj) {
79
- return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;
80
- }
81
-
82
- var destroyImpl = require('./internal/streams/destroy');
83
-
84
- var _require = require('./internal/streams/state'),
85
- getHighWaterMark = _require.getHighWaterMark;
86
-
87
- var _require$codes = require('../errors').codes,
88
- ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,
89
- ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,
90
- ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,
91
- ERR_STREAM_CANNOT_PIPE = _require$codes.ERR_STREAM_CANNOT_PIPE,
92
- ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED,
93
- ERR_STREAM_NULL_VALUES = _require$codes.ERR_STREAM_NULL_VALUES,
94
- ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END,
95
- ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING;
96
-
97
- var errorOrDestroy = destroyImpl.errorOrDestroy;
98
-
99
- require('inherits')(Writable, Stream);
100
-
101
- function nop() {}
102
-
103
- function WritableState(options, stream, isDuplex) {
104
- Duplex = Duplex || require('./_stream_duplex');
105
- options = options || {}; // Duplex streams are both readable and writable, but share
106
- // the same options object.
107
- // However, some cases require setting options to different
108
- // values for the readable and the writable sides of the duplex stream,
109
- // e.g. options.readableObjectMode vs. options.writableObjectMode, etc.
110
-
111
- if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex; // object stream flag to indicate whether or not this stream
112
- // contains buffers or objects.
113
-
114
- this.objectMode = !!options.objectMode;
115
- if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode; // the point at which write() starts returning false
116
- // Note: 0 is a valid value, means that we always return false if
117
- // the entire buffer is not flushed immediately on write()
118
-
119
- this.highWaterMark = getHighWaterMark(this, options, 'writableHighWaterMark', isDuplex); // if _final has been called
120
-
121
- this.finalCalled = false; // drain event flag.
122
-
123
- this.needDrain = false; // at the start of calling end()
124
-
125
- this.ending = false; // when end() has been called, and returned
126
-
127
- this.ended = false; // when 'finish' is emitted
128
-
129
- this.finished = false; // has it been destroyed
130
-
131
- this.destroyed = false; // should we decode strings into buffers before passing to _write?
132
- // this is here so that some node-core streams can optimize string
133
- // handling at a lower level.
134
-
135
- var noDecode = options.decodeStrings === false;
136
- this.decodeStrings = !noDecode; // Crypto is kind of old and crusty. Historically, its default string
137
- // encoding is 'binary' so we have to make this configurable.
138
- // Everything else in the universe uses 'utf8', though.
139
-
140
- this.defaultEncoding = options.defaultEncoding || 'utf8'; // not an actual buffer we keep track of, but a measurement
141
- // of how much we're waiting to get pushed to some underlying
142
- // socket or file.
143
-
144
- this.length = 0; // a flag to see when we're in the middle of a write.
145
-
146
- this.writing = false; // when true all writes will be buffered until .uncork() call
147
-
148
- this.corked = 0; // a flag to be able to tell if the onwrite cb is called immediately,
149
- // or on a later tick. We set this to true at first, because any
150
- // actions that shouldn't happen until "later" should generally also
151
- // not happen before the first write call.
152
-
153
- this.sync = true; // a flag to know if we're processing previously buffered items, which
154
- // may call the _write() callback in the same tick, so that we don't
155
- // end up in an overlapped onwrite situation.
156
-
157
- this.bufferProcessing = false; // the callback that's passed to _write(chunk,cb)
158
-
159
- this.onwrite = function (er) {
160
- onwrite(stream, er);
161
- }; // the callback that the user supplies to write(chunk,encoding,cb)
162
-
163
-
164
- this.writecb = null; // the amount that is being written when _write is called.
165
-
166
- this.writelen = 0;
167
- this.bufferedRequest = null;
168
- this.lastBufferedRequest = null; // number of pending user-supplied write callbacks
169
- // this must be 0 before 'finish' can be emitted
170
-
171
- this.pendingcb = 0; // emit prefinish if the only thing we're waiting for is _write cbs
172
- // This is relevant for synchronous Transform streams
173
-
174
- this.prefinished = false; // True if the error was already emitted and should not be thrown again
175
-
176
- this.errorEmitted = false; // Should close be emitted on destroy. Defaults to true.
177
-
178
- this.emitClose = options.emitClose !== false; // Should .destroy() be called after 'finish' (and potentially 'end')
179
-
180
- this.autoDestroy = !!options.autoDestroy; // count buffered requests
181
-
182
- this.bufferedRequestCount = 0; // allocate the first CorkedRequest, there is always
183
- // one allocated and free to use, and we maintain at most two
184
-
185
- this.corkedRequestsFree = new CorkedRequest(this);
186
- }
187
-
188
- WritableState.prototype.getBuffer = function getBuffer() {
189
- var current = this.bufferedRequest;
190
- var out = [];
191
-
192
- while (current) {
193
- out.push(current);
194
- current = current.next;
195
- }
196
-
197
- return out;
198
- };
199
-
200
- (function () {
201
- try {
202
- Object.defineProperty(WritableState.prototype, 'buffer', {
203
- get: internalUtil.deprecate(function writableStateBufferGetter() {
204
- return this.getBuffer();
205
- }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')
206
- });
207
- } catch (_) {}
208
- })(); // Test _writableState for inheritance to account for Duplex streams,
209
- // whose prototype chain only points to Readable.
210
-
211
-
212
- var realHasInstance;
213
-
214
- if (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {
215
- realHasInstance = Function.prototype[Symbol.hasInstance];
216
- Object.defineProperty(Writable, Symbol.hasInstance, {
217
- value: function value(object) {
218
- if (realHasInstance.call(this, object)) return true;
219
- if (this !== Writable) return false;
220
- return object && object._writableState instanceof WritableState;
221
- }
222
- });
223
- } else {
224
- realHasInstance = function realHasInstance(object) {
225
- return object instanceof this;
226
- };
227
- }
228
-
229
- function Writable(options) {
230
- Duplex = Duplex || require('./_stream_duplex'); // Writable ctor is applied to Duplexes, too.
231
- // `realHasInstance` is necessary because using plain `instanceof`
232
- // would return false, as no `_writableState` property is attached.
233
- // Trying to use the custom `instanceof` for Writable here will also break the
234
- // Node.js LazyTransform implementation, which has a non-trivial getter for
235
- // `_writableState` that would lead to infinite recursion.
236
- // Checking for a Stream.Duplex instance is faster here instead of inside
237
- // the WritableState constructor, at least with V8 6.5
238
-
239
- var isDuplex = this instanceof Duplex;
240
- if (!isDuplex && !realHasInstance.call(Writable, this)) return new Writable(options);
241
- this._writableState = new WritableState(options, this, isDuplex); // legacy.
242
-
243
- this.writable = true;
244
-
245
- if (options) {
246
- if (typeof options.write === 'function') this._write = options.write;
247
- if (typeof options.writev === 'function') this._writev = options.writev;
248
- if (typeof options.destroy === 'function') this._destroy = options.destroy;
249
- if (typeof options.final === 'function') this._final = options.final;
250
- }
251
-
252
- Stream.call(this);
253
- } // Otherwise people can pipe Writable streams, which is just wrong.
254
-
255
-
256
- Writable.prototype.pipe = function () {
257
- errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE());
258
- };
259
-
260
- function writeAfterEnd(stream, cb) {
261
- var er = new ERR_STREAM_WRITE_AFTER_END(); // TODO: defer error events consistently everywhere, not just the cb
262
-
263
- errorOrDestroy(stream, er);
264
- process.nextTick(cb, er);
265
- } // Checks that a user-supplied chunk is valid, especially for the particular
266
- // mode the stream is in. Currently this means that `null` is never accepted
267
- // and undefined/non-string values are only allowed in object mode.
268
-
269
-
270
- function validChunk(stream, state, chunk, cb) {
271
- var er;
272
-
273
- if (chunk === null) {
274
- er = new ERR_STREAM_NULL_VALUES();
275
- } else if (typeof chunk !== 'string' && !state.objectMode) {
276
- er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer'], chunk);
277
- }
278
-
279
- if (er) {
280
- errorOrDestroy(stream, er);
281
- process.nextTick(cb, er);
282
- return false;
283
- }
284
-
285
- return true;
286
- }
287
-
288
- Writable.prototype.write = function (chunk, encoding, cb) {
289
- var state = this._writableState;
290
- var ret = false;
291
-
292
- var isBuf = !state.objectMode && _isUint8Array(chunk);
293
-
294
- if (isBuf && !Buffer.isBuffer(chunk)) {
295
- chunk = _uint8ArrayToBuffer(chunk);
296
- }
297
-
298
- if (typeof encoding === 'function') {
299
- cb = encoding;
300
- encoding = null;
301
- }
302
-
303
- if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;
304
- if (typeof cb !== 'function') cb = nop;
305
- if (state.ending) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {
306
- state.pendingcb++;
307
- ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);
308
- }
309
- return ret;
310
- };
311
-
312
- Writable.prototype.cork = function () {
313
- this._writableState.corked++;
314
- };
315
-
316
- Writable.prototype.uncork = function () {
317
- var state = this._writableState;
318
-
319
- if (state.corked) {
320
- state.corked--;
321
- if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);
322
- }
323
- };
324
-
325
- Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {
326
- // node::ParseEncoding() requires lower case.
327
- if (typeof encoding === 'string') encoding = encoding.toLowerCase();
328
- if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new ERR_UNKNOWN_ENCODING(encoding);
329
- this._writableState.defaultEncoding = encoding;
330
- return this;
331
- };
332
-
333
- Object.defineProperty(Writable.prototype, 'writableBuffer', {
334
- // making it explicit this property is not enumerable
335
- // because otherwise some prototype manipulation in
336
- // userland will fail
337
- enumerable: false,
338
- get: function get() {
339
- return this._writableState && this._writableState.getBuffer();
340
- }
341
- });
342
-
343
- function decodeChunk(state, chunk, encoding) {
344
- if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {
345
- chunk = Buffer.from(chunk, encoding);
346
- }
347
-
348
- return chunk;
349
- }
350
-
351
- Object.defineProperty(Writable.prototype, 'writableHighWaterMark', {
352
- // making it explicit this property is not enumerable
353
- // because otherwise some prototype manipulation in
354
- // userland will fail
355
- enumerable: false,
356
- get: function get() {
357
- return this._writableState.highWaterMark;
358
- }
359
- }); // if we're already writing something, then just put this
360
- // in the queue, and wait our turn. Otherwise, call _write
361
- // If we return false, then we need a drain event, so set that flag.
362
-
363
- function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {
364
- if (!isBuf) {
365
- var newChunk = decodeChunk(state, chunk, encoding);
366
-
367
- if (chunk !== newChunk) {
368
- isBuf = true;
369
- encoding = 'buffer';
370
- chunk = newChunk;
371
- }
372
- }
373
-
374
- var len = state.objectMode ? 1 : chunk.length;
375
- state.length += len;
376
- var ret = state.length < state.highWaterMark; // we must ensure that previous needDrain will not be reset to false.
377
-
378
- if (!ret) state.needDrain = true;
379
-
380
- if (state.writing || state.corked) {
381
- var last = state.lastBufferedRequest;
382
- state.lastBufferedRequest = {
383
- chunk: chunk,
384
- encoding: encoding,
385
- isBuf: isBuf,
386
- callback: cb,
387
- next: null
388
- };
389
-
390
- if (last) {
391
- last.next = state.lastBufferedRequest;
392
- } else {
393
- state.bufferedRequest = state.lastBufferedRequest;
394
- }
395
-
396
- state.bufferedRequestCount += 1;
397
- } else {
398
- doWrite(stream, state, false, len, chunk, encoding, cb);
399
- }
400
-
401
- return ret;
402
- }
403
-
404
- function doWrite(stream, state, writev, len, chunk, encoding, cb) {
405
- state.writelen = len;
406
- state.writecb = cb;
407
- state.writing = true;
408
- state.sync = true;
409
- if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED('write'));else if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);
410
- state.sync = false;
411
- }
412
-
413
- function onwriteError(stream, state, sync, er, cb) {
414
- --state.pendingcb;
415
-
416
- if (sync) {
417
- // defer the callback if we are being called synchronously
418
- // to avoid piling up things on the stack
419
- process.nextTick(cb, er); // this can emit finish, and it will always happen
420
- // after error
421
-
422
- process.nextTick(finishMaybe, stream, state);
423
- stream._writableState.errorEmitted = true;
424
- errorOrDestroy(stream, er);
425
- } else {
426
- // the caller expect this to happen before if
427
- // it is async
428
- cb(er);
429
- stream._writableState.errorEmitted = true;
430
- errorOrDestroy(stream, er); // this can emit finish, but finish must
431
- // always follow error
432
-
433
- finishMaybe(stream, state);
434
- }
435
- }
436
-
437
- function onwriteStateUpdate(state) {
438
- state.writing = false;
439
- state.writecb = null;
440
- state.length -= state.writelen;
441
- state.writelen = 0;
442
- }
443
-
444
- function onwrite(stream, er) {
445
- var state = stream._writableState;
446
- var sync = state.sync;
447
- var cb = state.writecb;
448
- if (typeof cb !== 'function') throw new ERR_MULTIPLE_CALLBACK();
449
- onwriteStateUpdate(state);
450
- if (er) onwriteError(stream, state, sync, er, cb);else {
451
- // Check if we're actually ready to finish, but don't emit yet
452
- var finished = needFinish(state) || stream.destroyed;
453
-
454
- if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {
455
- clearBuffer(stream, state);
456
- }
457
-
458
- if (sync) {
459
- process.nextTick(afterWrite, stream, state, finished, cb);
460
- } else {
461
- afterWrite(stream, state, finished, cb);
462
- }
463
- }
464
- }
465
-
466
- function afterWrite(stream, state, finished, cb) {
467
- if (!finished) onwriteDrain(stream, state);
468
- state.pendingcb--;
469
- cb();
470
- finishMaybe(stream, state);
471
- } // Must force callback to be called on nextTick, so that we don't
472
- // emit 'drain' before the write() consumer gets the 'false' return
473
- // value, and has a chance to attach a 'drain' listener.
474
-
475
-
476
- function onwriteDrain(stream, state) {
477
- if (state.length === 0 && state.needDrain) {
478
- state.needDrain = false;
479
- stream.emit('drain');
480
- }
481
- } // if there's something in the buffer waiting, then process it
482
-
483
-
484
- function clearBuffer(stream, state) {
485
- state.bufferProcessing = true;
486
- var entry = state.bufferedRequest;
487
-
488
- if (stream._writev && entry && entry.next) {
489
- // Fast case, write everything using _writev()
490
- var l = state.bufferedRequestCount;
491
- var buffer = new Array(l);
492
- var holder = state.corkedRequestsFree;
493
- holder.entry = entry;
494
- var count = 0;
495
- var allBuffers = true;
496
-
497
- while (entry) {
498
- buffer[count] = entry;
499
- if (!entry.isBuf) allBuffers = false;
500
- entry = entry.next;
501
- count += 1;
502
- }
503
-
504
- buffer.allBuffers = allBuffers;
505
- doWrite(stream, state, true, state.length, buffer, '', holder.finish); // doWrite is almost always async, defer these to save a bit of time
506
- // as the hot path ends with doWrite
507
-
508
- state.pendingcb++;
509
- state.lastBufferedRequest = null;
510
-
511
- if (holder.next) {
512
- state.corkedRequestsFree = holder.next;
513
- holder.next = null;
514
- } else {
515
- state.corkedRequestsFree = new CorkedRequest(state);
516
- }
517
-
518
- state.bufferedRequestCount = 0;
519
- } else {
520
- // Slow case, write chunks one-by-one
521
- while (entry) {
522
- var chunk = entry.chunk;
523
- var encoding = entry.encoding;
524
- var cb = entry.callback;
525
- var len = state.objectMode ? 1 : chunk.length;
526
- doWrite(stream, state, false, len, chunk, encoding, cb);
527
- entry = entry.next;
528
- state.bufferedRequestCount--; // if we didn't call the onwrite immediately, then
529
- // it means that we need to wait until it does.
530
- // also, that means that the chunk and cb are currently
531
- // being processed, so move the buffer counter past them.
532
-
533
- if (state.writing) {
534
- break;
535
- }
536
- }
537
-
538
- if (entry === null) state.lastBufferedRequest = null;
539
- }
540
-
541
- state.bufferedRequest = entry;
542
- state.bufferProcessing = false;
543
- }
544
-
545
- Writable.prototype._write = function (chunk, encoding, cb) {
546
- cb(new ERR_METHOD_NOT_IMPLEMENTED('_write()'));
547
- };
548
-
549
- Writable.prototype._writev = null;
550
-
551
- Writable.prototype.end = function (chunk, encoding, cb) {
552
- var state = this._writableState;
553
-
554
- if (typeof chunk === 'function') {
555
- cb = chunk;
556
- chunk = null;
557
- encoding = null;
558
- } else if (typeof encoding === 'function') {
559
- cb = encoding;
560
- encoding = null;
561
- }
562
-
563
- if (chunk !== null && chunk !== undefined) this.write(chunk, encoding); // .end() fully uncorks
564
-
565
- if (state.corked) {
566
- state.corked = 1;
567
- this.uncork();
568
- } // ignore unnecessary end() calls.
569
-
570
-
571
- if (!state.ending) endWritable(this, state, cb);
572
- return this;
573
- };
574
-
575
- Object.defineProperty(Writable.prototype, 'writableLength', {
576
- // making it explicit this property is not enumerable
577
- // because otherwise some prototype manipulation in
578
- // userland will fail
579
- enumerable: false,
580
- get: function get() {
581
- return this._writableState.length;
582
- }
583
- });
584
-
585
- function needFinish(state) {
586
- return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;
587
- }
588
-
589
- function callFinal(stream, state) {
590
- stream._final(function (err) {
591
- state.pendingcb--;
592
-
593
- if (err) {
594
- errorOrDestroy(stream, err);
595
- }
596
-
597
- state.prefinished = true;
598
- stream.emit('prefinish');
599
- finishMaybe(stream, state);
600
- });
601
- }
602
-
603
- function prefinish(stream, state) {
604
- if (!state.prefinished && !state.finalCalled) {
605
- if (typeof stream._final === 'function' && !state.destroyed) {
606
- state.pendingcb++;
607
- state.finalCalled = true;
608
- process.nextTick(callFinal, stream, state);
609
- } else {
610
- state.prefinished = true;
611
- stream.emit('prefinish');
612
- }
613
- }
614
- }
615
-
616
- function finishMaybe(stream, state) {
617
- var need = needFinish(state);
618
-
619
- if (need) {
620
- prefinish(stream, state);
621
-
622
- if (state.pendingcb === 0) {
623
- state.finished = true;
624
- stream.emit('finish');
625
-
626
- if (state.autoDestroy) {
627
- // In case of duplex streams we need a way to detect
628
- // if the readable side is ready for autoDestroy as well
629
- var rState = stream._readableState;
630
-
631
- if (!rState || rState.autoDestroy && rState.endEmitted) {
632
- stream.destroy();
633
- }
634
- }
635
- }
636
- }
637
-
638
- return need;
639
- }
640
-
641
- function endWritable(stream, state, cb) {
642
- state.ending = true;
643
- finishMaybe(stream, state);
644
-
645
- if (cb) {
646
- if (state.finished) process.nextTick(cb);else stream.once('finish', cb);
647
- }
648
-
649
- state.ended = true;
650
- stream.writable = false;
651
- }
652
-
653
- function onCorkedFinish(corkReq, state, err) {
654
- var entry = corkReq.entry;
655
- corkReq.entry = null;
656
-
657
- while (entry) {
658
- var cb = entry.callback;
659
- state.pendingcb--;
660
- cb(err);
661
- entry = entry.next;
662
- } // reuse the free corkReq.
663
-
664
-
665
- state.corkedRequestsFree.next = corkReq;
666
- }
667
-
668
- Object.defineProperty(Writable.prototype, 'destroyed', {
669
- // making it explicit this property is not enumerable
670
- // because otherwise some prototype manipulation in
671
- // userland will fail
672
- enumerable: false,
673
- get: function get() {
674
- if (this._writableState === undefined) {
675
- return false;
676
- }
677
-
678
- return this._writableState.destroyed;
679
- },
680
- set: function set(value) {
681
- // we ignore the value if the stream
682
- // has not been initialized yet
683
- if (!this._writableState) {
684
- return;
685
- } // backward compatibility, the user is explicitly
686
- // managing destroyed
687
-
688
-
689
- this._writableState.destroyed = value;
690
- }
691
- });
692
- Writable.prototype.destroy = destroyImpl.destroy;
693
- Writable.prototype._undestroy = destroyImpl.undestroy;
694
-
695
- Writable.prototype._destroy = function (err, cb) {
696
- cb(err);
1
+ // Copyright Joyent, Inc. and other Node contributors.
2
+ //
3
+ // Permission is hereby granted, free of charge, to any person obtaining a
4
+ // copy of this software and associated documentation files (the
5
+ // "Software"), to deal in the Software without restriction, including
6
+ // without limitation the rights to use, copy, modify, merge, publish,
7
+ // distribute, sublicense, and/or sell copies of the Software, and to permit
8
+ // persons to whom the Software is furnished to do so, subject to the
9
+ // following conditions:
10
+ //
11
+ // The above copyright notice and this permission notice shall be included
12
+ // in all copies or substantial portions of the Software.
13
+ //
14
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15
+ // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
17
+ // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
18
+ // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
19
+ // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
20
+ // USE OR OTHER DEALINGS IN THE SOFTWARE.
21
+ // A bit simpler than readable streams.
22
+ // Implement an async ._write(chunk, encoding, cb), and it'll handle all
23
+ // the drain event emission and buffering.
24
+ 'use strict';
25
+
26
+ module.exports = Writable;
27
+ /* <replacement> */
28
+
29
+ function WriteReq(chunk, encoding, cb) {
30
+ this.chunk = chunk;
31
+ this.encoding = encoding;
32
+ this.callback = cb;
33
+ this.next = null;
34
+ } // It seems a linked list but it is not
35
+ // there will be only 2 of these for each stream
36
+
37
+
38
+ function CorkedRequest(state) {
39
+ var _this = this;
40
+
41
+ this.next = null;
42
+ this.entry = null;
43
+
44
+ this.finish = function () {
45
+ onCorkedFinish(_this, state);
46
+ };
47
+ }
48
+ /* </replacement> */
49
+
50
+ /*<replacement>*/
51
+
52
+
53
+ var Duplex;
54
+ /*</replacement>*/
55
+
56
+ Writable.WritableState = WritableState;
57
+ /*<replacement>*/
58
+
59
+ var internalUtil = {
60
+ deprecate: require('util-deprecate')
61
+ };
62
+ /*</replacement>*/
63
+
64
+ /*<replacement>*/
65
+
66
+ var Stream = require('./internal/streams/stream');
67
+ /*</replacement>*/
68
+
69
+
70
+ var Buffer = require('buffer').Buffer;
71
+
72
+ var OurUint8Array = global.Uint8Array || function () {};
73
+
74
+ function _uint8ArrayToBuffer(chunk) {
75
+ return Buffer.from(chunk);
76
+ }
77
+
78
+ function _isUint8Array(obj) {
79
+ return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;
80
+ }
81
+
82
+ var destroyImpl = require('./internal/streams/destroy');
83
+
84
+ var _require = require('./internal/streams/state'),
85
+ getHighWaterMark = _require.getHighWaterMark;
86
+
87
+ var _require$codes = require('../errors').codes,
88
+ ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,
89
+ ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,
90
+ ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,
91
+ ERR_STREAM_CANNOT_PIPE = _require$codes.ERR_STREAM_CANNOT_PIPE,
92
+ ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED,
93
+ ERR_STREAM_NULL_VALUES = _require$codes.ERR_STREAM_NULL_VALUES,
94
+ ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END,
95
+ ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING;
96
+
97
+ var errorOrDestroy = destroyImpl.errorOrDestroy;
98
+
99
+ require('inherits')(Writable, Stream);
100
+
101
+ function nop() {}
102
+
103
+ function WritableState(options, stream, isDuplex) {
104
+ Duplex = Duplex || require('./_stream_duplex');
105
+ options = options || {}; // Duplex streams are both readable and writable, but share
106
+ // the same options object.
107
+ // However, some cases require setting options to different
108
+ // values for the readable and the writable sides of the duplex stream,
109
+ // e.g. options.readableObjectMode vs. options.writableObjectMode, etc.
110
+
111
+ if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex; // object stream flag to indicate whether or not this stream
112
+ // contains buffers or objects.
113
+
114
+ this.objectMode = !!options.objectMode;
115
+ if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode; // the point at which write() starts returning false
116
+ // Note: 0 is a valid value, means that we always return false if
117
+ // the entire buffer is not flushed immediately on write()
118
+
119
+ this.highWaterMark = getHighWaterMark(this, options, 'writableHighWaterMark', isDuplex); // if _final has been called
120
+
121
+ this.finalCalled = false; // drain event flag.
122
+
123
+ this.needDrain = false; // at the start of calling end()
124
+
125
+ this.ending = false; // when end() has been called, and returned
126
+
127
+ this.ended = false; // when 'finish' is emitted
128
+
129
+ this.finished = false; // has it been destroyed
130
+
131
+ this.destroyed = false; // should we decode strings into buffers before passing to _write?
132
+ // this is here so that some node-core streams can optimize string
133
+ // handling at a lower level.
134
+
135
+ var noDecode = options.decodeStrings === false;
136
+ this.decodeStrings = !noDecode; // Crypto is kind of old and crusty. Historically, its default string
137
+ // encoding is 'binary' so we have to make this configurable.
138
+ // Everything else in the universe uses 'utf8', though.
139
+
140
+ this.defaultEncoding = options.defaultEncoding || 'utf8'; // not an actual buffer we keep track of, but a measurement
141
+ // of how much we're waiting to get pushed to some underlying
142
+ // socket or file.
143
+
144
+ this.length = 0; // a flag to see when we're in the middle of a write.
145
+
146
+ this.writing = false; // when true all writes will be buffered until .uncork() call
147
+
148
+ this.corked = 0; // a flag to be able to tell if the onwrite cb is called immediately,
149
+ // or on a later tick. We set this to true at first, because any
150
+ // actions that shouldn't happen until "later" should generally also
151
+ // not happen before the first write call.
152
+
153
+ this.sync = true; // a flag to know if we're processing previously buffered items, which
154
+ // may call the _write() callback in the same tick, so that we don't
155
+ // end up in an overlapped onwrite situation.
156
+
157
+ this.bufferProcessing = false; // the callback that's passed to _write(chunk,cb)
158
+
159
+ this.onwrite = function (er) {
160
+ onwrite(stream, er);
161
+ }; // the callback that the user supplies to write(chunk,encoding,cb)
162
+
163
+
164
+ this.writecb = null; // the amount that is being written when _write is called.
165
+
166
+ this.writelen = 0;
167
+ this.bufferedRequest = null;
168
+ this.lastBufferedRequest = null; // number of pending user-supplied write callbacks
169
+ // this must be 0 before 'finish' can be emitted
170
+
171
+ this.pendingcb = 0; // emit prefinish if the only thing we're waiting for is _write cbs
172
+ // This is relevant for synchronous Transform streams
173
+
174
+ this.prefinished = false; // True if the error was already emitted and should not be thrown again
175
+
176
+ this.errorEmitted = false; // Should close be emitted on destroy. Defaults to true.
177
+
178
+ this.emitClose = options.emitClose !== false; // Should .destroy() be called after 'finish' (and potentially 'end')
179
+
180
+ this.autoDestroy = !!options.autoDestroy; // count buffered requests
181
+
182
+ this.bufferedRequestCount = 0; // allocate the first CorkedRequest, there is always
183
+ // one allocated and free to use, and we maintain at most two
184
+
185
+ this.corkedRequestsFree = new CorkedRequest(this);
186
+ }
187
+
188
+ WritableState.prototype.getBuffer = function getBuffer() {
189
+ var current = this.bufferedRequest;
190
+ var out = [];
191
+
192
+ while (current) {
193
+ out.push(current);
194
+ current = current.next;
195
+ }
196
+
197
+ return out;
198
+ };
199
+
200
+ (function () {
201
+ try {
202
+ Object.defineProperty(WritableState.prototype, 'buffer', {
203
+ get: internalUtil.deprecate(function writableStateBufferGetter() {
204
+ return this.getBuffer();
205
+ }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')
206
+ });
207
+ } catch (_) {}
208
+ })(); // Test _writableState for inheritance to account for Duplex streams,
209
+ // whose prototype chain only points to Readable.
210
+
211
+
212
+ var realHasInstance;
213
+
214
+ if (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {
215
+ realHasInstance = Function.prototype[Symbol.hasInstance];
216
+ Object.defineProperty(Writable, Symbol.hasInstance, {
217
+ value: function value(object) {
218
+ if (realHasInstance.call(this, object)) return true;
219
+ if (this !== Writable) return false;
220
+ return object && object._writableState instanceof WritableState;
221
+ }
222
+ });
223
+ } else {
224
+ realHasInstance = function realHasInstance(object) {
225
+ return object instanceof this;
226
+ };
227
+ }
228
+
229
+ function Writable(options) {
230
+ Duplex = Duplex || require('./_stream_duplex'); // Writable ctor is applied to Duplexes, too.
231
+ // `realHasInstance` is necessary because using plain `instanceof`
232
+ // would return false, as no `_writableState` property is attached.
233
+ // Trying to use the custom `instanceof` for Writable here will also break the
234
+ // Node.js LazyTransform implementation, which has a non-trivial getter for
235
+ // `_writableState` that would lead to infinite recursion.
236
+ // Checking for a Stream.Duplex instance is faster here instead of inside
237
+ // the WritableState constructor, at least with V8 6.5
238
+
239
+ var isDuplex = this instanceof Duplex;
240
+ if (!isDuplex && !realHasInstance.call(Writable, this)) return new Writable(options);
241
+ this._writableState = new WritableState(options, this, isDuplex); // legacy.
242
+
243
+ this.writable = true;
244
+
245
+ if (options) {
246
+ if (typeof options.write === 'function') this._write = options.write;
247
+ if (typeof options.writev === 'function') this._writev = options.writev;
248
+ if (typeof options.destroy === 'function') this._destroy = options.destroy;
249
+ if (typeof options.final === 'function') this._final = options.final;
250
+ }
251
+
252
+ Stream.call(this);
253
+ } // Otherwise people can pipe Writable streams, which is just wrong.
254
+
255
+
256
+ Writable.prototype.pipe = function () {
257
+ errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE());
258
+ };
259
+
260
+ function writeAfterEnd(stream, cb) {
261
+ var er = new ERR_STREAM_WRITE_AFTER_END(); // TODO: defer error events consistently everywhere, not just the cb
262
+
263
+ errorOrDestroy(stream, er);
264
+ process.nextTick(cb, er);
265
+ } // Checks that a user-supplied chunk is valid, especially for the particular
266
+ // mode the stream is in. Currently this means that `null` is never accepted
267
+ // and undefined/non-string values are only allowed in object mode.
268
+
269
+
270
+ function validChunk(stream, state, chunk, cb) {
271
+ var er;
272
+
273
+ if (chunk === null) {
274
+ er = new ERR_STREAM_NULL_VALUES();
275
+ } else if (typeof chunk !== 'string' && !state.objectMode) {
276
+ er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer'], chunk);
277
+ }
278
+
279
+ if (er) {
280
+ errorOrDestroy(stream, er);
281
+ process.nextTick(cb, er);
282
+ return false;
283
+ }
284
+
285
+ return true;
286
+ }
287
+
288
+ Writable.prototype.write = function (chunk, encoding, cb) {
289
+ var state = this._writableState;
290
+ var ret = false;
291
+
292
+ var isBuf = !state.objectMode && _isUint8Array(chunk);
293
+
294
+ if (isBuf && !Buffer.isBuffer(chunk)) {
295
+ chunk = _uint8ArrayToBuffer(chunk);
296
+ }
297
+
298
+ if (typeof encoding === 'function') {
299
+ cb = encoding;
300
+ encoding = null;
301
+ }
302
+
303
+ if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;
304
+ if (typeof cb !== 'function') cb = nop;
305
+ if (state.ending) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {
306
+ state.pendingcb++;
307
+ ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);
308
+ }
309
+ return ret;
310
+ };
311
+
312
+ Writable.prototype.cork = function () {
313
+ this._writableState.corked++;
314
+ };
315
+
316
+ Writable.prototype.uncork = function () {
317
+ var state = this._writableState;
318
+
319
+ if (state.corked) {
320
+ state.corked--;
321
+ if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);
322
+ }
323
+ };
324
+
325
+ Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {
326
+ // node::ParseEncoding() requires lower case.
327
+ if (typeof encoding === 'string') encoding = encoding.toLowerCase();
328
+ if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new ERR_UNKNOWN_ENCODING(encoding);
329
+ this._writableState.defaultEncoding = encoding;
330
+ return this;
331
+ };
332
+
333
+ Object.defineProperty(Writable.prototype, 'writableBuffer', {
334
+ // making it explicit this property is not enumerable
335
+ // because otherwise some prototype manipulation in
336
+ // userland will fail
337
+ enumerable: false,
338
+ get: function get() {
339
+ return this._writableState && this._writableState.getBuffer();
340
+ }
341
+ });
342
+
343
+ function decodeChunk(state, chunk, encoding) {
344
+ if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {
345
+ chunk = Buffer.from(chunk, encoding);
346
+ }
347
+
348
+ return chunk;
349
+ }
350
+
351
+ Object.defineProperty(Writable.prototype, 'writableHighWaterMark', {
352
+ // making it explicit this property is not enumerable
353
+ // because otherwise some prototype manipulation in
354
+ // userland will fail
355
+ enumerable: false,
356
+ get: function get() {
357
+ return this._writableState.highWaterMark;
358
+ }
359
+ }); // if we're already writing something, then just put this
360
+ // in the queue, and wait our turn. Otherwise, call _write
361
+ // If we return false, then we need a drain event, so set that flag.
362
+
363
+ function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {
364
+ if (!isBuf) {
365
+ var newChunk = decodeChunk(state, chunk, encoding);
366
+
367
+ if (chunk !== newChunk) {
368
+ isBuf = true;
369
+ encoding = 'buffer';
370
+ chunk = newChunk;
371
+ }
372
+ }
373
+
374
+ var len = state.objectMode ? 1 : chunk.length;
375
+ state.length += len;
376
+ var ret = state.length < state.highWaterMark; // we must ensure that previous needDrain will not be reset to false.
377
+
378
+ if (!ret) state.needDrain = true;
379
+
380
+ if (state.writing || state.corked) {
381
+ var last = state.lastBufferedRequest;
382
+ state.lastBufferedRequest = {
383
+ chunk: chunk,
384
+ encoding: encoding,
385
+ isBuf: isBuf,
386
+ callback: cb,
387
+ next: null
388
+ };
389
+
390
+ if (last) {
391
+ last.next = state.lastBufferedRequest;
392
+ } else {
393
+ state.bufferedRequest = state.lastBufferedRequest;
394
+ }
395
+
396
+ state.bufferedRequestCount += 1;
397
+ } else {
398
+ doWrite(stream, state, false, len, chunk, encoding, cb);
399
+ }
400
+
401
+ return ret;
402
+ }
403
+
404
+ function doWrite(stream, state, writev, len, chunk, encoding, cb) {
405
+ state.writelen = len;
406
+ state.writecb = cb;
407
+ state.writing = true;
408
+ state.sync = true;
409
+ if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED('write'));else if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);
410
+ state.sync = false;
411
+ }
412
+
413
+ function onwriteError(stream, state, sync, er, cb) {
414
+ --state.pendingcb;
415
+
416
+ if (sync) {
417
+ // defer the callback if we are being called synchronously
418
+ // to avoid piling up things on the stack
419
+ process.nextTick(cb, er); // this can emit finish, and it will always happen
420
+ // after error
421
+
422
+ process.nextTick(finishMaybe, stream, state);
423
+ stream._writableState.errorEmitted = true;
424
+ errorOrDestroy(stream, er);
425
+ } else {
426
+ // the caller expect this to happen before if
427
+ // it is async
428
+ cb(er);
429
+ stream._writableState.errorEmitted = true;
430
+ errorOrDestroy(stream, er); // this can emit finish, but finish must
431
+ // always follow error
432
+
433
+ finishMaybe(stream, state);
434
+ }
435
+ }
436
+
437
+ function onwriteStateUpdate(state) {
438
+ state.writing = false;
439
+ state.writecb = null;
440
+ state.length -= state.writelen;
441
+ state.writelen = 0;
442
+ }
443
+
444
+ function onwrite(stream, er) {
445
+ var state = stream._writableState;
446
+ var sync = state.sync;
447
+ var cb = state.writecb;
448
+ if (typeof cb !== 'function') throw new ERR_MULTIPLE_CALLBACK();
449
+ onwriteStateUpdate(state);
450
+ if (er) onwriteError(stream, state, sync, er, cb);else {
451
+ // Check if we're actually ready to finish, but don't emit yet
452
+ var finished = needFinish(state) || stream.destroyed;
453
+
454
+ if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {
455
+ clearBuffer(stream, state);
456
+ }
457
+
458
+ if (sync) {
459
+ process.nextTick(afterWrite, stream, state, finished, cb);
460
+ } else {
461
+ afterWrite(stream, state, finished, cb);
462
+ }
463
+ }
464
+ }
465
+
466
+ function afterWrite(stream, state, finished, cb) {
467
+ if (!finished) onwriteDrain(stream, state);
468
+ state.pendingcb--;
469
+ cb();
470
+ finishMaybe(stream, state);
471
+ } // Must force callback to be called on nextTick, so that we don't
472
+ // emit 'drain' before the write() consumer gets the 'false' return
473
+ // value, and has a chance to attach a 'drain' listener.
474
+
475
+
476
+ function onwriteDrain(stream, state) {
477
+ if (state.length === 0 && state.needDrain) {
478
+ state.needDrain = false;
479
+ stream.emit('drain');
480
+ }
481
+ } // if there's something in the buffer waiting, then process it
482
+
483
+
484
+ function clearBuffer(stream, state) {
485
+ state.bufferProcessing = true;
486
+ var entry = state.bufferedRequest;
487
+
488
+ if (stream._writev && entry && entry.next) {
489
+ // Fast case, write everything using _writev()
490
+ var l = state.bufferedRequestCount;
491
+ var buffer = new Array(l);
492
+ var holder = state.corkedRequestsFree;
493
+ holder.entry = entry;
494
+ var count = 0;
495
+ var allBuffers = true;
496
+
497
+ while (entry) {
498
+ buffer[count] = entry;
499
+ if (!entry.isBuf) allBuffers = false;
500
+ entry = entry.next;
501
+ count += 1;
502
+ }
503
+
504
+ buffer.allBuffers = allBuffers;
505
+ doWrite(stream, state, true, state.length, buffer, '', holder.finish); // doWrite is almost always async, defer these to save a bit of time
506
+ // as the hot path ends with doWrite
507
+
508
+ state.pendingcb++;
509
+ state.lastBufferedRequest = null;
510
+
511
+ if (holder.next) {
512
+ state.corkedRequestsFree = holder.next;
513
+ holder.next = null;
514
+ } else {
515
+ state.corkedRequestsFree = new CorkedRequest(state);
516
+ }
517
+
518
+ state.bufferedRequestCount = 0;
519
+ } else {
520
+ // Slow case, write chunks one-by-one
521
+ while (entry) {
522
+ var chunk = entry.chunk;
523
+ var encoding = entry.encoding;
524
+ var cb = entry.callback;
525
+ var len = state.objectMode ? 1 : chunk.length;
526
+ doWrite(stream, state, false, len, chunk, encoding, cb);
527
+ entry = entry.next;
528
+ state.bufferedRequestCount--; // if we didn't call the onwrite immediately, then
529
+ // it means that we need to wait until it does.
530
+ // also, that means that the chunk and cb are currently
531
+ // being processed, so move the buffer counter past them.
532
+
533
+ if (state.writing) {
534
+ break;
535
+ }
536
+ }
537
+
538
+ if (entry === null) state.lastBufferedRequest = null;
539
+ }
540
+
541
+ state.bufferedRequest = entry;
542
+ state.bufferProcessing = false;
543
+ }
544
+
545
+ Writable.prototype._write = function (chunk, encoding, cb) {
546
+ cb(new ERR_METHOD_NOT_IMPLEMENTED('_write()'));
547
+ };
548
+
549
+ Writable.prototype._writev = null;
550
+
551
+ Writable.prototype.end = function (chunk, encoding, cb) {
552
+ var state = this._writableState;
553
+
554
+ if (typeof chunk === 'function') {
555
+ cb = chunk;
556
+ chunk = null;
557
+ encoding = null;
558
+ } else if (typeof encoding === 'function') {
559
+ cb = encoding;
560
+ encoding = null;
561
+ }
562
+
563
+ if (chunk !== null && chunk !== undefined) this.write(chunk, encoding); // .end() fully uncorks
564
+
565
+ if (state.corked) {
566
+ state.corked = 1;
567
+ this.uncork();
568
+ } // ignore unnecessary end() calls.
569
+
570
+
571
+ if (!state.ending) endWritable(this, state, cb);
572
+ return this;
573
+ };
574
+
575
+ Object.defineProperty(Writable.prototype, 'writableLength', {
576
+ // making it explicit this property is not enumerable
577
+ // because otherwise some prototype manipulation in
578
+ // userland will fail
579
+ enumerable: false,
580
+ get: function get() {
581
+ return this._writableState.length;
582
+ }
583
+ });
584
+
585
+ function needFinish(state) {
586
+ return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;
587
+ }
588
+
589
+ function callFinal(stream, state) {
590
+ stream._final(function (err) {
591
+ state.pendingcb--;
592
+
593
+ if (err) {
594
+ errorOrDestroy(stream, err);
595
+ }
596
+
597
+ state.prefinished = true;
598
+ stream.emit('prefinish');
599
+ finishMaybe(stream, state);
600
+ });
601
+ }
602
+
603
+ function prefinish(stream, state) {
604
+ if (!state.prefinished && !state.finalCalled) {
605
+ if (typeof stream._final === 'function' && !state.destroyed) {
606
+ state.pendingcb++;
607
+ state.finalCalled = true;
608
+ process.nextTick(callFinal, stream, state);
609
+ } else {
610
+ state.prefinished = true;
611
+ stream.emit('prefinish');
612
+ }
613
+ }
614
+ }
615
+
616
+ function finishMaybe(stream, state) {
617
+ var need = needFinish(state);
618
+
619
+ if (need) {
620
+ prefinish(stream, state);
621
+
622
+ if (state.pendingcb === 0) {
623
+ state.finished = true;
624
+ stream.emit('finish');
625
+
626
+ if (state.autoDestroy) {
627
+ // In case of duplex streams we need a way to detect
628
+ // if the readable side is ready for autoDestroy as well
629
+ var rState = stream._readableState;
630
+
631
+ if (!rState || rState.autoDestroy && rState.endEmitted) {
632
+ stream.destroy();
633
+ }
634
+ }
635
+ }
636
+ }
637
+
638
+ return need;
639
+ }
640
+
641
+ function endWritable(stream, state, cb) {
642
+ state.ending = true;
643
+ finishMaybe(stream, state);
644
+
645
+ if (cb) {
646
+ if (state.finished) process.nextTick(cb);else stream.once('finish', cb);
647
+ }
648
+
649
+ state.ended = true;
650
+ stream.writable = false;
651
+ }
652
+
653
+ function onCorkedFinish(corkReq, state, err) {
654
+ var entry = corkReq.entry;
655
+ corkReq.entry = null;
656
+
657
+ while (entry) {
658
+ var cb = entry.callback;
659
+ state.pendingcb--;
660
+ cb(err);
661
+ entry = entry.next;
662
+ } // reuse the free corkReq.
663
+
664
+
665
+ state.corkedRequestsFree.next = corkReq;
666
+ }
667
+
668
+ Object.defineProperty(Writable.prototype, 'destroyed', {
669
+ // making it explicit this property is not enumerable
670
+ // because otherwise some prototype manipulation in
671
+ // userland will fail
672
+ enumerable: false,
673
+ get: function get() {
674
+ if (this._writableState === undefined) {
675
+ return false;
676
+ }
677
+
678
+ return this._writableState.destroyed;
679
+ },
680
+ set: function set(value) {
681
+ // we ignore the value if the stream
682
+ // has not been initialized yet
683
+ if (!this._writableState) {
684
+ return;
685
+ } // backward compatibility, the user is explicitly
686
+ // managing destroyed
687
+
688
+
689
+ this._writableState.destroyed = value;
690
+ }
691
+ });
692
+ Writable.prototype.destroy = destroyImpl.destroy;
693
+ Writable.prototype._undestroy = destroyImpl.undestroy;
694
+
695
+ Writable.prototype._destroy = function (err, cb) {
696
+ cb(err);
697
697
  };