@codemastersolutions/db-utility 0.0.6 → 0.0.8

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 (33) hide show
  1. package/README.es.md +38 -4
  2. package/README.md +69 -25
  3. package/README.pt-BR.md +52 -14
  4. package/dist/cli/helpers.js +1 -1
  5. package/dist/cli/helpers.js.map +1 -1
  6. package/dist/cli/index.js +38 -24
  7. package/dist/cli/index.js.map +1 -1
  8. package/dist/config/AppConfig.d.ts +10 -1
  9. package/dist/config/AppConfig.d.ts.map +1 -1
  10. package/dist/config/AppConfig.js +63 -12
  11. package/dist/config/AppConfig.js.map +1 -1
  12. package/dist/config/ConfigInitializer.d.ts.map +1 -1
  13. package/dist/config/ConfigInitializer.js +0 -27
  14. package/dist/config/ConfigInitializer.js.map +1 -1
  15. package/dist/generators/SequelizeGenerator.d.ts.map +1 -1
  16. package/dist/generators/SequelizeGenerator.js +216 -21
  17. package/dist/generators/SequelizeGenerator.js.map +1 -1
  18. package/dist/generators/TypeORMGenerator.d.ts.map +1 -1
  19. package/dist/generators/TypeORMGenerator.js +41 -6
  20. package/dist/generators/TypeORMGenerator.js.map +1 -1
  21. package/dist/introspection/DataExtractor.d.ts +2 -1
  22. package/dist/introspection/DataExtractor.d.ts.map +1 -1
  23. package/dist/introspection/DataExtractor.js +10 -3
  24. package/dist/introspection/DataExtractor.js.map +1 -1
  25. package/dist/testing/MigrationTester.js +2 -2
  26. package/dist/testing/MigrationTester.js.map +1 -1
  27. package/dist/types/introspection.d.ts +1 -0
  28. package/dist/types/introspection.d.ts.map +1 -1
  29. package/dist/utils/DataUtils.d.ts +3 -0
  30. package/dist/utils/DataUtils.d.ts.map +1 -0
  31. package/dist/utils/DataUtils.js +23 -0
  32. package/dist/utils/DataUtils.js.map +1 -0
  33. package/package.json +1 -1
package/README.es.md CHANGED
@@ -55,7 +55,13 @@ El archivo de configuración permite definir el idioma de la CLI, directorios de
55
55
  },
56
56
  "migrations": {
57
57
  "outputDir": "db-utility-migrations",
58
- "fileNamePattern": "timestamp-prefix"
58
+ "fileNamePattern": "timestamp-prefix",
59
+ "data": true,
60
+ "dataTables": [
61
+ "usuarios",
62
+ { "table": "logs", "where": "nivel = 'ERROR'" }
63
+ ],
64
+ "backup": true
59
65
  },
60
66
  "connection": {
61
67
  "type": "postgres",
@@ -88,6 +94,25 @@ El archivo de configuración permite definir el idioma de la CLI, directorios de
88
94
  }
89
95
  ```
90
96
 
97
+ ### Configuración Avanzada de Extracción de Datos
98
+
99
+ La opción `dataTables` permite especificar qué tablas deben tener sus datos exportados (para seeds). Puede proporcionar una lista simple de nombres de tablas o un objeto con una cláusula `where` para filtrar los datos.
100
+
101
+ ```json
102
+ "dataTables": [
103
+ "roles",
104
+ "permisos",
105
+ {
106
+ "table": "usuarios",
107
+ "where": "activo = 1 AND creado_en > '2023-01-01'"
108
+ },
109
+ {
110
+ "table": "registros",
111
+ "where": "nivel = 'ERROR'"
112
+ }
113
+ ]
114
+ ```
115
+
91
116
  ### Múltiples Conexiones
92
117
 
93
118
  Puede definir múltiples conexiones dentro de la propiedad `connections` y utilizarlas en la CLI con el flag `--conn <nombre>`.
@@ -122,6 +147,15 @@ DB_UTILITY_MIGRATIONS_OUTPUT_DIR=mi-directorio-migrations
122
147
  # Patrón de Nombre de Archivo de Migración (timestamp-prefix, prefix-timestamp)
123
148
  DB_UTILITY_MIGRATIONS_FILE_NAME_PATTERN=prefix-timestamp
124
149
 
150
+ # Datos de Migración (true/false)
151
+ DB_UTILITY_MIGRATIONS_DATA=true
152
+
153
+ # Tablas de Datos para Migración (Separadas por coma)
154
+ DB_UTILITY_MIGRATIONS_DATA_TABLES=usuarios,roles
155
+
156
+ # Backup de Migración (true/false)
157
+ DB_UTILITY_MIGRATIONS_BACKUP=true
158
+
125
159
  # Conexión a Base de Datos (Fallback/Base)
126
160
  DB_TYPE=postgres
127
161
  DB_HOST=localhost
@@ -201,9 +235,9 @@ dbutility migrations --target <orm> [opciones] [opciones-conexión]
201
235
  |------|-------------|-------------|
202
236
  | `--target <target>` | ORM objetivo (`sequelize`, `typeorm`) | Sí |
203
237
  | `--output <dir>` | Directorio de salida | No |
204
- | `--data` | Genera migración de datos (seeds) junto con el esquema | No |
238
+ | `--data` | Genera migración de datos (seeds) junto con el esquema (Sobrescribe configuración) | No |
205
239
  | `--only-data` | Genera SOLO migración de datos | No |
206
- | `--tables <tables>` | Lista de tablas separadas por coma para exportación de datos | Sí (si `--data` o `--only-data`) |
240
+ | `--tables <tables>` | Lista de tablas separadas por coma para exportación de datos (Sobrescribe configuración) | Sí (si `--data` o `--only-data` y no está en la configuración) |
207
241
 
208
242
  #### `test`
209
243
 
@@ -218,7 +252,7 @@ dbutility test --target <orm> [opciones]
218
252
  | `--target <target>` | ORM objetivo (`sequelize`, `typeorm`) | Sí |
219
253
  | `--dir <dir>` | Directorio conteniendo las migraciones | No |
220
254
  | `--engines <engines>` | Imágenes Docker para probar (ej: `postgres:14,mysql:8`) | No |
221
- | `--backup` | Exporta backup de la base de datos del contenedor después de la prueba | No |
255
+ | `--backup` | Exporta backup de la base de datos del contenedor después de la prueba (Sobrescribe configuración) | No |
222
256
 
223
257
  ## Ejemplos de Uso
224
258
 
package/README.md CHANGED
@@ -55,7 +55,10 @@ The configuration file allows you to define CLI language, output directories, na
55
55
  },
56
56
  "migrations": {
57
57
  "outputDir": "db-utility-migrations",
58
- "fileNamePattern": "timestamp-prefix"
58
+ "fileNamePattern": "timestamp-prefix",
59
+ "data": true,
60
+ "dataTables": ["users", { "table": "bsistemas", "where": "id > 15" }],
61
+ "backup": true
59
62
  },
60
63
  "connection": {
61
64
  "type": "postgres",
@@ -88,11 +91,38 @@ The configuration file allows you to define CLI language, output directories, na
88
91
  }
89
92
  ```
