postdoc 0.1.2 → 0.2.0.beta4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (372) hide show
  1. checksums.yaml +5 -5
  2. data/lib/pdf.js +27 -0
  3. data/lib/postdoc.rb +3 -7
  4. data/node_modules/agent-base/History.md +113 -0
  5. data/node_modules/agent-base/README.md +145 -0
  6. data/node_modules/agent-base/index.js +160 -0
  7. data/node_modules/agent-base/package.json +35 -0
  8. data/node_modules/agent-base/patch-core.js +37 -0
  9. data/node_modules/agent-base/test/ssl-cert-snakeoil.key +15 -0
  10. data/node_modules/agent-base/test/ssl-cert-snakeoil.pem +12 -0
  11. data/node_modules/agent-base/test/test.js +673 -0
  12. data/node_modules/async-limiter/LICENSE +8 -0
  13. data/node_modules/async-limiter/coverage/coverage.json +1 -0
  14. data/node_modules/async-limiter/coverage/lcov-report/async-throttle/index.html +73 -0
  15. data/node_modules/async-limiter/coverage/lcov-report/async-throttle/index.js.html +246 -0
  16. data/node_modules/async-limiter/coverage/lcov-report/base.css +182 -0
  17. data/node_modules/async-limiter/coverage/lcov-report/index.html +73 -0
  18. data/node_modules/async-limiter/coverage/lcov-report/prettify.css +1 -0
  19. data/node_modules/async-limiter/coverage/lcov-report/prettify.js +1 -0
  20. data/node_modules/async-limiter/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  21. data/node_modules/async-limiter/coverage/lcov-report/sorter.js +156 -0
  22. data/node_modules/async-limiter/coverage/lcov.info +74 -0
  23. data/node_modules/async-limiter/index.js +67 -0
  24. data/node_modules/async-limiter/package.json +35 -0
  25. data/node_modules/async-limiter/readme.md +132 -0
  26. data/node_modules/balanced-match/LICENSE.md +21 -0
  27. data/node_modules/balanced-match/README.md +91 -0
  28. data/node_modules/balanced-match/index.js +59 -0
  29. data/node_modules/balanced-match/package.json +49 -0
  30. data/node_modules/brace-expansion/LICENSE +21 -0
  31. data/node_modules/brace-expansion/README.md +129 -0
  32. data/node_modules/brace-expansion/index.js +201 -0
  33. data/node_modules/brace-expansion/package.json +47 -0
  34. data/node_modules/buffer-from/index.js +69 -0
  35. data/node_modules/buffer-from/package.json +16 -0
  36. data/node_modules/buffer-from/readme.md +69 -0
  37. data/node_modules/buffer-from/test.js +12 -0
  38. data/node_modules/concat-map/LICENSE +18 -0
  39. data/node_modules/concat-map/README.markdown +62 -0
  40. data/node_modules/concat-map/example/map.js +6 -0
  41. data/node_modules/concat-map/index.js +13 -0
  42. data/node_modules/concat-map/package.json +43 -0
  43. data/node_modules/concat-map/test/map.js +39 -0
  44. data/node_modules/concat-stream/LICENSE +24 -0
  45. data/node_modules/concat-stream/index.js +144 -0
  46. data/node_modules/concat-stream/package.json +55 -0
  47. data/node_modules/concat-stream/readme.md +102 -0
  48. data/node_modules/core-util-is/LICENSE +19 -0
  49. data/node_modules/core-util-is/README.md +3 -0
  50. data/node_modules/core-util-is/float.patch +604 -0
  51. data/node_modules/core-util-is/lib/util.js +107 -0
  52. data/node_modules/core-util-is/package.json +32 -0
  53. data/node_modules/core-util-is/test.js +68 -0
  54. data/node_modules/debug/CHANGELOG.md +395 -0
  55. data/node_modules/debug/LICENSE +19 -0
  56. data/node_modules/debug/Makefile +58 -0
  57. data/node_modules/debug/README.md +368 -0
  58. data/node_modules/debug/karma.conf.js +70 -0
  59. data/node_modules/debug/node.js +1 -0
  60. data/node_modules/debug/package.json +43 -0
  61. data/node_modules/debug/src/browser.js +195 -0
  62. data/node_modules/debug/src/debug.js +225 -0
  63. data/node_modules/debug/src/index.js +10 -0
  64. data/node_modules/debug/src/node.js +186 -0
  65. data/node_modules/es6-promise/CHANGELOG.md +151 -0
  66. data/node_modules/es6-promise/LICENSE +19 -0
  67. data/node_modules/es6-promise/README.md +97 -0
  68. data/node_modules/es6-promise/auto.js +4 -0
  69. data/node_modules/es6-promise/dist/es6-promise.auto.js +1181 -0
  70. data/node_modules/es6-promise/dist/es6-promise.auto.map +1 -0
  71. data/node_modules/es6-promise/dist/es6-promise.auto.min.js +1 -0
  72. data/node_modules/es6-promise/dist/es6-promise.auto.min.map +1 -0
  73. data/node_modules/es6-promise/dist/es6-promise.js +1179 -0
  74. data/node_modules/es6-promise/dist/es6-promise.map +1 -0
  75. data/node_modules/es6-promise/dist/es6-promise.min.js +1 -0
  76. data/node_modules/es6-promise/dist/es6-promise.min.map +1 -0
  77. data/node_modules/es6-promise/es6-promise.d.ts +81 -0
  78. data/node_modules/es6-promise/lib/es6-promise/-internal.js +266 -0
  79. data/node_modules/es6-promise/lib/es6-promise/asap.js +119 -0
  80. data/node_modules/es6-promise/lib/es6-promise/enumerator.js +113 -0
  81. data/node_modules/es6-promise/lib/es6-promise/polyfill.js +35 -0
  82. data/node_modules/es6-promise/lib/es6-promise/promise/all.js +52 -0
  83. data/node_modules/es6-promise/lib/es6-promise/promise/race.js +84 -0
  84. data/node_modules/es6-promise/lib/es6-promise/promise/reject.js +46 -0
  85. data/node_modules/es6-promise/lib/es6-promise/promise/resolve.js +48 -0
  86. data/node_modules/es6-promise/lib/es6-promise/promise.js +427 -0
  87. data/node_modules/es6-promise/lib/es6-promise/then.js +32 -0
  88. data/node_modules/es6-promise/lib/es6-promise/utils.js +21 -0
  89. data/node_modules/es6-promise/lib/es6-promise.auto.js +3 -0
  90. data/node_modules/es6-promise/lib/es6-promise.js +7 -0
  91. data/node_modules/es6-promise/package.json +75 -0
  92. data/node_modules/es6-promisify/README.md +89 -0
  93. data/node_modules/es6-promisify/dist/promise.js +73 -0
  94. data/node_modules/es6-promisify/dist/promisify.js +85 -0
  95. data/node_modules/es6-promisify/package.json +41 -0
  96. data/node_modules/extract-zip/CONTRIBUTING.md +1 -0
  97. data/node_modules/extract-zip/LICENSE +23 -0
  98. data/node_modules/extract-zip/cli.js +20 -0
  99. data/node_modules/extract-zip/index.js +205 -0
  100. data/node_modules/extract-zip/node_modules/debug/CHANGELOG.md +362 -0
  101. data/node_modules/extract-zip/node_modules/debug/LICENSE +19 -0
  102. data/node_modules/extract-zip/node_modules/debug/Makefile +50 -0
  103. data/node_modules/extract-zip/node_modules/debug/README.md +312 -0
  104. data/node_modules/extract-zip/node_modules/debug/component.json +19 -0
  105. data/node_modules/extract-zip/node_modules/debug/karma.conf.js +70 -0
  106. data/node_modules/extract-zip/node_modules/debug/node.js +1 -0
  107. data/node_modules/extract-zip/node_modules/debug/package.json +49 -0
  108. data/node_modules/extract-zip/node_modules/debug/src/browser.js +185 -0
  109. data/node_modules/extract-zip/node_modules/debug/src/debug.js +202 -0
  110. data/node_modules/extract-zip/node_modules/debug/src/index.js +10 -0
  111. data/node_modules/extract-zip/node_modules/debug/src/inspector-log.js +15 -0
  112. data/node_modules/extract-zip/node_modules/debug/src/node.js +248 -0
  113. data/node_modules/extract-zip/package.json +35 -0
  114. data/node_modules/extract-zip/readme.md +49 -0
  115. data/node_modules/fd-slicer/CHANGELOG.md +49 -0
  116. data/node_modules/fd-slicer/LICENSE +21 -0
  117. data/node_modules/fd-slicer/README.md +189 -0
  118. data/node_modules/fd-slicer/index.js +277 -0
  119. data/node_modules/fd-slicer/package.json +36 -0
  120. data/node_modules/fd-slicer/test/test.js +350 -0
  121. data/node_modules/fs.realpath/LICENSE +43 -0
  122. data/node_modules/fs.realpath/README.md +33 -0
  123. data/node_modules/fs.realpath/index.js +66 -0
  124. data/node_modules/fs.realpath/old.js +303 -0
  125. data/node_modules/fs.realpath/package.json +26 -0
  126. data/node_modules/glob/LICENSE +15 -0
  127. data/node_modules/glob/README.md +368 -0
  128. data/node_modules/glob/changelog.md +67 -0
  129. data/node_modules/glob/common.js +240 -0
  130. data/node_modules/glob/glob.js +790 -0
  131. data/node_modules/glob/package.json +43 -0
  132. data/node_modules/glob/sync.js +486 -0
  133. data/node_modules/https-proxy-agent/History.md +124 -0
  134. data/node_modules/https-proxy-agent/README.md +137 -0
  135. data/node_modules/https-proxy-agent/index.js +229 -0
  136. data/node_modules/https-proxy-agent/package.json +35 -0
  137. data/node_modules/https-proxy-agent/test/ssl-cert-snakeoil.key +15 -0
  138. data/node_modules/https-proxy-agent/test/ssl-cert-snakeoil.pem +12 -0
  139. data/node_modules/https-proxy-agent/test/test.js +342 -0
  140. data/node_modules/inflight/LICENSE +15 -0
  141. data/node_modules/inflight/README.md +37 -0
  142. data/node_modules/inflight/inflight.js +54 -0
  143. data/node_modules/inflight/package.json +29 -0
  144. data/node_modules/inherits/LICENSE +16 -0
  145. data/node_modules/inherits/README.md +42 -0
  146. data/node_modules/inherits/inherits.js +7 -0
  147. data/node_modules/inherits/inherits_browser.js +23 -0
  148. data/node_modules/inherits/package.json +29 -0
  149. data/node_modules/isarray/Makefile +6 -0
  150. data/node_modules/isarray/README.md +60 -0
  151. data/node_modules/isarray/component.json +19 -0
  152. data/node_modules/isarray/index.js +5 -0
  153. data/node_modules/isarray/package.json +45 -0
  154. data/node_modules/isarray/test.js +20 -0
  155. data/node_modules/mime/CHANGELOG.md +225 -0
  156. data/node_modules/mime/CONTRIBUTING.md +5 -0
  157. data/node_modules/mime/LICENSE +21 -0
  158. data/node_modules/mime/Mime.js +89 -0
  159. data/node_modules/mime/README.md +188 -0
  160. data/node_modules/mime/cli.js +10 -0
  161. data/node_modules/mime/index.js +4 -0
  162. data/node_modules/mime/lite.js +4 -0
  163. data/node_modules/mime/package.json +43 -0
  164. data/node_modules/mime/src/README_js.md +179 -0
  165. data/node_modules/mime/src/build.js +71 -0
  166. data/node_modules/mime/src/test.js +257 -0
  167. data/node_modules/mime/types/other.json +1 -0
  168. data/node_modules/mime/types/standard.json +1 -0
  169. data/node_modules/minimatch/LICENSE +15 -0
  170. data/node_modules/minimatch/README.md +209 -0
  171. data/node_modules/minimatch/minimatch.js +923 -0
  172. data/node_modules/minimatch/package.json +30 -0
  173. data/node_modules/minimist/LICENSE +18 -0
  174. data/node_modules/minimist/example/parse.js +2 -0
  175. data/node_modules/minimist/index.js +187 -0
  176. data/node_modules/minimist/package.json +40 -0
  177. data/node_modules/minimist/readme.markdown +73 -0
  178. data/node_modules/minimist/test/dash.js +24 -0
  179. data/node_modules/minimist/test/default_bool.js +20 -0
  180. data/node_modules/minimist/test/dotted.js +16 -0
  181. data/node_modules/minimist/test/long.js +31 -0
  182. data/node_modules/minimist/test/parse.js +318 -0
  183. data/node_modules/minimist/test/parse_modified.js +9 -0
  184. data/node_modules/minimist/test/short.js +67 -0
  185. data/node_modules/minimist/test/whitespace.js +8 -0
  186. data/node_modules/mkdirp/LICENSE +21 -0
  187. data/node_modules/mkdirp/bin/cmd.js +33 -0
  188. data/node_modules/mkdirp/bin/usage.txt +12 -0
  189. data/node_modules/mkdirp/examples/pow.js +6 -0
  190. data/node_modules/mkdirp/index.js +98 -0
  191. data/node_modules/mkdirp/package.json +27 -0
  192. data/node_modules/mkdirp/readme.markdown +100 -0
  193. data/node_modules/mkdirp/test/chmod.js +41 -0
  194. data/node_modules/mkdirp/test/clobber.js +38 -0
  195. data/node_modules/mkdirp/test/mkdirp.js +28 -0
  196. data/node_modules/mkdirp/test/opts_fs.js +29 -0
  197. data/node_modules/mkdirp/test/opts_fs_sync.js +27 -0
  198. data/node_modules/mkdirp/test/perm.js +32 -0
  199. data/node_modules/mkdirp/test/perm_sync.js +36 -0
  200. data/node_modules/mkdirp/test/race.js +37 -0
  201. data/node_modules/mkdirp/test/rel.js +32 -0
  202. data/node_modules/mkdirp/test/return.js +25 -0
  203. data/node_modules/mkdirp/test/return_sync.js +24 -0
  204. data/node_modules/mkdirp/test/root.js +19 -0
  205. data/node_modules/mkdirp/test/sync.js +32 -0
  206. data/node_modules/mkdirp/test/umask.js +28 -0
  207. data/node_modules/mkdirp/test/umask_sync.js +32 -0
  208. data/node_modules/ms/index.js +152 -0
  209. data/node_modules/ms/license.md +21 -0
  210. data/node_modules/ms/package.json +37 -0
  211. data/node_modules/ms/readme.md +51 -0
  212. data/node_modules/once/LICENSE +15 -0
  213. data/node_modules/once/README.md +79 -0
  214. data/node_modules/once/once.js +42 -0
  215. data/node_modules/once/package.json +33 -0
  216. data/node_modules/path-is-absolute/index.js +20 -0
  217. data/node_modules/path-is-absolute/license +21 -0
  218. data/node_modules/path-is-absolute/package.json +43 -0
  219. data/node_modules/path-is-absolute/readme.md +59 -0
  220. data/node_modules/pend/LICENSE +23 -0
  221. data/node_modules/pend/README.md +41 -0
  222. data/node_modules/pend/index.js +55 -0
  223. data/node_modules/pend/package.json +18 -0
  224. data/node_modules/pend/test.js +137 -0
  225. data/node_modules/process-nextick-args/index.js +44 -0
  226. data/node_modules/process-nextick-args/license.md +19 -0
  227. data/node_modules/process-nextick-args/package.json +25 -0
  228. data/node_modules/process-nextick-args/readme.md +18 -0
  229. data/node_modules/progress/CHANGELOG.md +115 -0
  230. data/node_modules/progress/LICENSE +22 -0
  231. data/node_modules/progress/Makefile +8 -0
  232. data/node_modules/progress/README.md +146 -0
  233. data/node_modules/progress/index.js +1 -0
  234. data/node_modules/progress/lib/node-progress.js +231 -0
  235. data/node_modules/progress/package.json +25 -0
  236. data/node_modules/proxy-from-env/README.md +131 -0
  237. data/node_modules/proxy-from-env/index.js +103 -0
  238. data/node_modules/proxy-from-env/package.json +35 -0
  239. data/node_modules/proxy-from-env/test.js +393 -0
  240. data/node_modules/puppeteer/CONTRIBUTING.md +206 -0
  241. data/node_modules/puppeteer/DeviceDescriptors.js +704 -0
  242. data/node_modules/puppeteer/LICENSE +202 -0
  243. data/node_modules/puppeteer/README.md +306 -0
  244. data/node_modules/puppeteer/index.js +28 -0
  245. data/node_modules/puppeteer/install.js +122 -0
  246. data/node_modules/puppeteer/lib/Browser.js +186 -0
  247. data/node_modules/puppeteer/lib/BrowserFetcher.js +279 -0
  248. data/node_modules/puppeteer/lib/Connection.js +246 -0
  249. data/node_modules/puppeteer/lib/Coverage.js +301 -0
  250. data/node_modules/puppeteer/lib/Dialog.js +84 -0
  251. data/node_modules/puppeteer/lib/ElementHandle.js +328 -0
  252. data/node_modules/puppeteer/lib/EmulationManager.js +89 -0
  253. data/node_modules/puppeteer/lib/ExecutionContext.js +232 -0
  254. data/node_modules/puppeteer/lib/FrameManager.js +997 -0
  255. data/node_modules/puppeteer/lib/Input.js +309 -0
  256. data/node_modules/puppeteer/lib/Launcher.js +310 -0
  257. data/node_modules/puppeteer/lib/Multimap.js +95 -0
  258. data/node_modules/puppeteer/lib/NavigatorWatcher.js +137 -0
  259. data/node_modules/puppeteer/lib/NetworkManager.js +796 -0
  260. data/node_modules/puppeteer/lib/Page.js +1098 -0
  261. data/node_modules/puppeteer/lib/Pipe.js +69 -0
  262. data/node_modules/puppeteer/lib/Puppeteer.js +60 -0
  263. data/node_modules/puppeteer/lib/Target.js +88 -0
  264. data/node_modules/puppeteer/lib/TaskQueue.js +17 -0
  265. data/node_modules/puppeteer/lib/Tracing.js +99 -0
  266. data/node_modules/puppeteer/lib/USKeyboardLayout.js +281 -0
  267. data/node_modules/puppeteer/lib/helper.js +248 -0
  268. data/node_modules/puppeteer/node6/lib/Browser.js +394 -0
  269. data/node_modules/puppeteer/node6/lib/BrowserFetcher.js +357 -0
  270. data/node_modules/puppeteer/node6/lib/Connection.js +350 -0
  271. data/node_modules/puppeteer/node6/lib/Coverage.js +561 -0
  272. data/node_modules/puppeteer/node6/lib/Dialog.js +136 -0
  273. data/node_modules/puppeteer/node6/lib/ElementHandle.js +796 -0
  274. data/node_modules/puppeteer/node6/lib/EmulationManager.js +115 -0
  275. data/node_modules/puppeteer/node6/lib/ExecutionContext.js +414 -0
  276. data/node_modules/puppeteer/node6/lib/FrameManager.js +1621 -0
  277. data/node_modules/puppeteer/node6/lib/Input.js +569 -0
  278. data/node_modules/puppeteer/node6/lib/Launcher.js +362 -0
  279. data/node_modules/puppeteer/node6/lib/Multimap.js +95 -0
  280. data/node_modules/puppeteer/node6/lib/NavigatorWatcher.js +163 -0
  281. data/node_modules/puppeteer/node6/lib/NetworkManager.js +1108 -0
  282. data/node_modules/puppeteer/node6/lib/Page.js +2242 -0
  283. data/node_modules/puppeteer/node6/lib/Pipe.js +69 -0
  284. data/node_modules/puppeteer/node6/lib/Puppeteer.js +60 -0
  285. data/node_modules/puppeteer/node6/lib/Target.js +114 -0
  286. data/node_modules/puppeteer/node6/lib/TaskQueue.js +17 -0
  287. data/node_modules/puppeteer/node6/lib/Tracing.js +177 -0
  288. data/node_modules/puppeteer/node6/lib/USKeyboardLayout.js +281 -0
  289. data/node_modules/puppeteer/node6/lib/helper.js +274 -0
  290. data/node_modules/puppeteer/package.json +61 -0
  291. data/node_modules/readable-stream/CONTRIBUTING.md +38 -0
  292. data/node_modules/readable-stream/GOVERNANCE.md +136 -0
  293. data/node_modules/readable-stream/LICENSE +47 -0
  294. data/node_modules/readable-stream/README.md +58 -0
  295. data/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +60 -0
  296. data/node_modules/readable-stream/duplex-browser.js +1 -0
  297. data/node_modules/readable-stream/duplex.js +1 -0
  298. data/node_modules/readable-stream/lib/_stream_duplex.js +131 -0
  299. data/node_modules/readable-stream/lib/_stream_passthrough.js +47 -0
  300. data/node_modules/readable-stream/lib/_stream_readable.js +1019 -0
  301. data/node_modules/readable-stream/lib/_stream_transform.js +214 -0
  302. data/node_modules/readable-stream/lib/_stream_writable.js +687 -0
  303. data/node_modules/readable-stream/lib/internal/streams/BufferList.js +79 -0
  304. data/node_modules/readable-stream/lib/internal/streams/destroy.js +74 -0
  305. data/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
  306. data/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
  307. data/node_modules/readable-stream/package.json +52 -0
  308. data/node_modules/readable-stream/passthrough.js +1 -0
  309. data/node_modules/readable-stream/readable-browser.js +7 -0
  310. data/node_modules/readable-stream/readable.js +19 -0
  311. data/node_modules/readable-stream/transform.js +1 -0
  312. data/node_modules/readable-stream/writable-browser.js +1 -0
  313. data/node_modules/readable-stream/writable.js +8 -0
  314. data/node_modules/rimraf/LICENSE +15 -0
  315. data/node_modules/rimraf/README.md +101 -0
  316. data/node_modules/rimraf/bin.js +50 -0
  317. data/node_modules/rimraf/package.json +26 -0
  318. data/node_modules/rimraf/rimraf.js +364 -0
  319. data/node_modules/safe-buffer/LICENSE +21 -0
  320. data/node_modules/safe-buffer/README.md +584 -0
  321. data/node_modules/safe-buffer/index.d.ts +187 -0
  322. data/node_modules/safe-buffer/index.js +62 -0
  323. data/node_modules/safe-buffer/package.json +37 -0
  324. data/node_modules/string_decoder/LICENSE +48 -0
  325. data/node_modules/string_decoder/README.md +47 -0
  326. data/node_modules/string_decoder/lib/string_decoder.js +296 -0
  327. data/node_modules/string_decoder/package.json +31 -0
  328. data/node_modules/typedarray/LICENSE +35 -0
  329. data/node_modules/typedarray/example/tarray.js +4 -0
  330. data/node_modules/typedarray/index.js +630 -0
  331. data/node_modules/typedarray/package.json +55 -0
  332. data/node_modules/typedarray/readme.markdown +61 -0
  333. data/node_modules/typedarray/test/server/undef_globals.js +19 -0
  334. data/node_modules/typedarray/test/tarray.js +10 -0
  335. data/node_modules/ultron/LICENSE +22 -0
  336. data/node_modules/ultron/README.md +113 -0
  337. data/node_modules/ultron/index.js +136 -0
  338. data/node_modules/ultron/package.json +41 -0
  339. data/node_modules/util-deprecate/History.md +16 -0
  340. data/node_modules/util-deprecate/LICENSE +24 -0
  341. data/node_modules/util-deprecate/README.md +53 -0
  342. data/node_modules/util-deprecate/browser.js +67 -0
  343. data/node_modules/util-deprecate/node.js +6 -0
  344. data/node_modules/util-deprecate/package.json +27 -0
  345. data/node_modules/wrappy/LICENSE +15 -0
  346. data/node_modules/wrappy/README.md +36 -0
  347. data/node_modules/wrappy/package.json +29 -0
  348. data/node_modules/wrappy/wrappy.js +33 -0
  349. data/node_modules/ws/LICENSE +21 -0
  350. data/node_modules/ws/README.md +341 -0
  351. data/node_modules/ws/index.js +15 -0
  352. data/node_modules/ws/lib/BufferUtil.js +71 -0
  353. data/node_modules/ws/lib/Constants.js +10 -0
  354. data/node_modules/ws/lib/ErrorCodes.js +28 -0
  355. data/node_modules/ws/lib/EventTarget.js +151 -0
  356. data/node_modules/ws/lib/Extensions.js +203 -0
  357. data/node_modules/ws/lib/PerMessageDeflate.js +507 -0
  358. data/node_modules/ws/lib/Receiver.js +553 -0
  359. data/node_modules/ws/lib/Sender.js +412 -0
  360. data/node_modules/ws/lib/Validation.js +17 -0
  361. data/node_modules/ws/lib/WebSocket.js +717 -0
  362. data/node_modules/ws/lib/WebSocketServer.js +326 -0
  363. data/node_modules/ws/package.json +46 -0
  364. data/node_modules/yauzl/LICENSE +21 -0
  365. data/node_modules/yauzl/README.md +467 -0
  366. data/node_modules/yauzl/index.js +626 -0
  367. data/node_modules/yauzl/package.json +36 -0
  368. data/package.json +5 -0
  369. data/yarn.lock +240 -0
  370. metadata +372 -7
  371. data/app/assets/stylesheets/default.css +0 -4
  372. data/lib/postdoc/postdoc_view_helper.rb +0 -22
