pingerchips-js 1.0.1-a → 2.0.0

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 (455) hide show
  1. package/README.md +53 -655
  2. package/index.js +169 -0
  3. package/package.json +20 -59
  4. package/.editorconfig +0 -14
  5. package/.github/ISSUE_TEMPLATE.md +0 -11
  6. package/.github/PULL_REQUEST_TEMPLATE.md +0 -14
  7. package/.github/dependabot.yml +0 -14
  8. package/.github/stale.yml +0 -26
  9. package/.github/workflows/release.yml +0 -112
  10. package/.github/workflows/release_pr.yml +0 -43
  11. package/.github/workflows/run-tests.yml +0 -62
  12. package/.gitmodules +0 -3
  13. package/.prettierrc +0 -2
  14. package/CHANGELOG.md +0 -924
  15. package/LICENCE +0 -19
  16. package/Makefile +0 -78
  17. package/bower.json +0 -28
  18. package/dist/node/pingerchips.js +0 -10870
  19. package/dist/node/pingerchips.js.map +0 -1
  20. package/dist/node/pusher.js +0 -10870
  21. package/dist/node/pusher.js.map +0 -1
  22. package/dist/react-native/pingerchips.js +0 -9
  23. package/dist/react-native/pingerchips.js.map +0 -1
  24. package/dist/react-native/pusher.js +0 -9
  25. package/dist/react-native/pusher.js.map +0 -1
  26. package/dist/web/json2.js +0 -486
  27. package/dist/web/json2.min.js +0 -1
  28. package/dist/web/pingerchips-with-encryption.js +0 -7009
  29. package/dist/web/pingerchips-with-encryption.js.map +0 -1
  30. package/dist/web/pingerchips-with-encryption.min.js +0 -9
  31. package/dist/web/pingerchips-with-encryption.min.js.map +0 -1
  32. package/dist/web/pingerchips.js +0 -4587
  33. package/dist/web/pingerchips.js.map +0 -1
  34. package/dist/web/pingerchips.min.js +0 -9
  35. package/dist/web/pingerchips.min.js.map +0 -1
  36. package/dist/web/pusher-with-encryption.js +0 -7009
  37. package/dist/web/pusher-with-encryption.js.map +0 -1
  38. package/dist/web/pusher-with-encryption.min.js +0 -9
  39. package/dist/web/pusher-with-encryption.min.js.map +0 -1
  40. package/dist/web/pusher.js +0 -4587
  41. package/dist/web/pusher.js.map +0 -1
  42. package/dist/web/pusher.min.js +0 -9
  43. package/dist/web/pusher.min.js.map +0 -1
  44. package/dist/web/sockjs.js +0 -2435
  45. package/dist/web/sockjs.min.js +0 -89
  46. package/dist/worker/pingerchips-with-encryption.worker.js +0 -6622
  47. package/dist/worker/pingerchips-with-encryption.worker.js.map +0 -1
  48. package/dist/worker/pingerchips-with-encryption.worker.min.js +0 -9
  49. package/dist/worker/pingerchips-with-encryption.worker.min.js.map +0 -1
  50. package/dist/worker/pingerchips.worker.js +0 -4200
  51. package/dist/worker/pingerchips.worker.js.map +0 -1
  52. package/dist/worker/pingerchips.worker.min.js +0 -9
  53. package/dist/worker/pingerchips.worker.min.js.map +0 -1
  54. package/dist/worker/pusher-with-encryption.worker.js +0 -6622
  55. package/dist/worker/pusher-with-encryption.worker.js.map +0 -1
  56. package/dist/worker/pusher-with-encryption.worker.min.js +0 -9
  57. package/dist/worker/pusher-with-encryption.worker.min.js.map +0 -1
  58. package/dist/worker/pusher.worker.js +0 -4200
  59. package/dist/worker/pusher.worker.js.map +0 -1
  60. package/dist/worker/pusher.worker.min.js +0 -9
  61. package/dist/worker/pusher.worker.min.js.map +0 -1
  62. package/index.d.ts +0 -29
  63. package/integration_tests_server/index.js +0 -176
  64. package/integration_tests_server/package-lock.json +0 -1177
  65. package/integration_tests_server/package.json +0 -15
  66. package/node.js +0 -1
  67. package/pusher-with-encryption/index.js +0 -1
  68. package/react-native/index.d.ts +0 -29
  69. package/react-native/index.js +0 -1
  70. package/spec/config/jasmine/helpers/reporter.js +0 -14
  71. package/spec/config/jasmine/integration.json +0 -13
  72. package/spec/config/jasmine/unit.json +0 -13
  73. package/spec/config/jasmine/webpack.integration.js +0 -33
  74. package/spec/config/jasmine/webpack.unit.js +0 -30
  75. package/spec/config/karma/available_browsers.json +0 -4957
  76. package/spec/config/karma/config.ci.js +0 -25
  77. package/spec/config/karma/config.common.js +0 -50
  78. package/spec/config/karma/config.integration.js +0 -26
  79. package/spec/config/karma/config.unit.js +0 -10
  80. package/spec/config/karma/config.worker.js +0 -34
  81. package/spec/config/karma/integration.js +0 -24
  82. package/spec/config/karma/unit.js +0 -20
  83. package/spec/javascripts/helpers/mocks.js +0 -274
  84. package/spec/javascripts/helpers/node/integration.js +0 -33
  85. package/spec/javascripts/helpers/node/mock-dom-dependencies.ts +0 -1
  86. package/spec/javascripts/helpers/pusher_integration.js +0 -1
  87. package/spec/javascripts/helpers/pusher_integration_class.ts +0 -11
  88. package/spec/javascripts/helpers/timers/promises.js +0 -9
  89. package/spec/javascripts/helpers/waitsFor.js +0 -37
  90. package/spec/javascripts/helpers/web/integration.js +0 -44
  91. package/spec/javascripts/helpers/worker/mock-dom-dependencies.js +0 -1
  92. package/spec/javascripts/integration/core/cluster_config_spec.js +0 -153
  93. package/spec/javascripts/integration/core/falling_back_spec.js +0 -195
  94. package/spec/javascripts/integration/core/pusher_spec/index.js +0 -68
  95. package/spec/javascripts/integration/core/pusher_spec/test_builder.js +0 -715
  96. package/spec/javascripts/integration/core/timeout_configuration_spec.js +0 -200
  97. package/spec/javascripts/integration/core/transport_lists_spec.js +0 -103
  98. package/spec/javascripts/integration/index.node.js +0 -12
  99. package/spec/javascripts/integration/index.web.js +0 -63
  100. package/spec/javascripts/integration/index.worker.js +0 -13
  101. package/spec/javascripts/integration/web/dom/jsonp_spec.js +0 -97
  102. package/spec/javascripts/integration/web/dom/script_request_spec.js +0 -90
  103. package/spec/javascripts/polyfills/index.js +0 -105
  104. package/spec/javascripts/unit/core/channels/channel_spec.js +0 -355
  105. package/spec/javascripts/unit/core/channels/channels_spec.js +0 -94
  106. package/spec/javascripts/unit/core/channels/encrypted_channel_spec.js +0 -343
  107. package/spec/javascripts/unit/core/channels/presence_channel_spec.js +0 -553
  108. package/spec/javascripts/unit/core/channels/private_channel_spec.js +0 -182
  109. package/spec/javascripts/unit/core/config_spec.js +0 -507
  110. package/spec/javascripts/unit/core/connection/connection_manager_spec.js +0 -656
  111. package/spec/javascripts/unit/core/connection/connection_spec.js +0 -286
  112. package/spec/javascripts/unit/core/connection/handshake_spec.js +0 -160
  113. package/spec/javascripts/unit/core/connection/protocol_spec.js +0 -420
  114. package/spec/javascripts/unit/core/defaults_spec.js +0 -26
  115. package/spec/javascripts/unit/core/events_dispatcher_spec.js +0 -385
  116. package/spec/javascripts/unit/core/http/http_polling_socket_spec.js +0 -60
  117. package/spec/javascripts/unit/core/http/http_request_spec.js +0 -185
  118. package/spec/javascripts/unit/core/http/http_socket_spec.js +0 -370
  119. package/spec/javascripts/unit/core/http/http_streaming_socket_spec.js +0 -56
  120. package/spec/javascripts/unit/core/http/http_xhr_request_spec.js +0 -164
  121. package/spec/javascripts/unit/core/logger_spec.js +0 -133
  122. package/spec/javascripts/unit/core/pusher_spec.js +0 -613
  123. package/spec/javascripts/unit/core/pusher_with_encryption_spec.js +0 -18
  124. package/spec/javascripts/unit/core/strategies/best_connected_ever_strategy_spec.js +0 -104
  125. package/spec/javascripts/unit/core/strategies/delayed_strategy_spec.js +0 -95
  126. package/spec/javascripts/unit/core/strategies/first_connected_strategy_spec.js +0 -68
  127. package/spec/javascripts/unit/core/strategies/if_strategy_spec.js +0 -165
  128. package/spec/javascripts/unit/core/strategies/sequential_strategy_spec.js +0 -213
  129. package/spec/javascripts/unit/core/strategies/transport_strategy_spec.js +0 -250
  130. package/spec/javascripts/unit/core/strategies/websocket_prioritized_cached_strategy_spec.js +0 -400
  131. package/spec/javascripts/unit/core/timeline/timeline_spec.js +0 -153
  132. package/spec/javascripts/unit/core/transports/assistant_to_the_transport_manager_spec.js +0 -223
  133. package/spec/javascripts/unit/core/transports/hosts_and_ports_spec.js +0 -85
  134. package/spec/javascripts/unit/core/transports/transport_connection_spec.js +0 -585
  135. package/spec/javascripts/unit/core/transports/transport_manager_spec.js +0 -64
  136. package/spec/javascripts/unit/core/user_spec.js +0 -303
  137. package/spec/javascripts/unit/core/utils/periodic_timer_spec.js +0 -74
  138. package/spec/javascripts/unit/core/utils/timers_spec.js +0 -157
  139. package/spec/javascripts/unit/core/utils/url_store_spec.js +0 -14
  140. package/spec/javascripts/unit/core/watchlist_spec.js +0 -48
  141. package/spec/javascripts/unit/core_with_runtime/auth/channel_authorizer_spec.js +0 -137
  142. package/spec/javascripts/unit/core_with_runtime/auth/deprecated_channel_authorizer_spec.js +0 -48
  143. package/spec/javascripts/unit/core_with_runtime/auth/user_authorizer_spec.js +0 -128
  144. package/spec/javascripts/unit/core_with_runtime/readme.md +0 -5
  145. package/spec/javascripts/unit/index.node.js +0 -11
  146. package/spec/javascripts/unit/index.web.js +0 -12
  147. package/spec/javascripts/unit/index.worker.js +0 -11
  148. package/spec/javascripts/unit/isomorphic/transports/hosts_and_ports_spec.js +0 -82
  149. package/spec/javascripts/unit/isomorphic/transports/transports_spec.js +0 -202
  150. package/spec/javascripts/unit/node/timeline_sender_spec.js +0 -83
  151. package/spec/javascripts/unit/web/dom/dependency_loader_spec.js +0 -249
  152. package/spec/javascripts/unit/web/dom/jsonp_request_spec.js +0 -130
  153. package/spec/javascripts/unit/web/dom/script_receiver_factory_spec.js +0 -68
  154. package/spec/javascripts/unit/web/http/http_xdomain_request_spec.js +0 -222
  155. package/spec/javascripts/unit/web/pusher_authorizer_spec.js +0 -64
  156. package/spec/javascripts/unit/web/timeline/timeline_sender_spec.js +0 -131
  157. package/spec/javascripts/unit/web/transports/hosts_and_ports_spec.js +0 -127
  158. package/spec/javascripts/unit/web/transports/transports_spec.js +0 -444
  159. package/spec/javascripts/unit/worker/channel_authorizer_spec.js +0 -156
  160. package/spec/javascripts/unit/worker/timeline_sender_spec.js +0 -76
  161. package/src/core/auth/auth_transports.ts +0 -18
  162. package/src/core/auth/channel_authorizer.ts +0 -64
  163. package/src/core/auth/deprecated_channel_authorizer.ts +0 -58
  164. package/src/core/auth/options.ts +0 -78
  165. package/src/core/auth/user_authenticator.ts +0 -62
  166. package/src/core/base64.ts +0 -49
  167. package/src/core/channels/channel.ts +0 -163
  168. package/src/core/channels/channel_table.ts +0 -7
  169. package/src/core/channels/channels.ts +0 -85
  170. package/src/core/channels/encrypted_channel.ts +0 -149
  171. package/src/core/channels/members.ts +0 -80
  172. package/src/core/channels/metadata.ts +0 -5
  173. package/src/core/channels/presence_channel.ts +0 -113
  174. package/src/core/channels/private_channel.ts +0 -25
  175. package/src/core/config.ts +0 -189
  176. package/src/core/connection/callbacks.ts +0 -21
  177. package/src/core/connection/connection.ts +0 -160
  178. package/src/core/connection/connection_manager.ts +0 -371
  179. package/src/core/connection/connection_manager_options.ts +0 -14
  180. package/src/core/connection/handshake/handshake_payload.ts +0 -10
  181. package/src/core/connection/handshake/index.ts +0 -90
  182. package/src/core/connection/protocol/action.ts +0 -8
  183. package/src/core/connection/protocol/message-types.ts +0 -8
  184. package/src/core/connection/protocol/protocol.ts +0 -154
  185. package/src/core/defaults.ts +0 -66
  186. package/src/core/errors.ts +0 -69
  187. package/src/core/events/callback.ts +0 -6
  188. package/src/core/events/callback_registry.ts +0 -75
  189. package/src/core/events/callback_table.ts +0 -7
  190. package/src/core/events/dispatcher.ts +0 -84
  191. package/src/core/http/ajax.ts +0 -24
  192. package/src/core/http/http_factory.ts +0 -16
  193. package/src/core/http/http_polling_socket.ts +0 -24
  194. package/src/core/http/http_request.ts +0 -81
  195. package/src/core/http/http_socket.ts +0 -220
  196. package/src/core/http/http_streaming_socket.ts +0 -19
  197. package/src/core/http/request_hooks.ts +0 -9
  198. package/src/core/http/socket_hooks.ts +0 -11
  199. package/src/core/http/state.ts +0 -7
  200. package/src/core/http/url_location.ts +0 -6
  201. package/src/core/logger.ts +0 -53
  202. package/src/core/options.ts +0 -59
  203. package/src/core/pingerchips-licence.js +0 -7
  204. package/src/core/pingerchips-with-encryption.js +0 -1
  205. package/src/core/pingerchips-with-encryption.ts +0 -14
  206. package/src/core/pingerchips.js +0 -2
  207. package/src/core/pingerchips.ts +0 -249
  208. package/src/core/reachability.ts +0 -7
  209. package/src/core/socket.ts +0 -14
  210. package/src/core/strategies/best_connected_ever_strategy.ts +0 -81
  211. package/src/core/strategies/delayed_strategy.ts +0 -48
  212. package/src/core/strategies/first_connected_strategy.ts +0 -28
  213. package/src/core/strategies/if_strategy.ts +0 -34
  214. package/src/core/strategies/sequential_strategy.ts +0 -129
  215. package/src/core/strategies/strategy.ts +0 -8
  216. package/src/core/strategies/strategy_builder.ts +0 -67
  217. package/src/core/strategies/strategy_options.ts +0 -18
  218. package/src/core/strategies/strategy_runner.ts +0 -6
  219. package/src/core/strategies/transport_strategy.ts +0 -144
  220. package/src/core/strategies/websocket_prioritized_cached_strategy.ts +0 -157
  221. package/src/core/timeline/level.ts +0 -7
  222. package/src/core/timeline/timeline.ts +0 -90
  223. package/src/core/timeline/timeline_sender.ts +0 -33
  224. package/src/core/timeline/timeline_transport.ts +0 -11
  225. package/src/core/transports/assistant_to_the_transport_manager.ts +0 -104
  226. package/src/core/transports/ping_delay_options.ts +0 -7
  227. package/src/core/transports/transport.ts +0 -54
  228. package/src/core/transports/transport_connection.ts +0 -241
  229. package/src/core/transports/transport_connection_options.ts +0 -8
  230. package/src/core/transports/transport_hooks.ts +0 -16
  231. package/src/core/transports/transport_manager.ts +0 -52
  232. package/src/core/transports/transports_table.ts +0 -12
  233. package/src/core/transports/url_scheme.ts +0 -13
  234. package/src/core/transports/url_schemes.ts +0 -47
  235. package/src/core/user.ts +0 -186
  236. package/src/core/util.ts +0 -34
  237. package/src/core/utils/collections.ts +0 -353
  238. package/src/core/utils/factory.ts +0 -75
  239. package/src/core/utils/flat_promise.ts +0 -10
  240. package/src/core/utils/timers/abstract_timer.ts +0 -39
  241. package/src/core/utils/timers/index.ts +0 -39
  242. package/src/core/utils/timers/scheduling.ts +0 -11
  243. package/src/core/utils/timers/timed_callback.ts +0 -5
  244. package/src/core/utils/url_store.ts +0 -48
  245. package/src/core/watchlist.ts +0 -31
  246. package/src/d.ts/constants/index.d.ts +0 -5
  247. package/src/d.ts/faye-websocket/faye-websocket.d.ts +0 -21
  248. package/src/d.ts/global/global.d.ts +0 -1
  249. package/src/d.ts/module/module.d.ts +0 -12
  250. package/src/d.ts/tweetnacl-util/index.d.ts +0 -6
  251. package/src/d.ts/window/events.d.ts +0 -4
  252. package/src/d.ts/window/sockjs.d.ts +0 -3
  253. package/src/d.ts/window/websocket.d.ts +0 -4
  254. package/src/d.ts/window/xmlhttprequest.d.ts +0 -3
  255. package/src/runtimes/interface.ts +0 -59
  256. package/src/runtimes/isomorphic/auth/xhr_auth.ts +0 -90
  257. package/src/runtimes/isomorphic/default_strategy.ts +0 -155
  258. package/src/runtimes/isomorphic/http/http.ts +0 -32
  259. package/src/runtimes/isomorphic/http/http_xhr_request.ts +0 -35
  260. package/src/runtimes/isomorphic/runtime.ts +0 -62
  261. package/src/runtimes/isomorphic/timeline/xhr_timeline.ts +0 -50
  262. package/src/runtimes/isomorphic/transports/transport_connection_initializer.ts +0 -19
  263. package/src/runtimes/isomorphic/transports/transports.ts +0 -81
  264. package/src/runtimes/node/net_info.ts +0 -10
  265. package/src/runtimes/node/runtime.ts +0 -68
  266. package/src/runtimes/react-native/net_info.ts +0 -42
  267. package/src/runtimes/react-native/runtime.ts +0 -65
  268. package/src/runtimes/web/auth/jsonp_auth.ts +0 -51
  269. package/src/runtimes/web/browser.ts +0 -24
  270. package/src/runtimes/web/default_strategy.ts +0 -201
  271. package/src/runtimes/web/dom/dependencies.ts +0 -16
  272. package/src/runtimes/web/dom/dependency_loader.ts +0 -93
  273. package/src/runtimes/web/dom/json2.js +0 -486
  274. package/src/runtimes/web/dom/jsonp_request.ts +0 -52
  275. package/src/runtimes/web/dom/script_receiver.ts +0 -8
  276. package/src/runtimes/web/dom/script_receiver_factory.ts +0 -57
  277. package/src/runtimes/web/dom/script_request.ts +0 -85
  278. package/src/runtimes/web/dom/sockjs/COPYING +0 -11
  279. package/src/runtimes/web/dom/sockjs/Changelog +0 -147
  280. package/src/runtimes/web/dom/sockjs/LICENSE-MIT-SockJS +0 -19
  281. package/src/runtimes/web/dom/sockjs/Makefile +0 -109
  282. package/src/runtimes/web/dom/sockjs/README.md +0 -388
  283. package/src/runtimes/web/dom/sockjs/VERSION-GEN +0 -17
  284. package/src/runtimes/web/dom/sockjs/bin/render.coffee +0 -111
  285. package/src/runtimes/web/dom/sockjs/bin/run_testling.sh +0 -135
  286. package/src/runtimes/web/dom/sockjs/lib/all.js +0 -9
  287. package/src/runtimes/web/dom/sockjs/lib/dom.js +0 -185
  288. package/src/runtimes/web/dom/sockjs/lib/dom2.js +0 -280
  289. package/src/runtimes/web/dom/sockjs/lib/eventemitter.js +0 -57
  290. package/src/runtimes/web/dom/sockjs/lib/heartbeater.js +0 -70
  291. package/src/runtimes/web/dom/sockjs/lib/index.js +0 -41
  292. package/src/runtimes/web/dom/sockjs/lib/info.js +0 -117
  293. package/src/runtimes/web/dom/sockjs/lib/json2.min.js +0 -1
  294. package/src/runtimes/web/dom/sockjs/lib/reventtarget.js +0 -55
  295. package/src/runtimes/web/dom/sockjs/lib/simpleevent.js +0 -28
  296. package/src/runtimes/web/dom/sockjs/lib/sockjs.js +0 -288
  297. package/src/runtimes/web/dom/sockjs/lib/test-hooks.js +0 -16
  298. package/src/runtimes/web/dom/sockjs/lib/trans-iframe-eventsource.js +0 -29
  299. package/src/runtimes/web/dom/sockjs/lib/trans-iframe-htmlfile.js +0 -35
  300. package/src/runtimes/web/dom/sockjs/lib/trans-iframe-within.js +0 -100
  301. package/src/runtimes/web/dom/sockjs/lib/trans-iframe-xhr-polling.js +0 -30
  302. package/src/runtimes/web/dom/sockjs/lib/trans-iframe.js +0 -103
  303. package/src/runtimes/web/dom/sockjs/lib/trans-jsonp-polling.js +0 -106
  304. package/src/runtimes/web/dom/sockjs/lib/trans-jsonp-receiver.js +0 -116
  305. package/src/runtimes/web/dom/sockjs/lib/trans-polling.js +0 -44
  306. package/src/runtimes/web/dom/sockjs/lib/trans-receiver-eventsource.js +0 -41
  307. package/src/runtimes/web/dom/sockjs/lib/trans-receiver-htmlfile.js +0 -65
  308. package/src/runtimes/web/dom/sockjs/lib/trans-receiver-xhr.js +0 -42
  309. package/src/runtimes/web/dom/sockjs/lib/trans-sender.js +0 -138
  310. package/src/runtimes/web/dom/sockjs/lib/trans-xhr.js +0 -29
  311. package/src/runtimes/web/dom/sockjs/lib/utils.js +0 -297
  312. package/src/runtimes/web/dom/sockjs/package.json +0 -18
  313. package/src/runtimes/web/dom/sockjs/version +0 -1
  314. package/src/runtimes/web/http/http.ts +0 -8
  315. package/src/runtimes/web/http/http_xdomain_request.ts +0 -37
  316. package/src/runtimes/web/net_info.ts +0 -50
  317. package/src/runtimes/web/runtime.ts +0 -174
  318. package/src/runtimes/web/timeline/jsonp_timeline.ts +0 -34
  319. package/src/runtimes/web/transports/transport_connection_initializer.ts +0 -39
  320. package/src/runtimes/web/transports/transports.ts +0 -65
  321. package/src/runtimes/worker/auth/fetch_auth.ts +0 -69
  322. package/src/runtimes/worker/net_info.ts +0 -10
  323. package/src/runtimes/worker/runtime.ts +0 -75
  324. package/src/runtimes/worker/timeline/fetch_timeline.ts +0 -39
  325. package/tsconfig.json +0 -26
  326. package/types/spec/javascripts/helpers/node/mock-dom-dependencies.d.ts +0 -1
  327. package/types/spec/javascripts/helpers/pusher_integration_class.d.ts +0 -4
  328. package/types/src/core/auth/auth_transports.d.ts +0 -9
  329. package/types/src/core/auth/channel_authorizer.d.ts +0 -3
  330. package/types/src/core/auth/deprecated_channel_authorizer.d.ts +0 -18
  331. package/types/src/core/auth/options.d.ts +0 -48
  332. package/types/src/core/auth/user_authenticator.d.ts +0 -3
  333. package/types/src/core/base64.d.ts +0 -1
  334. package/types/src/core/channels/channel.d.ts +0 -23
  335. package/types/src/core/channels/channel_table.d.ts +0 -5
  336. package/types/src/core/channels/channels.d.ts +0 -12
  337. package/types/src/core/channels/encrypted_channel.d.ts +0 -15
  338. package/types/src/core/channels/members.d.ts +0 -14
  339. package/types/src/core/channels/metadata.d.ts +0 -4
  340. package/types/src/core/channels/presence_channel.d.ts +0 -13
  341. package/types/src/core/channels/private_channel.d.ts +0 -5
  342. package/types/src/core/config.d.ts +0 -31
  343. package/types/src/core/connection/callbacks.d.ts +0 -18
  344. package/types/src/core/connection/connection.d.ts +0 -16
  345. package/types/src/core/connection/connection_manager.d.ts +0 -50
  346. package/types/src/core/connection/connection_manager_options.d.ts +0 -11
  347. package/types/src/core/connection/handshake/handshake_payload.d.ts +0 -8
  348. package/types/src/core/connection/handshake/index.d.ts +0 -12
  349. package/types/src/core/connection/protocol/action.d.ts +0 -7
  350. package/types/src/core/connection/protocol/message-types.d.ts +0 -7
  351. package/types/src/core/connection/protocol/protocol.d.ts +0 -10
  352. package/types/src/core/defaults.d.ts +0 -26
  353. package/types/src/core/errors.d.ts +0 -28
  354. package/types/src/core/events/callback.d.ts +0 -5
  355. package/types/src/core/events/callback_registry.d.ts +0 -11
  356. package/types/src/core/events/callback_table.d.ts +0 -5
  357. package/types/src/core/events/dispatcher.d.ts +0 -14
  358. package/types/src/core/http/ajax.d.ts +0 -16
  359. package/types/src/core/http/http_factory.d.ts +0 -13
  360. package/types/src/core/http/http_polling_socket.d.ts +0 -3
  361. package/types/src/core/http/http_request.d.ts +0 -17
  362. package/types/src/core/http/http_socket.d.ts +0 -32
  363. package/types/src/core/http/http_streaming_socket.d.ts +0 -3
  364. package/types/src/core/http/request_hooks.d.ts +0 -6
  365. package/types/src/core/http/socket_hooks.d.ts +0 -8
  366. package/types/src/core/http/state.d.ts +0 -6
  367. package/types/src/core/http/url_location.d.ts +0 -5
  368. package/types/src/core/logger.d.ts +0 -11
  369. package/types/src/core/options.d.ts +0 -34
  370. package/types/src/core/pingerchips-with-encryption.d.ts +0 -5
  371. package/types/src/core/pingerchips.d.ts +0 -49
  372. package/types/src/core/reachability.d.ts +0 -5
  373. package/types/src/core/socket.d.ts +0 -12
  374. package/types/src/core/strategies/best_connected_ever_strategy.d.ts +0 -10
  375. package/types/src/core/strategies/delayed_strategy.d.ts +0 -15
  376. package/types/src/core/strategies/first_connected_strategy.d.ts +0 -8
  377. package/types/src/core/strategies/if_strategy.d.ts +0 -10
  378. package/types/src/core/strategies/sequential_strategy.d.ts +0 -16
  379. package/types/src/core/strategies/strategy.d.ts +0 -6
  380. package/types/src/core/strategies/strategy_builder.d.ts +0 -5
  381. package/types/src/core/strategies/strategy_options.d.ts +0 -16
  382. package/types/src/core/strategies/strategy_runner.d.ts +0 -5
  383. package/types/src/core/strategies/transport_strategy.d.ts +0 -15
  384. package/types/src/core/strategies/websocket_prioritized_cached_strategy.d.ts +0 -20
  385. package/types/src/core/timeline/level.d.ts +0 -6
  386. package/types/src/core/timeline/timeline.d.ts +0 -25
  387. package/types/src/core/timeline/timeline_sender.d.ts +0 -13
  388. package/types/src/core/timeline/timeline_transport.d.ts +0 -6
  389. package/types/src/core/transports/assistant_to_the_transport_manager.d.ts +0 -14
  390. package/types/src/core/transports/ping_delay_options.d.ts +0 -6
  391. package/types/src/core/transports/transport.d.ts +0 -8
  392. package/types/src/core/transports/transport_connection.d.ts +0 -35
  393. package/types/src/core/transports/transport_connection_options.d.ts +0 -6
  394. package/types/src/core/transports/transport_hooks.d.ts +0 -13
  395. package/types/src/core/transports/transport_manager.d.ts +0 -14
  396. package/types/src/core/transports/transports_table.d.ts +0 -10
  397. package/types/src/core/transports/url_scheme.d.ts +0 -11
  398. package/types/src/core/transports/url_schemes.d.ts +0 -4
  399. package/types/src/core/user.d.ts +0 -21
  400. package/types/src/core/util.d.ts +0 -8
  401. package/types/src/core/utils/collections.d.ts +0 -18
  402. package/types/src/core/utils/factory.d.ts +0 -29
  403. package/types/src/core/utils/flat_promise.d.ts +0 -6
  404. package/types/src/core/utils/timers/abstract_timer.d.ts +0 -10
  405. package/types/src/core/utils/timers/index.d.ts +0 -9
  406. package/types/src/core/utils/timers/scheduling.d.ts +0 -8
  407. package/types/src/core/utils/timers/timed_callback.d.ts +0 -4
  408. package/types/src/core/utils/url_store.d.ts +0 -4
  409. package/types/src/core/watchlist.d.ts +0 -8
  410. package/types/src/runtimes/interface.d.ts +0 -43
  411. package/types/src/runtimes/isomorphic/auth/xhr_auth.d.ts +0 -3
  412. package/types/src/runtimes/isomorphic/default_strategy.d.ts +0 -5
  413. package/types/src/runtimes/isomorphic/http/http.d.ts +0 -3
  414. package/types/src/runtimes/isomorphic/http/http_xhr_request.d.ts +0 -3
  415. package/types/src/runtimes/isomorphic/runtime.d.ts +0 -2
  416. package/types/src/runtimes/isomorphic/timeline/xhr_timeline.d.ts +0 -6
  417. package/types/src/runtimes/isomorphic/transports/transport_connection_initializer.d.ts +0 -1
  418. package/types/src/runtimes/isomorphic/transports/transports.d.ts +0 -5
  419. package/types/src/runtimes/node/net_info.d.ts +0 -6
  420. package/types/src/runtimes/node/runtime.d.ts +0 -3
  421. package/types/src/runtimes/react-native/net_info.d.ts +0 -8
  422. package/types/src/runtimes/react-native/runtime.d.ts +0 -3
  423. package/types/src/runtimes/web/auth/jsonp_auth.d.ts +0 -3
  424. package/types/src/runtimes/web/browser.d.ts +0 -19
  425. package/types/src/runtimes/web/default_strategy.d.ts +0 -5
  426. package/types/src/runtimes/web/dom/dependencies.d.ts +0 -4
  427. package/types/src/runtimes/web/dom/dependency_loader.d.ts +0 -10
  428. package/types/src/runtimes/web/dom/jsonp_request.d.ts +0 -10
  429. package/types/src/runtimes/web/dom/script_receiver.d.ts +0 -7
  430. package/types/src/runtimes/web/dom/script_receiver_factory.d.ts +0 -10
  431. package/types/src/runtimes/web/dom/script_request.d.ts +0 -9
  432. package/types/src/runtimes/web/http/http.d.ts +0 -2
  433. package/types/src/runtimes/web/http/http_xdomain_request.d.ts +0 -3
  434. package/types/src/runtimes/web/net_info.d.ts +0 -7
  435. package/types/src/runtimes/web/runtime.d.ts +0 -3
  436. package/types/src/runtimes/web/timeline/jsonp_timeline.d.ts +0 -6
  437. package/types/src/runtimes/web/transports/transport_connection_initializer.d.ts +0 -1
  438. package/types/src/runtimes/web/transports/transports.d.ts +0 -2
  439. package/types/src/runtimes/worker/auth/fetch_auth.d.ts +0 -3
  440. package/types/src/runtimes/worker/net_info.d.ts +0 -6
  441. package/types/src/runtimes/worker/runtime.d.ts +0 -3
  442. package/types/src/runtimes/worker/timeline/fetch_timeline.d.ts +0 -6
  443. package/webpack/config.node.js +0 -26
  444. package/webpack/config.react-native.js +0 -35
  445. package/webpack/config.shared.js +0 -50
  446. package/webpack/config.web.js +0 -36
  447. package/webpack/config.worker.js +0 -42
  448. package/webpack/dev.server.js +0 -17
  449. package/webpack/hosting_config.js +0 -6
  450. package/with-encryption/index.d.ts +0 -29
  451. package/with-encryption/index.js +0 -4
  452. package/worker/index.d.ts +0 -29
  453. package/worker/index.js +0 -1
  454. package/worker/with-encryption/index.d.ts +0 -29
  455. package/worker/with-encryption/index.js +0 -1
