@lark-apaas/fullstack-cli 1.1.58-alpha.1 → 1.1.58-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lark-apaas/fullstack-cli",
3
- "version": "1.1.58-alpha.1",
3
+ "version": "1.1.58-alpha.2",
4
4
  "description": "CLI tool for fullstack template management",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -23,16 +23,33 @@ const OUT_PACKAGE_JSON = path.join(DIST_DIR, 'package.json');
23
23
  // Server 入口文件
24
24
  const SERVER_ENTRY = path.join(DIST_SERVER_DIR, 'main.js');
25
25
 
26
+ // nest sourceRoot(源码根,默认 server):把 .env 里声明的源码路径映射到构建产物位置
27
+ let SOURCE_ROOT = 'server';
28
+ try {
29
+ const nestCli = JSON.parse(fs.readFileSync(path.join(ROOT_DIR, 'nest-cli.json'), 'utf8'));
30
+ if (nestCli.sourceRoot) SOURCE_ROOT = nestCli.sourceRoot;
31
+ } catch {
32
+ // 读不到 nest-cli.json 则用默认 server
33
+ }
34
+ const SRC_TO_OUT_EXT = { '.mts': '.mjs', '.cts': '.cjs', '.ts': '.js' };
35
+
26
36
  // 额外 trace 入口:经 new Function/动态 import 加载、nft 无法从 main.js 静态发现的 ESM runtime。
27
- // 应用在提交的 .env 里用 MIAODA_RUNTIME_ENTRIES 声明(逗号分隔,路径相对 dist/server)。
37
+ // 应用在提交的 .env 里用 MIAODA_RUNTIME_ENTRIES 声明【源码路径】(相对项目根,逗号分隔),例如:
38
+ // MIAODA_RUNTIME_ENTRIES=server/modules/ethics/runtime/review-run.mjs,server/modules/ethics/runtime/parse-core.mjs
39
+ // 脚本按 nest sourceRoot 自动映射到 dist/server 下的构建产物(并重写 .mts→.mjs / .ts→.js)。
28
40
  const RUNTIME_ENTRIES = (process.env.MIAODA_RUNTIME_ENTRIES || '')
29
41
  .split(',')
30
42
  .map((s) => s.trim())
31
43
  .filter(Boolean)
32
- .map((rel) => path.join(DIST_SERVER_DIR, rel))
44
+ .map((srcRel) => {
45
+ const fromSrc = path.relative(SOURCE_ROOT, srcRel); // 去掉 sourceRoot 前缀
46
+ const ext = path.extname(fromSrc);
47
+ const outRel = SRC_TO_OUT_EXT[ext] ? fromSrc.slice(0, -ext.length) + SRC_TO_OUT_EXT[ext] : fromSrc;
48
+ return path.join(DIST_SERVER_DIR, outRel);
49
+ })
33
50
  .filter((p) => {
34
51
  if (fs.existsSync(p)) return true;
35
- console.warn(`⚠️ MIAODA_RUNTIME_ENTRIES 指定的入口不存在,已忽略: ${p}`);
52
+ console.warn(`⚠️ MIAODA_RUNTIME_ENTRIES 入口在构建产物中不存在,已忽略: ${path.relative(ROOT_DIR, p)}`);
36
53
  return false;
37
54
  });
38
55