90
93
 
94
+ ### Advanced Data Extraction Configuration
95
+
96
+ The `dataTables` option allows you to specify which tables should have their data exported (for seeds). You can provide a simple list of table names or an object with a `where` clause to filter the data.
97
+
98
+ ```json
99
+ "dataTables": [
100
+ "roles",
101
+ "permissions",
102
+ {
103
+ "table": "users",
104
+ "where": "active = 1 AND created_at > '2023-01-01'",
105
+ "disableIdentity": true
106
+ },
107
+ {
108
+ "table": "logs",
109
+ "where": "level = 'ERROR'"
110
+ }
111
+ ]
112
+ ```
113
+
114
+ The `disableIdentity` option (default: `false`) allows inserting explicit values into auto-increment/identity columns. This is useful when you want to preserve the original IDs from the source database.
115
+
116
+ - **MSSQL**: Wraps inserts with `SET IDENTITY_INSERT [Table] ON/OFF`.
117
+ - **PostgreSQL**: Resets the sequence value after insertion using `setval` so subsequent inserts don't fail.
118
+ - **Other Databases (MySQL, SQLite)**: Includes the identity column in the insert payload (these databases typically update the auto-increment counter automatically).
119
+
91
120
  ### Multiple Connections
92
121
 
93
122
  You can define multiple connections within the `connections` property and use them in the CLI with the `--conn <name>` flag.
94
123
 
95
124
  Example:
125
+
96
126
  ```bash
97
127
  dbutility connect --conn development
98
128
  ```
@@ -122,6 +152,15 @@ DB_UTILITY_MIGRATIONS_OUTPUT_DIR=my-migrations-dir
122
152
  # Migration File Name Pattern (timestamp-prefix, prefix-timestamp)
123
153
  DB_UTILITY_MIGRATIONS_FILE_NAME_PATTERN=prefix-timestamp
124
154
 
155
+ # Migration Data (true/false)
156
+ DB_UTILITY_MIGRATIONS_DATA=true
157
+
158
+ # Migration Data Tables (Comma separated)
159
+ DB_UTILITY_MIGRATIONS_DATA_TABLES=users,roles
160
+
161
+ # Migration Backup (true/false)
162
+ DB_UTILITY_MIGRATIONS_BACKUP=true
163
+
125
164
  # Database Connection (Fallback/Base)
126
165
  DB_TYPE=postgres
127
166
  DB_HOST=localhost
@@ -146,17 +185,17 @@ DB_NAME=mydb
146
185
 
147
186
  ### Connection Options (Available for `connect`, `introspect`, `export`, `migrate`)
148
187
 
149
- | Flag | Description |
150
- | --------------------------- | -------------------------------------------- |
151
- | `--conn <name>` | Connection name defined in configuration file|
152
- | `-c, --config <path>` | Path to configuration file |
153
- | `-t, --type <type>` | Database type (`mysql`, `postgres`, `mssql`) |
154
- | `-H, --host <host>` | Database host |
155
- | `-P, --port <port>` | Database port |
156
- | `-u, --username <username>` | Database username |
157
- | `-p, --password <password>` | Database password |
158
- | `-d, --database <database>` | Database name |
159
- | `--ssl` | Enable SSL connection |
188
+ | Flag | Description |
189
+ | --------------------------- | --------------------------------------------- |
190
+ | `--conn <name>` | Connection name defined in configuration file |
191
+ | `-c, --config <path>` | Path to configuration file |
192
+ | `-t, --type <type>` | Database type (`mysql`, `postgres`, `mssql`) |
193
+ | `-H, --host <host>` | Database host |
194
+ | `-P, --port <port>` | Database port |
195
+ | `-u, --username <username>` | Database username |
196
+ | `-p, --password <password>` | Database password |
197
+ | `-d, --database <database>` | Database name |
198
+ | `--ssl` | Enable SSL connection |
160
199
 
161
200
  ### Commands
162
201
 
@@ -197,13 +236,13 @@ Generate migrations from database schema.
197
236
  dbutility migrations --target <orm> [options] [connection-options]
