import { readFile, writeFile } from 'fs'; import * as path from 'path'; import { downLoadFile } from './utils'; //修正d.ts中类型定义出现错误的问题,临时修复,因为d.ts并不能完全快速的合并我们的类型修复PR. // copyFolderRecursiveSync("./@types/", "./node_modules/"); function downloadTypes(downFiles: { moduleName: string; urlPath: string; files: string[]; }) { let filePath = path.resolve("./node_modules/" + downFiles.moduleName) + "\\"; for (let file of downFiles.files) { try { downLoadFile(downFiles.urlPath + file, filePath + file); console.log("成功", file); } catch (error) { console.log(file, error); } } } readFile("node_modules\\dxf-parser\\dist\\ParseHelpers.js", "utf-8", (err, str) => { if (!str) { console.error("出错了,读不到文件:node_modules\\dxf-parser\\dist\\ParseHelpers.js"); return; } if (str.includes("case 210:")) return; str = str.replace("case 330:", ` case 210: entity.extrusionDirectionX = curr.value; break; case 220: entity.extrusionDirectionY = curr.value; break; case 230: entity.extrusionDirectionZ = curr.value; break; case 330: `); writeFile("node_modules\\dxf-parser\\dist\\ParseHelpers.js", str, err => { if (err) console.error("dxf parse写入失败"); else console.log("dxf parse hack 成功"); }); }); readFile("node_modules\\@jscad\\modeling\\src\\maths\\constants.js", "utf-8", (err, str) => { str = str.replaceAll("5", "3"); writeFile("node_modules\\@jscad\\modeling\\src\\maths\\constants.js", str, err => { if (err) console.error("csg写入失败"); else console.log("csg hack 成功"); }); }); readFile("node_modules\\rollup-plugin-typescript\\dist\\rollup-plugin-typescript.cjs.js", "utf-8", (err, str) => { if (str.includes("readFile: () => { }")) return; str = str.replaceAll("var resolveHost = {", "var resolveHost = {\r\nreadFile: () => { },\r\n"); writeFile("node_modules\\rollup-plugin-typescript\\dist\\rollup-plugin-typescript.cjs.js", str, err => { if (err) console.error("hack rollup-plugin-typescript error"); else console.log("hack rollup-plugin-typescript ok"); }); }); readFile("node_modules\\rollup-plugin-typescript\\dist\\rollup-plugin-typescript.es.js", "utf-8", (err, str) => { if (str.includes("readFile: () => { }")) return; str = str.replaceAll("var resolveHost = {", "var resolveHost = {\r\nreadFile: () => { },\r\n"); writeFile("node_modules\\rollup-plugin-typescript\\dist\\rollup-plugin-typescript.es.js", str, err => { if (err) console.error("hack rollup-plugin-typescript error"); else console.log("hack rollup-plugin-typescript ok"); }); }); writeFile("node_modules\\@jscad\\modeling\\src\\operations\\modifiers\\retessellate.d.ts", "import { Geom3 } from '../../geometries/types';\r\n\r\nexport default function retessellate(geometry: Geom3): Geom3;\r\n", err => { if (err) console.error("retessellate.d.ts error"); else console.log("retessellate.d.ts ok"); } );