This commit is contained in:
dutchie031
2026-07-03 13:26:01 +02:00
parent 16e76d96d3
commit df79538491
4 changed files with 188 additions and 77 deletions
+11 -7
View File
@@ -63,7 +63,9 @@ export class ScriptCompiler {
const fullPath = path.join(entry.parentPath, entry.name);
const relativePath = path.relative(this.options.sourcePath, fullPath);
const luaFile = LuaFile.createFromFile(fullPath, this.options.onError);
const parsedFile = new ParsedFile(fileReferenceToLuaVariable(relativePath), luaFile, fullPath);
const luaReference = fileReferenceToLuaVariable(relativePath);
const key = luaReference.replace(LUA_SCRIPT_GLOBAL_KEYWORD + '.', '').toLowerCase();
const parsedFile = new ParsedFile(key, luaFile, fullPath);
parsedFiles.set(parsedFile.fileKey, parsedFile);
metricsMeter.filesRead++;
@@ -97,6 +99,7 @@ export class ScriptCompiler {
class Dependency {
public readonly fileKey: string;
public readonly luaReference: string;
constructor(
public readonly requiredModule: string,
@@ -105,7 +108,8 @@ class Dependency {
public readonly charEnd: number
)
{
this.fileKey = fileReferenceToLuaVariable(requiredModule);
this.luaReference = fileReferenceToLuaVariable(requiredModule);
this.fileKey = this.luaReference.replace(LUA_SCRIPT_GLOBAL_KEYWORD + '.', '').toLowerCase();
}
}
@@ -182,8 +186,8 @@ class Writer {
private getStartLines(): string[] {
return [
`-- Transpiled at (UTC): ${new Date().toISOString()}`,
`local ${LUA_SCRIPT_GLOBAL_KEYWORD} = {}`
`-- Transpiled at (UTC): ${new Date().toISOString()}\n`,
`local ${LUA_SCRIPT_GLOBAL_KEYWORD} = {}\n`
];
}
@@ -287,11 +291,11 @@ class Writer {
}
}
outputLines.push("do -- " + parsedFile.fileKey);
outputLines.push("do -- " + parsedFile.fileKey + "\n");
const lines = parsedFile.luaFile.toLines();
metrics.totalLinesWritten += lines.length;
outputLines.push(...lines.filter(line => line.trim() !== '')); // Filter out empty lines
outputLines.push("end -- " + parsedFile.fileKey);
outputLines.push("end -- " + parsedFile.fileKey + "\n");
writtenFiles.add(parsedFile.fileKey);
metrics.filesWritten++;
};
@@ -302,7 +306,7 @@ class Writer {
}
fs.mkdirSync(path.dirname(this.location), { recursive: true });
fs.writeFileSync(this.location, outputLines.join('\n'), 'utf-8');
fs.writeFileSync(this.location, outputLines.join(''), 'utf-8');
if(includeDevScript) {
const devFileLocation = this.location.replace('.lua', '.dev.lua');