198
237
  ```
199
238
 
200
- | Flag | Description | Required |
201
- | ------------------- | ------------------------------------------------- | ---------------------------------- |
202
- | `--target <target>` | Target ORM (`sequelize`, `typeorm`) | Yes |
203
- | `--output <dir>` | Output directory | No |
204
- | `--data` | Generate data migration (seeds) along with schema | No |
205
- | `--only-data` | Generate ONLY data migrations | No |
206
- | `--tables <tables>` | Comma-separated list of tables for data export | Yes (if `--data` or `--only-data`) |
239
+ | Flag | Description | Required |
240
+ | ------------------- | -------------------------------------------------------------------- | ---------------------------------------------------- |
241
+ | `--target <target>` | Target ORM (`sequelize`, `typeorm`) | Yes |
242
+ | `--output <dir>` | Output directory | No |
243
+ | `--data` | Generate data migration (seeds) along with schema (Overrides config) | No |
244
+ | `--only-data` | Generate ONLY data migrations | No |
245
+ | `--tables <tables>` | Comma-separated list of tables for data export (Overrides config) | Yes (if `--data` or `--only-data` and not in config) |
207
246
 
208
247
  #### `test`
209
248
 
@@ -213,36 +252,41 @@ Test generated migrations in Docker containers.
213
252
  dbutility test --target <orm> [options]
214
253
  ```
215
254
 
216
- | Flag | Description | Required |
217
- | --------------------- | --------------------------------------------------- | -------- |
218
- | `--target <target>` | Target ORM (`sequelize`, `typeorm`) | Yes |
219
- | `--dir <dir>` | Directory containing migrations | No |
220
- | `--engines <engines>` | Docker images to test (e.g., `postgres:14,mysql:8`) | No |
221
- | `--backup` | Export database backup from container after test | No |
255
+ | Flag | Description | Required |
256
+ | --------------------- | ------------------------------------------------------------------- | -------- |
257
+ | `--target <target>` | Target ORM (`sequelize`, `typeorm`) | Yes |
258
+ | `--dir <dir>` | Directory containing migrations | No |
259
+ | `--engines <engines>` | Docker images to test (e.g., `postgres:14,mysql:8`) | No |
260
+ | `--backup` | Export database backup from container after test (Overrides config) | No |
222
261
 
223
262
  ## Usage Examples
224
263
 
225
264
  ### Connect to a database using a named connection
265
+
226
266
  ```bash
227
267
  dbutility connect --conn production
228
268
  ```
229
269
 
230
270
  ### Introspect a database using inline connection parameters
271
+
231
272
  ```bash
232
273
  dbutility introspect --type postgres --host localhost --username myuser --password mypass --database mydb
233
274
  ```
234
275
 
235
276
  ### Export Sequelize models from a specific connection
277
+
236
278
  ```bash
237
279
  dbutility export --target sequelize --conn development --output ./src/models
238
280
  ```
239
281
 
240
282
  ### Generate TypeORM migrations from a specific connection
283
+
241
284
  ```bash
242
285
  dbutility migrations --target typeorm --conn production
243
286
  ```
244
287
 
245
288
  ### Generate Data Migrations (Seeds)
289
+
246
290
  ```bash
247
291
  dbutility migrations --target sequelize --conn development --data --tables "users,roles"
248
292
  ```
package/README.pt-BR.md CHANGED
@@ -55,7 +55,10 @@ O arquivo de configuração permite definir o idioma da CLI, diretórios de saí
55
55
  },
56
56
  "migrations": {
57
57
  "outputDir": "db-utility-migrations",
58
- "fileNamePattern": "timestamp-prefix"
58
+ "fileNamePattern": "timestamp-prefix",
59
+ "data": true,
60
+ "dataTables": ["usuarios", { "table": "logs", "where": "nivel = 'ERRO'" }],
61
+ "backup": true
59
62
  },
60
63
  "connection": {
61
64
  "type": "postgres",
@@ -88,6 +91,32 @@ O arquivo de configuração permite definir o idioma da CLI, diretórios de saí
88
91
  }
89
92
  ```
90
93
 
94
+ ### Configuração Avançada de Extração de Dados
95
+
96
+ A opção `dataTables` permite especificar quais tabelas devem ter seus dados exportados (para seeds). Você pode fornecer uma lista simples de nomes de tabelas ou um objeto com uma cláusula `where` para filtrar os dados.
97
+
98
+ ```json
99
+ "dataTables": [
100
+ "cargos",
101
+ "permissoes",
102
+ {
103
+ "table": "usuarios",
104
+ "where": "ativo = 1 AND criado_em > '2023-01-01'",
105
+ "disableIdentity": true
106
+ },
107
+ {
108
+ "table": "bsistemas",
109
+ "where": "id > 15"
110
+ }
111
+ ]
112
+ ```
113
+
114
+ A opção `disableIdentity` (padrão: `false`) permite inserir valores explícitos em colunas auto-increment/identity. Isso é útil quando você deseja preservar os IDs originais do banco de origem.
115
+
116
+ - **MSSQL**: Envolve as inserções com `SET IDENTITY_INSERT [Table] ON/OFF`.
117
+ - **PostgreSQL**: Reseta o valor da sequence após a inserção usando `setval` para evitar falhas em inserções subsequentes.
118
+ - **Outros Bancos (MySQL, SQLite)**: Inclui a coluna identity no payload de inserção (geralmente atualizam o contador de auto-incremento automaticamente).
119
+
91
120
  ### Múltiplas Conexões
92
121
 
93
122
  Você pode definir múltiplas conexões dentro da propriedade `connections` e utilizá-las na CLI com a flag `--conn <nome>`.
@@ -123,6 +152,15 @@ DB_UTILITY_MIGRATIONS_OUTPUT_DIR=meu-diretorio-migrations
123
152
  # Padrão de Nome de Arquivo de Migration (timestamp-prefix, prefix-timestamp)
124
153
  DB_UTILITY_MIGRATIONS_FILE_NAME_PATTERN=prefix-timestamp
125
154
 
155
+ # Dados de Migração (true/false)
156
+ DB_UTILITY_MIGRATIONS_DATA=true
157
+
158
+ # Tabelas de Dados para Migração (Separadas por vírgula)
159
+ DB_UTILITY_MIGRATIONS_DATA_TABLES=usuarios,cargos
160
+
161
+ # Backup de Migração (true/false)
162
+ DB_UTILITY_MIGRATIONS_BACKUP=true
163
+
126
164
  # Conexão com Banco de Dados (Fallback/Base)
127
165
  DB_TYPE=postgres
128
166
  DB_HOST=localhost
@@ -198,13 +236,13 @@ Gera migrações a partir do esquema do banco de dados.
198
236
  dbutility migrations --target <orm> [opções] [opções-conexão]
199
237
  ```
