24 lines
1.0 KiB
JavaScript
24 lines
1.0 KiB
JavaScript
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')); |