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,788 +1,788 @@
1
- // Approach:
2
- //
3
- // 1. Get the minimatch set
4
- // 2. For each pattern in the set, PROCESS(pattern, false)
5
- // 3. Store matches per-set, then uniq them
6
- //
7
- // PROCESS(pattern, inGlobStar)
8
- // Get the first [n] items from pattern that are all strings
9
- // Join these together. This is PREFIX.
10
- // If there is no more remaining, then stat(PREFIX) and
11
- // add to matches if it succeeds. END.
12
- //
13
- // If inGlobStar and PREFIX is symlink and points to dir
14
- // set ENTRIES = []
15
- // else readdir(PREFIX) as ENTRIES
16
- // If fail, END
17
- //
18
- // with ENTRIES
19
- // If pattern[n] is GLOBSTAR
20
- // // handle the case where the globstar match is empty
21
- // // by pruning it out, and testing the resulting pattern
22
- // PROCESS(pattern[0..n] + pattern[n+1 .. $], false)
23
- // // handle other cases.
24
- // for ENTRY in ENTRIES (not dotfiles)
25
- // // attach globstar + tail onto the entry
26
- // // Mark that this entry is a globstar match
27
- // PROCESS(pattern[0..n] + ENTRY + pattern[n .. $], true)
28
- //
29
- // else // not globstar
30
- // for ENTRY in ENTRIES (not dotfiles, unless pattern[n] is dot)
31
- // Test ENTRY against pattern[n]
32
- // If fails, continue
33
- // If passes, PROCESS(pattern[0..n] + item + pattern[n+1 .. $])
34
- //
35
- // Caveat:
36
- // Cache all stats and readdirs results to minimize syscall. Since all
37
- // we ever care about is existence and directory-ness, we can just keep
38
- // `true` for files, and [children,...] for directories, or `false` for
39
- // things that don't exist.
40
-
41
- module.exports = glob
42
-
43
- var fs = require('fs')
44
- var rp = require('fs.realpath')
45
- var minimatch = require('minimatch')
46
- var Minimatch = minimatch.Minimatch
47
- var inherits = require('inherits')
48
- var EE = require('events').EventEmitter
49
- var path = require('path')
50
- var assert = require('assert')
51
- var isAbsolute = require('path-is-absolute')
52
- var globSync = require('./sync.js')
53
- var common = require('./common.js')
54
- var setopts = common.setopts
55
- var ownProp = common.ownProp
56
- var inflight = require('inflight')
57
- var util = require('util')
58
- var childrenIgnored = common.childrenIgnored
59
- var isIgnored = common.isIgnored
60
-
61
- var once = require('once')
62
-
63
- function glob (pattern, options, cb) {
64
- if (typeof options === 'function') cb = options, options = {}
65
- if (!options) options = {}
66
-
67
- if (options.sync) {
68
- if (cb)
69
- throw new TypeError('callback provided to sync glob')
70
- return globSync(pattern, options)
71
- }
72
-
73
- return new Glob(pattern, options, cb)
74
- }
75
-
76
- glob.sync = globSync
77
- var GlobSync = glob.GlobSync = globSync.GlobSync
78
-
79
- // old api surface
80
- glob.glob = glob
81
-
82
- function extend (origin, add) {
83
- if (add === null || typeof add !== 'object') {
84
- return origin
85
- }
86
-
87
- var keys = Object.keys(add)
88
- var i = keys.length
89
- while (i--) {
90
- origin[keys[i]] = add[keys[i]]
91
- }
92
- return origin
93
- }
94
-
95
- glob.hasMagic = function (pattern, options_) {
96
- var options = extend({}, options_)
97
- options.noprocess = true
98
-
99
- var g = new Glob(pattern, options)
100
- var set = g.minimatch.set
101
-
102
- if (!pattern)
103
- return false
104
-
105
- if (set.length > 1)
106
- return true
107
-
108
- for (var j = 0; j < set[0].length; j++) {
109
- if (typeof set[0][j] !== 'string')
110
- return true
111
- }
112
-
113
- return false
114
- }
115
-
116
- glob.Glob = Glob
117
- inherits(Glob, EE)
118
- function Glob (pattern, options, cb) {
119
- if (typeof options === 'function') {
120
- cb = options
121
- options = null
122
- }
123
-
124
- if (options && options.sync) {
125
- if (cb)
126
- throw new TypeError('callback provided to sync glob')
127
- return new GlobSync(pattern, options)
128
- }
129
-
130
- if (!(this instanceof Glob))
131
- return new Glob(pattern, options, cb)
132
-
133
- setopts(this, pattern, options)
134
- this._didRealPath = false
135
-
136
- // process each pattern in the minimatch set
137
- var n = this.minimatch.set.length
138
-
139
- // The matches are stored as {<filename>: true,...} so that
140
- // duplicates are automagically pruned.
141
- // Later, we do an Object.keys() on these.
142
- // Keep them as a list so we can fill in when nonull is set.
143
- this.matches = new Array(n)
144
-
145
- if (typeof cb === 'function') {
146
- cb = once(cb)
147
- this.on('error', cb)
148
- this.on('end', function (matches) {
149
- cb(null, matches)
150
- })
151
- }
152
-
153
- var self = this
154
- this._processing = 0
155
-
156
- this._emitQueue = []
157
- this._processQueue = []
158
- this.paused = false
159
-
160
- if (this.noprocess)
161
- return this
162
-
163
- if (n === 0)
164
- return done()
165
-
166
- var sync = true
167
- for (var i = 0; i < n; i ++) {
168
- this._process(this.minimatch.set[i], i, false, done)
169
- }
170
- sync = false
171
-
172
- function done () {
173
- --self._processing
174
- if (self._processing <= 0) {
175
- if (sync) {
176
- process.nextTick(function () {
177
- self._finish()
178
- })
179
- } else {
180
- self._finish()
181
- }
182
- }
183
- }
184
- }
185
-
186
- Glob.prototype._finish = function () {
187
- assert(this instanceof Glob)
188
- if (this.aborted)
189
- return
190
-
191
- if (this.realpath && !this._didRealpath)
192
- return this._realpath()
193
-
194
- common.finish(this)
195
- this.emit('end', this.found)
196
- }
197
-
198
- Glob.prototype._realpath = function () {
199
- if (this._didRealpath)
200
- return
201
-
202
- this._didRealpath = true
203
-
204
- var n = this.matches.length
205
- if (n === 0)
206
- return this._finish()
207
-
208
- var self = this
209
- for (var i = 0; i < this.matches.length; i++)
210
- this._realpathSet(i, next)
211
-
212
- function next () {
213
- if (--n === 0)
214
- self._finish()
215
- }
216
- }
217
-
218
- Glob.prototype._realpathSet = function (index, cb) {
219
- var matchset = this.matches[index]
220
- if (!matchset)
221
- return cb()
222
-
223
- var found = Object.keys(matchset)
224
- var self = this
225
- var n = found.length
226
-
227
- if (n === 0)
228
- return cb()
229
-
230
- var set = this.matches[index] = Object.create(null)
231
- found.forEach(function (p, i) {
232
- // If there's a problem with the stat, then it means that
233
- // one or more of the links in the realpath couldn't be
234
- // resolved. just return the abs value in that case.
235
- p = self._makeAbs(p)
236
- rp.realpath(p, self.realpathCache, function (er, real) {
237
- if (!er)
238
- set[real] = true
239
- else if (er.syscall === 'stat')
240
- set[p] = true
241
- else
242
- self.emit('error', er) // srsly wtf right here
243
-
244
- if (--n === 0) {
245
- self.matches[index] = set
246
- cb()
247
- }
248
- })
249
- })
250
- }
251
-
252
- Glob.prototype._mark = function (p) {
253
- return common.mark(this, p)
254
- }
255
-
256
- Glob.prototype._makeAbs = function (f) {
257
- return common.makeAbs(this, f)
258
- }
259
-
260
- Glob.prototype.abort = function () {
261
- this.aborted = true
262
- this.emit('abort')
263
- }
264
-
265
- Glob.prototype.pause = function () {
266
- if (!this.paused) {
267
- this.paused = true
268
- this.emit('pause')
269
- }
270
- }
271
-
272
- Glob.prototype.resume = function () {
273
- if (this.paused) {
274
- this.emit('resume')
275
- this.paused = false
276
- if (this._emitQueue.length) {
277
- var eq = this._emitQueue.slice(0)
278
- this._emitQueue.length = 0
279
- for (var i = 0; i < eq.length; i ++) {
280
- var e = eq[i]
281
- this._emitMatch(e[0], e[1])
282
- }
283
- }
284
- if (this._processQueue.length) {
285
- var pq = this._processQueue.slice(0)
286
- this._processQueue.length = 0
287
- for (var i = 0; i < pq.length; i ++) {
288
- var p = pq[i]
289
- this._processing--
290
- this._process(p[0], p[1], p[2], p[3])
291
- }
292
- }
293
- }
294
- }
295
-
296
- Glob.prototype._process = function (pattern, index, inGlobStar, cb) {
297
- assert(this instanceof Glob)
298
- assert(typeof cb === 'function')
299
-
300
- if (this.aborted)
301
- return
302
-
303
- this._processing++
304
- if (this.paused) {
305
- this._processQueue.push([pattern, index, inGlobStar, cb])
306
- return
307
- }
308
-
309
- //console.error('PROCESS %d', this._processing, pattern)
310
-
311
- // Get the first [n] parts of pattern that are all strings.
312
- var n = 0
313
- while (typeof pattern[n] === 'string') {
314
- n ++
315
- }
316
- // now n is the index of the first one that is *not* a string.
317
-
318
- // see if there's anything else
319
- var prefix
320
- switch (n) {
321
- // if not, then this is rather simple
322
- case pattern.length:
323
- this._processSimple(pattern.join('/'), index, cb)
324
- return
325
-
326
- case 0:
327
- // pattern *starts* with some non-trivial item.
328
- // going to readdir(cwd), but not include the prefix in matches.
329
- prefix = null
330
- break
331
-
332
- default:
333
- // pattern has some string bits in the front.
334
- // whatever it starts with, whether that's 'absolute' like /foo/bar,
335
- // or 'relative' like '../baz'
336
- prefix = pattern.slice(0, n).join('/')
337
- break
338
- }
339
-
340
- var remain = pattern.slice(n)
341
-
342
- // get the list of entries.
343
- var read
344
- if (prefix === null)
345
- read = '.'
346
- else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) {
347
- if (!prefix || !isAbsolute(prefix))
348
- prefix = '/' + prefix
349
- read = prefix
350
- } else
351
- read = prefix
352
-
353
- var abs = this._makeAbs(read)
354
-
355
- //if ignored, skip _processing
356
- if (childrenIgnored(this, read))
357
- return cb()
358
-
359
- var isGlobStar = remain[0] === minimatch.GLOBSTAR
360
- if (isGlobStar)
361
- this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb)
362
- else
363
- this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb)
364
- }
365
-
366
- Glob.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar, cb) {
367
- var self = this
368
- this._readdir(abs, inGlobStar, function (er, entries) {
369
- return self._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb)
370
- })
371
- }
372
-
373
- Glob.prototype._processReaddir2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) {
374
-
375
- // if the abs isn't a dir, then nothing can match!
376
- if (!entries)
377
- return cb()
378
-
379
- // It will only match dot entries if it starts with a dot, or if
380
- // dot is set. Stuff like @(.foo|.bar) isn't allowed.
381
- var pn = remain[0]
382
- var negate = !!this.minimatch.negate
383
- var rawGlob = pn._glob
384
- var dotOk = this.dot || rawGlob.charAt(0) === '.'
385
-
386
- var matchedEntries = []
387
- for (var i = 0; i < entries.length; i++) {
388
- var e = entries[i]
389
- if (e.charAt(0) !== '.' || dotOk) {
390
- var m
391
- if (negate && !prefix) {
392
- m = !e.match(pn)
393
- } else {
394
- m = e.match(pn)
395
- }
396
- if (m)
397
- matchedEntries.push(e)
398
- }
399
- }
400
-
401
- //console.error('prd2', prefix, entries, remain[0]._glob, matchedEntries)
402
-
403
- var len = matchedEntries.length
404
- // If there are no matched entries, then nothing matches.
405
- if (len === 0)
406
- return cb()
407
-
408
- // if this is the last remaining pattern bit, then no need for
409
- // an additional stat *unless* the user has specified mark or
410
- // stat explicitly. We know they exist, since readdir returned
411
- // them.
412
-
413
- if (remain.length === 1 && !this.mark && !this.stat) {
414
- if (!this.matches[index])
415
- this.matches[index] = Object.create(null)
416
-
417
- for (var i = 0; i < len; i ++) {
418
- var e = matchedEntries[i]
419
- if (prefix) {
420
- if (prefix !== '/')
421
- e = prefix + '/' + e
422
- else
423
- e = prefix + e
424
- }
425
-
426
- if (e.charAt(0) === '/' && !this.nomount) {
427
- e = path.join(this.root, e)
428
- }
429
- this._emitMatch(index, e)
430
- }
431
- // This was the last one, and no stats were needed
432
- return cb()
433
- }
434
-
435
- // now test all matched entries as stand-ins for that part
436
- // of the pattern.
437
- remain.shift()
438
- for (var i = 0; i < len; i ++) {
439
- var e = matchedEntries[i]
440
- var newPattern
441
- if (prefix) {
442
- if (prefix !== '/')
443
- e = prefix + '/' + e
444
- else
445
- e = prefix + e
446
- }
447
- this._process([e].concat(remain), index, inGlobStar, cb)
448
- }
449
- cb()
450
- }
451
-
452
- Glob.prototype._emitMatch = function (index, e) {
453
- if (this.aborted)
454
- return
455
-
456
- if (isIgnored(this, e))
457
- return
458
-
459
- if (this.paused) {
460
- this._emitQueue.push([index, e])
461
- return
462
- }
463
-
464
- var abs = isAbsolute(e) ? e : this._makeAbs(e)
465
-
466
- if (this.mark)
467
- e = this._mark(e)
468
-
469
- if (this.absolute)
470
- e = abs
471
-
472
- if (this.matches[index][e])
473
- return
474
-
475
- if (this.nodir) {
476
- var c = this.cache[abs]
477
- if (c === 'DIR' || Array.isArray(c))
478
- return
479
- }
480
-
481
- this.matches[index][e] = true
482
-
483
- var st = this.statCache[abs]
484
- if (st)
485
- this.emit('stat', e, st)
486
-
487
- this.emit('match', e)
488
- }
489
-
490
- Glob.prototype._readdirInGlobStar = function (abs, cb) {
491
- if (this.aborted)
492
- return
493
-
494
- // follow all symlinked directories forever
495
- // just proceed as if this is a non-globstar situation
496
- if (this.follow)
497
- return this._readdir(abs, false, cb)
498
-
499
- var lstatkey = 'lstat\0' + abs
500
- var self = this
501
- var lstatcb = inflight(lstatkey, lstatcb_)
502
-
503
- if (lstatcb)
504
- fs.lstat(abs, lstatcb)
505
-
506
- function lstatcb_ (er, lstat) {
507
- if (er && er.code === 'ENOENT')
508
- return cb()
509
-
510
- var isSym = lstat && lstat.isSymbolicLink()
511
- self.symlinks[abs] = isSym
512
-
513
- // If it's not a symlink or a dir, then it's definitely a regular file.
514
- // don't bother doing a readdir in that case.
515
- if (!isSym && lstat && !lstat.isDirectory()) {
516
- self.cache[abs] = 'FILE'
517
- cb()
518
- } else
519
- self._readdir(abs, false, cb)
520
- }
521
- }
522
-
523
- Glob.prototype._readdir = function (abs, inGlobStar, cb) {
524
- if (this.aborted)
525
- return
526
-
527
- cb = inflight('readdir\0'+abs+'\0'+inGlobStar, cb)
528
- if (!cb)
529
- return
530
-
531
- //console.error('RD %j %j', +inGlobStar, abs)
532
- if (inGlobStar && !ownProp(this.symlinks, abs))
533
- return this._readdirInGlobStar(abs, cb)
534
-
535
- if (ownProp(this.cache, abs)) {
536
- var c = this.cache[abs]
537
- if (!c || c === 'FILE')
538
- return cb()
539
-
540
- if (Array.isArray(c))
541
- return cb(null, c)
542
- }
543
-
544
- var self = this
545
- fs.readdir(abs, readdirCb(this, abs, cb))
546
- }
547
-
548
- function readdirCb (self, abs, cb) {
549
- return function (er, entries) {
550
- if (er)
551
- self._readdirError(abs, er, cb)
552
- else
553
- self._readdirEntries(abs, entries, cb)
554
- }
555
- }
556
-
557
- Glob.prototype._readdirEntries = function (abs, entries, cb) {
558
- if (this.aborted)
559
- return
560
-
561
- // if we haven't asked to stat everything, then just
562
- // assume that everything in there exists, so we can avoid
563
- // having to stat it a second time.
564
- if (!this.mark && !this.stat) {
565
- for (var i = 0; i < entries.length; i ++) {
566
- var e = entries[i]
567
- if (abs === '/')
568
- e = abs + e
569
- else
570
- e = abs + '/' + e
571
- this.cache[e] = true
572
- }
573
- }
574
-
575
- this.cache[abs] = entries
576
- return cb(null, entries)
577
- }
578
-
579
- Glob.prototype._readdirError = function (f, er, cb) {
580
- if (this.aborted)
581
- return
582
-
583
- // handle errors, and cache the information
584
- switch (er.code) {
585
- case 'ENOTSUP': // https://github.com/isaacs/node-glob/issues/205
586
- case 'ENOTDIR': // totally normal. means it *does* exist.
587
- var abs = this._makeAbs(f)
588
- this.cache[abs] = 'FILE'
589
- if (abs === this.cwdAbs) {
590
- var error = new Error(er.code + ' invalid cwd ' + this.cwd)
591
- error.path = this.cwd
592
- error.code = er.code
593
- this.emit('error', error)
594
- this.abort()
595
- }
596
- break
597
-
598
- case 'ENOENT': // not terribly unusual
599
- case 'ELOOP':
600
- case 'ENAMETOOLONG':
601
- case 'UNKNOWN':
602
- this.cache[this._makeAbs(f)] = false
603
- break
604
-
605
- default: // some unusual error. Treat as failure.
606
- this.cache[this._makeAbs(f)] = false
607
- if (this.strict) {
608
- this.emit('error', er)
609
- // If the error is handled, then we abort
610
- // if not, we threw out of here
611
- this.abort()
612
- }
613
- if (!this.silent)
614
- console.error('glob error', er)
615
- break
616
- }
617
-
618
- return cb()
619
- }
620
-
621
- Glob.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar, cb) {
622
- var self = this
623
- this._readdir(abs, inGlobStar, function (er, entries) {
624
- self._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb)
625
- })
626
- }
627
-
628
-
629
- Glob.prototype._processGlobStar2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) {
630
- //console.error('pgs2', prefix, remain[0], entries)
631
-
632
- // no entries means not a dir, so it can never have matches
633
- // foo.txt/** doesn't match foo.txt
634
- if (!entries)
635
- return cb()
636
-
637
- // test without the globstar, and with every child both below
638
- // and replacing the globstar.
639
- var remainWithoutGlobStar = remain.slice(1)
640
- var gspref = prefix ? [ prefix ] : []
641
- var noGlobStar = gspref.concat(remainWithoutGlobStar)
642
-
643
- // the noGlobStar pattern exits the inGlobStar state
644
- this._process(noGlobStar, index, false, cb)
645
-
646
- var isSym = this.symlinks[abs]
647
- var len = entries.length
648
-
649
- // If it's a symlink, and we're in a globstar, then stop
650
- if (isSym && inGlobStar)
651
- return cb()
652
-
653
- for (var i = 0; i < len; i++) {
654
- var e = entries[i]
655
- if (e.charAt(0) === '.' && !this.dot)
656
- continue
657
-
658
- // these two cases enter the inGlobStar state
659
- var instead = gspref.concat(entries[i], remainWithoutGlobStar)
660
- this._process(instead, index, true, cb)
661
-
662
- var below = gspref.concat(entries[i], remain)
663
- this._process(below, index, true, cb)
664
- }
665
-
666
- cb()
667
- }
668
-
669
- Glob.prototype._processSimple = function (prefix, index, cb) {
670
- // XXX review this. Shouldn't it be doing the mounting etc
671
- // before doing stat? kinda weird?
672
- var self = this
673
- this._stat(prefix, function (er, exists) {
674
- self._processSimple2(prefix, index, er, exists, cb)
675
- })
676
- }
677
- Glob.prototype._processSimple2 = function (prefix, index, er, exists, cb) {
678
-
679
- //console.error('ps2', prefix, exists)
680
-
681
- if (!this.matches[index])
682
- this.matches[index] = Object.create(null)
683
-
684
- // If it doesn't exist, then just mark the lack of results
685
- if (!exists)
686
- return cb()
687
-
688
- if (prefix && isAbsolute(prefix) && !this.nomount) {
689
- var trail = /[\/\\]$/.test(prefix)
690
- if (prefix.charAt(0) === '/') {
691
- prefix = path.join(this.root, prefix)
692
- } else {
693
- prefix = path.resolve(this.root, prefix)
694
- if (trail)
695
- prefix += '/'
696
- }
697
- }
698
-
699
- if (process.platform === 'win32')
700
- prefix = prefix.replace(/\\/g, '/')
701
-
702
- // Mark this as a match
703
- this._emitMatch(index, prefix)
704
- cb()
705
- }
706
-
707
- // Returns either 'DIR', 'FILE', or false
708
- Glob.prototype._stat = function (f, cb) {
709
- var abs = this._makeAbs(f)
710
- var needDir = f.slice(-1) === '/'
711
-
712
- if (f.length > this.maxLength)
713
- return cb()
714
-
715
- if (!this.stat && ownProp(this.cache, abs)) {
716
- var c = this.cache[abs]
717
-
718
- if (Array.isArray(c))
719
- c = 'DIR'
720
-
721
- // It exists, but maybe not how we need it
722
- if (!needDir || c === 'DIR')
723
- return cb(null, c)
724
-
725
- if (needDir && c === 'FILE')
726
- return cb()
727
-
728
- // otherwise we have to stat, because maybe c=true
729
- // if we know it exists, but not what it is.
730
- }
731
-
732
- var exists
733
- var stat = this.statCache[abs]
734
- if (stat !== undefined) {
735
- if (stat === false)
736
- return cb(null, stat)
737
- else {
738
- var type = stat.isDirectory() ? 'DIR' : 'FILE'
739
- if (needDir && type === 'FILE')
740
- return cb()
741
- else
742
- return cb(null, type, stat)
743
- }
744
- }
745
-
746
- var self = this
747
- var statcb = inflight('stat\0' + abs, lstatcb_)
748
- if (statcb)
749
- fs.lstat(abs, statcb)
750
-
751
- function lstatcb_ (er, lstat) {
752
- if (lstat && lstat.isSymbolicLink()) {
753
- // If it's a symlink, then treat it as the target, unless
754
- // the target does not exist, then treat it as a file.
755
- return fs.stat(abs, function (er, stat) {
756
- if (er)
757
- self._stat2(f, abs, null, lstat, cb)
758
- else
759
- self._stat2(f, abs, er, stat, cb)
760
- })
761
- } else {
762
- self._stat2(f, abs, er, lstat, cb)
763
- }
764
- }
765
- }
766
-
767
- Glob.prototype._stat2 = function (f, abs, er, stat, cb) {
768
- if (er && (er.code === 'ENOENT' || er.code === 'ENOTDIR')) {
769
- this.statCache[abs] = false
770
- return cb()
771
- }
772
-
773
- var needDir = f.slice(-1) === '/'
774
- this.statCache[abs] = stat
775
-
776
- if (abs.slice(-1) === '/' && stat && !stat.isDirectory())
777
- return cb(null, false, stat)
778
-
779
- var c = true
780
- if (stat)
781
- c = stat.isDirectory() ? 'DIR' : 'FILE'
782
- this.cache[abs] = this.cache[abs] || c
783
-
784
- if (needDir && c === 'FILE')
785
- return cb()
786
-
787
- return cb(null, c, stat)
788
- }
1
+ // Approach:
2
+ //
3
+ // 1. Get the minimatch set
4
+ // 2. For each pattern in the set, PROCESS(pattern, false)
5
+ // 3. Store matches per-set, then uniq them
6
+ //
7
+ // PROCESS(pattern, inGlobStar)
8
+ // Get the first [n] items from pattern that are all strings
9
+ // Join these together. This is PREFIX.
10
+ // If there is no more remaining, then stat(PREFIX) and
11
+ // add to matches if it succeeds. END.
12
+ //
13
+ // If inGlobStar and PREFIX is symlink and points to dir
14
+ // set ENTRIES = []
15
+ // else readdir(PREFIX) as ENTRIES
16
+ // If fail, END
17
+ //
18
+ // with ENTRIES
19
+ // If pattern[n] is GLOBSTAR
20
+ // // handle the case where the globstar match is empty
21
+ // // by pruning it out, and testing the resulting pattern
22
+ // PROCESS(pattern[0..n] + pattern[n+1 .. $], false)
23
+ // // handle other cases.
24
+ // for ENTRY in ENTRIES (not dotfiles)
25
+ // // attach globstar + tail onto the entry
26
+ // // Mark that this entry is a globstar match
27
+ // PROCESS(pattern[0..n] + ENTRY + pattern[n .. $], true)
28
+ //
29
+ // else // not globstar
30
+ // for ENTRY in ENTRIES (not dotfiles, unless pattern[n] is dot)
31
+ // Test ENTRY against pattern[n]
32
+ // If fails, continue
33
+ // If passes, PROCESS(pattern[0..n] + item + pattern[n+1 .. $])
34
+ //
35
+ // Caveat:
36
+ // Cache all stats and readdirs results to minimize syscall. Since all
37
+ // we ever care about is existence and directory-ness, we can just keep
38
+ // `true` for files, and [children,...] for directories, or `false` for
39
+ // things that don't exist.
40
+
41
+ module.exports = glob
42
+
43
+ var fs = require('fs')
44
+ var rp = require('fs.realpath')
45
+ var minimatch = require('minimatch')
46
+ var Minimatch = minimatch.Minimatch
47
+ var inherits = require('inherits')
48
+ var EE = require('events').EventEmitter
49
+ var path = require('path')
50
+ var assert = require('assert')
51
+ var isAbsolute = require('path-is-absolute')
52
+ var globSync = require('./sync.js')
53
+ var common = require('./common.js')
54
+ var setopts = common.setopts
55
+ var ownProp = common.ownProp
56
+ var inflight = require('inflight')
57
+ var util = require('util')
58
+ var childrenIgnored = common.childrenIgnored
59
+ var isIgnored = common.isIgnored
60
+
61
+ var once = require('once')
62
+
63
+ function glob (pattern, options, cb) {
64
+ if (typeof options === 'function') cb = options, options = {}
65
+ if (!options) options = {}
66
+
67
+ if (options.sync) {
68
+ if (cb)
69
+ throw new TypeError('callback provided to sync glob')
70
+ return globSync(pattern, options)
71
+ }
72
+
73
+ return new Glob(pattern, options, cb)
74
+ }
75
+
76
+ glob.sync = globSync
77
+ var GlobSync = glob.GlobSync = globSync.GlobSync
78
+
79
+ // old api surface
80
+ glob.glob = glob
81
+
82
+ function extend (origin, add) {
83
+ if (add === null || typeof add !== 'object') {
84
+ return origin
85
+ }
86
+
87
+ var keys = Object.keys(add)
88
+ var i = keys.length
89
+ while (i--) {
90
+ origin[keys[i]] = add[keys[i]]
91
+ }
92
+ return origin
93
+ }
94
+
95
+ glob.hasMagic = function (pattern, options_) {
96
+ var options = extend({}, options_)
97
+ options.noprocess = true
98
+
99
+ var g = new Glob(pattern, options)
100
+ var set = g.minimatch.set
101
+
102
+ if (!pattern)
103
+ return false
104
+
105
+ if (set.length > 1)
106
+ return true
107
+
108
+ for (var j = 0; j < set[0].length; j++) {
109
+ if (typeof set[0][j] !== 'string')
110
+ return true
111
+ }
112
+
113
+ return false
114
+ }
115
+
116
+ glob.Glob = Glob
117
+ inherits(Glob, EE)
118
+ function Glob (pattern, options, cb) {
119
+ if (typeof options === 'function') {
120
+ cb = options
121
+ options = null
122
+ }
123
+
124
+ if (options && options.sync) {
125
+ if (cb)
126
+ throw new TypeError('callback provided to sync glob')
127
+ return new GlobSync(pattern, options)
128
+ }
129
+
130
+ if (!(this instanceof Glob))
131
+ return new Glob(pattern, options, cb)
132
+
133
+ setopts(this, pattern, options)
134
+ this._didRealPath = false
135
+
136
+ // process each pattern in the minimatch set
137
+ var n = this.minimatch.set.length
138
+
139
+ // The matches are stored as {<filename>: true,...} so that
140
+ // duplicates are automagically pruned.
141
+ // Later, we do an Object.keys() on these.
142
+ // Keep them as a list so we can fill in when nonull is set.
143
+ this.matches = new Array(n)
144
+
145
+ if (typeof cb === 'function') {
146
+ cb = once(cb)
147
+ this.on('error', cb)
148
+ this.on('end', function (matches) {
149
+ cb(null, matches)
150
+ })
151
+ }
152
+
153
+ var self = this
154
+ this._processing = 0
155
+
156
+ this._emitQueue = []
157
+ this._processQueue = []
158
+ this.paused = false
159
+
160
+ if (this.noprocess)
161
+ return this
162
+
163
+ if (n === 0)
164
+ return done()
165
+
166
+ var sync = true
167
+ for (var i = 0; i < n; i ++) {
168
+ this._process(this.minimatch.set[i], i, false, done)
169
+ }
170
+ sync = false
171
+
172
+ function done () {
173
+ --self._processing
174
+ if (self._processing <= 0) {
175
+ if (sync) {
176
+ process.nextTick(function () {
177
+ self._finish()
178
+ })
179
+ } else {
180
+ self._finish()
181
+ }
182
+ }
183
+ }
184
+ }
185
+
186
+ Glob.prototype._finish = function () {
187
+ assert(this instanceof Glob)
188
+ if (this.aborted)
189
+ return
190
+
191
+ if (this.realpath && !this._didRealpath)
192
+ return this._realpath()
193
+
194
+ common.finish(this)
195
+ this.emit('end', this.found)
196
+ }
197
+
198
+ Glob.prototype._realpath = function () {
199
+ if (this._didRealpath)
200
+ return
201
+
202
+ this._didRealpath = true
203
+
204
+ var n = this.matches.length
205
+ if (n === 0)
206
+ return this._finish()
207
+
208
+ var self = this
209
+ for (var i = 0; i < this.matches.length; i++)
210
+ this._realpathSet(i, next)
211
+
212
+ function next () {
213
+ if (--n === 0)
214
+ self._finish()
215
+ }
216
+ }
217
+
218
+ Glob.prototype._realpathSet = function (index, cb) {
219
+ var matchset = this.matches[index]
220
+ if (!matchset)
221
+ return cb()
222
+
223
+ var found = Object.keys(matchset)
224
+ var self = this
225
+ var n = found.length
226
+
227
+ if (n === 0)
228
+ return cb()
229
+
230
+ var set = this.matches[index] = Object.create(null)
231
+ found.forEach(function (p, i) {
232
+ // If there's a problem with the stat, then it means that
233
+ // one or more of the links in the realpath couldn't be
234
+ // resolved. just return the abs value in that case.
235
+ p = self._makeAbs(p)
236
+ rp.realpath(p, self.realpathCache, function (er, real) {
237
+ if (!er)
238
+ set[real] = true
239
+ else if (er.syscall === 'stat')
240
+ set[p] = true
241
+ else
242
+ self.emit('error', er) // srsly wtf right here
243
+
244
+ if (--n === 0) {
245
+ self.matches[index] = set
246
+ cb()
247
+ }
248
+ })
249
+ })
250
+ }
251
+
252
+ Glob.prototype._mark = function (p) {
253
+ return common.mark(this, p)
254
+ }
255
+
256
+ Glob.prototype._makeAbs = function (f) {
257
+ return common.makeAbs(this, f)
258
+ }
259
+
260
+ Glob.prototype.abort = function () {
261
+ this.aborted = true
262
+ this.emit('abort')
263
+ }
264
+
265
+ Glob.prototype.pause = function () {
266
+ if (!this.paused) {
267
+ this.paused = true
268
+ this.emit('pause')
269
+ }
270
+ }
271
+
272
+ Glob.prototype.resume = function () {
273
+ if (this.paused) {
274
+ this.emit('resume')
275
+ this.paused = false
276
+ if (this._emitQueue.length) {
277
+ var eq = this._emitQueue.slice(0)
278
+ this._emitQueue.length = 0
279
+ for (var i = 0; i < eq.length; i ++) {
280
+ var e = eq[i]
281
+ this._emitMatch(e[0], e[1])
282
+ }
283
+ }
284
+ if (this._processQueue.length) {
285
+ var pq = this._processQueue.slice(0)
286
+ this._processQueue.length = 0
287
+ for (var i = 0; i < pq.length; i ++) {
288
+ var p = pq[i]
289
+ this._processing--
290
+ this._process(p[0], p[1], p[2], p[3])
291
+ }
292
+ }
293
+ }
294
+ }
295
+
296
+ Glob.prototype._process = function (pattern, index, inGlobStar, cb) {
297
+ assert(this instanceof Glob)
298
+ assert(typeof cb === 'function')
299
+
300
+ if (this.aborted)
301
+ return
302
+
303
+ this._processing++
304
+ if (this.paused) {
305
+ this._processQueue.push([pattern, index, inGlobStar, cb])
306
+ return
307
+ }
308
+
309
+ //console.error('PROCESS %d', this._processing, pattern)
310
+
311
+ // Get the first [n] parts of pattern that are all strings.
312
+ var n = 0
313
+ while (typeof pattern[n] === 'string') {
314
+ n ++
315
+ }
316
+ // now n is the index of the first one that is *not* a string.
317
+
318
+ // see if there's anything else
319
+ var prefix
320
+ switch (n) {
321
+ // if not, then this is rather simple
322
+ case pattern.length:
323
+ this._processSimple(pattern.join('/'), index, cb)
324
+ return
325
+
326
+ case 0:
327
+ // pattern *starts* with some non-trivial item.
328
+ // going to readdir(cwd), but not include the prefix in matches.
329
+ prefix = null
330
+ break
331
+
332
+ default:
333
+ // pattern has some string bits in the front.
334
+ // whatever it starts with, whether that's 'absolute' like /foo/bar,
335
+ // or 'relative' like '../baz'
336
+ prefix = pattern.slice(0, n).join('/')
337
+ break
338
+ }
339
+
340
+ var remain = pattern.slice(n)
341
+
342
+ // get the list of entries.
343
+ var read
344
+ if (prefix === null)
345
+ read = '.'
346
+ else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) {
347
+ if (!prefix || !isAbsolute(prefix))
348
+ prefix = '/' + prefix
349
+ read = prefix
350
+ } else
351
+ read = prefix
352
+
353
+ var abs = this._makeAbs(read)
354
+
355
+ //if ignored, skip _processing
356
+ if (childrenIgnored(this, read))
357
+ return cb()
358
+
359
+ var isGlobStar = remain[0] === minimatch.GLOBSTAR
360
+ if (isGlobStar)
361
+ this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb)
362
+ else
363
+ this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb)
364
+ }
365
+
366
+ Glob.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar, cb) {
367
+ var self = this
368
+ this._readdir(abs, inGlobStar, function (er, entries) {
369
+ return self._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb)
370
+ })
371
+ }
372
+
373
+ Glob.prototype._processReaddir2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) {
374
+
375
+ // if the abs isn't a dir, then nothing can match!
376
+ if (!entries)
377
+ return cb()
378
+
379
+ // It will only match dot entries if it starts with a dot, or if
380
+ // dot is set. Stuff like @(.foo|.bar) isn't allowed.
381
+ var pn = remain[0]
382
+ var negate = !!this.minimatch.negate
383
+ var rawGlob = pn._glob
384
+ var dotOk = this.dot || rawGlob.charAt(0) === '.'
385
+
386
+ var matchedEntries = []
387
+ for (var i = 0; i < entries.length; i++) {
388
+ var e = entries[i]
389
+ if (e.charAt(0) !== '.' || dotOk) {
390
+ var m
391
+ if (negate && !prefix) {
392
+ m = !e.match(pn)
393
+ } else {
394
+ m = e.match(pn)
395
+ }
396
+ if (m)
397
+ matchedEntries.push(e)
398
+ }
399
+ }
400
+
401
+ //console.error('prd2', prefix, entries, remain[0]._glob, matchedEntries)
402
+
403
+ var len = matchedEntries.length
404
+ // If there are no matched entries, then nothing matches.
405
+ if (len === 0)
406
+ return cb()
407
+
408
+ // if this is the last remaining pattern bit, then no need for
409
+ // an additional stat *unless* the user has specified mark or
410
+ // stat explicitly. We know they exist, since readdir returned
411
+ // them.
412
+
413
+ if (remain.length === 1 && !this.mark && !this.stat) {
414
+ if (!this.matches[index])
415
+ this.matches[index] = Object.create(null)
416
+
417
+ for (var i = 0; i < len; i ++) {
418
+ var e = matchedEntries[i]
419
+ if (prefix) {
420
+ if (prefix !== '/')
421
+ e = prefix + '/' + e
422
+ else
423
+ e = prefix + e
424
+ }
425
+
426
+ if (e.charAt(0) === '/' && !this.nomount) {
427
+ e = path.join(this.root, e)
428
+ }
429
+ this._emitMatch(index, e)
430
+ }
431
+ // This was the last one, and no stats were needed
432
+ return cb()
433
+ }
434
+
435
+ // now test all matched entries as stand-ins for that part
436
+ // of the pattern.
437
+ remain.shift()
438
+ for (var i = 0; i < len; i ++) {
439
+ var e = matchedEntries[i]
440
+ var newPattern
441
+ if (prefix) {
442
+ if (prefix !== '/')
443
+ e = prefix + '/' + e
444
+ else
445
+ e = prefix + e
446
+ }
447
+ this._process([e].concat(remain), index, inGlobStar, cb)
448
+ }
449
+ cb()
450
+ }
451
+
452
+ Glob.prototype._emitMatch = function (index, e) {
453
+ if (this.aborted)
454
+ return
455
+
456
+ if (isIgnored(this, e))
457
+ return
458
+
459
+ if (this.paused) {
460
+ this._emitQueue.push([index, e])
461
+ return
462
+ }
463
+
464
+ var abs = isAbsolute(e) ? e : this._makeAbs(e)
465
+
466
+ if (this.mark)
467
+ e = this._mark(e)
468
+
469
+ if (this.absolute)
470
+ e = abs
471
+
472
+ if (this.matches[index][e])
473
+ return
474
+
475
+ if (this.nodir) {
476
+ var c = this.cache[abs]
477
+ if (c === 'DIR' || Array.isArray(c))
478
+ return
479
+ }
480
+
481
+ this.matches[index][e] = true
482
+
483
+ var st = this.statCache[abs]
484
+ if (st)
485
+ this.emit('stat', e, st)
486
+
487
+ this.emit('match', e)
488
+ }
489
+
490
+ Glob.prototype._readdirInGlobStar = function (abs, cb) {
491
+ if (this.aborted)
492
+ return
493
+
494
+ // follow all symlinked directories forever
495
+ // just proceed as if this is a non-globstar situation
496
+ if (this.follow)
497
+ return this._readdir(abs, false, cb)
498
+
499
+ var lstatkey = 'lstat\0' + abs
500
+ var self = this
501
+ var lstatcb = inflight(lstatkey, lstatcb_)
502
+
503
+ if (lstatcb)
504
+ fs.lstat(abs, lstatcb)
505
+
506
+ function lstatcb_ (er, lstat) {
507
+ if (er && er.code === 'ENOENT')
508
+ return cb()
509
+
510
+ var isSym = lstat && lstat.isSymbolicLink()
511
+ self.symlinks[abs] = isSym
512
+
513
+ // If it's not a symlink or a dir, then it's definitely a regular file.
514
+ // don't bother doing a readdir in that case.
515
+ if (!isSym && lstat && !lstat.isDirectory()) {
516
+ self.cache[abs] = 'FILE'
517
+ cb()
518
+ } else
519
+ self._readdir(abs, false, cb)
520
+ }
521
+ }
522
+
523
+ Glob.prototype._readdir = function (abs, inGlobStar, cb) {
524
+ if (this.aborted)
525
+ return
526
+
527
+ cb = inflight('readdir\0'+abs+'\0'+inGlobStar, cb)
528
+ if (!cb)
529
+ return
530
+
531
+ //console.error('RD %j %j', +inGlobStar, abs)
532
+ if (inGlobStar && !ownProp(this.symlinks, abs))
533
+ return this._readdirInGlobStar(abs, cb)
534
+
535
+ if (ownProp(this.cache, abs)) {
536
+ var c = this.cache[abs]
537
+ if (!c || c === 'FILE')
538
+ return cb()
539
+
540
+ if (Array.isArray(c))
541
+ return cb(null, c)
542
+ }
543
+
544
+ var self = this
545
+ fs.readdir(abs, readdirCb(this, abs, cb))
546
+ }
547
+
548
+ function readdirCb (self, abs, cb) {
549
+ return function (er, entries) {
550
+ if (er)
551
+ self._readdirError(abs, er, cb)
552
+ else
553
+ self._readdirEntries(abs, entries, cb)
554
+ }
555
+ }
556
+
557
+ Glob.prototype._readdirEntries = function (abs, entries, cb) {
558
+ if (this.aborted)
559
+ return
560
+
561
+ // if we haven't asked to stat everything, then just
562
+ // assume that everything in there exists, so we can avoid
563
+ // having to stat it a second time.
564
+ if (!this.mark && !this.stat) {
565
+ for (var i = 0; i < entries.length; i ++) {
566
+ var e = entries[i]
567
+ if (abs === '/')
568
+ e = abs + e
569
+ else
570
+ e = abs + '/' + e
571
+ this.cache[e] = true
572
+ }
573
+ }
574
+
575
+ this.cache[abs] = entries
576
+ return cb(null, entries)
577
+ }
578
+
579
+ Glob.prototype._readdirError = function (f, er, cb) {
580
+ if (this.aborted)
581
+ return
582
+
583
+ // handle errors, and cache the information
584
+ switch (er.code) {
585
+ case 'ENOTSUP': // https://github.com/isaacs/node-glob/issues/205
586
+ case 'ENOTDIR': // totally normal. means it *does* exist.
587
+ var abs = this._makeAbs(f)
588
+ this.cache[abs] = 'FILE'
589
+ if (abs === this.cwdAbs) {
590
+ var error = new Error(er.code + ' invalid cwd ' + this.cwd)
591
+ error.path = this.cwd
592
+ error.code = er.code
593
+ this.emit('error', error)
594
+ this.abort()
595
+ }
596
+ break
597
+
598
+ case 'ENOENT': // not terribly unusual
599
+ case 'ELOOP':
600
+ case 'ENAMETOOLONG':
601
+ case 'UNKNOWN':
602
+ this.cache[this._makeAbs(f)] = false
603
+ break
604
+
605
+ default: // some unusual error. Treat as failure.
606
+ this.cache[this._makeAbs(f)] = false
607
+ if (this.strict) {
608
+ this.emit('error', er)
609
+ // If the error is handled, then we abort
610
+ // if not, we threw out of here
611
+ this.abort()
612
+ }
613
+ if (!this.silent)
614
+ console.error('glob error', er)
615
+ break
616
+ }
617
+
618
+ return cb()
619
+ }
620
+
621
+ Glob.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar, cb) {
622
+ var self = this
623
+ this._readdir(abs, inGlobStar, function (er, entries) {
624
+ self._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb)
625
+ })
626
+ }
627
+
628
+
629
+ Glob.prototype._processGlobStar2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) {
630
+ //console.error('pgs2', prefix, remain[0], entries)
631
+
632
+ // no entries means not a dir, so it can never have matches
633
+ // foo.txt/** doesn't match foo.txt
634
+ if (!entries)
635
+ return cb()
636
+
637
+ // test without the globstar, and with every child both below
638
+ // and replacing the globstar.
639
+ var remainWithoutGlobStar = remain.slice(1)
640
+ var gspref = prefix ? [ prefix ] : []
641
+ var noGlobStar = gspref.concat(remainWithoutGlobStar)
642
+
643
+ // the noGlobStar pattern exits the inGlobStar state
644
+ this._process(noGlobStar, index, false, cb)
645
+
646
+ var isSym = this.symlinks[abs]
647
+ var len = entries.length
648
+
649
+ // If it's a symlink, and we're in a globstar, then stop
650
+ if (isSym && inGlobStar)
651
+ return cb()
652
+
653
+ for (var i = 0; i < len; i++) {
654
+ var e = entries[i]
655
+ if (e.charAt(0) === '.' && !this.dot)
656
+ continue
657
+
658
+ // these two cases enter the inGlobStar state
659
+ var instead = gspref.concat(entries[i], remainWithoutGlobStar)
660
+ this._process(instead, index, true, cb)
661
+
662
+ var below = gspref.concat(entries[i], remain)
663
+ this._process(below, index, true, cb)
664
+ }
665
+
666
+ cb()
667
+ }
668
+
669
+ Glob.prototype._processSimple = function (prefix, index, cb) {
670
+ // XXX review this. Shouldn't it be doing the mounting etc
671
+ // before doing stat? kinda weird?
672
+ var self = this
673
+ this._stat(prefix, function (er, exists) {
674
+ self._processSimple2(prefix, index, er, exists, cb)
675
+ })
676
+ }
677
+ Glob.prototype._processSimple2 = function (prefix, index, er, exists, cb) {
678
+
679
+ //console.error('ps2', prefix, exists)
680
+
681
+ if (!this.matches[index])
682
+ this.matches[index] = Object.create(null)
683
+
684
+ // If it doesn't exist, then just mark the lack of results
685
+ if (!exists)
686
+ return cb()
687
+
688
+ if (prefix && isAbsolute(prefix) && !this.nomount) {
689
+ var trail = /[\/\\]$/.test(prefix)
690
+ if (prefix.charAt(0) === '/') {
691
+ prefix = path.join(this.root, prefix)
692
+ } else {
693
+ prefix = path.resolve(this.root, prefix)
694
+ if (trail)
695
+ prefix += '/'
696
+ }
697
+ }
698
+
699
+ if (process.platform === 'win32')
700
+ prefix = prefix.replace(/\\/g, '/')
701
+
702
+ // Mark this as a match
703
+ this._emitMatch(index, prefix)
704
+ cb()
705
+ }
706
+
707
+ // Returns either 'DIR', 'FILE', or false
708
+ Glob.prototype._stat = function (f, cb) {
709
+ var abs = this._makeAbs(f)
710
+ var needDir = f.slice(-1) === '/'
711
+
712
+ if (f.length > this.maxLength)
713
+ return cb()
714
+
715
+ if (!this.stat && ownProp(this.cache, abs)) {
716
+ var c = this.cache[abs]
717
+
718
+ if (Array.isArray(c))
719
+ c = 'DIR'
720
+
721
+ // It exists, but maybe not how we need it
722
+ if (!needDir || c === 'DIR')
723
+ return cb(null, c)
724
+
725
+ if (needDir && c === 'FILE')
726
+ return cb()
727
+
728
+ // otherwise we have to stat, because maybe c=true
729
+ // if we know it exists, but not what it is.
730
+ }
731
+
732
+ var exists
733
+ var stat = this.statCache[abs]
734
+ if (stat !== undefined) {
735
+ if (stat === false)
736
+ return cb(null, stat)
737
+ else {
738
+ var type = stat.isDirectory() ? 'DIR' : 'FILE'
739
+ if (needDir && type === 'FILE')
740
+ return cb()
741
+ else
742
+ return cb(null, type, stat)
743
+ }
744
+ }
745
+
746
+ var self = this
747
+ var statcb = inflight('stat\0' + abs, lstatcb_)
748
+ if (statcb)
749
+ fs.lstat(abs, statcb)
750
+
751
+ function lstatcb_ (er, lstat) {
752
+ if (lstat && lstat.isSymbolicLink()) {
753
+ // If it's a symlink, then treat it as the target, unless
754
+ // the target does not exist, then treat it as a file.
755
+ return fs.stat(abs, function (er, stat) {
756
+ if (er)
757
+ self._stat2(f, abs, null, lstat, cb)
758
+ else
759
+ self._stat2(f, abs, er, stat, cb)
760
+ })
761
+ } else {
762
+ self._stat2(f, abs, er, lstat, cb)
763
+ }
764
+ }
765
+ }
766
+
767
+ Glob.prototype._stat2 = function (f, abs, er, stat, cb) {
768
+ if (er && (er.code === 'ENOENT' || er.code === 'ENOTDIR')) {
769
+ this.statCache[abs] = false
770
+ return cb()
771
+ }
772
+
773
+ var needDir = f.slice(-1) === '/'
774
+ this.statCache[abs] = stat
775
+
776
+ if (abs.slice(-1) === '/' && stat && !stat.isDirectory())
777
+ return cb(null, false, stat)
778
+
779
+ var c = true
780
+ if (stat)
781
+ c = stat.isDirectory() ? 'DIR' : 'FILE'
782
+ this.cache[abs] = this.cache[abs] || c
783
+
784
+ if (needDir && c === 'FILE')
785
+ return cb()
786
+
787
+ return cb(null, c, stat)
788
+ }