in app/scripts/core/apiProvider.js [22:66]
translateFlowProgrammer: function(callback, jsonData) {
var nodes = {};
var nodeIndex = 1;
var createNode = function(nodes, nodeId, nodeIndex, nodeType) {
var coords = this.getStoredCoords(nodeId);
if(coords === null) {
coords = this.logarithmicSpiraCoords(nodeIndex);
}
var data = {
id: nodeId,
type : nodeType,
coords: coords
};
if(Ember.isNone(nodes[nodeId])) {
nodes[nodeId] = data;
return true;
}
return false;
}.bind(this);
jsonData.edgeProperties.forEach(function(value, index) {
var tailNodeId = value.edge.tailNodeConnector.node.id,
tailNodeType = value.edge.tailNodeConnector.node.type;
var headNodeId = value.edge.headNodeConnector.node.id,
headNodeType = value.edge.headNodeConnector.node.type;
if(createNode(nodes, tailNodeId, nodeIndex, tailNodeType)) {
nodeIndex++;
}
if(createNode(nodes, headNodeId, nodeIndex, headNodeType)) {
nodeIndex++;
}
});
return callback({
nodes : nodes,
connections : jsonData.edgeProperties
});
},