First Commit
This commit is contained in:
31
html/sternwarte/checkfuehrung/node_modules/redeyed/examples/browser/index.css
generated
vendored
Executable file
31
html/sternwarte/checkfuehrung/node_modules/redeyed/examples/browser/index.css
generated
vendored
Executable file
@@ -0,0 +1,31 @@
|
||||
.code {
|
||||
width: 500px;
|
||||
height: 500px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.config {
|
||||
width: 500px;
|
||||
height: 400px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.go {
|
||||
display: block;
|
||||
float: right;
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.result {
|
||||
width: 500px;
|
||||
height: 1000px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.edit {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.results {
|
||||
float: left;
|
||||
}
|
||||
35
html/sternwarte/checkfuehrung/node_modules/redeyed/examples/browser/index.html
generated
vendored
Executable file
35
html/sternwarte/checkfuehrung/node_modules/redeyed/examples/browser/index.html
generated
vendored
Executable file
@@ -0,0 +1,35 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset=utf-8 />
|
||||
<title></title>
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="index.css" />
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
<span>Change the config and/or the original code in order to affect the "redeyed" result</span>
|
||||
</header>
|
||||
<section class="edit">
|
||||
<section>
|
||||
<h3>Redeyed Config </h3>
|
||||
<textarea class="config"></textarea>
|
||||
<button class="go">Go</button>
|
||||
</section>
|
||||
<section>
|
||||
<h3>Original Code</h3>
|
||||
<textarea class="code"></textarea>
|
||||
</section>
|
||||
</section>
|
||||
<section class="results">
|
||||
<h3>Result</h3>
|
||||
<textarea class="result" readonly="readonly"></textarea>
|
||||
</section>
|
||||
|
||||
|
||||
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
|
||||
<script type="text/javascript" src="https://unpkg.com/esprima"></script>
|
||||
<script type="text/javascript" src="../../redeyed.js"></script>
|
||||
<script type="text/javascript" src="./sample-config.js"></script>
|
||||
<script type="text/javascript" src="./index.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
32
html/sternwarte/checkfuehrung/node_modules/redeyed/examples/browser/index.js
generated
vendored
Executable file
32
html/sternwarte/checkfuehrung/node_modules/redeyed/examples/browser/index.js
generated
vendored
Executable file
@@ -0,0 +1,32 @@
|
||||
/* global $ redeyed */
|
||||
var $code = $('.code')
|
||||
var $config = $('.config')
|
||||
var $result = $('.result')
|
||||
|
||||
function go() {
|
||||
var config
|
||||
try {
|
||||
config = JSON.parse($config.val())
|
||||
} catch (e) {
|
||||
$result.val('In "Redeyed Config": ' + e.toString())
|
||||
return
|
||||
}
|
||||
|
||||
try {
|
||||
var code = $code.val()
|
||||
var result = redeyed(code, config)
|
||||
|
||||
$result.val(result.code)
|
||||
} catch (e) {
|
||||
$result.val('In "Original Code": ' + e.toString())
|
||||
}
|
||||
}
|
||||
|
||||
$code.val(window.redeyed.toString())
|
||||
|
||||
$config.val(JSON.stringify(window.sampleConfig, false, 2))
|
||||
|
||||
$('.go').click(go)
|
||||
|
||||
go()
|
||||
|
||||
131
html/sternwarte/checkfuehrung/node_modules/redeyed/examples/browser/sample-config.js
generated
vendored
Executable file
131
html/sternwarte/checkfuehrung/node_modules/redeyed/examples/browser/sample-config.js
generated
vendored
Executable file
@@ -0,0 +1,131 @@
|
||||
window.sampleConfig = {
|
||||
|
||||
'Boolean': {
|
||||
'true' : undefined
|
||||
, 'false' : undefined
|
||||
, _default : '?:?'
|
||||
}
|
||||
|
||||
, 'Identifier': {
|
||||
_default: '-> : <-'
|
||||
}
|
||||
|
||||
, 'Null': {
|
||||
_default: '**:**'
|
||||
}
|
||||
|
||||
, 'Numeric': {
|
||||
_default: 'n:N'
|
||||
}
|
||||
|
||||
, 'String': {
|
||||
_default: 'string -> :'
|
||||
}
|
||||
|
||||
, 'Keyword': {
|
||||
'break' : undefined
|
||||
|
||||
, 'case' : undefined
|
||||
, 'catch' : undefined
|
||||
, 'continue' : undefined
|
||||
|
||||
, 'debugger' : undefined
|
||||
, 'default' : undefined
|
||||
, 'delete' : undefined
|
||||
, 'do' : undefined
|
||||
|
||||
, 'else' : undefined
|
||||
|
||||
, 'finally' : undefined
|
||||
, 'for' : undefined
|
||||
, 'function' : undefined
|
||||
|
||||
, 'if' : undefined
|
||||
, 'in' : undefined
|
||||
, 'instanceof' : undefined
|
||||
|
||||
, 'new' : undefined
|
||||
, 'return' : undefined
|
||||
, 'switch' : undefined
|
||||
|
||||
, 'this' : undefined
|
||||
, 'throw' : undefined
|
||||
, 'try' : undefined
|
||||
, 'typeof' : undefined
|
||||
|
||||
, 'var' : undefined
|
||||
, 'void' : undefined
|
||||
|
||||
, 'while' : undefined
|
||||
, 'with' : undefined
|
||||
, _default : ': <- keyword'
|
||||
}
|
||||
, 'Punctuator': {
|
||||
';': undefined
|
||||
, '.': undefined
|
||||
, ',': undefined
|
||||
|
||||
, '{': undefined
|
||||
, '}': undefined
|
||||
, '(': undefined
|
||||
, ')': undefined
|
||||
, '[': undefined
|
||||
, ']': undefined
|
||||
|
||||
, '<': undefined
|
||||
, '>': undefined
|
||||
, '+': undefined
|
||||
, '-': undefined
|
||||
, '*': undefined
|
||||
, '%': undefined
|
||||
, '&': undefined
|
||||
, '|': undefined
|
||||
, '^': undefined
|
||||
, '!': undefined
|
||||
, '~': undefined
|
||||
, '?': undefined
|
||||
, ':': undefined
|
||||
, '=': undefined
|
||||
|
||||
, '<=': undefined
|
||||
, '>=': undefined
|
||||
, '==': undefined
|
||||
, '!=': undefined
|
||||
, '++': undefined
|
||||
, '--': undefined
|
||||
, '<<': undefined
|
||||
, '>>': undefined
|
||||
, '&&': undefined
|
||||
, '||': undefined
|
||||
, '+=': undefined
|
||||
, '-=': undefined
|
||||
, '*=': undefined
|
||||
, '%=': undefined
|
||||
, '&=': undefined
|
||||
, '|=': undefined
|
||||
, '^=': undefined
|
||||
, '/=': undefined
|
||||
|
||||
, '===': undefined
|
||||
, '!==': undefined
|
||||
, '>>>': undefined
|
||||
, '<<=': undefined
|
||||
, '>>=': undefined
|
||||
|
||||
, '>>>=': undefined
|
||||
|
||||
, _default: undefined
|
||||
}
|
||||
|
||||
// line comment
|
||||
, Line: {
|
||||
_default: undefined
|
||||
}
|
||||
|
||||
/* block comment */
|
||||
, Block: {
|
||||
_default: undefined
|
||||
}
|
||||
|
||||
, _default: undefined
|
||||
}
|
||||
58
html/sternwarte/checkfuehrung/node_modules/redeyed/examples/replace-log.js
generated
vendored
Executable file
58
html/sternwarte/checkfuehrung/node_modules/redeyed/examples/replace-log.js
generated
vendored
Executable file
@@ -0,0 +1,58 @@
|
||||
var path = require('path')
|
||||
var fs = require('fs')
|
||||
var redeyed = require('..')
|
||||
var vm = require('vm')
|
||||
|
||||
var samplePath = path.join(__dirname, 'sources', 'log.js')
|
||||
var origCode = fs.readFileSync(samplePath, 'utf-8')
|
||||
var kinds = [ 'silly', 'info', 'warn', 'error' ]
|
||||
|
||||
function replaceConsole(s, info) {
|
||||
var code = info.code
|
||||
var idx = info.tokenIndex
|
||||
var tokens = info.tokens
|
||||
var next = tokens[idx + 1].value
|
||||
var kind = tokens[idx + 2].value
|
||||
var openParen = tokens[idx + 3].value
|
||||
var firstArgTkn = tokens[idx + 4]
|
||||
var argIdx = idx + 3
|
||||
var open
|
||||
var tkn
|
||||
|
||||
if (kind === 'log') kind = 'silly'
|
||||
|
||||
// not a console.xxx(...) statement? -> just return original
|
||||
if (next !== '.' || !~kinds.indexOf(kind) || openParen !== '(') return s
|
||||
|
||||
// skip past arguments to console.xxx all args from ( to )
|
||||
open = 1
|
||||
while (open) {
|
||||
tkn = tokens[++argIdx]
|
||||
|
||||
// count open parens vs. closed ones to handle things like console.log(new Error('..'));
|
||||
if (tkn.value === '(') open++
|
||||
if (tkn.value === ')') open--
|
||||
}
|
||||
|
||||
// tkn now is the last closing paren
|
||||
var argsIncludingClosingParen = code.slice(firstArgTkn.range[0], tkn.range[1])
|
||||
var result = 'log.' + kind + '("main-logger", ' + argsIncludingClosingParen
|
||||
|
||||
// tell redeyed to skip the entire console.xxx(..) statement since we are replacing it all
|
||||
return { replacement: result, skipPastToken: tkn }
|
||||
}
|
||||
|
||||
function transformAndRun() {
|
||||
var config = {
|
||||
Identifier: { console: replaceConsole }
|
||||
}
|
||||
var code = redeyed(origCode, config).code
|
||||
var context = vm.createContext({ require: require })
|
||||
|
||||
console.log('Original code:\n', origCode)
|
||||
console.log('\nlog calls replaced:\n', code)
|
||||
console.log('\nLets run it:')
|
||||
vm.runInContext(code, context, 'transformed-log.vm')
|
||||
}
|
||||
|
||||
transformAndRun()
|
||||
8
html/sternwarte/checkfuehrung/node_modules/redeyed/examples/sources/log.js
generated
vendored
Executable file
8
html/sternwarte/checkfuehrung/node_modules/redeyed/examples/sources/log.js
generated
vendored
Executable file
@@ -0,0 +1,8 @@
|
||||
// First two lines will be needed when we replaced all console.xxx statements with log.xxx
|
||||
var log = require('npmlog')
|
||||
log.level = 'silly'
|
||||
|
||||
console.info('info ', 1)
|
||||
console.log('log ', 2)
|
||||
console.warn('warn ', 3)
|
||||
console.error('error ', new Error('oh my!'))
|
||||
Reference in New Issue
Block a user