200
238
 
201
- | Flag | Descrição | Obrigatório |
202
- | ------------------- | --------------------------------------------------------------- | ---------------------------------- |
203
- | `--target <target>` | ORM alvo (`sequelize`, `typeorm`) | Sim |
204
- | `--output <dir>` | Diretório de saída | Não |
205
- | `--data` | Gera migração de dados (seeds) junto com o esquema | Não |
206
- | `--only-data` | Gera APENAS migração de dados | Não |
207
- | `--tables <tables>` | Lista de tabelas separadas por vírgula para exportação de dados | Sim (se `--data` ou `--only-data`) |
239
+ | Flag | Descrição | Obrigatório |
240
+ | ------------------- | ------------------------------------------------------------------------------------------ | ---------------------------------------------------------------- |
241
+ | `--target <target>` | ORM alvo (`sequelize`, `typeorm`) | Sim |
242
+ | `--output <dir>` | Diretório de saída | Não |
243
+ | `--data` | Gera migração de dados (seeds) junto com o esquema (Sobrescreve configuração) | Não |
244
+ | `--only-data` | Gera APENAS migração de dados | Não |
245
+ | `--tables <tables>` | Lista de tabelas separadas por vírgula para exportação de dados (Sobrescreve configuração) | Sim (se `--data` ou `--only-data` e não estiver na configuração) |
208
246
 
209
247
  #### `test`
210
248
 
@@ -214,12 +252,12 @@ Testa migrações geradas em containers Docker.
214
252
  dbutility test --target <orm> [opções]
