Reviewed-on: OpenWF/SpaceNinjaServer#2408 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
		
			
				
	
	
		
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/* eslint-disable */
 | 
						|
const fs = require("fs");
 | 
						|
const path = require("path");
 | 
						|
 | 
						|
const root = path.join(process.cwd(), "..");
 | 
						|
 | 
						|
function listFiles(dir) {
 | 
						|
    const entries = fs.readdirSync(dir, { withFileTypes: true });
 | 
						|
    let results = [];
 | 
						|
    for (const entry of entries) {
 | 
						|
        const fullPath = path.join(dir, entry.name);
 | 
						|
        if (entry.isDirectory()) {
 | 
						|
            results = results.concat(listFiles(fullPath));
 | 
						|
        } else {
 | 
						|
            results.push(fullPath);
 | 
						|
        }
 | 
						|
    }
 | 
						|
    return results;
 | 
						|
}
 | 
						|
 | 
						|
const files = listFiles(path.join(root, "src"));
 | 
						|
 | 
						|
for (const file of files) {
 | 
						|
    let content;
 | 
						|
    try {
 | 
						|
        content = fs.readFileSync(file, "utf8");
 | 
						|
    } catch (e) {
 | 
						|
        continue;
 | 
						|
    }
 | 
						|
    const dir = path.dirname(file);
 | 
						|
    const fixedContent = content.replaceAll(/} from "([^"]+)";/g, (sub, importPath) => {
 | 
						|
        if (!importPath.startsWith("@/")) {
 | 
						|
            const fullImportPath = path.resolve(dir, importPath);
 | 
						|
            if (fs.existsSync(fullImportPath + ".ts")) {
 | 
						|
                const relative = path.relative(root, fullImportPath).replace(/\\/g, "/");
 | 
						|
                const fixedPath = "@/" + relative;
 | 
						|
                console.log(`${importPath} -> ${fixedPath}`);
 | 
						|
                return sub.split(importPath).join(fixedPath);
 | 
						|
            }
 | 
						|
        }
 | 
						|
        return sub;
 | 
						|
    });
 | 
						|
    if (content != fixedContent) {
 | 
						|
        fs.writeFileSync(file, fixedContent, "utf8");
 | 
						|
    }
 | 
						|
}
 |