@corellium/corellium-cli 1.0.3 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (490) hide show
  1. package/README.md +5 -17
  2. package/docs/OVERVIEW.md +1 -1
  3. package/jenkinsbuild/build.sh +1 -1
  4. package/package.json +3 -3
  5. package/src/TrialAccount.js +76 -0
  6. package/src/commands/Client.js +2 -2
  7. package/src/commands/agent/Agent.js +10 -19
  8. package/src/commands/agent/apps.js +2 -1
  9. package/src/commands/agent/file.js +2 -1
  10. package/src/commands/agent/index.js +1 -0
  11. package/src/commands/agent/ready.js +43 -0
  12. package/src/commands/extensions/delete.js +2 -1
  13. package/src/commands/extensions/list.js +2 -1
  14. package/src/commands/extensions/load.js +2 -1
  15. package/src/commands/extensions/validate.js +2 -1
  16. package/src/commands/firmware/list.js +2 -1
  17. package/src/commands/firmware/load.js +2 -1
  18. package/src/commands/images/create.js +2 -1
  19. package/src/commands/images/delete.js +2 -1
  20. package/src/commands/images/list.js +2 -1
  21. package/src/commands/instances/Instance.js +27 -0
  22. package/src/commands/instances/create.js +11 -4
  23. package/src/commands/instances/delete.js +20 -5
  24. package/src/commands/instances/index.js +2 -1
  25. package/src/commands/instances/list.js +11 -5
  26. package/src/commands/instances/start.js +2 -1
  27. package/src/commands/instances/stop.js +2 -1
  28. package/src/commands/instances/upgrade.js +90 -0
  29. package/src/commands/login.js +14 -2
  30. package/src/commands/logout.js +2 -1
  31. package/src/commands/projects/create.js +2 -1
  32. package/src/commands/projects/delete.js +2 -1
  33. package/src/commands/projects/list.js +2 -1
  34. package/src/commands/signup.js +14 -5
  35. package/src/commands/webplayer/WebPlayer.js +2 -1
  36. package/src/commands/webplayer/create.js +8 -1
  37. package/src/commands/webplayer/destroy.js +2 -1
  38. package/src/commands/webplayer/list.js +19 -17
  39. package/src/commands/webplayer/login.js +2 -1
  40. package/src/error.js +14 -1
  41. package/src/logging.js +1 -1
  42. package/src/profile.js +12 -9
  43. package/src/resumable.js +1314 -0
  44. package/src/table.js +7 -2
  45. package/src/upload.js +64 -2
  46. package/src/utils.js +11 -4
  47. package/test/test.js +89 -0
  48. package/example/WebPlayerSample.js +0 -263
  49. package/node_modules/@corellium/corellium-api/README.md +0 -1210
  50. package/node_modules/@corellium/corellium-api/node_modules/form-data/License +0 -19
  51. package/node_modules/@corellium/corellium-api/node_modules/form-data/README.md.bak +0 -356
  52. package/node_modules/@corellium/corellium-api/node_modules/form-data/Readme.md +0 -356
  53. package/node_modules/@corellium/corellium-api/node_modules/form-data/index.d.ts +0 -62
  54. package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/browser.js +0 -2
  55. package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/form_data.js +0 -498
  56. package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/populate.js +0 -10
  57. package/node_modules/@corellium/corellium-api/node_modules/form-data/package.json +0 -104
  58. package/node_modules/@corellium/corellium-api/node_modules/uuid/AUTHORS +0 -5
  59. package/node_modules/@corellium/corellium-api/node_modules/uuid/CHANGELOG.md +0 -119
  60. package/node_modules/@corellium/corellium-api/node_modules/uuid/LICENSE.md +0 -21
  61. package/node_modules/@corellium/corellium-api/node_modules/uuid/README.md +0 -276
  62. package/node_modules/@corellium/corellium-api/node_modules/uuid/bin/uuid +0 -65
  63. package/node_modules/@corellium/corellium-api/node_modules/uuid/index.js +0 -8
  64. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/bytesToUuid.js +0 -26
  65. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/md5-browser.js +0 -216
  66. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/md5.js +0 -25
  67. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/rng-browser.js +0 -34
  68. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/rng.js +0 -8
  69. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/sha1-browser.js +0 -89
  70. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/sha1.js +0 -25
  71. package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/v35.js +0 -57
  72. package/node_modules/@corellium/corellium-api/node_modules/uuid/package.json +0 -103
  73. package/node_modules/@corellium/corellium-api/node_modules/uuid/v1.js +0 -109
  74. package/node_modules/@corellium/corellium-api/node_modules/uuid/v3.js +0 -4
  75. package/node_modules/@corellium/corellium-api/node_modules/uuid/v4.js +0 -29
  76. package/node_modules/@corellium/corellium-api/node_modules/uuid/v5.js +0 -3
  77. package/node_modules/@corellium/corellium-api/package.json +0 -106
  78. package/node_modules/@corellium/corellium-api/resumable.js +0 -1312
  79. package/node_modules/@corellium/corellium-api/src/agent.js +0 -962
  80. package/node_modules/@corellium/corellium-api/src/corellium.js +0 -444
  81. package/node_modules/@corellium/corellium-api/src/images.js +0 -131
  82. package/node_modules/@corellium/corellium-api/src/input.js +0 -178
  83. package/node_modules/@corellium/corellium-api/src/instance-updater.js +0 -56
  84. package/node_modules/@corellium/corellium-api/src/instance.js +0 -1031
  85. package/node_modules/@corellium/corellium-api/src/netmon.js +0 -308
  86. package/node_modules/@corellium/corellium-api/src/project.js +0 -393
  87. package/node_modules/@corellium/corellium-api/src/role.js +0 -65
  88. package/node_modules/@corellium/corellium-api/src/snapshot.js +0 -77
  89. package/node_modules/@corellium/corellium-api/src/team.js +0 -29
  90. package/node_modules/@corellium/corellium-api/src/user.js +0 -51
  91. package/node_modules/@corellium/corellium-api/src/util/fetch.js +0 -62
  92. package/node_modules/@corellium/corellium-api/src/util/sleep.js +0 -7
  93. package/node_modules/@corellium/corellium-api/test/integration-tests.js +0 -1292
  94. package/node_modules/@corellium/corellium-api/test/root-hook-set-flag-if-test-failed.js +0 -7
  95. package/node_modules/async-limiter/.eslintignore +0 -2
  96. package/node_modules/async-limiter/.nycrc +0 -10
  97. package/node_modules/async-limiter/.travis.yml +0 -9
  98. package/node_modules/async-limiter/LICENSE +0 -8
  99. package/node_modules/async-limiter/index.js +0 -67
  100. package/node_modules/async-limiter/package.json +0 -72
  101. package/node_modules/async-limiter/readme.md +0 -132
  102. package/node_modules/buffer-crc32/LICENSE +0 -19
  103. package/node_modules/buffer-crc32/README.md +0 -47
  104. package/node_modules/buffer-crc32/index.js +0 -111
  105. package/node_modules/buffer-crc32/package.json +0 -72
  106. package/node_modules/cross-fetch/LICENSE +0 -21
  107. package/node_modules/cross-fetch/README.md +0 -169
  108. package/node_modules/cross-fetch/dist/browser-polyfill.js +0 -532
  109. package/node_modules/cross-fetch/dist/browser-ponyfill.js +0 -554
  110. package/node_modules/cross-fetch/dist/cross-fetch.js +0 -2
  111. package/node_modules/cross-fetch/dist/cross-fetch.js.map +0 -1
  112. package/node_modules/cross-fetch/dist/node-polyfill.js +0 -11
  113. package/node_modules/cross-fetch/dist/node-ponyfill.js +0 -22
  114. package/node_modules/cross-fetch/dist/react-native-polyfill.js +0 -12
  115. package/node_modules/cross-fetch/dist/react-native-ponyfill.js +0 -6
  116. package/node_modules/cross-fetch/index.d.ts +0 -14
  117. package/node_modules/cross-fetch/package.json +0 -160
  118. package/node_modules/cross-fetch/polyfill/package.json +0 -8
  119. package/node_modules/duplexify/.travis.yml +0 -6
  120. package/node_modules/duplexify/LICENSE +0 -21
  121. package/node_modules/duplexify/README.md +0 -97
  122. package/node_modules/duplexify/example.js +0 -21
  123. package/node_modules/duplexify/index.js +0 -234
  124. package/node_modules/duplexify/package.json +0 -69
  125. package/node_modules/duplexify/test.js +0 -295
  126. package/node_modules/end-of-stream/LICENSE +0 -21
  127. package/node_modules/end-of-stream/README.md +0 -54
  128. package/node_modules/end-of-stream/index.js +0 -94
  129. package/node_modules/end-of-stream/package.json +0 -69
  130. package/node_modules/fast-stable-stringify/.npmignore +0 -4
  131. package/node_modules/fast-stable-stringify/.travis.yml +0 -10
  132. package/node_modules/fast-stable-stringify/LICENSE +0 -21
  133. package/node_modules/fast-stable-stringify/README.md +0 -81
  134. package/node_modules/fast-stable-stringify/cli/files-to-comparison-results.js +0 -67
  135. package/node_modules/fast-stable-stringify/cli/format-table.js +0 -70
  136. package/node_modules/fast-stable-stringify/cli/index.js +0 -19
  137. package/node_modules/fast-stable-stringify/fixtures/index.js +0 -5
  138. package/node_modules/fast-stable-stringify/fixtures/input-data-types.js +0 -191
  139. package/node_modules/fast-stable-stringify/fixtures/log-result.json +0 -22
  140. package/node_modules/fast-stable-stringify/fixtures/log.txt +0 -24
  141. package/node_modules/fast-stable-stringify/index.js +0 -73
  142. package/node_modules/fast-stable-stringify/karma.conf.js +0 -124
  143. package/node_modules/fast-stable-stringify/karma.conf.travis.js +0 -95
  144. package/node_modules/fast-stable-stringify/package.json +0 -77
  145. package/node_modules/fast-stable-stringify/results/escape-long/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -57
  146. package/node_modules/fast-stable-stringify/results/escape-long/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -57
  147. package/node_modules/fast-stable-stringify/results/escape-long/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -57
  148. package/node_modules/fast-stable-stringify/results/escape-long/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -57
  149. package/node_modules/fast-stable-stringify/results/escape-long/IE 10.0.0 (Windows 7 0.0.0).json +0 -57
  150. package/node_modules/fast-stable-stringify/results/escape-long/IE 11.0.0 (Windows 7 0.0.0).json +0 -57
  151. package/node_modules/fast-stable-stringify/results/escape-long/IE 9.0.0 (Windows 7 0.0.0).json +0 -57
  152. package/node_modules/fast-stable-stringify/results/escape-long/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -57
  153. package/node_modules/fast-stable-stringify/results/escape-long/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -57
  154. package/node_modules/fast-stable-stringify/results/escape-short/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -57
  155. package/node_modules/fast-stable-stringify/results/escape-short/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -57
  156. package/node_modules/fast-stable-stringify/results/escape-short/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -57
  157. package/node_modules/fast-stable-stringify/results/escape-short/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -57
  158. package/node_modules/fast-stable-stringify/results/escape-short/IE 10.0.0 (Windows 7 0.0.0).json +0 -57
  159. package/node_modules/fast-stable-stringify/results/escape-short/IE 11.0.0 (Windows 7 0.0.0).json +0 -57
  160. package/node_modules/fast-stable-stringify/results/escape-short/IE 9.0.0 (Windows 7 0.0.0).json +0 -57
  161. package/node_modules/fast-stable-stringify/results/escape-short/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -57
  162. package/node_modules/fast-stable-stringify/results/escape-short/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -57
  163. package/node_modules/fast-stable-stringify/results/escape.md +0 -20
  164. package/node_modules/fast-stable-stringify/results/itar-long/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
  165. package/node_modules/fast-stable-stringify/results/itar-long/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
  166. package/node_modules/fast-stable-stringify/results/itar-long/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
  167. package/node_modules/fast-stable-stringify/results/itar-long/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
  168. package/node_modules/fast-stable-stringify/results/itar-long/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
  169. package/node_modules/fast-stable-stringify/results/itar-long/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
  170. package/node_modules/fast-stable-stringify/results/itar-long/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
  171. package/node_modules/fast-stable-stringify/results/itar-long/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
  172. package/node_modules/fast-stable-stringify/results/itar-long/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
  173. package/node_modules/fast-stable-stringify/results/itar-short/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
  174. package/node_modules/fast-stable-stringify/results/itar-short/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
  175. package/node_modules/fast-stable-stringify/results/itar-short/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
  176. package/node_modules/fast-stable-stringify/results/itar-short/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
  177. package/node_modules/fast-stable-stringify/results/itar-short/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
  178. package/node_modules/fast-stable-stringify/results/itar-short/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
  179. package/node_modules/fast-stable-stringify/results/itar-short/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
  180. package/node_modules/fast-stable-stringify/results/itar-short/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
  181. package/node_modules/fast-stable-stringify/results/itar-short/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
  182. package/node_modules/fast-stable-stringify/results/itar.md +0 -20
  183. package/node_modules/fast-stable-stringify/results/iter/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
  184. package/node_modules/fast-stable-stringify/results/iter/Chrome Mobile 39.0.0 (Android 5.1.1).json +0 -35
  185. package/node_modules/fast-stable-stringify/results/iter/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
  186. package/node_modules/fast-stable-stringify/results/iter/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
  187. package/node_modules/fast-stable-stringify/results/iter/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
  188. package/node_modules/fast-stable-stringify/results/iter/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
  189. package/node_modules/fast-stable-stringify/results/iter/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
  190. package/node_modules/fast-stable-stringify/results/iter/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
  191. package/node_modules/fast-stable-stringify/results/iter/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
  192. package/node_modules/fast-stable-stringify/results/iter/Mobile Safari 9.0.0 (iOS 9.2.0).json +0 -35
  193. package/node_modules/fast-stable-stringify/results/iter/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
  194. package/node_modules/fast-stable-stringify/results/iter/Safari 9.1.2 (Mac OS X 10.11.6).json +0 -35
  195. package/node_modules/fast-stable-stringify/results/iter.md +0 -14
  196. package/node_modules/fast-stable-stringify/results/libs/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -46
  197. package/node_modules/fast-stable-stringify/results/libs/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -46
  198. package/node_modules/fast-stable-stringify/results/libs/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -46
  199. package/node_modules/fast-stable-stringify/results/libs/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -46
  200. package/node_modules/fast-stable-stringify/results/libs/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
  201. package/node_modules/fast-stable-stringify/results/libs/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
  202. package/node_modules/fast-stable-stringify/results/libs/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
  203. package/node_modules/fast-stable-stringify/results/libs/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -46
  204. package/node_modules/fast-stable-stringify/results/libs/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -46
  205. package/node_modules/fast-stable-stringify/results/libs.md +0 -15
  206. package/node_modules/fast-stable-stringify/test/escape-long.js +0 -147
  207. package/node_modules/fast-stable-stringify/test/escape-short.js +0 -147
  208. package/node_modules/fast-stable-stringify/test/index.js +0 -6
  209. package/node_modules/fast-stable-stringify/test/itar-long.js +0 -52
  210. package/node_modules/fast-stable-stringify/test/itar-short.js +0 -52
  211. package/node_modules/fast-stable-stringify/test/iter.js +0 -84
  212. package/node_modules/fast-stable-stringify/test/libs.js +0 -57
  213. package/node_modules/fast-stable-stringify/test/travis.js +0 -43
  214. package/node_modules/fast-stable-stringify/test/validate.js +0 -24
  215. package/node_modules/fast-stable-stringify/util/eachRecursive.js +0 -9
  216. package/node_modules/fast-stable-stringify/util/get-git-hash-sync.js +0 -21
  217. package/node_modules/fast-stable-stringify/util/get-lib-info.js +0 -22
  218. package/node_modules/fast-stable-stringify/util/object-path.js +0 -47
  219. package/node_modules/fast-stable-stringify/v8-profile/bench.js +0 -8
  220. package/node_modules/fast-stable-stringify/v8-profile/run.sh +0 -2
  221. package/node_modules/fast-stable-stringify/zuul-local.sh +0 -2
  222. package/node_modules/hkdf/.npmignore +0 -2
  223. package/node_modules/hkdf/README.md +0 -23
  224. package/node_modules/hkdf/hkdf.py +0 -171
  225. package/node_modules/hkdf/hkdf.pyc +0 -0
  226. package/node_modules/hkdf/index.js +0 -1
  227. package/node_modules/hkdf/lib/hkdf.js +0 -55
  228. package/node_modules/hkdf/package.json +0 -55
  229. package/node_modules/hkdf/scripts/run_all_tests.sh +0 -19
  230. package/node_modules/hkdf/test/all-test.js +0 -79
  231. package/node_modules/hkdf/test.py +0 -11
  232. package/node_modules/immediate/LICENSE.txt +0 -20
  233. package/node_modules/immediate/README.md +0 -93
  234. package/node_modules/immediate/dist/immediate.js +0 -75
  235. package/node_modules/immediate/dist/immediate.min.js +0 -1
  236. package/node_modules/immediate/lib/browser.js +0 -69
  237. package/node_modules/immediate/lib/index.js +0 -73
  238. package/node_modules/immediate/package.json +0 -86
  239. package/node_modules/isarray/.npmignore +0 -1
  240. package/node_modules/isarray/.travis.yml +0 -4
  241. package/node_modules/isarray/Makefile +0 -6
  242. package/node_modules/isarray/README.md +0 -60
  243. package/node_modules/isarray/component.json +0 -19
  244. package/node_modules/isarray/index.js +0 -5
  245. package/node_modules/isarray/package.json +0 -77
  246. package/node_modules/isarray/test.js +0 -20
  247. package/node_modules/jszip/.codeclimate.yml +0 -16
  248. package/node_modules/jszip/.editorconfig +0 -8
  249. package/node_modules/jszip/.github/workflows/pr.yaml +0 -41
  250. package/node_modules/jszip/.jshintignore +0 -1
  251. package/node_modules/jszip/.jshintrc +0 -21
  252. package/node_modules/jszip/.travis.yml +0 -17
  253. package/node_modules/jszip/CHANGES.md +0 -192
  254. package/node_modules/jszip/LICENSE.markdown +0 -651
  255. package/node_modules/jszip/README.markdown +0 -33
  256. package/node_modules/jszip/dist/jszip.js +0 -11583
  257. package/node_modules/jszip/dist/jszip.min.js +0 -13
  258. package/node_modules/jszip/index.d.ts +0 -335
  259. package/node_modules/jszip/lib/base64.js +0 -106
  260. package/node_modules/jszip/lib/compressedObject.js +0 -74
  261. package/node_modules/jszip/lib/compressions.js +0 -14
  262. package/node_modules/jszip/lib/crc32.js +0 -77
  263. package/node_modules/jszip/lib/defaults.js +0 -11
  264. package/node_modules/jszip/lib/external.js +0 -19
  265. package/node_modules/jszip/lib/flate.js +0 -85
  266. package/node_modules/jszip/lib/generate/ZipFileWorker.js +0 -540
  267. package/node_modules/jszip/lib/generate/index.js +0 -57
  268. package/node_modules/jszip/lib/index.js +0 -55
  269. package/node_modules/jszip/lib/license_header.js +0 -11
  270. package/node_modules/jszip/lib/load.js +0 -88
  271. package/node_modules/jszip/lib/nodejs/NodejsStreamInputAdapter.js +0 -74
  272. package/node_modules/jszip/lib/nodejs/NodejsStreamOutputAdapter.js +0 -42
  273. package/node_modules/jszip/lib/nodejsUtils.js +0 -57
  274. package/node_modules/jszip/lib/object.js +0 -389
  275. package/node_modules/jszip/lib/readable-stream-browser.js +0 -9
  276. package/node_modules/jszip/lib/reader/ArrayReader.js +0 -57
  277. package/node_modules/jszip/lib/reader/DataReader.js +0 -116
  278. package/node_modules/jszip/lib/reader/NodeBufferReader.js +0 -19
  279. package/node_modules/jszip/lib/reader/StringReader.js +0 -38
  280. package/node_modules/jszip/lib/reader/Uint8ArrayReader.js +0 -22
  281. package/node_modules/jszip/lib/reader/readerFor.js +0 -28
  282. package/node_modules/jszip/lib/signature.js +0 -7
  283. package/node_modules/jszip/lib/stream/ConvertWorker.js +0 -26
  284. package/node_modules/jszip/lib/stream/Crc32Probe.js +0 -24
  285. package/node_modules/jszip/lib/stream/DataLengthProbe.js +0 -29
  286. package/node_modules/jszip/lib/stream/DataWorker.js +0 -116
  287. package/node_modules/jszip/lib/stream/GenericWorker.js +0 -263
  288. package/node_modules/jszip/lib/stream/StreamHelper.js +0 -212
  289. package/node_modules/jszip/lib/support.js +0 -38
  290. package/node_modules/jszip/lib/utf8.js +0 -275
  291. package/node_modules/jszip/lib/utils.js +0 -501
  292. package/node_modules/jszip/lib/zipEntries.js +0 -262
  293. package/node_modules/jszip/lib/zipEntry.js +0 -294
  294. package/node_modules/jszip/lib/zipObject.js +0 -133
  295. package/node_modules/jszip/package.json +0 -99
  296. package/node_modules/jszip/tsconfig.json +0 -101
  297. package/node_modules/jszip/vendor/FileSaver.js +0 -247
  298. package/node_modules/lie/README.md +0 -62
  299. package/node_modules/lie/dist/lie.js +0 -350
  300. package/node_modules/lie/dist/lie.min.js +0 -1
  301. package/node_modules/lie/dist/lie.polyfill.js +0 -358
  302. package/node_modules/lie/dist/lie.polyfill.min.js +0 -1
  303. package/node_modules/lie/lib/browser.js +0 -273
  304. package/node_modules/lie/lib/index.js +0 -298
  305. package/node_modules/lie/license.md +0 -7
  306. package/node_modules/lie/lie.d.ts +0 -244
  307. package/node_modules/lie/package.json +0 -98
  308. package/node_modules/lie/polyfill.js +0 -4
  309. package/node_modules/p-finally/index.js +0 -15
  310. package/node_modules/p-finally/license +0 -21
  311. package/node_modules/p-finally/package.json +0 -77
  312. package/node_modules/p-finally/readme.md +0 -47
  313. package/node_modules/p-retry/index.js +0 -52
  314. package/node_modules/p-retry/license +0 -9
  315. package/node_modules/p-retry/package.json +0 -83
  316. package/node_modules/p-retry/readme.md +0 -109
  317. package/node_modules/p-timeout/index.d.ts +0 -72
  318. package/node_modules/p-timeout/index.js +0 -57
  319. package/node_modules/p-timeout/license +0 -9
  320. package/node_modules/p-timeout/package.json +0 -80
  321. package/node_modules/p-timeout/readme.md +0 -87
  322. package/node_modules/pako/CHANGELOG.md +0 -164
  323. package/node_modules/pako/LICENSE +0 -21
  324. package/node_modules/pako/README.md +0 -191
  325. package/node_modules/pako/dist/pako.js +0 -6818
  326. package/node_modules/pako/dist/pako.min.js +0 -1
  327. package/node_modules/pako/dist/pako_deflate.js +0 -3997
  328. package/node_modules/pako/dist/pako_deflate.min.js +0 -1
  329. package/node_modules/pako/dist/pako_inflate.js +0 -3300
  330. package/node_modules/pako/dist/pako_inflate.min.js +0 -1
  331. package/node_modules/pako/index.js +0 -14
  332. package/node_modules/pako/lib/deflate.js +0 -400
  333. package/node_modules/pako/lib/inflate.js +0 -423
  334. package/node_modules/pako/lib/utils/common.js +0 -105
  335. package/node_modules/pako/lib/utils/strings.js +0 -187
  336. package/node_modules/pako/lib/zlib/README +0 -59
  337. package/node_modules/pako/lib/zlib/adler32.js +0 -51
  338. package/node_modules/pako/lib/zlib/constants.js +0 -68
  339. package/node_modules/pako/lib/zlib/crc32.js +0 -59
  340. package/node_modules/pako/lib/zlib/deflate.js +0 -1874
  341. package/node_modules/pako/lib/zlib/gzheader.js +0 -58
  342. package/node_modules/pako/lib/zlib/inffast.js +0 -345
  343. package/node_modules/pako/lib/zlib/inflate.js +0 -1556
  344. package/node_modules/pako/lib/zlib/inftrees.js +0 -343
  345. package/node_modules/pako/lib/zlib/messages.js +0 -32
  346. package/node_modules/pako/lib/zlib/trees.js +0 -1222
  347. package/node_modules/pako/lib/zlib/zstream.js +0 -47
  348. package/node_modules/pako/package.json +0 -94
  349. package/node_modules/process-nextick-args/index.js +0 -45
  350. package/node_modules/process-nextick-args/license.md +0 -19
  351. package/node_modules/process-nextick-args/package.json +0 -53
  352. package/node_modules/process-nextick-args/readme.md +0 -18
  353. package/node_modules/readable-stream/.travis.yml +0 -34
  354. package/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  355. package/node_modules/readable-stream/GOVERNANCE.md +0 -136
  356. package/node_modules/readable-stream/LICENSE +0 -47
  357. package/node_modules/readable-stream/README.md +0 -58
  358. package/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
  359. package/node_modules/readable-stream/duplex-browser.js +0 -1
  360. package/node_modules/readable-stream/duplex.js +0 -1
  361. package/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
  362. package/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
  363. package/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
  364. package/node_modules/readable-stream/lib/_stream_transform.js +0 -214
  365. package/node_modules/readable-stream/lib/_stream_writable.js +0 -687
  366. package/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -79
  367. package/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -74
  368. package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  369. package/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  370. package/node_modules/readable-stream/package.json +0 -86
  371. package/node_modules/readable-stream/passthrough.js +0 -1
  372. package/node_modules/readable-stream/readable-browser.js +0 -7
  373. package/node_modules/readable-stream/readable.js +0 -19
  374. package/node_modules/readable-stream/transform.js +0 -1
  375. package/node_modules/readable-stream/writable-browser.js +0 -1
  376. package/node_modules/readable-stream/writable.js +0 -8
  377. package/node_modules/retry/.npmignore +0 -3
  378. package/node_modules/retry/.travis.yml +0 -15
  379. package/node_modules/retry/License +0 -21
  380. package/node_modules/retry/Makefile +0 -18
  381. package/node_modules/retry/README.md +0 -227
  382. package/node_modules/retry/equation.gif +0 -0
  383. package/node_modules/retry/example/dns.js +0 -31
  384. package/node_modules/retry/example/stop.js +0 -40
  385. package/node_modules/retry/index.js +0 -1
  386. package/node_modules/retry/lib/retry.js +0 -100
  387. package/node_modules/retry/lib/retry_operation.js +0 -158
  388. package/node_modules/retry/package.json +0 -67
  389. package/node_modules/retry/test/common.js +0 -10
  390. package/node_modules/retry/test/integration/test-forever.js +0 -24
  391. package/node_modules/retry/test/integration/test-retry-operation.js +0 -258
  392. package/node_modules/retry/test/integration/test-retry-wrap.js +0 -101
  393. package/node_modules/retry/test/integration/test-timeouts.js +0 -69
  394. package/node_modules/setimmediate/LICENSE.txt +0 -20
  395. package/node_modules/setimmediate/package.json +0 -77
  396. package/node_modules/setimmediate/setImmediate.js +0 -186
  397. package/node_modules/split/.npmignore +0 -3
  398. package/node_modules/split/.travis.yml +0 -3
  399. package/node_modules/split/LICENCE +0 -22
  400. package/node_modules/split/examples/pretty.js +0 -26
  401. package/node_modules/split/index.js +0 -63
  402. package/node_modules/split/package.json +0 -65
  403. package/node_modules/split/readme.markdown +0 -72
  404. package/node_modules/split/test/options.asynct.js +0 -46
  405. package/node_modules/split/test/partitioned_unicode.js +0 -34
  406. package/node_modules/split/test/split.asynct.js +0 -137
  407. package/node_modules/split/test/try_catch.asynct.js +0 -51
  408. package/node_modules/stream-shift/.travis.yml +0 -6
  409. package/node_modules/stream-shift/LICENSE +0 -21
  410. package/node_modules/stream-shift/README.md +0 -25
  411. package/node_modules/stream-shift/index.js +0 -20
  412. package/node_modules/stream-shift/package.json +0 -56
  413. package/node_modules/stream-shift/test.js +0 -48
  414. package/node_modules/ultron/LICENSE +0 -22
  415. package/node_modules/ultron/README.md +0 -113
  416. package/node_modules/ultron/index.js +0 -136
  417. package/node_modules/ultron/package.json +0 -71
  418. package/node_modules/websocket-stream/LICENSE +0 -8
  419. package/node_modules/websocket-stream/collaborators.md +0 -11
  420. package/node_modules/websocket-stream/echo-server.js +0 -51
  421. package/node_modules/websocket-stream/index.d.ts +0 -27
  422. package/node_modules/websocket-stream/index.js +0 -6
  423. package/node_modules/websocket-stream/package.json +0 -82
  424. package/node_modules/websocket-stream/readme.md +0 -148
  425. package/node_modules/websocket-stream/server.js +0 -29
  426. package/node_modules/websocket-stream/stream.js +0 -189
  427. package/node_modules/websocket-stream/test-client.js +0 -74
  428. package/node_modules/websocket-stream/test-server.js +0 -56
  429. package/node_modules/websocket-stream/test.js +0 -338
  430. package/node_modules/websocket-stream/ts-tests.ts +0 -69
  431. package/node_modules/websocket-stream/ws-fallback.js +0 -12
  432. package/node_modules/ws/LICENSE +0 -21
  433. package/node_modules/ws/README.md +0 -341
  434. package/node_modules/ws/index.js +0 -15
  435. package/node_modules/ws/lib/.DS_Store +0 -0
  436. package/node_modules/ws/lib/BufferUtil.js +0 -71
  437. package/node_modules/ws/lib/Constants.js +0 -10
  438. package/node_modules/ws/lib/ErrorCodes.js +0 -28
  439. package/node_modules/ws/lib/EventTarget.js +0 -151
  440. package/node_modules/ws/lib/Extensions.js +0 -203
  441. package/node_modules/ws/lib/PerMessageDeflate.js +0 -507
  442. package/node_modules/ws/lib/Receiver.js +0 -553
  443. package/node_modules/ws/lib/Sender.js +0 -412
  444. package/node_modules/ws/lib/Validation.js +0 -17
  445. package/node_modules/ws/lib/WebSocket.js +0 -717
  446. package/node_modules/ws/lib/WebSocketServer.js +0 -326
  447. package/node_modules/ws/package.json +0 -83
  448. package/node_modules/xhr2/CONTRIBUTING.md +0 -33
  449. package/node_modules/xhr2/Cakefile +0 -131
  450. package/node_modules/xhr2/LICENSE.txt +0 -19
  451. package/node_modules/xhr2/README.md +0 -142
  452. package/node_modules/xhr2/lib/browser.js +0 -1
  453. package/node_modules/xhr2/lib/xhr2.js +0 -1244
  454. package/node_modules/xhr2/package.json +0 -103
  455. package/node_modules/xhr2/src/000-xml_http_request_event_target.coffee +0 -89
  456. package/node_modules/xhr2/src/001-xml_http_request.coffee +0 -781
  457. package/node_modules/xhr2/src/errors.coffee +0 -31
  458. package/node_modules/xhr2/src/progress_event.coffee +0 -39
  459. package/node_modules/xhr2/src/xml_http_request_upload.coffee +0 -95
  460. package/node_modules/xhr2/test/fixtures/hello.json +0 -1
  461. package/node_modules/xhr2/test/fixtures/hello.txt +0 -1
  462. package/node_modules/xhr2/test/fixtures/xhr2.png +0 -0
  463. package/node_modules/xhr2/test/html/browser_test.html +0 -30
  464. package/node_modules/xhr2/test/src/event_target_test.coffee +0 -85
  465. package/node_modules/xhr2/test/src/events_test.coffee +0 -204
  466. package/node_modules/xhr2/test/src/headers_test.coffee +0 -168
  467. package/node_modules/xhr2/test/src/helpers/browser_mocha_runner.coffee +0 -10
  468. package/node_modules/xhr2/test/src/helpers/browser_mocha_setup.coffee +0 -1
  469. package/node_modules/xhr2/test/src/helpers/setup.coffee +0 -38
  470. package/node_modules/xhr2/test/src/helpers/xhr_server.coffee +0 -156
  471. package/node_modules/xhr2/test/src/nodejs_set_test.coffee +0 -162
  472. package/node_modules/xhr2/test/src/redirect_test.coffee +0 -57
  473. package/node_modules/xhr2/test/src/response_type_test.coffee +0 -88
  474. package/node_modules/xhr2/test/src/responseurl_test.coffee +0 -18
  475. package/node_modules/xhr2/test/src/send_test.coffee +0 -89
  476. package/node_modules/xhr2/test/src/status_test.coffee +0 -47
  477. package/node_modules/xhr2/test/src/xhr_test.coffee +0 -102
  478. package/node_modules/xtend/.jshintrc +0 -30
  479. package/node_modules/xtend/LICENSE +0 -20
  480. package/node_modules/xtend/README.md +0 -32
  481. package/node_modules/xtend/immutable.js +0 -19
  482. package/node_modules/xtend/mutable.js +0 -17
  483. package/node_modules/xtend/package.json +0 -89
  484. package/node_modules/xtend/test.js +0 -103
  485. package/node_modules/yazl/LICENSE +0 -21
  486. package/node_modules/yazl/README.md +0 -389
  487. package/node_modules/yazl/index.js +0 -749
  488. package/node_modules/yazl/package.json +0 -69
  489. package/src/commands/CorelliumAPI.js +0 -76
  490. package/src/subscriberInvite.js +0 -140
