@steroidsjs/nest 4.0.1 → 4.1.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.
Files changed (36) hide show
  1. package/infrastructure/applications/IAppModuleConfig.d.ts +4 -0
  2. package/infrastructure/applications/rest/RestApplication.js +1 -1
  3. package/infrastructure/applications/rest/RestApplication.js.map +1 -1
  4. package/infrastructure/applications/rest/SentryExceptionFilter.d.ts +2 -0
  5. package/infrastructure/applications/rest/SentryExceptionFilter.js +9 -2
  6. package/infrastructure/applications/rest/SentryExceptionFilter.js.map +1 -1
  7. package/infrastructure/applications/rest/config.d.ts +18 -1
  8. package/infrastructure/applications/rest/config.js +6 -1
  9. package/infrastructure/applications/rest/config.js.map +1 -1
  10. package/infrastructure/base/consts.d.ts +1 -0
  11. package/infrastructure/base/consts.js +5 -0
  12. package/infrastructure/base/consts.js.map +1 -0
  13. package/infrastructure/commands/MigrateCommand.d.ts +1 -0
  14. package/infrastructure/commands/MigrateCommand.js +34 -0
  15. package/infrastructure/commands/MigrateCommand.js.map +1 -1
  16. package/infrastructure/commands/generate/index.d.ts +6 -1
  17. package/infrastructure/commands/generate/index.js +41 -2
  18. package/infrastructure/commands/generate/index.js.map +1 -1
  19. package/infrastructure/decorators/fields/ComputableField.d.ts +2 -0
  20. package/infrastructure/decorators/fields/ComputableField.js +1 -0
  21. package/infrastructure/decorators/fields/ComputableField.js.map +1 -1
  22. package/infrastructure/decorators/fields/DecimalField.js +3 -1
  23. package/infrastructure/decorators/fields/DecimalField.js.map +1 -1
  24. package/infrastructure/decorators/fields/DecimalNumberField.js +2 -1
  25. package/infrastructure/decorators/fields/DecimalNumberField.js.map +1 -1
  26. package/infrastructure/decorators/fields/EnumField.js +1 -0
  27. package/infrastructure/decorators/fields/EnumField.js.map +1 -1
  28. package/infrastructure/decorators/typeorm/fields/TypeOrmDecimalField/index.js +2 -1
  29. package/infrastructure/decorators/typeorm/fields/TypeOrmDecimalField/index.js.map +1 -1
  30. package/infrastructure/decorators/typeorm/fields/TypeOrmDecimalNumberField/index.js +2 -1
  31. package/infrastructure/decorators/typeorm/fields/TypeOrmDecimalNumberField/index.js.map +1 -1
  32. package/infrastructure/utils/getNewPermissions.d.ts +2 -0
  33. package/infrastructure/utils/getNewPermissions.js +18 -0
  34. package/infrastructure/utils/getNewPermissions.js.map +1 -0
  35. package/package.json +1 -1
  36. package/tsconfig.tsbuildinfo +1 -1
@@ -43,5 +43,9 @@ export interface IAppModuleConfig {
43
43
  * Application Environment for Sentry
44
44
  */
45
45
  environment: string;
46
+ /**
47
+ * Show detailed error info in HTTP responses.
48
+ */
49
+ exposeSentryErrorResponse?: boolean;
46
50
  };
47
51
  }
