@corellium/corellium-cli 1.0.3 → 1.0.4

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 (672) hide show
  1. package/README.md +4 -16
  2. package/example/WebPlayerSample.js +93 -37
  3. package/jenkinsbuild/build.sh +1 -1
  4. package/node_modules/@babel/cli/node_modules/commander/package.json +27 -58
  5. package/node_modules/@babel/cli/node_modules/make-dir/package.json +62 -93
  6. package/node_modules/@babel/cli/node_modules/pify/package.json +54 -85
  7. package/node_modules/@babel/cli/node_modules/semver/package.json +20 -51
  8. package/node_modules/@babel/cli/node_modules/slash/package.json +37 -68
  9. package/node_modules/@babel/cli/package.json +37 -69
  10. package/node_modules/@corellium/client-api/package.json +15 -40
  11. package/node_modules/@jridgewell/resolve-uri/package.json +40 -75
  12. package/node_modules/@jridgewell/sourcemap-codec/package.json +43 -74
  13. package/node_modules/@jridgewell/trace-mapping/package.json +40 -72
  14. package/node_modules/@mapbox/node-pre-gyp/package.json +27 -61
  15. package/node_modules/@nicolo-ribaudo/chokidar-2/package.json +22 -55
  16. package/node_modules/abbrev/package.json +18 -52
  17. package/node_modules/agent-base/package.json +33 -62
  18. package/node_modules/ansi-regex/package.json +58 -89
  19. package/node_modules/ansi-styles/package.json +59 -95
  20. package/node_modules/anymatch/package.json +28 -56
  21. package/node_modules/aproba/package.json +23 -50
  22. package/node_modules/are-we-there-yet/node_modules/readable-stream/package.json +32 -60
  23. package/node_modules/are-we-there-yet/package.json +32 -62
  24. package/node_modules/ascii-art/package.json +51 -83
  25. package/node_modules/ascii-art-ansi/package.json +30 -61
  26. package/node_modules/ascii-art-braille/package.json +7 -32
  27. package/node_modules/ascii-art-font/package.json +17 -47
  28. package/node_modules/ascii-art-graph/package.json +10 -34
  29. package/node_modules/ascii-art-image/node_modules/ascii-art-braille/package.json +7 -32
  30. package/node_modules/ascii-art-image/package.json +11 -36
  31. package/node_modules/ascii-art-table/package.json +10 -35
  32. package/node_modules/ascii-art-utf/package.json +18 -47
  33. package/node_modules/async/package.json +29 -55
  34. package/node_modules/async-arrays/package.json +34 -62
  35. package/node_modules/asynckit/package.json +45 -74
  36. package/node_modules/axios/package.json +46 -72
  37. package/node_modules/balanced-match/package.json +22 -49
  38. package/node_modules/binary-extensions/package.json +41 -73
  39. package/node_modules/brace-expansion/package.json +23 -50
  40. package/node_modules/braces/package.json +30 -76
  41. package/node_modules/call-bind/package.json +83 -125
  42. package/node_modules/canvas/package.json +43 -86
  43. package/node_modules/chokidar/package.json +40 -74
  44. package/node_modules/chownr/package.json +24 -56
  45. package/node_modules/cli/package.json +23 -70
  46. package/node_modules/cliui/package.json +53 -87
  47. package/node_modules/color/node_modules/color-convert/package.json +26 -60
  48. package/node_modules/color/node_modules/color-name/package.json +18 -45
  49. package/node_modules/color/package.json +26 -57
  50. package/node_modules/color-convert/package.json +25 -59
  51. package/node_modules/color-difference/package.json +26 -52
  52. package/node_modules/color-model/package.json +17 -44
  53. package/node_modules/color-name/package.json +32 -60
  54. package/node_modules/color-string/package.json +26 -67
  55. package/node_modules/color-support/package.json +26 -60
  56. package/node_modules/combined-stream/package.json +19 -52
  57. package/node_modules/component-emitter/package.json +17 -45
  58. package/node_modules/concat-map/package.json +45 -89
  59. package/node_modules/console-control-strings/package.json +22 -55
  60. package/node_modules/convert-source-map/package.json +28 -55
  61. package/node_modules/cookiejar/package.json +16 -44
  62. package/node_modules/core-util-is/package.json +21 -51
  63. package/node_modules/d3/package.json +43 -70
  64. package/node_modules/d3-array/package.json +24 -55
  65. package/node_modules/d3-axis/package.json +27 -54
  66. package/node_modules/d3-brush/package.json +33 -60
  67. package/node_modules/d3-chord/package.json +28 -55
  68. package/node_modules/d3-collection/package.json +25 -54
  69. package/node_modules/d3-color/package.json +2 -2
  70. package/node_modules/d3-contour/package.json +27 -54
  71. package/node_modules/d3-dispatch/package.json +28 -60
  72. package/node_modules/d3-drag/package.json +32 -61
  73. package/node_modules/d3-dsv/node_modules/commander/package.json +25 -56
  74. package/node_modules/d3-dsv/package.json +36 -64
  75. package/node_modules/d3-ease/package.json +28 -56
  76. package/node_modules/d3-fetch/package.json +31 -58
  77. package/node_modules/d3-force/package.json +30 -57
  78. package/node_modules/d3-format/package.json +29 -57
  79. package/node_modules/d3-geo/package.json +35 -62
  80. package/node_modules/d3-hierarchy/package.json +33 -60
  81. package/node_modules/d3-interpolate/package.json +31 -63
  82. package/node_modules/d3-path/package.json +28 -57
  83. package/node_modules/d3-polygon/package.json +28 -55
  84. package/node_modules/d3-quadtree/package.json +29 -57
  85. package/node_modules/d3-random/package.json +26 -53
  86. package/node_modules/d3-scale/package.json +29 -56
  87. package/node_modules/d3-scale-chromatic/package.json +33 -60
  88. package/node_modules/d3-selection/package.json +29 -60
  89. package/node_modules/d3-shape/package.json +32 -59
  90. package/node_modules/d3-time/package.json +28 -57
  91. package/node_modules/d3-time-format/package.json +33 -61
  92. package/node_modules/d3-timer/package.json +28 -57
  93. package/node_modules/d3-transition/package.json +35 -64
  94. package/node_modules/d3-voronoi/package.json +24 -51
  95. package/node_modules/d3-zoom/package.json +34 -61
  96. package/node_modules/debug/package.json +37 -87
  97. package/node_modules/decompress-response/package.json +53 -84
  98. package/node_modules/delayed-stream/package.json +19 -53
  99. package/node_modules/delegates/package.json +11 -45
  100. package/node_modules/detect-libc/package.json +26 -60
  101. package/node_modules/dirname-shim/package.json +26 -60
  102. package/node_modules/dotenv/package.json +37 -64
  103. package/node_modules/duplexer/package.json +18 -49
  104. package/node_modules/emoji-regex/package.json +32 -58
  105. package/node_modules/escalade/package.json +28 -59
  106. package/node_modules/extended-emitter/package.json +37 -65
  107. package/node_modules/fast-safe-stringify/package.json +33 -73
  108. package/node_modules/fill-range/package.json +28 -72
  109. package/node_modules/follow-redirects/package.json +42 -77
  110. package/node_modules/form-data/package.json +42 -74
  111. package/node_modules/formidable/package.json +22 -52
  112. package/node_modules/fs-minipass/package.json +24 -52
  113. package/node_modules/fs-readdir-recursive/package.json +20 -50
  114. package/node_modules/fs.realpath/package.json +21 -53
  115. package/node_modules/fsevents/package.json +38 -63
  116. package/node_modules/ftp-response-parser/node_modules/isarray/package.json +22 -54
  117. package/node_modules/ftp-response-parser/node_modules/readable-stream/package.json +22 -55
  118. package/node_modules/ftp-response-parser/node_modules/string_decoder/package.json +17 -45
  119. package/node_modules/ftp-response-parser/package.json +23 -64
  120. package/node_modules/function-bind/package.json +28 -61
  121. package/node_modules/gauge/package.json +25 -52
  122. package/node_modules/generate-password/package.json +28 -54
  123. package/node_modules/get-caller-file/package.json +27 -53
  124. package/node_modules/get-intrinsic/package.json +91 -124
  125. package/node_modules/glob/package.json +34 -68
  126. package/node_modules/glob-parent/package.json +27 -70
  127. package/node_modules/has/package.json +26 -55
  128. package/node_modules/has-symbols/package.json +104 -133
  129. package/node_modules/has-unicode/package.json +25 -52
  130. package/node_modules/https-proxy-agent/package.json +30 -59
  131. package/node_modules/iconv-lite/package.json +48 -77
  132. package/node_modules/inflight/package.json +20 -48
  133. package/node_modules/inherits/package.json +17 -54
  134. package/node_modules/is-binary-path/package.json +43 -75
  135. package/node_modules/is-extglob/package.json +22 -52
  136. package/node_modules/is-fullwidth-code-point/package.json +45 -79
  137. package/node_modules/is-glob/package.json +26 -68
  138. package/node_modules/is-number/package.json +26 -65
  139. package/node_modules/jsftp/node_modules/debug/package.json +28 -67
  140. package/node_modules/jsftp/package.json +22 -59
  141. package/node_modules/json2csv/node_modules/commander/package.json +25 -56
  142. package/node_modules/json2csv/package.json +37 -64
  143. package/node_modules/jsonparse/package.json +18 -53
  144. package/node_modules/lodash/package.json +15 -61
  145. package/node_modules/lodash.get/package.json +16 -67
  146. package/node_modules/lru-cache/package.json +27 -61
  147. package/node_modules/make-dir/node_modules/semver/package.json +20 -51
  148. package/node_modules/make-dir/package.json +62 -93
  149. package/node_modules/maplex/package.json +22 -54
  150. package/node_modules/methods/package.json +22 -64
  151. package/node_modules/mime/package.json +20 -48
  152. package/node_modules/mime-db/package.json +25 -67
  153. package/node_modules/mime-types/package.json +20 -64
  154. package/node_modules/mimic-response/package.json +45 -76
  155. package/node_modules/minimatch/package.json +25 -61
  156. package/node_modules/minipass/package.json +30 -64
  157. package/node_modules/minizlib/package.json +27 -59
  158. package/node_modules/mkdirp/package.json +27 -57
  159. package/node_modules/ms/package.json +24 -58
  160. package/node_modules/multi-progress/package.json +20 -46
  161. package/node_modules/nan/package.json +27 -87
  162. package/node_modules/node-fetch/package.json +77 -104
  163. package/node_modules/nopt/package.json +22 -54
  164. package/node_modules/normalize-path/package.json +25 -63
  165. package/node_modules/npmlog/package.json +23 -55
  166. package/node_modules/object-assign/package.json +20 -51
  167. package/node_modules/object-inspect/package.json +53 -81
  168. package/node_modules/once/package.json +19 -56
  169. package/node_modules/parse-listing/package.json +27 -56
  170. package/node_modules/path-is-absolute/package.json +16 -47
  171. package/node_modules/picomatch/package.json +28 -60
  172. package/node_modules/progress/package.json +21 -65
  173. package/node_modules/qs/package.json +78 -105
  174. package/node_modules/readdirp/package.json +47 -83
  175. package/node_modules/require-directory/package.json +29 -57
  176. package/node_modules/rimraf/package.json +23 -61
  177. package/node_modules/rw/package.json +19 -46
  178. package/node_modules/safe-buffer/package.json +10 -38
  179. package/node_modules/safer-buffer/package.json +18 -43
  180. package/node_modules/semver/package.json +36 -70
  181. package/node_modules/set-blocking/package.json +29 -56
  182. package/node_modules/side-channel/package.json +70 -98
  183. package/node_modules/sift/package.json +30 -62
  184. package/node_modules/signal-exit/package.json +29 -58
  185. package/node_modules/simple-concat/package.json +22 -46
  186. package/node_modules/simple-get/package.json +9 -33
  187. package/node_modules/simple-swizzle/node_modules/is-arrayish/package.json +28 -59
  188. package/node_modules/simple-swizzle/package.json +23 -57
  189. package/node_modules/strangler/package.json +39 -67
  190. package/node_modules/stream-combiner/package.json +15 -48
  191. package/node_modules/string-tools/package.json +16 -50
  192. package/node_modules/string-width/package.json +59 -97
  193. package/node_modules/string_decoder/package.json +18 -47
  194. package/node_modules/strip-ansi/package.json +57 -94
  195. package/node_modules/superagent/node_modules/form-data/package.json +42 -74
  196. package/node_modules/superagent/node_modules/readable-stream/package.json +32 -60
  197. package/node_modules/superagent/package.json +13 -59
  198. package/node_modules/tar/package.json +27 -59
  199. package/node_modules/through/package.json +17 -50
  200. package/node_modules/to-regex-range/package.json +25 -61
  201. package/node_modules/tr46/package.json +24 -51
  202. package/node_modules/unorm/package.json +34 -75
  203. package/node_modules/util-deprecate/package.json +19 -49
  204. package/node_modules/uuid/package.json +74 -102
  205. package/node_modules/webidl-conversions/package.json +18 -53
  206. package/node_modules/whatwg-url/package.json +15 -49
  207. package/node_modules/wide-align/package.json +21 -53
  208. package/node_modules/wolfy87-eventemitter/package.json +25 -49
  209. package/node_modules/wrap-ansi/package.json +65 -97
  210. package/node_modules/wrappy/package.json +21 -50
  211. package/node_modules/y18n/package.json +43 -73
  212. package/node_modules/yallist/package.json +20 -55
  213. package/node_modules/yargs/package.json +72 -99
  214. package/node_modules/yargs-parser/package.json +52 -83
  215. package/package.json +2 -3
  216. package/src/TrialAccount.js +76 -0
  217. package/src/commands/agent/Agent.js +10 -19
  218. package/src/commands/agent/index.js +1 -0
  219. package/src/commands/agent/ready.js +42 -0
  220. package/src/commands/instances/list.js +8 -3
  221. package/src/commands/signup.js +14 -5
  222. package/src/commands/webplayer/WebPlayer.js +2 -1
  223. package/src/commands/webplayer/create.js +6 -0
  224. package/src/commands/webplayer/list.js +17 -16
  225. package/src/logging.js +1 -1
  226. package/src/profile.js +12 -9
  227. package/src/resumable.js +1314 -0
  228. package/src/table.js +7 -2
  229. package/src/upload.js +64 -2
  230. package/test/test.js +89 -0
  231. package/node_modules/@corellium/corellium-api/README.md +0 -1210
  232. package/node_modules/@corellium/corellium-api/node_modules/form-data/License +0 -19
  233. package/node_modules/@corellium/corellium-api/node_modules/form-data/README.md.bak +0 -356
  234. package/node_modules/@corellium/corellium-api/node_modules/form-data/Readme.md +0 -356
  235. package/node_modules/@corellium/corellium-api/node_modules/form-data/index.d.ts +0 -62
  236. package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/browser.js +0 -2
  237. package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/form_data.js +0 -498
  238. package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/populate.js +0 -10
  239. package/node_modules/@corellium/corellium-api/node_modules/form-data/package.json +0 -104
  240. package/node_modules/@corellium/corellium-api/node_modules/uuid/AUTHORS +0 -5
  241. package/node_modules/@corellium/corellium-api/node_modules/uuid/CHANGELOG.md +0 -119
  242. package/node_modules/@corellium/corellium-api/node_modules/uuid/LICENSE.md +0 -21
  243. package/node_modules/@corellium/corellium-api/node_modules/uuid/README.md +0 -276
  244. package/node_modules/@corellium/corellium-api/node_modules/uuid/bin/uuid +0 -65
  245. package/node_modules/@corellium/corellium-api/node_modules/uuid/index.js +0 -8
  246. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/bytesToUuid.js +0 -26
  247. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/md5-browser.js +0 -216
  248. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/md5.js +0 -25
  249. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/rng-browser.js +0 -34
  250. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/rng.js +0 -8
  251. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/sha1-browser.js +0 -89
  252. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/sha1.js +0 -25
  253. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/v35.js +0 -57
  254. package/node_modules/@corellium/corellium-api/node_modules/uuid/package.json +0 -103
  255. package/node_modules/@corellium/corellium-api/node_modules/uuid/v1.js +0 -109
  256. package/node_modules/@corellium/corellium-api/node_modules/uuid/v3.js +0 -4
  257. package/node_modules/@corellium/corellium-api/node_modules/uuid/v4.js +0 -29
  258. package/node_modules/@corellium/corellium-api/node_modules/uuid/v5.js +0 -3
  259. package/node_modules/@corellium/corellium-api/package.json +0 -106
  260. package/node_modules/@corellium/corellium-api/resumable.js +0 -1312
  261. package/node_modules/@corellium/corellium-api/src/agent.js +0 -962
  262. package/node_modules/@corellium/corellium-api/src/corellium.js +0 -444
  263. package/node_modules/@corellium/corellium-api/src/images.js +0 -131
  264. package/node_modules/@corellium/corellium-api/src/input.js +0 -178
  265. package/node_modules/@corellium/corellium-api/src/instance-updater.js +0 -56
  266. package/node_modules/@corellium/corellium-api/src/instance.js +0 -1031
  267. package/node_modules/@corellium/corellium-api/src/netmon.js +0 -308
  268. package/node_modules/@corellium/corellium-api/src/project.js +0 -393
  269. package/node_modules/@corellium/corellium-api/src/role.js +0 -65
  270. package/node_modules/@corellium/corellium-api/src/snapshot.js +0 -77
  271. package/node_modules/@corellium/corellium-api/src/team.js +0 -29
  272. package/node_modules/@corellium/corellium-api/src/user.js +0 -51
  273. package/node_modules/@corellium/corellium-api/src/util/fetch.js +0 -62
  274. package/node_modules/@corellium/corellium-api/src/util/sleep.js +0 -7
  275. package/node_modules/@corellium/corellium-api/test/integration-tests.js +0 -1292
  276. package/node_modules/@corellium/corellium-api/test/root-hook-set-flag-if-test-failed.js +0 -7
  277. package/node_modules/async-limiter/.eslintignore +0 -2
  278. package/node_modules/async-limiter/.nycrc +0 -10
  279. package/node_modules/async-limiter/.travis.yml +0 -9
  280. package/node_modules/async-limiter/LICENSE +0 -8
  281. package/node_modules/async-limiter/index.js +0 -67
  282. package/node_modules/async-limiter/package.json +0 -72
  283. package/node_modules/async-limiter/readme.md +0 -132
  284. package/node_modules/buffer-crc32/LICENSE +0 -19
  285. package/node_modules/buffer-crc32/README.md +0 -47
  286. package/node_modules/buffer-crc32/index.js +0 -111
  287. package/node_modules/buffer-crc32/package.json +0 -72
  288. package/node_modules/cross-fetch/LICENSE +0 -21
  289. package/node_modules/cross-fetch/README.md +0 -169
  290. package/node_modules/cross-fetch/dist/browser-polyfill.js +0 -532
  291. package/node_modules/cross-fetch/dist/browser-ponyfill.js +0 -554
  292. package/node_modules/cross-fetch/dist/cross-fetch.js +0 -2
  293. package/node_modules/cross-fetch/dist/cross-fetch.js.map +0 -1
  294. package/node_modules/cross-fetch/dist/node-polyfill.js +0 -11
  295. package/node_modules/cross-fetch/dist/node-ponyfill.js +0 -22
  296. package/node_modules/cross-fetch/dist/react-native-polyfill.js +0 -12
  297. package/node_modules/cross-fetch/dist/react-native-ponyfill.js +0 -6
  298. package/node_modules/cross-fetch/index.d.ts +0 -14
  299. package/node_modules/cross-fetch/package.json +0 -160
  300. package/node_modules/cross-fetch/polyfill/package.json +0 -8
  301. package/node_modules/duplexify/.travis.yml +0 -6
  302. package/node_modules/duplexify/LICENSE +0 -21
  303. package/node_modules/duplexify/README.md +0 -97
  304. package/node_modules/duplexify/example.js +0 -21
  305. package/node_modules/duplexify/index.js +0 -234
  306. package/node_modules/duplexify/package.json +0 -69
  307. package/node_modules/duplexify/test.js +0 -295
  308. package/node_modules/end-of-stream/LICENSE +0 -21
  309. package/node_modules/end-of-stream/README.md +0 -54
  310. package/node_modules/end-of-stream/index.js +0 -94
  311. package/node_modules/end-of-stream/package.json +0 -69
  312. package/node_modules/fast-stable-stringify/.npmignore +0 -4
  313. package/node_modules/fast-stable-stringify/.travis.yml +0 -10
  314. package/node_modules/fast-stable-stringify/LICENSE +0 -21
  315. package/node_modules/fast-stable-stringify/README.md +0 -81
  316. package/node_modules/fast-stable-stringify/cli/files-to-comparison-results.js +0 -67
  317. package/node_modules/fast-stable-stringify/cli/format-table.js +0 -70
  318. package/node_modules/fast-stable-stringify/cli/index.js +0 -19
  319. package/node_modules/fast-stable-stringify/fixtures/index.js +0 -5
  320. package/node_modules/fast-stable-stringify/fixtures/input-data-types.js +0 -191
  321. package/node_modules/fast-stable-stringify/fixtures/log-result.json +0 -22
  322. package/node_modules/fast-stable-stringify/fixtures/log.txt +0 -24
  323. package/node_modules/fast-stable-stringify/index.js +0 -73
  324. package/node_modules/fast-stable-stringify/karma.conf.js +0 -124
  325. package/node_modules/fast-stable-stringify/karma.conf.travis.js +0 -95
  326. package/node_modules/fast-stable-stringify/package.json +0 -77
  327. package/node_modules/fast-stable-stringify/results/escape-long/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -57
  328. package/node_modules/fast-stable-stringify/results/escape-long/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -57
  329. package/node_modules/fast-stable-stringify/results/escape-long/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -57
  330. package/node_modules/fast-stable-stringify/results/escape-long/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -57
  331. package/node_modules/fast-stable-stringify/results/escape-long/IE 10.0.0 (Windows 7 0.0.0).json +0 -57
  332. package/node_modules/fast-stable-stringify/results/escape-long/IE 11.0.0 (Windows 7 0.0.0).json +0 -57
  333. package/node_modules/fast-stable-stringify/results/escape-long/IE 9.0.0 (Windows 7 0.0.0).json +0 -57
  334. package/node_modules/fast-stable-stringify/results/escape-long/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -57
  335. package/node_modules/fast-stable-stringify/results/escape-long/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -57
  336. package/node_modules/fast-stable-stringify/results/escape-short/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -57
  337. package/node_modules/fast-stable-stringify/results/escape-short/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -57
  338. package/node_modules/fast-stable-stringify/results/escape-short/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -57
  339. package/node_modules/fast-stable-stringify/results/escape-short/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -57
  340. package/node_modules/fast-stable-stringify/results/escape-short/IE 10.0.0 (Windows 7 0.0.0).json +0 -57
  341. package/node_modules/fast-stable-stringify/results/escape-short/IE 11.0.0 (Windows 7 0.0.0).json +0 -57
  342. package/node_modules/fast-stable-stringify/results/escape-short/IE 9.0.0 (Windows 7 0.0.0).json +0 -57
  343. package/node_modules/fast-stable-stringify/results/escape-short/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -57
  344. package/node_modules/fast-stable-stringify/results/escape-short/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -57
  345. package/node_modules/fast-stable-stringify/results/escape.md +0 -20
  346. package/node_modules/fast-stable-stringify/results/itar-long/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
  347. package/node_modules/fast-stable-stringify/results/itar-long/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
  348. package/node_modules/fast-stable-stringify/results/itar-long/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
  349. package/node_modules/fast-stable-stringify/results/itar-long/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
  350. package/node_modules/fast-stable-stringify/results/itar-long/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
  351. package/node_modules/fast-stable-stringify/results/itar-long/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
  352. package/node_modules/fast-stable-stringify/results/itar-long/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
  353. package/node_modules/fast-stable-stringify/results/itar-long/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
  354. package/node_modules/fast-stable-stringify/results/itar-long/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
  355. package/node_modules/fast-stable-stringify/results/itar-short/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
  356. package/node_modules/fast-stable-stringify/results/itar-short/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
  357. package/node_modules/fast-stable-stringify/results/itar-short/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
  358. package/node_modules/fast-stable-stringify/results/itar-short/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
  359. package/node_modules/fast-stable-stringify/results/itar-short/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
  360. package/node_modules/fast-stable-stringify/results/itar-short/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
  361. package/node_modules/fast-stable-stringify/results/itar-short/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
  362. package/node_modules/fast-stable-stringify/results/itar-short/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
  363. package/node_modules/fast-stable-stringify/results/itar-short/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
  364. package/node_modules/fast-stable-stringify/results/itar.md +0 -20
  365. package/node_modules/fast-stable-stringify/results/iter/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
  366. package/node_modules/fast-stable-stringify/results/iter/Chrome Mobile 39.0.0 (Android 5.1.1).json +0 -35
  367. package/node_modules/fast-stable-stringify/results/iter/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
  368. package/node_modules/fast-stable-stringify/results/iter/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
  369. package/node_modules/fast-stable-stringify/results/iter/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
  370. package/node_modules/fast-stable-stringify/results/iter/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
  371. package/node_modules/fast-stable-stringify/results/iter/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
  372. package/node_modules/fast-stable-stringify/results/iter/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
  373. package/node_modules/fast-stable-stringify/results/iter/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
  374. package/node_modules/fast-stable-stringify/results/iter/Mobile Safari 9.0.0 (iOS 9.2.0).json +0 -35
  375. package/node_modules/fast-stable-stringify/results/iter/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
  376. package/node_modules/fast-stable-stringify/results/iter/Safari 9.1.2 (Mac OS X 10.11.6).json +0 -35
  377. package/node_modules/fast-stable-stringify/results/iter.md +0 -14
  378. package/node_modules/fast-stable-stringify/results/libs/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -46
  379. package/node_modules/fast-stable-stringify/results/libs/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -46
  380. package/node_modules/fast-stable-stringify/results/libs/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -46
  381. package/node_modules/fast-stable-stringify/results/libs/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -46
  382. package/node_modules/fast-stable-stringify/results/libs/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
  383. package/node_modules/fast-stable-stringify/results/libs/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
  384. package/node_modules/fast-stable-stringify/results/libs/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
  385. package/node_modules/fast-stable-stringify/results/libs/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -46
  386. package/node_modules/fast-stable-stringify/results/libs/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -46
  387. package/node_modules/fast-stable-stringify/results/libs.md +0 -15
  388. package/node_modules/fast-stable-stringify/test/escape-long.js +0 -147
  389. package/node_modules/fast-stable-stringify/test/escape-short.js +0 -147
  390. package/node_modules/fast-stable-stringify/test/index.js +0 -6
  391. package/node_modules/fast-stable-stringify/test/itar-long.js +0 -52
  392. package/node_modules/fast-stable-stringify/test/itar-short.js +0 -52
  393. package/node_modules/fast-stable-stringify/test/iter.js +0 -84
  394. package/node_modules/fast-stable-stringify/test/libs.js +0 -57
  395. package/node_modules/fast-stable-stringify/test/travis.js +0 -43
  396. package/node_modules/fast-stable-stringify/test/validate.js +0 -24
  397. package/node_modules/fast-stable-stringify/util/eachRecursive.js +0 -9
  398. package/node_modules/fast-stable-stringify/util/get-git-hash-sync.js +0 -21
  399. package/node_modules/fast-stable-stringify/util/get-lib-info.js +0 -22
  400. package/node_modules/fast-stable-stringify/util/object-path.js +0 -47
  401. package/node_modules/fast-stable-stringify/v8-profile/bench.js +0 -8
  402. package/node_modules/fast-stable-stringify/v8-profile/run.sh +0 -2
  403. package/node_modules/fast-stable-stringify/zuul-local.sh +0 -2
  404. package/node_modules/hkdf/.npmignore +0 -2
  405. package/node_modules/hkdf/README.md +0 -23
  406. package/node_modules/hkdf/hkdf.py +0 -171
  407. package/node_modules/hkdf/hkdf.pyc +0 -0
  408. package/node_modules/hkdf/index.js +0 -1
  409. package/node_modules/hkdf/lib/hkdf.js +0 -55
  410. package/node_modules/hkdf/package.json +0 -55
  411. package/node_modules/hkdf/scripts/run_all_tests.sh +0 -19
  412. package/node_modules/hkdf/test/all-test.js +0 -79
  413. package/node_modules/hkdf/test.py +0 -11
  414. package/node_modules/immediate/LICENSE.txt +0 -20
  415. package/node_modules/immediate/README.md +0 -93
  416. package/node_modules/immediate/dist/immediate.js +0 -75
  417. package/node_modules/immediate/dist/immediate.min.js +0 -1
  418. package/node_modules/immediate/lib/browser.js +0 -69
  419. package/node_modules/immediate/lib/index.js +0 -73
  420. package/node_modules/immediate/package.json +0 -86
  421. package/node_modules/isarray/.npmignore +0 -1
  422. package/node_modules/isarray/.travis.yml +0 -4
  423. package/node_modules/isarray/Makefile +0 -6
  424. package/node_modules/isarray/README.md +0 -60
  425. package/node_modules/isarray/component.json +0 -19
  426. package/node_modules/isarray/index.js +0 -5
  427. package/node_modules/isarray/package.json +0 -77
  428. package/node_modules/isarray/test.js +0 -20
  429. package/node_modules/jszip/.codeclimate.yml +0 -16
  430. package/node_modules/jszip/.editorconfig +0 -8
  431. package/node_modules/jszip/.github/workflows/pr.yaml +0 -41
  432. package/node_modules/jszip/.jshintignore +0 -1
  433. package/node_modules/jszip/.jshintrc +0 -21
  434. package/node_modules/jszip/.travis.yml +0 -17
  435. package/node_modules/jszip/CHANGES.md +0 -192
  436. package/node_modules/jszip/LICENSE.markdown +0 -651
  437. package/node_modules/jszip/README.markdown +0 -33
  438. package/node_modules/jszip/dist/jszip.js +0 -11583
  439. package/node_modules/jszip/dist/jszip.min.js +0 -13
  440. package/node_modules/jszip/index.d.ts +0 -335
  441. package/node_modules/jszip/lib/base64.js +0 -106
  442. package/node_modules/jszip/lib/compressedObject.js +0 -74
  443. package/node_modules/jszip/lib/compressions.js +0 -14
  444. package/node_modules/jszip/lib/crc32.js +0 -77
  445. package/node_modules/jszip/lib/defaults.js +0 -11
  446. package/node_modules/jszip/lib/external.js +0 -19
  447. package/node_modules/jszip/lib/flate.js +0 -85
  448. package/node_modules/jszip/lib/generate/ZipFileWorker.js +0 -540
  449. package/node_modules/jszip/lib/generate/index.js +0 -57
  450. package/node_modules/jszip/lib/index.js +0 -55
  451. package/node_modules/jszip/lib/license_header.js +0 -11
  452. package/node_modules/jszip/lib/load.js +0 -88
  453. package/node_modules/jszip/lib/nodejs/NodejsStreamInputAdapter.js +0 -74
  454. package/node_modules/jszip/lib/nodejs/NodejsStreamOutputAdapter.js +0 -42
  455. package/node_modules/jszip/lib/nodejsUtils.js +0 -57
  456. package/node_modules/jszip/lib/object.js +0 -389
  457. package/node_modules/jszip/lib/readable-stream-browser.js +0 -9
  458. package/node_modules/jszip/lib/reader/ArrayReader.js +0 -57
  459. package/node_modules/jszip/lib/reader/DataReader.js +0 -116
  460. package/node_modules/jszip/lib/reader/NodeBufferReader.js +0 -19
  461. package/node_modules/jszip/lib/reader/StringReader.js +0 -38
  462. package/node_modules/jszip/lib/reader/Uint8ArrayReader.js +0 -22
  463. package/node_modules/jszip/lib/reader/readerFor.js +0 -28
  464. package/node_modules/jszip/lib/signature.js +0 -7
  465. package/node_modules/jszip/lib/stream/ConvertWorker.js +0 -26
  466. package/node_modules/jszip/lib/stream/Crc32Probe.js +0 -24
  467. package/node_modules/jszip/lib/stream/DataLengthProbe.js +0 -29
  468. package/node_modules/jszip/lib/stream/DataWorker.js +0 -116
  469. package/node_modules/jszip/lib/stream/GenericWorker.js +0 -263
  470. package/node_modules/jszip/lib/stream/StreamHelper.js +0 -212
  471. package/node_modules/jszip/lib/support.js +0 -38
  472. package/node_modules/jszip/lib/utf8.js +0 -275
  473. package/node_modules/jszip/lib/utils.js +0 -501
  474. package/node_modules/jszip/lib/zipEntries.js +0 -262
  475. package/node_modules/jszip/lib/zipEntry.js +0 -294
  476. package/node_modules/jszip/lib/zipObject.js +0 -133
  477. package/node_modules/jszip/package.json +0 -99
  478. package/node_modules/jszip/tsconfig.json +0 -101
  479. package/node_modules/jszip/vendor/FileSaver.js +0 -247
  480. package/node_modules/lie/README.md +0 -62
  481. package/node_modules/lie/dist/lie.js +0 -350
  482. package/node_modules/lie/dist/lie.min.js +0 -1
  483. package/node_modules/lie/dist/lie.polyfill.js +0 -358
  484. package/node_modules/lie/dist/lie.polyfill.min.js +0 -1
  485. package/node_modules/lie/lib/browser.js +0 -273
  486. package/node_modules/lie/lib/index.js +0 -298
  487. package/node_modules/lie/license.md +0 -7
  488. package/node_modules/lie/lie.d.ts +0 -244
  489. package/node_modules/lie/package.json +0 -98
  490. package/node_modules/lie/polyfill.js +0 -4
  491. package/node_modules/p-finally/index.js +0 -15
  492. package/node_modules/p-finally/license +0 -21
  493. package/node_modules/p-finally/package.json +0 -77
  494. package/node_modules/p-finally/readme.md +0 -47
  495. package/node_modules/p-retry/index.js +0 -52
  496. package/node_modules/p-retry/license +0 -9
  497. package/node_modules/p-retry/package.json +0 -83
  498. package/node_modules/p-retry/readme.md +0 -109
  499. package/node_modules/p-timeout/index.d.ts +0 -72
  500. package/node_modules/p-timeout/index.js +0 -57
  501. package/node_modules/p-timeout/license +0 -9
  502. package/node_modules/p-timeout/package.json +0 -80
  503. package/node_modules/p-timeout/readme.md +0 -87
  504. package/node_modules/pako/CHANGELOG.md +0 -164
  505. package/node_modules/pako/LICENSE +0 -21
  506. package/node_modules/pako/README.md +0 -191
  507. package/node_modules/pako/dist/pako.js +0 -6818
  508. package/node_modules/pako/dist/pako.min.js +0 -1
  509. package/node_modules/pako/dist/pako_deflate.js +0 -3997
  510. package/node_modules/pako/dist/pako_deflate.min.js +0 -1
  511. package/node_modules/pako/dist/pako_inflate.js +0 -3300
  512. package/node_modules/pako/dist/pako_inflate.min.js +0 -1
  513. package/node_modules/pako/index.js +0 -14
  514. package/node_modules/pako/lib/deflate.js +0 -400
  515. package/node_modules/pako/lib/inflate.js +0 -423
  516. package/node_modules/pako/lib/utils/common.js +0 -105
  517. package/node_modules/pako/lib/utils/strings.js +0 -187
  518. package/node_modules/pako/lib/zlib/README +0 -59
  519. package/node_modules/pako/lib/zlib/adler32.js +0 -51
  520. package/node_modules/pako/lib/zlib/constants.js +0 -68
  521. package/node_modules/pako/lib/zlib/crc32.js +0 -59
  522. package/node_modules/pako/lib/zlib/deflate.js +0 -1874
  523. package/node_modules/pako/lib/zlib/gzheader.js +0 -58
  524. package/node_modules/pako/lib/zlib/inffast.js +0 -345
  525. package/node_modules/pako/lib/zlib/inflate.js +0 -1556
  526. package/node_modules/pako/lib/zlib/inftrees.js +0 -343
  527. package/node_modules/pako/lib/zlib/messages.js +0 -32
  528. package/node_modules/pako/lib/zlib/trees.js +0 -1222
  529. package/node_modules/pako/lib/zlib/zstream.js +0 -47
  530. package/node_modules/pako/package.json +0 -94
  531. package/node_modules/process-nextick-args/index.js +0 -45
  532. package/node_modules/process-nextick-args/license.md +0 -19
  533. package/node_modules/process-nextick-args/package.json +0 -53
  534. package/node_modules/process-nextick-args/readme.md +0 -18
  535. package/node_modules/readable-stream/.travis.yml +0 -34
  536. package/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  537. package/node_modules/readable-stream/GOVERNANCE.md +0 -136
  538. package/node_modules/readable-stream/LICENSE +0 -47
  539. package/node_modules/readable-stream/README.md +0 -58
  540. package/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
  541. package/node_modules/readable-stream/duplex-browser.js +0 -1
  542. package/node_modules/readable-stream/duplex.js +0 -1
  543. package/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
  544. package/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
  545. package/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
  546. package/node_modules/readable-stream/lib/_stream_transform.js +0 -214
  547. package/node_modules/readable-stream/lib/_stream_writable.js +0 -687
  548. package/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -79
  549. package/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -74
  550. package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  551. package/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  552. package/node_modules/readable-stream/package.json +0 -86
  553. package/node_modules/readable-stream/passthrough.js +0 -1
  554. package/node_modules/readable-stream/readable-browser.js +0 -7
  555. package/node_modules/readable-stream/readable.js +0 -19
  556. package/node_modules/readable-stream/transform.js +0 -1
  557. package/node_modules/readable-stream/writable-browser.js +0 -1
  558. package/node_modules/readable-stream/writable.js +0 -8
  559. package/node_modules/retry/.npmignore +0 -3
  560. package/node_modules/retry/.travis.yml +0 -15
  561. package/node_modules/retry/License +0 -21
  562. package/node_modules/retry/Makefile +0 -18
  563. package/node_modules/retry/README.md +0 -227
  564. package/node_modules/retry/equation.gif +0 -0
  565. package/node_modules/retry/example/dns.js +0 -31
  566. package/node_modules/retry/example/stop.js +0 -40
  567. package/node_modules/retry/index.js +0 -1
  568. package/node_modules/retry/lib/retry.js +0 -100
  569. package/node_modules/retry/lib/retry_operation.js +0 -158
  570. package/node_modules/retry/package.json +0 -67
  571. package/node_modules/retry/test/common.js +0 -10
  572. package/node_modules/retry/test/integration/test-forever.js +0 -24
  573. package/node_modules/retry/test/integration/test-retry-operation.js +0 -258
  574. package/node_modules/retry/test/integration/test-retry-wrap.js +0 -101
  575. package/node_modules/retry/test/integration/test-timeouts.js +0 -69
  576. package/node_modules/setimmediate/LICENSE.txt +0 -20
  577. package/node_modules/setimmediate/package.json +0 -77
  578. package/node_modules/setimmediate/setImmediate.js +0 -186
  579. package/node_modules/split/.npmignore +0 -3
  580. package/node_modules/split/.travis.yml +0 -3
  581. package/node_modules/split/LICENCE +0 -22
  582. package/node_modules/split/examples/pretty.js +0 -26
  583. package/node_modules/split/index.js +0 -63
  584. package/node_modules/split/package.json +0 -65
  585. package/node_modules/split/readme.markdown +0 -72
  586. package/node_modules/split/test/options.asynct.js +0 -46
  587. package/node_modules/split/test/partitioned_unicode.js +0 -34
  588. package/node_modules/split/test/split.asynct.js +0 -137
  589. package/node_modules/split/test/try_catch.asynct.js +0 -51
  590. package/node_modules/stream-shift/.travis.yml +0 -6
  591. package/node_modules/stream-shift/LICENSE +0 -21
  592. package/node_modules/stream-shift/README.md +0 -25
  593. package/node_modules/stream-shift/index.js +0 -20
  594. package/node_modules/stream-shift/package.json +0 -56
  595. package/node_modules/stream-shift/test.js +0 -48
  596. package/node_modules/ultron/LICENSE +0 -22
  597. package/node_modules/ultron/README.md +0 -113
  598. package/node_modules/ultron/index.js +0 -136
  599. package/node_modules/ultron/package.json +0 -71
  600. package/node_modules/websocket-stream/LICENSE +0 -8
  601. package/node_modules/websocket-stream/collaborators.md +0 -11
  602. package/node_modules/websocket-stream/echo-server.js +0 -51
  603. package/node_modules/websocket-stream/index.d.ts +0 -27
  604. package/node_modules/websocket-stream/index.js +0 -6
  605. package/node_modules/websocket-stream/package.json +0 -82
  606. package/node_modules/websocket-stream/readme.md +0 -148
  607. package/node_modules/websocket-stream/server.js +0 -29
  608. package/node_modules/websocket-stream/stream.js +0 -189
  609. package/node_modules/websocket-stream/test-client.js +0 -74
  610. package/node_modules/websocket-stream/test-server.js +0 -56
  611. package/node_modules/websocket-stream/test.js +0 -338
  612. package/node_modules/websocket-stream/ts-tests.ts +0 -69
  613. package/node_modules/websocket-stream/ws-fallback.js +0 -12
  614. package/node_modules/ws/LICENSE +0 -21
  615. package/node_modules/ws/README.md +0 -341
  616. package/node_modules/ws/index.js +0 -15
  617. package/node_modules/ws/lib/.DS_Store +0 -0
  618. package/node_modules/ws/lib/BufferUtil.js +0 -71
  619. package/node_modules/ws/lib/Constants.js +0 -10
  620. package/node_modules/ws/lib/ErrorCodes.js +0 -28
  621. package/node_modules/ws/lib/EventTarget.js +0 -151
  622. package/node_modules/ws/lib/Extensions.js +0 -203
  623. package/node_modules/ws/lib/PerMessageDeflate.js +0 -507
  624. package/node_modules/ws/lib/Receiver.js +0 -553
  625. package/node_modules/ws/lib/Sender.js +0 -412
  626. package/node_modules/ws/lib/Validation.js +0 -17
  627. package/node_modules/ws/lib/WebSocket.js +0 -717
  628. package/node_modules/ws/lib/WebSocketServer.js +0 -326
  629. package/node_modules/ws/package.json +0 -83
  630. package/node_modules/xhr2/CONTRIBUTING.md +0 -33
  631. package/node_modules/xhr2/Cakefile +0 -131
  632. package/node_modules/xhr2/LICENSE.txt +0 -19
  633. package/node_modules/xhr2/README.md +0 -142
  634. package/node_modules/xhr2/lib/browser.js +0 -1
  635. package/node_modules/xhr2/lib/xhr2.js +0 -1244
  636. package/node_modules/xhr2/package.json +0 -103
  637. package/node_modules/xhr2/src/000-xml_http_request_event_target.coffee +0 -89
  638. package/node_modules/xhr2/src/001-xml_http_request.coffee +0 -781
  639. package/node_modules/xhr2/src/errors.coffee +0 -31
  640. package/node_modules/xhr2/src/progress_event.coffee +0 -39
  641. package/node_modules/xhr2/src/xml_http_request_upload.coffee +0 -95
  642. package/node_modules/xhr2/test/fixtures/hello.json +0 -1
  643. package/node_modules/xhr2/test/fixtures/hello.txt +0 -1
  644. package/node_modules/xhr2/test/fixtures/xhr2.png +0 -0
  645. package/node_modules/xhr2/test/html/browser_test.html +0 -30
  646. package/node_modules/xhr2/test/src/event_target_test.coffee +0 -85
  647. package/node_modules/xhr2/test/src/events_test.coffee +0 -204
  648. package/node_modules/xhr2/test/src/headers_test.coffee +0 -168
  649. package/node_modules/xhr2/test/src/helpers/browser_mocha_runner.coffee +0 -10
  650. package/node_modules/xhr2/test/src/helpers/browser_mocha_setup.coffee +0 -1
  651. package/node_modules/xhr2/test/src/helpers/setup.coffee +0 -38
  652. package/node_modules/xhr2/test/src/helpers/xhr_server.coffee +0 -156
  653. package/node_modules/xhr2/test/src/nodejs_set_test.coffee +0 -162
  654. package/node_modules/xhr2/test/src/redirect_test.coffee +0 -57
  655. package/node_modules/xhr2/test/src/response_type_test.coffee +0 -88
  656. package/node_modules/xhr2/test/src/responseurl_test.coffee +0 -18
  657. package/node_modules/xhr2/test/src/send_test.coffee +0 -89
  658. package/node_modules/xhr2/test/src/status_test.coffee +0 -47
  659. package/node_modules/xhr2/test/src/xhr_test.coffee +0 -102
  660. package/node_modules/xtend/.jshintrc +0 -30
  661. package/node_modules/xtend/LICENSE +0 -20
  662. package/node_modules/xtend/README.md +0 -32
  663. package/node_modules/xtend/immutable.js +0 -19
  664. package/node_modules/xtend/mutable.js +0 -17
  665. package/node_modules/xtend/package.json +0 -89
  666. package/node_modules/xtend/test.js +0 -103
  667. package/node_modules/yazl/LICENSE +0 -21
  668. package/node_modules/yazl/README.md +0 -389
  669. package/node_modules/yazl/index.js +0 -749
  670. package/node_modules/yazl/package.json +0 -69
  671. package/src/commands/CorelliumAPI.js +0 -76
  672. package/src/subscriberInvite.js +0 -140