@@ -1,781 +0,0 @@
1
- # This file's name is set up in such a way that it will always show up second
2
- # in the list of files given to coffee --join, so it can use the
3
- # XMLHttpRequestEventTarget definition and so that the other files can assume
4
- # that XMLHttpRequest was already defined.
5
-
6
- http = require 'http'
7
- https = require 'https'
8
- os = require 'os'
9
- url = require 'url'
10
-
11
- # The ECMAScript HTTP API.
12
- #
13
- # @see http://www.w3.org/TR/XMLHttpRequest/#introduction
14
- class XMLHttpRequest extends XMLHttpRequestEventTarget
15
- # Creates a new request.
16
- #
17
- # @param {Object} options one or more of the options below
18
- # @option options {Boolean} anon if true, the request's anonymous flag
19
- # will be set
20
- # @see http://www.w3.org/TR/XMLHttpRequest/#constructors
21
- # @see http://www.w3.org/TR/XMLHttpRequest/#anonymous-flag
22
- constructor: (options) ->
23
- super()
24
- @onreadystatechange = null
25
-
26
- @_anonymous = options and options.anon
27
-
28
- @readyState = XMLHttpRequest.UNSENT
29
- @response = null
30
- @responseText = ''
31
- @responseType = ''
32
- @responseURL = ''
33
- @status = 0
34
- @statusText = ''
35
- @timeout = 0
36
- @upload = new XMLHttpRequestUpload @
37
-
38
- @_method = null # String
39
- @_url = null # Return value of url.parse()
40
- @_sync = false
41
- @_headers = null # Object<String, String>
42
- @_loweredHeaders = null # Object<lowercase String, String>
43
- @_mimeOverride = null
44
- @_request = null # http.ClientRequest
45
- @_response = null # http.ClientResponse
46
- @_responseParts = null # Array<Buffer, String>
47
- @_responseHeaders = null # Object<lowercase String, String>
48
- @_aborting = null
49
- @_error = null
50
- @_loadedBytes = 0
51
- @_totalBytes = 0
52
- @_lengthComputable = false
53
-
54
- # @property {function(ProgressEvent)} DOM level 0-style handler for the
55
- # 'readystatechange' event
56
- onreadystatechange: null
57
-
58
- # @property {Number} the current state of the XHR object
59
- # @see http://www.w3.org/TR/XMLHttpRequest/#states
60
- readyState: null
61
-
62
- # @property {String, ArrayBuffer, Buffer, Object} processed XHR response
63
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-response-attribute
64
- response: null
65
-
66
- # @property {String} response string, if responseType is '' or 'text'
67
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-responsetext-attribute
68
- responseText: null
69
-
70
- # @property {String} sets the parsing method for the XHR response
71
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-responsetype-attribute
72
- responseType: null
73
-
74
- # @property {Number} the HTTP
75
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-status-attribute
76
- status: null
77
-
78
- # @property {Number} milliseconds to wait for the request to complete
79
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-timeout-attribute
80
- timeout: null
81
-
82
- # @property {XMLHttpRequestUpload} the associated upload information
83
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-upload-attribute
84
- upload: null
85
-
86
- # Sets the XHR's method, URL, synchronous flag, and authentication params.
87
- #
88
- # @param {String} method the HTTP method to be used
89
- # @param {String} url the URL that the request will be made to
90
- # @param {?Boolean} async if false, the XHR should be processed
91
- # synchronously; true by default
92
- # @param {?String} user the user credential to be used in HTTP basic
93
- # authentication
94
- # @param {?String} password the password credential to be used in HTTP basic
95
- # authentication
96
- # @return {undefined} undefined
97
- # @throw {SecurityError} method is not one of the allowed methods
98
- # @throw {SyntaxError} urlString is not a valid URL
99
- # @throw {Error} the URL contains an unsupported protocol; the supported
100
- # protocols are file, http and https
101
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-open()-method
102
- open: (method, url, async, user, password) ->
103
- method = method.toUpperCase()
104
- if method of @_restrictedMethods
105
- throw new SecurityError "HTTP method #{method} is not allowed in XHR"
106
-
107
- xhrUrl = @_parseUrl url
108
- async = true if async is undefined
109
-
110
- switch @readyState
111
- when XMLHttpRequest.UNSENT, XMLHttpRequest.OPENED, XMLHttpRequest.DONE
112
- # Nothing to do here.
113
- null
114
- when XMLHttpRequest.HEADERS_RECEIVED, XMLHttpRequest.LOADING
115
- # TODO(pwnall): terminate abort(), terminate send()
116
- null
117
-
118
- @_method = method
119
- @_url = xhrUrl
120
- @_sync = !async
121
- @_headers = {}
122
- @_loweredHeaders = {}
123
- @_mimeOverride = null
124
- @_setReadyState XMLHttpRequest.OPENED
125
- @_request = null
126
- @_response = null
127
- @status = 0
128
- @statusText = ''
129
- @_responseParts = []
130
- @_responseHeaders = null
131
- @_loadedBytes = 0
132
- @_totalBytes = 0
133
- @_lengthComputable = false
134
- undefined
135
-
136
- # Appends a header to the list of author request headers.
137
- #
138
- # @param {String} name the HTTP header name
139
- # @param {String} value the HTTP header value
140
- # @return {undefined} undefined
141
- # @throw {InvalidStateError} readyState is not OPENED
142
- # @throw {SyntaxError} name is not a valid HTTP header name or value is not
143
- # a valid HTTP header value
144
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-setrequestheader()-method
145
- setRequestHeader: (name, value) ->
146
- unless @readyState is XMLHttpRequest.OPENED
147
- throw new InvalidStateError "XHR readyState must be OPENED"
148
-
149
- loweredName = name.toLowerCase()
150
- if @_restrictedHeaders[loweredName] or /^sec\-/.test(loweredName) or
151
- /^proxy-/.test(loweredName)
152
- console.warn "Refused to set unsafe header \"#{name}\""
153
- return undefined
154
-
155
- value = value.toString()
156
- if loweredName of @_loweredHeaders
157
- # Combine value with the existing header value.
158
- name = @_loweredHeaders[loweredName]
159
- @_headers[name] = @_headers[name] + ', ' + value
160
- else
161
- # New header.
162
- @_loweredHeaders[loweredName] = name
163
- @_headers[name] = value
164
-
165
- undefined
166
-
167
- # Initiates the request.
168
- #
169
- # @param {?String, ?ArrayBufferView} data the data to be sent; ignored for
170
- # GET and HEAD requests
171
- # @return {undefined} undefined
172
- # @throw {InvalidStateError} readyState is not OPENED
173
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-send()-method
174
- send: (data) ->
175
- unless @readyState is XMLHttpRequest.OPENED
176
- throw new InvalidStateError "XHR readyState must be OPENED"
177
-
178
- if @_request
179
- throw new InvalidStateError "send() already called"
180
-
181
- switch @_url.protocol
182
- when 'file:'
183
- @_sendFile data
184
- when 'http:', 'https:'
185
- @_sendHttp data
186
- else
187
- throw new NetworkError "Unsupported protocol #{@_url.protocol}"
188
-
189
- undefined
190
-
191
- # Cancels the network activity performed by this request.
192
- #
193
- # @return {undefined} undefined
194
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-abort()-method
195
- abort: ->
196
- return unless @_request
197
-
198
- @_request.abort()
199
- @_setError()
200
- @_dispatchProgress 'abort'
201
- @_dispatchProgress 'loadend'
202
- undefined
203
-
204
- # Returns a header value in the HTTP response for this XHR.
205
- #
206
- # @param {String} name case-insensitive HTTP header name
207
- # @return {?String} value the value of the header whose name matches the
208
- # given name, or null if there is no such header
209
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-getresponseheader()-method
210
- getResponseHeader: (name) ->
211
- return null unless @_responseHeaders
212
-
213
- loweredName = name.toLowerCase()
214
- if loweredName of @_responseHeaders
215
- @_responseHeaders[loweredName]
216
- else
217
- null
218
-
219
- # Returns all the HTTP headers in this XHR's response.
220
- #
221
- # @return {String} header lines separated by CR LF, where each header line
222
- # has the name and value separated by a ": " (colon, space); the empty
223
- # string is returned if the headers are not available
224
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-getallresponseheaders()-method
225
- getAllResponseHeaders: ->
226
- return '' unless @_responseHeaders
227
-
228
- lines = ("#{name}: #{value}" for name, value of @_responseHeaders)
229
- lines.join "\r\n"
230
-
231
- # Overrides the Content-Type
232
- #
233
- # @return {undefined} undefined
234
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-overridemimetype()-method
235
- overrideMimeType: (newMimeType) ->
236
- if @readyState is XMLHttpRequest.LOADING or
237
- @readyState is XMLHttpRequest.DONE
238
- throw new InvalidStateError(
239
- "overrideMimeType() not allowed in LOADING or DONE")
240
-
241
- @_mimeOverride = newMimeType.toLowerCase()
242
- undefined
243
-
244
- # Network configuration not exposed in the XHR API.
245
- #
246
- # Although the XMLHttpRequest specification calls itself "ECMAScript HTTP",
247
- # it assumes that requests are always performed in the context of a browser
248
- # application, where some network parameters are set by the browser user and
249
- # should not be modified by Web applications. This API provides access to
250
- # these network parameters.
251
- #
252
- # NOTE: this is not in the XMLHttpRequest API, and will not work in
253
- # browsers. It is a stable node-xhr2 API.
254
- #
255
- # @param {Object} options one or more of the options below
256
- # @option options {?http.Agent} httpAgent the value for the nodejsHttpAgent
257
- # property (the agent used for HTTP requests)
258
- # @option options {?https.Agent} httpsAgent the value for the
259
- # nodejsHttpsAgent property (the agent used for HTTPS requests)
260
- # @return {undefined} undefined
261
- nodejsSet: (options) ->
262
- if 'httpAgent' of options
263
- @nodejsHttpAgent = options.httpAgent
264
- if 'httpsAgent' of options
265
- @nodejsHttpsAgent = options.httpsAgent
266
- if 'baseUrl' of options
267
- baseUrl = options.baseUrl
268
- unless baseUrl is null
269
- parsedUrl = url.parse baseUrl, false, true
270
- unless parsedUrl.protocol
271
- throw new SyntaxError("baseUrl must be an absolute URL")
272
- @nodejsBaseUrl = baseUrl
273
-
274
- undefined
275
-
276
- # Default settings for the network configuration not exposed in the XHR API.
277
- #
278
- # NOTE: this is not in the XMLHttpRequest API, and will not work in
279
- # browsers. It is a stable node-xhr2 API.
280
- #
281
- # @param {Object} options one or more of the options below
282
- # @option options {?http.Agent} httpAgent the default value for the
283
- # nodejsHttpAgent property (the agent used for HTTP requests)
284
- # @option options {https.Agent} httpsAgent the default value for the
285
- # nodejsHttpsAgent property (the agent used for HTTPS requests)
286
- # @return {undefined} undefined
287
- # @see XMLHttpRequest.nodejsSet
288
- @nodejsSet: (options) ->
289
- # "this" will be set to XMLHttpRequest.prototype, so the instance nodejsSet
290
- # operates on default property values.
291
- XMLHttpRequest::nodejsSet options
292
-
293
- undefined
294
-
295
- # readyState value before XMLHttpRequest#open() is called
296
- UNSENT: 0
297
- # readyState value before XMLHttpRequest#open() is called
298
- @UNSENT: 0
299
-
300
- # readyState value after XMLHttpRequest#open() is called, and before
301
- # XMLHttpRequest#send() is called; XMLHttpRequest#setRequestHeader() can be
302
- # called in this state
303
- OPENED: 1
304
- # readyState value after XMLHttpRequest#open() is called, and before
305
- # XMLHttpRequest#send() is called; XMLHttpRequest#setRequestHeader() can be
306
- # called in this state
307
- @OPENED: 1
308
-
309
- # readyState value after redirects have been followed and the HTTP headers of
310
- # the final response have been received
311
- HEADERS_RECEIVED: 2
312
- # readyState value after redirects have been followed and the HTTP headers of
313
- # the final response have been received
314
- @HEADERS_RECEIVED: 2
315
-
316
- # readyState value when the response entity body is being received
317
- LOADING: 3
318
- # readyState value when the response entity body is being received
319
- @LOADING: 3
320
-
321
- # readyState value after the request has been completely processed
322
- DONE: 4
323
- # readyState value after the request has been completely processed
324
- @DONE: 4
325
-
326
- # @property {http.Agent} the agent option passed to HTTP requests
327
- #
328
- # NOTE: this is not in the XMLHttpRequest API, and will not work in browsers.
329
- # It is a stable node-xhr2 API that is useful for testing & going through
330
- # web-proxies.
331
- nodejsHttpAgent: http.globalAgent
332
-
333
- # @property {https.Agent} the agent option passed to HTTPS requests
334
- #
335
- # NOTE: this is not in the XMLHttpRequest API, and will not work in browsers.
336
- # It is a stable node-xhr2 API that is useful for testing & going through
337
- # web-proxies.
338
- nodejsHttpsAgent: https.globalAgent
339
-
340
- # @property {String} the base URL that relative URLs get resolved to
341
- #
342
- # NOTE: this is not in the XMLHttpRequest API, and will not work in browsers.
343
- # Its browser equivalent is the base URL of the document associated with the
344
- # Window object. It is a stable node-xhr2 API provided for libraries such as
345
- # Angular Universal.
346
- nodejsBaseUrl: null
347
-
348
- # HTTP methods that are disallowed in the XHR spec.
349
- #
350
- # @private
351
- # @see Step 6 in http://www.w3.org/TR/XMLHttpRequest/#the-open()-method
352
- _restrictedMethods:
353
- CONNECT: true
354
- TRACE: true
355
- TRACK: true
356
-
357
- # HTTP request headers that are disallowed in the XHR spec.
358
- #
359
- # @private
360
- # @see Step 5 in
361
- # http://www.w3.org/TR/XMLHttpRequest/#the-setrequestheader()-method
362
- _restrictedHeaders:
363
- 'accept-charset': true
364
- 'accept-encoding': true
365
- 'access-control-request-headers': true
366
- 'access-control-request-method': true
367
- connection: true
368
- 'content-length': true
369
- cookie: true
370
- cookie2: true
371
- date: true
372
- dnt: true
373
- expect: true
374
- host: true
375
- 'keep-alive': true
376
- origin: true
377
- referer: true
378
- te: true
379
- trailer: true
380
- 'transfer-encoding': true
381
- upgrade: true
382
- via: true
383
-
384
- # HTTP response headers that should not be exposed according to the XHR spec.
385
- #
386
- # @private
387
- # @see Step 3 in
388
- # http://www.w3.org/TR/XMLHttpRequest/#the-getresponseheader()-method
389
- _privateHeaders:
390
- 'set-cookie': true
391
- 'set-cookie2': true
392
-
393
- # The default value of the User-Agent header.
394
- _userAgent: "Mozilla/5.0 (#{os.type()} #{os.arch()}) " +
395
- "node.js/#{process.versions.node} v8/#{process.versions.v8}"
396
-
397
- # Sets the readyState property and fires the readystatechange event.
398
- #
399
- # @private
400
- # @param {Number} newReadyState the new value of readyState
401
- # @return {undefined} undefined
402
- _setReadyState: (newReadyState) ->
403
- @readyState = newReadyState
404
- event = new ProgressEvent 'readystatechange'
405
- @dispatchEvent event
406
- undefined
407
-
408
- # XMLHttpRequest#send() implementation for the file: protocol.
409
- #
410
- # @private
411
- _sendFile: ->
412
- unless @_url.method is 'GET'
413
- throw new NetworkError 'The file protocol only supports GET'
414
-
415
- throw new Error "Protocol file: not implemented"
416
-
417
- # XMLHttpRequest#send() implementation for the http: and https: protocols.
418
- #
419
- # @private
420
- # This method sets the instance variables and calls _sendHxxpRequest(), which
421
- # is responsible for building a node.js request and firing it off. The code
422
- # in _sendHxxpRequest() is separated off so it can be reused when handling
423
- # redirects.
424
- #
425
- # @see http://www.w3.org/TR/XMLHttpRequest/#infrastructure-for-the-send()-method
426
- _sendHttp: (data) ->
427
- if @_sync
428
- throw new Error "Synchronous XHR processing not implemented"
429
-
430
- if data? and (@_method is 'GET' or @_method is 'HEAD')
431
- console.warn "Discarding entity body for #{@_method} requests"
432
- data = null
433
- else
434
- # Send Content-Length: 0
435
- data or= ''
436
-
437
- # NOTE: this is called before finalizeHeaders so that the uploader can
438
- # figure out Content-Length and Content-Type.
439
- @upload._setData data
440
- @_finalizeHeaders()
441
-
442
- @_sendHxxpRequest()
443
- undefined
444
-
445
- # Sets up and fires off a HTTP/HTTPS request using the node.js API.
446
- #
447
- # @private
448
- # This method contains the bulk of the XMLHttpRequest#send() implementation,
449
- # and is also used to issue new HTTP requests when handling HTTP redirects.
450
- #
451
- # @see http://www.w3.org/TR/XMLHttpRequest/#infrastructure-for-the-send()-method
452
- _sendHxxpRequest: ->
453
- if @_url.protocol is 'http:'
454
- hxxp = http
455
- agent = @nodejsHttpAgent
456
- else
457
- hxxp = https
458
- agent = @nodejsHttpsAgent
459
-
460
- request = hxxp.request
461
- hostname: @_url.hostname, port: @_url.port, path: @_url.path,
462
- auth: @_url.auth, method: @_method, headers: @_headers, agent: agent
463
- @_request = request
464
- if @timeout
465
- request.setTimeout @timeout, => @_onHttpTimeout request
466
- request.on 'response', (response) => @_onHttpResponse request, response
467
- request.on 'error', (error) => @_onHttpRequestError request, error
468
- @upload._startUpload request
469
- if @_request is request # An http error might have already fired.
470
- @_dispatchProgress 'loadstart'
471
-
472
- undefined
473
-
474
- # Fills in the restricted HTTP headers with default values.
475
- #
476
- # This is called right before the HTTP request is sent off.
477
- #
478
- # @private
479
- # @return {undefined} undefined
480
- _finalizeHeaders: ->
481
- @_headers['Connection'] = 'keep-alive'
482
- @_headers['Host'] = @_url.host
483
- if @_anonymous
484
- @_headers['Referer'] = 'about:blank'
485
- @_headers['User-Agent'] ||= @_userAgent
486
- @upload._finalizeHeaders @_headers, @_loweredHeaders
487
- undefined
488
-
489
-
490
- # Called when the headers of an HTTP response have been received.
491
- #
492
- # @private
493
- # @param {http.ClientRequest} request the node.js ClientRequest instance that
494
- # produced this response
495
- # @param {http.ClientResponse} response the node.js ClientResponse instance
496
- # passed to
497
- _onHttpResponse: (request, response) ->
498
- return unless @_request is request
499
-
500
- # Transparent redirection handling.
501
- switch response.statusCode
502
- when 301, 302, 303, 307, 308
503
- @_url = @_parseUrl response.headers['location']
504
- @_method = 'GET'
505
- if 'content-type' of @_loweredHeaders
506
- delete @_headers[@_loweredHeaders['content-type']]
507
- delete @_loweredHeaders['content-type']
508
- # XMLHttpRequestUpload#_finalizeHeaders() sets Content-Type directly.
509
- if 'Content-Type' of @_headers
510
- delete @_headers['Content-Type']
511
- # Restricted headers can't be set by the user, no need to check
512
- # loweredHeaders.
513
- delete @_headers['Content-Length']
514
-
515
- @upload._reset()
516
- @_finalizeHeaders()
517
- @_sendHxxpRequest()
518
- return
519
-
520
- @_response = response
521
- @_response.on 'data', (data) => @_onHttpResponseData response, data
522
- @_response.on 'end', => @_onHttpResponseEnd response
523
- @_response.on 'close', => @_onHttpResponseClose response
524
-
525
- @responseURL = @_url.href.split('#')[0]
526
- @status = @_response.statusCode
527
- @statusText = http.STATUS_CODES[@status]
528
- @_parseResponseHeaders response
529
-
530
- if lengthString = @_responseHeaders['content-length']
531
- @_totalBytes = parseInt(lengthString)
532
- @_lengthComputable = true
533
- else
534
- @_lengthComputable = false
535
-
536
- @_setReadyState XMLHttpRequest.HEADERS_RECEIVED
537
-
538
- # Called when some data has been received on a HTTP connection.
539
- #
540
- # @private
541
- # @param {http.ClientResponse} response the node.js ClientResponse instance
542
- # that fired this event
543
- # @param {String, Buffer} data the data that has been received
544
- _onHttpResponseData: (response, data) ->
545
- return unless @_response is response
546
-
547
- @_responseParts.push data
548
- @_loadedBytes += data.length
549
-
550
- if @readyState isnt XMLHttpRequest.LOADING
551
- @_setReadyState XMLHttpRequest.LOADING
552
- @_dispatchProgress 'progress'
553
-
554
- # Called when the HTTP request finished processing.
555
- #
556
- # @private
557
- # @param {http.ClientResponse} response the node.js ClientResponse instance
558
- # that fired this event
559
- _onHttpResponseEnd: (response) ->
560
- return unless @_response is response
561
-
562
- @_parseResponse()
563
-
564
- @_request = null
565
- @_response = null
566
- @_setReadyState XMLHttpRequest.DONE
567
- @_dispatchProgress 'load'
568
- @_dispatchProgress 'loadend'
569
-
570
- # Called when the underlying HTTP connection was closed prematurely.
571
- #
572
- # If this method is called, it will be called after or instead of
573
- # onHttpResponseEnd.
574
- #
575
- # @private
576
- # @param {http.ClientResponse} response the node.js ClientResponse instance
577
- # that fired this event
578
- _onHttpResponseClose: (response) ->
579
- return unless @_response is response
580
-
581
- request = @_request
582
- @_setError()
583
- request.abort()
584
- @_setReadyState XMLHttpRequest.DONE
585
- @_dispatchProgress 'error'
586
- @_dispatchProgress 'loadend'
587
-
588
- # Called when the timeout set on the HTTP socket expires.
589
- #
590
- # @private
591
- # @param {http.ClientRequest} request the node.js ClientRequest instance that
592
- # fired this event
593
- _onHttpTimeout: (request) ->
594
- return unless @_request is request
595
-
596
- @_setError()
597
- request.abort()
598
- @_setReadyState XMLHttpRequest.DONE
599
- @_dispatchProgress 'timeout'
600
- @_dispatchProgress 'loadend'
601
-
602
- # Called when something wrong happens on the HTTP socket
603
- #
604
- # @private
605
- # @param {http.ClientRequest} request the node.js ClientRequest instance that
606
- # fired this event
607
- # @param {Error} error emitted exception
608
- _onHttpRequestError: (request, error) ->
609
- return unless @_request is request
610
-
611
- @_setError()
612
- request.abort()
613
- @_setReadyState XMLHttpRequest.DONE
614
- @_dispatchProgress 'error'
615
- @_dispatchProgress 'loadend'
616
-
617
- # Fires an XHR progress event.
618
- #
619
- # @private
620
- # @param {String} eventType one of the XHR progress event types, such as
621
- # 'load' and 'progress'
622
- _dispatchProgress: (eventType) ->
623
- event = new ProgressEvent eventType
624
- event.lengthComputable = @_lengthComputable
625
- event.loaded = @_loadedBytes
626
- event.total = @_totalBytes
627
- @dispatchEvent event
628
- undefined
629
-
630
- # Sets up the XHR to reflect the fact that an error has occurred.
631
- #
632
- # The possible errors are a network error, a timeout, or an abort.
633
- #
634
- # @private
635
- _setError: ->
636
- @_request = null
637
- @_response = null
638
- @_responseHeaders = null
639
- @_responseParts = null
640
- undefined
641
-
642
- # Parses a request URL string.
643
- #
644
- # @private
645
- # This method is a thin wrapper around url.parse() that normalizes HTTP
646
- # user/password credentials. It is used to parse the URL string passed to
647
- # XMLHttpRequest#open() and the URLs in the Location headers of HTTP redirect
648
- # responses.
649
- #
650
- # @param {String} urlString the URL to be parsed
651
- # @return {Object} parsed URL
652
- _parseUrl: (urlString) ->
653
- if @nodejsBaseUrl is null
654
- absoluteUrlString = urlString
655
- else
656
- absoluteUrlString = url.resolve @nodejsBaseUrl, urlString
657
-
658
- xhrUrl = url.parse absoluteUrlString, false, true
659
- xhrUrl.hash = null
660
- if xhrUrl.auth and (user? or password?)
661
- index = xhrUrl.auth.indexOf ':'
662
- if index is -1
663
- user = xhrUrl.auth unless user
664
- else
665
- user = xhrUrl.substring(0, index) unless user
666
- password = xhrUrl.substring(index + 1) unless password
667
- if user or password
668
- xhrUrl.auth = "#{user}:#{password}"
669
- xhrUrl
670
-
671
- # Reads the headers from a node.js ClientResponse instance.
672
- #
673
- # @private
674
- # @param {http.ClientResponse} response the response whose headers will be
675
- # imported into this XMLHttpRequest's state
676
- # @return {undefined} undefined
677
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-getresponseheader()-method
678
- # @see http://www.w3.org/TR/XMLHttpRequest/#the-getallresponseheaders()-method
679
- _parseResponseHeaders: (response) ->
680
- @_responseHeaders = {}
681
- for name, value of response.headers
682
- loweredName = name.toLowerCase()
683
- continue if @_privateHeaders[loweredName]
684
- if @_mimeOverride isnt null and loweredName is 'content-type'
685
- value = @_mimeOverride
686
- @_responseHeaders[loweredName] = value
687
-
688
- if @_mimeOverride isnt null and !('content-type' of @_responseHeaders)
689
- @_responseHeaders['content-type'] = @_mimeOverride
690
- undefined
691
-
692
- # Sets the response and responseText properties when an XHR completes.
693
- #
694
- # @private
695
- # @return {undefined} undefined
696
- _parseResponse: ->
697
- if Buffer.concat
698
- buffer = Buffer.concat @_responseParts
699
- else
700
- # node 0.6
701
- buffer = @_concatBuffers @_responseParts
702
- @_responseParts = null
703
-
704
- switch @responseType
705
- when 'text'
706
- @_parseTextResponse buffer
707
- when 'json'
708
- @responseText = null
709
- try
710
- @response = JSON.parse buffer.toString('utf-8')
711
- catch jsonError
712
- @response = null
713
- when 'buffer'
714
- @responseText = null
715
- @response = buffer
716
- when 'arraybuffer'
717
- @responseText = null
718
- arrayBuffer = new ArrayBuffer buffer.length
719
- view = new Uint8Array arrayBuffer
720
- view[i] = buffer[i] for i in [0...buffer.length]
721
- @response = arrayBuffer
722
- else
723
- # TODO(pwnall): content-base detection
724
- @_parseTextResponse buffer
725
- undefined
726
-
727
- # Sets response and responseText for a 'text' response type.
728
- #
729
- # @private
730
- # @param {Buffer} buffer the node.js Buffer containing the binary response
731
- # @return {undefined} undefined
732
- _parseTextResponse: (buffer) ->
733
- try
734
- @responseText = buffer.toString @_parseResponseEncoding()
735
- catch e
736
- # Unknown encoding.
737
- @responseText = buffer.toString 'binary'
738
-
739
- @response = @responseText
740
- undefined
741
-
742
- # Figures out the string encoding of the XHR's response.
743
- #
744
- # This is called to determine the encoding when responseText is set.
745
- #
746
- # @private
747
- # @return {String} a string encoding, e.g. 'utf-8'
748
- _parseResponseEncoding: ->
749
- encoding = null
750
- if contentType = @_responseHeaders['content-type']
751
- if match = /\;\s*charset\=(.*)$/.exec contentType
752
- return match[1]
753
- 'utf-8'
754
-
755
- # Buffer.concat implementation for node 0.6.
756
- #
757
- # @private
758
- # @param {Array<Buffer>} buffers the buffers whose contents will be merged
759
- # @return {Buffer} same as Buffer.concat(buffers) in node 0.8 and above
760
- _concatBuffers: (buffers) ->
761
- if buffers.length is 0
762
- return Buffer.alloc 0
763
- if buffers.length is 1
764
- return buffers[0]
765
-
766
- length = 0
767
- length += buffer.length for buffer in buffers
768
- target = Buffer.alloc length
769
- length = 0
770
- for buffer in buffers
771
- buffer.copy target, length
772
- length += buffer.length
773
- target
774
-
775
- # XMLHttpRequest is the result of require('node-xhr2').
776
- module.exports = XMLHttpRequest
777
-
778
- # Make node-xhr2 work as a drop-in replacement for libraries that promote the
779
- # following usage pattern:
780
- # var XMLHttpRequest = require('xhr-library-name').XMLHttpRequest
781
- XMLHttpRequest.XMLHttpRequest = XMLHttpRequest