Add support for source mappings #10
@ -84,14 +84,18 @@
|
||||
throw new SyntaxError(diagnostics.join("\n"));
|
||||
}
|
||||
|
||||
var map = emit.outputFiles[0].text;
|
||||
var map = JSON.parse(emit.outputFiles[0].text);
|
||||
var result = emit.outputFiles[1].text;
|
||||
var declaration = emit.outputFiles[2].text;
|
||||
|
||||
log(map);
|
||||
|
||||
return {
|
||||
source: result,
|
||||
map: log(JSON.stringify({
|
||||
version: 3,
|
||||
sources: [ filename ],
|
||||
file: filename,
|
||||
mappings: map.mappings
|
||||
})),
|
||||
runner: function(func) {
|
||||
return function() {
|
||||
var val = func.apply(this, arguments);
|
@ -15,22 +15,13 @@ public class Reading {
|
||||
}
|
||||
|
||||
public static String streamToString(InputStream in) {
|
||||
try {
|
||||
StringBuilder out = new StringBuilder();
|
||||
BufferedReader br = new BufferedReader(new InputStreamReader(in));
|
||||
|
||||
for(var line = br.readLine(); line != null; line = br.readLine()) {
|
||||
out.append(line).append('\n');
|
||||
}
|
||||
|
||||
br.close();
|
||||
return out.toString();
|
||||
}
|
||||
try { return new String(in.readAllBytes()); }
|
||||
catch (Throwable e) { throw new UncheckedException(e); }
|
||||
}
|
||||
public static InputStream resourceToStream(String name) {
|
||||
return Reading.class.getResourceAsStream("/assets/" + name);
|
||||
}
|
||||
public static String resourceToString(String name) {
|
||||
var str = Main.class.getResourceAsStream("/me/topchetoeu/jscript/" + name);
|
||||
if (str == null) return null;
|
||||
return streamToString(str);
|
||||
return streamToString(resourceToStream(name));
|
||||
}
|
||||
}
|
||||
|
@ -9,6 +9,7 @@ import java.util.Base64;
|
||||
import java.util.HashMap;
|
||||
|
||||
import me.topchetoeu.jscript.Metadata;
|
||||
import me.topchetoeu.jscript.Reading;
|
||||
import me.topchetoeu.jscript.engine.debug.WebSocketMessage.Type;
|
||||
import me.topchetoeu.jscript.events.Notifier;
|
||||
import me.topchetoeu.jscript.exceptions.SyntaxException;
|
||||
@ -232,10 +233,9 @@ public class DebugServer {
|
||||
|
||||
public DebugServer() {
|
||||
try {
|
||||
this.favicon = getClass().getClassLoader().getResourceAsStream("assets/favicon.png").readAllBytes();
|
||||
this.protocol = getClass().getClassLoader().getResourceAsStream("assets/protocol.json").readAllBytes();
|
||||
var index = new String(getClass().getClassLoader().getResourceAsStream("assets/index.html").readAllBytes());
|
||||
this.index = index
|
||||
this.favicon = Reading.resourceToStream("debugger/favicon.png").readAllBytes();
|
||||
this.protocol = Reading.resourceToStream("debugger/protocol.json").readAllBytes();
|
||||
this.index = Reading.resourceToString("debugger/index.html")
|
||||
.replace("${NAME}", Metadata.name())
|
||||
.replace("${VERSION}", Metadata.version())
|
||||
.replace("${AUTHOR}", Metadata.author())
|
||||
|
Loading…
Reference in New Issue
Block a user