Added build script
This commit is contained in:
58
dist/static/synchronous.js
vendored
Normal file
58
dist/static/synchronous.js
vendored
Normal file
@@ -0,0 +1,58 @@
|
||||
(function (env) {
|
||||
var Gun;
|
||||
if(typeof module !== "undefined" && module.exports){ Gun = require('gun/gun') }
|
||||
if(typeof window !== "undefined"){ Gun = window.Gun }
|
||||
|
||||
Gun.chain.sync = function (obj, opt, cb, o) {
|
||||
var gun = this;
|
||||
if (!Gun.obj.is(obj)) {
|
||||
console.log('First param is not an object');
|
||||
return gun;
|
||||
}
|
||||
if (Gun.bi.is(opt)) {
|
||||
opt = {
|
||||
meta: opt
|
||||
};
|
||||
}
|
||||
if(Gun.fn.is(opt)){
|
||||
cb = opt;
|
||||
opt = null;
|
||||
}
|
||||
cb = cb || function(){};
|
||||
opt = opt || {};
|
||||
opt.ctx = opt.ctx || {};
|
||||
gun.on(function (change, field) {
|
||||
Gun.obj.map(change, function (val, field) {
|
||||
if (!obj) {
|
||||
return;
|
||||
}
|
||||
if (field === '_' || field === '#') {
|
||||
if (opt.meta) {
|
||||
obj[field] = val;
|
||||
}
|
||||
return;
|
||||
}
|
||||
if (Gun.obj.is(val)) {
|
||||
var soul = Gun.val.rel.is(val);
|
||||
if (opt.ctx[soul + field]) {
|
||||
// don't re-subscribe.
|
||||
return;
|
||||
}
|
||||
// unique subscribe!
|
||||
opt.ctx[soul + field] = true;
|
||||
this.path(field).sync(
|
||||
obj[field] = (obj[field] || {}),
|
||||
Gun.obj.copy(opt),
|
||||
cb,
|
||||
o || obj
|
||||
);
|
||||
return;
|
||||
}
|
||||
obj[field] = val;
|
||||
}, this);
|
||||
cb(o || obj);
|
||||
});
|
||||
return gun;
|
||||
};
|
||||
|
||||
}());
|
||||
Reference in New Issue
Block a user