@mikro-orm/cli 7.0.0-dev.1 → 7.0.0-dev.100

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.
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MigrationCommandFactory = void 0;
4
- const core_1 = require("@mikro-orm/core");
5
- const CLIHelper_1 = require("../CLIHelper");
6
- class MigrationCommandFactory {
1
+ import { colors, Utils, } from '@mikro-orm/core';
2
+ import { CLIHelper } from '../CLIHelper.js';
3
+ export class MigrationCommandFactory {
7
4
  static DESCRIPTIONS = {
8
5
  create: 'Create new migration with current schema diff',
9
6
  up: 'Migrate up to the latest version',
@@ -82,27 +79,26 @@ class MigrationCommandFactory {
82
79
  static async handleMigrationCommand(args, method) {
83
80
  // to be able to run have a master transaction, but run marked migrations outside of it, we need a second connection
84
81
  const options = { pool: { min: 1, max: 2 } };
85
- const orm = await CLIHelper_1.CLIHelper.getORM(args.contextName, args.config, options);
86
- const migrator = orm.getMigrator();
82
+ const orm = await CLIHelper.getORM(args.contextName, args.config, options);
87
83
  switch (method) {
88
84
  case 'create':
89
- await this.handleCreateCommand(migrator, args, orm.config);
85
+ await this.handleCreateCommand(orm.migrator, args, orm.config);
90
86
  break;
91
87
  case 'check':
92
- await this.handleCheckCommand(migrator, orm);
88
+ await this.handleCheckCommand(orm.migrator, orm);
93
89
  break;
94
90
  case 'list':
95
- await this.handleListCommand(migrator);
91
+ await this.handleListCommand(orm.migrator);
96
92
  break;
97
93
  case 'pending':
98
- await this.handlePendingCommand(migrator);
94
+ await this.handlePendingCommand(orm.migrator);
99
95
  break;
100
96
  case 'up':
101
97
  case 'down':
102
- await this.handleUpDownCommand(args, migrator, method);
98
+ await this.handleUpDownCommand(args, orm.migrator, method);
103
99
  break;
104
100
  case 'fresh':
105
- await this.handleFreshCommand(args, migrator, orm);
101
+ await this.handleFreshCommand(args, orm.migrator, orm);
106
102
  }
107
103
  await orm.close(true);
108
104
  }
@@ -121,22 +117,22 @@ class MigrationCommandFactory {
121
117
  const opts = MigrationCommandFactory.getUpDownOptions(args);
122
118
  await migrator[method](opts);
123
119
  const message = this.getUpDownSuccessMessage(method, opts);
124
- CLIHelper_1.CLIHelper.dump(core_1.colors.green(message));
120
+ CLIHelper.dump(colors.green(message));
125
121
  }
126
122
  static async handlePendingCommand(migrator) {
127
- const pending = await migrator.getPendingMigrations();
128
- CLIHelper_1.CLIHelper.dumpTable({
123
+ const pending = await migrator.getPending();
124
+ CLIHelper.dumpTable({
129
125
  columns: ['Name'],
130
126
  rows: pending.map(row => [row.name]),
131
127
  empty: 'No pending migrations',
132
128
  });
133
129
  }
134
130
  static async handleListCommand(migrator) {
135
- const executed = await migrator.getExecutedMigrations();
136
- CLIHelper_1.CLIHelper.dumpTable({
131
+ const executed = await migrator.getExecuted();
132
+ CLIHelper.dumpTable({
137
133
  columns: ['Name', 'Executed at'],
138
134
  rows: executed.map(row => {
139
- /* istanbul ignore next */
135
+ /* v8 ignore next */
140
136
  const executedAt = (row.executed_at ?? row.created_at)?.toISOString() ?? '';
141
137
  return [row.name.replace(/\.[jt]s$/, ''), executedAt];
142
138
  }),
@@ -144,46 +140,44 @@ class MigrationCommandFactory {
144
140
  });
145
141
  }
146
142
  static async handleCreateCommand(migrator, args, config) {
147
- const ret = await migrator.createMigration(args.path, args.blank, args.initial, args.name);
143
+ const ret = await migrator.create(args.path, args.blank, args.initial, args.name);
148
144
  if (ret.diff.up.length === 0) {
149
- return CLIHelper_1.CLIHelper.dump(core_1.colors.green(`No changes required, schema is up-to-date`));
145
+ return CLIHelper.dump(colors.green(`No changes required, schema is up-to-date`));
150
146
  }
151
147
  if (args.dump) {
152
- CLIHelper_1.CLIHelper.dump(core_1.colors.green('Creating migration with following queries:'));
153
- CLIHelper_1.CLIHelper.dump(core_1.colors.green('up:'));
154
- CLIHelper_1.CLIHelper.dump(ret.diff.up.map(sql => ' ' + sql).join('\n'), config);
155
- /* istanbul ignore next */
148
+ CLIHelper.dump(colors.green('Creating migration with following queries:'));
149
+ CLIHelper.dump(colors.green('up:'));
150
+ CLIHelper.dump(ret.diff.up.map(sql => ' ' + sql).join('\n'), config);
151
+ /* v8 ignore if */
156
152
  if (config.getDriver().getPlatform().supportsDownMigrations()) {
157
- CLIHelper_1.CLIHelper.dump(core_1.colors.green('down:'));
158
- CLIHelper_1.CLIHelper.dump(ret.diff.down.map(sql => ' ' + sql).join('\n'), config);
153
+ CLIHelper.dump(colors.green('down:'));
154
+ CLIHelper.dump(ret.diff.down.map(sql => ' ' + sql).join('\n'), config);
159
155
  }
160
156
  else {
161
- CLIHelper_1.CLIHelper.dump(core_1.colors.yellow(`(${config.getDriver().constructor.name} does not support automatic down migrations)`));
157
+ CLIHelper.dump(colors.yellow(`(${config.getDriver().constructor.name} does not support automatic down migrations)`));
162
158
  }
163
159
  }
164
- CLIHelper_1.CLIHelper.dump(core_1.colors.green(`${ret.fileName} successfully created`));
160
+ CLIHelper.dump(colors.green(`${ret.fileName} successfully created`));
165
161
  }
166
162
  static async handleCheckCommand(migrator, orm) {
167
- if (!await migrator.checkMigrationNeeded()) {
168
- return CLIHelper_1.CLIHelper.dump(core_1.colors.green(`No changes required, schema is up-to-date`));
163
+ if (!(await migrator.checkSchema())) {
164
+ return CLIHelper.dump(colors.green(`No changes required, schema is up-to-date`));
169
165
  }
170
166
  await orm.close(true);
171
- CLIHelper_1.CLIHelper.dump(core_1.colors.yellow(`Changes detected. Please create migration to update schema.`));
167
+ CLIHelper.dump(colors.yellow(`Changes detected. Please create migration to update schema.`));
172
168
  process.exit(1);
173
169
  }
174
170
  static async handleFreshCommand(args, migrator, orm) {
175
- const generator = orm.getSchemaGenerator();
176
- await generator.dropSchema({ dropMigrationsTable: true, dropDb: args.dropDb });
177
- CLIHelper_1.CLIHelper.dump(core_1.colors.green('Dropped schema successfully'));
171
+ await orm.schema.drop({ dropMigrationsTable: true, dropDb: args.dropDb });
172
+ CLIHelper.dump(colors.green('Dropped schema successfully'));
178
173
  const opts = MigrationCommandFactory.getUpDownOptions(args);
179
174
  await migrator.up(opts);
180
175
  const message = this.getUpDownSuccessMessage('up', opts);
181
- CLIHelper_1.CLIHelper.dump(core_1.colors.green(message));
176
+ CLIHelper.dump(colors.green(message));
182
177
  if (args.seed !== undefined) {
183
- const seeder = orm.getSeeder();
184
178
  const seederClass = args.seed || orm.config.get('seeder').defaultSeeder;
185
- await seeder.seedString(seederClass);
186
- CLIHelper_1.CLIHelper.dump(core_1.colors.green(`Database seeded successfully with seeder class ${seederClass}`));
179
+ await orm.seeder.seedString(seederClass);
180
+ CLIHelper.dump(colors.green(`Database seeded successfully with seeder class ${seederClass}`));
187
181
  }
188
182
  }
189
183
  static getUpDownOptions(flags) {
@@ -196,23 +190,22 @@ class MigrationCommandFactory {
196
190
  }
197
191
  static getUpDownSuccessMessage(method, options) {
198
192
  const msg = `Successfully migrated ${method}`;
199
- if (method === 'down' && core_1.Utils.isEmpty(options)) {
193
+ if (method === 'down' && Utils.isEmpty(options)) {
200
194
  return msg + ' to previous version';
201
195
  }
202
196
  if (options.to === 0) {
203
197
  const v = { down: 'first', up: 'latest' }[method];
204
198
  return `${msg} to the ${v} version`;
205
199
  }
206
- if (method === 'up' && core_1.Utils.isEmpty(options)) {
200
+ if (method === 'up' && Utils.isEmpty(options)) {
207
201
  return msg + ' to the latest version';
208
202
  }
209
- if (core_1.Utils.isString(options.to)) {
203
+ if (typeof options.to === 'string') {
210
204
  return msg + ' to version ' + options.to;
211
205
  }
212
- if (options.migrations && options.migrations.length === 1) {
206
+ if (options.migrations?.length === 1) {
213
207
  return msg + ' to version ' + options.migrations[0];
214
208
  }
215
209
  return msg;
216
210
  }
217
211
  }
218
- exports.MigrationCommandFactory = MigrationCommandFactory;
@@ -1,5 +1,5 @@
1
1
  import type { ArgumentsCamelCase, Argv } from 'yargs';
2
- import type { BaseArgs } from '../CLIConfigurator';
2
+ import type { BaseArgs } from '../CLIConfigurator.js';
3
3
  export declare class SchemaCommandFactory {
4
4
  static readonly DESCRIPTIONS: {
5
5
  readonly create: "Create database schema based on current metadata";
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SchemaCommandFactory = void 0;
4
- const core_1 = require("@mikro-orm/core");
5
- const CLIHelper_1 = require("../CLIHelper");
6
- class SchemaCommandFactory {
1
+ import { colors } from '@mikro-orm/core';
2
+ import { CLIHelper } from '../CLIHelper.js';
3
+ export class SchemaCommandFactory {
7
4
  static DESCRIPTIONS = {
8
5
  create: 'Create database schema based on current metadata',
9
6
  update: 'Update database schema based on current metadata',
@@ -80,17 +77,16 @@ class SchemaCommandFactory {
80
77
  }
81
78
  static async handleSchemaCommand(args, method, successMessage) {
82
79
  if (!args.run && !args.dump) {
83
- return CLIHelper_1.CLIHelper.showHelp();
80
+ return CLIHelper.showHelp();
84
81
  }
85
- const orm = await CLIHelper_1.CLIHelper.getORM(args.contextName, args.config);
86
- const generator = orm.getSchemaGenerator();
82
+ const orm = await CLIHelper.getORM(args.contextName, args.config);
87
83
  const params = { wrap: args.fkChecks == null ? undefined : !args.fkChecks, ...args };
88
84
  if (args.dump) {
89
85
  const m = `get${method.substr(0, 1).toUpperCase()}${method.substr(1)}SchemaSQL`;
90
- const dump = await generator[m](params);
91
- /* istanbul ignore next */
86
+ const dump = await orm.schema[m](params);
87
+ /* v8 ignore if */
92
88
  if (dump) {
93
- CLIHelper_1.CLIHelper.dump(dump, orm.config);
89
+ CLIHelper.dump(dump, orm.config);
94
90
  successMessage = '';
95
91
  }
96
92
  else {
@@ -98,19 +94,15 @@ class SchemaCommandFactory {
98
94
  }
99
95
  }
100
96
  else if (method === 'fresh') {
101
- await generator.dropSchema(params);
102
- await generator.createSchema(params);
97
+ await orm.schema.refresh(params);
103
98
  }
104
99
  else {
105
- const m = method + 'Schema';
106
- await generator[m](params);
100
+ await orm.schema[method](params);
107
101
  }
108
102
  if (typeof args.seed !== 'undefined') {
109
- const seeder = orm.getSeeder();
110
- await seeder.seedString(args.seed || orm.config.get('seeder').defaultSeeder);
103
+ await orm.seeder.seedString(args.seed || orm.config.get('seeder').defaultSeeder);
111
104
  }
112
- CLIHelper_1.CLIHelper.dump(core_1.colors.green(successMessage));
105
+ CLIHelper.dump(colors.green(successMessage));
113
106
  await orm.close(true);
114
107
  }
115
108
  }
116
- exports.SchemaCommandFactory = SchemaCommandFactory;
package/index.d.ts CHANGED
@@ -2,5 +2,5 @@
2
2
  * @packageDocumentation
3
3
  * @module cli
4
4
  */
5
- export * from './CLIHelper';
6
- export * from './CLIConfigurator';
5
+ export * from './CLIHelper.js';
6
+ export * from './CLIConfigurator.js';
package/index.js CHANGED
@@ -1,22 +1,6 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
1
  /**
18
2
  * @packageDocumentation
19
3
  * @module cli
20
4
  */
21
- __exportStar(require("./CLIHelper"), exports);
22
- __exportStar(require("./CLIConfigurator"), exports);
5
+ export * from './CLIHelper.js';
6
+ export * from './CLIConfigurator.js';
package/package.json CHANGED
@@ -1,19 +1,11 @@
1
1
  {
2
2
  "name": "@mikro-orm/cli",
3
- "version": "7.0.0-dev.1",
3
+ "type": "module",
4
+ "version": "7.0.0-dev.100",
4
5
  "description": "TypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns. Supports MongoDB, MySQL, PostgreSQL and SQLite databases as well as usage with vanilla JavaScript.",
5
- "main": "index.js",
6
- "module": "index.mjs",
7
- "typings": "index.d.ts",
8
6
  "exports": {
9
7
  "./package.json": "./package.json",
10
- ".": {
11
- "import": {
12
- "types": "./index.d.ts",
13
- "default": "./index.mjs"
14
- },
15
- "require": "./index.js"
16
- }
8
+ ".": "./index.js"
17
9
  },
18
10
  "repository": {
19
11
  "type": "git",
@@ -46,14 +38,13 @@
46
38
  },
47
39
  "homepage": "https://mikro-orm.io",
48
40
  "bin": {
49
- "mikro-orm": "./cli",
50
- "mikro-orm-esm": "./esm"
41
+ "mikro-orm": "./cli"
51
42
  },
52
43
  "engines": {
53
- "node": ">= 22.11.0"
44
+ "node": ">= 22.17.0"
54
45
  },
55
46
  "scripts": {
56
- "build": "yarn clean && yarn compile && yarn copy && yarn run -T gen-esm-wrapper index.js index.mjs",
47
+ "build": "yarn clean && yarn compile && yarn copy",
57
48
  "clean": "yarn run -T rimraf ./dist",
58
49
  "compile": "yarn run -T tsc -p tsconfig.build.json",
59
50
  "copy": "node ../../scripts/copy.mjs"
@@ -62,16 +53,8 @@
62
53
  "access": "public"
63
54
  },
64
55
  "dependencies": {
65
- "@jercle/yargonaut": "1.1.5",
66
- "@mikro-orm/core": "7.0.0-dev.1",
67
- "@mikro-orm/knex": "7.0.0-dev.1",
68
- "fs-extra": "11.3.0",
69
- "tsconfig-paths": "4.2.0",
56
+ "@mikro-orm/core": "7.0.0-dev.100",
57
+ "mikro-orm": "7.0.0-dev.100",
70
58
  "yargs": "17.7.2"
71
- },
72
- "devDependencies": {
73
- "@mikro-orm/entity-generator": "^6.4.5",
74
- "@mikro-orm/migrations": "^6.4.5",
75
- "@mikro-orm/seeder": "^6.4.5"
76
59
  }
77
60
  }
package/esm DELETED
@@ -1,18 +0,0 @@
1
- #!/usr/bin/env -S node --loader ts-node/esm --no-warnings=ExperimentalWarning
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- // eslint-disable-next-line @typescript-eslint/no-var-requires
5
- require('@jercle/yargonaut')
6
- .style('blue')
7
- .style('yellow', 'required')
8
- .helpStyle('green')
9
- .errorsStyle('red');
10
- const CLIHelper_1 = require("./CLIHelper");
11
- const CLIConfigurator_1 = require("./CLIConfigurator");
12
- void (async () => {
13
- const argv = CLIConfigurator_1.CLIConfigurator.configure();
14
- const args = await argv.parse(process.argv.slice(2));
15
- if (args._.length === 0) {
16
- CLIHelper_1.CLIHelper.showHelp();
17
- }
18
- })();
package/esm.cmd DELETED
@@ -1,3 +0,0 @@
1
- @echo off
2
-
3
- node --loader ts-node/esm --no-warnings=ExperimentalWarning "%~dp0\esm" %*
package/esm.d.ts DELETED
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env -S node --loader ts-node/esm --no-warnings=ExperimentalWarning
2
- export {};
package/esm.js DELETED
@@ -1,18 +0,0 @@
1
- #!/usr/bin/env -S node --loader ts-node/esm --no-warnings=ExperimentalWarning
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- // eslint-disable-next-line @typescript-eslint/no-var-requires
5
- require('@jercle/yargonaut')
6
- .style('blue')
7
- .style('yellow', 'required')
8
- .helpStyle('green')
9
- .errorsStyle('red');
10
- const CLIHelper_1 = require("./CLIHelper");
11
- const CLIConfigurator_1 = require("./CLIConfigurator");
12
- void (async () => {
13
- const argv = CLIConfigurator_1.CLIConfigurator.configure();
14
- const args = await argv.parse(process.argv.slice(2));
15
- if (args._.length === 0) {
16
- CLIHelper_1.CLIHelper.showHelp();
17
- }
18
- })();
package/index.mjs DELETED
@@ -1,5 +0,0 @@
1
- import mod from "./index.js";
2
-
3
- export default mod;
4
- export const CLIConfigurator = mod.CLIConfigurator;
5
- export const CLIHelper = mod.CLIHelper;