215
253
  ```
216
254
 
217
- | Flag | Descrição | Obrigatório |
218
- | --------------------- | ---------------------------------------------------------- | ----------- |
219
- | `--target <target>` | ORM alvo (`sequelize`, `typeorm`) | Sim |
220
- | `--dir <dir>` | Diretório contendo as migrações | Não |
221
- | `--engines <engines>` | Imagens Docker para testar (ex: `postgres:14,mysql:8`) | Não |
222
- | `--backup` | Exporta backup do banco de dados do container após o teste | Não |
255
+ | Flag | Descrição | Obrigatório |
256
+ | --------------------- | ------------------------------------------------------------------------------------- | ----------- |
257
+ | `--target <target>` | ORM alvo (`sequelize`, `typeorm`) | Sim |
258
+ | `--dir <dir>` | Diretório contendo as migrações | Não |
259
+ | `--engines <engines>` | Imagens Docker para testar (ex: `postgres:14,mysql:8`) | Não |
260
+ | `--backup` | Exporta backup do banco de dados do container após o teste (Sobrescreve configuração) | Não |
223
261
 
224
262
  ## Exemplos de Uso
225
263
 
@@ -9,7 +9,7 @@ const resolveMigrationOutputDir = (cwd, cliOutputOption, appConfig) => {
9
9
  if (appConfig.migrations && appConfig.migrations.outputDir) {
10
10
  return (0, path_1.join)(cwd, appConfig.migrations.outputDir);
11
11
  }
12
- return (0, path_1.join)(cwd, 'exports', 'generated-migrations');
12
+ return (0, path_1.join)(cwd, 'exports', 'migration');
13
13
  };
14
14
  exports.resolveMigrationOutputDir = resolveMigrationOutputDir;
15
15
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/cli/helpers.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAGrB,MAAM,yBAAyB,GAAG,CACvC,GAAW,EACX,eAAmC,EACnC,SAAoB,EACZ,EAAE;IACV,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,IAAI,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;QAC3D,OAAO,IAAA,WAAI,EAAC,GAAG,EAAE,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,IAAA,WAAI,EAAC,GAAG,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAC;AACtD,CAAC,CAAC;AAdW,QAAA,yBAAyB,6BAcpC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/cli/helpers.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAGrB,MAAM,yBAAyB,GAAG,CACvC,GAAW,EACX,eAAmC,EACnC,SAAoB,EACZ,EAAE;IACV,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,IAAI,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;QAC3D,OAAO,IAAA,WAAI,EAAC,GAAG,EAAE,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,IAAA,WAAI,EAAC,GAAG,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;AAC3C,CAAC,CAAC;AAdW,QAAA,yBAAyB,6BAcpC"}
package/dist/cli/index.js CHANGED
@@ -189,26 +189,27 @@ addConnectionOptions(exportCommand)
189
189
  .option('--target <target>', 'Target ORM: sequelize, typeorm, prisma, mongoose')
190
190
  .option('--output <dir>', 'Output directory')
191
191
  .action(async (options) => {
192
- if (!options.target) {
193
- handleCliError(new Error('Target is required (--target <target>)'));
192
+ const target = options.target || appConfig.target;
193
+ if (!target) {
194
+ handleCliError(new Error('Target is required (use --target or config.target)'));
194
195
  return;
195
196
  }
196
197
  await withConnection(options, async (connector, config) => {
197
198
  console.log(messages.cli.introspectConnecting(config.database));
198
199
  const service = new IntrospectionService_1.IntrospectionService(connector, config);
199
200
  const schema = await service.introspect();
200
- const generator = getGenerator(options.target);
201
- console.log(`Generating models for ${options.target}...`);
201
+ const generator = getGenerator(target);
202
+ console.log(`Generating models for ${target}...`);
202
203
  const files = await generator.generate(schema);
203
204
  const baseOutputDir = options.output || (0, path_1.join)(process.cwd(), 'exports', 'generated-models');
204
- const outputDir = (0, path_1.join)(baseOutputDir, options.target.toLowerCase());
205
+ const outputDir = (0, path_1.join)(baseOutputDir, target.toLowerCase());
205
206
  GeneratorWriter_1.GeneratorWriter.write(files, outputDir);
206
207
  console.log(`Successfully generated ${files.length} files in ${outputDir}`);
207
208
  });
208
209
  });
209
210
  const migrateCommand = program
210
211
  .command('migrations')
211
- .alias('migration')
212
+ .aliases(['migration', 'migrate'])
212
213
  .description(messages.cli.migrateDescription);
213
214
  addConnectionOptions(migrateCommand)
214
215
  .option('--target <target>', 'Target ORM: sequelize, typeorm')
@@ -217,24 +218,29 @@ addConnectionOptions(migrateCommand)
217
218
  .option('--only-data', 'Generate only data migration')
218
219
  .option('--tables <tables>', 'Comma separated list of tables to export data from')
219
220
  .action(async (options) => {
220
- if (!options.target) {
221
- handleCliError(new Error('Target is required (--target <target>)'));
221
+ const target = options.target || appConfig.target;
222
+ if (!target) {
223
+ handleCliError(new Error('Target is required (use --target or config.target)'));
222
224
  return;
223
225
  }
224
226
  await withConnection(options, async (connector, config) => {
225
227
  console.log(messages.cli.introspectConnecting(config.database));
226
228
  const service = new IntrospectionService_1.IntrospectionService(connector, config);
227
229
  const schema = await service.introspect();
228
- const generator = getGenerator(options.target);
229
- const generateData = options.onlyData || options.data;
230
+ const generator = getGenerator(target);
231
+ const isDataEnabled = options.data || appConfig.migrations.data;
232
+ const generateData = options.onlyData || isDataEnabled;
230
233
  const generateSchema = !options.onlyData;
231
234
  let extractedData = [];
232
235
  if (generateData) {
233
- const tables = options.tables ? options.tables.split(',').map((t) => t.trim()) : [];
236
+ const tables = options.tables
237
+ ? options.tables.split(',').map((t) => t.trim())
238
+ : appConfig.migrations.dataTables || [];
234
239
  if (tables.length === 0) {
235
- throw new Error('You must specify at least one table via --tables when using --data or --only-data');
240
+ throw new Error('You must specify at least one table via --tables or config.migrations.dataTables when using --data or --only-data');
236
241
  }
237
- console.log(`Extracting data from tables: ${tables.join(', ')}...`);
242
+ const tableNames = tables.map((t) => (typeof t === 'string' ? t : t.table));
243
+ console.log(`Extracting data from tables: ${tableNames.join(', ')}...`);
238
244
  const extractor = new DataExtractor_1.DataExtractor(connector, config.type);
239
245
  extractedData = await extractor.extract(schema, tables);
240
246
  }
@@ -246,14 +252,14 @@ addConnectionOptions(migrateCommand)
246
252
  timestamp: new Date().toISOString(),
247
253
  };
248
254
  const baseOutputDir = (0, helpers_1.resolveMigrationOutputDir)(process.cwd(), options.output, appConfig);
249
- const outputDir = (0, path_1.join)(baseOutputDir, options.target.toLowerCase());
255
+ const outputDir = (0, path_1.join)(baseOutputDir, target.toLowerCase());
250
256
  if (generateSchema) {
251
257
  if (!('generateMigrations' in generator)) {
252
- throw new Error(`Target ${options.target} does not support migration generation`);
258
+ throw new Error(`Target ${target} does not support migration generation`);
253
259
  }
254
260
  const migrationGenerator = generator;
255
- console.log(`Generating migrations for ${options.target}...`);
256
- const files = await migrationGenerator.generateMigrations(schema, options.data ? extractedData : undefined);
261
+ console.log(`Generating migrations for ${target}...`);
262
+ const files = await migrationGenerator.generateMigrations(schema, isDataEnabled ? extractedData : undefined);
257
263
  GeneratorWriter_1.GeneratorWriter.clean(outputDir);
258
264
  GeneratorWriter_1.GeneratorWriter.write(files, outputDir);
259
265
  GeneratorWriter_1.GeneratorWriter.write([
@@ -266,9 +272,9 @@ addConnectionOptions(migrateCommand)
266
272
  }
267
273
  else if (generateData) {
268
274
  if (!('generateDataMigrations' in generator)) {
269
- throw new Error(`Target ${options.target} does not support data migration generation`);
275
+ throw new Error(`Target ${target} does not support data migration generation`);
270
276
  }
271
- console.log(`Generating data migrations for ${options.target}...`);
277
+ console.log(`Generating data migrations for ${target}...`);
272
278
  const dataMigrationGenerator = generator;
273
279
  const files = await dataMigrationGenerator.generateDataMigrations(extractedData);
274
280
  GeneratorWriter_1.GeneratorWriter.clean(outputDir);
@@ -290,17 +296,25 @@ testCommand
290
296
  .option('--engines <engines>', 'Comma separated list of engines to test (e.g. postgres:14,mysql:8)')
291
297
  .option('--backup', 'Export database backup from container')
292
298
  .action(async (options) => {
293
- if (!options.target) {
294
- handleCliError(new Error('Target is required (--target <target>)'));
299
+ const target = options.target || appConfig.target;
300
+ if (!target) {
301
+ handleCliError(new Error('Target is required (use --target or config.target)'));
295
302
  return;
296
303
  }
297
- const migrationsDir = options.dir ||
298
- (0, path_1.join)(process.cwd(), 'exports', 'generated-migrations', options.target.toLowerCase());
304
+ let migrationsDir;
305
+ if (options.dir) {
306
+ migrationsDir = options.dir;
307
+ }
308
+ else {
309
+ const baseDir = (0, helpers_1.resolveMigrationOutputDir)(process.cwd(), undefined, appConfig);
310
+ migrationsDir = (0, path_1.join)(baseDir, target.toLowerCase());
311
+ }
299
312
  const engines = options.engines ? options.engines.split(',').map((e) => e.trim()) : undefined;
300
313
  const containerManager = new ContainerManager_1.ContainerManager();
301
314
  const tester = new MigrationTester_1.MigrationTester(containerManager);
302
315
  try {
303
- await tester.test(options.target, migrationsDir, engines, options.backup);
316
+ const backup = options.backup ?? appConfig.migrations.backup;
317
+ await tester.test(target, migrationsDir, engines, backup);
304
318
  }
305
319
  catch (error) {
306
320
  handleCliError(error);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;;AACA,yCAAoC;AACpC,2BAAkC;AAClC,+BAA4B;AAC5B,mDAAsD;AACtD,mEAAgE;AAChE,yDAAsD;AACtD,qEAAkE;AAClE,qDAA+D;AAC/D,6DAA0D;AAC1D,mEAAgE;AAEhE,uEAAoE;AACpE,mEAAgE;AAChE,yEAAsE;AACtE,qEAAkE;AAClE,+CAA+C;AAC/C,kEAA+D;AAC/D,8EAA2E;AAC3E,gFAA6E;AAC7E,kEAA+D;AAC/D,gEAA6D;AAG7D,MAAM,SAAS,GAAG,2BAAe,CAAC,IAAI,EAAE,CAAC;AACzC,MAAM,QAAQ,GAAG,IAAA,sBAAW,EAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AAEjD,uCAAsD;AAEtD,MAAM,iBAAiB,GAAG,GAAW,EAAE;IACrC,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,IAAA,WAAI,EAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;QAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,iBAAY,EAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;QACvE,OAAO,WAAW,CAAC,OAAO,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,YAAY,CAAC;KAClB,KAAK,CAAC,WAAW,CAAC;KAClB,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC;KACxC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;AAEhC,OAAO;KACJ,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,qBAAqB,CAAC;KACpD,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,GAAG,CAAC,sBAAsB,CAAC;KAC1D,MAAM,CAAC,GAAG,EAAE;AAEb,CAAC,CAAC,CAAC;AAEL,MAAM,cAAc,GAAG,CAAC,KAAc,EAAE,EAAE;IACxC,IAAI,KAAK,YAAY,kCAAsB,EAAE,CAAC;QAC5C,MAAM,IAAI,GACR,KAAK,CAAC,IAAI,KAAK,kBAAkB;YAC/B,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,0BAA0B;YACzC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,2BAA2B,CAAC;QAC/C,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAClD,CAAC;SAAM,IAAI,KAAK,YAAY,+BAAc,EAAE,CAAC;QAC3C,IAAI,IAAY,CAAC;QACjB,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,gCAAgC;gBACnC,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,2BAA2B,CAAC;gBAChD,MAAM;YACR,KAAK,mCAAmC;gBACtC,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,8BAA8B,CAAC;gBACnD,MAAM;YACR,KAAK,2BAA2B;gBAC9B,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,qBAAqB,CAAC,KAAK,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC;gBAChE,MAAM;YACR,KAAK,oCAAoC;gBACvC,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,8BAA8B,CAAC,KAAK,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC;gBACzE,MAAM;YACR,KAAK,uBAAuB;gBAC1B,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,kBAAkB,CAAC,KAAK,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC;gBAC7D,MAAM;YACR,KAAK,gCAAgC;gBACnC,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,2BAA2B,CAAC,KAAK,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC;gBACtE,MAAM;YACR,KAAK,8CAA8C;gBACjD,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,sCAAsC,CAAC;gBAC3D,MAAM;YACR,KAAK,yBAAyB;gBAC5B,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,oBAAoB,CAAC;gBACzC,MAAM;YACR,KAAK,mBAAmB;gBACtB,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,gBAAgB,CAAC;gBACrC,MAAM;YACR,KAAK,6BAA6B;gBAChC,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,wBAAwB,CAAC,KAAK,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC;gBACnE,MAAM;YACR;gBACE,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC;gBACrB,MAAM;QACV,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CACX,QAAQ,CAAC,GAAG,CAAC,YAAY,EACzB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,GAAY,EAAE,EAAE;IAC5C,OAAO,GAAG;SACP,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG,CAAC,oBAAoB,CAAC;SAC1D,MAAM,CAAC,qBAAqB,EAAE,QAAQ,CAAC,GAAG,CAAC,gBAAgB,CAAC;SAC5D,MAAM,CAAC,mBAAmB,EAAE,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC;SACpD,MAAM,CAAC,mBAAmB,EAAE,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC;SACpD,MAAM,CAAC,mBAAmB,EAAE,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC;SACpD,MAAM,CAAC,2BAA2B,EAAE,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC;SAChE,MAAM,CAAC,2BAA2B,EAAE,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC;SAChE,MAAM,CAAC,2BAA2B,EAAE,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC;SAChE,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAC7C,CAAC,CAAC;AAmBF,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,EAAE;IACtC,QAAQ,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC;QAC7B,KAAK,WAAW;YACd,OAAO,IAAI,uCAAkB,EAAE,CAAC;QAClC,KAAK,SAAS;YACZ,OAAO,IAAI,mCAAgB,EAAE,CAAC;QAChC,KAAK,QAAQ;YACX,OAAO,IAAI,iCAAe,EAAE,CAAC;QAC/B,KAAK,UAAU,CAAC;QAChB,KAAK,SAAS;YACZ,OAAO,IAAI,qCAAiB,EAAE,CAAC;QACjC;YACE,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAC;IACjD,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,KAAK,EAAE,OAAmB,EAA2B,EAAE;IACjF,MAAM,SAAS,GAA4B,EAAE,CAAC;IAE9C,IAAI,OAAO,CAAC,IAAI;QAAE,SAAS,CAAC,IAAI,GAAG,OAAO,CAAC,IAAoB,CAAC;IAChE,IAAI,OAAO,CAAC,IAAI;QAAE,SAAS,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAChD,IAAI,OAAO,CAAC,IAAI;QAAE,SAAS,CAAC,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9D,IAAI,OAAO,CAAC,QAAQ;QAAE,SAAS,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC5D,IAAI,OAAO,CAAC,QAAQ;QAAE,SAAS,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC5D,IAAI,OAAO,CAAC,QAAQ;QAAE,SAAS,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC5D,IAAI,OAAO,CAAC,GAAG;QAAE,SAAS,CAAC,GAAG,GAAG,IAAI,CAAC;IAEtC,OAAO,2BAAY,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,KAAK,EAC1B,OAAmB,EACnB,MAAgF,EAChF,EAAE;IACF,IAAI,SAAS,GAA8B,IAAI,CAAC;IAChD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAElD,SAAS,GAAG,qCAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;QAE1B,MAAM,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,cAAc,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;YAAS,CAAC;QACT,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC;gBACH,MAAM,SAAS,CAAC,UAAU,EAAE,CAAC;gBAC7B,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YAC7C,CAAC;YAAC,OAAO,eAAe,EAAE,CAAC;gBAEzB,OAAO,CAAC,IAAI,CACV,yBAAyB,EACzB,eAAe,YAAY,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CACrF,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;AAE/F,oBAAoB,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,OAAmB,EAAE,EAAE;IACxE,MAAM,cAAc,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;QACvC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,OAAO;KAC9B,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AAEnD,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,OAAmB,EAAE,EAAE;IAC3E,MAAM,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE;QACxD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEhE,MAAM,OAAO,GAAG,IAAI,2CAAoB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;QAE1C,MAAM,MAAM,GAAG,yCAAmB,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC;QAEvF,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;AAE5F,oBAAoB,CAAC,aAAa,CAAC;KAChC,MAAM,CAAC,mBAAmB,EAAE,kDAAkD,CAAC;KAC/E,MAAM,CAAC,gBAAgB,EAAE,kBAAkB,CAAC;KAC5C,MAAM,CAAC,KAAK,EAAE,OAAmB,EAAE,EAAE;IACpC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC;IAClD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,cAAc,CAAC,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC,CAAC;QAChF,OAAO;IACT,CAAC;IAED,MAAM,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE;QACxD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEhE,MAAM,OAAO,GAAG,IAAI,2CAAoB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;QAE1C,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,yBAAyB,MAAM,KAAK,CAAC,CAAC;QAElD,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/C,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,IAAI,IAAA,WAAI,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;QAC3F,MAAM,SAAS,GAAG,IAAA,WAAI,EAAC,aAAa,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAE5D,iCAAe,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,0BAA0B,KAAK,CAAC,MAAM,aAAa,SAAS,EAAE,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,MAAM,cAAc,GAAG,OAAO;KAC3B,OAAO,CAAC,YAAY,CAAC;KACrB,OAAO,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;KACjC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;AAEhD,oBAAoB,CAAC,cAAc,CAAC;KACjC,MAAM,CAAC,mBAAmB,EAAE,gCAAgC,CAAC;KAC7D,MAAM,CAAC,gBAAgB,EAAE,kBAAkB,CAAC;KAC5C,MAAM,CAAC,QAAQ,EAAE,yBAAyB,CAAC;KAC3C,MAAM,CAAC,aAAa,EAAE,8BAA8B,CAAC;KACrD,MAAM,CAAC,mBAAmB,EAAE,oDAAoD,CAAC;KACjF,MAAM,CAAC,KAAK,EAAE,OAAmB,EAAE,EAAE;IACpC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC;IAClD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,cAAc,CAAC,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC,CAAC;QAChF,OAAO;IACT,CAAC;IAED,MAAM,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE;QACxD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEhE,MAAM,OAAO,GAAG,IAAI,2CAAoB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;QAE1C,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QAOvC,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC;QAChE,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,IAAI,aAAa,CAAC;QACvD,MAAM,cAAc,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC;QAEzC,IAAI,aAAa,GAAU,EAAE,CAAC;QAC9B,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM;gBAC3B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChD,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,UAAU,IAAI,EAAE,CAAC;YAE1C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CACb,mHAAmH,CACpH,CAAC;YACJ,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5E,OAAO,CAAC,GAAG,CAAC,gCAAgC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxE,MAAM,SAAS,GAAG,IAAI,6BAAa,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YAC5D,aAAa,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC1D,CAAC;QAGD,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,UAAU,EAAE,CAAC;QAC7C,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,OAAO,EAAE,OAAO;YAChB,YAAY,EAAE,MAAM,CAAC,QAAQ;YAC7B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC;QAGF,MAAM,aAAa,GAAG,IAAA,mCAAyB,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAE1F,MAAM,SAAS,GAAG,IAAA,WAAI,EAAC,aAAa,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAE5D,IAAI,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,CAAC,oBAAoB,IAAI,SAAS,CAAC,EAAE,CAAC;gBACzC,MAAM,IAAI,KAAK,CAAC,UAAU,MAAM,wCAAwC,CAAC,CAAC;YAC5E,CAAC;YAGD,MAAM,kBAAkB,GAAG,SAAgB,CAAC;YAE5C,OAAO,CAAC,GAAG,CAAC,6BAA6B,MAAM,KAAK,CAAC,CAAC;YAItD,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,kBAAkB,CACvD,MAAM,EACN,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAC1C,CAAC;YAEF,iCAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACjC,iCAAe,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAGxC,iCAAe,CAAC,KAAK,CACnB;gBACE;oBACE,QAAQ,EAAE,oBAAoB;oBAC9B,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;iBACzC;aACF,EACD,SAAS,CACV,CAAC;YAEF,OAAO,CAAC,GAAG,CAAC,0BAA0B,KAAK,CAAC,MAAM,uBAAuB,SAAS,EAAE,CAAC,CAAC;QACxF,CAAC;aAAM,IAAI,YAAY,EAAE,CAAC;YAExB,IAAI,CAAC,CAAC,wBAAwB,IAAI,SAAS,CAAC,EAAE,CAAC;gBAC7C,MAAM,IAAI,KAAK,CAAC,UAAU,MAAM,6CAA6C,CAAC,CAAC;YACjF,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,kCAAkC,MAAM,KAAK,CAAC,CAAC;YAC3D,MAAM,sBAAsB,GAAG,SAA8C,CAAC;YAC9E,MAAM,KAAK,GAAG,MAAM,sBAAsB,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC;YAEjF,iCAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACjC,iCAAe,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAGxC,iCAAe,CAAC,KAAK,CACnB;gBACE;oBACE,QAAQ,EAAE,oBAAoB;oBAC9B,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;iBACzC;aACF,EACD,SAAS,CACV,CAAC;YAEF,OAAO,CAAC,GAAG,CAAC,0BAA0B,KAAK,CAAC,MAAM,kBAAkB,SAAS,EAAE,CAAC,CAAC;QACnF,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,2BAA2B,CAAC,CAAC;AAErF,WAAW;KACR,MAAM,CAAC,mBAAmB,EAAE,gCAAgC,CAAC;KAC7D,MAAM,CAAC,aAAa,EAAE,sBAAsB,CAAC;KAC7C,MAAM,CACL,qBAAqB,EACrB,oEAAoE,CACrE;KACA,MAAM,CAAC,UAAU,EAAE,uCAAuC,CAAC;KAC3D,MAAM,CACL,KAAK,EAAE,OAA8E,EAAE,EAAE;IACvF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC;IAClD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,cAAc,CAAC,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC,CAAC;QAChF,OAAO;IACT,CAAC;IAED,IAAI,aAAqB,CAAC;IAC1B,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC;IAC9B,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG,IAAA,mCAAyB,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC/E,aAAa,GAAG,IAAA,WAAI,EAAC,OAAO,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE9F,MAAM,gBAAgB,GAAG,IAAI,mCAAgB,EAAE,CAAC;IAChD,MAAM,MAAM,GAAG,IAAI,iCAAe,CAAC,gBAAgB,CAAC,CAAC;IAErD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC;QAC7D,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,cAAc,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;AACH,CAAC,CACF,CAAC;AAEJ,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAE5B,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,EAAyC,CAAC;AAC1E,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;AAE9D,IAAI,WAAW,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;IACvC,MAAM,MAAM,GAAG,qCAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;IACjF,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACvD,CAAC;SAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACrD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC"}
@@ -1,12 +1,21 @@
1
1
  export type AppLanguage = 'pt-BR' | 'en' | 'es';
2
+ export interface DataTableConfig {
3
+ table: string;
4
+ where?: string;
5
+ disableIdentity?: boolean;
6
+ }
2
7
  export interface AppConfig {
3
8
  language: AppLanguage;
9
+ target?: string;
4
10
  introspection: {
5
11
  outputDir: string;
6
12
  };
7
13
  migrations: {
8
- outputDir: string;
14
+ outputDir?: string;
9
15
  fileNamePattern: 'timestamp-prefix' | 'prefix-timestamp';
16
+ data?: boolean;
17
+ dataTables?: (string | DataTableConfig)[];
18
+ backup?: boolean;
10
19
  };
11
20
  }
12
21
  export declare class AppConfigLoader {
@@ -1 +1 @@
1
- {"version":3,"file":"AppConfig.d.ts","sourceRoot":"","sources":["../../src/config/AppConfig.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;AAEhD,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,WAAW,CAAC;IACtB,aAAa,EAAE;QACb,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,UAAU,EAAE;QACV,SAAS,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,kBAAkB,GAAG,kBAAkB,CAAC;KAC1D,CAAC;CACH;AAaD,qBAAa,eAAe;IAC1B,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS;IA2D3C,OAAO,CAAC,MAAM,CAAC,eAAe;IAe9B,OAAO,CAAC,MAAM,CAAC,cAAc;IAiC7B,OAAO,CAAC,MAAM,CAAC,SAAS;IAiCxB,OAAO,CAAC,MAAM,CAAC,iBAAiB;CAiBjC"}
1
+ {"version":3,"file":"AppConfig.d.ts","sourceRoot":"","sources":["../../src/config/AppConfig.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;AAEhD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,WAAW,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE;QACb,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,UAAU,EAAE;QACV,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,eAAe,EAAE,kBAAkB,GAAG,kBAAkB,CAAC;QACzD,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,UAAU,CAAC,EAAE,CAAC,MAAM,GAAG,eAAe,CAAC,EAAE,CAAC;QAC1C,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB,CAAC;CACH;AAgBD,qBAAa,eAAe;IAC1B,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS;IAyE3C,OAAO,CAAC,MAAM,CAAC,eAAe;IAe9B,OAAO,CAAC,MAAM,CAAC,cAAc;IAqE7B,OAAO,CAAC,MAAM,CAAC,SAAS;IAmDxB,OAAO,CAAC,MAAM,CAAC,iBAAiB;CAiBjC"}