Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
var run = function run() {
// Generate JavaScript code and run it.
try {
window.LoopTrap = 1000;
blockly.JavaScript.INFINITE_LOOP_TRAP =
'if (--window.LoopTrap == 0) throw "Infinite loop.";\n';
var code = blockly.JavaScript.workspaceToCode(blockly.mainWorkspace);
blockly.JavaScript.INFINITE_LOOP_TRAP = null;
var EVAL_BLOCKLY_CODE = eval;
EVAL_BLOCKLY_CODE(code);
$('#summaryPanel')
.show();
$('#stopButton')
.bind('click', stop);
} catch (e) {
botUtils.showError(e);
}
};
var blockly = require('blockly');
blockly.JavaScript.read_details = function(block) {
var detail_index = block.getFieldValue('DETAIL_INDEX');
// TODO: Assemble JavaScript into code variable.
var code = '((details instanceof Array && details.length === Bot.config.lists.DETAILS.length) ? details[' + ( parseInt(detail_index.trim()) - 1 ) + '] : \'\' )';
return [code, blockly.JavaScript.ORDER_ATOMIC];
};
var run = function run() {
// Generate JavaScript code and run it.
try {
window.LoopTrap = 1000;
blockly.JavaScript.INFINITE_LOOP_TRAP =
'if (--window.LoopTrap == 0) throw "Infinite loop.";\n';
var code = blockly.JavaScript.workspaceToCode(blockly.mainWorkspace);
blockly.JavaScript.INFINITE_LOOP_TRAP = null;
var EVAL_BLOCKLY_CODE = eval;
EVAL_BLOCKLY_CODE(code);
$('#stopButton')
.text('Stop');
$('#runButton')
.text('Restart');
$('#summaryPanel')
.show();
$('#stopButton')
.unbind('click', reset);
$('#stopButton')
.bind('click', stop);
} catch (e) {
utils.showError(e);
}
}
Blockly.JavaScript.INFINITE_LOOP_TRAP && (c = Blockly.JavaScript.INFINITE_LOOP_TRAP.replace(/%1/g, "'" + a.id + "'") +
c);
(d = Blockly.JavaScript.valueToCode(a, "RETURN", Blockly.JavaScript.ORDER_NONE) || "") && (d = Blockly.JavaScript.INDENT + "return " + d + ";\n");
for (var e = [], f = 0; f < a.arguments_.length; f++) e[f] = Blockly.JavaScript.variableDB_.getName(a.arguments_[f], Blockly.Variables.NAME_TYPE);
c = "async function " + b + "(" + e.join(", ") + ") {\n" +
c + d + "\n" +
"}";
c = Blockly.JavaScript.scrub_(a, c);
Blockly.JavaScript.definitions_["%" + b] = c;
return null;
}
Blockly.JavaScript.procedures_defnoreturn = Blockly.JavaScript.procedures_defreturn;
Blockly.JavaScript.procedures_callreturn = function (a) {
for (var b = Blockly.JavaScript.variableDB_.getName(a.getFieldValue("NAME"), Blockly.Procedures.NAME_TYPE), c = [], d = 0; d < a.arguments_.length; d++) c[d] = Blockly.JavaScript.valueToCode(a, "ARG" + d, Blockly.JavaScript.ORDER_COMMA) || "null";
return ["await " + b + "(" + c.join(", ") + ")", Blockly.JavaScript.ORDER_FUNCTION_CALL]
}
Blockly.JavaScript.procedures_callnoreturn = function (a) {
for (var b = Blockly.JavaScript.variableDB_.getName(a.getFieldValue("NAME"), Blockly.Procedures.NAME_TYPE), c = [], d = 0; d < a.arguments_.length; d++) c[d] = Blockly.JavaScript.valueToCode(a, "ARG" + d, Blockly.JavaScript.ORDER_COMMA) || "null";
return "await " + b + "(" + c.join(", ") + ");\n"
}
Blockly.JavaScript[Gamepad['BLOCKS']['START']] = function () {
return '';
}
// set reserved words
Blockly.JavaScript.addReservedWords('Blockly,CONTEXT,worker,code,reject,resolve,f');
// define the start block
var blockly = require('blockly');
blockly.JavaScript.purchase = function(block) {
if ( this.parentBlock_ === null ) {
return '';
}
var purchase_list = block.getFieldValue('PURCHASE_LIST');
var code = purchase_list;
code = 'Bot.trade.purchase(\'' + code + '\');\n';
return code;
};
var blockly = require('blockly');
blockly.JavaScript.contract_details = function(block) {
var code = 'details';
return [code, blockly.JavaScript.ORDER_ATOMIC];
};
blockly.JavaScript.contract_result = function(block) {
var code = 'result';
return [code, blockly.JavaScript.ORDER_ATOMIC];
};
blockly.JavaScript.check_direction = function(block) {
var check_with = block.getFieldValue('CHECK_DIRECTION');
var code = '(direction === \'' + check_with + '\')';
return [code, blockly.JavaScript.ORDER_ATOMIC];
};
var blockly = require('blockly');
blockly.JavaScript.on_finish = function(block) {
var stack = blockly.JavaScript.statementToCode(block, 'FINISH_STACK');
var code = 'Bot.globals.on_finish = function on_finish(result, details){\n' + stack + '\n};\n';
return code;
};
var blockly = require('blockly');
blockly.JavaScript.direction = function(block) {
var code = 'direction';
return [code, blockly.JavaScript.ORDER_ATOMIC];
};