@@ -1,1031 +0,0 @@
1
- "use strict";
2
-
3
- const { fetchApi } = require("./util/fetch");
4
- const EventEmitter = require("events");
5
- const wsstream = require("websocket-stream");
6
- const Snapshot = require("./snapshot");
7
- const Agent = require("./agent");
8
- const pTimeout = require("p-timeout");
9
- const NetworkMonitor = require("./netmon");
10
- const { sleep } = require("./util/sleep");
11
- const util = require("util");
12
- const fs = require("fs");
13
- const { compress, uploadFile } = require("./images");
14
- const uuidv4 = require("uuid/v4");
15
- const split = require("split");
16
-
17
- /**
18
- * @typedef {object} ThreadInfo
19
- * @property {string} pid - process PID
20
- * @property {string} kernelId - process ID in kernel
21
- * @property {string} name - process name
22
- * @property {object[]} threads - process threads
23
- * @property {string} threads[].tid - thread ID
24
- * @property {string} threads[].kernelId - thread ID in kernel
25
- */
26
-
27
- /**
28
- * @typedef {object} PanicInfo
29
- * @property {integer} flags
30
- * @property {string} panic
31
- * @property {string} stackshot
32
- * @property {string} other
33
- * @property {integer} ts
34
- */
35
-
36
- /**
37
- * @typedef {object} PeripheralData
38
- * @property {string} gpsToffs - GPS time offset
39
- * @property {string} gpsLat - GPS latitude
40
- * @property {string} gpsLon - GPS longitude
41
- * @property {string} gpsAlt - GPS altitude
42
- * @property {string} acOnline - Is AC charger present, options ['0' , '1']
43
- * @property {string} batteryPresent - Is battery present, options ['0' , '1']
44
- * @property {string} batteryStatus - Battery charging status, options ['charging', 'discharging', 'not-charging']
45
- * @property {string} batteryHealth - Battery health, options ['good', 'overheat', 'dead', 'overvolt', 'failure']
46
- * @property {string} batteryCapacity - Battery capacity, options 0-100
47
- * @property {string} acceleration - Acceleration sensor
48
- * @property {string} gyroscope - Gyroscope sensor
49
- * @property {string} magnetic - Magnetic sensor
50
- * @property {string} orientation - Orientation sensor
51
- * @property {string} temperature - Temperator sensor
52
- * @property {string} proximity - Proximity sensor
53
- * @property {string} light - Light sensor
54
- * @property {string} pressure - Pressure sensor
55
- * @property {string} humidity - Humidity sensor
56
- */
57
-
58
- /**
59
- * @typedef {object} RateInfo
60
- * Convert microcents to USD using rate / 1000000 / 100 * seconds where rate is rateInfo.onRateMicrocents or rateInfo.offRateMicrocents and seconds is the number of seconds the instance is running.
61
- * @property {integer} onRateMicrocents - The amount per second, in microcents (USD), that this instance charges to be running.
62
- * @property {integer} offRateMicrocents - The amount per second, in microcents (USD), that this instance charges to be stored.
63
- */
64
-
65
- /**
66
- * Instances of this class are returned from {@link Project#instances}, {@link
67
- * Project#getInstance}, and {@link Project#createInstance}. They should not be
68
- * created using the constructor.
69
- * @hideconstructor
70
- */
71
- class Instance extends EventEmitter {
72
- constructor(project, info) {
73
- super();
74
-
75
- this.project = project;
76
- this.info = info;
77
- this.infoDate = new Date();
78
- this.id = info.id;
79
- this.updating = false;
80
-
81
- this.hash = null;
82
- this.hypervisorStream = null;
83
- this._agent = null;
84
- this._netmon = null;
85
- this.lastPanicLength = null;
86
- this.volumeId = null;
87
-
88
- this.on("newListener", (event) => {
89
- if (event === "change") {
90
- this.project.updater.add(this);
91
- }
92
- });
93
- this.on("removeListener", (event) => {
94
- if (event === "change" && this.listenerCount("change") == 0) {
95
- this.project.updater.remove(this);
96
- }
97
- });
98
- }
99
-
100
- /**
101
- * The instance name.
102
- */
103
- get name() {
104
- return this.info.name;
105
- }
106
-
107
- /**
108
- * The instance state. Possible values include:
109
- *
110
- * State|Description
111
- * -|-
112
- * `on`|The instance is powered on.
113
- * `off`|The instance is powered off.
114
- * `creating`|The instance is in the process of creating.
115
- * `deleting`|The instance is in the process of deleting.
116
- * `deleted`|The instance is deleted, instance will set to undefined.
117
- * `paused`|The instance is paused.
118
- *
119
- * A full list of possible values is available in the API documentation.
120
- */
121
- get state() {
122
- return this.info.state;
123
- }
124
-
125
- /**
126
- * The timestamp when the state last changed.
127
- */
128
- get stateChanged() {
129
- return this.info.stateChanged;
130
- }
131
-
132
- /**
133
- * The instance flavor, such as `iphone6`.
134
- */
135
- get flavor() {
136
- return this.info.flavor;
137
- }
138
-
139
- /**
140
- * The instance type, such as `ios`.
141
- */
142
- get type() {
143
- return this.info.type;
144
- }
145
-
146
- /**
147
- * The pending task that is being requested by the user and is being executed by the backend.
148
- * This field is null when no tasks are pending. The returned object has two fields: name and options.
149
- *
150
- * Current options for name are start, stop, pause, unpause, snapshot, revert.
151
- * For start and revert, options.bootOptions contains the boot options the instance is to be started with.
152
- *
153
- */
154
- get userTask() {
155
- return this.info.userTask;
156
- }
157
-
158
- /**
159
- * Return the current task state.
160
- */
161
- get taskState() {
162
- return this.info.taskState;
163
- }
164
-
165
- /**
166
- * Rename an instance.
167
- * @param {string} name - The new name of the instance.
168
- * @example <caption>Renaming the first instance named `foo` to `bar`</caption>
169
- * const instances = await project.instances();
170
- * const instance = instances.find(instance => instance.name == 'foo');
171
- * await instance.rename('bar');
172
- */
173
- async rename(name) {
174
- await this._fetch("", {
175
- method: "PATCH",
176
- json: { name },
177
- });
178
- }
179
-
180
- /**
181
- * The instance boot options.
182
- */
183
- get bootOptions() {
184
- return this.info.bootOptions;
185
- }
186
-
187
- /**
188
- * Change boot options for an instance.
189
- * @param {Object} bootOptions - The new boot options for the instance.
190
- * @example <caption>Changing the boot arguments for the instance.</caption>
191
- * const instances = await project.instances();
192
- * const instance = instances.find(instance => instance.name == 'foo');
193
- * await instance.modifyBootOptions(Object.assign({}, instance.bootOptions, {bootArgs: 'new-boot-args'}));
194
- */
195
- async modifyBootOptions(bootOptions) {
196
- await this._fetch("", {
197
- method: "PATCH",
198
- json: { bootOptions },
199
- });
200
- }
201
-
202
- /**
203
- * Change device peripheral/sensor values.
204
- *
205
- * Currently available for Android only.
206
- * @param {PeripheralData} peripheralData - The new peripheral options for the instance.
207
- * @example <caption>Changing the sensor values for the instance.</caption>
208
- * const instances = await project.instances();
209
- * const instance = instances.find(instance => instance.name == 'foo');
210
- * await instance.modifyPeripherals({
211
- * "gpsToffs": "0.000000",
212
- * "gpsLat": "37.414300",
213
- * "gpsLon": "-122.077400",
214
- * "gpsAlt": "45.000000",
215
- * "acOnline": "1",
216
- * "batteryPresent": "1",
217
- * "batteryStatus": "discharging",
218
- * "batteryHealth": "overheat",
219
- * "batteryCapacity": "99.000000",
220
- * "acceleration": "0.000000,9.810000,0.000000",
221
- * "gyroscope": "0.000000,0.000000,0.000000",
222
- * "magnetic": "0.000000,45.000000,0.000000",
223
- * "orientation": "0.000000,0.000000,0.000000",
224
- * "temperature": "25.000000",
225
- * "proximity": "50.000000",
226
- * "light": "20.000000",
227
- * "pressure": "1013.250000",
228
- * "humidity": "55.000000"
229
- * }));
230
- */
231
- async modifyPeripherals(peripheralData) {
232
- await this._fetch("", {
233
- method: "PATCH",
234
- json: { peripherals: peripheralData },
235
- });
236
- }
237
-
238
- /**
239
- * Get peripheral/sensor data
240
- * @return {Promise<PeripheralData>}
241
- * @example
242
- * let peripherals = await instance.getPeripherals();
243
- */
244
- async getPeripherals() {
245
- return await this._fetch("/peripherals", { method: "GET" });
246
- }
247
-
248
- /**
249
- * Return an array of this instance's {@link Snapshot}s.
250
- * @returns {Snapshot[]} This instance's snapshots
251
- * @example
252
- * const instances = await project.instances();
253
- * const instance = instances.find(instance => instance.name == 'foo');
254
- * await instance.snapshots();
255
- */
256
- async snapshots() {
257
- const snapshots = await this._fetch("/snapshots");
258
- return snapshots.map((snap) => new Snapshot(this, snap));
259
- }
260
-
261
- /**
262
- * Take a new snapshot of this instance.
263
- * @param {string} name - The name for the new snapshot.
264
- * @returns {Snapshot} The new snapshot
265
- * @example
266
- * const instances = await project.instances();
267
- * const instance = instances.find(instance => instance.name == 'foo');
268
- * await instance.takeSnapshot("TestSnapshot");
269
- */
270
- async takeSnapshot(name) {
271
- const snapshot = await this._fetch("/snapshots", {
272
- method: "POST",
273
- json: { name },
274
- });
275
- await this.update();
276
- await this.waitForUserTask(null);
277
-
278
- return new Snapshot(this, snapshot);
279
- }
280
-
281
- /**
282
- * Returns a dump of this instance's serial port log.
283
- * @return {string}
284
- * @example
285
- * const instances = await project.instances();
286
- * const instance = instances.find(instance => instance.name == 'foo');
287
- * console.log(await instance.consoleLog());
288
- */
289
- async consoleLog() {
290
- const response = await this._fetch("/consoleLog", { response: "raw" });
291
- return await response.text();
292
- }
293
-
294
- /**
295
- * Return an array of recorded kernel panics.
296
- * @return {Promise<PanicInfo[]>}
297
- * @example
298
- * const instances = await project.instances();
299
- * const instance = instances.find(instance => instance.name == 'foo');
300
- * console.log(await instance.panics());
301
- */
302
- async panics() {
303
- return await this._fetch("/panics");
304
- }
305
-
306
- /**
307
- * Clear the recorded kernel panics of this instance.
308
- * @example
309
- * const instances = await project.instances();
310
- * const instance = instances.find(instance => instance.name == 'foo');
311
- * await instance.clearPanics();
312
- */
313
- async clearPanics() {
314
- await this._fetch("/panics", { method: "DELETE" });
315
- }
316
-
317
- /**
318
- * Return an {@link Agent} connected to this instance. Calling this
319
- * method multiple times will reuse the same agent connection.
320
- * @returns {Agent}
321
- * @example
322
- * let agent = await instance.agent();
323
- * await agent.ready();
324
- */
325
- async agent() {
326
- if (this._agent && !this._agent.connected && !this._agent.pendingConnect) {
327
- this._agent.disconnect();
328
- delete this._agent;
329
- }
330
-
331
- if (!this._agent) {
332
- this._agent = await this.newAgent();
333
- }
334
-
335
- return this._agent;
336
- }
337
-
338
- async agentEndpoint() {
339
- // Extra while loop to avoid races where info.agent gets unset again before we wake back up.
340
- while (!this.info.agent) await this._waitFor(() => !!this.info.agent);
341
-
342
- // We want to avoid a situation where we were not listening for updates, and the info we have is stale (from last boot),
343
- // and the instance has started again but this time with no agent info yet or new agent info. Therefore, we can use
344
- // cached if only if it's recent.
345
- if (
346
- new Date().getTime() - this.infoDate.getTime() >
347
- 2 * this.project.updater.updateInterval
348
- ) {
349
- try {
350
- await this.update();
351
- } catch (err) {
352
- if (err.stack.includes("500 Internal Server Error")) {
353
- return undefined;
354
- }
355
- }
356
- }
357
-
358
- return this.project.api + "/agent/" + this.info.agent.info;
359
- }
360
-
361
- async waitForAgentReady() {
362
- let agentObtained;
363
- do {
364
- try {
365
- const endpoint = await this.agentEndpoint();
366
- if (!endpoint) throw new Error("Instance likely does not exist");
367
-
368
- const agent = await this.agent();
369
-
370
- agentObtained = await pTimeout(
371
- (async () => {
372
- try {
373
- await agent.ready();
374
- return true;
375
- } catch (e) {
376
- // If the websocket threw an error, lets wait for the end of
377
- // the timeout to give it some breathing room
378
- await sleep(2 * 1000);
379
- } finally {
380
- agent.disconnect();
381
- }
382
- })(),
383
- 20 * 1000,
384
- async () => {
385
- // When this times out, it is likely that the instance isn't fully up yet
386
- await sleep(5 * 1000);
387
- return false;
388
- },
389
- );
390
- } catch (e) {
391
- console.log(`Caught error waiting for agent to be ready ${e}`);
392
- if (e.stack.includes("Instance likely does not exist")) {
393
- throw e;
394
- }
395
- }
396
- } while (!agentObtained);
397
- }
398
-
399
- /**
400
- * Create a new {@link Agent} connection to this instance. This is
401
- * useful for agent tasks that don't finish and thus consume the
402
- * connection, such as {@link Agent#crashes}.
403
- * @returns {Agent}
404
- * @example
405
- * let crashListener = await instance.newAgent();
406
- * crashListener.crashes('com.corellium.demoapp', (err, crashReport) => {
407
- * if (err) {
408
- * console.error(err);
409
- * return;
410
- * }
411
- * console.log(crashReport);
412
- * });
413
- */
414
- async newAgent() {
415
- return new Agent(this);
416
- }
417
-
418
- /**
419
- * Return an {@link NetworkMonitor} connected to this instance. Calling this
420
- * method multiple times will reuse the same agent connection.
421
- * @returns {NetworkMonitor}
422
- */
423
- async networkMonitor() {
424
- if (!this._netmon) this._netmon = await this.newNetworkMonitor();
425
- return this._netmon;
426
- }
427
-
428
- async netmonEndpoint() {
429
- // Extra while loop to avoid races where info.netmon gets unset again before we wake back up.
430
- while (!this.info.netmon) await this._waitFor(() => !!this.info.netmon);
431
-
432
- // We want to avoid a situation where we were not listening for updates, and the info we have is stale (from last boot),
433
- // and the instance has started again but this time with no agent info yet or new agent info. Therefore, we can use
434
- // cached if only if it's recent.
435
- if (
436
- new Date().getTime() - this.infoDate.getTime() >
437
- 2 * this.project.updater.updateInterval
438
- ) {
439
- try {
440
- await this.update();
441
- } catch (err) {
442
- if (err.stack.includes("500 Internal Server Error")) {
443
- return undefined;
444
- }
445
- }
446
- }
447
-
448
- return this.project.api + "/agent/" + this.info.netmon.info;
449
- }
450
-
451
- /**
452
- * Create a new {@link NetworkMonitor} connection to this instance.
453
- * @returns {NetworkMonitor}
454
- */
455
- async newNetworkMonitor() {
456
- return new NetworkMonitor(this);
457
- }
458
-
459
- /**
460
- * Returns a bidirectional node stream for this instance's serial console.
461
- * @return {WebSocket-Stream}
462
- * @example
463
- * const consoleStream = await instance.console();
464
- * consoleStream.pipe(process.stdout);
465
- */
466
- async console() {
467
- const { url } = await this._fetch("/console");
468
- return wsstream(url, ["binary"]);
469
- }
470
-
471
- /**
472
- * Waits for a specified line on console.
473
- * @example
474
- * await instance.waitForLineOnConsole(line)
475
- */
476
- async waitForLineOnConsole(line) {
477
- const stream = await this.console();
478
- await stream
479
- .pipe(split())
480
- .on("data", (l) => {
481
- if (l === line) {
482
- stream.destroy();
483
- return;
484
- }
485
- })
486
- .on("end", () => {
487
- return;
488
- });
489
- }
490
-
491
- /**
492
- * Returns the cost, in microcents, for the instance in the on and off state. Instances are charged $0.25 / day for storage (off) and $0.25 per core per hour (on).
493
- * @returns {RateInfo}
494
- * @example
495
- * const rateInfo = await instance.rate();
496
- */
497
- async rate() {
498
- return await this._fetch("/rate");
499
- }
500
-
501
- /**
502
- * Send an input to this instance.
503
- * @param {Input} input - The input to send.
504
- * @see Input
505
- * @example
506
- * await instance.sendInput(I.pressRelease('home'));
507
- */
508
- async sendInput(input) {
509
- await this._fetch("/input", { method: "POST", json: input.points });
510
- }
511
-
512
- /**
513
- * Start this instance.
514
- * @example
515
- * await instance.start();
516
- */
517
- async start() {
518
- await this._fetch("/start", { method: "POST" });
519
- }
520
-
521
- /**
522
- * Stop this instance.
523
- * @example
524
- * await instance.stop();
525
- */
526
- async stop() {
527
- await this._fetch("/stop", { method: "POST" });
528
- }
529
-
530
- /**
531
- * Pause this instance
532
- * @example
533
- * await instance.pause();
534
- */
535
- async pause() {
536
- await this._fetch("/pause", { method: "POST" });
537
- }
538
-
539
- /**
540
- * Unpause this instance
541
- * @example
542
- * await instance.unpause();
543
- */
544
- async unpause() {
545
- await this._fetch("/unpause", { method: "POST" });
546
- }
547
-
548
- /**
549
- * Reboot this instance.
550
- * @example
551
- * await instance.reboot();
552
- */
553
- async reboot() {
554
- await this._fetch("/reboot", { method: "POST" });
555
- await this.waitForTaskState("rebooting");
556
- await this.waitForTaskState("none");
557
- }
558
-
559
- /**
560
- * Destroy this instance.
561
- * @example <caption>delete all instances of the project</caption>
562
- * let instances = await project.instances();
563
- * instances.forEach(instance => {
564
- * instance.destroy();
565
- * });
566
- */
567
- async destroy() {
568
- await this._fetch("", { method: "DELETE" });
569
- }
570
-
571
- /**
572
- * Send a message to an jailbroken iOS device
573
- * @example
574
- * await instance.message('123','321');
575
- *
576
- * @param {string} number - phone number to receive the message from
577
- * @param {string} message - message to receive
578
- */
579
- async message(sender, message) {
580
- await this._fetch("/message", {
581
- method: "POST",
582
- json: { number: sender, message: message },
583
- });
584
- }
585
-
586
- /**
587
- * Send a raw message to an jailbroken iOS device
588
- * @example
589
- * await instance.messageRaw('AAAAAAAAAAAAAAAAA');
590
- *
591
- * @param {string} data - hex encoded data to send
592
- */
593
- async messageRaw(data) {
594
- await this._fetch("/message", { method: "POST", json: { raw: data } });
595
- }
596
-
597
- /**
598
- * Get CoreTrace Thread List
599
- * @return {Promise<ThreadInfo[]>}
600
- * @example
601
- * let procList = await instance.getCoreTraceThreadList();
602
- * for (let p of procList) {
603
- * console.log(p.pid, p.kernelId, p.name);
604
- * for (let t of p.threads) {
605
- * console.log(t.tid, t.kernelId);
606
- * }
607
- * }
608
- */
609
- async getCoreTraceThreadList() {
610
- return await this._fetch("/strace/thread-list", { method: "GET" });
611
- }
612
-
613
- /**
614
- * Add List of PIDs/Names/TIDs to CoreTrace filter
615
- * @param {integer[]} pids - array of process IDs to filter
616
- * @param {string[]} names - array of process names to filter
617
- * @param {integer[]} tids - array of thread IDs to filter
618
- * @example
619
- * await instance.setCoreTraceFilter([111, 222], ["proc_name"], [333]);
620
- */
621
- async setCoreTraceFilter(pids, names, tids) {
622
- let filter = [];
623
- if (pids.length)
624
- filter = filter.concat(
625
- pids.map((pid) => {
626
- return { trait: "pid", value: pid.toString() };
627
- }),
628
- );
629
- if (names.length)
630
- filter = filter.concat(
631
- names.map((name) => {
632
- return { trait: "name", value: name };
633
- }),
634
- );
635
- if (tids.length)
636
- filter = filter.concat(
637
- tids.map((tid) => {
638
- return { trait: "tid", value: tid.toString() };
639
- }),
640
- );
641
- await this._fetch("", { method: "PATCH", json: { straceFilter: filter } });
642
- }
643
-
644
- /**
645
- * Clear CoreTrace filter
646
- * @example
647
- * await instance.clearCoreTraceFilter();
648
- */
649
- async clearCoreTraceFilter() {
650
- await this._fetch("", { method: "PATCH", json: { straceFilter: [] } });
651
- }
652
-
653
- /**
654
- * Start CoreTrace
655
- * @example
656
- * await instance.startCoreTrace();
657
- */
658
- async startCoreTrace() {
659
- await this._fetch("/strace/enable", { method: "POST" });
660
- if (this.info.coreTrace) {
661
- await this._waitFor(() => this.info.coreTrace.enabled === true);
662
- }
663
- }
664
-
665
- /**
666
- * Stop CoreTrace
667
- * @example
668
- * await instance.stopCoreTrace();
669
- */
670
- async stopCoreTrace() {
671
- await this._fetch("/strace/disable", { method: "POST" });
672
- if (this.info.coreTrace) {
673
- await this._waitFor(() => this.info.coreTrace.enabled === false);
674
- }
675
- }
676
-
677
- /**
678
- * Download CoreTrace Log
679
- * @example
680
- * let trace = await instance.downloadCoreTraceLog();
681
- * console.log(trace.toString());
682
- */
683
- async downloadCoreTraceLog() {
684
- const token = await this._fetch("/strace-authorize", { method: "GET" });
685
- const response = await fetchApi(
686
- this.project,
687
- `/preauthed/` + token.token + `/coretrace.log`,
688
- { response: "raw" },
689
- );
690
- return await response.buffer();
691
- }
692
-
693
- /**
694
- * Clean CoreTrace log
695
- * @example
696
- * await instance.clearCoreTraceLog();
697
- */
698
- async clearCoreTraceLog() {
699
- await this._fetch("/strace", { method: "DELETE" });
700
- }
701
-
702
- /**
703
- * Returns a bidirectional node stream for this instance's frida console.
704
- * @return {WebSocket-Stream}
705
- * @example
706
- * const consoleStream = await instance.fridaConsole();
707
- * consoleStream.pipe(process.stdout);
708
- */
709
- async fridaConsole() {
710
- const { url } = await this._fetch("/console?type=frida");
711
- var fridaConsole = wsstream(url, ["binary"]);
712
-
713
- await new Promise((resolve) => {
714
- fridaConsole.socket.on("open", () => {
715
- resolve();
716
- });
717
- });
718
-
719
- return fridaConsole;
720
- }
721
-
722
- /**
723
- * Execute FRIDA script by name
724
- * @param {string} filePath - path to FRIDA script
725
- * @example
726
- * await instance.executeFridaScript("/data/corellium/frida/scripts/script.js");
727
- */
728
- async executeFridaScript(filePath) {
729
- const fridaConsoleStream = await this.fridaConsole();
730
- fridaConsoleStream.socket.on("close", function () {
731
- fridaConsoleStream.destroy();
732
- });
733
-
734
- fridaConsoleStream.socket.send("%load " + filePath + "\n", null, () =>
735
- fridaConsoleStream.socket.close(),
736
- );
737
-
738
- fridaConsoleStream.socket.close();
739
- }
740
-
741
- /**
742
- * Takes a screenshot of this instance's screen. Returns a Buffer containing image data.
743
- * @param {Object} options
744
- * @param {string} [options.format=png] - Either `png` or `jpg`.
745
- * @param {int} [options.scale=1] - The image scale. Specifying 2 would result
746
- * in an image with half the instance's native resolution. This is useful
747
- * because smaller images are quicker to capture and transmit over the
748
- * network.
749
- * @example
750
- * const screenshot = await instance.takeScreenshot();
751
- * fs.writeFileSync('screenshot.png', screenshot);
752
- */
753
- async takeScreenshot(options) {
754
- const { format = "png", scale = 1 } = options || {};
755
- const res = await this._fetch(`/screenshot.${format}?scale=${scale}`, {
756
- response: "raw",
757
- });
758
- if (res.buffer) return await res.buffer();
759
- // node
760
- else return await res.blob(); // browser
761
- }
762
-
763
- /**
764
- * Enable exposing a port for connecting to VM.
765
- * For iOS, this would mean ssh, for Android, adb access.
766
- */
767
- async enableExposedPort() {
768
- await this._fetch("/exposeport/enable", { method: "POST" });
769
- }
770
-
771
- /**
772
- * Disable exposing a port for connecting to VM.
773
- * For iOS, this would mean ssh, for Android, adb access.
774
- */
775
- async disableExposedPort() {
776
- await this._fetch("/exposeport/disable", { method: "POST" });
777
- }
778
-
779
- async update() {
780
- this.receiveUpdate(await this._fetch(""));
781
- }
782
-
783
- receiveUpdate(info) {
784
- this.infoDate = new Date();
785
- // one way of checking object equality
786
- if (JSON.stringify(info) != JSON.stringify(this.info)) {
787
- this.info = info;
788
- /**
789
- * Fired when a property of an instance changes, such as its name or its state.
790
- * @event Instance#change
791
- * @example
792
- * instance.on('change', () => {
793
- * console.log(instance.id, instance.name, instance.state);
794
- * });
795
- */
796
- this.emit("change");
797
- if (info.panicked)
798
- /**
799
- * Fired when an instance panics. The panic information can be retrieved with {@link Instance#panics}.
800
- * @event Instance#panic
801
- * @example
802
- * instance.on('panic', async () => {
803
- * try {
804
- * console.log('Panic detected!');
805
- * // get the panic log(s)
806
- * console.log(await instance.panics());
807
- * // Download the console log.
808
- * console.log(await instance.consoleLog());
809
- * // Clear the panic log.
810
- * await instance.clearPanics();
811
- * // Reboot the instance.
812
- * await instance.reboot();
813
- * } catch (e) {
814
- * // handle the error somehow to avoid an unhandled promise rejection
815
- * }
816
- * });
817
- */
818
- this.emit("panic");
819
- }
820
- }
821
-
822
- async _waitFor(callback) {
823
- await this.update();
824
- return new Promise((resolve) => {
825
- const change = () => {
826
- let done;
827
- try {
828
- done = callback();
829
- } catch (e) {
830
- done = false;
831
- }
832
- if (done) {
833
- this.removeListener("change", change);
834
- resolve();
835
- }
836
- };
837
-
838
- this.on("change", change);
839
- change();
840
- });
841
- }
842
-
843
- /**
844
- * Wait for the instance to finish restoring and start its first boot.
845
- * @example <caption>Wait for VM to finish restore</caption>
846
- * instance.finishRestore();
847
- */
848
- async finishRestore() {
849
- await this._waitFor(() => this.state !== "creating");
850
- }
851
-
852
- /**
853
- * Wait for the instance to enter the given state.
854
- * @param {string} state - state to wait
855
- * @example <caption>Wait for VM to be ON</caption>
856
- * instance.waitForState('on');
857
- */
858
- async waitForState(state) {
859
- await this._waitFor(() => this.state === state);
860
- }
861
-
862
- /**
863
- * Wait for the instance task to enter the given state.
864
- * @param {string} taskName
865
- */
866
- async waitForTaskState(taskName) {
867
- await this._waitFor(() => this.taskState === taskName);
868
- }
869
-
870
- /**
871
- * Wait for the instance user task name to be a given state.
872
- * @param {string} userTaskName
873
- */
874
- async waitForUserTask(userTaskName) {
875
- await this._waitFor(() => {
876
- if (!userTaskName) {
877
- return !this.userTask;
878
- } else {
879
- return this.userTask.name === userTaskName;
880
- }
881
- });
882
- }
883
-
884
- async _fetch(endpoint = "", options = {}) {
885
- return await fetchApi(this.project, `/instances/${this.id}${endpoint}`, options);
886
- }
887
-
888
- /**
889
- * Delete Iot Firmware that is attached to an instance
890
- * @param {FirmwareImage} firmwareImage
891
- */
892
- async deleteIotFirmware(firmwareImage) {
893
- return await this.deleteImage(firmwareImage);
894
- }
895
-
896
- /**
897
- * Delete kernel that is attached to an instance
898
- * @param {KernelImage} kernelImage
899
- */
900
- async deleteKernel(kernelImage) {
901
- return await this.deleteImage(kernelImage);
902
- }
903
-
904
- /**
905
- * Delete an image that is attached to an instance
906
- * @param {Image | KernelImage | FirmwareImage} kernelImage
907
- */
908
- async deleteImage(image) {
909
- return await fetchApi(this, `/images/${image.id}`, {
910
- method: "DELETE",
911
- });
912
- }
913
-
914
- /**
915
- * Upload a partition (e.g. flash) to an instance.
916
- *
917
- * @param {string} filePath - The path on the local file system to get the firmware file.
918
- * @param {string} name - The name of the partition to load this file to.
919
- * @param {Project~progressCallback} [progress] - The callback for file upload progress information.
920
- *
921
- * @returns {Promise<PartitionImage>}
922
- */
923
- async uploadPartition(filePath, name, progress) {
924
- return await this.compressAndUploadImage("partition", filePath, name, progress);
925
- }
926
-
927
- /**
928
- * Add a custom IoT firmware image to a project for use in creating new instances.
929
- *
930
- * @param {string} filePath - The path on the local file system to get the firmware file.
931
- * @param {string} name - The name of the file to identify the file on the server. Usually the basename of the path.
932
- * @param {Project~progressCallback} [progress] - The callback for file upload progress information.
933
- *
934
- * @returns {Promise<FirmwareImage>}
935
- */
936
- async uploadIotFirmware(filePath, name, progress) {
937
- return await this.uploadKernel(filePath, name, progress);
938
- }
939
-
940
- /**
941
- * compress an image and upload it to an instance
942
- *
943
- * @param {string} type - the type of image being uploaded ie. kernel, ramdisk, or devicetree
944
- * @param {string} filePath - The path on the local file system to get the file.
945
- * @param {string} name - The name of the file to identify the file on the server. Usually the basename of the path.
946
- * @param {Project~progressCallback} [progress] - The callback for file upload progress information.
947
- *
948
- * @returns {Promise<Image>}
949
- */
950
- async compressAndUploadImage(type, filePath, name, progress) {
951
- let tmpfile = null;
952
- const data = await util.promisify(fs.readFile)(filePath);
953
-
954
- tmpfile = await compress(data, name);
955
-
956
- let uploadedImage = await this.uploadImage(type, tmpfile, name, progress);
957
-
958
- if (tmpfile) {
959
- fs.unlinkSync(tmpfile);
960
- }
961
-
962
- return { id: uploadedImage.id, name: uploadedImage.name };
963
- }
964
-
965
- /**
966
- * Add a kernel image to an instance
967
- *
968
- * @param {string} filePath - The path on the local file system to get the kernel file.
969
- * @param {string} name - The name of the file to identify the file on the server. Usually the basename of the path.
970
- * @param {Project~progressCallback} [progress] - The callback for file upload progress information.
971
- *
972
- * @returns {Promise<KernelImage>}
973
- */
974
- async uploadKernel(filePath, name, progress) {
975
- await this.compressAndUploadImage("kernel", filePath, name, progress);
976
- }
977
-
978
- /**
979
- * Add a ram disk image to an instance
980
- *
981
- * @param {string} filePath - The path on the local file system to get the ram disk file.
982
- * @param {string} name - The name of the file to identify the file on the server. Usually the basename of the path.
983
- * @param {Project~progressCallback} [progress] - The callback for file upload progress information.
984
- *
985
- * @returns {Promise<RamDiskImage>}
986
- */
987
- async uploadRamDisk(filePath, name, progress) {
988
- await this.compressAndUploadImage("ramdisk", filePath, name, progress);
989
- }
990
-
991
- /**
992
- * Add a device tree image to an instance.
993
- *
994
- * @param {string} filePath - The path on the local file system to get the device tree file.
995
- * @param {string} name - The name of the file to identify the file on the server. Usually the basename of the path.
996
- * @param {Project~progressCallback} [progress] - The callback for file upload progress information.
997
- *
998
- * @returns {Promise<DeviceTreeImage>}
999
- */
1000
- async uploadDeviceTree(filePath, name, progress) {
1001
- await this.compressAndUploadImage("devicetree", filePath, name, progress);
1002
- }
1003
-
1004
- /**
1005
- * Add an image to the instance. These images may be removed at any time and are meant to facilitate creating a new Instance with images.
1006
- *
1007
- * @param {string} type - E.g. fw for the main firmware image.
1008
- * @param {string} filePath - The path on the local file system to get the file.
1009
- * @param {string} name - The name of the file to identify the file on the server. Usually the basename of the path.
1010
- * @param {Project~progressCallback} [progress] - The callback for file upload progress information.
1011
- *
1012
- * @returns {Promise<Image>}
1013
- */
1014
- async uploadImage(type, filePath, name, progress) {
1015
- const token = await this.project.getToken();
1016
- const url =
1017
- this.project.api +
1018
- "/instances/" +
1019
- encodeURIComponent(this.id) +
1020
- "/image-upload/" +
1021
- encodeURIComponent(type) +
1022
- "/" +
1023
- encodeURIComponent(uuidv4()) +
1024
- "/" +
1025
- encodeURIComponent(name);
1026
-
1027
- return await uploadFile(token, url, filePath, progress);
1028
- }
1029
- }
1030
-
1031
- module.exports = Instance;