2014-08-22 20:50:39 +02:00
|
|
|
(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
|
|
|
|
|
var createIwcConnector;
|
|
|
|
|
|
|
|
|
|
createIwcConnector = function(callback, options) {
|
|
|
|
|
var IwcConnector, duiClient, init, iwcHandler, received_HB, userIwcHandler;
|
|
|
|
|
userIwcHandler = null;
|
|
|
|
|
if (options != null) {
|
|
|
|
|
userIwcHandler = options.iwcHandler;
|
|
|
|
|
}
|
|
|
|
|
iwcHandler = {};
|
|
|
|
|
duiClient = new DUIClient();
|
|
|
|
|
duiClient.connect(function(intent) {
|
|
|
|
|
var _ref;
|
|
|
|
|
if ((_ref = iwcHandler[intent.action]) != null) {
|
|
|
|
|
_ref.map(function(f) {
|
|
|
|
|
return setTimeout(function() {
|
|
|
|
|
return f(intent);
|
|
|
|
|
}, 0);
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
if (userIwcHandler != null) {
|
|
|
|
|
return userIwcHandler(intent);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
duiClient.initOK();
|
|
|
|
|
received_HB = null;
|
|
|
|
|
IwcConnector = (function() {
|
|
|
|
|
function IwcConnector(engine, HB, execution_listener, yatta) {
|
|
|
|
|
var receiveHB, receive_, sendHistoryBuffer, send_;
|
|
|
|
|
this.engine = engine;
|
|
|
|
|
this.HB = HB;
|
|
|
|
|
this.execution_listener = execution_listener;
|
|
|
|
|
this.yatta = yatta;
|
|
|
|
|
this.duiClient = duiClient;
|
|
|
|
|
this.iwcHandler = iwcHandler;
|
|
|
|
|
send_ = (function(_this) {
|
|
|
|
|
return function(o) {
|
|
|
|
|
if (Object.getOwnPropertyNames(_this.initialized).length !== 0) {
|
|
|
|
|
return _this.send(o);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
})(this);
|
|
|
|
|
this.execution_listener.push(send_);
|
|
|
|
|
this.initialized = {};
|
|
|
|
|
receiveHB = (function(_this) {
|
|
|
|
|
return function(json) {
|
|
|
|
|
var him;
|
|
|
|
|
HB = json.extras.HB;
|
|
|
|
|
him = json.extras.user;
|
|
|
|
|
_this.engine.applyOpsCheckDouble(HB);
|
|
|
|
|
return _this.initialized[him] = true;
|
|
|
|
|
};
|
|
|
|
|
})(this);
|
|
|
|
|
iwcHandler["Yatta_push_HB_element"] = [receiveHB];
|
|
|
|
|
this.sendIwcIntent("Yatta_get_HB_element", this.HB.getOperationCounter());
|
|
|
|
|
receive_ = (function(_this) {
|
|
|
|
|
return function(intent) {
|
|
|
|
|
var o;
|
|
|
|
|
o = intent.extras;
|
|
|
|
|
if (_this.initialized[o.uid.creator] != null) {
|
|
|
|
|
return _this.receive(o);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
})(this);
|
|
|
|
|
this.iwcHandler["Yatta_new_operation"] = [receive_];
|
|
|
|
|
if (received_HB != null) {
|
|
|
|
|
this.engine.applyOpsCheckDouble(received_HB);
|
|
|
|
|
}
|
|
|
|
|
sendHistoryBuffer = (function(_this) {
|
|
|
|
|
return function(intent) {
|
|
|
|
|
var json, state_vector;
|
|
|
|
|
state_vector = intent.extras;
|
|
|
|
|
console.log(state_vector);
|
|
|
|
|
json = {
|
|
|
|
|
HB: _this.yatta.getHistoryBuffer()._encode(state_vector),
|
|
|
|
|
user: _this.yatta.getUserId()
|
|
|
|
|
};
|
|
|
|
|
return _this.sendIwcIntent("Yatta_push_HB_element", json);
|
|
|
|
|
};
|
|
|
|
|
})(this);
|
|
|
|
|
this.iwcHandler["Yatta_get_HB_element"] = [sendHistoryBuffer];
|
|
|
|
|
}
|
|
|
|
|
|
2014-08-24 01:52:15 +02:00
|
|
|
IwcConnector.prototype.setIwcHandler = function(f) {
|
|
|
|
|
return userIwcHandler = f;
|
2014-08-22 20:50:39 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
IwcConnector.prototype.sendIwcIntent = function(action_name, content) {
|
|
|
|
|
var intent;
|
|
|
|
|
intent = null;
|
|
|
|
|
if (arguments.length >= 2) {
|
|
|
|
|
action_name = arguments[0], content = arguments[1];
|
|
|
|
|
intent = {
|
|
|
|
|
action: action_name,
|
|
|
|
|
component: "",
|
|
|
|
|
data: "",
|
|
|
|
|
dataType: "",
|
|
|
|
|
flags: ["PUBLISH_GLOBAL"],
|
|
|
|
|
extras: content
|
|
|
|
|
};
|
|
|
|
|
} else {
|
|
|
|
|
intent = arguments[0];
|
|
|
|
|
}
|
|
|
|
|
return this.duiClient.sendIntent(intent);
|
|
|
|
|
};
|
|
|
|
|
|
2014-08-24 01:52:15 +02:00
|
|
|
IwcConnector.prototype.send = function(o) {
|
|
|
|
|
if (o.uid.creator === this.HB.getUserId() && (typeof o.uid.op_number !== "string")) {
|
|
|
|
|
return this.sendIwcIntent("Yatta_new_operation", o);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
IwcConnector.prototype.receive = function(o) {
|
|
|
|
|
if (o.uid.creator !== this.HB.getUserId()) {
|
|
|
|
|
return this.engine.applyOp(o);
|
|
|
|
|
}
|
2014-08-22 20:50:39 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
return IwcConnector;
|
|
|
|
|
|
|
|
|
|
})();
|
|
|
|
|
init = function() {
|
|
|
|
|
var proposed_user_id;
|
|
|
|
|
proposed_user_id = Math.floor(Math.random() * 1000000);
|
|
|
|
|
return callback(IwcConnector, proposed_user_id);
|
|
|
|
|
};
|
|
|
|
|
setTimeout(init, 5000);
|
|
|
|
|
return void 0;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
module.exports = createIwcConnector;
|
|
|
|
|
|
|
|
|
|
if (typeof window !== "undefined" && window !== null) {
|
|
|
|
|
if (window.Y == null) {
|
|
|
|
|
window.Y = {};
|
|
|
|
|
}
|
|
|
|
|
window.Y.createIwcConnector = createIwcConnector;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
},{}]},{},[1])
|
2014-08-24 01:52:15 +02:00
|
|
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL2Rtb25hZC9Ecm9wYm94L1lhdHRhIS9ub2RlX21vZHVsZXMvZ3VscC1icm93c2VyaWZ5L25vZGVfbW9kdWxlcy9icm93c2VyaWZ5L25vZGVfbW9kdWxlcy9icm93c2VyLXBhY2svX3ByZWx1ZGUuanMiLCIvaG9tZS9kbW9uYWQvRHJvcGJveC9ZYXR0YSEvbGliL0Nvbm5lY3RvcnMvSXdjQ29ubmVjdG9yLmNvZmZlZSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQ0tBLElBQUEsa0JBQUE7O0FBQUEsa0JBQUEsR0FBcUIsU0FBQyxRQUFELEVBQVcsT0FBWCxHQUFBO0FBQ25CLE1BQUEsc0VBQUE7QUFBQSxFQUFBLGNBQUEsR0FBaUIsSUFBakIsQ0FBQTtBQUNBLEVBQUEsSUFBRyxlQUFIO0FBQ0UsSUFBYSxpQkFBa0IsUUFBOUIsVUFBRCxDQURGO0dBREE7QUFBQSxFQUlBLFVBQUEsR0FBYSxFQUpiLENBQUE7QUFBQSxFQUtBLFNBQUEsR0FBZ0IsSUFBQSxTQUFBLENBQUEsQ0FMaEIsQ0FBQTtBQUFBLEVBT0EsU0FBUyxDQUFDLE9BQVYsQ0FBa0IsU0FBQyxNQUFELEdBQUE7QUFDaEIsUUFBQSxJQUFBOztVQUF5QixDQUFFLEdBQTNCLENBQStCLFNBQUMsQ0FBRCxHQUFBO2VBQzdCLFVBQUEsQ0FBVyxTQUFBLEdBQUE7aUJBQ1QsQ0FBQSxDQUFFLE1BQUYsRUFEUztRQUFBLENBQVgsRUFFRSxDQUZGLEVBRDZCO01BQUEsQ0FBL0I7S0FBQTtBQUlBLElBQUEsSUFBRyxzQkFBSDthQUNFLGNBQUEsQ0FBZSxNQUFmLEVBREY7S0FMZ0I7RUFBQSxDQUFsQixDQVBBLENBQUE7QUFBQSxFQWVBLFNBQVMsQ0FBQyxNQUFWLENBQUEsQ0FmQSxDQUFBO0FBQUEsRUFpQkEsV0FBQSxHQUFjLElBakJkLENBQUE7QUFBQSxFQTJCTTtBQVFTLElBQUEsc0JBQUUsTUFBRixFQUFXLEVBQVgsRUFBZ0Isa0JBQWhCLEVBQXFDLEtBQXJDLEdBQUE7QUFDWCxV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
|