shim.js 592 B

1234567891011121314151617181920212223242526
  1. var Gun = (typeof window !== "undefined")? window.Gun : require('../gun');
  2. Gun.chain.open || require('./open');
  3. var _on = Gun.chain.on;
  4. Gun.chain.on = function(a,b,c){
  5. if('value' === a){
  6. return this.open(b,c);
  7. }
  8. return _on.call(this, a,b,c);
  9. }
  10. Gun.chain.bye || require('./bye');
  11. Gun.chain.onDisconnect = Gun.chain.bye;
  12. Gun.chain.connected = function(cb){
  13. var root = this.back(-1), last;
  14. root.on('hi', function(peer){
  15. if(!cb){ return }
  16. cb(last = true, peer);
  17. });
  18. root.on('bye', function(peer){
  19. if(!cb || last === peer){ return }
  20. cb(false, last = peer);
  21. });
  22. return this;
  23. }