@@ -124,7 +124,7 @@ class RestApplication extends BaseApplication_1.BaseApplication {
124
124
  */
125
125
  initSentry() {
126
126
  if (process.env.APP_SENTRY_DSN) {
127
- this._app.useGlobalFilters(new SentryExceptionFilter_1.SentryExceptionFilter());
127
+ this._app.useGlobalFilters(new SentryExceptionFilter_1.SentryExceptionFilter(this._config.sentry.exposeSentryErrorResponse));
128
128
  }
129
129
  }
130
130
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"RestApplication.js","sourceRoot":"","sources":["../../../../src/infrastructure/applications/rest/RestApplication.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RestApplication.js","sourceRoot":"","sources":["../../../../src/infrastructure/applications/rest/RestApplication.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  import { ExceptionFilter, ArgumentsHost } from '@nestjs/common';
2
2
  export declare class SentryExceptionFilter implements ExceptionFilter {
3
+ private readonly exposeErrorResponse;
4
+ constructor(exposeErrorResponse: boolean);
3
5
  catch(exception: Error, host: ArgumentsHost): void;
4
6
  }
@@ -5,12 +5,18 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
8
11
  Object.defineProperty(exports, "__esModule", { value: true });
9
12
  exports.SentryExceptionFilter = void 0;
10
13
  const common_1 = require("@nestjs/common");
11
14
  const Sentry = require("@sentry/node");
12
15
  const uuid_1 = require("uuid");
13
16
  let SentryExceptionFilter = class SentryExceptionFilter {
17
+ constructor(exposeErrorResponse) {
18
+ this.exposeErrorResponse = exposeErrorResponse;
19
+ }
14
20
  catch(exception, host) {
15
21
  var _a;
16
22
  const ctx = host.switchToHttp();
@@ -44,7 +50,7 @@ let SentryExceptionFilter = class SentryExceptionFilter {
44
50
  },
45
51
  };
46
52
  Sentry.captureException(exception, context);
47
- exception.message = 'Внутренняя ошибка сервера. ' + exception.message || '';
53
+ exception.message = 'Внутренняя ошибка сервера. ' + (this.exposeErrorResponse ? exception.message || '' : '');
48
54
  if (errorUid) {
49
55
  exception.message += ` Ошибка #${errorUid}`;
50
56
  }
@@ -58,7 +64,8 @@ let SentryExceptionFilter = class SentryExceptionFilter {
58
64
  }
59
65
  };
60
66
  SentryExceptionFilter = __decorate([
61
- (0, common_1.Catch)(Error)
67
+ (0, common_1.Catch)(Error),
68
+ __metadata("design:paramtypes", [Boolean])
62
69
  ], SentryExceptionFilter);
63
70
  exports.SentryExceptionFilter = SentryExceptionFilter;
64
71
  //# sourceMappingURL=SentryExceptionFilter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SentryExceptionFilter.js","sourceRoot":"","sources":["../../../../src/infrastructure/applications/rest/SentryExceptionFilter.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAgG;AAEhG,uCAAuC;AACvC,+BAAoC;AAI7B,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAC9B,KAAK,CAAC,SAAgB,EAAE,IAAmB;;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAY,CAAC;QAE7C,IAAI,SAAS,YAAY,sBAAa,EAAE;YACpC,MAAM,iBAAiB,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;YAClD,IAAI,OAAO,GAAQ;gBACf,UAAU,EAAE,SAAS,CAAC,SAAS,EAAE;gBACjC,OAAO,EAAE,SAAS,CAAC,OAAO;aAC7B,CAAC;YACF,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;gBACvC,OAAO,mCAAO,OAAO,GAAK,iBAAiB,CAAC,CAAC;aAChD;iBAAM;gBACH,OAAO,CAAC,QAAQ,GAAG,iBAAiB,CAAC;aACxC;YACD,QAAQ;iBACH,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;iBAC7B,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,OAAO;SACV;QAED,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAG,IAAA,SAAM,GAAE,CAAC;QAE1B,MAAM,OAAO,GAAmB;YAC5B,IAAI,EAAE;gBACF,QAAQ;aACX;YACD,KAAK,kBACD,QAAQ,EACR,GAAG,EAAE,OAAO,CAAC,GAAG,IACb,OAAO,CAAC,OAAO,CACrB;YACD,IAAI,EAAE;gBACF,EAAE,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,0CAAE,EAAE;aACxB;SACJ,CAAC;QAEF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE5C,SAAS,CAAC,OAAO,GAAG,6BAA6B,GAAG,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC;QAC5E,IAAI,QAAQ,EAAE;YACV,SAAS,CAAC,OAAO,IAAI,YAAY,QAAQ,EAAE,CAAC;SAC/C;QAED,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,CAAC;IACX,CAAC;CACJ,CAAA;AAtDY,qBAAqB;IADjC,IAAA,cAAK,EAAC,KAAK,CAAC;GACA,qBAAqB,CAsDjC;AAtDY,sDAAqB"}
1
+ {"version":3,"file":"SentryExceptionFilter.js","sourceRoot":"","sources":["../../../../src/infrastructure/applications/rest/SentryExceptionFilter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAgG;AAEhG,uCAAuC;AACvC,+BAAoC;AAI7B,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAC9B,YAA6B,mBAA4B;QAA5B,wBAAmB,GAAnB,mBAAmB,CAAS;IAAG,CAAC;IAE7D,KAAK,CAAC,SAAgB,EAAE,IAAmB;;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAY,CAAC;QAE7C,IAAI,SAAS,YAAY,sBAAa,EAAE;YACpC,MAAM,iBAAiB,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;YAClD,IAAI,OAAO,GAAQ;gBACf,UAAU,EAAE,SAAS,CAAC,SAAS,EAAE;gBACjC,OAAO,EAAE,SAAS,CAAC,OAAO;aAC7B,CAAC;YACF,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;gBACvC,OAAO,mCAAO,OAAO,GAAK,iBAAiB,CAAC,CAAC;aAChD;iBAAM;gBACH,OAAO,CAAC,QAAQ,GAAG,iBAAiB,CAAC;aACxC;YACD,QAAQ;iBACH,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;iBAC7B,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,OAAO;SACV;QAED,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAG,IAAA,SAAM,GAAE,CAAC;QAE1B,MAAM,OAAO,GAAmB;YAC5B,IAAI,EAAE;gBACF,QAAQ;aACX;YACD,KAAK,kBACD,QAAQ,EACR,GAAG,EAAE,OAAO,CAAC,GAAG,IACb,OAAO,CAAC,OAAO,CACrB;YACD,IAAI,EAAE;gBACF,EAAE,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,0CAAE,EAAE;aACxB;SACJ,CAAC;QAEF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE5C,SAAS,CAAC,OAAO,GAAG,6BAA6B,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAE9G,IAAI,QAAQ,EAAE;YACV,SAAS,CAAC,OAAO,IAAI,YAAY,QAAQ,EAAE,CAAC;SAC/C;QAED,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,CAAC;IACX,CAAC;CACJ,CAAA;AAzDY,qBAAqB;IADjC,IAAA,cAAK,EAAC,KAAK,CAAC;;GACA,qBAAqB,CAyDjC;AAzDY,sDAAqB"}
@@ -4,6 +4,24 @@ import { GracefulController } from "./graceful/GracefulController";
4
4
  import { GracefulService } from "./graceful/GracefulService";
5
5
  import { ValidationExceptionFilter } from '../../filters/ValidationExceptionFilter';
6
6
  declare const _default: {
7
+ config: () => {
8
+ sentry: {
9
+ dsn: string;
10
+ environment: string;
11
+ exposeSentryErrorResponse: boolean;
12
+ };
13
+ name: string;
14
+ title: string;
15
+ version: string;
16
+ database?: {
17
+ [key: string]: any;
18
+ host: string;
19
+ port: number;
20
+ database: string;
21
+ username: string;
22
+ password: string;
23
+ };
24
+ };
7
25
  module: (config: IRestAppModuleConfig) => {
8
26
  providers: (typeof GracefulService | {
9
27
  provide: string;
@@ -16,6 +34,5 @@ declare const _default: {
16
34
  imports: import("@nestjs/common").DynamicModule[];
17
35
  };
18
36
  rootTarget: typeof import("../AppModule").AppModule;
19
- config: () => import("../IAppModuleConfig").IAppModuleConfig;
20
37
  };
21
38
  export default _default;
@@ -6,7 +6,12 @@ const RequestExecutionExceptionFilter_1 = require("./filters/RequestExecutionExc
6
6
  const GracefulController_1 = require("./graceful/GracefulController");
7
7
  const GracefulService_1 = require("./graceful/GracefulService");
8
8
  const ValidationExceptionFilter_1 = require("../../filters/ValidationExceptionFilter");
9
- exports.default = Object.assign(Object.assign({}, config_1.default), { module: (config) => (Object.assign(Object.assign({}, config_1.default.module(config)), { providers: [
9
+ const BooleanField_1 = require("../../decorators/fields/BooleanField");
10
+ exports.default = Object.assign(Object.assign({}, config_1.default), { config: () => (Object.assign(Object.assign({}, config_1.default.config()), { sentry: {
11
+ dsn: process.env.APP_SENTRY_DSN,
12
+ environment: process.env.APP_ENVIRONMENT,
13
+ exposeSentryErrorResponse: (0, BooleanField_1.normalizeBoolean)(process.env.APP_ENVIRONMENT === 'dev' || process.env.SENTRY_EXPOSE_ERROR_RESPONSE),
14
+ } })), module: (config) => (Object.assign(Object.assign({}, config_1.default.module(config)), { providers: [
10
15
  {
11
16
  provide: core_1.APP_FILTER,
12
17
  useClass: ValidationExceptionFilter_1.ValidationExceptionFilter,
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/infrastructure/applications/rest/config.ts"],"names":[],"mappings":";;AAAA,uCAAwC;AACxC,2CAAwC;AAExC,+FAA0F;AAC1F,sEAAiE;AACjE,gEAA2D;AAC3D,uFAAkF;AAElF,kDACO,gBAAU,KACb,MAAM,EAAE,CAAC,MAA4B,EAAE,EAAE,CAAC,iCACnC,gBAAU,CAAC,MAAM,CAAC,MAAM,CAAC,KAC5B,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,iBAAU;gBACnB,QAAQ,EAAE,qDAAyB;aACtC;YACD;gBACI,OAAO,EAAE,iBAAU;gBACnB,QAAQ,EAAE,iEAA+B;aAC5C;YACD,MAAM,CAAC,eAAe,IAAI,iCAAe;SAC5C,CAAC,MAAM,CAAC,OAAO,CAAC,EACjB,WAAW,EAAE;YACT,MAAM,CAAC,eAAe,IAAI,uCAAkB;SAC/C,CAAC,MAAM,CAAC,OAAO,CAAC,IACnB,IACJ"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/infrastructure/applications/rest/config.ts"],"names":[],"mappings":";;AAAA,uCAAwC;AACxC,2CAAwC;AAExC,+FAA0F;AAC1F,sEAAiE;AACjE,gEAA2D;AAC3D,uFAAkF;AAClF,uEAAsE;AAEtE,kDACO,gBAAU,KACb,MAAM,EAAE,GAAG,EAAE,CAAC,iCACP,gBAAU,CAAC,MAAM,EAAE,KACtB,MAAM,EAAE;YACJ,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;YAC/B,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;YACxC,yBAAyB,EAAE,IAAA,+BAAgB,EAAC,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC;SACjI,IACH,EACF,MAAM,EAAE,CAAC,MAA4B,EAAE,EAAE,CAAC,iCACnC,gBAAU,CAAC,MAAM,CAAC,MAAM,CAAC,KAC5B,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,iBAAU;gBACnB,QAAQ,EAAE,qDAAyB;aACtC;YACD;gBACI,OAAO,EAAE,iBAAU;gBACnB,QAAQ,EAAE,iEAA+B;aAC5C;YACD,MAAM,CAAC,eAAe,IAAI,iCAAe;SAC5C,CAAC,MAAM,CAAC,OAAO,CAAC,EACjB,WAAW,EAAE;YACT,MAAM,CAAC,eAAe,IAAI,uCAAkB;SAC/C,CAAC,MAAM,CAAC,OAAO,CAAC,IACnB,IACJ"}
@@ -0,0 +1 @@
1
+ export declare const DEFAULT_DECIMAL_SCALE = 2;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_DECIMAL_SCALE = void 0;
4
+ exports.DEFAULT_DECIMAL_SCALE = 2;
5
+ //# sourceMappingURL=consts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consts.js","sourceRoot":"","sources":["../../../src/infrastructure/base/consts.ts"],"names":[],"mappings":";;;AAAa,QAAA,qBAAqB,GAAG,CAAC,CAAC"}
@@ -7,4 +7,5 @@ export declare class MigrateCommand {
7
7
  show(): Promise<void>;
8
8
  dbml2code(path: string): Promise<void>;
9
9
  generate(): Promise<void>;
10
+ generatePermissions(permissionTable: string, permissionColumn: string, permissionModule: string): Promise<void>;
10
11
  }
@@ -52,6 +52,13 @@ 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
+ }
55
62
  };
56
63
  __decorate([
57
64
  (0, nestjs_command_1.Command)({
@@ -110,6 +117,33 @@ __decorate([
110
117
  __metadata("design:paramtypes", []),
111
118
  __metadata("design:returntype", Promise)
112
119
  ], 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);
113
147
  MigrateCommand = __decorate([
114
148
  (0, common_1.Injectable)(),
115
149
  __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":"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"}
1
+ {"version":3,"file":"MigrateCommand.js","sourceRoot":"","sources":["../../../src/infrastructure/commands/MigrateCommand.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,7 @@
1
- import { Connection } from '@steroidsjs/typeorm';
1
+ import { Connection, DataSource } from '@steroidsjs/typeorm';
2
+ export declare const generateMigrationsForPermissions: (dataSource: DataSource, permissionOptions?: {
3
+ table: string;
4
+ column: string;
5
+ module: string;
6
+ }) => Promise<void>;
2
7
  export declare const generate: (connection: Connection) => Promise<void>;
@@ -1,14 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generate = void 0;
3
+ exports.generate = exports.generateMigrationsForPermissions = 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");
7
7
  const CommandUtils_1 = require("@steroidsjs/typeorm/commands/CommandUtils");
8
8
  const formatter_1 = require("@sqltools/formatter");
9
- const CustomRdbmsSchemaBuilder_1 = require("./CustomRdbmsSchemaBuilder");
10
9
  const glob = require("glob");
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';
12
14
  const queryParams = (parameters) => {
13
15
  if (!parameters || !parameters.length) {
14
16
  return '';
@@ -43,7 +45,44 @@ ${downSqls.join(`
43
45
  }
44
46
  `;
45
47
  };
48
+ const generateMigrationsForPermissions = async (dataSource, permissionOptions = {
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;
46
80
  const generate = async (connection) => {
81
+ const hasPendingMigrations = await connection.showMigrations();
82
+ if (hasPendingMigrations) {
83
+ console.error('[ERROR!] Unapplied migrations detected. Database schema is out of sync.');
84
+ return;
85
+ }
47
86
  // Get mapping model name to table name
48
87
  const junctionTablesMap = {};
49
88
  const classesToTablesMap = connection.entityMetadatas.reduce((obj, entityMeta) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/generate/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/generate/index.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
+ import { ApiPropertyOptions } from '@nestjs/swagger';
1
2
  import { IBaseFieldOptions, IRelationData } from './BaseField';
2
3
  import { IComputableCallback } from '../Computable';
3
4
  export interface IComputableFieldOptions extends IBaseFieldOptions {
4
5
  unique?: boolean;
5
6
  requiredRelations?: Array<IRelationData | string>;
6
7
  callback?: IComputableCallback;
8
+ swaggerType?: ApiPropertyOptions['type'];
7
9
  }
8
10
  export declare function ComputableField(options: IComputableFieldOptions): <TFunction extends Function, Y>(target: object | TFunction, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
@@ -10,6 +10,7 @@ function ComputableField(options) {
10
10
  decoratorName: 'ComputableField',
11
11
  appType: 'computable',
12
12
  jsType: options.jsType,
13
+ swaggerType: options.swaggerType,
13
14
  }),
14
15
  (0, Computable_1.Computable)(options.callback),
15
16
  ].filter(Boolean));
@@ -1 +1 @@
1
- {"version":3,"file":"ComputableField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/ComputableField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,2CAAwE;AACxE,8CAA8D;AAQ9D,SAAgB,eAAe,CAAC,OAAgC;IAC5D,OAAO,IAAA,wBAAe,EAClB,GAAG;QACC,IAAA,qBAAS,EAAC,OAAO,EAAE;YACf,aAAa,EAAE,iBAAiB;YAChC,OAAO,EAAE,YAAY;YACrB,MAAM,EAAE,OAAO,CAAC,MAAM;SACzB,CAAC;QACF,IAAA,uBAAU,EAAC,OAAO,CAAC,QAAQ,CAAC;KAC/B,CAAC,MAAM,CAAC,OAAO,CAAC,CACpB,CAAC;AACN,CAAC;AAXD,0CAWC"}
1
+ {"version":3,"file":"ComputableField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/ComputableField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAG/C,2CAAwE;AACxE,8CAA8D;AAW9D,SAAgB,eAAe,CAAC,OAAgC;IAC5D,OAAO,IAAA,wBAAe,EAClB,GAAG;QACC,IAAA,qBAAS,EAAC,OAAO,EAAE;YACf,aAAa,EAAE,iBAAiB;YAChC,OAAO,EAAE,YAAY;YACrB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,WAAW,EAAE,OAAO,CAAC,WAAyB;SACjD,CAAC;QACF,IAAA,uBAAU,EAAC,OAAO,CAAC,QAAQ,CAAC;KAC/B,CAAC,MAAM,CAAC,OAAO,CAAC,CACpB,CAAC;AACN,CAAC;AAZD,0CAYC"}
@@ -4,6 +4,7 @@ exports.DecimalField = exports.MAX_STRING_AS_NUMBER = exports.MIN_STRING_AS_NUMB
4
4
  const common_1 = require("@nestjs/common");
5
5
  const class_validator_1 = require("class-validator");
6
6
  const BaseField_1 = require("./BaseField");
7
+ const consts_1 = require("../../base/consts");
7
8
  exports.MIN_STRING_AS_NUMBER = 'minStringAsNumber';
8
9
  exports.MAX_STRING_AS_NUMBER = 'maxStringAsNumber';
9
10
  function buildValidate(constraint, validateFunction, validationOptions) {
@@ -28,6 +29,7 @@ function StringMax(maxValue, validationOptions) {
28
29
  return buildValidate(maxValue, stringMax, validationOptions);
29
30
  }
30
31
  function DecimalField(options = {}) {
32
+ var _a;
31
33
  return (0, common_1.applyDecorators)(...[
32
34
  (0, BaseField_1.BaseField)(options, {
33
35
  decoratorName: 'DecimalField',
@@ -36,7 +38,7 @@ function DecimalField(options = {}) {
36
38
  }),
37
39
  options.nullable && (0, class_validator_1.ValidateIf)((object, value) => value !== null && typeof value !== 'undefined'),
38
40
  (0, class_validator_1.IsDecimal)({
39
- decimal_digits: String(options.scale || 2),
41
+ decimal_digits: '0,' + ((_a = options.scale) !== null && _a !== void 0 ? _a : consts_1.DEFAULT_DECIMAL_SCALE),
40
42
  }, {
41
43
  message: options.isDecimalConstraintMessage || 'Должно быть числом',
42
44
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"DecimalField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/DecimalField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,qDAAqF;AACrF,2CAAyD;AAU5C,QAAA,oBAAoB,GAAG,mBAAmB,CAAC;AAE3C,QAAA,oBAAoB,GAAG,mBAAmB,CAAC;AAExD,SAAS,aAAa,CAClB,UAAkB,EAClB,gBAA6D,EAC7D,iBAAqC;IAErC,OAAO,IAAA,4BAAU,EACb;QACI,IAAI,EAAE,4BAAoB;QAC1B,WAAW,EAAE,CAAC,UAAU,CAAC;QACzB,SAAS,EAAE;YACP,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,EAAW,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAC,CAAC,CAAC,CAAC;SACpF;KACJ,EACD,iBAAiB,CACpB,CAAC;AACN,CAAC;AAED,SAAS,SAAS,CAAC,GAAY,EAAE,GAAW;IACxC,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;AACpF,CAAC;AAED,SAAS,SAAS,CAAC,QAAgB,EAAE,iBAAqC;IACtE,OAAO,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,SAAS,CAAC,GAAY,EAAE,GAAW;IACxC,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;AACpF,CAAC;AAED,SAAS,SAAS,CAAC,QAAgB,EAAE,iBAAqC;IACtE,OAAO,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;AACjE,CAAC;AAED,SAAgB,YAAY,CAAC,UAAgC,EAAE;IAC3D,OAAO,IAAA,wBAAe,EAAC,GAAG;QACtB,IAAA,qBAAS,EAAC,OAAO,EAAE;YACf,aAAa,EAAE,cAAc;YAC7B,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;SACnB,CAAC;QACF,OAAO,CAAC,QAAQ,IAAI,IAAA,4BAAU,EAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,WAAW,CAAC;QACjG,IAAA,2BAAS,EAAC;YACN,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC;SAC7C,EAAE;YACC,OAAO,EAAE,OAAO,CAAC,0BAA0B,IAAI,oBAAoB;SACtE,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;YACtD,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,OAAO,EAAE,OAAO,CAAC,2BAA2B,IAAI,yBAAyB,OAAO,CAAC,GAAG,EAAE;SACzF,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;YACtD,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,OAAO,EAAE,OAAO,CAAC,2BAA2B,IAAI,yBAAyB,OAAO,CAAC,GAAG,EAAE;SACzF,CAAC;KACL,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AACvB,CAAC;AAtBD,oCAsBC"}
1
+ {"version":3,"file":"DecimalField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/DecimalField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,qDAAqF;AACrF,2CAAyD;AACzD,8CAAwD;AAU3C,QAAA,oBAAoB,GAAG,mBAAmB,CAAC;AAE3C,QAAA,oBAAoB,GAAG,mBAAmB,CAAC;AAExD,SAAS,aAAa,CAClB,UAAkB,EAClB,gBAA6D,EAC7D,iBAAqC;IAErC,OAAO,IAAA,4BAAU,EACb;QACI,IAAI,EAAE,4BAAoB;QAC1B,WAAW,EAAE,CAAC,UAAU,CAAC;QACzB,SAAS,EAAE;YACP,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,EAAW,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAC,CAAC,CAAC,CAAC;SACpF;KACJ,EACD,iBAAiB,CACpB,CAAC;AACN,CAAC;AAED,SAAS,SAAS,CAAC,GAAY,EAAE,GAAW;IACxC,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;AACpF,CAAC;AAED,SAAS,SAAS,CAAC,QAAgB,EAAE,iBAAqC;IACtE,OAAO,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,SAAS,CAAC,GAAY,EAAE,GAAW;IACxC,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;AACpF,CAAC;AAED,SAAS,SAAS,CAAC,QAAgB,EAAE,iBAAqC;IACtE,OAAO,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;AACjE,CAAC;AAED,SAAgB,YAAY,CAAC,UAAgC,EAAE;;IAC3D,OAAO,IAAA,wBAAe,EAAC,GAAG;QACtB,IAAA,qBAAS,EAAC,OAAO,EAAE;YACf,aAAa,EAAE,cAAc;YAC7B,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;SACnB,CAAC;QACF,OAAO,CAAC,QAAQ,IAAI,IAAA,4BAAU,EAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,WAAW,CAAC;QACjG,IAAA,2BAAS,EAAC;YACN,cAAc,EAAE,IAAI,GAAG,CAAC,MAAA,OAAO,CAAC,KAAK,mCAAI,8BAAqB,CAAC;SAClE,EAAE;YACC,OAAO,EAAE,OAAO,CAAC,0BAA0B,IAAI,oBAAoB;SACtE,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;YACtD,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,OAAO,EAAE,OAAO,CAAC,2BAA2B,IAAI,yBAAyB,OAAO,CAAC,GAAG,EAAE;SACzF,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;YACtD,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,OAAO,EAAE,OAAO,CAAC,2BAA2B,IAAI,yBAAyB,OAAO,CAAC,GAAG,EAAE;SACzF,CAAC;KACL,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AACvB,CAAC;AAtBD,oCAsBC"}
@@ -5,6 +5,7 @@ const common_1 = require("@nestjs/common");
5
5
  const class_validator_1 = require("class-validator");
6
6
  const BaseField_1 = require("./BaseField");
7
7
  const Transform_1 = require("../Transform");
8
+ const consts_1 = require("../../base/consts");
8
9
  exports.IS_DECIMAL_NUMBER = 'isDecimalNumber';
9
10
  function isDecimalNumber(value, options) {
10
11
  var _a;
@@ -12,7 +13,7 @@ function isDecimalNumber(value, options) {
12
13
  return false;
13
14
  }
14
15
  return (0, class_validator_1.isDecimal)(value.toString(), {
15
- decimal_digits: '0,' + ((_a = options.scale) !== null && _a !== void 0 ? _a : ''),
16
+ decimal_digits: '0,' + ((_a = options.scale) !== null && _a !== void 0 ? _a : consts_1.DEFAULT_DECIMAL_SCALE),
16
17
  });
17
18
  }
18
19
  exports.isDecimalNumber = isDecimalNumber;
@@ -1 +1 @@
1
- {"version":3,"file":"DecimalNumberField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/DecimalNumberField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,qDAA6G;AAG7G,2CAAsC;AACtC,4CAA+D;AAElD,QAAA,iBAAiB,GAAG,iBAAiB,CAAC;AAEnD,SAAgB,eAAe,CAAC,KAAc,EAAE,OAA8B;;IAC1E,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAAE,OAAO,KAAK,CAAC;KAAE;IAEhD,OAAO,IAAA,2BAAS,EAAC,KAAK,CAAC,QAAQ,EAAE,EAAE;QAC/B,cAAc,EAAE,IAAI,GAAG,CAAC,MAAA,OAAO,CAAC,KAAK,mCAAI,EAAE,CAAC;KAC/C,CAAC,CAAC;AACP,CAAC;AAND,0CAMC;AAED,SAAgB,eAAe,CAC3B,OAA8B,EAC9B,iBAAqC;IAErC,OAAO,IAAA,4BAAU,EACb;QACI,IAAI,EAAE,yBAAiB;QACvB,WAAW,EAAE,CAAC,OAAO,CAAC;QACtB,SAAS,EAAE;YACP,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,EAAW,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAC,CAAC,CAAC,CAAC;YAChF,cAAc,EAAE,IAAA,8BAAY,EACxB,UAAU,CAAC,EAAE,CAAC,UAAU,GAAG,0CAA0C,EACrE,iBAAiB,CACpB;SACJ;KACJ,EACD,iBAAiB,CACpB,CAAC;AACN,CAAC;AAlBD,0CAkBC;AAED,SAAgB,kBAAkB,CAAC,UAAgC,EAAE;IACjE,OAAO,IAAA,wBAAe,EAAC,GAAG;QACtB,IAAA,qBAAS,EAAC,OAAO,EAAE;YACf,aAAa,EAAE,oBAAoB;YACnC,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;SACnB,CAAC;QACF,IAAA,qBAAS,EAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,kCAAsB,CAAC;QAC7E,OAAO,CAAC,QAAQ,IAAI,IAAA,4BAAU,EAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,WAAW,CAAC;QACjG,eAAe,CAAC,OAAO,EAAE;YACrB,OAAO,EAAE,OAAO,CAAC,0BAA0B,IAAI,oBAAoB;SACtE,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAA,qBAAG,EAAC,OAAO,CAAC,GAAG,EAAE;YAChD,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,OAAO,EAAE,OAAO,CAAC,2BAA2B,IAAI,yBAAyB,OAAO,CAAC,GAAG,EAAE;SACzF,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAA,qBAAG,EAAC,OAAO,CAAC,GAAG,EAAE;YAChD,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,OAAO,EAAE,OAAO,CAAC,2BAA2B,IAAI,yBAAyB,OAAO,CAAC,GAAG,EAAE;SACzF,CAAC;KACL,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AACvB,CAAC;AArBD,gDAqBC"}
1
+ {"version":3,"file":"DecimalNumberField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/DecimalNumberField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,qDAA6G;AAG7G,2CAAsC;AACtC,4CAA+D;AAC/D,8CAAwD;AAE3C,QAAA,iBAAiB,GAAG,iBAAiB,CAAC;AAEnD,SAAgB,eAAe,CAAC,KAAc,EAAE,OAA8B;;IAC1E,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAAE,OAAO,KAAK,CAAC;KAAE;IAEhD,OAAO,IAAA,2BAAS,EAAC,KAAK,CAAC,QAAQ,EAAE,EAAE;QAC/B,cAAc,EAAE,IAAI,GAAG,CAAC,MAAA,OAAO,CAAC,KAAK,mCAAI,8BAAqB,CAAC;KAClE,CAAC,CAAC;AACP,CAAC;AAND,0CAMC;AAED,SAAgB,eAAe,CAC3B,OAA8B,EAC9B,iBAAqC;IAErC,OAAO,IAAA,4BAAU,EACb;QACI,IAAI,EAAE,yBAAiB;QACvB,WAAW,EAAE,CAAC,OAAO,CAAC;QACtB,SAAS,EAAE;YACP,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,EAAW,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAC,CAAC,CAAC,CAAC;YAChF,cAAc,EAAE,IAAA,8BAAY,EACxB,UAAU,CAAC,EAAE,CAAC,UAAU,GAAG,0CAA0C,EACrE,iBAAiB,CACpB;SACJ;KACJ,EACD,iBAAiB,CACpB,CAAC;AACN,CAAC;AAlBD,0CAkBC;AAED,SAAgB,kBAAkB,CAAC,UAAgC,EAAE;IACjE,OAAO,IAAA,wBAAe,EAAC,GAAG;QACtB,IAAA,qBAAS,EAAC,OAAO,EAAE;YACf,aAAa,EAAE,oBAAoB;YACnC,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;SACnB,CAAC;QACF,IAAA,qBAAS,EAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,kCAAsB,CAAC;QAC7E,OAAO,CAAC,QAAQ,IAAI,IAAA,4BAAU,EAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,WAAW,CAAC;QACjG,eAAe,CAAC,OAAO,EAAE;YACrB,OAAO,EAAE,OAAO,CAAC,0BAA0B,IAAI,oBAAoB;SACtE,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAA,qBAAG,EAAC,OAAO,CAAC,GAAG,EAAE;YAChD,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,OAAO,EAAE,OAAO,CAAC,2BAA2B,IAAI,yBAAyB,OAAO,CAAC,GAAG,EAAE;SACzF,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAA,qBAAG,EAAC,OAAO,CAAC,GAAG,EAAE;YAChD,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,OAAO,EAAE,OAAO,CAAC,2BAA2B,IAAI,yBAAyB,OAAO,CAAC,GAAG,EAAE;SACzF,CAAC;KACL,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AACvB,CAAC;AArBD,gDAqBC"}
@@ -41,6 +41,7 @@ function EnumField(options = {}) {
41
41
  }),
42
42
  (0, swagger_1.ApiProperty)({
43
43
  enum: getOpenApiEnum(options.enum),
44
+ isArray: options.isArray,
44
45
  }),
45
46
  options.nullable && (0, class_validator_1.ValidateIf)((object, value) => value !== null && typeof value !== 'undefined'),
46
47
  (0, class_validator_1.IsEnum)(getValidatorEnum(options.enum), {
@@ -1 +1 @@
1
- {"version":3,"file":"EnumField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/EnumField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,qDAAmD;AACnD,6CAA4C;AAC5C,2CAAyD;AACzD,4DAAqD;AAWrD,SAAS,cAAc,CAAC,UAA6C;IACjE,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QAC3B,OAAO,UAAU,CAAC;KACrB;IAED,IAAI,OAAO,UAAU,KAAK,UAAU,IAAI,UAAU,CAAC,SAAS,YAAY,kBAAQ,EAAE;QAC9E,OAAQ,UAA4B,CAAC,OAAO,EAAE,CAAC;KAClD;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,gBAAgB,CAAC,UAAmC;IACzD,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QAC3B,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACpC,IAAI,KAAK,CAAC,SAAS,YAAY,kBAAQ,EAAE;gBACrC,GAAG,mCACI,GAAG,GACH,KAAK,CAAC,MAAM,EAAE,CACpB,CAAC;aACL;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBAClC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;aACtB;YACD,OAAO,GAAG,CAAC;QACf,CAAC,EAAE,EAAE,CAAC,CAAC;KACV;IAED,IAAI,OAAO,UAAU,KAAK,UAAU,IAAI,UAAU,CAAC,SAAS,YAAY,kBAAQ,EAAE;QAC9E,OAAO,UAAU,CAAC,MAAM,EAAE,CAAC;KAC9B;IAED,OAAO,UAAU,CAAC;AACtB,CAAC;AAED,SAAgB,SAAS,CAAC,UAA6B,EAAE;IACrD,OAAO,IAAA,wBAAe,EAAC,GAAG;QACtB,IAAA,qBAAS,EAAC,OAAO,EAAE;YACf,aAAa,EAAE,WAAW;YAC1B,OAAO,EAAE,MAAM;YACf,MAAM,EAAE,QAAQ;SACnB,CAAC;QACF,IAAA,qBAAW,EAAC;YACR,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC;SACrC,CAAC;QACF,OAAO,CAAC,QAAQ,IAAI,IAAA,4BAAU,EAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,WAAW,CAAC;QACjG,IAAA,wBAAM,EACF,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,EAC9B;YACI,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,OAAO,EAAE,OAAO,CAAC,uBAAuB,IAAI,2BAA2B;SAC1E,CACJ;KACJ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AACvB,CAAC;AAnBD,8BAmBC"}
1
+ {"version":3,"file":"EnumField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/EnumField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,qDAAmD;AACnD,6CAA4C;AAC5C,2CAAyD;AACzD,4DAAqD;AAWrD,SAAS,cAAc,CAAC,UAA6C;IACjE,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QAC3B,OAAO,UAAU,CAAC;KACrB;IAED,IAAI,OAAO,UAAU,KAAK,UAAU,IAAI,UAAU,CAAC,SAAS,YAAY,kBAAQ,EAAE;QAC9E,OAAQ,UAA4B,CAAC,OAAO,EAAE,CAAC;KAClD;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,gBAAgB,CAAC,UAAmC;IACzD,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QAC3B,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACpC,IAAI,KAAK,CAAC,SAAS,YAAY,kBAAQ,EAAE;gBACrC,GAAG,mCACI,GAAG,GACH,KAAK,CAAC,MAAM,EAAE,CACpB,CAAC;aACL;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBAClC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;aACtB;YACD,OAAO,GAAG,CAAC;QACf,CAAC,EAAE,EAAE,CAAC,CAAC;KACV;IAED,IAAI,OAAO,UAAU,KAAK,UAAU,IAAI,UAAU,CAAC,SAAS,YAAY,kBAAQ,EAAE;QAC9E,OAAO,UAAU,CAAC,MAAM,EAAE,CAAC;KAC9B;IAED,OAAO,UAAU,CAAC;AACtB,CAAC;AAED,SAAgB,SAAS,CAAC,UAA6B,EAAE;IACrD,OAAO,IAAA,wBAAe,EAAC,GAAG;QACtB,IAAA,qBAAS,EAAC,OAAO,EAAE;YACf,aAAa,EAAE,WAAW;YAC1B,OAAO,EAAE,MAAM;YACf,MAAM,EAAE,QAAQ;SACnB,CAAC;QACF,IAAA,qBAAW,EAAC;YACR,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC;YAClC,OAAO,EAAE,OAAO,CAAC,OAAO;SAC3B,CAAC;QACF,OAAO,CAAC,QAAQ,IAAI,IAAA,4BAAU,EAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,WAAW,CAAC;QACjG,IAAA,wBAAM,EACF,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,EAC9B;YACI,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,OAAO,EAAE,OAAO,CAAC,uBAAuB,IAAI,2BAA2B;SAC1E,CACJ;KACJ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AACvB,CAAC;AApBD,8BAoBC"}
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const typeorm_1 = require("@steroidsjs/typeorm");
4
+ const consts_1 = require("../../../../base/consts");
4
5
  exports.default = (options) => [
5
6
  (0, typeorm_1.Column)({
6
7
  type: 'decimal',
7
8
  default: options.defaultValue,
8
9
  nullable: options.nullable,
9
10
  precision: options.precision || 10,
10
- scale: options.scale || 2,
11
+ scale: options.scale || consts_1.DEFAULT_DECIMAL_SCALE,
11
12
  array: options.isArray,
12
13
  }),
13
14
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/infrastructure/decorators/typeorm/fields/TypeOrmDecimalField/index.ts"],"names":[],"mappings":";;AAAA,iDAA2C;AAG3C,kBAAe,CAAC,OAA6B,EAAE,EAAE,CAAC;IAC9C,IAAA,gBAAM,EAAC;QACH,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,OAAO,CAAC,YAAY;QAC7B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,EAAE;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QACzB,KAAK,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC;CACL,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/infrastructure/decorators/typeorm/fields/TypeOrmDecimalField/index.ts"],"names":[],"mappings":";;AAAA,iDAA2C;AAE3C,oDAA8D;AAE9D,kBAAe,CAAC,OAA6B,EAAE,EAAE,CAAC;IAC9C,IAAA,gBAAM,EAAC;QACH,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,OAAO,CAAC,YAAY;QAC7B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,EAAE;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,8BAAqB;QAC7C,KAAK,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC;CACL,CAAC"}
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const typeorm_1 = require("@steroidsjs/typeorm");
4
+ const consts_1 = require("../../../../base/consts");
4
5
  exports.default = (options) => [
5
6
  (0, typeorm_1.Column)({
6
7
  type: 'decimal',
7
8
  default: options.defaultValue,
8
9
  nullable: options.nullable,
9
10
  precision: options.precision || 10,
10
- scale: options.scale || 2,
11
+ scale: options.scale || consts_1.DEFAULT_DECIMAL_SCALE,
11
12
  array: options.isArray,
12
13
  }),
13
14
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/infrastructure/decorators/typeorm/fields/TypeOrmDecimalNumberField/index.ts"],"names":[],"mappings":";;AAAA,iDAA2C;AAG3C,kBAAe,CAAC,OAA6B,EAAE,EAAE,CAAC;IAC9C,IAAA,gBAAM,EAAC;QACH,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,OAAO,CAAC,YAAY;QAC7B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,EAAE;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;QACzB,KAAK,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC;CACL,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/infrastructure/decorators/typeorm/fields/TypeOrmDecimalNumberField/index.ts"],"names":[],"mappings":";;AAAA,iDAA2C;AAE3C,oDAA8D;AAE9D,kBAAe,CAAC,OAA6B,EAAE,EAAE,CAAC;IAC9C,IAAA,gBAAM,EAAC;QACH,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,OAAO,CAAC,YAAY;QAC7B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,EAAE;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,8BAAqB;QAC7C,KAAK,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC;CACL,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { DataSource } from '@steroidsjs/typeorm';
2
+ export declare const getNewPermissions: (dataSource: DataSource, tableName?: string, columnName?: string) => Promise<any[]>;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getNewPermissions = void 0;
4
+ const PermissionsFactory_1 = require("../helpers/PermissionsFactory");
5
+ const getNewPermissions = async (dataSource, tableName = 'auth_permission', columnName = 'name') => {
6
+ const allPermissions = PermissionsFactory_1.PermissionsFactory.getAllPermissionsKeys();
7
+ if (allPermissions.length === 0) {
8
+ return allPermissions;
9
+ }
10
+ const existingPermissions = new Set();
11
+ const existingPermissionsRows = await dataSource.query(`SELECT ${columnName} FROM ${tableName}`);
12
+ for (const row of existingPermissionsRows) {
13
+ existingPermissions.add(row[columnName]);
14
+ }
15
+ return allPermissions.filter(permission => !existingPermissions.has(permission));
16
+ };
17
+ exports.getNewPermissions = getNewPermissions;
18
+ //# sourceMappingURL=getNewPermissions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getNewPermissions.js","sourceRoot":"","sources":["../../../src/infrastructure/utils/getNewPermissions.ts"],"names":[],"mappings":";;;AACA,sEAAiE;AAE1D,MAAM,iBAAiB,GAAG,KAAK,EAAE,UAAsB,EAAE,SAAS,GAAG,iBAAiB,EAAE,UAAU,GAAG,MAAM,EAAE,EAAE;IAClH,MAAM,cAAc,GAAG,uCAAkB,CAAC,qBAAqB,EAAE,CAAC;IAElE,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;QAC7B,OAAO,cAAc,CAAC;KACzB;IAED,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9C,MAAM,uBAAuB,GAAwC,MAAM,UAAU,CAAC,KAAK,CACvF,UAAU,UAAU,SAAS,SAAS,EAAE,CAC3C,CAAC;IACF,KAAK,MAAM,GAAG,IAAI,uBAAuB,EAAE;QACvC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;KAC5C;IAED,OAAO,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;AACrF,CAAC,CAAC;AAhBW,QAAA,iBAAiB,qBAgB5B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steroidsjs/nest",
3
- "version": "4.0.1",
3
+ "version": "4.1.0",
4
4
  "scripts": {
5
5
  "script": "nps",
6
6
  "watch": "nps watch",