This commit is contained in:
rubenis 2016-12-14 13:42:58 +00:00 committed by GitHub
commit 03d6cdce06
3 changed files with 36 additions and 1 deletions

View file

@ -165,6 +165,7 @@ var Categories = [
"Parse UNIX file permissions", "Parse UNIX file permissions",
"Swap endianness", "Swap endianness",
"Parse colour code", "Parse colour code",
"JavaScript",
] ]
}, },
{ {

View file

@ -2827,5 +2827,19 @@ var OperationConfig = {
input_type: "string", input_type: "string",
output_type: "string", output_type: "string",
args: [] args: []
} },
"JavaScript": {
description: "Script in JavaScript",
run: StrUtils.run_javascript,
manual_bake: true,
input_type: "string",
output_type: "string",
args: [
{
name: "@param {string} input, @returns {string}",
type: "text",
value: "return input;"
},
]
},
}; };

View file

@ -508,5 +508,25 @@ var StrUtils = {
return output; return output;
}, },
/**
* Script JS.
*
* @param {string} input
* @param {Object[]} args
* @returns {string}
*/
run_javascript: function (input, args) {
try {
/*jshint -W061 */
var fn = Function("input", args);
/*jshint +W061 */
return fn(input);
}
catch (err) {
return "JavaScript error: " + err.message;
}
},
}; };