@node-c/persistance-redis 1.0.0-alpha3 → 1.0.0-alpha31
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/dist/common/definitions/common.constants.d.ts +0 -1
- package/dist/common/definitions/common.constants.js +0 -1
- package/dist/common/definitions/common.constants.js.map +1 -1
- package/dist/entityService/redis.entity.service.d.ts +18 -10
- package/dist/entityService/redis.entity.service.definitions.d.ts +22 -4
- package/dist/entityService/redis.entity.service.js +145 -41
- package/dist/entityService/redis.entity.service.js.map +1 -1
- package/dist/module/redis.module.definitions.d.ts +2 -0
- package/dist/module/redis.module.js +4 -1
- package/dist/module/redis.module.js.map +1 -1
- package/dist/repository/redis.repository.definitions.d.ts +10 -1
- package/dist/repository/redis.repository.definitions.js +3 -0
- package/dist/repository/redis.repository.definitions.js.map +1 -1
- package/dist/repository/redis.repository.module.js +2 -1
- package/dist/repository/redis.repository.module.js.map +1 -1
- package/dist/repository/redis.repository.service.d.ts +14 -6
- package/dist/repository/redis.repository.service.js +121 -21
- package/dist/repository/redis.repository.service.js.map +1 -1
- package/dist/store/redis.store.definitions.d.ts +1 -13
- package/dist/store/redis.store.module.js +3 -2
- package/dist/store/redis.store.module.js.map +1 -1
- package/dist/store/redis.store.service.d.ts +13 -7
- package/dist/store/redis.store.service.js +195 -38
- package/dist/store/redis.store.service.js.map +1 -1
- package/package.json +7 -5
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export declare enum Constants {
|
|
2
2
|
DEFAULT_STORE_DELIMITER = "-",
|
|
3
3
|
REDIS_CLIENT = "REDIS_CLIENT",
|
|
4
|
-
REDIS_CLIENT_PERSISTANCE_MODULE_NAME = "REDIS_CLIENT_PERSISTANCE_MODULE_NAME",
|
|
5
4
|
REDIS_CLIENT_STORE_SERVICE_SUFFIX = "_STORE_SERVICE",
|
|
6
5
|
REDIS_REPOSITORY_SCHEMA = "REDIS_REPOSITORY_SCHEMA"
|
|
7
6
|
}
|
|
@@ -5,7 +5,6 @@ var Constants;
|
|
|
5
5
|
(function (Constants) {
|
|
6
6
|
Constants["DEFAULT_STORE_DELIMITER"] = "-";
|
|
7
7
|
Constants["REDIS_CLIENT"] = "REDIS_CLIENT";
|
|
8
|
-
Constants["REDIS_CLIENT_PERSISTANCE_MODULE_NAME"] = "REDIS_CLIENT_PERSISTANCE_MODULE_NAME";
|
|
9
8
|
Constants["REDIS_CLIENT_STORE_SERVICE_SUFFIX"] = "_STORE_SERVICE";
|
|
10
9
|
Constants["REDIS_REPOSITORY_SCHEMA"] = "REDIS_REPOSITORY_SCHEMA";
|
|
11
10
|
})(Constants || (exports.Constants = Constants = {}));
|
|
@@ -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,SASX;AATD,WAAY,SAAS;IAEnB,0CAA6B,CAAA;IAE7B,0CAA6B,CAAA;IAE7B,iEAAoD,CAAA;IAEpD,gEAAmD,CAAA;AACrD,CAAC,EATW,SAAS,yBAAT,SAAS,QASpB"}
|
|
@@ -1,16 +1,24 @@
|
|
|
1
|
-
import { PersistanceDeleteResult, PersistanceEntityService, PersistanceFindResults, PersistanceUpdateResult } from '@node-c/core';
|
|
2
|
-
import { BulkCreateOptions, CreateOptions, DeleteOptions, FindOneOptions, FindOptions, UpdateOptions } from './redis.entity.service.definitions';
|
|
1
|
+
import { AppConfigCommonPersistanceNoSQLEntityServiceSettings, ConfigProviderService, PersistanceDeleteResult, PersistanceEntityService, PersistanceFindResults, PersistanceUpdateResult } from '@node-c/core';
|
|
2
|
+
import { BulkCreateOptions, BulkCreatePrivateOptions, CountOptions, CountPrivateOptions, CreateOptions, CreatePrivateOptions, DeleteOptions, DeletePrivateOptions, FindOneOptions, FindOnePrivateOptions, FindOptions, FindPrivateOptions, UpdateOptions, UpdatePrivateOptions } from './redis.entity.service.definitions';
|
|
3
3
|
import { RedisRepositoryService } from '../repository';
|
|
4
4
|
import { RedisStoreService } from '../store';
|
|
5
5
|
export declare class RedisEntityService<Entity extends object> extends PersistanceEntityService<Entity> {
|
|
6
|
+
protected configProvider: ConfigProviderService;
|
|
6
7
|
protected repository: RedisRepositoryService<Entity>;
|
|
7
8
|
protected store: RedisStoreService;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
count(options:
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
9
|
+
protected settings: AppConfigCommonPersistanceNoSQLEntityServiceSettings;
|
|
10
|
+
constructor(configProvider: ConfigProviderService, repository: RedisRepositoryService<Entity>, store: RedisStoreService);
|
|
11
|
+
bulkCreate(data: Partial<Entity>[], options?: BulkCreateOptions, privateOptions?: BulkCreatePrivateOptions): Promise<Entity[]>;
|
|
12
|
+
count(options: CountOptions, privateOptions?: CountPrivateOptions): Promise<number | undefined>;
|
|
13
|
+
create(data: Partial<Entity>, options?: CreateOptions, privateOptions?: CreatePrivateOptions): Promise<Entity>;
|
|
14
|
+
delete(options: DeleteOptions, privateOptions?: DeletePrivateOptions): Promise<PersistanceDeleteResult<Entity>>;
|
|
15
|
+
find(options: FindOptions, privateOptions?: FindPrivateOptions): Promise<PersistanceFindResults<Entity>>;
|
|
16
|
+
findOne(options: FindOneOptions, privateOptions?: FindOnePrivateOptions): Promise<Entity | null>;
|
|
17
|
+
protected save<Data extends Partial<Entity> | Partial<Entity>[], ReturnData = unknown>(data: Data, options?: {
|
|
18
|
+
delete?: boolean;
|
|
19
|
+
processObjectAllowedFieldsEnabled?: boolean;
|
|
20
|
+
transactionId?: string;
|
|
21
|
+
validate?: boolean;
|
|
22
|
+
}): Promise<ReturnData>;
|
|
23
|
+
update(data: Entity, options: UpdateOptions, privateOptions?: UpdatePrivateOptions): Promise<PersistanceUpdateResult<Entity>>;
|
|
16
24
|
}
|
|
@@ -1,19 +1,37 @@
|
|
|
1
|
-
import { PersistanceCountOptions, PersistanceDeleteOptions, PersistanceFindOneOptions, PersistanceFindOptions, PersistanceUpdateOptions } from '@node-c/core';
|
|
1
|
+
import { PersistanceBulkCreatePrivateOptions, PersistanceCountOptions, PersistanceCountPrivateOptions, PersistanceCreatePrivateOptions, PersistanceDeleteOptions, PersistanceDeletePrivateOptions, PersistanceFindOneOptions, PersistanceFindOnePrivateOptions, PersistanceFindOptions, PersistanceFindPrivateOptions, PersistanceUpdateOptions, PersistanceUpdatePrivateOptions } from '@node-c/core';
|
|
2
|
+
export interface BaseCreateOptions extends BaseOptions {
|
|
3
|
+
ttl?: number;
|
|
4
|
+
}
|
|
2
5
|
export interface BaseOptions {
|
|
3
6
|
forceTransaction?: boolean;
|
|
4
7
|
transactionId?: string;
|
|
5
8
|
}
|
|
6
|
-
export type BulkCreateOptions =
|
|
9
|
+
export type BulkCreateOptions = BaseCreateOptions;
|
|
10
|
+
export interface BulkCreatePrivateOptions extends PersistanceBulkCreatePrivateOptions {
|
|
11
|
+
validate?: boolean;
|
|
12
|
+
}
|
|
7
13
|
export interface CountOptions extends BaseOptions, Omit<PersistanceCountOptions, 'withDeleted'> {
|
|
8
14
|
}
|
|
9
|
-
export type
|
|
15
|
+
export type CountPrivateOptions = PersistanceCountPrivateOptions;
|
|
16
|
+
export type CreateOptions = BaseCreateOptions;
|
|
17
|
+
export interface CreatePrivateOptions extends PersistanceCreatePrivateOptions {
|
|
18
|
+
validate?: boolean;
|
|
19
|
+
}
|
|
10
20
|
export interface DeleteOptions extends BaseOptions, Omit<PersistanceDeleteOptions, 'softDelete'> {
|
|
11
21
|
}
|
|
22
|
+
export type DeletePrivateOptions = PersistanceDeletePrivateOptions;
|
|
12
23
|
export interface FindOneOptions extends BaseOptions, Omit<PersistanceFindOneOptions, 'include' | 'orderBy' | 'select' | 'selectOperator' | 'withDeleted'> {
|
|
24
|
+
}
|
|
25
|
+
export interface FindOnePrivateOptions extends PersistanceFindOnePrivateOptions {
|
|
13
26
|
requirePrimaryKeys?: boolean;
|
|
14
27
|
}
|
|
15
28
|
export interface FindOptions extends BaseOptions, Omit<PersistanceFindOptions, 'include' | 'orderBy' | 'select' | 'selectOperator' | 'withDeleted'> {
|
|
29
|
+
}
|
|
30
|
+
export interface FindPrivateOptions extends PersistanceFindPrivateOptions {
|
|
16
31
|
requirePrimaryKeys?: boolean;
|
|
17
32
|
}
|
|
18
|
-
export interface UpdateOptions extends
|
|
33
|
+
export interface UpdateOptions extends BaseCreateOptions, PersistanceUpdateOptions {
|
|
34
|
+
}
|
|
35
|
+
export interface UpdatePrivateOptions extends PersistanceUpdatePrivateOptions {
|
|
36
|
+
validate?: boolean;
|
|
19
37
|
}
|
|
@@ -13,107 +13,211 @@ exports.RedisEntityService = void 0;
|
|
|
13
13
|
const core_1 = require("@node-c/core");
|
|
14
14
|
const ramda_1 = require("ramda");
|
|
15
15
|
class RedisEntityService extends core_1.PersistanceEntityService {
|
|
16
|
-
constructor(repository, store) {
|
|
17
|
-
super();
|
|
16
|
+
constructor(configProvider, repository, store) {
|
|
17
|
+
super(configProvider, repository.persistanceModuleName);
|
|
18
|
+
this.configProvider = configProvider;
|
|
18
19
|
this.repository = repository;
|
|
19
20
|
this.store = store;
|
|
20
21
|
}
|
|
21
|
-
bulkCreate(data, options) {
|
|
22
|
+
bulkCreate(data, options, privateOptions) {
|
|
22
23
|
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
-
const {
|
|
24
|
-
const actualOptions =
|
|
24
|
+
const { store } = this;
|
|
25
|
+
const actualOptions = options || {};
|
|
26
|
+
const actualPrivateOptions = privateOptions || {};
|
|
25
27
|
const { forceTransaction, transactionId } = actualOptions;
|
|
26
28
|
if (!transactionId && forceTransaction) {
|
|
27
29
|
const tId = store.createTransaction();
|
|
28
|
-
const result = yield this.bulkCreate(data, Object.assign(Object.assign({}, actualOptions), { transactionId: tId }));
|
|
30
|
+
const result = yield this.bulkCreate(data, Object.assign(Object.assign({}, actualOptions), { transactionId: tId }), actualPrivateOptions);
|
|
29
31
|
yield store.endTransaction(tId);
|
|
30
32
|
return result;
|
|
31
33
|
}
|
|
32
|
-
|
|
34
|
+
const { processInputAllowedFieldsEnabled, validate } = actualPrivateOptions;
|
|
35
|
+
return yield this.save(data instanceof Array ? data : [data], {
|
|
36
|
+
processObjectAllowedFieldsEnabled: processInputAllowedFieldsEnabled,
|
|
37
|
+
transactionId,
|
|
38
|
+
validate
|
|
39
|
+
});
|
|
33
40
|
});
|
|
34
41
|
}
|
|
35
|
-
|
|
42
|
+
count(options, privateOptions) {
|
|
36
43
|
return __awaiter(this, void 0, void 0, function* () {
|
|
37
|
-
const { repository
|
|
38
|
-
const
|
|
44
|
+
const { repository } = this;
|
|
45
|
+
const { filters, findAll } = options;
|
|
46
|
+
const { allowCountWithoutFilters, processFiltersAllowedFieldsEnabled } = privateOptions || {};
|
|
47
|
+
const parsedFilters = (yield this.processObjectAllowedFields(filters || {}, {
|
|
48
|
+
allowedFields: repository.columnNames,
|
|
49
|
+
isEnabled: processFiltersAllowedFieldsEnabled,
|
|
50
|
+
objectType: core_1.ProcessObjectAllowedFieldsType.Filters
|
|
51
|
+
}));
|
|
52
|
+
if (!allowCountWithoutFilters && !Object.keys(parsedFilters).length) {
|
|
53
|
+
throw new core_1.ApplicationError('At least one filter field for counting is required.');
|
|
54
|
+
}
|
|
55
|
+
return (yield repository.find({ filters: parsedFilters, findAll })).length;
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
create(data, options, privateOptions) {
|
|
59
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
60
|
+
const { store } = this;
|
|
61
|
+
const actualOptions = options || {};
|
|
62
|
+
const actualPrivateOptions = privateOptions || {};
|
|
39
63
|
const { forceTransaction, transactionId } = actualOptions;
|
|
40
64
|
if (!transactionId && forceTransaction) {
|
|
41
65
|
const tId = store.createTransaction();
|
|
42
|
-
const result = yield this.create(data, Object.assign(Object.assign({}, actualOptions), { transactionId: tId }));
|
|
66
|
+
const result = yield this.create(data, Object.assign(Object.assign({}, actualOptions), { transactionId: tId }), actualPrivateOptions);
|
|
43
67
|
yield store.endTransaction(tId);
|
|
44
68
|
return result;
|
|
45
69
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
const { filters, findAll } = options;
|
|
53
|
-
return (yield repository.find({ filters, findAll })).length;
|
|
70
|
+
const { processInputAllowedFieldsEnabled, validate } = actualPrivateOptions;
|
|
71
|
+
return yield this.save(data instanceof Array ? data[0] : data, {
|
|
72
|
+
processObjectAllowedFieldsEnabled: processInputAllowedFieldsEnabled,
|
|
73
|
+
transactionId,
|
|
74
|
+
validate
|
|
75
|
+
});
|
|
54
76
|
});
|
|
55
77
|
}
|
|
56
|
-
delete(options) {
|
|
78
|
+
delete(options, privateOptions) {
|
|
57
79
|
return __awaiter(this, void 0, void 0, function* () {
|
|
58
80
|
const { repository, store } = this;
|
|
59
|
-
const { filters, forceTransaction, transactionId } = options;
|
|
81
|
+
const { filters, forceTransaction, returnOriginalItems, transactionId } = options;
|
|
82
|
+
const actualPrivateOptions = privateOptions || {};
|
|
60
83
|
if (!transactionId && forceTransaction) {
|
|
61
84
|
const tId = store.createTransaction();
|
|
62
|
-
const result = yield this.delete(Object.assign(Object.assign({}, options), { transactionId: tId }));
|
|
85
|
+
const result = yield this.delete(Object.assign(Object.assign({}, options), { transactionId: tId }), actualPrivateOptions);
|
|
63
86
|
yield store.endTransaction(tId);
|
|
64
87
|
return result;
|
|
65
88
|
}
|
|
66
|
-
const {
|
|
67
|
-
const
|
|
68
|
-
|
|
89
|
+
const { processFiltersAllowedFieldsEnabled, requirePrimaryKeys = true } = actualPrivateOptions;
|
|
90
|
+
const parsedFilters = (yield this.processObjectAllowedFields(filters, {
|
|
91
|
+
allowedFields: repository.columnNames,
|
|
92
|
+
isEnabled: processFiltersAllowedFieldsEnabled,
|
|
93
|
+
objectType: core_1.ProcessObjectAllowedFieldsType.Filters
|
|
94
|
+
}));
|
|
95
|
+
if (!Object.keys(parsedFilters).length) {
|
|
96
|
+
throw new core_1.ApplicationError('At least one filter field for deleting data is required.');
|
|
97
|
+
}
|
|
98
|
+
const { items: itemsToDelete } = yield this.find({ filters, findAll: true }, { requirePrimaryKeys });
|
|
99
|
+
const results = yield this.save(itemsToDelete, {
|
|
100
|
+
delete: true,
|
|
101
|
+
transactionId
|
|
102
|
+
});
|
|
103
|
+
const dataToReturn = { count: results.length };
|
|
104
|
+
if (returnOriginalItems) {
|
|
105
|
+
dataToReturn.originalItems = itemsToDelete;
|
|
106
|
+
}
|
|
107
|
+
return dataToReturn;
|
|
69
108
|
});
|
|
70
109
|
}
|
|
71
|
-
find(options) {
|
|
110
|
+
find(options, privateOptions) {
|
|
72
111
|
return __awaiter(this, void 0, void 0, function* () {
|
|
73
|
-
const {
|
|
112
|
+
const { repository } = this;
|
|
113
|
+
const { filters, getTotalCount = true, page: optPage, perPage: optPerPage, findAll: optFindAll } = options;
|
|
114
|
+
const { processFiltersAllowedFieldsEnabled, requirePrimaryKeys } = privateOptions || {};
|
|
74
115
|
const page = optPage ? parseInt(optPage, 10) : 1;
|
|
75
116
|
const perPage = optPerPage ? parseInt(optPerPage, 10) : 10;
|
|
76
117
|
const findAll = optFindAll === true || optFindAll === 'true';
|
|
77
118
|
const findResults = { page: 1, perPage: 0, items: [], more: false };
|
|
119
|
+
const parsedFilters = (yield this.processObjectAllowedFields(filters || {}, {
|
|
120
|
+
allowedFields: repository.columnNames,
|
|
121
|
+
isEnabled: processFiltersAllowedFieldsEnabled,
|
|
122
|
+
objectType: core_1.ProcessObjectAllowedFieldsType.Filters
|
|
123
|
+
}));
|
|
78
124
|
if (!findAll) {
|
|
79
125
|
findResults.page = page;
|
|
80
126
|
findResults.perPage = perPage;
|
|
81
127
|
}
|
|
82
|
-
const items = yield
|
|
128
|
+
const items = yield repository.find({ filters: parsedFilters, findAll, page, perPage }, { requirePrimaryKeys });
|
|
83
129
|
if (findAll) {
|
|
84
130
|
findResults.perPage = items.length;
|
|
85
131
|
}
|
|
86
|
-
else
|
|
87
|
-
items.
|
|
88
|
-
|
|
132
|
+
else {
|
|
133
|
+
if (items.length === perPage + 1) {
|
|
134
|
+
items.pop();
|
|
135
|
+
findResults.more = true;
|
|
136
|
+
}
|
|
137
|
+
if (getTotalCount) {
|
|
138
|
+
findResults.totalCount = yield this.count(options, { allowCountWithoutFilters: true });
|
|
139
|
+
}
|
|
89
140
|
}
|
|
90
141
|
findResults.items = items;
|
|
91
142
|
return findResults;
|
|
92
143
|
});
|
|
93
144
|
}
|
|
94
|
-
findOne(options) {
|
|
145
|
+
findOne(options, privateOptions) {
|
|
95
146
|
return __awaiter(this, void 0, void 0, function* () {
|
|
96
147
|
const { filters } = options;
|
|
97
|
-
const
|
|
148
|
+
const { processFiltersAllowedFieldsEnabled, requirePrimaryKeys } = privateOptions || {};
|
|
149
|
+
const parsedFilters = (yield this.processObjectAllowedFields(filters, {
|
|
150
|
+
allowedFields: this.repository.columnNames,
|
|
151
|
+
isEnabled: processFiltersAllowedFieldsEnabled,
|
|
152
|
+
objectType: core_1.ProcessObjectAllowedFieldsType.Filters
|
|
153
|
+
}));
|
|
154
|
+
if (!Object.keys(parsedFilters).length) {
|
|
155
|
+
throw new core_1.ApplicationError('At least one filter field is required for the findOne method.');
|
|
156
|
+
}
|
|
157
|
+
const items = yield this.repository.find({ filters, page: 1, perPage: 1 }, { requirePrimaryKeys });
|
|
98
158
|
return items[0] || null;
|
|
99
159
|
});
|
|
100
160
|
}
|
|
101
|
-
|
|
161
|
+
save(data, options) {
|
|
102
162
|
return __awaiter(this, void 0, void 0, function* () {
|
|
103
|
-
const { repository,
|
|
104
|
-
const {
|
|
163
|
+
const { repository, settings } = this;
|
|
164
|
+
const { validationSettings } = settings;
|
|
165
|
+
const { delete: optDelete, processObjectAllowedFieldsEnabled, transactionId, validate } = options || {};
|
|
166
|
+
if (optDelete) {
|
|
167
|
+
return (yield repository.save(data, {
|
|
168
|
+
delete: true,
|
|
169
|
+
transactionId,
|
|
170
|
+
validate: false
|
|
171
|
+
}));
|
|
172
|
+
}
|
|
173
|
+
const dataToSave = yield this.processObjectAllowedFields(data, {
|
|
174
|
+
allowedFields: repository.columnNames,
|
|
175
|
+
isEnabled: processObjectAllowedFieldsEnabled,
|
|
176
|
+
objectType: core_1.ProcessObjectAllowedFieldsType.Input
|
|
177
|
+
});
|
|
178
|
+
return (yield repository.save(dataToSave, {
|
|
179
|
+
transactionId,
|
|
180
|
+
validate: typeof validate !== 'undefined' ? validate : !!(validationSettings === null || validationSettings === void 0 ? void 0 : validationSettings.isEnabled)
|
|
181
|
+
}));
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
update(data, options, privateOptions) {
|
|
185
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
186
|
+
const { store } = this;
|
|
187
|
+
const { filters, forceTransaction, returnData, returnOriginalItems, transactionId } = options;
|
|
188
|
+
const actualPrivateOptions = privateOptions || {};
|
|
105
189
|
if (!transactionId && forceTransaction) {
|
|
106
190
|
const tId = store.createTransaction();
|
|
107
|
-
const result = yield this.update(data, Object.assign(Object.assign({}, options), { transactionId: tId }));
|
|
191
|
+
const result = yield this.update(data, Object.assign(Object.assign({}, options), { transactionId: tId }), actualPrivateOptions);
|
|
108
192
|
yield store.endTransaction(tId);
|
|
109
193
|
return result;
|
|
110
194
|
}
|
|
111
|
-
const
|
|
195
|
+
const { processFiltersAllowedFieldsEnabled, processInputAllowedFieldsEnabled, requirePrimaryKeys = true, validate } = actualPrivateOptions;
|
|
196
|
+
const dataToReturn = {};
|
|
197
|
+
const itemToUpdate = yield this.findOne({ filters }, { processFiltersAllowedFieldsEnabled, requirePrimaryKeys });
|
|
112
198
|
if (!itemToUpdate) {
|
|
113
|
-
|
|
199
|
+
dataToReturn.count = 0;
|
|
200
|
+
if (returnData) {
|
|
201
|
+
dataToReturn.items = [];
|
|
202
|
+
}
|
|
203
|
+
if (returnOriginalItems) {
|
|
204
|
+
dataToReturn.originalItems = [];
|
|
205
|
+
}
|
|
206
|
+
return dataToReturn;
|
|
207
|
+
}
|
|
208
|
+
const updateResult = yield this.save((0, ramda_1.mergeDeepRight)(itemToUpdate, data instanceof Array ? data[0] : data), {
|
|
209
|
+
processObjectAllowedFieldsEnabled: processInputAllowedFieldsEnabled,
|
|
210
|
+
transactionId,
|
|
211
|
+
validate
|
|
212
|
+
});
|
|
213
|
+
dataToReturn.count = updateResult.length;
|
|
214
|
+
if (returnData) {
|
|
215
|
+
dataToReturn.items = updateResult;
|
|
216
|
+
}
|
|
217
|
+
if (returnOriginalItems) {
|
|
218
|
+
dataToReturn.originalItems = [itemToUpdate];
|
|
114
219
|
}
|
|
115
|
-
|
|
116
|
-
return { count: updateResult.length, items: updateResult };
|
|
220
|
+
return dataToReturn;
|
|
117
221
|
});
|
|
118
222
|
}
|
|
119
223
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redis.entity.service.js","sourceRoot":"","sources":["../../src/entityService/redis.entity.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"redis.entity.service.js","sourceRoot":"","sources":["../../src/entityService/redis.entity.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAUsB;AAEtB,iCAAgD;AAwBhD,MAAa,kBAA0C,SAAQ,+BAAgC;IAG7F,YAEY,cAAqC,EAErC,UAA0C,EAE1C,KAAwB;QAElC,KAAK,CAAC,cAAc,EAAE,UAAU,CAAC,qBAAqB,CAAC,CAAC;QAN9C,mBAAc,GAAd,cAAc,CAAuB;QAErC,eAAU,GAAV,UAAU,CAAgC;QAE1C,UAAK,GAAL,KAAK,CAAmB;IAGpC,CAAC;IAEK,UAAU,CACd,IAAuB,EACvB,OAA2B,EAC3B,cAAyC;;YAEzC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;YACvB,MAAM,aAAa,GAAG,OAAO,IAAI,EAAE,CAAC;YACpC,MAAM,oBAAoB,GAAG,cAAc,IAAI,EAAE,CAAC;YAClD,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,GAAG,aAAa,CAAC;YAC1D,IAAI,CAAC,aAAa,IAAI,gBAAgB,EAAE,CAAC;gBACvC,MAAM,GAAG,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC;gBACtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,kCAAO,aAAa,KAAE,aAAa,EAAE,GAAG,KAAI,oBAAoB,CAAC,CAAC;gBAC3G,MAAM,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;gBAChC,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,MAAM,EAAE,gCAAgC,EAAE,QAAQ,EAAE,GAAG,oBAAoB,CAAC;YAC5E,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,YAAY,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;gBAC5D,iCAAiC,EAAE,gCAAgC;gBACnE,aAAa;gBACb,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;KAAA;IAEK,KAAK,CAAC,OAAqB,EAAE,cAAoC;;YACrE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;YAC5B,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;YACrC,MAAM,EAAE,wBAAwB,EAAE,kCAAkC,EAAE,GAAG,cAAc,IAAI,EAAE,CAAC;YAC9F,MAAM,aAAa,GAAG,CAAC,MAAM,IAAI,CAAC,0BAA0B,CAAgB,OAAO,IAAI,EAAE,EAAE;gBACzF,aAAa,EAAE,UAAU,CAAC,WAAW;gBACrC,SAAS,EAAE,kCAAkC;gBAC7C,UAAU,EAAE,qCAA8B,CAAC,OAAO;aACnD,CAAC,CAAkB,CAAC;YACrB,IAAI,CAAC,wBAAwB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC;gBACpE,MAAM,IAAI,uBAAgB,CAAC,qDAAqD,CAAC,CAAC;YACpF,CAAC;YACD,OAAO,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QAC7E,CAAC;KAAA;IAEK,MAAM,CAAC,IAAqB,EAAE,OAAuB,EAAE,cAAqC;;YAChG,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;YACvB,MAAM,aAAa,GAAG,OAAO,IAAI,EAAE,CAAC;YACpC,MAAM,oBAAoB,GAAG,cAAc,IAAI,EAAE,CAAC;YAClD,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,GAAG,aAAa,CAAC;YAC1D,IAAI,CAAC,aAAa,IAAI,gBAAgB,EAAE,CAAC;gBACvC,MAAM,GAAG,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC;gBACtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,kCAAO,aAAa,KAAE,aAAa,EAAE,GAAG,KAAI,oBAAoB,CAAC,CAAC;gBACvG,MAAM,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;gBAChC,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,MAAM,EAAE,gCAAgC,EAAE,QAAQ,EAAE,GAAG,oBAAoB,CAAC;YAC5E,OAAO,MAAM,IAAI,CAAC,IAAI,CAA0B,IAAI,YAAY,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;gBACtF,iCAAiC,EAAE,gCAAgC;gBACnE,aAAa;gBACb,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;KAAA;IAEK,MAAM,CACV,OAAsB,EACtB,cAAqC;;YAErC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;YACnC,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;YAClF,MAAM,oBAAoB,GAAG,cAAc,IAAI,EAAE,CAAC;YAClD,IAAI,CAAC,aAAa,IAAI,gBAAgB,EAAE,CAAC;gBACvC,MAAM,GAAG,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC;gBACtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,iCAAM,OAAO,KAAE,aAAa,EAAE,GAAG,KAAI,oBAAoB,CAAC,CAAC;gBAC3F,MAAM,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;gBAChC,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,MAAM,EAAE,kCAAkC,EAAE,kBAAkB,GAAG,IAAI,EAAE,GAAG,oBAAoB,CAAC;YAC/F,MAAM,aAAa,GAAG,CAAC,MAAM,IAAI,CAAC,0BAA0B,CAAgB,OAAO,EAAE;gBACnF,aAAa,EAAE,UAAU,CAAC,WAAW;gBACrC,SAAS,EAAE,kCAAkC;gBAC7C,UAAU,EAAE,qCAA8B,CAAC,OAAO;aACnD,CAAC,CAAkB,CAAC;YACrB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,IAAI,uBAAgB,CAAC,0DAA0D,CAAC,CAAC;YACzF,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;YACrG,MAAM,OAAO,GAAa,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;gBACvD,MAAM,EAAE,IAAI;gBACZ,aAAa;aACd,CAAC,CAAC;YACH,MAAM,YAAY,GAAoC,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;YAChF,IAAI,mBAAmB,EAAE,CAAC;gBACxB,YAAY,CAAC,aAAa,GAAG,aAAa,CAAC;YAC7C,CAAC;YACD,OAAO,YAAY,CAAC;QACtB,CAAC;KAAA;IAEK,IAAI,CAAC,OAAoB,EAAE,cAAmC;;YAClE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;YAC5B,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;YAC3G,MAAM,EAAE,kCAAkC,EAAE,kBAAkB,EAAE,GAAG,cAAc,IAAI,EAAE,CAAC;YAExF,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAA4B,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAEtE,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,UAA+B,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAChF,MAAM,OAAO,GAAG,UAAU,KAAK,IAAI,IAAK,UAAsB,KAAK,MAAM,CAAC;YAC1E,MAAM,WAAW,GAAmC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;YACpG,MAAM,aAAa,GAAG,CAAC,MAAM,IAAI,CAAC,0BAA0B,CAAgB,OAAO,IAAI,EAAE,EAAE;gBACzF,aAAa,EAAE,UAAU,CAAC,WAAW;gBACrC,SAAS,EAAE,kCAAkC;gBAC7C,UAAU,EAAE,qCAA8B,CAAC,OAAO;aACnD,CAAC,CAAkB,CAAC;YACrB,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;gBACxB,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC;YAChC,CAAC;YACD,MAAM,KAAK,GAAa,MAAM,UAAU,CAAC,IAAI,CAC3C,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAClD,EAAE,kBAAkB,EAAE,CACvB,CAAC;YACF,IAAI,OAAO,EAAE,CAAC;gBACZ,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,GAAG,CAAC,EAAE,CAAC;oBACjC,KAAK,CAAC,GAAG,EAAE,CAAC;oBACZ,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;gBAC1B,CAAC;gBACD,IAAI,aAAa,EAAE,CAAC;oBAClB,WAAW,CAAC,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAC,CAAC;gBACzF,CAAC;YACH,CAAC;YACD,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC;YAC1B,OAAO,WAAW,CAAC;QACrB,CAAC;KAAA;IAEK,OAAO,CAAC,OAAuB,EAAE,cAAsC;;YAC3E,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;YAC5B,MAAM,EAAE,kCAAkC,EAAE,kBAAkB,EAAE,GAAG,cAAc,IAAI,EAAE,CAAC;YACxF,MAAM,aAAa,GAAG,CAAC,MAAM,IAAI,CAAC,0BAA0B,CAAgB,OAAO,EAAE;gBACnF,aAAa,EAAE,IAAI,CAAC,UAAU,CAAC,WAAW;gBAC1C,SAAS,EAAE,kCAAkC;gBAC7C,UAAU,EAAE,qCAA8B,CAAC,OAAO;aACnD,CAAC,CAAkB,CAAC;YACrB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,IAAI,uBAAgB,CAAC,+DAA+D,CAAC,CAAC;YAC9F,CAAC;YACD,MAAM,KAAK,GAAa,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC7G,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;QAC1B,CAAC;KAAA;IAEe,IAAI,CAClB,IAAU,EACV,OAKC;;YAED,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;YACtC,MAAM,EAAE,kBAAkB,EAAE,GAAG,QAAQ,CAAC;YACxC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,iCAAiC,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;YACxG,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,IAAyB,EAAE;oBACvD,MAAM,EAAE,IAAI;oBACZ,aAAa;oBACb,QAAQ,EAAE,KAAK;iBAChB,CAAC,CAAe,CAAC;YACpB,CAAC;YACD,MAAM,UAAU,GAAkB,MAAM,IAAI,CAAC,0BAA0B,CAAO,IAAI,EAAE;gBAClF,aAAa,EAAE,UAAU,CAAC,WAAW;gBACrC,SAAS,EAAE,iCAAiC;gBAC5C,UAAU,EAAE,qCAA8B,CAAC,KAAK;aACjD,CAAC,CAAC;YACH,OAAO,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,UAAoB,EAAE;gBAClD,aAAa;gBACb,QAAQ,EAAE,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,SAAS,CAAA;aACvF,CAAC,CAAe,CAAC;QACpB,CAAC;KAAA;IAEK,MAAM,CACV,IAAY,EACZ,OAAsB,EACtB,cAAqC;;YAErC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;YACvB,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,mBAAmB,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;YAC9F,MAAM,oBAAoB,GAAG,cAAc,IAAI,EAAE,CAAC;YAClD,IAAI,CAAC,aAAa,IAAI,gBAAgB,EAAE,CAAC;gBACvC,MAAM,GAAG,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC;gBACtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,kCAAO,OAAO,KAAE,aAAa,EAAE,GAAG,KAAI,oBAAoB,CAAC,CAAC;gBACjG,MAAM,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;gBAChC,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,MAAM,EACJ,kCAAkC,EAClC,gCAAgC,EAChC,kBAAkB,GAAG,IAAI,EACzB,QAAQ,EACT,GAAG,oBAAoB,CAAC;YACzB,MAAM,YAAY,GAAoC,EAAE,CAAC;YACzD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,kCAAkC,EAAE,kBAAkB,EAAE,CAAC,CAAC;YACjH,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,YAAY,CAAC,KAAK,GAAG,CAAC,CAAC;gBACvB,IAAI,UAAU,EAAE,CAAC;oBACf,YAAY,CAAC,KAAK,GAAG,EAAE,CAAC;gBAC1B,CAAC;gBACD,IAAI,mBAAmB,EAAE,CAAC;oBACxB,YAAY,CAAC,aAAa,GAAG,EAAE,CAAC;gBAClC,CAAC;gBACD,OAAO,YAAY,CAAC;YACtB,CAAC;YACD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,CAClC,IAAA,sBAAK,EAAC,YAAY,EAAE,IAAI,YAAY,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAC3D;gBACE,iCAAiC,EAAE,gCAAgC;gBACnE,aAAa;gBACb,QAAQ;aACT,CACF,CAAC;YACF,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC;YACzC,IAAI,UAAU,EAAE,CAAC;gBACf,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC;YACpC,CAAC;YACD,IAAI,mBAAmB,EAAE,CAAC;gBACxB,YAAY,CAAC,aAAa,GAAG,CAAC,YAAY,CAAC,CAAC;YAC9C,CAAC;YACD,OAAO,YAAY,CAAC;QACtB,CAAC;KAAA;CACF;AA7OD,gDA6OC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ModuleMetadata } from '@nestjs/common';
|
|
2
2
|
import { GenericObject } from '@node-c/core';
|
|
3
3
|
export interface RedisModuleOptions {
|
|
4
|
+
entityModuleRegisterOptions?: unknown;
|
|
4
5
|
exports?: ModuleMetadata['exports'];
|
|
5
6
|
folderData: GenericObject<unknown>;
|
|
6
7
|
imports?: {
|
|
@@ -11,4 +12,5 @@ export interface RedisModuleOptions {
|
|
|
11
12
|
moduleClass: unknown;
|
|
12
13
|
moduleName: string;
|
|
13
14
|
providers?: ModuleMetadata['providers'];
|
|
15
|
+
registerOptionsPerEntityModule?: GenericObject;
|
|
14
16
|
}
|
|
@@ -7,7 +7,10 @@ class RedisModule {
|
|
|
7
7
|
static register(options) {
|
|
8
8
|
const { folderData, imports: additionalImports, moduleClass, moduleName } = options;
|
|
9
9
|
const { atEnd: importsAtEnd, postStore: importsPostStore, preStore: importsPreStore } = additionalImports || {};
|
|
10
|
-
const { modules } = (0, core_1.loadDynamicModules)(folderData
|
|
10
|
+
const { modules } = (0, core_1.loadDynamicModules)(folderData, {
|
|
11
|
+
moduleRegisterOptions: options.entityModuleRegisterOptions,
|
|
12
|
+
registerOptionsPerModule: options.registerOptionsPerEntityModule
|
|
13
|
+
});
|
|
11
14
|
return {
|
|
12
15
|
global: true,
|
|
13
16
|
module: moduleClass,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redis.module.js","sourceRoot":"","sources":["../../src/module/redis.module.ts"],"names":[],"mappings":";;;AAEA,uCAAkD;AAIlD,oCAA4C;AAE5C,MAAa,WAAW;IACtB,MAAM,CAAC,QAAQ,CAAC,OAA2B;QACzC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;QACpF,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,iBAAiB,IAAI,EAAE,CAAC;QAChH,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,yBAAkB,EAAC,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"redis.module.js","sourceRoot":"","sources":["../../src/module/redis.module.ts"],"names":[],"mappings":";;;AAEA,uCAAkD;AAIlD,oCAA4C;AAE5C,MAAa,WAAW;IACtB,MAAM,CAAC,QAAQ,CAAC,OAA2B;QACzC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;QACpF,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,iBAAiB,IAAI,EAAE,CAAC;QAChH,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,yBAAkB,EAAC,UAAU,EAAE;YACjD,qBAAqB,EAAE,OAAO,CAAC,2BAA2B;YAC1D,wBAAwB,EAAE,OAAO,CAAC,8BAA8B;SACjE,CAAC,CAAC;QACH,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,WAAsC;YAC9C,OAAO,EAAE;gBACP,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;gBAC1B,wBAAgB,CAAC,QAAQ,CAAC,EAAE,qBAAqB,EAAE,UAAU,EAAE,CAAC;gBAChE,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC;gBAC3B,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;gBAClB,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;aACxB;YACD,SAAS,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;YACzC,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;SAC1D,CAAC;IACJ,CAAC;CACF;AAtBD,kCAsBC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { GenericObject } from '@node-c/core';
|
|
2
|
+
import { ValidationSchema } from 'class-validator';
|
|
2
3
|
export interface EntitySchema {
|
|
3
4
|
columns: {
|
|
4
5
|
[columnName: string]: {
|
|
@@ -9,13 +10,17 @@ export interface EntitySchema {
|
|
|
9
10
|
primary?: boolean;
|
|
10
11
|
primaryOrder?: number;
|
|
11
12
|
type?: EntitySchemaColumnType;
|
|
13
|
+
validationProperties?: ValidationSchema['properties'][''];
|
|
12
14
|
};
|
|
13
15
|
};
|
|
14
16
|
name: string;
|
|
15
17
|
paranoid?: boolean;
|
|
16
18
|
}
|
|
17
19
|
export declare enum EntitySchemaColumnType {
|
|
20
|
+
Array = "array",
|
|
21
|
+
Boolean = "boolean",
|
|
18
22
|
Integer = "integer",
|
|
23
|
+
Object = "object",
|
|
19
24
|
String = "string",
|
|
20
25
|
TimestampTz = "timestampTz",
|
|
21
26
|
UUIDV4 = "uuidv4"
|
|
@@ -30,17 +35,21 @@ export interface RedisRepositoryModuleOptions {
|
|
|
30
35
|
schema: EntitySchema;
|
|
31
36
|
}
|
|
32
37
|
export interface RepositoryFindOptions {
|
|
33
|
-
exactSearch?: boolean;
|
|
34
38
|
filters?: GenericObject<unknown>;
|
|
35
39
|
findAll?: boolean;
|
|
36
40
|
page?: number;
|
|
37
41
|
perPage?: number;
|
|
38
42
|
withValues?: boolean;
|
|
39
43
|
}
|
|
44
|
+
export interface RepositoryFindPrivateOptions {
|
|
45
|
+
requirePrimaryKeys?: boolean;
|
|
46
|
+
}
|
|
40
47
|
export interface SaveOptions {
|
|
41
48
|
delete?: boolean;
|
|
42
49
|
onConflict?: SaveOptionsOnConflict;
|
|
43
50
|
transactionId?: string;
|
|
51
|
+
ttl?: number;
|
|
52
|
+
validate?: boolean;
|
|
44
53
|
}
|
|
45
54
|
export declare enum SaveOptionsOnConflict {
|
|
46
55
|
DoNothing = "doNothing",
|
|
@@ -3,7 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.SaveOptionsOnConflict = exports.EntitySchemaColumnType = void 0;
|
|
4
4
|
var EntitySchemaColumnType;
|
|
5
5
|
(function (EntitySchemaColumnType) {
|
|
6
|
+
EntitySchemaColumnType["Array"] = "array";
|
|
7
|
+
EntitySchemaColumnType["Boolean"] = "boolean";
|
|
6
8
|
EntitySchemaColumnType["Integer"] = "integer";
|
|
9
|
+
EntitySchemaColumnType["Object"] = "object";
|
|
7
10
|
EntitySchemaColumnType["String"] = "string";
|
|
8
11
|
EntitySchemaColumnType["TimestampTz"] = "timestampTz";
|
|
9
12
|
EntitySchemaColumnType["UUIDV4"] = "uuidv4";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redis.repository.definitions.js","sourceRoot":"","sources":["../../src/repository/redis.repository.definitions.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"redis.repository.definitions.js","sourceRoot":"","sources":["../../src/repository/redis.repository.definitions.ts"],"names":[],"mappings":";;;AAsBA,IAAY,sBAeX;AAfD,WAAY,sBAAsB;IAEhC,yCAAe,CAAA;IAEf,6CAAmB,CAAA;IAEnB,6CAAmB,CAAA;IAEnB,2CAAiB,CAAA;IAEjB,2CAAiB,CAAA;IAEjB,qDAA2B,CAAA;IAE3B,2CAAiB,CAAA;AACnB,CAAC,EAfW,sBAAsB,sCAAtB,sBAAsB,QAejC;AAiCD,IAAY,qBAOX;AAPD,WAAY,qBAAqB;IAE/B,gDAAuB,CAAA;IAEvB,kDAAyB,CAAA;IAEzB,0CAAiB,CAAA;AACnB,CAAC,EAPW,qBAAqB,qCAArB,qBAAqB,QAOhC"}
|
|
@@ -9,6 +9,7 @@ var RedisRepositoryModule_1;
|
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.RedisRepositoryModule = void 0;
|
|
11
11
|
const common_1 = require("@nestjs/common");
|
|
12
|
+
const core_1 = require("@node-c/core");
|
|
12
13
|
const redis_repository_service_1 = require("./redis.repository.service");
|
|
13
14
|
const definitions_1 = require("../common/definitions");
|
|
14
15
|
const store_1 = require("../store");
|
|
@@ -23,7 +24,7 @@ let RedisRepositoryModule = RedisRepositoryModule_1 = class RedisRepositoryModul
|
|
|
23
24
|
provide: definitions_1.Constants.REDIS_REPOSITORY_SCHEMA,
|
|
24
25
|
useValue: schema
|
|
25
26
|
},
|
|
26
|
-
{ provide:
|
|
27
|
+
{ provide: core_1.Constants.PERSISTANCE_MODULE_NAME, useValue: persistanceModuleName },
|
|
27
28
|
{
|
|
28
29
|
provide: store_1.RedisStoreService,
|
|
29
30
|
useFactory: (redisStoreService) => redisStoreService,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redis.repository.module.js","sourceRoot":"","sources":["../../src/repository/redis.repository.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAuD;
|
|
1
|
+
{"version":3,"file":"redis.repository.module.js","sourceRoot":"","sources":["../../src/repository/redis.repository.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAuD;AAEvD,uCAA0D;AAG1D,yEAAoE;AAEpE,uDAAkD;AAClD,oCAA6C;AAGtC,IAAM,qBAAqB,6BAA3B,MAAM,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAS,OAAqC;QAC3D,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAClD,OAAO;YACL,MAAM,EAAE,uBAAqB;YAC7B,OAAO,EAAE,EAAE;YACX,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,uBAAS,CAAC,uBAAuB;oBAC1C,QAAQ,EAAE,MAAM;iBACjB;gBACD,EAAE,OAAO,EAAE,gBAAa,CAAC,uBAAuB,EAAE,QAAQ,EAAE,qBAAqB,EAAE;gBACnF;oBACE,OAAO,EAAE,yBAAiB;oBAC1B,UAAU,EAAE,CAAC,iBAAoC,EAAE,EAAE,CAAC,iBAAiB;oBACvE,MAAM,EAAE,CAAC,GAAG,qBAAqB,GAAG,uBAAS,CAAC,iCAAiC,EAAE,CAAC;iBACnF;gBACD,CAAA,iDAA8B,CAAA;aAC/B;YACD,OAAO,EAAE,CAAC,CAAA,iDAA8B,CAAA,EAAE,yBAAiB,CAAC;SAC7D,CAAC;IACJ,CAAC;CACF,CAAA;AAtBY,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,qBAAqB,CAsBjC"}
|
|
@@ -1,15 +1,23 @@
|
|
|
1
|
-
import { ConfigProviderService } from '@node-c/core';
|
|
2
|
-
import {
|
|
1
|
+
import { AppConfigCommonPersistanceNoSQLValidationSettings, ConfigProviderService } from '@node-c/core';
|
|
2
|
+
import { ValidationSchema } from 'class-validator';
|
|
3
|
+
import { EntitySchema, PrepareOptions, RepositoryFindOptions, RepositoryFindPrivateOptions, SaveOptions } from './redis.repository.definitions';
|
|
3
4
|
import { RedisStoreService } from '../store';
|
|
4
5
|
export declare class RedisRepositoryService<Entity> {
|
|
5
6
|
protected configProvider: ConfigProviderService;
|
|
6
|
-
protected
|
|
7
|
+
protected _persistanceModuleName: string;
|
|
7
8
|
protected schema: EntitySchema;
|
|
8
9
|
protected store: RedisStoreService;
|
|
9
|
-
protected
|
|
10
|
+
protected _columnNames: string[];
|
|
11
|
+
protected _primaryKeys: string[];
|
|
12
|
+
protected defaultTTL?: number;
|
|
10
13
|
protected storeDelimiter: string;
|
|
11
|
-
|
|
12
|
-
|
|
14
|
+
protected validationSchemaProperties: ValidationSchema['properties'];
|
|
15
|
+
protected validationSettings: AppConfigCommonPersistanceNoSQLValidationSettings;
|
|
16
|
+
get columnNames(): string[];
|
|
17
|
+
get persistanceModuleName(): string;
|
|
18
|
+
get primaryKeys(): string[];
|
|
19
|
+
constructor(configProvider: ConfigProviderService, _persistanceModuleName: string, schema: EntitySchema, store: RedisStoreService);
|
|
20
|
+
find<ResultItem extends Entity | string = Entity>(options: RepositoryFindOptions, privateOptions?: RepositoryFindPrivateOptions): Promise<ResultItem[]>;
|
|
13
21
|
protected prepare(data: Entity, options?: PrepareOptions): Promise<{
|
|
14
22
|
data: Entity;
|
|
15
23
|
storeEntityKey: string;
|