fragment-ts 1.0.45 → 1.0.47

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.
Files changed (65) hide show
  1. package/README.md +96 -91
  2. package/dist/cli/commands/build.command.d.ts.map +1 -1
  3. package/dist/cli/commands/build.command.js +12 -19
  4. package/dist/cli/commands/build.command.js.map +1 -1
  5. package/dist/cli/commands/diagnostics.command.d.ts.map +1 -1
  6. package/dist/cli/commands/diagnostics.command.js +68 -14
  7. package/dist/cli/commands/diagnostics.command.js.map +1 -1
  8. package/dist/cli/commands/env.config.d.ts +10 -0
  9. package/dist/cli/commands/env.config.d.ts.map +1 -0
  10. package/dist/cli/commands/env.config.js +202 -0
  11. package/dist/cli/commands/env.config.js.map +1 -0
  12. package/dist/cli/commands/generate.command.js +9 -9
  13. package/dist/cli/commands/init.command.d.ts.map +1 -1
  14. package/dist/cli/commands/init.command.js +16 -59
  15. package/dist/cli/commands/init.command.js.map +1 -1
  16. package/dist/cli/commands/migrate.command.d.ts +5 -4
  17. package/dist/cli/commands/migrate.command.d.ts.map +1 -1
  18. package/dist/cli/commands/migrate.command.js +34 -9
  19. package/dist/cli/commands/migrate.command.js.map +1 -1
  20. package/dist/cli/commands/serve.command.d.ts.map +1 -1
  21. package/dist/cli/commands/serve.command.js +74 -38
  22. package/dist/cli/commands/serve.command.js.map +1 -1
  23. package/dist/cli/commands/test.command.d.ts.map +1 -1
  24. package/dist/cli/commands/test.command.js +21 -9
  25. package/dist/cli/commands/test.command.js.map +1 -1
  26. package/dist/cli/index.js +3 -12
  27. package/dist/cli/index.js.map +1 -1
  28. package/dist/core/scanner/component-scanner.d.ts +4 -0
  29. package/dist/core/scanner/component-scanner.d.ts.map +1 -1
  30. package/dist/core/scanner/component-scanner.js +15 -0
  31. package/dist/core/scanner/component-scanner.js.map +1 -1
  32. package/dist/shared/config.utils.d.ts +2 -3
  33. package/dist/shared/config.utils.d.ts.map +1 -1
  34. package/dist/shared/config.utils.js +2 -3
  35. package/dist/shared/config.utils.js.map +1 -1
  36. package/dist/shared/env.utils.d.ts +6 -6
  37. package/dist/shared/env.utils.d.ts.map +1 -1
  38. package/dist/shared/env.utils.js +25 -84
  39. package/dist/shared/env.utils.js.map +1 -1
  40. package/dist/testing/runner.d.ts.map +1 -1
  41. package/dist/testing/runner.js +12 -2
  42. package/dist/testing/runner.js.map +1 -1
  43. package/dist/typeorm/typeorm-module.d.ts.map +1 -1
  44. package/dist/typeorm/typeorm-module.js +3 -6
  45. package/dist/typeorm/typeorm-module.js.map +1 -1
  46. package/dist/web/application.d.ts.map +1 -1
  47. package/dist/web/application.js +20 -1
  48. package/dist/web/application.js.map +1 -1
  49. package/examples/blog-api/package-lock.json +0 -38
  50. package/package.json +3 -3
  51. package/src/cli/commands/build.command.ts +13 -29
  52. package/src/cli/commands/diagnostics.command.ts +74 -13
  53. package/src/cli/commands/{env.command.ts → env.config.ts} +9 -32
  54. package/src/cli/commands/generate.command.ts +9 -9
  55. package/src/cli/commands/init.command.ts +17 -63
  56. package/src/cli/commands/migrate.command.ts +37 -9
  57. package/src/cli/commands/serve.command.ts +205 -170
  58. package/src/cli/commands/test.command.ts +30 -8
  59. package/src/cli/index.ts +3 -12
  60. package/src/core/scanner/component-scanner.ts +15 -0
  61. package/src/shared/config.utils.ts +5 -6
  62. package/src/shared/env.utils.ts +27 -55
  63. package/src/testing/runner.ts +11 -2
  64. package/src/typeorm/typeorm-module.ts +4 -18
  65. package/src/web/application.ts +21 -1
