@cloudbase/lowcode-builder 1.1.6 → 1.1.7

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.
@@ -456,10 +456,13 @@ async function installDependencies(targetDir, options = {}) {
456
456
  }
457
457
  }
458
458
  catch (e) { }
459
- // 如果generatedFileContents[path.resolve(targetDir, 'package.json')]不存在,说明是不存在缓存文件,isPkgModify必须是true,才不会忽略install
460
- const isPkgModify = !generateFiles_1.generatedFileContents[path_1.default.resolve(targetDir, 'package.json')]
461
- ? true
462
- : generateFiles_1.generatedFileContents[path_1.default.resolve(targetDir, 'package.json')].modify;
459
+ const packageJsonPath = path_1.default.resolve(targetDir, 'package.json');
460
+ /**
461
+ * 无 cacheMeta 或 cacheMeta.once 时 遵循 options?.ignoreInstall 配置
462
+ * 否则认为文件发生了更改,应该忽略参数强制安装
463
+ */
464
+ const cacheMeta = generateFiles_1.generatedFileContents[packageJsonPath];
465
+ const isPkgModify = !cacheMeta || cacheMeta.once ? false : generateFiles_1.generatedFileContents[path_1.default.resolve(targetDir, 'package.json')].modify;
463
466
  if ((options === null || options === void 0 ? void 0 : options.ignoreInstall) && fs_extra_1.default.existsSync(path_1.default.join(targetDir, 'node_modules')) && !isPkgModify) {
464
467
  console.log(`ignore install dependencies in ${targetDir}`);
465
468
  return;
@@ -67,8 +67,16 @@ async function generateFiles(appFileData, srcDir, dstDir, ctx) {
67
67
  }
68
68
  exports.default = generateFiles;
69
69
  async function writeFile(outFile, content) {
70
- var _a;
71
- const generated = (_a = exports.generatedFileContents[outFile]) === null || _a === void 0 ? void 0 : _a.content;
70
+ if (!exports.generatedFileContents[outFile]) {
71
+ exports.generatedFileContents[outFile] = {
72
+ once: true,
73
+ };
74
+ }
75
+ else {
76
+ exports.generatedFileContents[outFile].once = false;
77
+ }
78
+ const meta = exports.generatedFileContents[outFile];
79
+ const generated = meta.content;
72
80
  if (generated === content && fs_extra_1.default.existsSync(outFile)) {
73
81
  exports.generatedFileContents[outFile].modify = false;
74
82
  return false;
@@ -76,7 +84,7 @@ async function writeFile(outFile, content) {
76
84
  // console.log(outFile);
77
85
  await fs_extra_1.default.ensureFile(outFile);
78
86
  await fs_extra_1.default.writeFile(outFile, content);
79
- exports.generatedFileContents[outFile] = { content, modify: true };
87
+ exports.generatedFileContents[outFile] = { ...meta, content, modify: true };
80
88
  return true;
81
89
  }
82
90
  exports.writeFile = writeFile;