@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.
- package/infrastructure/applications/IAppModuleConfig.d.ts +4 -0
- package/infrastructure/applications/rest/RestApplication.js +1 -1
- package/infrastructure/applications/rest/RestApplication.js.map +1 -1
- package/infrastructure/applications/rest/SentryExceptionFilter.d.ts +2 -0
- package/infrastructure/applications/rest/SentryExceptionFilter.js +9 -2
- package/infrastructure/applications/rest/SentryExceptionFilter.js.map +1 -1
- package/infrastructure/applications/rest/config.d.ts +18 -1
- package/infrastructure/applications/rest/config.js +6 -1
- package/infrastructure/applications/rest/config.js.map +1 -1
- package/infrastructure/base/consts.d.ts +1 -0
- package/infrastructure/base/consts.js +5 -0
- package/infrastructure/base/consts.js.map +1 -0
- package/infrastructure/commands/MigrateCommand.d.ts +1 -0
- package/infrastructure/commands/MigrateCommand.js +34 -0
- package/infrastructure/commands/MigrateCommand.js.map +1 -1
- package/infrastructure/commands/generate/index.d.ts +6 -1
- package/infrastructure/commands/generate/index.js +41 -2
- package/infrastructure/commands/generate/index.js.map +1 -1
- package/infrastructure/decorators/fields/ComputableField.d.ts +2 -0
- package/infrastructure/decorators/fields/ComputableField.js +1 -0
- package/infrastructure/decorators/fields/ComputableField.js.map +1 -1
- package/infrastructure/decorators/fields/DecimalField.js +3 -1
- package/infrastructure/decorators/fields/DecimalField.js.map +1 -1
- package/infrastructure/decorators/fields/DecimalNumberField.js +2 -1
- package/infrastructure/decorators/fields/DecimalNumberField.js.map +1 -1
- package/infrastructure/decorators/fields/EnumField.js +1 -0
- package/infrastructure/decorators/fields/EnumField.js.map +1 -1
- package/infrastructure/decorators/typeorm/fields/TypeOrmDecimalField/index.js +2 -1
- package/infrastructure/decorators/typeorm/fields/TypeOrmDecimalField/index.js.map +1 -1
- package/infrastructure/decorators/typeorm/fields/TypeOrmDecimalNumberField/index.js +2 -1
- package/infrastructure/decorators/typeorm/fields/TypeOrmDecimalNumberField/index.js.map +1 -1
- package/infrastructure/utils/getNewPermissions.d.ts +2 -0
- package/infrastructure/utils/getNewPermissions.js +18 -0
- package/infrastructure/utils/getNewPermissions.js.map +1 -0
- package/package.json +1 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -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":"
|
|
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
|
-
|
|
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;
|
|
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 @@
|
|
|
1
|
+
{"version":3,"file":"consts.js","sourceRoot":"","sources":["../../../src/infrastructure/base/consts.ts"],"names":[],"mappings":";;;AAAa,QAAA,qBAAqB,GAAG,CAAC,CAAC"}
|
|
@@ -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":";;;;;;;;;;;;;;;AAAA,
|
|
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":";;;AAAA,iFAA2E;AAC3E,+BAAmC;
|
|
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;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComputableField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/ComputableField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;
|
|
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:
|
|
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;
|
|
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;
|
|
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;
|
|
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 ||
|
|
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;
|
|
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 ||
|
|
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;
|
|
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,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"}
|