@@ -0,0 +1,569 @@
1
+ /**
2
+ * Copyright 2017 Google Inc. All rights reserved.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the 'License');
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an 'AS IS' BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ const {helper} = require('./helper');
18
+ const keyDefinitions = require('./USKeyboardLayout');
19
+
20
+ /**
21
+ * @typedef {Object} KeyDescription
22
+ * @property {number} keyCode
23
+ * @property {string} key
24
+ * @property {string} text
25
+ * @property {string} code
26
+ * @property {number} location
27
+ */
28
+
29
+ class Keyboard {
30
+ /**
31
+ * @param {!Puppeteer.CDPSession} client
32
+ */
33
+ constructor(client) {
34
+ this._client = client;
35
+ this._modifiers = 0;
36
+ this._pressedKeys = new Set();
37
+ }
38
+
39
+ /**
40
+ * @param {string} key
41
+ * @param {{text: string}=} options
42
+ */
43
+ /* async */ down(key, options = { text: undefined }) {return (fn => {
44
+ const gen = fn.call(this);
45
+ return new Promise((resolve, reject) => {
46
+ function step(key, arg) {
47
+ let info, value;
48
+ try {
49
+ info = gen[key](arg);
50
+ value = info.value;
51
+ } catch (error) {
52
+ reject(error);
53
+ return;
54
+ }
55
+ if (info.done) {
56
+ resolve(value);
57
+ } else {
58
+ return Promise.resolve(value).then(
59
+ value => {
60
+ step('next', value);
61
+ },
62
+ err => {
63
+ step('throw', err);
64
+ });
65
+ }
66
+ }
67
+ return step('next');
68
+ });
69
+ })(function*(){
70
+ const description = this._keyDescriptionForString(key);
71
+
72
+ const autoRepeat = this._pressedKeys.has(description.code);
73
+ this._pressedKeys.add(description.code);
74
+ this._modifiers |= this._modifierBit(description.key);
75
+
76
+ const text = options.text === undefined ? description.text : options.text;
77
+ (yield this._client.send('Input.dispatchKeyEvent', {
78
+ type: text ? 'keyDown' : 'rawKeyDown',
79
+ modifiers: this._modifiers,
80
+ windowsVirtualKeyCode: description.keyCode,
81
+ code: description.code,
82
+ key: description.key,
83
+ text: text,
84
+ unmodifiedText: text,
85
+ autoRepeat,
86
+ location: description.location,
87
+ isKeypad: description.location === 3
88
+ }));
89
+ });}
90
+
91
+ /**
92
+ * @param {string} key
93
+ * @return {number}
94
+ */
95
+ _modifierBit(key) {
96
+ if (key === 'Alt')
97
+ return 1;
98
+ if (key === 'Control')
99
+ return 2;
100
+ if (key === 'Meta')
101
+ return 4;
102
+ if (key === 'Shift')
103
+ return 8;
104
+ return 0;
105
+ }
106
+
107
+ /**
108
+ * @param {string} keyString
109
+ * @return {KeyDescription}
110
+ */
111
+ _keyDescriptionForString(keyString) {
112
+ const shift = this._modifiers & 8;
113
+ const description = {
114
+ key: '',
115
+ keyCode: 0,
116
+ code: '',
117
+ text: '',
118
+ location: 0
119
+ };
120
+
121
+ const definition = keyDefinitions[keyString];
122
+ console.assert(definition, `Unknown key: "${keyString}"`);
123
+
124
+ if (definition.key)
125
+ description.key = definition.key;
126
+ if (shift && definition.shiftKey)
127
+ description.key = definition.shiftKey;
128
+
129
+ if (definition.keyCode)
130
+ description.keyCode = definition.keyCode;
131
+ if (shift && definition.shiftKeyCode)
132
+ description.keyCode = definition.shiftKeyCode;
133
+
134
+ if (definition.code)
135
+ description.code = definition.code;
136
+
137
+ if (definition.location)
138
+ description.location = definition.location;
139
+
140
+ if (description.key.length === 1)
141
+ description.text = description.key;
142
+
143
+ if (definition.text)
144
+ description.text = definition.text;
145
+ if (shift && definition.shiftText)
146
+ description.text = definition.shiftText;
147
+
148
+ // if any modifiers besides shift are pressed, no text should be sent
149
+ if (this._modifiers & ~8)
150
+ description.text = '';
151
+
152
+ return description;
153
+ }
154
+
155
+ /**
156
+ * @param {string} key
157
+ */
158
+ /* async */ up(key) {return (fn => {
159
+ const gen = fn.call(this);
160
+ return new Promise((resolve, reject) => {
161
+ function step(key, arg) {
162
+ let info, value;
163
+ try {
164
+ info = gen[key](arg);
165
+ value = info.value;
166
+ } catch (error) {
167
+ reject(error);
168
+ return;
169
+ }
170
+ if (info.done) {
171
+ resolve(value);
172
+ } else {
173
+ return Promise.resolve(value).then(
174
+ value => {
175
+ step('next', value);
176
+ },
177
+ err => {
178
+ step('throw', err);
179
+ });
180
+ }
181
+ }
182
+ return step('next');
183
+ });
184
+ })(function*(){
185
+ const description = this._keyDescriptionForString(key);
186
+
187
+ this._modifiers &= ~this._modifierBit(description.key);
188
+ this._pressedKeys.delete(description.code);
189
+ (yield this._client.send('Input.dispatchKeyEvent', {
190
+ type: 'keyUp',
191
+ modifiers: this._modifiers,
192
+ key: description.key,
193
+ windowsVirtualKeyCode: description.keyCode,
194
+ code: description.code,
195
+ location: description.location
196
+ }));
197
+ });}
198
+
199
+ /**
200
+ * @param {string} char
201
+ */
202
+ /* async */ sendCharacter(char) {return (fn => {
203
+ const gen = fn.call(this);
204
+ return new Promise((resolve, reject) => {
205
+ function step(key, arg) {
206
+ let info, value;
207
+ try {
208
+ info = gen[key](arg);
209
+ value = info.value;
210
+ } catch (error) {
211
+ reject(error);
212
+ return;
213
+ }
214
+ if (info.done) {
215
+ resolve(value);
216
+ } else {
217
+ return Promise.resolve(value).then(
218
+ value => {
219
+ step('next', value);
220
+ },
221
+ err => {
222
+ step('throw', err);
223
+ });
224
+ }
225
+ }
226
+ return step('next');
227
+ });
228
+ })(function*(){
229
+ (yield this._client.send('Input.dispatchKeyEvent', {
230
+ type: 'char',
231
+ modifiers: this._modifiers,
232
+ text: char,
233
+ key: char,
234
+ unmodifiedText: char
235
+ }));
236
+ });}
237
+
238
+ /**
239
+ * @param {string} text
240
+ * @param {{delay: (number|undefined)}=} options
241
+ */
242
+ /* async */ type(text, options) {return (fn => {
243
+ const gen = fn.call(this);
244
+ return new Promise((resolve, reject) => {
245
+ function step(key, arg) {
246
+ let info, value;
247
+ try {
248
+ info = gen[key](arg);
249
+ value = info.value;
250
+ } catch (error) {
251
+ reject(error);
252
+ return;
253
+ }
254
+ if (info.done) {
255
+ resolve(value);
256
+ } else {
257
+ return Promise.resolve(value).then(
258
+ value => {
259
+ step('next', value);
260
+ },
261
+ err => {
262
+ step('throw', err);
263
+ });
264
+ }
265
+ }
266
+ return step('next');
267
+ });
268
+ })(function*(){
269
+ let delay = 0;
270
+ if (options && options.delay)
271
+ delay = options.delay;
272
+ for (const char of text) {
273
+ if (keyDefinitions[char])
274
+ (yield this.press(char, {delay}));
275
+ else
276
+ (yield this.sendCharacter(char));
277
+ if (delay)
278
+ (yield new Promise(f => setTimeout(f, delay)));
279
+ }
280
+ });}
281
+
282
+ /**
283
+ * @param {string} key
284
+ * @param {!Object=} options
285
+ */
286
+ /* async */ press(key, options) {return (fn => {
287
+ const gen = fn.call(this);
288
+ return new Promise((resolve, reject) => {
289
+ function step(key, arg) {
290
+ let info, value;
291
+ try {
292
+ info = gen[key](arg);
293
+ value = info.value;
294
+ } catch (error) {
295
+ reject(error);
296
+ return;
297
+ }
298
+ if (info.done) {
299
+ resolve(value);
300
+ } else {
301
+ return Promise.resolve(value).then(
302
+ value => {
303
+ step('next', value);
304
+ },
305
+ err => {
306
+ step('throw', err);
307
+ });
308
+ }
309
+ }
310
+ return step('next');
311
+ });
312
+ })(function*(){
313
+ (yield this.down(key, options));
314
+ if (options && options.delay)
315
+ (yield new Promise(f => setTimeout(f, options.delay)));
316
+ (yield this.up(key));
317
+ });}
318
+ }
319
+
320
+ class Mouse {
321
+ /**
322
+ * @param {Puppeteer.CDPSession} client
323
+ * @param {!Keyboard} keyboard
324
+ */
325
+ constructor(client, keyboard) {
326
+ this._client = client;
327
+ this._keyboard = keyboard;
328
+ this._x = 0;
329
+ this._y = 0;
330
+ this._button = 'none';
331
+ }
332
+
333
+ /**
334
+ * @param {number} x
335
+ * @param {number} y
336
+ * @param {Object=} options
337
+ * @return {!Promise}
338
+ */
339
+ /* async */ move(x, y, options = {}) {return (fn => {
340
+ const gen = fn.call(this);
341
+ return new Promise((resolve, reject) => {
342
+ function step(key, arg) {
343
+ let info, value;
344
+ try {
345
+ info = gen[key](arg);
346
+ value = info.value;
347
+ } catch (error) {
348
+ reject(error);
349
+ return;
350
+ }
351
+ if (info.done) {
352
+ resolve(value);
353
+ } else {
354
+ return Promise.resolve(value).then(
355
+ value => {
356
+ step('next', value);
357
+ },
358
+ err => {
359
+ step('throw', err);
360
+ });
361
+ }
362
+ }
363
+ return step('next');
364
+ });
365
+ })(function*(){
366
+ const fromX = this._x, fromY = this._y;
367
+ this._x = x;
368
+ this._y = y;
369
+ const steps = options.steps || 1;
370
+ for (let i = 1; i <= steps; i++) {
371
+ (yield this._client.send('Input.dispatchMouseEvent', {
372
+ type: 'mouseMoved',
373
+ button: this._button,
374
+ x: fromX + (this._x - fromX) * (i / steps),
375
+ y: fromY + (this._y - fromY) * (i / steps),
376
+ modifiers: this._keyboard._modifiers
377
+ }));
378
+ }
379
+ });}
380
+
381
+ /**
382
+ * @param {number} x
383
+ * @param {number} y
384
+ * @param {!Object=} options
385
+ */
386
+ /* async */ click(x, y, options = {}) {return (fn => {
387
+ const gen = fn.call(this);
388
+ return new Promise((resolve, reject) => {
389
+ function step(key, arg) {
390
+ let info, value;
391
+ try {
392
+ info = gen[key](arg);
393
+ value = info.value;
394
+ } catch (error) {
395
+ reject(error);
396
+ return;
397
+ }
398
+ if (info.done) {
399
+ resolve(value);
400
+ } else {
401
+ return Promise.resolve(value).then(
402
+ value => {
403
+ step('next', value);
404
+ },
405
+ err => {
406
+ step('throw', err);
407
+ });
408
+ }
409
+ }
410
+ return step('next');
411
+ });
412
+ })(function*(){
413
+ this.move(x, y);
414
+ this.down(options);
415
+ if (typeof options.delay === 'number')
416
+ (yield new Promise(f => setTimeout(f, options.delay)));
417
+ (yield this.up(options));
418
+ });}
419
+
420
+ /**
421
+ * @param {!Object=} options
422
+ */
423
+ /* async */ down(options = {}) {return (fn => {
424
+ const gen = fn.call(this);
425
+ return new Promise((resolve, reject) => {
426
+ function step(key, arg) {
427
+ let info, value;
428
+ try {
429
+ info = gen[key](arg);
430
+ value = info.value;
431
+ } catch (error) {
432
+ reject(error);
433
+ return;
434
+ }
435
+ if (info.done) {
436
+ resolve(value);
437
+ } else {
438
+ return Promise.resolve(value).then(
439
+ value => {
440
+ step('next', value);
441
+ },
442
+ err => {
443
+ step('throw', err);
444
+ });
445
+ }
446
+ }
447
+ return step('next');
448
+ });
449
+ })(function*(){
450
+ this._button = (options.button || 'left');
451
+ (yield this._client.send('Input.dispatchMouseEvent', {
452
+ type: 'mousePressed',
453
+ button: this._button,
454
+ x: this._x,
455
+ y: this._y,
456
+ modifiers: this._keyboard._modifiers,
457
+ clickCount: (options.clickCount || 1)
458
+ }));
459
+ });}
460
+
461
+ /**
462
+ * @param {!Object=} options
463
+ */
464
+ /* async */ up(options = {}) {return (fn => {
465
+ const gen = fn.call(this);
466
+ return new Promise((resolve, reject) => {
467
+ function step(key, arg) {
468
+ let info, value;
469
+ try {
470
+ info = gen[key](arg);
471
+ value = info.value;
472
+ } catch (error) {
473
+ reject(error);
474
+ return;
475
+ }
476
+ if (info.done) {
477
+ resolve(value);
478
+ } else {
479
+ return Promise.resolve(value).then(
480
+ value => {
481
+ step('next', value);
482
+ },
483
+ err => {
484
+ step('throw', err);
485
+ });
486
+ }
487
+ }
488
+ return step('next');
489
+ });
490
+ })(function*(){
491
+ this._button = 'none';
492
+ (yield this._client.send('Input.dispatchMouseEvent', {
493
+ type: 'mouseReleased',
494
+ button: (options.button || 'left'),
495
+ x: this._x,
496
+ y: this._y,
497
+ modifiers: this._keyboard._modifiers,
498
+ clickCount: (options.clickCount || 1)
499
+ }));
500
+ });}
501
+ }
502
+
503
+ class Touchscreen {
504
+ /**
505
+ * @param {Puppeteer.CDPSession} client
506
+ * @param {Keyboard} keyboard
507
+ */
508
+ constructor(client, keyboard) {
509
+ this._client = client;
510
+ this._keyboard = keyboard;
511
+ }
512
+
513
+ /**
514
+ * @param {number} x
515
+ * @param {number} y
516
+ */
517
+ /* async */ tap(x, y) {return (fn => {
518
+ const gen = fn.call(this);
519
+ return new Promise((resolve, reject) => {
520
+ function step(key, arg) {
521
+ let info, value;
522
+ try {
523
+ info = gen[key](arg);
524
+ value = info.value;
525
+ } catch (error) {
526
+ reject(error);
527
+ return;
528
+ }
529
+ if (info.done) {
530
+ resolve(value);
531
+ } else {
532
+ return Promise.resolve(value).then(
533
+ value => {
534
+ step('next', value);
535
+ },
536
+ err => {
537
+ step('throw', err);
538
+ });
539
+ }
540
+ }
541
+ return step('next');
542
+ });
543
+ })(function*(){
544
+ // Touches appear to be lost during the first frame after navigation.
545
+ // This waits a frame before sending the tap.
546
+ // @see https://crbug.com/613219
547
+ (yield this._client.send('Runtime.evaluate', {
548
+ expression: 'new Promise(x => requestAnimationFrame(() => requestAnimationFrame(x)))',
549
+ awaitPromise: true
550
+ }));
551
+
552
+ const touchPoints = [{x: Math.round(x), y: Math.round(y)}];
553
+ (yield this._client.send('Input.dispatchTouchEvent', {
554
+ type: 'touchStart',
555
+ touchPoints,
556
+ modifiers: this._keyboard._modifiers
557
+ }));
558
+ (yield this._client.send('Input.dispatchTouchEvent', {
559
+ type: 'touchEnd',
560
+ touchPoints: [],
561
+ modifiers: this._keyboard._modifiers
562
+ }));
563
+ });}
564
+ }
565
+
566
+ module.exports = { Keyboard, Mouse, Touchscreen};
567
+ helper.tracePublicAPI(Keyboard);
568
+ helper.tracePublicAPI(Mouse);
569
+ helper.tracePublicAPI(Touchscreen);