@@ -0,0 +1,202 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.EnvCommand = void 0;
40
+ const fs = __importStar(require("fs-extra"));
41
+ const path = __importStar(require("path"));
42
+ const chalk_1 = __importDefault(require("chalk"));
43
+ const diff_1 = require("diff");
44
+ class EnvCommand {
45
+ static register(program) {
46
+ const envCmd = program
47
+ .command("env")
48
+ .description("Manage environment configuration files");
49
+ envCmd
50
+ .command("env:use <envFile>")
51
+ .description("Activate an environment by copying it to .env")
52
+ .action((envFile) => {
53
+ this.useEnv(envFile);
54
+ });
55
+ envCmd
56
+ .command("env:list")
57
+ .description("List all available .env files")
58
+ .action(() => {
59
+ this.listEnvs();
60
+ });
61
+ envCmd
62
+ .command("env:current")
63
+ .description("Show the currently active environment")
64
+ .action(() => {
65
+ this.currentEnv();
66
+ });
67
+ envCmd
68
+ .command("env:diff [envFile]")
69
+ .description("Compare .env with another env file (default: .env.example)")
70
+ .action((envFile = ".env.example") => {
71
+ this.diffEnv(envFile);
72
+ });
73
+ envCmd
74
+ .command("env:init")
75
+ .description("Initialize .env from .env.example if missing")
76
+ .action(() => {
77
+ this.initEnv();
78
+ });
79
+ }
80
+ static useEnv(envFile) {
81
+ const cwd = process.cwd();
82
+ const sourcePath = path.join(cwd, envFile);
83
+ const targetPath = path.join(cwd, ".env");
84
+ if (!fs.existsSync(sourcePath)) {
85
+ console.error(chalk_1.default.red(`❌ Source file not found: ${envFile}`));
86
+ process.exit(1);
87
+ }
88
+ // Backup current .env if it exists and differs
89
+ if (fs.existsSync(targetPath)) {
90
+ const sourceContent = fs.readFileSync(sourcePath, "utf8");
91
+ const targetContent = fs.readFileSync(targetPath, "utf8");
92
+ if (sourceContent !== targetContent) {
93
+ fs.copyFileSync(targetPath, path.join(cwd, ".env.backup"));
94
+ console.log(chalk_1.default.gray("📎 Backed up current .env to .env.backup"));
95
+ }
96
+ }
97
+ fs.copyFileSync(sourcePath, targetPath);
98
+ console.log(chalk_1.default.green(`✅ Environment activated: ${chalk_1.default.bold(envFile)}`));
99
+ console.log(chalk_1.default.gray(` → Copied to .env`));
100
+ }
101
+ static listEnvs() {
102
+ const cwd = process.cwd();
103
+ try {
104
+ const files = fs.readdirSync(cwd);
105
+ const envFiles = files
106
+ .filter((file) => /^\.env(\..*)?$/.test(file))
107
+ .sort();
108
+ if (envFiles.length === 0) {
109
+ console.log(chalk_1.default.yellow("No .env files found in project root."));
110
+ return;
111
+ }
112
+ console.log(chalk_1.default.blue("\nAvailable environment files:"));
113
+ envFiles.forEach((file) => {
114
+ const isActive = file === ".env" ? " ← active" : "";
115
+ console.log(` ${chalk_1.default.cyan(file)}${isActive}`);
116
+ });
117
+ console.log();
118
+ }
119
+ catch (err) {
120
+ console.error(chalk_1.default.red("Failed to read directory"));
121
+ }
122
+ }
123
+ static currentEnv() {
124
+ const cwd = process.cwd();
125
+ const envPath = path.join(cwd, ".env");
126
+ if (!fs.existsSync(envPath)) {
127
+ console.log(chalk_1.default.yellow("No .env file found. Run `fragment env:init` to create one."));
128
+ return;
129
+ }
130
+ const envContent = fs.readFileSync(envPath, "utf8");
131
+ const files = fs.readdirSync(cwd).filter((f) => /^\.env\..+$/.test(f));
132
+ for (const file of files) {
133
+ const fullPath = path.join(cwd, file);
134
+ try {
135
+ const content = fs.readFileSync(fullPath, "utf8");
136
+ if (content === envContent) {
137
+ const name = file.replace(/\.env\./, "");
138
+ console.log(chalk_1.default.green(`Active environment: ${chalk_1.default.bold(name)}`));
139
+ return;
140
+ }
141
+ }
142
+ catch {
143
+ // skip
144
+ }
145
+ }
146
+ console.log(chalk_1.default.gray("Active environment: custom/local (modified)"));
147
+ }
148
+ static diffEnv(envFile) {
149
+ const cwd = process.cwd();
150
+ const currentPath = path.join(cwd, ".env");
151
+ const comparePath = path.join(cwd, envFile);
152
+ if (!fs.existsSync(currentPath)) {
153
+ console.error(chalk_1.default.red("❌ No .env file found. Run `fragment env:init` first."));
154
+ process.exit(1);
155
+ }
156
+ if (!fs.existsSync(comparePath)) {
157
+ console.error(chalk_1.default.red(`❌ Comparison file not found: ${envFile}`));
158
+ process.exit(1);
159
+ }
160
+ const currentContent = fs.readFileSync(currentPath, "utf8");
161
+ const compareContent = fs.readFileSync(comparePath, "utf8");
162
+ const diffs = (0, diff_1.diffLines)(compareContent, currentContent);
163
+ if (diffs.length === 1 && !diffs[0].added && !diffs[0].removed) {
164
+ console.log(chalk_1.default.green(`✅ .env matches ${envFile} exactly.`));
165
+ return;
166
+ }
167
+ console.log(chalk_1.default.blue(`\nChanges between ${chalk_1.default.bold(envFile)} → .env:\n`));
168
+ diffs.forEach((part) => {
169
+ const color = part.added
170
+ ? chalk_1.default.green
171
+ : part.removed
172
+ ? chalk_1.default.red
173
+ : chalk_1.default.gray;
174
+ const prefix = part.added ? "+ " : part.removed ? "- " : " ";
175
+ const lines = part.value.split("\n").slice(0, -1);
176
+ lines.forEach((line) => {
177
+ console.log(color(prefix + line));
178
+ });
179
+ });
180
+ console.log();
181
+ }
182
+ static initEnv() {
183
+ const cwd = process.cwd();
184
+ const examplePath = path.join(cwd, ".env.example");
185
+ const envPath = path.join(cwd, ".env");
186
+ if (fs.existsSync(envPath)) {
187
+ console.log(chalk_1.default.yellow("⚠️ .env already exists. Skipping initialization."));
188
+ return;
189
+ }
190
+ if (!fs.existsSync(examplePath)) {
191
+ console.log(chalk_1.default.gray("📝 Creating empty .env (no .env.example found)"));
192
+ fs.writeFileSync(envPath, "# Environment variables\n", "utf8");
193
+ console.log(chalk_1.default.green("✅ Created empty .env"));
194
+ return;
195
+ }
196
+ fs.copyFileSync(examplePath, envPath);
197
+ console.log(chalk_1.default.green("✅ Initialized .env from .env.example"));
198
+ console.log(chalk_1.default.gray(" Edit .env with your local settings."));
199
+ }
200
+ }
201
+ exports.EnvCommand = EnvCommand;
202
+ //# sourceMappingURL=env.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.config.js","sourceRoot":"","sources":["../../../src/cli/commands/env.config.ts"],"names":[],"mappings":"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"}
@@ -195,21 +195,21 @@ export class ${className} {${repositoryProp}
195
195
  const fileName = this.kebabCase(name) + ".entity.ts";
196
196
  const srcDir = tsconfig_utils_1.TsConfigUtils.getRootDir();
197
197
  const filePath = path.join(srcDir, "entities", fileName);
198
- const content = `import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn } from 'fragment-ts';
198
+ const content = `import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn } from 'typeorm';
199
199
 
