fragment-ts 1.1.13 → 1.1.14
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/dist/cli/commands/init.command.js +1 -1
- package/dist/cli/commands/migrate.command.d.ts +1 -0
- package/dist/cli/commands/migrate.command.d.ts.map +1 -1
- package/dist/cli/commands/migrate.command.js +46 -12
- package/dist/cli/commands/migrate.command.js.map +1 -1
- package/dist/shared/runtime.resolver.d.ts +0 -5
- package/dist/shared/runtime.resolver.d.ts.map +1 -1
- package/dist/shared/runtime.resolver.js +14 -56
- package/dist/shared/runtime.resolver.js.map +1 -1
- package/dist/shared/tsconfig.utils.d.ts +15 -0
- package/dist/shared/tsconfig.utils.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/cli/commands/init.command.ts +1 -1
- package/src/cli/commands/migrate.command.ts +56 -20
- package/src/shared/runtime.resolver.ts +20 -63
- package/src/shared/tsconfig.utils.ts +1 -1
|
@@ -11,6 +11,7 @@ export declare class MigrateCommand {
|
|
|
11
11
|
private static dropSchema;
|
|
12
12
|
private static runSeeds;
|
|
13
13
|
private static createSeed;
|
|
14
|
+
private static verifyTsNode;
|
|
14
15
|
private static verifyEntities;
|
|
15
16
|
private static extractMigrationDirectory;
|
|
16
17
|
private static buildQueryStatement;
|
|
@@ -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;AAUpC,qBAAa,cAAc;IACzB,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;mBAgFlB,iBAAiB;
|
|
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;AAUpC,qBAAa,cAAc;IACzB,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;mBAgFlB,iBAAiB;mBA8GjB,aAAa;mBA4Cb,eAAe;mBAqCf,eAAe;mBA4Cf,iBAAiB;mBA6CjB,UAAU;mBAwEV,UAAU;mBAoCV,UAAU;mBAoCV,QAAQ;mBAkDR,UAAU;IAgC/B,OAAO,CAAC,MAAM,CAAC,YAAY;IAY3B,OAAO,CAAC,MAAM,CAAC,cAAc;IAY7B,OAAO,CAAC,MAAM,CAAC,yBAAyB;IAcxC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAoBlC,OAAO,CAAC,MAAM,CAAC,sBAAsB;CA0BtC"}
|
|
@@ -117,10 +117,13 @@ class MigrateCommand {
|
|
|
117
117
|
static async generateMigration(nameOrPath, options) {
|
|
118
118
|
const mode = runtime_resolver_1.RuntimeResolver.detectRuntimeMode();
|
|
119
119
|
runtime_resolver_1.RuntimeResolver.printMode();
|
|
120
|
+
// Verify ts-node is available in development mode
|
|
121
|
+
if (mode.useTypeScript) {
|
|
122
|
+
this.verifyTsNode();
|
|
123
|
+
}
|
|
120
124
|
const spinner = (0, ora_1.default)(`Generating ${mode.useTypeScript ? "TypeScript" : "JavaScript"} migration...`).start();
|
|
121
125
|
let dataSource = null;
|
|
122
126
|
try {
|
|
123
|
-
runtime_resolver_1.RuntimeResolver.registerTypeScriptRuntime();
|
|
124
127
|
const dbConfig = config_utils_1.ConfigUtils.getDatabaseConfig();
|
|
125
128
|
const paths = runtime_resolver_1.RuntimeResolver.resolvePaths(dbConfig.entities, dbConfig.migrations);
|
|
126
129
|
spinner.info(`Entity paths: ${paths.entities.join(", ")}`);
|
|
@@ -189,10 +192,13 @@ class MigrateCommand {
|
|
|
189
192
|
static async runMigrations() {
|
|
190
193
|
const mode = runtime_resolver_1.RuntimeResolver.detectRuntimeMode();
|
|
191
194
|
runtime_resolver_1.RuntimeResolver.printMode();
|
|
195
|
+
// Verify ts-node is available in development mode
|
|
196
|
+
if (mode.useTypeScript) {
|
|
197
|
+
this.verifyTsNode();
|
|
198
|
+
}
|
|
192
199
|
const spinner = (0, ora_1.default)(`Running ${mode.useTypeScript ? "TypeScript" : "JavaScript"} migrations...`).start();
|
|
193
200
|
let dataSource = null;
|
|
194
201
|
try {
|
|
195
|
-
runtime_resolver_1.RuntimeResolver.registerTypeScriptRuntime();
|
|
196
202
|
const dbConfig = config_utils_1.ConfigUtils.getDatabaseConfig();
|
|
197
203
|
const paths = runtime_resolver_1.RuntimeResolver.resolvePaths(dbConfig.entities, dbConfig.migrations);
|
|
198
204
|
const configOverride = {
|
|
@@ -228,11 +234,11 @@ class MigrateCommand {
|
|
|
228
234
|
const filePath = path.join(migrationsDir, fileName);
|
|
229
235
|
const content = `import { MigrationInterface, QueryRunner } from 'typeorm';
|
|
230
236
|
|
|
231
|
-
|
|
232
|
-
|
|
237
|
+
export class ${name}${timestamp} implements MigrationInterface {
|
|
238
|
+
async up(queryRunner: QueryRunner): Promise<void> {}
|
|
233
239
|
|
|
234
|
-
|
|
235
|
-
|
|
240
|
+
async down(queryRunner: QueryRunner): Promise<void> {}
|
|
241
|
+
}`;
|
|
236
242
|
await fs.ensureDir(path.dirname(filePath));
|
|
237
243
|
await fs.writeFile(filePath, content);
|
|
238
244
|
spinner.succeed(`Migration created: ${fileName}`);
|
|
@@ -246,10 +252,13 @@ class MigrateCommand {
|
|
|
246
252
|
static async revertMigration() {
|
|
247
253
|
const mode = runtime_resolver_1.RuntimeResolver.detectRuntimeMode();
|
|
248
254
|
runtime_resolver_1.RuntimeResolver.printMode();
|
|
255
|
+
// Verify ts-node is available in development mode
|
|
256
|
+
if (mode.useTypeScript) {
|
|
257
|
+
this.verifyTsNode();
|
|
258
|
+
}
|
|
249
259
|
const spinner = (0, ora_1.default)(`Reverting ${mode.useTypeScript ? "TypeScript" : "JavaScript"} migration...`).start();
|
|
250
260
|
let dataSource = null;
|
|
251
261
|
try {
|
|
252
|
-
runtime_resolver_1.RuntimeResolver.registerTypeScriptRuntime();
|
|
253
262
|
const dbConfig = config_utils_1.ConfigUtils.getDatabaseConfig();
|
|
254
263
|
const paths = runtime_resolver_1.RuntimeResolver.resolvePaths(dbConfig.entities, dbConfig.migrations);
|
|
255
264
|
const configOverride = {
|
|
@@ -274,10 +283,13 @@ class MigrateCommand {
|
|
|
274
283
|
static async refreshMigrations() {
|
|
275
284
|
const mode = runtime_resolver_1.RuntimeResolver.detectRuntimeMode();
|
|
276
285
|
runtime_resolver_1.RuntimeResolver.printMode();
|
|
286
|
+
// Verify ts-node is available in development mode
|
|
287
|
+
if (mode.useTypeScript) {
|
|
288
|
+
this.verifyTsNode();
|
|
289
|
+
}
|
|
277
290
|
const spinner = (0, ora_1.default)(`Refreshing ${mode.useTypeScript ? "TypeScript" : "JavaScript"} migrations...`).start();
|
|
278
291
|
let dataSource = null;
|
|
279
292
|
try {
|
|
280
|
-
runtime_resolver_1.RuntimeResolver.registerTypeScriptRuntime();
|
|
281
293
|
const dbConfig = config_utils_1.ConfigUtils.getDatabaseConfig();
|
|
282
294
|
const paths = runtime_resolver_1.RuntimeResolver.resolvePaths(dbConfig.entities, dbConfig.migrations);
|
|
283
295
|
const configOverride = {
|
|
@@ -303,9 +315,12 @@ class MigrateCommand {
|
|
|
303
315
|
static async showStatus() {
|
|
304
316
|
const mode = runtime_resolver_1.RuntimeResolver.detectRuntimeMode();
|
|
305
317
|
runtime_resolver_1.RuntimeResolver.printMode(true);
|
|
318
|
+
// Verify ts-node is available in development mode
|
|
319
|
+
if (mode.useTypeScript) {
|
|
320
|
+
this.verifyTsNode();
|
|
321
|
+
}
|
|
306
322
|
let dataSource = null;
|
|
307
323
|
try {
|
|
308
|
-
runtime_resolver_1.RuntimeResolver.registerTypeScriptRuntime();
|
|
309
324
|
const dbConfig = config_utils_1.ConfigUtils.getDatabaseConfig();
|
|
310
325
|
const paths = runtime_resolver_1.RuntimeResolver.resolvePaths(dbConfig.entities, dbConfig.migrations);
|
|
311
326
|
const configOverride = {
|
|
@@ -349,10 +364,13 @@ class MigrateCommand {
|
|
|
349
364
|
static async syncSchema() {
|
|
350
365
|
const mode = runtime_resolver_1.RuntimeResolver.detectRuntimeMode();
|
|
351
366
|
runtime_resolver_1.RuntimeResolver.printMode();
|
|
367
|
+
// Verify ts-node is available in development mode
|
|
368
|
+
if (mode.useTypeScript) {
|
|
369
|
+
this.verifyTsNode();
|
|
370
|
+
}
|
|
352
371
|
const spinner = (0, ora_1.default)(`Synchronizing ${mode.useTypeScript ? "TypeScript" : "JavaScript"} schema...`).start();
|
|
353
372
|
let dataSource = null;
|
|
354
373
|
try {
|
|
355
|
-
runtime_resolver_1.RuntimeResolver.registerTypeScriptRuntime();
|
|
356
374
|
const dbConfig = config_utils_1.ConfigUtils.getDatabaseConfig();
|
|
357
375
|
const paths = runtime_resolver_1.RuntimeResolver.resolvePaths(dbConfig.entities);
|
|
358
376
|
const configOverride = { entities: paths.entities };
|
|
@@ -374,10 +392,13 @@ class MigrateCommand {
|
|
|
374
392
|
static async dropSchema() {
|
|
375
393
|
const mode = runtime_resolver_1.RuntimeResolver.detectRuntimeMode();
|
|
376
394
|
runtime_resolver_1.RuntimeResolver.printMode();
|
|
395
|
+
// Verify ts-node is available in development mode
|
|
396
|
+
if (mode.useTypeScript) {
|
|
397
|
+
this.verifyTsNode();
|
|
398
|
+
}
|
|
377
399
|
const spinner = (0, ora_1.default)(`Dropping ${mode.useTypeScript ? "TypeScript" : "JavaScript"} schema...`).start();
|
|
378
400
|
let dataSource = null;
|
|
379
401
|
try {
|
|
380
|
-
runtime_resolver_1.RuntimeResolver.registerTypeScriptRuntime();
|
|
381
402
|
const dbConfig = config_utils_1.ConfigUtils.getDatabaseConfig();
|
|
382
403
|
const paths = runtime_resolver_1.RuntimeResolver.resolvePaths(dbConfig.entities);
|
|
383
404
|
const configOverride = { entities: paths.entities };
|
|
@@ -399,9 +420,12 @@ class MigrateCommand {
|
|
|
399
420
|
static async runSeeds() {
|
|
400
421
|
const mode = runtime_resolver_1.RuntimeResolver.detectRuntimeMode();
|
|
401
422
|
runtime_resolver_1.RuntimeResolver.printMode();
|
|
423
|
+
// Verify ts-node is available in development mode
|
|
424
|
+
if (mode.useTypeScript) {
|
|
425
|
+
this.verifyTsNode();
|
|
426
|
+
}
|
|
402
427
|
const spinner = (0, ora_1.default)(`Running ${mode.useTypeScript ? "TypeScript" : "JavaScript"} seeds...`).start();
|
|
403
428
|
try {
|
|
404
|
-
runtime_resolver_1.RuntimeResolver.registerTypeScriptRuntime();
|
|
405
429
|
const dbConfig = config_utils_1.ConfigUtils.getDatabaseConfig();
|
|
406
430
|
const paths = runtime_resolver_1.RuntimeResolver.resolvePaths(dbConfig.entities, dbConfig.migrations);
|
|
407
431
|
const seedsDir = paths.seeds;
|
|
@@ -453,6 +477,16 @@ class MigrateCommand {
|
|
|
453
477
|
}
|
|
454
478
|
}
|
|
455
479
|
// Helper methods
|
|
480
|
+
static verifyTsNode() {
|
|
481
|
+
try {
|
|
482
|
+
require.resolve("ts-node", { paths: [process.cwd()] });
|
|
483
|
+
}
|
|
484
|
+
catch {
|
|
485
|
+
console.error(chalk_1.default.red("❌ ts-node not found in project"));
|
|
486
|
+
console.log(chalk_1.default.yellow("Install it with: npm install --save-dev ts-node"));
|
|
487
|
+
process.exit(1);
|
|
488
|
+
}
|
|
489
|
+
}
|
|
456
490
|
static verifyEntities(dataSource) {
|
|
457
491
|
const entities = dataSource.entityMetadatas;
|
|
458
492
|
if (entities.length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.command.js","sourceRoot":"","sources":["../../../src/cli/commands/migrate.command.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"migrate.command.js","sourceRoot":"","sources":["../../../src/cli/commands/migrate.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,20 +7,15 @@ export interface RuntimePaths {
|
|
|
7
7
|
export interface RuntimeMode {
|
|
8
8
|
useTypeScript: boolean;
|
|
9
9
|
reason: string;
|
|
10
|
-
tsNodeAvailable: boolean;
|
|
11
10
|
hasDecoratorSupport: boolean;
|
|
12
11
|
hasTypeScriptFiles: boolean;
|
|
13
12
|
}
|
|
14
13
|
export declare class RuntimeResolver {
|
|
15
|
-
private static tsNodeAvailable;
|
|
16
|
-
private static tsNodeRegistered;
|
|
17
14
|
private static cachedMode;
|
|
18
15
|
static detectRuntimeMode(): RuntimeMode;
|
|
19
16
|
static resolvePaths(explicitEntities?: string[], explicitMigrations?: string[]): RuntimePaths;
|
|
20
|
-
static registerTypeScriptRuntime(): void;
|
|
21
17
|
static printMode(verbose?: boolean): void;
|
|
22
18
|
static clearCache(): void;
|
|
23
|
-
private static checkTsNodeAvailable;
|
|
24
19
|
private static checkTypeScriptFilesExist;
|
|
25
20
|
}
|
|
26
21
|
//# sourceMappingURL=runtime.resolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.resolver.d.ts","sourceRoot":"","sources":["../../src/shared/runtime.resolver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runtime.resolver.d.ts","sourceRoot":"","sources":["../../src/shared/runtime.resolver.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,mBAAmB,EAAE,OAAO,CAAC;IAC7B,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,UAAU,CAA4B;IAErD,MAAM,CAAC,iBAAiB,IAAI,WAAW;IAkCvC,MAAM,CAAC,YAAY,CACjB,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAC3B,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAC5B,YAAY;IAwCf,MAAM,CAAC,SAAS,CAAC,OAAO,UAAQ,GAAG,IAAI;IA2BvC,MAAM,CAAC,UAAU,IAAI,IAAI;IAIzB,OAAO,CAAC,MAAM,CAAC,yBAAyB;CAczC"}
|
|
@@ -49,7 +49,6 @@ class RuntimeResolver {
|
|
|
49
49
|
const isProduction = env_utils_1.EnvUtils.getEnvironmentMode() === "production";
|
|
50
50
|
const tsConfigExists = tsconfig_utils_1.TsConfigUtils.exists();
|
|
51
51
|
const hasDecoratorSupport = tsconfig_utils_1.TsConfigUtils.hasDecoratorSupport();
|
|
52
|
-
const tsNodeAvailable = this.checkTsNodeAvailable();
|
|
53
52
|
const hasTypeScriptFiles = this.checkTypeScriptFilesExist();
|
|
54
53
|
let useTypeScript = false;
|
|
55
54
|
let reason = "";
|
|
@@ -62,20 +61,17 @@ class RuntimeResolver {
|
|
|
62
61
|
else if (!hasDecoratorSupport) {
|
|
63
62
|
reason = "TypeScript decorators not enabled in tsconfig.json";
|
|
64
63
|
}
|
|
65
|
-
else if (!tsNodeAvailable) {
|
|
66
|
-
reason = "ts-node not installed (run: npm install --save-dev ts-node)";
|
|
67
|
-
}
|
|
68
64
|
else if (!hasTypeScriptFiles) {
|
|
69
65
|
reason = "No TypeScript files found in project";
|
|
70
66
|
}
|
|
71
67
|
else {
|
|
68
|
+
// Assume user has ts-node if they're in dev mode with TS files
|
|
72
69
|
useTypeScript = true;
|
|
73
|
-
reason = "TypeScript development environment detected";
|
|
70
|
+
reason = "TypeScript development environment detected (requires ts-node)";
|
|
74
71
|
}
|
|
75
72
|
this.cachedMode = {
|
|
76
73
|
useTypeScript,
|
|
77
74
|
reason,
|
|
78
|
-
tsNodeAvailable,
|
|
79
75
|
hasDecoratorSupport,
|
|
80
76
|
hasTypeScriptFiles,
|
|
81
77
|
};
|
|
@@ -97,12 +93,12 @@ class RuntimeResolver {
|
|
|
97
93
|
return {
|
|
98
94
|
entities: explicitEntities
|
|
99
95
|
? explicitEntities.map((p) => p
|
|
100
|
-
.replace(new RegExp(`^${rootDir}/`), `${outDir}/`)
|
|
96
|
+
.replace(new RegExp(`^${rootDir.replace(/\\/g, "\\\\")}/`), `${outDir.replace(/\\/g, "\\\\")}/`)
|
|
101
97
|
.replace(/\.ts$/, ".js"))
|
|
102
98
|
: [`${outDir}/**/*.entity.js`],
|
|
103
99
|
migrations: explicitMigrations
|
|
104
100
|
? explicitMigrations.map((p) => p
|
|
105
|
-
.replace(new RegExp(`^${rootDir}/`), `${outDir}/`)
|
|
101
|
+
.replace(new RegExp(`^${rootDir.replace(/\\/g, "\\\\")}/`), `${outDir.replace(/\\/g, "\\\\")}/`)
|
|
106
102
|
.replace(/\.ts$/, ".js"))
|
|
107
103
|
: [`${outDir}/migrations/**/*.js`],
|
|
108
104
|
subscribers: [`${outDir}/**/*.subscriber.js`],
|
|
@@ -110,22 +106,6 @@ class RuntimeResolver {
|
|
|
110
106
|
};
|
|
111
107
|
}
|
|
112
108
|
}
|
|
113
|
-
static registerTypeScriptRuntime() {
|
|
114
|
-
const mode = this.detectRuntimeMode();
|
|
115
|
-
if (mode.useTypeScript && !this.tsNodeRegistered) {
|
|
116
|
-
require("ts-node").register({
|
|
117
|
-
transpileOnly: true,
|
|
118
|
-
compilerOptions: {
|
|
119
|
-
module: "commonjs",
|
|
120
|
-
experimentalDecorators: true,
|
|
121
|
-
emitDecoratorMetadata: true,
|
|
122
|
-
esModuleInterop: true,
|
|
123
|
-
target: "ES2020",
|
|
124
|
-
},
|
|
125
|
-
});
|
|
126
|
-
this.tsNodeRegistered = true;
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
109
|
static printMode(verbose = false) {
|
|
130
110
|
const mode = this.detectRuntimeMode();
|
|
131
111
|
if (mode.useTypeScript) {
|
|
@@ -137,7 +117,6 @@ class RuntimeResolver {
|
|
|
137
117
|
if (verbose) {
|
|
138
118
|
console.log(chalk_1.default.gray("\nRuntime Configuration:"));
|
|
139
119
|
console.log(chalk_1.default.gray(` • Environment: ${env_utils_1.EnvUtils.getEnvironmentMode()}`));
|
|
140
|
-
console.log(chalk_1.default.gray(` • ts-node available: ${mode.tsNodeAvailable}`));
|
|
141
120
|
console.log(chalk_1.default.gray(` • Decorator support: ${mode.hasDecoratorSupport}`));
|
|
142
121
|
console.log(chalk_1.default.gray(` • TypeScript files: ${mode.hasTypeScriptFiles}`));
|
|
143
122
|
console.log(chalk_1.default.gray(` • Root directory: ${tsconfig_utils_1.TsConfigUtils.getRootDir()}`));
|
|
@@ -146,44 +125,23 @@ class RuntimeResolver {
|
|
|
146
125
|
}
|
|
147
126
|
static clearCache() {
|
|
148
127
|
this.cachedMode = null;
|
|
149
|
-
this.tsNodeRegistered = false;
|
|
150
|
-
}
|
|
151
|
-
static checkTsNodeAvailable() {
|
|
152
|
-
if (this.tsNodeAvailable !== null)
|
|
153
|
-
return this.tsNodeAvailable;
|
|
154
|
-
try {
|
|
155
|
-
require.resolve("ts-node");
|
|
156
|
-
this.tsNodeAvailable = true;
|
|
157
|
-
return true;
|
|
158
|
-
}
|
|
159
|
-
catch { }
|
|
160
|
-
const localTsNode = path.join(process.cwd(), "node_modules", "ts-node");
|
|
161
|
-
if (fs.existsSync(localTsNode)) {
|
|
162
|
-
this.tsNodeAvailable = true;
|
|
163
|
-
return true;
|
|
164
|
-
}
|
|
165
|
-
try {
|
|
166
|
-
require.resolve("ts-node", { paths: [process.cwd()] });
|
|
167
|
-
this.tsNodeAvailable = true;
|
|
168
|
-
return true;
|
|
169
|
-
}
|
|
170
|
-
catch { }
|
|
171
|
-
this.tsNodeAvailable = false;
|
|
172
|
-
return false;
|
|
173
128
|
}
|
|
174
129
|
static checkTypeScriptFilesExist() {
|
|
175
130
|
const srcDir = path.join(process.cwd(), "src");
|
|
176
131
|
if (!fs.existsSync(srcDir))
|
|
177
132
|
return false;
|
|
178
|
-
|
|
179
|
-
recursive: true
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
133
|
+
try {
|
|
134
|
+
const files = fs.readdirSync(srcDir, { recursive: true });
|
|
135
|
+
return files.some((file) => {
|
|
136
|
+
const filename = typeof file === "string" ? file : file.toString();
|
|
137
|
+
return filename.endsWith(".ts") && !filename.endsWith(".d.ts");
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
catch {
|
|
141
|
+
return false;
|
|
142
|
+
}
|
|
183
143
|
}
|
|
184
144
|
}
|
|
185
145
|
exports.RuntimeResolver = RuntimeResolver;
|
|
186
|
-
RuntimeResolver.tsNodeAvailable = null;
|
|
187
|
-
RuntimeResolver.tsNodeRegistered = false;
|
|
188
146
|
RuntimeResolver.cachedMode = null;
|
|
189
147
|
//# sourceMappingURL=runtime.resolver.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.resolver.js","sourceRoot":"","sources":["../../src/shared/runtime.resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAuC;AACvC,qDAAiD;AACjD,kDAA0B;AAC1B,2CAA6B;AAC7B,uCAAyB;
|
|
1
|
+
{"version":3,"file":"runtime.resolver.js","sourceRoot":"","sources":["../../src/shared/runtime.resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
interface TsConfigCompilerOptions {
|
|
2
|
+
target?: string;
|
|
3
|
+
module?: string;
|
|
4
|
+
outDir?: string;
|
|
5
|
+
rootDir?: string;
|
|
6
|
+
experimentalDecorators?: boolean;
|
|
7
|
+
emitDecoratorMetadata?: boolean;
|
|
8
|
+
[key: string]: any;
|
|
9
|
+
}
|
|
10
|
+
export interface TsConfig {
|
|
11
|
+
compilerOptions?: TsConfigCompilerOptions;
|
|
12
|
+
include?: string[];
|
|
13
|
+
[key: string]: any;
|
|
14
|
+
}
|
|
1
15
|
export declare class TsConfigUtils {
|
|
2
16
|
private static configCache;
|
|
3
17
|
private static readonly DEFAULT_PATHS;
|
|
@@ -8,4 +22,5 @@ export declare class TsConfigUtils {
|
|
|
8
22
|
static getOutDir(): string;
|
|
9
23
|
static getIncludePatterns(): string[];
|
|
10
24
|
}
|
|
25
|
+
export {};
|
|
11
26
|
//# sourceMappingURL=tsconfig.utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tsconfig.utils.d.ts","sourceRoot":"","sources":["../../src/shared/tsconfig.utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tsconfig.utils.d.ts","sourceRoot":"","sources":["../../src/shared/tsconfig.utils.ts"],"names":[],"mappings":"AAKA,UAAU,uBAAuB;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,MAAM,WAAW,QAAQ;IACvB,eAAe,CAAC,EAAE,uBAAuB,CAAC;IAC1C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,WAAW,CAAyB;IACnD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAqB;IAE1D,OAAO,CAAC,MAAM,CAAC,UAAU;IAiBzB,MAAM,CAAC,MAAM,IAAI,OAAO;IAMxB,MAAM,CAAC,mBAAmB,IAAI,OAAO;IAMrC,MAAM,CAAC,UAAU,IAAI,MAAM;IAQ3B,MAAM,CAAC,SAAS,IAAI,MAAM;IAM1B,MAAM,CAAC,kBAAkB,IAAI,MAAM,EAAE;CAItC"}
|
package/package.json
CHANGED
|
@@ -96,14 +96,17 @@ export class MigrateCommand {
|
|
|
96
96
|
const mode = RuntimeResolver.detectRuntimeMode();
|
|
97
97
|
RuntimeResolver.printMode();
|
|
98
98
|
|
|
99
|
+
// Verify ts-node is available in development mode
|
|
100
|
+
if (mode.useTypeScript) {
|
|
101
|
+
this.verifyTsNode();
|
|
102
|
+
}
|
|
103
|
+
|
|
99
104
|
const spinner = ora(
|
|
100
105
|
`Generating ${mode.useTypeScript ? "TypeScript" : "JavaScript"} migration...`,
|
|
101
106
|
).start();
|
|
102
107
|
let dataSource: DataSource | null = null;
|
|
103
108
|
|
|
104
109
|
try {
|
|
105
|
-
RuntimeResolver.registerTypeScriptRuntime();
|
|
106
|
-
|
|
107
110
|
const dbConfig = ConfigUtils.getDatabaseConfig();
|
|
108
111
|
const paths = RuntimeResolver.resolvePaths(
|
|
109
112
|
dbConfig.entities,
|
|
@@ -200,14 +203,17 @@ export class MigrateCommand {
|
|
|
200
203
|
const mode = RuntimeResolver.detectRuntimeMode();
|
|
201
204
|
RuntimeResolver.printMode();
|
|
202
205
|
|
|
206
|
+
// Verify ts-node is available in development mode
|
|
207
|
+
if (mode.useTypeScript) {
|
|
208
|
+
this.verifyTsNode();
|
|
209
|
+
}
|
|
210
|
+
|
|
203
211
|
const spinner = ora(
|
|
204
212
|
`Running ${mode.useTypeScript ? "TypeScript" : "JavaScript"} migrations...`,
|
|
205
213
|
).start();
|
|
206
214
|
let dataSource: DataSource | null = null;
|
|
207
215
|
|
|
208
216
|
try {
|
|
209
|
-
RuntimeResolver.registerTypeScriptRuntime();
|
|
210
|
-
|
|
211
217
|
const dbConfig = ConfigUtils.getDatabaseConfig();
|
|
212
218
|
const paths = RuntimeResolver.resolvePaths(
|
|
213
219
|
dbConfig.entities,
|
|
@@ -256,11 +262,11 @@ export class MigrateCommand {
|
|
|
256
262
|
|
|
257
263
|
const content = `import { MigrationInterface, QueryRunner } from 'typeorm';
|
|
258
264
|
|
|
259
|
-
|
|
260
|
-
|
|
265
|
+
export class ${name}${timestamp} implements MigrationInterface {
|
|
266
|
+
async up(queryRunner: QueryRunner): Promise<void> {}
|
|
261
267
|
|
|
262
|
-
|
|
263
|
-
|
|
268
|
+
async down(queryRunner: QueryRunner): Promise<void> {}
|
|
269
|
+
}`;
|
|
264
270
|
|
|
265
271
|
await fs.ensureDir(path.dirname(filePath));
|
|
266
272
|
await fs.writeFile(filePath, content);
|
|
@@ -278,14 +284,17 @@ export class MigrateCommand {
|
|
|
278
284
|
const mode = RuntimeResolver.detectRuntimeMode();
|
|
279
285
|
RuntimeResolver.printMode();
|
|
280
286
|
|
|
287
|
+
// Verify ts-node is available in development mode
|
|
288
|
+
if (mode.useTypeScript) {
|
|
289
|
+
this.verifyTsNode();
|
|
290
|
+
}
|
|
291
|
+
|
|
281
292
|
const spinner = ora(
|
|
282
293
|
`Reverting ${mode.useTypeScript ? "TypeScript" : "JavaScript"} migration...`,
|
|
283
294
|
).start();
|
|
284
295
|
let dataSource: DataSource | null = null;
|
|
285
296
|
|
|
286
297
|
try {
|
|
287
|
-
RuntimeResolver.registerTypeScriptRuntime();
|
|
288
|
-
|
|
289
298
|
const dbConfig = ConfigUtils.getDatabaseConfig();
|
|
290
299
|
const paths = RuntimeResolver.resolvePaths(
|
|
291
300
|
dbConfig.entities,
|
|
@@ -319,14 +328,17 @@ export class MigrateCommand {
|
|
|
319
328
|
const mode = RuntimeResolver.detectRuntimeMode();
|
|
320
329
|
RuntimeResolver.printMode();
|
|
321
330
|
|
|
331
|
+
// Verify ts-node is available in development mode
|
|
332
|
+
if (mode.useTypeScript) {
|
|
333
|
+
this.verifyTsNode();
|
|
334
|
+
}
|
|
335
|
+
|
|
322
336
|
const spinner = ora(
|
|
323
337
|
`Refreshing ${mode.useTypeScript ? "TypeScript" : "JavaScript"} migrations...`,
|
|
324
338
|
).start();
|
|
325
339
|
let dataSource: DataSource | null = null;
|
|
326
340
|
|
|
327
341
|
try {
|
|
328
|
-
RuntimeResolver.registerTypeScriptRuntime();
|
|
329
|
-
|
|
330
342
|
const dbConfig = ConfigUtils.getDatabaseConfig();
|
|
331
343
|
const paths = RuntimeResolver.resolvePaths(
|
|
332
344
|
dbConfig.entities,
|
|
@@ -361,11 +373,14 @@ export class MigrateCommand {
|
|
|
361
373
|
const mode = RuntimeResolver.detectRuntimeMode();
|
|
362
374
|
RuntimeResolver.printMode(true);
|
|
363
375
|
|
|
376
|
+
// Verify ts-node is available in development mode
|
|
377
|
+
if (mode.useTypeScript) {
|
|
378
|
+
this.verifyTsNode();
|
|
379
|
+
}
|
|
380
|
+
|
|
364
381
|
let dataSource: DataSource | null = null;
|
|
365
382
|
|
|
366
383
|
try {
|
|
367
|
-
RuntimeResolver.registerTypeScriptRuntime();
|
|
368
|
-
|
|
369
384
|
const dbConfig = ConfigUtils.getDatabaseConfig();
|
|
370
385
|
const paths = RuntimeResolver.resolvePaths(
|
|
371
386
|
dbConfig.entities,
|
|
@@ -430,14 +445,17 @@ export class MigrateCommand {
|
|
|
430
445
|
const mode = RuntimeResolver.detectRuntimeMode();
|
|
431
446
|
RuntimeResolver.printMode();
|
|
432
447
|
|
|
448
|
+
// Verify ts-node is available in development mode
|
|
449
|
+
if (mode.useTypeScript) {
|
|
450
|
+
this.verifyTsNode();
|
|
451
|
+
}
|
|
452
|
+
|
|
433
453
|
const spinner = ora(
|
|
434
454
|
`Synchronizing ${mode.useTypeScript ? "TypeScript" : "JavaScript"} schema...`,
|
|
435
455
|
).start();
|
|
436
456
|
let dataSource: DataSource | null = null;
|
|
437
457
|
|
|
438
458
|
try {
|
|
439
|
-
RuntimeResolver.registerTypeScriptRuntime();
|
|
440
|
-
|
|
441
459
|
const dbConfig = ConfigUtils.getDatabaseConfig();
|
|
442
460
|
const paths = RuntimeResolver.resolvePaths(dbConfig.entities);
|
|
443
461
|
|
|
@@ -463,14 +481,17 @@ export class MigrateCommand {
|
|
|
463
481
|
const mode = RuntimeResolver.detectRuntimeMode();
|
|
464
482
|
RuntimeResolver.printMode();
|
|
465
483
|
|
|
484
|
+
// Verify ts-node is available in development mode
|
|
485
|
+
if (mode.useTypeScript) {
|
|
486
|
+
this.verifyTsNode();
|
|
487
|
+
}
|
|
488
|
+
|
|
466
489
|
const spinner = ora(
|
|
467
490
|
`Dropping ${mode.useTypeScript ? "TypeScript" : "JavaScript"} schema...`,
|
|
468
491
|
).start();
|
|
469
492
|
let dataSource: DataSource | null = null;
|
|
470
493
|
|
|
471
494
|
try {
|
|
472
|
-
RuntimeResolver.registerTypeScriptRuntime();
|
|
473
|
-
|
|
474
495
|
const dbConfig = ConfigUtils.getDatabaseConfig();
|
|
475
496
|
const paths = RuntimeResolver.resolvePaths(dbConfig.entities);
|
|
476
497
|
|
|
@@ -496,12 +517,15 @@ export class MigrateCommand {
|
|
|
496
517
|
const mode = RuntimeResolver.detectRuntimeMode();
|
|
497
518
|
RuntimeResolver.printMode();
|
|
498
519
|
|
|
520
|
+
// Verify ts-node is available in development mode
|
|
521
|
+
if (mode.useTypeScript) {
|
|
522
|
+
this.verifyTsNode();
|
|
523
|
+
}
|
|
524
|
+
|
|
499
525
|
const spinner = ora(
|
|
500
526
|
`Running ${mode.useTypeScript ? "TypeScript" : "JavaScript"} seeds...`,
|
|
501
527
|
).start();
|
|
502
528
|
try {
|
|
503
|
-
RuntimeResolver.registerTypeScriptRuntime();
|
|
504
|
-
|
|
505
529
|
const dbConfig = ConfigUtils.getDatabaseConfig();
|
|
506
530
|
const paths = RuntimeResolver.resolvePaths(
|
|
507
531
|
dbConfig.entities,
|
|
@@ -571,6 +595,18 @@ export class MigrateCommand {
|
|
|
571
595
|
}
|
|
572
596
|
|
|
573
597
|
// Helper methods
|
|
598
|
+
private static verifyTsNode(): void {
|
|
599
|
+
try {
|
|
600
|
+
require.resolve("ts-node", { paths: [process.cwd()] });
|
|
601
|
+
} catch {
|
|
602
|
+
console.error(chalk.red("❌ ts-node not found in project"));
|
|
603
|
+
console.log(
|
|
604
|
+
chalk.yellow("Install it with: npm install --save-dev ts-node"),
|
|
605
|
+
);
|
|
606
|
+
process.exit(1);
|
|
607
|
+
}
|
|
608
|
+
}
|
|
609
|
+
|
|
574
610
|
private static verifyEntities(dataSource: DataSource): void {
|
|
575
611
|
const entities = dataSource.entityMetadatas;
|
|
576
612
|
if (entities.length === 0) {
|
|
@@ -3,7 +3,6 @@ import { TsConfigUtils } from "./tsconfig.utils";
|
|
|
3
3
|
import chalk from "chalk";
|
|
4
4
|
import * as path from "path";
|
|
5
5
|
import * as fs from "fs";
|
|
6
|
-
import ora from "ora";
|
|
7
6
|
|
|
8
7
|
export interface RuntimePaths {
|
|
9
8
|
entities: string[];
|
|
@@ -15,14 +14,11 @@ export interface RuntimePaths {
|
|
|
15
14
|
export interface RuntimeMode {
|
|
16
15
|
useTypeScript: boolean;
|
|
17
16
|
reason: string;
|
|
18
|
-
tsNodeAvailable: boolean;
|
|
19
17
|
hasDecoratorSupport: boolean;
|
|
20
18
|
hasTypeScriptFiles: boolean;
|
|
21
19
|
}
|
|
22
20
|
|
|
23
21
|
export class RuntimeResolver {
|
|
24
|
-
private static tsNodeAvailable: boolean | null = null;
|
|
25
|
-
private static tsNodeRegistered = false;
|
|
26
22
|
private static cachedMode: RuntimeMode | null = null;
|
|
27
23
|
|
|
28
24
|
static detectRuntimeMode(): RuntimeMode {
|
|
@@ -31,7 +27,6 @@ export class RuntimeResolver {
|
|
|
31
27
|
const isProduction = EnvUtils.getEnvironmentMode() === "production";
|
|
32
28
|
const tsConfigExists = TsConfigUtils.exists();
|
|
33
29
|
const hasDecoratorSupport = TsConfigUtils.hasDecoratorSupport();
|
|
34
|
-
const tsNodeAvailable = this.checkTsNodeAvailable();
|
|
35
30
|
const hasTypeScriptFiles = this.checkTypeScriptFilesExist();
|
|
36
31
|
|
|
37
32
|
let useTypeScript = false;
|
|
@@ -43,19 +38,17 @@ export class RuntimeResolver {
|
|
|
43
38
|
reason = "No tsconfig.json found";
|
|
44
39
|
} else if (!hasDecoratorSupport) {
|
|
45
40
|
reason = "TypeScript decorators not enabled in tsconfig.json";
|
|
46
|
-
} else if (!tsNodeAvailable) {
|
|
47
|
-
reason = "ts-node not installed (run: npm install --save-dev ts-node)";
|
|
48
41
|
} else if (!hasTypeScriptFiles) {
|
|
49
42
|
reason = "No TypeScript files found in project";
|
|
50
43
|
} else {
|
|
44
|
+
// Assume user has ts-node if they're in dev mode with TS files
|
|
51
45
|
useTypeScript = true;
|
|
52
|
-
reason = "TypeScript development environment detected";
|
|
46
|
+
reason = "TypeScript development environment detected (requires ts-node)";
|
|
53
47
|
}
|
|
54
48
|
|
|
55
49
|
this.cachedMode = {
|
|
56
50
|
useTypeScript,
|
|
57
51
|
reason,
|
|
58
|
-
tsNodeAvailable,
|
|
59
52
|
hasDecoratorSupport,
|
|
60
53
|
hasTypeScriptFiles,
|
|
61
54
|
};
|
|
@@ -82,14 +75,20 @@ export class RuntimeResolver {
|
|
|
82
75
|
entities: explicitEntities
|
|
83
76
|
? explicitEntities.map((p) =>
|
|
84
77
|
p
|
|
85
|
-
.replace(
|
|
78
|
+
.replace(
|
|
79
|
+
new RegExp(`^${rootDir.replace(/\\/g, "\\\\")}/`),
|
|
80
|
+
`${outDir.replace(/\\/g, "\\\\")}/`,
|
|
81
|
+
)
|
|
86
82
|
.replace(/\.ts$/, ".js"),
|
|
87
83
|
)
|
|
88
84
|
: [`${outDir}/**/*.entity.js`],
|
|
89
85
|
migrations: explicitMigrations
|
|
90
86
|
? explicitMigrations.map((p) =>
|
|
91
87
|
p
|
|
92
|
-
.replace(
|
|
88
|
+
.replace(
|
|
89
|
+
new RegExp(`^${rootDir.replace(/\\/g, "\\\\")}/`),
|
|
90
|
+
`${outDir.replace(/\\/g, "\\\\")}/`,
|
|
91
|
+
)
|
|
93
92
|
.replace(/\.ts$/, ".js"),
|
|
94
93
|
)
|
|
95
94
|
: [`${outDir}/migrations/**/*.js`],
|
|
@@ -99,23 +98,6 @@ export class RuntimeResolver {
|
|
|
99
98
|
}
|
|
100
99
|
}
|
|
101
100
|
|
|
102
|
-
static registerTypeScriptRuntime(): void {
|
|
103
|
-
const mode = this.detectRuntimeMode();
|
|
104
|
-
if (mode.useTypeScript && !this.tsNodeRegistered) {
|
|
105
|
-
require("ts-node").register({
|
|
106
|
-
transpileOnly: true,
|
|
107
|
-
compilerOptions: {
|
|
108
|
-
module: "commonjs",
|
|
109
|
-
experimentalDecorators: true,
|
|
110
|
-
emitDecoratorMetadata: true,
|
|
111
|
-
esModuleInterop: true,
|
|
112
|
-
target: "ES2020",
|
|
113
|
-
},
|
|
114
|
-
});
|
|
115
|
-
this.tsNodeRegistered = true;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
|
|
119
101
|
static printMode(verbose = false): void {
|
|
120
102
|
const mode = this.detectRuntimeMode();
|
|
121
103
|
if (mode.useTypeScript) {
|
|
@@ -128,7 +110,6 @@ export class RuntimeResolver {
|
|
|
128
110
|
console.log(
|
|
129
111
|
chalk.gray(` • Environment: ${EnvUtils.getEnvironmentMode()}`),
|
|
130
112
|
);
|
|
131
|
-
console.log(chalk.gray(` • ts-node available: ${mode.tsNodeAvailable}`));
|
|
132
113
|
console.log(
|
|
133
114
|
chalk.gray(` • Decorator support: ${mode.hasDecoratorSupport}`),
|
|
134
115
|
);
|
|
@@ -146,44 +127,20 @@ export class RuntimeResolver {
|
|
|
146
127
|
|
|
147
128
|
static clearCache(): void {
|
|
148
129
|
this.cachedMode = null;
|
|
149
|
-
this.tsNodeRegistered = false;
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
private static checkTsNodeAvailable(): boolean {
|
|
153
|
-
if (this.tsNodeAvailable !== null) return this.tsNodeAvailable;
|
|
154
|
-
|
|
155
|
-
try {
|
|
156
|
-
require.resolve("ts-node");
|
|
157
|
-
this.tsNodeAvailable = true;
|
|
158
|
-
return true;
|
|
159
|
-
} catch {}
|
|
160
|
-
|
|
161
|
-
const localTsNode = path.join(process.cwd(), "node_modules", "ts-node");
|
|
162
|
-
if (fs.existsSync(localTsNode)) {
|
|
163
|
-
this.tsNodeAvailable = true;
|
|
164
|
-
return true;
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
try {
|
|
168
|
-
require.resolve("ts-node", { paths: [process.cwd()] });
|
|
169
|
-
this.tsNodeAvailable = true;
|
|
170
|
-
return true;
|
|
171
|
-
} catch {}
|
|
172
|
-
|
|
173
|
-
this.tsNodeAvailable = false;
|
|
174
|
-
return false;
|
|
175
130
|
}
|
|
176
131
|
|
|
177
132
|
private static checkTypeScriptFilesExist(): boolean {
|
|
178
133
|
const srcDir = path.join(process.cwd(), "src");
|
|
179
134
|
if (!fs.existsSync(srcDir)) return false;
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
135
|
+
|
|
136
|
+
try {
|
|
137
|
+
const files = fs.readdirSync(srcDir, { recursive: true });
|
|
138
|
+
return files.some((file) => {
|
|
139
|
+
const filename = typeof file === "string" ? file : file.toString();
|
|
140
|
+
return filename.endsWith(".ts") && !filename.endsWith(".d.ts");
|
|
141
|
+
});
|
|
142
|
+
} catch {
|
|
143
|
+
return false;
|
|
144
|
+
}
|
|
188
145
|
}
|
|
189
146
|
}
|