@gadmin2n/cli 0.0.84 → 0.0.85

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.
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.PrismaAction = void 0;
13
13
  const chalk = require("chalk");
14
14
  const fs = require("fs");
15
+ const path_1 = require("path");
15
16
  const abstract_action_1 = require("./abstract.action");
16
17
  const shell = require("shelljs");
17
18
  const readline = require("readline");
@@ -99,7 +100,10 @@ class PrismaAction extends abstract_action_1.AbstractAction {
99
100
  // 清空 generated 目录(按模式选择)
100
101
  if (webOnly) {
101
102
  // 只清 server/src/generated/.react(清理旧 react 输出)
102
- fs.rmSync('server/src/generated/.react', { recursive: true, force: true });
103
+ fs.rmSync('server/src/generated/.react', {
104
+ recursive: true,
105
+ force: true,
106
+ });
103
107
  }
104
108
  else if (serverOnly) {
105
109
  // 只清 server/src/generated/
@@ -129,7 +133,10 @@ class PrismaAction extends abstract_action_1.AbstractAction {
129
133
  recursive: true,
130
134
  force: true,
131
135
  });
132
- fs.rmSync('server/src/generated/.react', { recursive: true, force: true });
136
+ fs.rmSync('server/src/generated/.react', {
137
+ recursive: true,
138
+ force: true,
139
+ });
133
140
  // pages 目录可能因所有模型都已存在而未生成,需判断后再复制
134
141
  if (fs.existsSync('web/src/generated/routes')) {
135
142
  fs.cpSync('web/src/generated/routes', 'web/src/routes', {
@@ -154,14 +161,20 @@ class PrismaAction extends abstract_action_1.AbstractAction {
154
161
  shell.mv('-f', `server/src/generated/${modelName}/dto/${modelName}.form.validator.ts`, `web/src/generated/props/${modelName}/form.validator.ts`);
155
162
  fs.cpSync(`server/src/generated/${modelName}`, `server/src/modules/${modelName}`, { recursive: true, force: false });
156
163
  shell.rm('-f', `server/src/generated/${modelName}/*.ts`);
157
- fs.rmSync(`server/src/modules/${modelName}/dto`, {
158
- recursive: true,
159
- force: true,
160
- });
161
- fs.rmSync(`server/src/modules/${modelName}/entities`, {
162
- recursive: true,
163
- force: true,
164
- });
164
+ // 只删除生成器产生的 dto/entities 文件,保留用户自定义的文件(如 canvas.dto.ts)
165
+ for (const subDir of ['dto', 'entities']) {
166
+ const generatedSubDir = `server/src/generated/${modelName}/${subDir}`;
167
+ const modulesSubDir = `server/src/modules/${modelName}/${subDir}`;
168
+ if (fs.existsSync(modulesSubDir) && fs.existsSync(generatedSubDir)) {
169
+ for (const file of fs.readdirSync(generatedSubDir)) {
170
+ fs.rmSync((0, path_1.join)(modulesSubDir, file), { force: true });
171
+ }
172
+ // 目录已空则一并删除
173
+ if (fs.readdirSync(modulesSubDir).length === 0) {
174
+ fs.rmdirSync(modulesSubDir);
175
+ }
176
+ }
177
+ }
165
178
  });
166
179
  }
167
180
  // 更新 Prisma 类型文件(!webOnly)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gadmin2n/cli",
3
- "version": "0.0.84",
3
+ "version": "0.0.85",
4
4
  "description": "Gadmin - modern, fast, powerful node.js web framework (@cli)",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -47,7 +47,7 @@
47
47
  "@angular-devkit/core": "13.3.2",
48
48
  "@angular-devkit/schematics": "13.3.2",
49
49
  "@angular-devkit/schematics-cli": "13.3.2",
50
- "@gadmin2n/schematics": "^0.0.67",
50
+ "@gadmin2n/schematics": "^0.0.68",
51
51
  "abc": "^0.6.1",
52
52
  "chalk": "3.0.0",
53
53
  "chokidar": "3.5.3",