@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.
@@ -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,SAWX;AAXD,WAAY,SAAS;IAEnB,0CAA6B,CAAA;IAE7B,0CAA6B,CAAA;IAE7B,0FAA6E,CAAA;IAE7E,iEAAoD,CAAA;IAEpD,gEAAmD,CAAA;AACrD,CAAC,EAXW,SAAS,yBAAT,SAAS,QAWpB"}
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
- constructor(repository: RedisRepositoryService<Entity>, store: RedisStoreService);
9
- bulkCreate(data: Entity[], options?: BulkCreateOptions): Promise<Entity[]>;
10
- create(data: Entity, options?: CreateOptions): Promise<Entity>;
11
- count(options: FindOptions): Promise<number | undefined>;
12
- delete(options: DeleteOptions): Promise<PersistanceDeleteResult>;
13
- find(options: FindOptions): Promise<PersistanceFindResults<Entity>>;
14
- findOne(options: FindOneOptions): Promise<Entity | null>;
15
- update(data: Entity, options: UpdateOptions): Promise<PersistanceUpdateResult<Entity>>;
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 = BaseOptions;
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 CreateOptions = BaseOptions;
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 BaseOptions, PersistanceUpdateOptions {
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 { repository, store } = this;
24
- const actualOptions = Object.assign(options || {});
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
- return (yield repository.save(data, { transactionId }));
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
- create(data, options) {
42
+ count(options, privateOptions) {
36
43
  return __awaiter(this, void 0, void 0, function* () {
37
- const { repository, store } = this;
38
- const actualOptions = Object.assign(options || {});
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
- return (yield repository.save(data, { transactionId }))[0];
47
- });
48
- }
49
- count(options) {
50
- return __awaiter(this, void 0, void 0, function* () {
51
- const { repository } = this;
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 { items: itemsToDelete } = yield this.find({ filters, findAll: true, requirePrimaryKeys: true });
67
- const results = yield repository.save(itemsToDelete, { delete: true, transactionId });
68
- return { count: results.length };
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 { filters, page: optPage, perPage: optPerPage, findAll: optFindAll } = options;
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 this.repository.find({ filters, findAll, page, perPage });
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 if (items.length === perPage + 1) {
87
- items.pop();
88
- findResults.more = true;
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 items = yield this.repository.find({ filters, page: 1, perPage: 1 });
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
- update(data, options) {
161
+ save(data, options) {
102
162
  return __awaiter(this, void 0, void 0, function* () {
103
- const { repository, store } = this;
104
- const { filters, forceTransaction, transactionId } = options;
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 itemToUpdate = yield this.findOne({ filters, requirePrimaryKeys: true });
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
- return { count: 0, items: [] };
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
- const updateResult = yield repository.save((0, ramda_1.mergeDeepRight)(itemToUpdate, data), { transactionId });
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":"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"}
1
+ {"version":3,"file":"redis.entity.service.js","sourceRoot":"","sources":["../../src/entityService/redis.entity.service.ts"],"names":[],"mappings":"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"}
@@ -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;QACnD,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;AAnBD,kCAmBC"}
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":";;;AAkBA,IAAY,sBASX;AATD,WAAY,sBAAsB;IAEhC,6CAAmB,CAAA;IAEnB,2CAAiB,CAAA;IAEjB,qDAA2B,CAAA;IAE3B,2CAAiB,CAAA;AACnB,CAAC,EATW,sBAAsB,sCAAtB,sBAAsB,QASjC;AA4BD,IAAY,qBAOX;AAPD,WAAY,qBAAqB;IAE/B,gDAAuB,CAAA;IAEvB,kDAAyB,CAAA;IAEzB,0CAAiB,CAAA;AACnB,CAAC,EAPW,qBAAqB,qCAArB,qBAAqB,QAOhC"}
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: definitions_1.Constants.REDIS_CLIENT_PERSISTANCE_MODULE_NAME, useValue: persistanceModuleName },
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;AAGvD,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,uBAAS,CAAC,oCAAoC,EAAE,QAAQ,EAAE,qBAAqB,EAAE;gBAC5F;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
+ {"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 { EntitySchema, PrepareOptions, RepositoryFindOptions, SaveOptions } from './redis.repository.definitions';
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 persistanceModuleName: string;
7
+ protected _persistanceModuleName: string;
7
8
  protected schema: EntitySchema;
8
9
  protected store: RedisStoreService;
9
- protected primaryKeys: string[];
10
+ protected _columnNames: string[];
11
+ protected _primaryKeys: string[];
12
+ protected defaultTTL?: number;
10
13
  protected storeDelimiter: string;
11
- constructor(configProvider: ConfigProviderService, persistanceModuleName: string, schema: EntitySchema, store: RedisStoreService);
12
- find<ResultItem extends Entity | string = Entity>(options: RepositoryFindOptions): Promise<ResultItem[]>;
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;