@node-c/persistance-rdb 1.0.0-alpha2 → 1.0.0-alpha21
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/README.md +1 -1
- package/dist/common/definitions/common.constants.d.ts +4 -0
- package/dist/common/definitions/common.constants.js +5 -1
- package/dist/common/definitions/common.constants.js.map +1 -1
- package/dist/{entityService → entity}/index.d.ts +2 -1
- package/dist/{entityService → entity}/index.js +2 -1
- package/dist/entity/index.js.map +1 -0
- package/dist/entity/rdb.entity.schema.d.ts +10 -0
- package/dist/{module/rdb.module.definitions.js → entity/rdb.entity.schema.js} +1 -1
- package/dist/entity/rdb.entity.schema.js.map +1 -0
- package/dist/entity/rdb.entity.service.d.ts +40 -0
- package/dist/entity/rdb.entity.service.definitions.d.ts +28 -0
- package/dist/{entityService → entity}/rdb.entity.service.definitions.js +1 -1
- package/dist/entity/rdb.entity.service.definitions.js.map +1 -0
- package/dist/{entityService → entity}/rdb.entity.service.js +182 -73
- package/dist/entity/rdb.entity.service.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/ormQueryBuilder/index.d.ts +1 -0
- package/dist/{module → ormQueryBuilder}/index.js +1 -2
- package/dist/ormQueryBuilder/index.js.map +1 -0
- package/dist/ormQueryBuilder/rdb.ormQueryBuilder.d.ts +38 -0
- package/dist/ormQueryBuilder/rdb.ormQueryBuilder.js +16 -0
- package/dist/ormQueryBuilder/rdb.ormQueryBuilder.js.map +1 -0
- package/dist/repository/index.d.ts +1 -2
- package/dist/repository/index.js +1 -2
- package/dist/repository/index.js.map +1 -1
- package/dist/repository/rdb.repository.d.ts +22 -0
- package/dist/repository/rdb.repository.js +10 -0
- package/dist/repository/rdb.repository.js.map +1 -0
- package/dist/sqlQueryBuilder/index.d.ts +3 -3
- package/dist/sqlQueryBuilder/index.js +3 -3
- package/dist/sqlQueryBuilder/index.js.map +1 -1
- package/dist/sqlQueryBuilder/{sqlQueryBuilder.definitions.d.ts → rdb.sqlQueryBuilder.definitions.d.ts} +2 -6
- package/dist/{repository/rdb.repository.definitions.js → sqlQueryBuilder/rdb.sqlQueryBuilder.definitions.js} +1 -1
- package/dist/sqlQueryBuilder/rdb.sqlQueryBuilder.definitions.js.map +1 -0
- package/dist/sqlQueryBuilder/{sqlQueryBuilder.module.d.ts → rdb.sqlQueryBuilder.module.d.ts} +1 -1
- package/dist/sqlQueryBuilder/{sqlQueryBuilder.module.js → rdb.sqlQueryBuilder.module.js} +11 -6
- package/dist/sqlQueryBuilder/rdb.sqlQueryBuilder.module.js.map +1 -0
- package/dist/sqlQueryBuilder/{sqlQueryBuilder.service.d.ts → rdb.sqlQueryBuilder.service.d.ts} +9 -9
- package/dist/sqlQueryBuilder/{sqlQueryBuilder.service.js → rdb.sqlQueryBuilder.service.js} +30 -21
- package/dist/sqlQueryBuilder/rdb.sqlQueryBuilder.service.js.map +1 -0
- package/package.json +6 -4
- package/dist/entityService/index.js.map +0 -1
- package/dist/entityService/rdb.entity.service.d.ts +0 -34
- package/dist/entityService/rdb.entity.service.definitions.d.ts +0 -21
- package/dist/entityService/rdb.entity.service.definitions.js.map +0 -1
- package/dist/entityService/rdb.entity.service.js.map +0 -1
- package/dist/module/index.d.ts +0 -2
- package/dist/module/index.js.map +0 -1
- package/dist/module/rdb.module.d.ts +0 -5
- package/dist/module/rdb.module.definitions.d.ts +0 -15
- package/dist/module/rdb.module.definitions.js.map +0 -1
- package/dist/module/rdb.module.js +0 -45
- package/dist/module/rdb.module.js.map +0 -1
- package/dist/repository/rdb.repository.definitions.d.ts +0 -5
- package/dist/repository/rdb.repository.definitions.js.map +0 -1
- package/dist/repository/rdb.repository.module.d.ts +0 -6
- package/dist/repository/rdb.repository.module.js +0 -38
- package/dist/repository/rdb.repository.module.js.map +0 -1
- package/dist/sqlQueryBuilder/sqlQueryBuilder.definitions.js +0 -3
- package/dist/sqlQueryBuilder/sqlQueryBuilder.definitions.js.map +0 -1
- package/dist/sqlQueryBuilder/sqlQueryBuilder.module.js.map +0 -1
- package/dist/sqlQueryBuilder/sqlQueryBuilder.service.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# Node-C / Persistance: RDB
|
|
2
|
-
This is Node-C's package providing the functionality for relational databases. Currently, PostgreSQL and MySQL are supported.
|
|
2
|
+
This is Node-C's package providing the functionality for relational databases that TypeORMDB can work with. Currently, PostgreSQL and MySQL are supported.
|
|
3
3
|
|
|
4
4
|
The documentation can be found on the [Node-C Github repo homepage](https://github.com/RazorDude/node-c).
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
export declare enum Constants {
|
|
2
|
+
RDB_ENTITY_REPOSITORY = "RDB_ENTITY_REPOSITORY",
|
|
3
|
+
RDB_REPOSITORY_CONNECTION_NAME = "RDB_REPOSITORY_CONNECTION_NAME",
|
|
4
|
+
RDB_REPOSITORY_DATASOURCE = "RDB_REPOSITORY_DATASOURCE",
|
|
5
|
+
RDB_REPOSITORY_ENTITY_CLASS = "RDB_REPOSITORY_ENTITY_CLASS",
|
|
2
6
|
SQL_BUILDER_DB_CONFIG_PATH = "SQL_BUILDER_DB_CONFIG_PATH",
|
|
3
7
|
SQL_BUILDER_SERVICE_TOKEN_SUFFIX = "_SQL_BUILDER_SERVICE"
|
|
4
8
|
}
|
|
@@ -3,7 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Constants = void 0;
|
|
4
4
|
var Constants;
|
|
5
5
|
(function (Constants) {
|
|
6
|
+
Constants["RDB_ENTITY_REPOSITORY"] = "RDB_ENTITY_REPOSITORY";
|
|
7
|
+
Constants["RDB_REPOSITORY_CONNECTION_NAME"] = "RDB_REPOSITORY_CONNECTION_NAME";
|
|
8
|
+
Constants["RDB_REPOSITORY_DATASOURCE"] = "RDB_REPOSITORY_DATASOURCE";
|
|
9
|
+
Constants["RDB_REPOSITORY_ENTITY_CLASS"] = "RDB_REPOSITORY_ENTITY_CLASS";
|
|
6
10
|
Constants["SQL_BUILDER_DB_CONFIG_PATH"] = "SQL_BUILDER_DB_CONFIG_PATH";
|
|
7
11
|
Constants["SQL_BUILDER_SERVICE_TOKEN_SUFFIX"] = "_SQL_BUILDER_SERVICE";
|
|
8
|
-
})(Constants
|
|
12
|
+
})(Constants || (exports.Constants = Constants = {}));
|
|
9
13
|
//# sourceMappingURL=common.constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.constants.js","sourceRoot":"","sources":["../../../src/common/definitions/common.constants.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"common.constants.js","sourceRoot":"","sources":["../../../src/common/definitions/common.constants.ts"],"names":[],"mappings":";;;AAAA,IAAY,SAaX;AAbD,WAAY,SAAS;IAEnB,4DAA+C,CAAA;IAE/C,8EAAiE,CAAA;IAEjE,oEAAuD,CAAA;IAEvD,wEAA2D,CAAA;IAE3D,sEAAyD,CAAA;IAEzD,sEAAyD,CAAA;AAC3D,CAAC,EAbW,SAAS,yBAAT,SAAS,QAapB"}
|
|
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./rdb.entity.
|
|
17
|
+
__exportStar(require("./rdb.entity.schema"), exports);
|
|
18
18
|
__exportStar(require("./rdb.entity.service"), exports);
|
|
19
|
+
__exportStar(require("./rdb.entity.service.definitions"), exports);
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/entity/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,uDAAqC;AACrC,mEAAiD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rdb.entity.schema.js","sourceRoot":"","sources":["../../src/entity/rdb.entity.schema.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { ConfigProviderService, GenericObject, PersistanceDeleteResult, PersistanceEntityService, PersistanceFindResults, PersistanceNumberItem, PersistanceUpdateResult } from '@node-c/core';
|
|
2
|
+
import { RDBEntitySchema } from './rdb.entity.schema';
|
|
3
|
+
import { BulkCreateOptions, BulkCreatePrivateOptions, CountOptions, CountPrivateOptions, CreateOptions, CreatePrivateOptions, DeleteOptions, DeletePrivateOptions, FindOneOptions, FindOnePrivateOptions, FindOptions, FindPrivateOptions, UpdateOptions, UpdatePrivateOptions } from './rdb.entity.service.definitions';
|
|
4
|
+
import { RDBEntityManager, RDBRepository } from '../repository';
|
|
5
|
+
import { ParsedFilter, SQLQueryBuilderService } from '../sqlQueryBuilder';
|
|
6
|
+
export declare class RDBEntityService<Entity extends GenericObject<unknown>> extends PersistanceEntityService<Entity> {
|
|
7
|
+
protected configProvider: ConfigProviderService;
|
|
8
|
+
protected qb: SQLQueryBuilderService;
|
|
9
|
+
protected repository: RDBRepository<Entity>;
|
|
10
|
+
protected schema: RDBEntitySchema;
|
|
11
|
+
protected columNames: string[];
|
|
12
|
+
protected deletedColumnName?: string;
|
|
13
|
+
protected primaryKeys: string[];
|
|
14
|
+
constructor(configProvider: ConfigProviderService, qb: SQLQueryBuilderService, repository: RDBRepository<Entity>, schema: RDBEntitySchema);
|
|
15
|
+
protected buildPrimaryKeyWhereClause(data: Entity[]): {
|
|
16
|
+
field: string;
|
|
17
|
+
value: ParsedFilter;
|
|
18
|
+
};
|
|
19
|
+
bulkCreate(data: Partial<Entity>[], options?: BulkCreateOptions, privateOptions?: BulkCreatePrivateOptions): Promise<Entity[]>;
|
|
20
|
+
count(options: CountOptions, privateOptions?: CountPrivateOptions): Promise<number | undefined>;
|
|
21
|
+
create(data: Partial<Entity>, options?: CreateOptions, privateOptions?: CreatePrivateOptions): Promise<Entity>;
|
|
22
|
+
delete(options: DeleteOptions, privateOptions?: DeletePrivateOptions): Promise<PersistanceDeleteResult<Entity>>;
|
|
23
|
+
find(options: FindOptions, privateOptions?: FindPrivateOptions): Promise<PersistanceFindResults<Entity>>;
|
|
24
|
+
findOne(options: FindOneOptions, privateOptions?: FindOnePrivateOptions): Promise<Entity | null>;
|
|
25
|
+
getEntityTarget(): unknown;
|
|
26
|
+
protected getRepository(transactionManager?: RDBEntityManager): RDBRepository<Entity>;
|
|
27
|
+
protected processManyToMany(data: {
|
|
28
|
+
counterpartColumn: string;
|
|
29
|
+
currentEntityColumn: string;
|
|
30
|
+
id: number;
|
|
31
|
+
items: PersistanceNumberItem[];
|
|
32
|
+
tableName: string;
|
|
33
|
+
}, options?: {
|
|
34
|
+
transactionManager?: RDBEntityManager;
|
|
35
|
+
}): Promise<void>;
|
|
36
|
+
protected save<Data = unknown, ReturnData = unknown>(data: Data, transactionManager?: RDBEntityManager, options?: {
|
|
37
|
+
processObjectAllowedFieldsEnabled?: boolean;
|
|
38
|
+
}): Promise<ReturnData>;
|
|
39
|
+
update(data: Entity, options: UpdateOptions, privateOptions?: UpdatePrivateOptions): Promise<PersistanceUpdateResult<Entity>>;
|
|
40
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { PersistanceBulkCreatePrivateOptions, PersistanceCountOptions, PersistanceCountPrivateOptions, PersistanceCreatePrivateOptions, PersistanceDeleteOptions, PersistanceDeletePrivateOptions, PersistanceFindOneOptions, PersistanceFindOnePrivateOptions, PersistanceFindOptions, PersistanceFindPrivateOptions, PersistanceUpdateOptions, PersistanceUpdatePrivateOptions } from '@node-c/core';
|
|
2
|
+
import { RDBEntityManager } from '../repository';
|
|
3
|
+
export interface BaseOptions {
|
|
4
|
+
forceTransaction?: boolean;
|
|
5
|
+
transactionManager?: RDBEntityManager;
|
|
6
|
+
}
|
|
7
|
+
export type BulkCreateOptions = BaseOptions;
|
|
8
|
+
export type BulkCreatePrivateOptions = PersistanceBulkCreatePrivateOptions;
|
|
9
|
+
export interface CountOptions extends BaseOptions, PersistanceCountOptions {
|
|
10
|
+
}
|
|
11
|
+
export type CountPrivateOptions = PersistanceCountPrivateOptions;
|
|
12
|
+
export type CreateOptions = BaseOptions;
|
|
13
|
+
export type CreatePrivateOptions = PersistanceCreatePrivateOptions;
|
|
14
|
+
export interface DeleteOptions extends BaseOptions, PersistanceDeleteOptions {
|
|
15
|
+
}
|
|
16
|
+
export type DeletePrivateOptions = PersistanceDeletePrivateOptions;
|
|
17
|
+
export interface FindOneOptions extends BaseOptions, PersistanceFindOneOptions {
|
|
18
|
+
}
|
|
19
|
+
export type FindOnePrivateOptions = PersistanceFindOnePrivateOptions;
|
|
20
|
+
export interface FindOptions extends BaseOptions, PersistanceFindOptions {
|
|
21
|
+
}
|
|
22
|
+
export type FindPrivateOptions = PersistanceFindPrivateOptions;
|
|
23
|
+
export declare enum PostgresErrorCode {
|
|
24
|
+
UniqueViolation = "23505"
|
|
25
|
+
}
|
|
26
|
+
export interface UpdateOptions extends BaseOptions, PersistanceUpdateOptions {
|
|
27
|
+
}
|
|
28
|
+
export type UpdatePrivateOptions = PersistanceUpdatePrivateOptions;
|
|
@@ -4,5 +4,5 @@ exports.PostgresErrorCode = void 0;
|
|
|
4
4
|
var PostgresErrorCode;
|
|
5
5
|
(function (PostgresErrorCode) {
|
|
6
6
|
PostgresErrorCode["UniqueViolation"] = "23505";
|
|
7
|
-
})(PostgresErrorCode
|
|
7
|
+
})(PostgresErrorCode || (exports.PostgresErrorCode = PostgresErrorCode = {}));
|
|
8
8
|
//# sourceMappingURL=rdb.entity.service.definitions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rdb.entity.service.definitions.js","sourceRoot":"","sources":["../../src/entity/rdb.entity.service.definitions.ts"],"names":[],"mappings":";;;AA8CA,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAE3B,8CAAyB,CAAA;AAC3B,CAAC,EAHW,iBAAiB,iCAAjB,iBAAiB,QAG5B"}
|
|
@@ -13,19 +13,27 @@ exports.RDBEntityService = void 0;
|
|
|
13
13
|
const core_1 = require("@node-c/core");
|
|
14
14
|
const rdb_entity_service_definitions_1 = require("./rdb.entity.service.definitions");
|
|
15
15
|
class RDBEntityService extends core_1.PersistanceEntityService {
|
|
16
|
-
constructor(qb, repository, schema) {
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
constructor(configProvider, qb, repository, schema) {
|
|
17
|
+
super(configProvider, qb.persistanceModuleName);
|
|
18
|
+
this.configProvider = configProvider;
|
|
19
19
|
this.qb = qb;
|
|
20
20
|
this.repository = repository;
|
|
21
21
|
this.schema = schema;
|
|
22
22
|
const { columns } = schema.options;
|
|
23
23
|
const primaryKeys = [];
|
|
24
|
+
let deletedColumnName;
|
|
25
|
+
this.columNames = [];
|
|
24
26
|
for (const columnName in columns) {
|
|
25
|
-
|
|
27
|
+
const { deleteDate, primary } = columns[columnName] || {};
|
|
28
|
+
this.columNames.push(columnName);
|
|
29
|
+
if (primary) {
|
|
26
30
|
primaryKeys.push(columnName);
|
|
27
31
|
}
|
|
32
|
+
if (!deletedColumnName && deleteDate) {
|
|
33
|
+
deletedColumnName = columnName;
|
|
34
|
+
}
|
|
28
35
|
}
|
|
36
|
+
this.deletedColumnName = deletedColumnName;
|
|
29
37
|
this.primaryKeys = primaryKeys;
|
|
30
38
|
}
|
|
31
39
|
buildPrimaryKeyWhereClause(data) {
|
|
@@ -55,91 +63,115 @@ class RDBEntityService extends core_1.PersistanceEntityService {
|
|
|
55
63
|
});
|
|
56
64
|
return { field: core_1.PersistanceSelectOperator.Or, value: { params, query: `(${query.join(' or ')})` } };
|
|
57
65
|
}
|
|
58
|
-
bulkCreate(data, options) {
|
|
66
|
+
bulkCreate(data, options, privateOptions) {
|
|
59
67
|
return __awaiter(this, void 0, void 0, function* () {
|
|
60
|
-
const actualOptions =
|
|
68
|
+
const actualOptions = options || {};
|
|
69
|
+
const actualPrivateOptions = privateOptions || {};
|
|
61
70
|
const { forceTransaction, transactionManager } = actualOptions;
|
|
71
|
+
const { processInputAllowedFieldsEnabled } = actualPrivateOptions;
|
|
62
72
|
if (!transactionManager && forceTransaction) {
|
|
63
73
|
return this.repository.manager.transaction(tm => {
|
|
64
|
-
return this.bulkCreate(data, Object.assign(Object.assign({}, actualOptions), { transactionManager: tm }));
|
|
74
|
+
return this.bulkCreate(data, Object.assign(Object.assign({}, actualOptions), { transactionManager: tm }), actualPrivateOptions);
|
|
65
75
|
});
|
|
66
76
|
}
|
|
67
|
-
return yield this.save(data, transactionManager
|
|
77
|
+
return yield this.save(data instanceof Array ? data : [data], transactionManager, {
|
|
78
|
+
processObjectAllowedFieldsEnabled: processInputAllowedFieldsEnabled
|
|
79
|
+
});
|
|
68
80
|
});
|
|
69
81
|
}
|
|
70
|
-
|
|
82
|
+
count(options, privateOptions) {
|
|
71
83
|
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
-
const
|
|
73
|
-
const
|
|
84
|
+
const { filters, forceTransaction, transactionManager, withDeleted = false } = options;
|
|
85
|
+
const actualPrivateOptions = privateOptions || {};
|
|
74
86
|
if (!transactionManager && forceTransaction) {
|
|
75
87
|
return this.repository.manager.transaction(tm => {
|
|
76
|
-
return this.
|
|
88
|
+
return this.count(Object.assign(Object.assign({}, options), { transactionManager: tm }), actualPrivateOptions);
|
|
77
89
|
});
|
|
78
90
|
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
throw
|
|
91
|
+
const { processFiltersAllowedFieldsEnabled } = actualPrivateOptions;
|
|
92
|
+
const entityName = this.repository.metadata.name;
|
|
93
|
+
const tableName = this.repository.metadata.name;
|
|
94
|
+
const queryBuilder = this.getRepository(transactionManager).createQueryBuilder(entityName);
|
|
95
|
+
const parsedFilters = (yield this.processObjectAllowedFields(filters, {
|
|
96
|
+
allowedFields: this.columNames,
|
|
97
|
+
isEnabled: processFiltersAllowedFieldsEnabled,
|
|
98
|
+
objectType: core_1.ProcessObjectAllowedFieldsType.Filters
|
|
99
|
+
}));
|
|
100
|
+
if (!Object.keys(parsedFilters).length) {
|
|
101
|
+
throw new core_1.ApplicationError('At least one filter field for counting is required.');
|
|
90
102
|
}
|
|
103
|
+
const { where, include: includeFromFilters } = this.qb.parseFilters(tableName, parsedFilters);
|
|
104
|
+
const include = this.qb.parseRelations(tableName, [], includeFromFilters);
|
|
105
|
+
this.qb.buildQuery(queryBuilder, {
|
|
106
|
+
deletedColumnName: this.deletedColumnName,
|
|
107
|
+
include,
|
|
108
|
+
where,
|
|
109
|
+
withDeleted
|
|
110
|
+
});
|
|
111
|
+
return yield queryBuilder.getCount();
|
|
91
112
|
});
|
|
92
113
|
}
|
|
93
|
-
|
|
114
|
+
create(data, options, privateOptions) {
|
|
94
115
|
return __awaiter(this, void 0, void 0, function* () {
|
|
95
|
-
const
|
|
116
|
+
const actualOptions = options || {};
|
|
117
|
+
const actualPrivateOptions = privateOptions || {};
|
|
118
|
+
const { forceTransaction, transactionManager } = actualOptions;
|
|
96
119
|
if (!transactionManager && forceTransaction) {
|
|
97
120
|
return this.repository.manager.transaction(tm => {
|
|
98
|
-
return this.
|
|
121
|
+
return this.create(data, Object.assign(Object.assign({}, actualOptions), { transactionManager: tm }), actualPrivateOptions);
|
|
99
122
|
});
|
|
100
123
|
}
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
const { where, include: includeFromFilters } = this.qb.parseFilters(tableName, filters);
|
|
105
|
-
const include = this.qb.parseRelations(tableName, [], includeFromFilters);
|
|
106
|
-
this.qb.buildQuery(queryBuilder, { where, include, withDeleted });
|
|
107
|
-
return yield queryBuilder.getCount();
|
|
124
|
+
return yield this.save(data instanceof Array ? data[0] : data, transactionManager, {
|
|
125
|
+
processObjectAllowedFieldsEnabled: actualPrivateOptions.processInputAllowedFieldsEnabled
|
|
126
|
+
});
|
|
108
127
|
});
|
|
109
128
|
}
|
|
110
|
-
delete(options) {
|
|
129
|
+
delete(options, privateOptions) {
|
|
111
130
|
return __awaiter(this, void 0, void 0, function* () {
|
|
112
|
-
const { filters, forceTransaction, transactionManager, softDelete = true } = options;
|
|
131
|
+
const { filters, forceTransaction, returnOriginalItems, transactionManager, softDelete = true } = options;
|
|
132
|
+
const actualPrivateOptions = privateOptions || {};
|
|
113
133
|
if (!transactionManager && forceTransaction) {
|
|
114
134
|
return this.repository.manager.transaction(tm => {
|
|
115
|
-
return this.delete(Object.assign(Object.assign({}, options), { transactionManager: tm }));
|
|
135
|
+
return this.delete(Object.assign(Object.assign({}, options), { transactionManager: tm }), actualPrivateOptions);
|
|
116
136
|
});
|
|
117
137
|
}
|
|
138
|
+
const { processFiltersAllowedFieldsEnabled } = actualPrivateOptions;
|
|
118
139
|
const entityName = this.repository.metadata.name;
|
|
119
|
-
const tableName = this.repository.metadata.
|
|
140
|
+
const tableName = this.repository.metadata.name;
|
|
141
|
+
const dataToReturn = {};
|
|
120
142
|
const deleteType = softDelete ? 'softDelete' : 'delete';
|
|
121
143
|
const queryBuilder = this.getRepository(transactionManager).createQueryBuilder(entityName)[deleteType]();
|
|
122
|
-
const
|
|
144
|
+
const parsedFilters = (yield this.processObjectAllowedFields(filters, {
|
|
145
|
+
allowedFields: this.columNames,
|
|
146
|
+
isEnabled: processFiltersAllowedFieldsEnabled,
|
|
147
|
+
objectType: core_1.ProcessObjectAllowedFieldsType.Filters
|
|
148
|
+
}));
|
|
149
|
+
if (!Object.keys(parsedFilters).length) {
|
|
150
|
+
throw new core_1.ApplicationError('At least one filter field for deletion is required.');
|
|
151
|
+
}
|
|
152
|
+
const { where: parsedWhere, include } = this.qb.parseFilters(tableName, parsedFilters);
|
|
123
153
|
let where = {};
|
|
124
|
-
if (Object.keys(include).length) {
|
|
125
|
-
const findData = yield this.find({ filters, transactionManager });
|
|
154
|
+
if (Object.keys(include).length || returnOriginalItems) {
|
|
155
|
+
const findData = yield this.find({ filters: parsedFilters, transactionManager });
|
|
126
156
|
const { field, value } = this.buildPrimaryKeyWhereClause(findData.items);
|
|
127
157
|
where[field] = value;
|
|
158
|
+
dataToReturn.originalItems = findData.items;
|
|
128
159
|
}
|
|
129
160
|
else {
|
|
130
161
|
where = parsedWhere;
|
|
131
162
|
}
|
|
132
|
-
this.qb.buildQuery(queryBuilder, { where });
|
|
163
|
+
this.qb.buildQuery(queryBuilder, { deletedColumnName: this.deletedColumnName, where });
|
|
133
164
|
const result = yield queryBuilder.execute();
|
|
134
|
-
return { count: typeof result.affected === 'number' ? result.affected : undefined };
|
|
165
|
+
return Object.assign(Object.assign({}, dataToReturn), { count: typeof result.affected === 'number' ? result.affected : undefined });
|
|
135
166
|
});
|
|
136
167
|
}
|
|
137
|
-
find(options) {
|
|
168
|
+
find(options, privateOptions) {
|
|
138
169
|
return __awaiter(this, void 0, void 0, function* () {
|
|
139
|
-
const { filters, forceTransaction, page: optPage, perPage: optPerPage, findAll: optFindAll, include: optRelations, orderBy: optOrderBy, transactionManager, withDeleted = false } = options;
|
|
170
|
+
const { filters, forceTransaction, getTotalCount = true, page: optPage, perPage: optPerPage, findAll: optFindAll, include: optRelations, orderBy: optOrderBy, transactionManager, withDeleted = false } = options;
|
|
171
|
+
const actualPrivateOptions = privateOptions || {};
|
|
140
172
|
if (!transactionManager && forceTransaction) {
|
|
141
173
|
return this.repository.manager.transaction(tm => {
|
|
142
|
-
return this.find(Object.assign(Object.assign({}, options), { transactionManager: tm }));
|
|
174
|
+
return this.find(Object.assign(Object.assign({}, options), { transactionManager: tm }), actualPrivateOptions);
|
|
143
175
|
});
|
|
144
176
|
}
|
|
145
177
|
const page = optPage ? parseInt(optPage, 10) : 1;
|
|
@@ -147,13 +179,18 @@ class RDBEntityService extends core_1.PersistanceEntityService {
|
|
|
147
179
|
const findAll = optFindAll === true || optFindAll === 'true';
|
|
148
180
|
const findResults = { page: 1, perPage: 0, items: [], more: false };
|
|
149
181
|
const entityName = this.repository.metadata.name;
|
|
182
|
+
const processedFilters = (yield this.processObjectAllowedFields(filters || {}, {
|
|
183
|
+
allowedFields: this.columNames,
|
|
184
|
+
isEnabled: actualPrivateOptions.processFiltersAllowedFieldsEnabled,
|
|
185
|
+
objectType: core_1.ProcessObjectAllowedFieldsType.Filters
|
|
186
|
+
}));
|
|
150
187
|
const tableName = this.repository.metadata.name;
|
|
151
188
|
const queryBuilder = this.getRepository(transactionManager).createQueryBuilder(entityName);
|
|
152
189
|
let where = {};
|
|
153
190
|
let include = {};
|
|
154
191
|
let orderBy = [];
|
|
155
|
-
if (
|
|
156
|
-
const parsedFiltersData = this.qb.parseFilters(tableName,
|
|
192
|
+
if (Object.keys(processedFilters).length) {
|
|
193
|
+
const parsedFiltersData = this.qb.parseFilters(tableName, processedFilters);
|
|
157
194
|
where = Object.assign({}, parsedFiltersData.where);
|
|
158
195
|
include = Object.assign({}, parsedFiltersData.include);
|
|
159
196
|
}
|
|
@@ -163,7 +200,13 @@ class RDBEntityService extends core_1.PersistanceEntityService {
|
|
|
163
200
|
include = Object.assign(Object.assign({}, parsedOrderByData.include), include);
|
|
164
201
|
orderBy = [...parsedOrderByData.orderBy];
|
|
165
202
|
}
|
|
166
|
-
this.qb.buildQuery(queryBuilder, {
|
|
203
|
+
this.qb.buildQuery(queryBuilder, {
|
|
204
|
+
deletedColumnName: this.deletedColumnName,
|
|
205
|
+
where,
|
|
206
|
+
include,
|
|
207
|
+
orderBy,
|
|
208
|
+
withDeleted
|
|
209
|
+
});
|
|
167
210
|
if (!findAll) {
|
|
168
211
|
queryBuilder.skip((page - 1) * perPage).take(perPage + 1);
|
|
169
212
|
findResults.page = page;
|
|
@@ -173,26 +216,40 @@ class RDBEntityService extends core_1.PersistanceEntityService {
|
|
|
173
216
|
if (findAll) {
|
|
174
217
|
findResults.perPage = items.length;
|
|
175
218
|
}
|
|
176
|
-
else
|
|
177
|
-
items.
|
|
178
|
-
|
|
219
|
+
else {
|
|
220
|
+
if (items.length === perPage + 1) {
|
|
221
|
+
items.pop();
|
|
222
|
+
findResults.more = true;
|
|
223
|
+
}
|
|
224
|
+
if (getTotalCount) {
|
|
225
|
+
findResults.totalCount = yield this.count(Object.assign(Object.assign({}, options), { filters: processedFilters }));
|
|
226
|
+
}
|
|
179
227
|
}
|
|
180
228
|
findResults.items = items;
|
|
181
229
|
return findResults;
|
|
182
230
|
});
|
|
183
231
|
}
|
|
184
|
-
findOne(options) {
|
|
232
|
+
findOne(options, privateOptions) {
|
|
185
233
|
return __awaiter(this, void 0, void 0, function* () {
|
|
186
234
|
const { filters, forceTransaction, transactionManager, selectOperator, include: optRelations, orderBy: optOrderBy, withDeleted = false } = options;
|
|
235
|
+
const actualPrivateOptions = privateOptions || {};
|
|
187
236
|
if (!transactionManager && forceTransaction) {
|
|
188
237
|
return this.repository.manager.transaction(tm => {
|
|
189
|
-
return this.findOne(Object.assign(Object.assign({}, options), { transactionManager: tm }));
|
|
238
|
+
return this.findOne(Object.assign(Object.assign({}, options), { transactionManager: tm }), actualPrivateOptions);
|
|
190
239
|
});
|
|
191
240
|
}
|
|
192
241
|
const entityName = this.repository.metadata.name;
|
|
193
242
|
const tableName = this.repository.metadata.name;
|
|
194
243
|
const queryBuilder = this.getRepository(transactionManager).createQueryBuilder(entityName);
|
|
195
|
-
const
|
|
244
|
+
const parsedFilters = (yield this.processObjectAllowedFields(filters, {
|
|
245
|
+
allowedFields: this.columNames,
|
|
246
|
+
isEnabled: actualPrivateOptions.processFiltersAllowedFieldsEnabled,
|
|
247
|
+
objectType: core_1.ProcessObjectAllowedFieldsType.Filters
|
|
248
|
+
}));
|
|
249
|
+
if (!Object.keys(parsedFilters).length) {
|
|
250
|
+
throw new core_1.ApplicationError('At least one filter field is required for the findOne method.');
|
|
251
|
+
}
|
|
252
|
+
const { where, include: includeFromFilters } = this.qb.parseFilters(tableName, parsedFilters, {
|
|
196
253
|
operator: selectOperator,
|
|
197
254
|
isTopLevel: true
|
|
198
255
|
});
|
|
@@ -202,7 +259,13 @@ class RDBEntityService extends core_1.PersistanceEntityService {
|
|
|
202
259
|
const parsedOrderByData = this.qb.parseOrderBy(tableName, optOrderBy);
|
|
203
260
|
orderBy = [...parsedOrderByData.orderBy];
|
|
204
261
|
}
|
|
205
|
-
this.qb.buildQuery(queryBuilder, {
|
|
262
|
+
this.qb.buildQuery(queryBuilder, {
|
|
263
|
+
deletedColumnName: this.deletedColumnName,
|
|
264
|
+
where,
|
|
265
|
+
include,
|
|
266
|
+
orderBy,
|
|
267
|
+
withDeleted
|
|
268
|
+
});
|
|
206
269
|
return yield queryBuilder.getOne();
|
|
207
270
|
});
|
|
208
271
|
}
|
|
@@ -258,45 +321,91 @@ class RDBEntityService extends core_1.PersistanceEntityService {
|
|
|
258
321
|
}
|
|
259
322
|
});
|
|
260
323
|
}
|
|
261
|
-
save(data, transactionManager) {
|
|
324
|
+
save(data, transactionManager, options) {
|
|
262
325
|
return __awaiter(this, void 0, void 0, function* () {
|
|
263
|
-
|
|
264
|
-
|
|
326
|
+
const { columNames, repository } = this;
|
|
327
|
+
const { processObjectAllowedFieldsEnabled } = options || {};
|
|
328
|
+
const dataToSave = yield this.processObjectAllowedFields(data, {
|
|
329
|
+
allowedFields: columNames,
|
|
330
|
+
isEnabled: processObjectAllowedFieldsEnabled,
|
|
331
|
+
objectType: core_1.ProcessObjectAllowedFieldsType.Input
|
|
332
|
+
});
|
|
333
|
+
try {
|
|
334
|
+
if (transactionManager) {
|
|
335
|
+
return (yield transactionManager.save(repository.target, dataToSave));
|
|
336
|
+
}
|
|
337
|
+
return repository.save(dataToSave);
|
|
338
|
+
}
|
|
339
|
+
catch (e) {
|
|
340
|
+
const error = e;
|
|
341
|
+
if (error.code === rdb_entity_service_definitions_1.PostgresErrorCode.UniqueViolation) {
|
|
342
|
+
const extractVariableName = new RegExp(/^Key \((.*)\)\=(.*)$/g);
|
|
343
|
+
const result = extractVariableName.exec(error.detail);
|
|
344
|
+
throw new core_1.ApplicationError(`${error.table}: ${result ? result[1] : 'a column value you have provided'} needs to be unique`);
|
|
345
|
+
}
|
|
346
|
+
throw e;
|
|
265
347
|
}
|
|
266
|
-
return this.repository.save(data);
|
|
267
348
|
});
|
|
268
349
|
}
|
|
269
|
-
update(data, options) {
|
|
350
|
+
update(data, options, privateOptions) {
|
|
270
351
|
return __awaiter(this, void 0, void 0, function* () {
|
|
271
|
-
const {
|
|
352
|
+
const { columNames, repository } = this;
|
|
353
|
+
const { filters, forceTransaction, returnData, returnOriginalItems, transactionManager } = options;
|
|
354
|
+
const { processFiltersAllowedFieldsEnabled, processInputAllowedFieldsEnabled } = privateOptions || {};
|
|
272
355
|
if (!transactionManager && forceTransaction) {
|
|
273
|
-
return
|
|
274
|
-
return this.update(data, Object.assign(Object.assign({}, options), { transactionManager: tm }));
|
|
356
|
+
return repository.manager.transaction(tm => {
|
|
357
|
+
return this.update(data, Object.assign(Object.assign({}, options), { transactionManager: tm }), privateOptions);
|
|
275
358
|
});
|
|
276
359
|
}
|
|
277
|
-
const
|
|
278
|
-
|
|
360
|
+
const dataToUpdate = (yield this.processObjectAllowedFields(data instanceof Array ? data[0] : data, {
|
|
361
|
+
allowedFields: columNames,
|
|
362
|
+
isEnabled: processInputAllowedFieldsEnabled,
|
|
363
|
+
objectType: core_1.ProcessObjectAllowedFieldsType.Input
|
|
364
|
+
}));
|
|
365
|
+
if (!Object.keys(dataToUpdate).length) {
|
|
366
|
+
throw new core_1.ApplicationError('At least one field for update is required.');
|
|
367
|
+
}
|
|
368
|
+
const entityName = repository.metadata.name;
|
|
369
|
+
const tableName = repository.metadata.name;
|
|
370
|
+
const processedFilters = (yield this.processObjectAllowedFields(filters, {
|
|
371
|
+
allowedFields: this.columNames,
|
|
372
|
+
isEnabled: processFiltersAllowedFieldsEnabled,
|
|
373
|
+
objectType: core_1.ProcessObjectAllowedFieldsType.Filters
|
|
374
|
+
}));
|
|
375
|
+
if (!Object.keys(processedFilters).length) {
|
|
376
|
+
throw new core_1.ApplicationError('At least one filter field for update is required.');
|
|
377
|
+
}
|
|
279
378
|
const queryBuilder = this.getRepository(transactionManager)
|
|
280
379
|
.createQueryBuilder(entityName)
|
|
281
380
|
.update()
|
|
282
|
-
.set(
|
|
283
|
-
const { where: parsedWhere, include } = this.qb.parseFilters(tableName,
|
|
381
|
+
.set(dataToUpdate);
|
|
382
|
+
const { where: parsedWhere, include } = this.qb.parseFilters(tableName, processedFilters);
|
|
383
|
+
let originalItems = [];
|
|
284
384
|
let where = {};
|
|
285
|
-
if (Object.keys(include).length) {
|
|
286
|
-
const findData = yield this.find({ filters, transactionManager });
|
|
385
|
+
if (Object.keys(include).length || returnOriginalItems) {
|
|
386
|
+
const findData = yield this.find({ filters: processedFilters, transactionManager });
|
|
287
387
|
const { field, value } = this.buildPrimaryKeyWhereClause(findData.items);
|
|
388
|
+
originalItems = findData.items;
|
|
288
389
|
where[field] = value;
|
|
289
390
|
}
|
|
290
391
|
else {
|
|
291
392
|
where = parsedWhere;
|
|
292
393
|
}
|
|
293
|
-
this.qb.buildQuery(queryBuilder, { where });
|
|
394
|
+
this.qb.buildQuery(queryBuilder, { deletedColumnName: this.deletedColumnName, where });
|
|
395
|
+
const dataToReturn = {};
|
|
396
|
+
if (returnOriginalItems) {
|
|
397
|
+
dataToReturn.originalItems = originalItems;
|
|
398
|
+
}
|
|
294
399
|
if (returnData) {
|
|
295
400
|
const result = yield queryBuilder.returning('*').execute();
|
|
296
|
-
|
|
401
|
+
dataToReturn.count = result.raw.length;
|
|
402
|
+
dataToReturn.items = result.raw;
|
|
297
403
|
}
|
|
298
|
-
|
|
299
|
-
|
|
404
|
+
else {
|
|
405
|
+
const result = yield queryBuilder.execute();
|
|
406
|
+
dataToReturn.count = typeof result.affected === 'number' ? result.affected : undefined;
|
|
407
|
+
}
|
|
408
|
+
return dataToReturn;
|
|
300
409
|
});
|
|
301
410
|
}
|
|
302
411
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rdb.entity.service.js","sourceRoot":"","sources":["../../src/entity/rdb.entity.service.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -15,8 +15,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./common/definitions"), exports);
|
|
18
|
-
__exportStar(require("./
|
|
19
|
-
__exportStar(require("./
|
|
18
|
+
__exportStar(require("./entity"), exports);
|
|
19
|
+
__exportStar(require("./ormQueryBuilder"), exports);
|
|
20
20
|
__exportStar(require("./repository"), exports);
|
|
21
21
|
__exportStar(require("./sqlQueryBuilder"), exports);
|
|
22
22
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,2CAAyB;AACzB,oDAAkC;AAClC,+CAA6B;AAC7B,oDAAkC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './rdb.ormQueryBuilder';
|