@@ -1,154 +0,0 @@
1
- import Action from './action';
2
- import { PusherEvent } from './message-types';
3
- /**
4
- * Provides functions for handling Pusher protocol-specific messages.
5
- */
6
-
7
- const Protocol = {
8
- /**
9
- * Decodes a message in a Pusher format.
10
- *
11
- * The MessageEvent we receive from the transport should contain a pusher event
12
- * (https://pusher.com/docs/pusher_protocol#events) serialized as JSON in the
13
- * data field
14
- *
15
- * The pusher event may contain a data field too, and it may also be
16
- * serialised as JSON
17
- *
18
- * Throws errors when messages are not parse'able.
19
- *
20
- * @param {MessageEvent} messageEvent
21
- * @return {PusherEvent}
22
- */
23
- decodeMessage: function(messageEvent: MessageEvent): PusherEvent {
24
- try {
25
- var messageData = JSON.parse(messageEvent.data);
26
- var pusherEventData = messageData.data;
27
- if (typeof pusherEventData === 'string') {
28
- try {
29
- pusherEventData = JSON.parse(messageData.data);
30
- } catch (e) {}
31
- }
32
- var pusherEvent: PusherEvent = {
33
- event: messageData.event,
34
- channel: messageData.channel,
35
- data: pusherEventData
36
- };
37
- if (messageData.user_id) {
38
- pusherEvent.user_id = messageData.user_id;
39
- }
40
- return pusherEvent;
41
- } catch (e) {
42
- throw { type: 'MessageParseError', error: e, data: messageEvent.data };
43
- }
44
- },
45
-
46
- /**
47
- * Encodes a message to be sent.
48
- *
49
- * @param {PusherEvent} event
50
- * @return {String}
51
- */
52
- encodeMessage: function(event: PusherEvent): string {
53
- return JSON.stringify(event);
54
- },
55
-
56
- /**
57
- * Processes a handshake message and returns appropriate actions.
58
- *
59
- * Returns an object with an 'action' and other action-specific properties.
60
- *
61
- * There are three outcomes when calling this function. First is a successful
62
- * connection attempt, when pusher:connection_established is received, which
63
- * results in a 'connected' action with an 'id' property. When passed a
64
- * pusher:error event, it returns a result with action appropriate to the
65
- * close code and an error. Otherwise, it raises an exception.
66
- *
67
- * @param {String} message
68
- * @result Object
69
- */
70
- processHandshake: function(messageEvent: MessageEvent): Action {
71
- var message = Protocol.decodeMessage(messageEvent);
72
-
73
- if (message.event === 'pusher:connection_established') {
74
- if (!message.data.activity_timeout) {
75
- throw 'No activity timeout specified in handshake';
76
- }
77
- return {
78
- action: 'connected',
79
- id: message.data.socket_id,
80
- activityTimeout: message.data.activity_timeout * 1000
81
- };
82
- } else if (message.event === 'pusher:error') {
83
- // From protocol 6 close codes are sent only once, so this only
84
- // happens when connection does not support close codes
85
- return {
86
- action: this.getCloseAction(message.data),
87
- error: this.getCloseError(message.data)
88
- };
89
- } else {
90
- throw 'Invalid handshake';
91
- }
92
- },
93
-
94
- /**
95
- * Dispatches the close event and returns an appropriate action name.
96
- *
97
- * See:
98
- * 1. https://developer.mozilla.org/en-US/docs/WebSockets/WebSockets_reference/CloseEvent
99
- * 2. http://pusher.com/docs/pusher_protocol
100
- *
101
- * @param {CloseEvent} closeEvent
102
- * @return {String} close action name
103
- */
104
- getCloseAction: function(closeEvent): string {
105
- if (closeEvent.code < 4000) {
106
- // ignore 1000 CLOSE_NORMAL, 1001 CLOSE_GOING_AWAY,
107
- // 1005 CLOSE_NO_STATUS, 1006 CLOSE_ABNORMAL
108
- // ignore 1007...3999
109
- // handle 1002 CLOSE_PROTOCOL_ERROR, 1003 CLOSE_UNSUPPORTED,
110
- // 1004 CLOSE_TOO_LARGE
111
- if (closeEvent.code >= 1002 && closeEvent.code <= 1004) {
112
- return 'backoff';
113
- } else {
114
- return null;
115
- }
116
- } else if (closeEvent.code === 4000) {
117
- return 'tls_only';
118
- } else if (closeEvent.code < 4100) {
119
- return 'refused';
120
- } else if (closeEvent.code < 4200) {
121
- return 'backoff';
122
- } else if (closeEvent.code < 4300) {
123
- return 'retry';
124
- } else {
125
- // unknown error
126
- return 'refused';
127
- }
128
- },
129
-
130
- /**
131
- * Returns an error or null basing on the close event.
132
- *
133
- * Null is returned when connection was closed cleanly. Otherwise, an object
134
- * with error details is returned.
135
- *
136
- * @param {CloseEvent} closeEvent
137
- * @return {Object} error object
138
- */
139
- getCloseError: function(closeEvent): any {
140
- if (closeEvent.code !== 1000 && closeEvent.code !== 1001) {
141
- return {
142
- type: 'PusherError',
143
- data: {
144
- code: closeEvent.code,
145
- message: closeEvent.reason || closeEvent.message
146
- }
147
- };
148
- } else {
149
- return null;
150
- }
151
- }
152
- };
153
-
154
- export default Protocol;
@@ -1,66 +0,0 @@
1
- import {
2
- ChannelAuthorizationOptions,
3
- UserAuthenticationOptions
4
- } from './auth/options';
5
- import { AuthTransport } from './config';
6
-
7
- export interface DefaultConfig {
8
- VERSION: string;
9
- PROTOCOL: number;
10
- wsPort: number;
11
- wssPort: number;
12
- wsPath: string;
13
- httpHost: string;
14
- httpPort: number;
15
- httpsPort: number;
16
- httpPath: string;
17
- stats_host: string;
18
- authEndpoint: string;
19
- authTransport: AuthTransport;
20
- activityTimeout: number;
21
- pongTimeout: number;
22
- unavailableTimeout: number;
23
- userAuthentication: UserAuthenticationOptions;
24
- channelAuthorization: ChannelAuthorizationOptions;
25
-
26
- cdn_http?: string;
27
- cdn_https?: string;
28
- dependency_suffix?: string;
29
- }
30
-
31
- var Defaults: DefaultConfig = {
32
- VERSION: VERSION,
33
- PROTOCOL: 7,
34
-
35
- wsPort: 6001,
36
- wssPort: 443,
37
- wsPath: '',
38
- // DEPRECATED: SockJS fallback parameters
39
- httpHost: 'sockjs.pusher.com',
40
- httpPort: 80,
41
- httpsPort: 443,
42
- httpPath: '/pusher',
43
- // DEPRECATED: Stats
44
- stats_host: 'stats.pingerchips.com',
45
- // DEPRECATED: Other settings
46
- authEndpoint: '/pingerchips/auth',
47
- authTransport: 'ajax',
48
- activityTimeout: 120000,
49
- pongTimeout: 30000,
50
- unavailableTimeout: 10000,
51
- userAuthentication: {
52
- endpoint: '/pingerchips/user-auth',
53
- transport: 'ajax'
54
- },
55
- channelAuthorization: {
56
- endpoint: '/pingerchips/auth',
57
- transport: 'ajax'
58
- },
59
-
60
- // CDN configuration
61
- cdn_http: CDN_HTTP,
62
- cdn_https: CDN_HTTPS,
63
- dependency_suffix: DEPENDENCY_SUFFIX
64
- };
65
-
66
- export default Defaults;
@@ -1,69 +0,0 @@
1
- /** Error classes used throughout the library. */
2
- // https://github.com/Microsoft/TypeScript-wiki/blob/master/Breaking-Changes.md#extending-built-ins-like-error-array-and-map-may-no-longer-work
3
- export class BadEventName extends Error {
4
- constructor(msg?: string) {
5
- super(msg);
6
-
7
- Object.setPrototypeOf(this, new.target.prototype);
8
- }
9
- }
10
-
11
- export class BadChannelName extends Error {
12
- constructor(msg?: string) {
13
- super(msg);
14
-
15
- Object.setPrototypeOf(this, new.target.prototype);
16
- }
17
- }
18
-
19
- export class RequestTimedOut extends Error {
20
- constructor(msg?: string) {
21
- super(msg);
22
-
23
- Object.setPrototypeOf(this, new.target.prototype);
24
- }
25
- }
26
- export class TransportPriorityTooLow extends Error {
27
- constructor(msg?: string) {
28
- super(msg);
29
-
30
- Object.setPrototypeOf(this, new.target.prototype);
31
- }
32
- }
33
- export class TransportClosed extends Error {
34
- constructor(msg?: string) {
35
- super(msg);
36
-
37
- Object.setPrototypeOf(this, new.target.prototype);
38
- }
39
- }
40
- export class UnsupportedFeature extends Error {
41
- constructor(msg?: string) {
42
- super(msg);
43
-
44
- Object.setPrototypeOf(this, new.target.prototype);
45
- }
46
- }
47
- export class UnsupportedTransport extends Error {
48
- constructor(msg?: string) {
49
- super(msg);
50
-
51
- Object.setPrototypeOf(this, new.target.prototype);
52
- }
53
- }
54
- export class UnsupportedStrategy extends Error {
55
- constructor(msg?: string) {
56
- super(msg);
57
-
58
- Object.setPrototypeOf(this, new.target.prototype);
59
- }
60
- }
61
- export class HTTPAuthError extends Error {
62
- status: number;
63
- constructor(status: number, msg?: string) {
64
- super(msg);
65
- this.status = status;
66
-
67
- Object.setPrototypeOf(this, new.target.prototype);
68
- }
69
- }
@@ -1,6 +0,0 @@
1
- interface Callback {
2
- fn: Function;
3
- context: any;
4
- }
5
-
6
- export default Callback;
@@ -1,75 +0,0 @@
1
- import Callback from './callback';
2
- import * as Collections from '../utils/collections';
3
- import CallbackTable from './callback_table';
4
-
5
- export default class CallbackRegistry {
6
- _callbacks: CallbackTable;
7
-
8
- constructor() {
9
- this._callbacks = {};
10
- }
11
-
12
- get(name: string): Callback[] {
13
- return this._callbacks[prefix(name)];
14
- }
15
-
16
- add(name: string, callback: Function, context: any) {
17
- var prefixedEventName = prefix(name);
18
- this._callbacks[prefixedEventName] =
19
- this._callbacks[prefixedEventName] || [];
20
- this._callbacks[prefixedEventName].push({
21
- fn: callback,
22
- context: context
23
- });
24
- }
25
-
26
- remove(name?: string, callback?: Function, context?: any) {
27
- if (!name && !callback && !context) {
28
- this._callbacks = {};
29
- return;
30
- }
31
-
32
- var names = name ? [prefix(name)] : Collections.keys(this._callbacks);
33
-
34
- if (callback || context) {
35
- this.removeCallback(names, callback, context);
36
- } else {
37
- this.removeAllCallbacks(names);
38
- }
39
- }
40
-
41
- private removeCallback(names: string[], callback: Function, context: any) {
42
- Collections.apply(
43
- names,
44
- function(name) {
45
- this._callbacks[name] = Collections.filter(
46
- this._callbacks[name] || [],
47
- function(binding) {
48
- return (
49
- (callback && callback !== binding.fn) ||
50
- (context && context !== binding.context)
51
- );
52
- }
53
- );
54
- if (this._callbacks[name].length === 0) {
55
- delete this._callbacks[name];
56
- }
57
- },
58
- this
59
- );
60
- }
61
-
62
- private removeAllCallbacks(names: string[]) {
63
- Collections.apply(
64
- names,
65
- function(name) {
66
- delete this._callbacks[name];
67
- },
68
- this
69
- );
70
- }
71
- }
72
-
73
- function prefix(name: string): string {
74
- return '_' + name;
75
- }
@@ -1,7 +0,0 @@
1
- import Callback from './callback';
2
-
3
- interface CallbackTable {
4
- [index: string]: Callback[];
5
- }
6
-
7
- export default CallbackTable;
@@ -1,84 +0,0 @@
1
- import * as Collections from '../utils/collections';
2
- import Callback from './callback';
3
- import Metadata from '../channels/metadata';
4
- import CallbackRegistry from './callback_registry';
5
-
6
- /** Manages callback bindings and event emitting.
7
- *
8
- * @param Function failThrough called when no listeners are bound to an event
9
- */
10
- export default class Dispatcher {
11
- callbacks: CallbackRegistry;
12
- global_callbacks: Function[];
13
- failThrough: Function;
14
-
15
- constructor(failThrough?: Function) {
16
- this.callbacks = new CallbackRegistry();
17
- this.global_callbacks = [];
18
- this.failThrough = failThrough;
19
- }
20
-
21
- bind(eventName: string, callback: Function, context?: any) {
22
- this.callbacks.add(eventName, callback, context);
23
- return this;
24
- }
25
-
26
- bind_global(callback: Function) {
27
- this.global_callbacks.push(callback);
28
- return this;
29
- }
30
-
31
- unbind(eventName?: string, callback?: Function, context?: any) {
32
- this.callbacks.remove(eventName, callback, context);
33
- return this;
34
- }
35
-
36
- unbind_global(callback?: Function) {
37
- if (!callback) {
38
- this.global_callbacks = [];
39
- return this;
40
- }
41
-
42
- this.global_callbacks = Collections.filter(
43
- this.global_callbacks || [],
44
- c => c !== callback
45
- );
46
-
47
- return this;
48
- }
49
-
50
- unbind_all() {
51
- this.unbind();
52
- this.unbind_global();
53
- return this;
54
- }
55
-
56
- emit(eventName: string, data?: any, metadata?: Metadata): Dispatcher {
57
- for (var i = 0; i < this.global_callbacks.length; i++) {
58
- this.global_callbacks[i](eventName, data);
59
- }
60
-
61
- var callbacks = this.callbacks.get(eventName);
62
- var args = [];
63
-
64
- if (metadata) {
65
- // if there's a metadata argument, we need to call the callback with both
66
- // data and metadata regardless of whether data is undefined
67
- args.push(data, metadata);
68
- } else if (data) {
69
- // metadata is undefined, so we only need to call the callback with data
70
- // if data exists
71
- args.push(data);
72
- }
73
-
74
- if (callbacks && callbacks.length > 0) {
75
- for (var i = 0; i < callbacks.length; i++) {
76
- callbacks[i].fn.apply(callbacks[i].context || global, args);
77
- }
78
- } else if (this.failThrough) {
79
- this.failThrough(eventName, data);
80
- }
81
-
82
- return this;
83
- }
84
- }
@@ -1,24 +0,0 @@
1
- interface Ajax {
2
- open(
3
- method: string,
4
- url: string,
5
- async?: boolean,
6
- user?: string,
7
- password?: string
8
- ): void;
9
- send(payload?: any): void;
10
- setRequestHeader(key: string, value: string): void;
11
- onreadystatechange: Function;
12
- readyState: number;
13
- responseText: string;
14
- status: number;
15
- withCredentials?: boolean;
16
-
17
- ontimeout: Function;
18
- onerror: Function;
19
- onprogress: Function;
20
- onload: Function;
21
- abort: Function;
22
- }
23
-
24
- export default Ajax;
@@ -1,16 +0,0 @@
1
- import HTTPSocket from './http_socket';
2
- import SocketHooks from './socket_hooks';
3
- import HTTPRequest from './http_request';
4
- import RequestHooks from './request_hooks';
5
- import Ajax from './ajax';
6
-
7
- interface HTTPFactory {
8
- createStreamingSocket(url: string): HTTPSocket;
9
- createPollingSocket(url: string): HTTPSocket;
10
- createSocket(hooks: SocketHooks, url: string): HTTPSocket;
11
- createXHR(method: string, url: string): HTTPRequest;
12
- createXDR?(method: string, url: string): HTTPRequest;
13
- createRequest(hooks: RequestHooks, method: string, url: string): HTTPRequest;
14
- }
15
-
16
- export default HTTPFactory;
@@ -1,24 +0,0 @@
1
- import SocketHooks from './socket_hooks';
2
- import URLLocation from './url_location';
3
- import HTTPSocket from './http_socket';
4
-
5
- var hooks: SocketHooks = {
6
- getReceiveURL: function(url: URLLocation, session: string): string {
7
- return url.base + '/' + session + '/xhr' + url.queryString;
8
- },
9
- onHeartbeat: function() {
10
- // next HTTP request will reset server's activity timer
11
- },
12
- sendHeartbeat: function(socket) {
13
- socket.sendRaw('[]');
14
- },
15
- onFinished: function(socket, status) {
16
- if (status === 200) {
17
- socket.reconnect();
18
- } else {
19
- socket.onClose(1006, 'Connection interrupted (' + status + ')', false);
20
- }
21
- }
22
- };
23
-
24
- export default hooks;
@@ -1,81 +0,0 @@
1
- import Runtime from 'runtime';
2
- import RequestHooks from './request_hooks';
3
- import Ajax from './ajax';
4
- import { default as EventsDispatcher } from '../events/dispatcher';
5
-
6
- const MAX_BUFFER_LENGTH = 256 * 1024;
7
-
8
- export default class HTTPRequest extends EventsDispatcher {
9
- hooks: RequestHooks;
10
- method: string;
11
- url: string;
12
- position: number;
13
- xhr: Ajax;
14
- unloader: Function;
15
-
16
- constructor(hooks: RequestHooks, method: string, url: string) {
17
- super();
18
- this.hooks = hooks;
19
- this.method = method;
20
- this.url = url;
21
- }
22
-
23
- start(payload?: any) {
24
- this.position = 0;
25
- this.xhr = this.hooks.getRequest(this);
26
-
27
- this.unloader = () => {
28
- this.close();
29
- };
30
- Runtime.addUnloadListener(this.unloader);
31
-
32
- this.xhr.open(this.method, this.url, true);
33
-
34
- if (this.xhr.setRequestHeader) {
35
- this.xhr.setRequestHeader('Content-Type', 'application/json'); // ReactNative doesn't set this header by default.
36
- }
37
- this.xhr.send(payload);
38
- }
39
-
40
- close() {
41
- if (this.unloader) {
42
- Runtime.removeUnloadListener(this.unloader);
43
- this.unloader = null;
44
- }
45
- if (this.xhr) {
46
- this.hooks.abortRequest(this.xhr);
47
- this.xhr = null;
48
- }
49
- }
50
-
51
- onChunk(status: number, data: any) {
52
- while (true) {
53
- var chunk = this.advanceBuffer(data);
54
- if (chunk) {
55
- this.emit('chunk', { status: status, data: chunk });
56
- } else {
57
- break;
58
- }
59
- }
60
- if (this.isBufferTooLong(data)) {
61
- this.emit('buffer_too_long');
62
- }
63
- }
64
-
65
- private advanceBuffer(buffer: any[]): any {
66
- var unreadData = buffer.slice(this.position);
67
- var endOfLinePosition = unreadData.indexOf('\n');
68
-
69
- if (endOfLinePosition !== -1) {
70
- this.position += endOfLinePosition + 1;
71
- return unreadData.slice(0, endOfLinePosition);
72
- } else {
73
- // chunk is not finished yet, don't move the buffer pointer
74
- return null;
75
- }
76
- }
77
-
78
- private isBufferTooLong(buffer: any): boolean {
79
- return this.position === buffer.length && buffer.length > MAX_BUFFER_LENGTH;
80
- }
81
- }