const { existsSync, readFileSync } = require('fs'); const { removeSync } = require('fs-extra'); const { join } = require('path'); const ts = require('typescript'); const { buildSchema, analyzeEntities, } = require(`${process.cwd()}/node_modules/oak-domain/lib/compiler/schemalBuilder`); const { analyzeDepedency } = require(`${process.cwd()}/node_modules/oak-domain/lib/compiler/dependencyBuilder`); // todo,这里还是很奇怪,要把src/entites的依赖给去掉 analyzeEntities(`${process.cwd()}/node_modules/oak-domain/src/entities`, 'oak-domain/lib/entities'); // 分析项目依赖,并从底向上构建所有的entity const depGraph = analyzeDepedency(process.cwd()); const dependencies = depGraph.ascOrder; dependencies.forEach( (ele) => { analyzeEntities(`${process.cwd()}/node_modules/${ele}/src/entities`, `${ele}/lib/entities`); } ); analyzeEntities(join(process.cwd(), 'src', 'entities')); removeSync(join(process.cwd(), 'src', 'oak-app-domain')); buildSchema(join(process.cwd(), 'src', 'oak-app-domain'));