@steroidsjs/nest 4.2.0 → 4.3.0
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/infrastructure/applications/BaseApplication.js +2 -1
- package/infrastructure/applications/BaseApplication.js.map +1 -1
- package/infrastructure/applications/IAppModuleConfig.d.ts +5 -0
- package/infrastructure/applications/base/config.js +1 -0
- package/infrastructure/applications/base/config.js.map +1 -1
- package/infrastructure/applications/console/ConsoleApplication.d.ts +16 -0
- package/infrastructure/applications/console/ConsoleApplication.js +18 -3
- package/infrastructure/applications/console/ConsoleApplication.js.map +1 -1
- package/infrastructure/applications/rest/RestApplication.d.ts +10 -0
- package/infrastructure/applications/rest/RestApplication.js +24 -9
- package/infrastructure/applications/rest/RestApplication.js.map +1 -1
- package/infrastructure/commands/MigrateCommand.d.ts +0 -1
- package/infrastructure/commands/MigrateCommand.js +0 -34
- package/infrastructure/commands/MigrateCommand.js.map +1 -1
- package/infrastructure/commands/generate/index.d.ts +6 -6
- package/infrastructure/commands/generate/index.js +7 -39
- package/infrastructure/commands/generate/index.js.map +1 -1
- package/infrastructure/filters/UserExceptionFilter.d.ts +1 -0
- package/infrastructure/filters/UserExceptionFilter.js +1 -0
- package/infrastructure/filters/UserExceptionFilter.js.map +1 -1
- package/package.json +2 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/usecases/base/SearchQuery.js +8 -17
- package/usecases/base/SearchQuery.js.map +1 -1
- package/usecases/exceptions/UserException.d.ts +1 -0
- package/usecases/exceptions/UserException.js +1 -0
- package/usecases/exceptions/UserException.js.map +1 -1
- package/usecases/helpers/DataMapper.js +9 -6
- package/usecases/helpers/DataMapper.js.map +1 -1
- package/usecases/helpers/getMetaRelationsFromObject.d.ts +2 -0
- package/usecases/helpers/getMetaRelationsFromObject.js +52 -0
- package/usecases/helpers/getMetaRelationsFromObject.js.map +1 -0
- package/usecases/helpers/getMetaRelationsFromObject.test.d.ts +1 -0
- package/usecases/helpers/getMetaRelationsFromObject.test.js +327 -0
- package/usecases/helpers/getMetaRelationsFromObject.test.js.map +1 -0
- package/usecases/services/CrudService.js +5 -1
- package/usecases/services/CrudService.js.map +1 -1
- package/infrastructure/utils/getNewPermissions.d.ts +0 -2
- package/infrastructure/utils/getNewPermissions.js +0 -18
- package/infrastructure/utils/getNewPermissions.js.map +0 -1
|
@@ -47,8 +47,9 @@ class BaseApplication {
|
|
|
47
47
|
* only on `uncaughtException` the process will be exited, but on `unhandledRejection` it will continue to work.
|
|
48
48
|
*/
|
|
49
49
|
initSentry() {
|
|
50
|
+
var _a;
|
|
50
51
|
const config = ModuleHelper_1.ModuleHelper.getConfig(AppModule_1.AppModule);
|
|
51
|
-
if (!config.sentry) {
|
|
52
|
+
if (!((_a = config.sentry) === null || _a === void 0 ? void 0 : _a.dsn)) {
|
|
52
53
|
return;
|
|
53
54
|
}
|
|
54
55
|
Sentry.init({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseApplication.js","sourceRoot":"","sources":["../../../src/infrastructure/applications/BaseApplication.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,yCAAyC;AACzC,0DAAqD;AACrD,2CAAsC;AAGtC;;GAEG;AACH,MAAsB,eAAe;IAOjC;;;;OAIG;IACO,KAAK,CAAC,IAAI;QAChB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACO,OAAO;QACb,MAAM,CAAC,MAAM,EAAE,CAAC;QAEhB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;SAC/D;IACL,CAAC;IAED;;;;OAIG;IACO,UAAU;IAEpB,CAAC;IAED;;;;;OAKG;IACO,UAAU
|
|
1
|
+
{"version":3,"file":"BaseApplication.js","sourceRoot":"","sources":["../../../src/infrastructure/applications/BaseApplication.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,yCAAyC;AACzC,0DAAqD;AACrD,2CAAsC;AAGtC;;GAEG;AACH,MAAsB,eAAe;IAOjC;;;;OAIG;IACO,KAAK,CAAC,IAAI;QAChB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACO,OAAO;QACb,MAAM,CAAC,MAAM,EAAE,CAAC;QAEhB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;SAC/D;IACL,CAAC;IAED;;;;OAIG;IACO,UAAU;IAEpB,CAAC;IAED;;;;;OAKG;IACO,UAAU;;QAChB,MAAM,MAAM,GAAG,2BAAY,CAAC,SAAS,CAAmB,qBAAS,CAAC,CAAC;QAEnE,IAAI,CAAC,CAAA,MAAA,MAAM,CAAC,MAAM,0CAAE,GAAG,CAAA,EAAE;YACrB,OAAO;SACV;QAED,MAAM,CAAC,IAAI,CAAC;YACR,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG;YACtB,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW;YACtC,YAAY,EAAE;gBACV,MAAM,CAAC,8BAA8B,CAAC;oBAClC,YAAY,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;wBACxB,IAAI,GAAG,CAAC,IAAI,KAAK,aAAa,EAAE;4BAC5B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;yBACpB;6BAAM;4BACH,MAAM,CAAC,eAAe,EAAE;iCACnB,SAAS,EAAE;iCACX,gBAAgB,CAAC,GAAG,CAAC,CAAC;4BAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBACnB;oBACL,CAAC;iBACJ,CAAC;gBACF,MAAM,CAAC,+BAA+B,CAAC;oBACnC,IAAI,EAAE,MAAM;iBACf,CAAC;aACL;SACJ,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACO,WAAW;QACjB,2BAAY,CAAC,eAAe,EAAE,CAAC;IACnC,CAAC;CAMJ;AA5FD,0CA4FC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { LogLevel } from '@nestjs/common';
|
|
1
2
|
export interface IAppModuleConfig {
|
|
2
3
|
/**
|
|
3
4
|
* Application name (default is `app`)
|
|
@@ -11,6 +12,10 @@ export interface IAppModuleConfig {
|
|
|
11
12
|
* Application version (default `1.0`)
|
|
12
13
|
*/
|
|
13
14
|
version: string;
|
|
15
|
+
/**
|
|
16
|
+
* NestJS logger levels (default is `['error', 'warn']`)
|
|
17
|
+
*/
|
|
18
|
+
loggerLevels: LogLevel[];
|
|
14
19
|
database?: {
|
|
15
20
|
/**
|
|
16
21
|
* Database host (value from `process.env.APP_DATABASE_HOST`)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/infrastructure/applications/base/config.ts"],"names":[],"mappings":";;AAAA,2DAA6E;AAE7E,gDAAkD;AAClD,yDAAyD;AACzD,6DAAwD;AACxD,4CAAuC;AAEvC,8EAAyE;AAEzE,kBAAe;IACX,UAAU,EAAE,qBAAS;IACrB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACX,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,aAAa;QACpB,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE;YACN,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;YACnC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,CAAC;YACjD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;YACvC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB;YAC3C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB;YAC3C,WAAW,EAAE,KAAK;YAClB,aAAa,EAAE,KAAK;YACpB,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,CAAA,eAAe,CAAC;YAChE,cAAc,EAAE,IAAI,+CAAsB,EAAE;SAClB;KACZ,CAAA;IACtB,MAAM,EAAE,CAAC,MAAwB,EAAE,EAAE,CAAC,CAAC;QACnC,OAAO,EAAE;YACL,4BAAa,CAAC,OAAO,CAAC,gCACf,MAAM,CAAC,QAAQ,KAClB,QAAQ,EAAE,2BAAY,CAAC,WAAW,EAAE,GACf,CAAC;YAC1B,MAAM,CAAC,MAAM,IAAI,oBAAY,CAAC,OAAO,EAAE;YACvC,kCAAkB,CAAC,OAAO,EAAE;SAC/B,CAAC,MAAM,CAAC,OAAO,CAAC;KACpB,CAAC;CACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/infrastructure/applications/base/config.ts"],"names":[],"mappings":";;AAAA,2DAA6E;AAE7E,gDAAkD;AAClD,yDAAyD;AACzD,6DAAwD;AACxD,4CAAuC;AAEvC,8EAAyE;AAEzE,kBAAe;IACX,UAAU,EAAE,qBAAS;IACrB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACX,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,aAAa;QACpB,OAAO,EAAE,KAAK;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;QAC/B,QAAQ,EAAE;YACN,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;YACnC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,CAAC;YACjD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;YACvC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB;YAC3C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB;YAC3C,WAAW,EAAE,KAAK;YAClB,aAAa,EAAE,KAAK;YACpB,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,CAAA,eAAe,CAAC;YAChE,cAAc,EAAE,IAAI,+CAAsB,EAAE;SAClB;KACZ,CAAA;IACtB,MAAM,EAAE,CAAC,MAAwB,EAAE,EAAE,CAAC,CAAC;QACnC,OAAO,EAAE;YACL,4BAAa,CAAC,OAAO,CAAC,gCACf,MAAM,CAAC,QAAQ,KAClB,QAAQ,EAAE,2BAAY,CAAC,WAAW,EAAE,GACf,CAAC;YAC1B,MAAM,CAAC,MAAM,IAAI,oBAAY,CAAC,OAAO,EAAE;YACvC,kCAAkB,CAAC,OAAO,EAAE;SAC/B,CAAC,MAAM,CAAC,OAAO,CAAC;KACpB,CAAC;CACL,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { INestApplicationContext } from "@nestjs/common";
|
|
2
2
|
import { BaseApplication } from '../BaseApplication';
|
|
3
3
|
import { AppModule } from '../AppModule';
|
|
4
|
+
import { IConsoleAppModuleConfig } from './IConsoleAppModuleConfig';
|
|
4
5
|
/**
|
|
5
6
|
* CLI application configuration class.
|
|
6
7
|
* Mainly used for working with migrations.
|
|
@@ -16,6 +17,11 @@ export declare class ConsoleApplication extends BaseApplication {
|
|
|
16
17
|
* @protected
|
|
17
18
|
*/
|
|
18
19
|
protected _moduleClass: any;
|
|
20
|
+
/**
|
|
21
|
+
* Application configuration defined by the `IConsoleAppModuleConfig` interface.
|
|
22
|
+
* @protected
|
|
23
|
+
*/
|
|
24
|
+
protected _config: IConsoleAppModuleConfig;
|
|
19
25
|
constructor(moduleClass?: typeof AppModule);
|
|
20
26
|
/**
|
|
21
27
|
* Initialize the project environment.
|
|
@@ -24,6 +30,16 @@ export declare class ConsoleApplication extends BaseApplication {
|
|
|
24
30
|
* @protected
|
|
25
31
|
*/
|
|
26
32
|
protected initEnv(): void;
|
|
33
|
+
/**
|
|
34
|
+
* Override `initConfig` method from base class to initialize application configuration.
|
|
35
|
+
* @protected
|
|
36
|
+
*/
|
|
37
|
+
protected initConfig(): void;
|
|
38
|
+
/**
|
|
39
|
+
* Creates a NestJS application context using `NestFactory.createApplicationContext`.
|
|
40
|
+
* @protected
|
|
41
|
+
*/
|
|
42
|
+
protected createApp(): Promise<void>;
|
|
27
43
|
/**
|
|
28
44
|
* Launches an application.
|
|
29
45
|
* Executes a command passed from the terminal,
|
|
@@ -5,6 +5,7 @@ const core_1 = require("@nestjs/core");
|
|
|
5
5
|
const nestjs_command_1 = require("nestjs-command");
|
|
6
6
|
const BaseApplication_1 = require("../BaseApplication");
|
|
7
7
|
const AppModule_1 = require("../AppModule");
|
|
8
|
+
const ModuleHelper_1 = require("../../helpers/ModuleHelper");
|
|
8
9
|
/**
|
|
9
10
|
* CLI application configuration class.
|
|
10
11
|
* Mainly used for working with migrations.
|
|
@@ -24,6 +25,22 @@ class ConsoleApplication extends BaseApplication_1.BaseApplication {
|
|
|
24
25
|
process.env.APP_IS_CLI = '1';
|
|
25
26
|
super.initEnv();
|
|
26
27
|
}
|
|
28
|
+
/**
|
|
29
|
+
* Override `initConfig` method from base class to initialize application configuration.
|
|
30
|
+
* @protected
|
|
31
|
+
*/
|
|
32
|
+
initConfig() {
|
|
33
|
+
this._config = ModuleHelper_1.ModuleHelper.getConfig(this._moduleClass);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Creates a NestJS application context using `NestFactory.createApplicationContext`.
|
|
37
|
+
* @protected
|
|
38
|
+
*/
|
|
39
|
+
async createApp() {
|
|
40
|
+
this._app = await core_1.NestFactory.createApplicationContext(this._moduleClass, {
|
|
41
|
+
logger: this._config.loggerLevels,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
27
44
|
/**
|
|
28
45
|
* Launches an application.
|
|
29
46
|
* Executes a command passed from the terminal,
|
|
@@ -31,9 +48,7 @@ class ConsoleApplication extends BaseApplication_1.BaseApplication {
|
|
|
31
48
|
*/
|
|
32
49
|
async start() {
|
|
33
50
|
await this.init();
|
|
34
|
-
|
|
35
|
-
logger: ['warn', 'error'], // only errors
|
|
36
|
-
});
|
|
51
|
+
await this.createApp();
|
|
37
52
|
try {
|
|
38
53
|
await this._app.select(nestjs_command_1.CommandModule).get(nestjs_command_1.CommandService).exec();
|
|
39
54
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConsoleApplication.js","sourceRoot":"","sources":["../../../../src/infrastructure/applications/console/ConsoleApplication.ts"],"names":[],"mappings":";;;AAAA,uCAAyC;AAEzC,mDAA6D;AAC7D,wDAAmD;AACnD,4CAAuC;
|
|
1
|
+
{"version":3,"file":"ConsoleApplication.js","sourceRoot":"","sources":["../../../../src/infrastructure/applications/console/ConsoleApplication.ts"],"names":[],"mappings":";;;AAAA,uCAAyC;AAEzC,mDAA6D;AAC7D,wDAAmD;AACnD,4CAAuC;AACvC,6DAAwD;AAGxD;;;GAGG;AACH,MAAa,kBAAmB,SAAQ,iCAAe;IAmBnD,YAAY,WAAW,GAAG,qBAAS;QAC/B,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IACpC,CAAC;IAED;;;;;OAKG;IACO,OAAO;QACb,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;QAE7B,KAAK,CAAC,OAAO,EAAE,CAAC;IACpB,CAAC;IAED;;;OAGG;IACO,UAAU;QAChB,IAAI,CAAC,OAAO,GAAG,2BAAY,CAAC,SAAS,CAA0B,IAAI,CAAC,YAAY,CAAC,CAAC;IACtF,CAAC;IAED;;;OAGG;IACO,KAAK,CAAC,SAAS;QACrB,IAAI,CAAC,IAAI,GAAG,MAAM,kBAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,YAAY,EAAE;YACtE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;SACpC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,KAAK;QACd,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAElB,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QAEvB,IAAI;YACA,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,8BAAa,CAAC,CAAC,GAAG,CAAC,+BAAc,CAAC,CAAC,IAAI,EAAE,CAAC;SACpE;QAAC,OAAO,KAAK,EAAE;YACZ,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,iCAAiC;SAC1D;QAED,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;CACJ;AAzED,gDAyEC"}
|
|
@@ -29,6 +29,11 @@ export declare class RestApplication extends BaseApplication {
|
|
|
29
29
|
* @protected
|
|
30
30
|
*/
|
|
31
31
|
protected initConfig(): void;
|
|
32
|
+
/**
|
|
33
|
+
* Set global prefix with versioning
|
|
34
|
+
* @protected
|
|
35
|
+
*/
|
|
36
|
+
protected initRouting(): void;
|
|
32
37
|
/**
|
|
33
38
|
* Initialize Swagger to generate API documentation.
|
|
34
39
|
* Documentation will be available at the `/api/docs` endpoint.
|
|
@@ -69,6 +74,11 @@ export declare class RestApplication extends BaseApplication {
|
|
|
69
74
|
* @protected
|
|
70
75
|
*/
|
|
71
76
|
protected initGraceful(): void;
|
|
77
|
+
/**
|
|
78
|
+
* Creates a NestJS application instance using `NestFactory.create`.
|
|
79
|
+
* @protected
|
|
80
|
+
*/
|
|
81
|
+
protected createApp(): Promise<void>;
|
|
72
82
|
/**
|
|
73
83
|
* Initializes the project.
|
|
74
84
|
* Applies all `init*` methods, and also creates an application instance using `NestFactory.create`.
|
|
@@ -5,6 +5,7 @@ const core_1 = require("@nestjs/core");
|
|
|
5
5
|
const body_parser_1 = require("body-parser");
|
|
6
6
|
const swagger_1 = require("@nestjs/swagger");
|
|
7
7
|
const common_1 = require("@nestjs/common");
|
|
8
|
+
const Sentry = require("@sentry/nestjs");
|
|
8
9
|
const SentryExceptionFilter_1 = require("./SentryExceptionFilter");
|
|
9
10
|
const SchemaSerializer_1 = require("./SchemaSerializer");
|
|
10
11
|
const CreateDtoPipe_1 = require("../../pipes/CreateDtoPipe");
|
|
@@ -52,16 +53,22 @@ class RestApplication extends BaseApplication_1.BaseApplication {
|
|
|
52
53
|
] }, custom === null || custom === void 0 ? void 0 : custom.cors) });
|
|
53
54
|
}
|
|
54
55
|
/**
|
|
55
|
-
*
|
|
56
|
-
* Documentation will be available at the `/api/docs` endpoint.
|
|
56
|
+
* Set global prefix with versioning
|
|
57
57
|
* @protected
|
|
58
58
|
*/
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
this._app.setGlobalPrefix('/api/v1');
|
|
59
|
+
initRouting() {
|
|
60
|
+
this._app.setGlobalPrefix('/api');
|
|
62
61
|
this._app.enableVersioning({
|
|
63
62
|
type: common_1.VersioningType.URI,
|
|
63
|
+
defaultVersion: '1',
|
|
64
64
|
});
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Initialize Swagger to generate API documentation.
|
|
68
|
+
* Documentation will be available at the `/api/docs` endpoint.
|
|
69
|
+
* @protected
|
|
70
|
+
*/
|
|
71
|
+
initSwagger() {
|
|
65
72
|
// Swagger config
|
|
66
73
|
const swaggerConfig = new swagger_1.DocumentBuilder()
|
|
67
74
|
.setTitle(this._config.title || 'Application')
|
|
@@ -112,7 +119,7 @@ class RestApplication extends BaseApplication_1.BaseApplication {
|
|
|
112
119
|
* @protected
|
|
113
120
|
*/
|
|
114
121
|
initFilters() {
|
|
115
|
-
if (
|
|
122
|
+
if (Sentry.getClient()) {
|
|
116
123
|
this._app.useGlobalFilters(new SentryExceptionFilter_1.SentryExceptionFilter(this._config.sentry.exposeSentryErrorResponse));
|
|
117
124
|
}
|
|
118
125
|
// Validation
|
|
@@ -143,15 +150,23 @@ class RestApplication extends BaseApplication_1.BaseApplication {
|
|
|
143
150
|
this._app.enableShutdownHooks();
|
|
144
151
|
}
|
|
145
152
|
}
|
|
153
|
+
/**
|
|
154
|
+
* Creates a NestJS application instance using `NestFactory.create`.
|
|
155
|
+
* @protected
|
|
156
|
+
*/
|
|
157
|
+
async createApp() {
|
|
158
|
+
this._app = await core_1.NestFactory.create(this._moduleClass, {
|
|
159
|
+
logger: this._config.loggerLevels,
|
|
160
|
+
});
|
|
161
|
+
}
|
|
146
162
|
/**
|
|
147
163
|
* Initializes the project.
|
|
148
164
|
* Applies all `init*` methods, and also creates an application instance using `NestFactory.create`.
|
|
149
165
|
*/
|
|
150
166
|
async init() {
|
|
151
167
|
await super.init();
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
});
|
|
168
|
+
await this.createApp();
|
|
169
|
+
this.initRouting();
|
|
155
170
|
this.initSwagger();
|
|
156
171
|
this.initCors();
|
|
157
172
|
this.initPipes();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestApplication.js","sourceRoot":"","sources":["../../../../src/infrastructure/applications/rest/RestApplication.ts"],"names":[],"mappings":";;;AAAA,uCAAoD;AACpD,6CAA6C;AAC7C,6CAA+D;AAC/D,2CAAgE;AAChE,mEAA8D;AAC9D,yDAAoD;AAEpD,6DAAwD;AACxD,uFAAkF;AAClF,2EAAsE;AACtE,wDAAmD;AACnD,6DAAwD;AACxD,4CAAuC;AAEvC;;GAEG;AACH,MAAa,eAAgB,SAAQ,iCAAe;IAoBhD,YAAY,WAAW,GAAG,qBAAS;QAC/B,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACO,UAAU;QAChB,MAAM,MAAM,GAAG,2BAAY,CAAC,SAAS,CAAuB,IAAI,CAAC,YAAY,CAAC,CAAC;QAC/E,IAAI,CAAC,OAAO,iCACR,gBAAgB,EAAE,MAAM,IACrB,MAAM,KACT,IAAI,kBACA,YAAY,EAAE;oBACV,QAAQ;oBACR,kBAAkB;oBAClB,cAAc;oBACd,QAAQ;oBACR,eAAe;oBACf,qBAAqB;oBACrB,cAAc;oBAEd,sBAAsB;oBACtB,eAAe;oBACf,mBAAmB;oBACnB,eAAe;oBACf,kBAAkB;oBAClB,qBAAqB;oBACrB,eAAe;iBAClB,EACD,YAAY,EAAE;oBACV,MAAM;oBACN,KAAK;oBACL,KAAK;oBACL,SAAS;oBACT,QAAQ;iBACX,IACE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,IAEtB,CAAC;IACN,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"RestApplication.js","sourceRoot":"","sources":["../../../../src/infrastructure/applications/rest/RestApplication.ts"],"names":[],"mappings":"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"}
|
|
@@ -52,13 +52,6 @@ let MigrateCommand = class MigrateCommand {
|
|
|
52
52
|
async generate() {
|
|
53
53
|
await (0, generate_1.generate)(this.dataSource);
|
|
54
54
|
}
|
|
55
|
-
async generatePermissions(permissionTable, permissionColumn, permissionModule) {
|
|
56
|
-
await (0, generate_1.generateMigrationsForPermissions)(this.dataSource, {
|
|
57
|
-
table: permissionTable,
|
|
58
|
-
column: permissionColumn,
|
|
59
|
-
module: permissionModule,
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
55
|
};
|
|
63
56
|
__decorate([
|
|
64
57
|
(0, nestjs_command_1.Command)({
|
|
@@ -117,33 +110,6 @@ __decorate([
|
|
|
117
110
|
__metadata("design:paramtypes", []),
|
|
118
111
|
__metadata("design:returntype", Promise)
|
|
119
112
|
], MigrateCommand.prototype, "generate", null);
|
|
120
|
-
__decorate([
|
|
121
|
-
(0, nestjs_command_1.Command)({
|
|
122
|
-
command: 'migrate:generate-permissions',
|
|
123
|
-
describe: 'Create migrations for permissions, it is used to synchronize the current list of permissions between the code and the database.',
|
|
124
|
-
}),
|
|
125
|
-
__param(0, (0, nestjs_command_1.Option)({
|
|
126
|
-
name: 'permissionTable',
|
|
127
|
-
describe: 'Table name for permissions',
|
|
128
|
-
type: 'string',
|
|
129
|
-
default: 'auth_permission',
|
|
130
|
-
})),
|
|
131
|
-
__param(1, (0, nestjs_command_1.Option)({
|
|
132
|
-
name: 'permissionColumn',
|
|
133
|
-
describe: 'Column name of permission',
|
|
134
|
-
type: 'string',
|
|
135
|
-
default: 'name',
|
|
136
|
-
})),
|
|
137
|
-
__param(2, (0, nestjs_command_1.Option)({
|
|
138
|
-
name: 'permissionModule',
|
|
139
|
-
describe: 'Module where write migrations of permissions',
|
|
140
|
-
type: 'string',
|
|
141
|
-
default: 'auth',
|
|
142
|
-
})),
|
|
143
|
-
__metadata("design:type", Function),
|
|
144
|
-
__metadata("design:paramtypes", [String, String, String]),
|
|
145
|
-
__metadata("design:returntype", Promise)
|
|
146
|
-
], MigrateCommand.prototype, "generatePermissions", null);
|
|
147
113
|
MigrateCommand = __decorate([
|
|
148
114
|
(0, common_1.Injectable)(),
|
|
149
115
|
__param(0, (0, common_1.Inject)(typeorm_1.DataSource)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MigrateCommand.js","sourceRoot":"","sources":["../../../src/infrastructure/commands/MigrateCommand.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"MigrateCommand.js","sourceRoot":"","sources":["../../../src/infrastructure/commands/MigrateCommand.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Connection
|
|
2
|
-
export declare const
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { Connection } from '@steroidsjs/typeorm';
|
|
2
|
+
export declare const prettifyQuery: (query: string) => string;
|
|
3
|
+
/**
|
|
4
|
+
* Gets contents of the migration file.
|
|
5
|
+
*/
|
|
6
|
+
export declare const getTemplate: (name: string, timestamp: number, upSqls: string[], downSqls: string[]) => string;
|
|
7
7
|
export declare const generate: (connection: Connection) => Promise<void>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generate = exports.
|
|
3
|
+
exports.generate = exports.getTemplate = exports.prettifyQuery = void 0;
|
|
4
4
|
const load_configuration_1 = require("@nestjs/cli/lib/utils/load-configuration");
|
|
5
5
|
const path_1 = require("path");
|
|
6
6
|
const fs = require("fs");
|
|
@@ -9,8 +9,6 @@ const formatter_1 = require("@sqltools/formatter");
|
|
|
9
9
|
const glob = require("glob");
|
|
10
10
|
const CustomRdbmsSchemaBuilder_1 = require("./CustomRdbmsSchemaBuilder");
|
|
11
11
|
const ModuleHelper_1 = require("../../helpers/ModuleHelper");
|
|
12
|
-
const getNewPermissions_1 = require("../../utils/getNewPermissions");
|
|
13
|
-
const ADD_PERMISSIONS_NAME = 'AddPermissions';
|
|
14
12
|
const queryParams = (parameters) => {
|
|
15
13
|
if (!parameters || !parameters.length) {
|
|
16
14
|
return '';
|
|
@@ -23,6 +21,7 @@ const prettifyQuery = (query) => {
|
|
|
23
21
|
query = query.replace(/`/g, '\\`');
|
|
24
22
|
return query;
|
|
25
23
|
};
|
|
24
|
+
exports.prettifyQuery = prettifyQuery;
|
|
26
25
|
/**
|
|
27
26
|
* Gets contents of the migration file.
|
|
28
27
|
*/
|
|
@@ -45,38 +44,7 @@ ${downSqls.join(`
|
|
|
45
44
|
}
|
|
46
45
|
`;
|
|
47
46
|
};
|
|
48
|
-
|
|
49
|
-
table: 'auth_permission',
|
|
50
|
-
column: 'name',
|
|
51
|
-
module: 'auth',
|
|
52
|
-
}) => {
|
|
53
|
-
const newPermissions = await (0, getNewPermissions_1.getNewPermissions)(dataSource, permissionOptions.table, permissionOptions.column);
|
|
54
|
-
if (!newPermissions.length) {
|
|
55
|
-
// eslint-disable-next-line no-console
|
|
56
|
-
console.log('info', 'No changes in permissions were found');
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
const cliConfiguration = await (0, load_configuration_1.loadConfiguration)();
|
|
60
|
-
const dirPath = (0, path_1.join)(process.cwd(), cliConfiguration.sourceRoot, permissionOptions.module, 'infrastructure', 'migrations');
|
|
61
|
-
const values = newPermissions
|
|
62
|
-
.map(key => `('${key}')`)
|
|
63
|
-
.join(',\n ');
|
|
64
|
-
const upRaw = `INSERT INTO ${permissionOptions.table} (${permissionOptions.column}) VALUES\n ${values};`;
|
|
65
|
-
const downRaw = `DELETE FROM ${permissionOptions.table} WHERE ${permissionOptions.column} IN (${newPermissions.map(permission => `'${permission}'`).join(', ')});`;
|
|
66
|
-
const upQueries = [
|
|
67
|
-
` await queryRunner.query(\`${prettifyQuery(upRaw)}\`);`,
|
|
68
|
-
];
|
|
69
|
-
const downQueries = [
|
|
70
|
-
` await queryRunner.query(\`${prettifyQuery(downRaw)}\`);`,
|
|
71
|
-
];
|
|
72
|
-
const timestamp = new Date().getTime();
|
|
73
|
-
const migrationFileContent = getTemplate(ADD_PERMISSIONS_NAME, timestamp, upQueries, downQueries);
|
|
74
|
-
const migrationFilePath = (0, path_1.join)(dirPath, `${timestamp}-${ADD_PERMISSIONS_NAME}.ts`);
|
|
75
|
-
// eslint-disable-next-line no-console
|
|
76
|
-
console.log('info', '\t' + migrationFilePath);
|
|
77
|
-
await CommandUtils_1.CommandUtils.createFile(migrationFilePath, migrationFileContent);
|
|
78
|
-
};
|
|
79
|
-
exports.generateMigrationsForPermissions = generateMigrationsForPermissions;
|
|
47
|
+
exports.getTemplate = getTemplate;
|
|
80
48
|
const generate = async (connection) => {
|
|
81
49
|
const hasPendingMigrations = await connection.showMigrations();
|
|
82
50
|
if (hasPendingMigrations) {
|
|
@@ -143,11 +111,11 @@ const generate = async (connection) => {
|
|
|
143
111
|
downQueries: [],
|
|
144
112
|
};
|
|
145
113
|
}
|
|
146
|
-
migrationsByTables[tableName].upQueries.push(' await queryRunner.query(`' + prettifyQuery(item.query.query) + '`' + queryParams(item.query.parameters) + ');');
|
|
114
|
+
migrationsByTables[tableName].upQueries.push(' await queryRunner.query(`' + (0, exports.prettifyQuery)(item.query.query) + '`' + queryParams(item.query.parameters) + ');');
|
|
147
115
|
}
|
|
148
116
|
for (const item of sqlInMemory.downTableQueries) {
|
|
149
117
|
const tableName = junctionTablesMap[item.tableName] || item.tableName;
|
|
150
|
-
migrationsByTables[tableName].downQueries.push(' await queryRunner.query(`' + prettifyQuery(item.query.query) + '`' + queryParams(item.query.parameters) + ');');
|
|
118
|
+
migrationsByTables[tableName].downQueries.push(' await queryRunner.query(`' + (0, exports.prettifyQuery)(item.query.query) + '`' + queryParams(item.query.parameters) + ');');
|
|
151
119
|
}
|
|
152
120
|
// Generate migrations
|
|
153
121
|
const timestamp = new Date().getTime();
|
|
@@ -169,7 +137,7 @@ const generate = async (connection) => {
|
|
|
169
137
|
const tableDeclarationUpQueries = migrationsByTables[tableName].upQueries.filter(query => query.includes('CREATE TABLE'));
|
|
170
138
|
const tableDeclarationDownQueries = migrationsByTables[tableName].downQueries.filter(query => query.includes('DROP TABLE')).reverse();
|
|
171
139
|
if (tableDeclarationUpQueries.length > 0 || tableDeclarationDownQueries.length > 0) {
|
|
172
|
-
const tableDeclarationFileContent = getTemplate(tableClassName, timestamp, tableDeclarationUpQueries, tableDeclarationDownQueries);
|
|
140
|
+
const tableDeclarationFileContent = (0, exports.getTemplate)(tableClassName, timestamp, tableDeclarationUpQueries, tableDeclarationDownQueries);
|
|
173
141
|
const tableDeclarationFileName = timestamp + '-' + tableClassName + '.ts';
|
|
174
142
|
const tableDeclarationFilePath = (0, path_1.resolve)(tablePath, '../../migrations', tableDeclarationFileName);
|
|
175
143
|
// eslint-disable-next-line no-console
|
|
@@ -181,7 +149,7 @@ const generate = async (connection) => {
|
|
|
181
149
|
const foreignKeysUpQueries = migrationsByTables[tableName].upQueries.filter(query => !query.includes('CREATE TABLE'));
|
|
182
150
|
const foreignKeysDownQueries = migrationsByTables[tableName].downQueries.filter(query => !query.includes('DROP TABLE')).reverse();
|
|
183
151
|
if (foreignKeysUpQueries.length > 0 || foreignKeysDownQueries.length > 0) {
|
|
184
|
-
const foreignKeysFileContent = getTemplate(tableClassName, nextTimestamp, foreignKeysUpQueries, foreignKeysDownQueries);
|
|
152
|
+
const foreignKeysFileContent = (0, exports.getTemplate)(tableClassName, nextTimestamp, foreignKeysUpQueries, foreignKeysDownQueries);
|
|
185
153
|
const foreignKeysFileName = nextTimestamp + '-' + tableClassName + '.ts';
|
|
186
154
|
const foreignKeysFilePath = (0, path_1.resolve)(tablePath, '../../migrations', foreignKeysFileName);
|
|
187
155
|
// eslint-disable-next-line no-console
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/generate/index.ts"],"names":[],"mappings":";;;AAAA,iFAA2E;AAC3E,+BAAmC;AACnC,yBAAyB;AACzB,4EAAuE;AAEvE,mDAA2C;AAC3C,6BAA6B;AAC7B,yEAAoE;AACpE,6DAAwD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/generate/index.ts"],"names":[],"mappings":";;;AAAA,iFAA2E;AAC3E,+BAAmC;AACnC,yBAAyB;AACzB,4EAAuE;AAEvE,mDAA2C;AAC3C,6BAA6B;AAC7B,yEAAoE;AACpE,6DAAwD;AAExD,MAAM,WAAW,GAAG,CAAC,UAA6B,EAAU,EAAE;IAC1D,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;QACnC,OAAO,EAAE,CAAC;KACb;IAED,OAAO,KAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;AAC7C,CAAC,CAAC;AAEK,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,EAAE;IAC3C,MAAM,cAAc,GAAG,IAAA,kBAAM,EAAC,KAAK,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC,CAAC;IACvD,KAAK,GAAG,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,cAAc,CAAC,GAAG,YAAY,CAAC;IAC5E,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACnC,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AALW,QAAA,aAAa,iBAKxB;AAEF;;GAEG;AACI,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,SAAiB,EAAE,MAAgB,EAAE,QAAkB,EAAU,EAAE;IACzG,MAAM,aAAa,GAAG,GAAG,IAAI,GAAG,SAAS,EAAE,CAAC;IAE5C,OAAO;;eAEI,aAAa;cACd,aAAa;;;EAGzB,MAAM,CAAC,IAAI,CAAC;CACb,CAAC;;;;EAIA,QAAQ,CAAC,IAAI,CAAC;CACf,CAAC;;;CAGD,CAAC;AACF,CAAC,CAAC;AAnBW,QAAA,WAAW,eAmBtB;AAEK,MAAM,QAAQ,GAAG,KAAK,EAAE,UAAsB,EAAE,EAAE;IACrD,MAAM,oBAAoB,GAAG,MAAM,UAAU,CAAC,cAAc,EAAE,CAAC;IAE/D,IAAI,oBAAoB,EAAE;QACtB,OAAO,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAC;QACzF,OAAO;KACV;IAED,uCAAuC;IACvC,MAAM,iBAAiB,GAAG,EAAE,CAAC;IAE7B,MAAM,kBAAkB,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE;QAC7E,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC;QAElD,UAAU,CAAC,mBAAmB,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE;YACxD,IAAI,kBAAkB,CAAC,aAAa,EAAE;gBAClC,iBAAiB,CAAC,kBAAkB,CAAC,aAAa,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC;aAC9E;QACL,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACf,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,4BAA4B;IAC5B,MAAM,gBAAgB,GAAG,MAAM,IAAA,sCAAiB,GAAE,CAAC;IACnD,MAAM,UAAU,GAAG,IAAA,WAAI,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC;IAEpE,oDAAoD;IACpD,MAAM,UAAU,GAAgE,EAAE,CAAC;IACnF,MAAM,UAAU,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC9C,KAAK,MAAM,UAAU,IAAI,UAAU,EAAE;QACjC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAA,WAAI,EAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE;YACzD,MAAM,SAAS,GAAG,IAAA,WAAI,EAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YAC/C,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC1E,IAAI,CAAC,SAAS,GAAG,4BAA4B,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;oBAC5D,IAAI,GAAG,EAAE;wBACL,MAAM,CAAC,GAAG,CAAC,CAAC;qBACf;yBAAM;wBACH,OAAO,CAAC,OAAO,CAAC,CAAC;qBACpB;gBACL,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC,CAAC;YACJ,KAAK,MAAM,aAAa,IAAK,eAAuB,EAAE;gBAClD,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAC5E,MAAM,SAAS,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;gBACrD,UAAU,CAAC,SAAS,CAAC,GAAG;oBACpB,cAAc;oBACd,SAAS,EAAE,aAAa;iBAC3B,CAAC;aACL;SACJ;QACD,MAAM,YAAY,GAAG,2BAAY,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC1D,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;YACpC,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC;YACxC,MAAM,SAAS,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;YACrD,UAAU,CAAC,SAAS,CAAC,GAAG;gBACpB,cAAc;gBACd,SAAS,EAAE,IAAA,WAAI,EAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,EAAE,cAAc,GAAG,KAAK,CAAC;aAC9F,CAAC;SACL;KACJ;IAED,gDAAgD;IAChD,MAAM,kBAAkB,GAAiE,EAAE,CAAC;IAC5F,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,mDAAwB,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IAE3E,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,cAAc,EAAE;QAC3C,MAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC;QAEtE,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE;YAChC,kBAAkB,CAAC,SAAS,CAAC,GAAG;gBAC5B,SAAS,EAAE,EAAE;gBACb,WAAW,EAAE,EAAE;aAClB,CAAC;SACL;QACD,kBAAkB,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,IAAI,CACxC,mCAAmC,GAAG,IAAA,qBAAa,EAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,IAAI,CAC1H,CAAC;KACL;IACD,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,gBAAgB,EAAE;QAC7C,MAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC;QACtE,kBAAkB,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,IAAI,CAC1C,mCAAmC,GAAG,IAAA,qBAAa,EAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,IAAI,CAC1H,CAAC;KACL;IAED,sBAAsB;IACtB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IACvC,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9C,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,0CAA0C,CAAC,CAAC;KACnE;SAAM;QACH,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;QAC3C,KAAK,MAAM,SAAS,IAAI,kBAAkB,EAAE;YACxC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;gBACxB,OAAO,CAAC,KAAK,CAAC,qCAAqC,GAAG,SAAS,CAAC,CAAC;gBACjE,SAAS;aACZ;YACD,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC;YAC5D,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC;YAElD,2EAA2E;YAC3E,MAAM,yBAAyB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;YAC1H,MAAM,2BAA2B,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YAEtI,IAAI,yBAAyB,CAAC,MAAM,GAAG,CAAC,IAAI,2BAA2B,CAAC,MAAM,GAAG,CAAC,EAAE;gBAChF,MAAM,2BAA2B,GAAG,IAAA,mBAAW,EAC3C,cAAc,EACd,SAAS,EACT,yBAAyB,EACzB,2BAA2B,CAC9B,CAAC;gBACF,MAAM,wBAAwB,GAAG,SAAS,GAAG,GAAG,GAAG,cAAc,GAAG,KAAK,CAAC;gBAC1E,MAAM,wBAAwB,GAAG,IAAA,cAAO,EAAC,SAAS,EAAE,kBAAkB,EAAE,wBAAwB,CAAC,CAAC;gBAElG,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,wBAAwB,CAAC,CAAC;gBACrD,MAAM,2BAAY,CAAC,UAAU,CAAC,wBAAwB,EAAE,2BAA2B,CAAC,CAAC;aACxF;YAED,+FAA+F;YAC/F,MAAM,aAAa,GAAG,SAAS,GAAG,CAAC,CAAC;YAEpC,MAAM,oBAAoB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;YACtH,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YAElI,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,IAAI,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtE,MAAM,sBAAsB,GAAG,IAAA,mBAAW,EACtC,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,sBAAsB,CACzB,CAAC;gBACF,MAAM,mBAAmB,GAAG,aAAa,GAAG,GAAG,GAAG,cAAc,GAAG,KAAK,CAAC;gBACzE,MAAM,mBAAmB,GAAG,IAAA,cAAO,EAAC,SAAS,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;gBAExF,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,mBAAmB,CAAC,CAAC;gBAChD,MAAM,2BAAY,CAAC,UAAU,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC;aAC9E;SACJ;KACJ;AACL,CAAC,CAAC;AA9IW,QAAA,QAAQ,YA8InB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ExceptionFilter, ArgumentsHost } from '@nestjs/common';
|
|
2
2
|
import { UserException } from "../../usecases/exceptions/";
|
|
3
|
+
/** @deprecated */
|
|
3
4
|
export declare class UserExceptionFilter implements ExceptionFilter {
|
|
4
5
|
catch(exception: UserException, host: ArgumentsHost): void;
|
|
5
6
|
}
|
|
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
9
9
|
exports.UserExceptionFilter = void 0;
|
|
10
10
|
const common_1 = require("@nestjs/common");
|
|
11
11
|
const exceptions_1 = require("../../usecases/exceptions/");
|
|
12
|
+
/** @deprecated */
|
|
12
13
|
let UserExceptionFilter = class UserExceptionFilter {
|
|
13
14
|
catch(exception, host) {
|
|
14
15
|
const ctx = host.switchToHttp();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserExceptionFilter.js","sourceRoot":"","sources":["../../../src/infrastructure/filters/UserExceptionFilter.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAiF;AAEjF,2DAAyD;
|
|
1
|
+
{"version":3,"file":"UserExceptionFilter.js","sourceRoot":"","sources":["../../../src/infrastructure/filters/UserExceptionFilter.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAiF;AAEjF,2DAAyD;AAEzD,kBAAkB;AAEX,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC5B,KAAK,CAAC,SAAwB,EAAE,IAAmB;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAY,CAAC;QAC7C,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;QAClC,QAAQ;aACH,MAAM,CAAC,mBAAU,CAAC,qBAAqB,CAAC;aACxC,IAAI,CAAC;YACF,UAAU,EAAE,mBAAU,CAAC,qBAAqB;YAC5C,OAAO;SACV,CAAC,CACL;IACL,CAAC;CACJ,CAAA;AAbY,mBAAmB;IAD/B,IAAA,cAAK,EAAC,0BAAa,CAAC;GACR,mBAAmB,CAa/B;AAbY,kDAAmB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@steroidsjs/nest",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.3.0",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"script": "nps",
|
|
6
6
|
"watch": "nps watch",
|
|
@@ -58,6 +58,7 @@
|
|
|
58
58
|
"@steroidsjs/nest-typeorm": "^10.0.3",
|
|
59
59
|
"@steroidsjs/typeorm": "^0.3.23",
|
|
60
60
|
"@types/jest": "^29.4.0",
|
|
61
|
+
"@types/lodash": "^4.17.23",
|
|
61
62
|
"@types/node": "^18.11.18",
|
|
62
63
|
"@typescript-eslint/eslint-plugin": "^5.49.0",
|
|
63
64
|
"@typescript-eslint/parser": "^5.49.0",
|