200
200
  @Entity()
201
201
  export class ${className} {
202
202
  @PrimaryGeneratedColumn()
203
- id!: number;
203
+ id: number;
204
204
 
205
- @Column({name: 'name'})
206
- name!: string;
205
+ @Column()
206
+ name: string;
207
207
 
208
- @CreateDateColumn({name: 'created_at'})
209
- createdAt?: Date;
208
+ @CreateDateColumn()
209
+ createdAt: Date;
210
210
 
211
- @UpdateDateColumn({name: 'updated_at'})
212
- updatedAt?: Date;
211
+ @UpdateDateColumn()
212
+ updatedAt: Date;
213
213
  }
214
214
  `;
215
215
  await fs.ensureDir(path.dirname(filePath));
@@ -235,7 +235,7 @@ export class ${className} {
235
235
  const filePath = path.join(srcDir, "repositories", fileName);
236
236
  const content = `import { Repository, InjectRepository } from 'fragment-ts';
237
237
  import { ${entityName} } from '../entities/${this.kebabCase(name)}.entity';
238
- import { Repository as TypeOrmRepository } from 'fragment-ts';
238
+ import { Repository as TypeOrmRepository } from 'typeorm';
239
239
 
240
240
  @Repository()
241
241
  export class ${className} {
@@ -1 +1 @@
1
- {"version":3,"file":"init.command.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,qBAAa,WAAW;IACtB,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;WAe1B,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;mBAuF/C,wBAAwB;mBAgDxB,iBAAiB;mBA4IjB,gBAAgB;mBA+BhB,yBAAyB;mBA6BzB,sBAAsB;mBAmBtB,qBAAqB;mBA8BrB,iBAAiB;mBAgDjB,mBAAmB;CA4BzC"}
1
+ {"version":3,"file":"init.command.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,qBAAa,WAAW;IACtB,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;WAe1B,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;mBAsF/C,wBAAwB;mBAgDxB,iBAAiB;mBA+FjB,gBAAgB;mBA+BhB,yBAAyB;mBA6BzB,sBAAsB;mBAmBtB,qBAAqB;mBA8BrB,iBAAiB;mBAgDjB,mBAAmB;CA4BzC"}
@@ -121,7 +121,6 @@ class InitCommand {
121
121
  if (options.skipInstall) {
122
122
  console.log(chalk_1.default.cyan(" npm install"));
123
123
  }
124
- console.log(chalk_1.default.cyan(" fragment env:init"));
125
124
  console.log(chalk_1.default.cyan(" fragment serve"));
126
125
  console.log("");
127
126
  }
@@ -184,7 +183,7 @@ class InitCommand {
184
183
  "migrate:revert": "fragment migrate:revert",
185
184
  },
186
185
  dependencies: {
187
- "fragment-ts": "^1.0.45",
186
+ "fragment-ts": "^1.0.47",
188
187
  "reflect-metadata": "^0.1.13",
189
188
  },
190
189
  devDependencies: {
@@ -217,7 +216,7 @@ class InitCommand {
217
216
  await fs.writeJSON(path.join(projectPath, "tsconfig.json"), tsConfig, {
218
217
  spaces: 2,
219
218
  });
220
- // Create fragment.json with proper environment structure
219
+ // In InitCommand.createConfigFiles()
221
220
  const fragmentConfig = {};
222
221
  if (features.includes("database")) {
223
222
  fragmentConfig.database = {
@@ -227,63 +226,21 @@ class InitCommand {
227
226
  logging: false,
228
227
  entities: ["src/**/*.entity.ts"],
229
228
  migrations: ["src/migrations/**/*.ts"],
230
- subscribers: [],
231
229
  };
232
230
  }
233
- await fs.writeJSON(path.join(projectPath, "fragment.json"), fragmentConfig, {
234
- spaces: 2,
235
- });
236
- // Create .env.example
237
- const envExampleContent = `# Environment variables
238
- NODE_ENV=development
239
- PORT=3000
240
- ${features.includes("database") ? "DATABASE_FILE=database.sqlite" : ""}
241
- `;
242
- await fs.writeFile(path.join(projectPath, ".env.example"), envExampleContent);
243
- await fs.writeFile(path.join(projectPath, ".gitignore"), `# Dependencies
244
- node_modules/
245
-
246
- # Build output
247
- dist/
248
- build/
249
- .out/
250
-
251
- # Environment files
252
- .env
253
- .env.local
254
- .env.backup
255
- .env.mode
256
- .env.production
257
-
258
- # Database
259
- *.sqlite
260
- *.db
261
- *.mdb
262
-
263
- # Logs
264
- logs
265
- *.log
266
-
267
- # Testing
268
- coverage/
269
- .nyc_output/
270
-
271
- # IDE / Editors
272
- .vscode/
273
- .idea/
274
- *.swp
275
- *.swo
276
- .DS_Store
277
-
278
- # Fragment CLI temp files
279
- .fragment-diagnostic-temp.js
280
- .fragment-test-runner.js
281
-
282
- # Misc
283
- npm-debug.log*
284
- yarn-debug.log*
285
- yarn-error.log*
286
- `);
231
+ await fs.writeJSON(path.join(projectPath, "fragment.json"), fragmentConfig, { spaces: 2 });
232
+ const envContent = `NODE_ENV=development
233
+ PORT=3000
234
+ JWT_SECRET=${process.env.JWT_SECRET ?? "your-secret-key-change-this"}
235
+ ${features.includes("database") ? "DATABASE_FILE=database.sqlite" : ""}
236
+ `;
237
+ await fs.writeFile(path.join(projectPath, ".env"), envContent);
238
+ await fs.writeFile(path.join(projectPath, ".gitignore"), `node_modules/
239
+ dist/
240
+ .env
241
+ *.sqlite
242
+ coverage/
243
+ `);
287
244
  }
288
245
  static async generateMainFile(projectPath, config) {
289
246
  const content = `import 'reflect-metadata';
@@ -346,7 +303,7 @@ export class AppService {
346
303
  await fs.writeFile(path.join(projectPath, "src", "services", "app.service.ts"), content);
347
304
  }
348
305
  static async generateExampleEntity(projectPath) {
349
- const content = `import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn } from 'fragment-ts';
306
+ const content = `import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn } from 'typeorm';
350
307
 
351
308
  @Entity()
352
309
  export class User {
@@ -1 +1 @@
1
- {"version":3,"file":"init.command.js","sourceRoot":"","sources":["../../../src/cli/commands/init.command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.command.js","sourceRoot":"","sources":["../../../src/cli/commands/init.command.ts"],"names":[],"mappings":"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"}
@@ -7,10 +7,11 @@ export declare class MigrateCommand {
7
7
  */
8
8
  private static setupEnvironment;
9
9
  /**
10
- * Detect if we should use TypeScript or JavaScript
11
- * - Check if tsconfig.json exists AND has decorator support
12
- * - Check if TypeScript files exist in include patterns
13
- * - Check if ts-node is available
10
+ * Use TypeScript only if:
11
+ * - NODE_ENV !== 'production'
12
+ * - tsconfig.json exists with decorators enabled
13
+ * - ts-node is available
14
+ * - TypeScript files exist
14
15
  */
15
16
  private static shouldUseTypeScript;
16
17
  private static isTsNodeAvailable;
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.command.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/migrate.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,eAAe,CAAwB;IAEtD,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAgFvC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAI/B;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAkClC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAehC,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAWrC;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ;IAmDvB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,yBAAyB;mBAmBnB,iBAAiB;mBA6FjB,aAAa;mBA8Bb,eAAe;mBA+Bf,eAAe;mBA8Bf,iBAAiB;mBA+BjB,UAAU;mBAsEV,UAAU;mBA4BV,UAAU;mBA4BV,QAAQ;mBAsCR,UAAU;IA0B/B,OAAO,CAAC,MAAM,CAAC,cAAc;IAY7B,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAoBlC,OAAO,CAAC,MAAM,CAAC,sBAAsB;CA2BtC"}
1
+ {"version":3,"file":"migrate.command.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/migrate.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYpC,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,eAAe,CAAwB;IAEtD,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAgFvC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAI/B;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAyClC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAehC,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAWrC;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ;IAuDvB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,yBAAyB;mBAwBnB,iBAAiB;mBAgGjB,aAAa;mBA8Bb,eAAe;mBAgCf,eAAe;mBA8Bf,iBAAiB;mBA+BjB,UAAU;mBA2EV,UAAU;mBA4BV,UAAU;mBA4BV,QAAQ;mBAsCR,UAAU;IA2B/B,OAAO,CAAC,MAAM,CAAC,cAAc;IAY7B,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAoBlC,OAAO,CAAC,MAAM,CAAC,sBAAsB;CA2BtC"}
@@ -43,6 +43,7 @@ const chalk_1 = __importDefault(require("chalk"));
43
43
  const ora_1 = __importDefault(require("ora"));
44
44
  const typeorm_module_1 = require("../../typeorm/typeorm-module");
45
45
  const config_utils_1 = require("../../shared/config.utils");
46
+ const env_utils_1 = require("../../shared/env.utils");
46
47
  const tsconfig_utils_1 = require("../../shared/tsconfig.utils");
47
48
  const glob_1 = require("glob");
48
49
  class MigrateCommand {
@@ -122,12 +123,17 @@ class MigrateCommand {
122
123
  return this.shouldUseTypeScript();
123
124
  }
124
125
  /**
125
- * Detect if we should use TypeScript or JavaScript
126
- * - Check if tsconfig.json exists AND has decorator support
127
- * - Check if TypeScript files exist in include patterns
128
- * - Check if ts-node is available
126
+ * Use TypeScript only if:
127
+ * - NODE_ENV !== 'production'
128
+ * - tsconfig.json exists with decorators enabled
129
+ * - ts-node is available
130
+ * - TypeScript files exist
129
131
  */
130
132
  static shouldUseTypeScript() {
133
+ // Never use TS in production
134
+ if (env_utils_1.EnvUtils.getEnvironmentMode() === "production") {
135
+ return false;
136
+ }
131
137
  if (!tsconfig_utils_1.TsConfigUtils.exists()) {
132
138
  return false;
133
139
  }
@@ -141,7 +147,9 @@ class MigrateCommand {
141
147
  const cwd = process.cwd();
142
148
  for (const pattern of includePatterns) {
143
149
  try {
144
- const files = (0, glob_1.globSync)(pattern, { cwd });
150
+ // Normalize pattern to forward slashes for Windows compatibility
151
+ const normalizedPattern = pattern.replace(/\\/g, "/");
152
+ const files = (0, glob_1.globSync)(normalizedPattern, { cwd });
145
153
  if (files.some((file) => file.endsWith(".ts") && !file.endsWith(".d.ts"))) {
146
154
  return true;
147
155
  }
@@ -181,11 +189,13 @@ class MigrateCommand {
181
189
  */
182
190
  static getPaths(useTypeScript) {
183
191
  const dbConfig = config_utils_1.ConfigUtils.getDatabaseConfig();
192
+ // Helper to resolve extension based on mode
184
193
  const resolveExtension = (pattern) => {
185
194
  return useTypeScript
186
195
  ? pattern.replace(/\.js$/, ".ts")
187
196
  : pattern.replace(/\.ts$/, ".js");
188
197
  };
198
+ // If fragment.json has explicit paths, use them
189
199
  if (dbConfig.entities || dbConfig.migrations) {
190
200
  const entities = dbConfig.entities
191
201
  ? dbConfig.entities.map(resolveExtension)
@@ -197,10 +207,12 @@ class MigrateCommand {
197
207
  ? "src/migrations/**/*.ts"
198
208
  : "dist/migrations/**/*.js",
199
209
  ];
210
+ // Extract migration directory for file creation
200
211
  const migrationDir = this.extractMigrationDirectory(migrations[0], useTypeScript);
201
212
  const seedsDir = path.join(migrationDir, "..", "seeds");
202
213
  return { entities, migrations, seeds: seedsDir };
203
214
  }
215
+ // No fragment.json config - infer from tsconfig
204
216
  const rootDir = tsconfig_utils_1.TsConfigUtils.getRootDir();
205
217
  const outDir = tsconfig_utils_1.TsConfigUtils.getOutDir();
206
218
  const entities = [
@@ -218,15 +230,20 @@ class MigrateCommand {
218
230
  * Extract the actual directory path from a glob pattern for file creation
219
231
  */
220
232
  static extractMigrationDirectory(pattern, useTypeScript) {
233
+ // Handle common patterns
221
234
  if (pattern.includes("/**/*")) {
235
+ // Pattern like "src/migrations/**/*.ts" → "src/migrations"
222
236
  return pattern.split("/**/*")[0];
223
237
  }
224
238
  if (pattern.includes("/*.")) {
239
+ // Pattern like "src/migrations/*.ts" → "src/migrations"
225
240
  return pattern.split("/*")[0];
226
241
  }
242
+ // Fallback: assume it's a directory path
227
243
  if (pattern.endsWith(".ts") || pattern.endsWith(".js")) {
228
244
  return path.dirname(pattern);
229
245
  }
246
+ // Default fallback
230
247
  return useTypeScript ? "src/migrations" : "dist/migrations";
231
248
  }
232
249
  static async generateMigration(nameOrPath, options) {
@@ -242,6 +259,7 @@ class MigrateCommand {
242
259
  throw new Error("Failed to initialize DataSource");
243
260
  }
244
261
  this.verifyEntities(dataSource);
262
+ // Setup migrations directory - FIXED: Proper directory extraction
245
263
  const migrationsPattern = migrations[0];
246
264
  const migrationsDir = this.extractMigrationDirectory(migrationsPattern, useTypeScript);
247
265
  await fs.ensureDir(migrationsDir);
@@ -252,6 +270,7 @@ class MigrateCommand {
252
270
  !f.endsWith(".d.ts"))
253
271
  : [];
254
272
  const isFirstMigration = existingMigrations.length === 0;
273
+ // Generate schema changes
255
274
  spinner.text = "Analyzing schema changes...";
256
275
  const sqlInMemory = await dataSource.driver.createSchemaBuilder().log();
257
276
  const upQueries = sqlInMemory.upQueries || [];
@@ -261,6 +280,7 @@ class MigrateCommand {
261
280
  spinner.info("No schema changes detected. Migration not generated.");
262
281
  return;
263
282
  }
283
+ // Create migration
264
284
  const migrationName = options.name ||
265
285
  (nameOrPath ? path.basename(nameOrPath).replace(/\.ts$/, "") : null) ||
266
286
  (isFirstMigration ? "InitialMigration" : "Migration");
@@ -313,10 +333,11 @@ class MigrateCommand {
313
333
  }
314
334
  }
315
335
  static async createMigration(name) {
316
- const useTypeScript = this.setupEnvironment();
336
+ // Always create TypeScript migrations (user can compile if needed)
337
+ const useTypeScript = true; // Force TS for creation
317
338
  const spinner = (0, ora_1.default)("Creating TypeScript migration...").start();
318
339
  try {
319
- const { migrations } = this.getPaths(true);
340
+ const { migrations } = this.getPaths(true); // Always use TS for creation
320
341
  const migrationsDir = this.extractMigrationDirectory(migrations[0], true);
321
342
  const timestamp = Date.now();
322
343
  const fileName = `${timestamp}-${name}.ts`;
@@ -406,6 +427,7 @@ export class ${name}${timestamp} implements MigrationInterface {
406
427
  console.log(` ${chalk_1.default.cyan(m.name)} - ${new Date(m.timestamp).toLocaleString()}`);
407
428
  });
408
429
  }
430
+ // Show migration directory from config
409
431
  const migrationsPattern = migrations[0];
410
432
  const migrationsDir = this.extractMigrationDirectory(migrationsPattern, useTypeScript);
411
433
  const fileExt = useTypeScript ? ".ts" : ".js";
@@ -415,7 +437,9 @@ export class ${name}${timestamp} implements MigrationInterface {
415
437
  .filter((f) => f.endsWith(fileExt));
416
438
  console.log(chalk_1.default.blue(`\n Available ${mode.toLowerCase()} migration files: ${files.length}`));
417
439
  }
440
+ // Show detection info
418
441
  console.log(chalk_1.default.gray(`\n Configuration:`));
442
+ console.log(chalk_1.default.gray(` - Environment mode: ${env_utils_1.EnvUtils.getEnvironmentMode()}`));
419
443
  console.log(chalk_1.default.gray(` - ts-node available: ${this.isTsNodeAvailable()}`));
420
444
  console.log(chalk_1.default.gray(` - Using: ${useTypeScript ? "TypeScript" : "JavaScript"}`));
421
445
  }
@@ -507,10 +531,10 @@ export class ${name}${timestamp} implements MigrationInterface {
507
531
  }
508
532
  }
509
533
  static async createSeed(name) {
510
- const useTypeScript = this.setupEnvironment();
534
+ const useTypeScript = true; // Always create TS seeds
511
535
  const spinner = (0, ora_1.default)("Creating TypeScript seed...").start();
512
536
  try {
513
- const { seeds: seedsDir } = this.getPaths(true);
537
+ const { seeds: seedsDir } = this.getPaths(true); // Always create TS seeds
514
538
  const fileName = `${name}.seed.ts`;
515
539
  const filePath = path.join(seedsDir, fileName);
516
540
  const content = `export default class ${name}Seed {
@@ -528,6 +552,7 @@ export class ${name}${timestamp} implements MigrationInterface {
528
552
  process.exit(1);
529
553
  }
530
554
  }
555
+ // Helper methods remain the same
531
556
  static verifyEntities(dataSource) {
532
557
  const entities = dataSource.entityMetadatas;
533
558
  if (entities.length === 0) {