.promise(), .then(), and better React Native support thanks to @sjones6 !

This commit is contained in:
Mark Nadal 2017-09-18 14:02:08 -07:00
parent a02273521d
commit 29472bccbd
3 changed files with 23 additions and 13 deletions

17
gun.js
View File

@ -1705,17 +1705,22 @@
;require(function(module){
var Gun = require('./index');
var WebSocket;
if(typeof window !== 'undefined'){
WebSocket = window.WebSocket || window.webkitWebSocket || window.mozWebSocket;
var websocket;
if(typeof WebSocket !== 'undefined'){
websocket = WebSocket;
} else {
return;
if(typeof webkitWebSocket !== 'undefined'){
websocket = webkitWebSocket;
}
if(typeof mozWebSocket !== 'undefined'){
websocket = mozWebSocket;
}
}
Gun.on('opt', function(ctx){
this.to.next(ctx);
var opt = ctx.opt;
if(ctx.once){ return }
if(false === opt.WebSocket){ return }
if(false === opt.WebSocket || !websocket){ return }
var ws = opt.ws || (opt.ws = {}); ws.who = 0;
Gun.obj.map(opt.peers, function(){ ++ws.who });
if(ctx.once){ return }
@ -1767,7 +1772,7 @@
function open(peer, as){
if(!peer || !peer.url){ return }
var url = peer.url.replace('http', 'ws');
var wire = peer.wire = new WebSocket(url);
var wire = peer.wire = new websocket(url);
wire.onclose = function(){
ctx.on('bye', peer);
reconnect(peer, as);

2
gun.min.js vendored

File diff suppressed because one or more lines are too long

View File

@ -1,16 +1,21 @@
var Gun = require('./index');
var WebSocket;
if(typeof window !== 'undefined'){
WebSocket = window.WebSocket || window.webkitWebSocket || window.mozWebSocket;
var websocket;
if(typeof WebSocket !== 'undefined'){
websocket = WebSocket;
} else {
return;
if(typeof webkitWebSocket !== 'undefined'){
websocket = webkitWebSocket;
}
if(typeof mozWebSocket !== 'undefined'){
websocket = mozWebSocket;
}
}
Gun.on('opt', function(ctx){
this.to.next(ctx);
var opt = ctx.opt;
if(ctx.once){ return }
if(false === opt.WebSocket){ return }
if(false === opt.WebSocket || !websocket){ return }
var ws = opt.ws || (opt.ws = {}); ws.who = 0;
Gun.obj.map(opt.peers, function(){ ++ws.who });
if(ctx.once){ return }
@ -62,7 +67,7 @@ Gun.on('opt', function(ctx){
function open(peer, as){
if(!peer || !peer.url){ return }
var url = peer.url.replace('http', 'ws');
var wire = peer.wire = new WebSocket(url);
var wire = peer.wire = new websocket(url);
wire.onclose = function(){
ctx.on('bye', peer);
reconnect(peer, as);