@node-c/persistance-redis 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.
@@ -35,35 +35,59 @@ const redis_repository_definitions_1 = require("./redis.repository.definitions")
35
35
  const definitions_1 = require("../common/definitions");
36
36
  const store_1 = require("../store");
37
37
  let RedisRepositoryService = class RedisRepositoryService {
38
- constructor(configProvider, persistanceModuleName, schema, store) {
38
+ get columnNames() {
39
+ return this._columnNames;
40
+ }
41
+ get persistanceModuleName() {
42
+ return this._persistanceModuleName;
43
+ }
44
+ get primaryKeys() {
45
+ return this._primaryKeys;
46
+ }
47
+ constructor(configProvider, _persistanceModuleName, schema, store) {
39
48
  this.configProvider = configProvider;
40
- this.persistanceModuleName = persistanceModuleName;
49
+ this._persistanceModuleName = _persistanceModuleName;
41
50
  this.schema = schema;
42
51
  this.store = store;
43
- const { storeDelimiter } = configProvider.config.persistance[persistanceModuleName];
52
+ const { defaultTTL, storeDelimiter, settingsPerEntity } = configProvider.config.persistance[_persistanceModuleName];
44
53
  const { columns, name: entityName } = schema;
54
+ const columnNames = [];
45
55
  const primaryKeys = [];
56
+ const validationSchemaProperties = {};
57
+ this.defaultTTL = (settingsPerEntity === null || settingsPerEntity === void 0 ? void 0 : settingsPerEntity[entityName].ttl) || defaultTTL;
46
58
  for (const columnName in columns) {
47
- const { primary, primaryOrder } = columns[columnName];
59
+ const { primary, primaryOrder, validationProperties } = columns[columnName];
60
+ columnNames.push(columnName);
48
61
  if (primary) {
49
62
  if (typeof primaryOrder === 'undefined') {
50
63
  throw new core_1.ApplicationError(`At schema "${entityName}", column "${columnName}": the field "primaryOrder" is required for primary key columns.`);
51
64
  }
52
65
  primaryKeys.push(columnName);
53
66
  }
67
+ if (validationProperties) {
68
+ validationSchemaProperties[columnName] = validationProperties;
69
+ }
54
70
  }
55
- this.primaryKeys = primaryKeys.sort((columnName0, columnName1) => columns[columnName0].primaryOrder - columns[columnName1].primaryOrder);
71
+ this._columnNames = columnNames;
72
+ this._primaryKeys = primaryKeys.sort((columnName0, columnName1) => columns[columnName0].primaryOrder - columns[columnName1].primaryOrder);
56
73
  this.storeDelimiter = storeDelimiter || definitions_1.Constants.DEFAULT_STORE_DELIMITER;
74
+ this.validationSchemaProperties = validationSchemaProperties;
75
+ (0, class_validator_1.registerSchema)({ name: entityName, properties: validationSchemaProperties });
57
76
  }
58
- find(options) {
77
+ find(options, privateOptions) {
59
78
  return __awaiter(this, void 0, void 0, function* () {
60
79
  const { primaryKeys, schema, store, storeDelimiter } = this;
61
80
  const { name: entityName } = schema;
62
- const { exactSearch, filters, findAll, page, perPage, withValues: optWithValues } = options;
81
+ const { filters, findAll, page, perPage, withValues: optWithValues } = options;
82
+ const { requirePrimaryKeys } = privateOptions || {};
63
83
  const paginationOptions = {};
84
+ const primaryKeyFiltersToForceCheck = [];
64
85
  const withValues = typeof optWithValues === 'undefined' || optWithValues === true ? true : false;
86
+ let count = 0;
87
+ let hasNonPrimaryKeyFilters = false;
65
88
  let storeEntityKey = '';
66
- if (filters) {
89
+ if (filters && Object.keys(filters).length) {
90
+ let primaryKeyFiltersCount = 0;
67
91
  storeEntityKey =
68
92
  storeDelimiter +
69
93
  primaryKeys
@@ -72,17 +96,36 @@ let RedisRepositoryService = class RedisRepositoryService {
72
96
  if (typeof value !== 'undefined' &&
73
97
  typeof value !== 'object' &&
74
98
  (typeof value !== 'string' || value.length)) {
99
+ primaryKeyFiltersCount++;
75
100
  return value;
76
101
  }
77
- if (exactSearch) {
102
+ if (value instanceof Array) {
103
+ const finalValues = [];
104
+ value.forEach(valueItem => {
105
+ if ((typeof valueItem === 'string' && !valueItem.length) ||
106
+ (typeof valueItem !== 'string' && typeof valueItem !== 'number')) {
107
+ return;
108
+ }
109
+ finalValues.push(valueItem);
110
+ });
111
+ if (finalValues.length) {
112
+ hasNonPrimaryKeyFilters = true;
113
+ primaryKeyFiltersToForceCheck.push(field);
114
+ return '*';
115
+ }
116
+ }
117
+ if (requirePrimaryKeys) {
78
118
  throw new core_1.ApplicationError(`[RedisRepositoryService ${entityName}][Find Error]: ` +
79
- `The primary key field ${field} is required when exactSearch is set to true.`);
119
+ `The primary key field ${field} is required when requirePrimaryKeys is set to true.`);
80
120
  }
81
121
  return '*';
82
122
  })
83
123
  .join(storeDelimiter);
124
+ if (!hasNonPrimaryKeyFilters) {
125
+ hasNonPrimaryKeyFilters = primaryKeyFiltersCount === Object.keys(filters).length;
126
+ }
84
127
  if (!findAll) {
85
- const count = perPage || 100;
128
+ count = perPage || 100;
86
129
  paginationOptions.count = count;
87
130
  paginationOptions.cursor = (page ? page - 1 : 0) * count;
88
131
  }
@@ -91,7 +134,59 @@ let RedisRepositoryService = class RedisRepositoryService {
91
134
  throw new core_1.ApplicationError(`[RedisRepositoryService ${entityName}][Error]: ` +
92
135
  'Either filters or findAll is required when calling the find method.');
93
136
  }
94
- return yield store.scan(`${entityName}${storeEntityKey}`, Object.assign(Object.assign({}, paginationOptions), { scanAll: findAll, withValues }));
137
+ if (findAll) {
138
+ const { values: initialResults } = yield store.scan(`${entityName}${storeEntityKey}`, Object.assign(Object.assign({}, paginationOptions), { parseToJSON: true, scanAll: findAll, withValues }));
139
+ if (!hasNonPrimaryKeyFilters) {
140
+ return initialResults;
141
+ }
142
+ return initialResults.filter(item => {
143
+ let filterResult = true;
144
+ for (const key in filters) {
145
+ if (primaryKeys.includes(key) && !primaryKeyFiltersToForceCheck.includes(key)) {
146
+ continue;
147
+ }
148
+ const filterValue = filters[key];
149
+ const itemValue = item[key];
150
+ if (filterValue instanceof Array) {
151
+ if (!filterValue.includes(itemValue)) {
152
+ filterResult = false;
153
+ break;
154
+ }
155
+ continue;
156
+ }
157
+ if (filterValue !== itemValue) {
158
+ filterResult = false;
159
+ break;
160
+ }
161
+ }
162
+ return filterResult;
163
+ });
164
+ }
165
+ let results = [];
166
+ while (results.length < count) {
167
+ const { cursor: newCursor, values: innerResults } = yield store.scan(`${entityName}${storeEntityKey}`, Object.assign(Object.assign({}, paginationOptions), { parseToJSON: true, scanAll: false, withValues }));
168
+ results = results.concat(innerResults.filter(item => {
169
+ let filterResult = true;
170
+ for (const key in filters) {
171
+ if (primaryKeys.includes(key)) {
172
+ continue;
173
+ }
174
+ if (item[key] !== filters[key]) {
175
+ filterResult = false;
176
+ break;
177
+ }
178
+ }
179
+ return filterResult;
180
+ }));
181
+ if (newCursor === 0) {
182
+ break;
183
+ }
184
+ paginationOptions.cursor = newCursor;
185
+ }
186
+ if (results.length > count) {
187
+ results = results.slice(0, count);
188
+ }
189
+ return results;
95
190
  });
96
191
  }
97
192
  prepare(data, options) {
@@ -151,7 +246,7 @@ let RedisRepositoryService = class RedisRepositoryService {
151
246
  storeEntityKey += `${value}`;
152
247
  }
153
248
  if (optValidate) {
154
- const validationErrors = yield (0, class_validator_1.validate)(data);
249
+ const validationErrors = yield (0, class_validator_1.validate)(entityName, data);
155
250
  if (validationErrors.length) {
156
251
  throw new core_1.ApplicationError(`[RedisRepositoryService ${entityName}][Validation Error]: ${validationErrors.join('\n')}`);
157
252
  }
@@ -178,42 +273,47 @@ let RedisRepositoryService = class RedisRepositoryService {
178
273
  }
179
274
  save(data, options) {
180
275
  return __awaiter(this, void 0, void 0, function* () {
181
- const { schema, store, storeDelimiter } = this;
276
+ const { defaultTTL, schema, store, storeDelimiter } = this;
182
277
  const { name: entityName } = schema;
183
- const { delete: optDelete, onConflict, transactionId } = options || {};
278
+ const { delete: optDelete, onConflict, transactionId, ttl, validate } = options || {};
184
279
  const actualData = data instanceof Array ? data : [data];
185
280
  if (optDelete) {
186
281
  const prepareOptions = {
187
282
  onConflict: redis_repository_definitions_1.SaveOptionsOnConflict.DoNothing,
188
- validate: true
283
+ validate: false
189
284
  };
190
285
  const deleteKeys = [];
191
286
  for (const i in actualData) {
192
- deleteKeys.push((yield this.prepare(actualData[i], prepareOptions)).storeEntityKey);
287
+ deleteKeys.push(`${entityName}${storeDelimiter}${(yield this.prepare(actualData[i], prepareOptions)).storeEntityKey}`);
288
+ }
289
+ if (deleteKeys.length) {
290
+ yield store.delete(deleteKeys, { transactionId });
193
291
  }
194
- yield store.delete(deleteKeys, { transactionId });
195
292
  return deleteKeys;
196
293
  }
197
294
  const prepareOptions = {
198
295
  generatePrimaryKeys: true,
199
296
  onConflict,
200
- validate: true
297
+ validate
201
298
  };
202
299
  const results = [];
203
300
  for (const i in actualData) {
204
301
  const { data: validatedEntity, storeEntityKey } = yield this.prepare(actualData[i], prepareOptions);
205
- yield store.set(`${entityName}${storeDelimiter}${storeEntityKey}`, validatedEntity, { transactionId });
302
+ yield store.set(`${entityName}${storeDelimiter}${storeEntityKey}`, validatedEntity, {
303
+ transactionId,
304
+ ttl: ttl || defaultTTL
305
+ });
206
306
  results.push(validatedEntity);
207
307
  }
208
308
  return results;
209
309
  });
210
310
  }
211
311
  };
212
- RedisRepositoryService = __decorate([
312
+ exports.RedisRepositoryService = RedisRepositoryService;
313
+ exports.RedisRepositoryService = RedisRepositoryService = __decorate([
213
314
  (0, common_1.Injectable)(),
214
- __param(1, (0, common_1.Inject)(definitions_1.Constants.REDIS_CLIENT_PERSISTANCE_MODULE_NAME)),
315
+ __param(1, (0, common_1.Inject)(core_1.Constants.PERSISTANCE_MODULE_NAME)),
215
316
  __param(2, (0, common_1.Inject)(definitions_1.Constants.REDIS_REPOSITORY_SCHEMA)),
216
317
  __metadata("design:paramtypes", [core_1.ConfigProviderService, String, Object, store_1.RedisStoreService])
217
318
  ], RedisRepositoryService);
218
- exports.RedisRepositoryService = RedisRepositoryService;
219
319
  //# sourceMappingURL=redis.repository.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"redis.repository.service.js","sourceRoot":"","sources":["../../src/repository/redis.repository.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAoD;AAEpD,uCAAkG;AAElG,qDAA2C;AAC3C,0DAAkC;AAClC,iCAAuC;AACvC,+BAAkC;AAElC,iFAOwC;AAExC,uDAAkD;AAClD,oCAA6C;AAOtC,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAIjC,YACY,cAAqC,EAErC,qBAA6B,EAG7B,MAAoB,EAEpB,KAAwB;QAPxB,mBAAc,GAAd,cAAc,CAAuB;QAErC,0BAAqB,GAArB,qBAAqB,CAAQ;QAG7B,WAAM,GAAN,MAAM,CAAc;QAEpB,UAAK,GAAL,KAAK,CAAmB;QAElC,MAAM,EAAE,cAAc,EAAE,GAAG,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,qBAAqB,CAA8B,CAAC;QACjH,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAC7C,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,KAAK,MAAM,UAAU,IAAI,OAAO,EAAE;YAChC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;YACtD,IAAI,OAAO,EAAE;gBACX,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE;oBACvC,MAAM,IAAI,uBAAgB,CACxB,cAAc,UAAU,cAAc,UAAU,kEAAkE,CACnH,CAAC;iBACH;gBACD,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC9B;SACF;QACD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,IAAI,CACjC,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,YAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,YAAa,CACtG,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,cAAc,IAAI,uBAAS,CAAC,uBAAuB,CAAC;IAC5E,CAAC;IAEK,IAAI,CAA8C,OAA8B;;YACpF,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;YAC5D,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;YACpC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;YAC5F,MAAM,iBAAiB,GAAwC,EAAE,CAAC;YAClE,MAAM,UAAU,GAAG,OAAO,aAAa,KAAK,WAAW,IAAI,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;YACjG,IAAI,cAAc,GAAG,EAAE,CAAC;YACxB,IAAI,OAAO,EAAE;gBACX,cAAc;oBACZ,cAAc;wBACd,WAAW;6BACR,GAAG,CAAC,KAAK,CAAC,EAAE;4BACX,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;4BAC7B,IACE,OAAO,KAAK,KAAK,WAAW;gCAC5B,OAAO,KAAK,KAAK,QAAQ;gCACzB,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,EAC3C;gCACA,OAAO,KAAK,CAAC;6BACd;4BACD,IAAI,WAAW,EAAE;gCACf,MAAM,IAAI,uBAAgB,CACxB,2BAA2B,UAAU,iBAAiB;oCACpD,yBAAyB,KAAK,+CAA+C,CAChF,CAAC;6BACH;4BACD,OAAO,GAAG,CAAC;wBACb,CAAC,CAAC;6BACD,IAAI,CAAC,cAAc,CAAC,CAAC;gBAC1B,IAAI,CAAC,OAAO,EAAE;oBACZ,MAAM,KAAK,GAAG,OAAO,IAAI,GAAG,CAAC;oBAC7B,iBAAiB,CAAC,KAAK,GAAG,KAAK,CAAC;oBAChC,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;iBAC1D;aACF;iBAAM,IAAI,CAAC,OAAO,EAAE;gBACnB,MAAM,IAAI,uBAAgB,CACxB,2BAA2B,UAAU,YAAY;oBAC/C,qEAAqE,CACxE,CAAC;aACH;YACD,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,GAAG,cAAc,EAAE,kCAAO,iBAAiB,KAAE,OAAO,EAAE,OAAO,EAAE,UAAU,IAAG,CAAC;QACpH,CAAC;KAAA;IAEe,OAAO,CAAC,IAAY,EAAE,OAAwB;;YAC5D,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;YAC5D,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;YAC7C,MAAM,GAAG,GAAG,OAAO,IAAK,EAAqB,CAAC;YAC9C,MAAM,EAAE,mBAAmB,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC;YACtF,MAAM,UAAU,GAAG,aAAa,IAAI,oDAAqB,CAAC,UAAU,CAAC;YACrE,IAAI,gBAAgB,GAAG,IAAI,CAAC;YAC5B,IAAI,YAAY,GAAG,mBAAS,CAAC,MAAM,CAAC,IAAK,CAAC,CAAC,IAAI,EAA6B,CAAC;YAC7E,IAAI,cAAc,GAAG,EAAE,CAAC;YACxB,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;gBACpC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;gBAChD,MAAM,KAAK,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;gBACvC,MAAM,WAAW,GAAG,CAAC,CACnB,OAAO,KAAK,KAAK,WAAW;oBAC5B,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC5C,OAAO,KAAK,KAAK,QAAQ,CAC1B,CAAC;gBACF,IAAI,SAAS,EAAE;oBACb,IAAI,WAAW,EAAE;wBACf,cAAc,IAAI,GAAG,KAAK,EAAE,CAAC;wBAC7B,SAAS;qBACV;oBACD,IAAI,gBAAgB,EAAE;wBACpB,gBAAgB,GAAG,KAAK,CAAC;qBAC1B;oBACD,IAAI,CAAC,mBAAmB,EAAE;wBACxB,MAAM,IAAI,uBAAgB,CACxB,2BAA2B,UAAU,uBAAuB;4BAC1D,+CAA+C,UAAU,gDAAgD,CAC5G,CAAC;qBACH;oBACD,IAAI,IAAI,KAAK,qDAAsB,CAAC,OAAO,EAAE;wBAC3C,IAAI,eAAe,GACjB,CAAC,MAAM,KAAK,CAAC,GAAG,CAAS,GAAG,UAAU,GAAG,cAAc,YAAY,cAAc,GAAG,UAAU,EAAE,EAAE;4BAChG,WAAW,EAAE,IAAI;yBAClB,CAAC,CAAC,IAAI,CAAC,CAAC;wBACX,eAAe,EAAE,CAAC;wBAClB,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,GAAG,cAAc,YAAY,cAAc,GAAG,UAAU,EAAE,EAAE,eAAe,CAAC,CAAC;wBAC1G,YAAY,CAAC,UAAU,CAAC,GAAG,eAAe,CAAC;wBAC3C,cAAc,IAAI,GAAG,eAAe,GAAG,cAAc,EAAE,CAAC;wBACxD,SAAS;qBACV;oBACD,IAAI,IAAI,KAAK,qDAAsB,CAAC,MAAM,EAAE;wBAC1C,IAAI,QAAQ,GAAG,IAAA,SAAI,GAAE,CAAC;wBACtB,IAAI,cAAc,KAAK,GAAG,EAAE;4BAC1B,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;yBACxC;wBACD,YAAY,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;wBACpC,cAAc,IAAI,GAAG,QAAQ,GAAG,cAAc,EAAE,CAAC;wBACjD,SAAS;qBACV;oBACD,MAAM,IAAI,uBAAgB,CACxB,2BAA2B,UAAU,uBAAuB;wBAC1D,sBAAsB,IAAI,mBAAmB,UAAU,EAAE,CAC5D,CAAC;iBACH;gBACD,IAAI,CAAC,WAAW,EAAE;oBAChB,MAAM,IAAI,uBAAgB,CACxB,2BAA2B,UAAU,uBAAuB;wBAC1D,mDAAmD,UAAU,EAAE,CAClE,CAAC;iBACH;gBACD,cAAc,IAAI,GAAG,KAAK,EAAE,CAAC;aAC9B;YACD,IAAI,WAAW,EAAE;gBACf,MAAM,gBAAgB,GAAG,MAAM,IAAA,0BAAQ,EAAC,IAA+B,CAAC,CAAC;gBACzE,IAAI,gBAAgB,CAAC,MAAM,EAAE;oBAC3B,MAAM,IAAI,uBAAgB,CACxB,2BAA2B,UAAU,wBAAwB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC3F,CAAC;iBACH;aACF;YAED,cAAc,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YAC9E,IAAI,UAAU,KAAK,oDAAqB,CAAC,SAAS,IAAI,gBAAgB,EAAE;gBACtE,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC,GAAG,CAAqB,cAAc,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;gBAClG,IAAI,aAAa,EAAE;oBACjB,IAAI,UAAU,KAAK,oDAAqB,CAAC,UAAU,EAAE;wBACnD,MAAM,IAAI,uBAAgB,CACxB,2BAA2B,UAAU,oDAAoD,cAAc,GAAG,CAC3G,CAAC;qBACH;oBACD,IAAI,UAAU,KAAK,oDAAqB,CAAC,MAAM,EAAE;wBAC/C,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAA4B,CAAC;wBAC1E,YAAY,GAAG,IAAA,sBAAc,EAAC,YAAY,EAAE,YAAY,CAAC,CAAC;qBAC3D;yBAAM;wBACL,MAAM,IAAI,uBAAgB,CACxB,2BAA2B,UAAU,sBAAsB;4BACzD,kBAAkB,UAAU,4BAA4B,CAC3D,CAAC;qBACH;iBACF;aACF;YACD,OAAO,EAAE,IAAI,EAAE,YAAiC,EAAE,cAAc,EAAE,CAAC;QACrE,CAAC;KAAA;IAEK,IAAI,CACR,IAAuB,EACvB,OAAqB;;YAErB,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;YAC/C,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;YACpC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,OAAO,IAAK,EAAkB,CAAC;YACxF,MAAM,UAAU,GAAG,IAAI,YAAY,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,SAAS,EAAE;gBACb,MAAM,cAAc,GAAmB;oBACrC,UAAU,EAAE,oDAAqB,CAAC,SAAS;oBAC3C,QAAQ,EAAE,IAAI;iBACf,CAAC;gBACF,MAAM,UAAU,GAAa,EAAE,CAAC;gBAChC,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE;oBAC1B,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;iBACrF;gBACD,MAAM,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;gBAClD,OAAO,UAA0B,CAAC;aACnC;YACD,MAAM,cAAc,GAAmB;gBACrC,mBAAmB,EAAE,IAAI;gBACzB,UAAU;gBACV,QAAQ,EAAE,IAAI;aACf,CAAC;YACF,MAAM,OAAO,GAAa,EAAE,CAAC;YAC7B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE;gBAC1B,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,cAAc,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;gBACpG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,GAAG,cAAc,GAAG,cAAc,EAAE,EAAE,eAAe,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;gBACvG,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aAC/B;YACD,OAAO,OAAuB,CAAC;QACjC,CAAC;KAAA;CACF,CAAA;AA9MY,sBAAsB;IADlC,IAAA,mBAAU,GAAE;IAOR,WAAA,IAAA,eAAM,EAAC,uBAAS,CAAC,oCAAoC,CAAC,CAAA;IAEtD,WAAA,IAAA,eAAM,EAAC,uBAAS,CAAC,uBAAuB,CAAC,CAAA;qCAHhB,4BAAqB,kBAO9B,yBAAiB;GAZzB,sBAAsB,CA8MlC;AA9MY,wDAAsB"}
1
+ {"version":3,"file":"redis.repository.service.js","sourceRoot":"","sources":["../../src/repository/redis.repository.service.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,9 @@
1
- import { RedisClientType } from 'redis';
2
1
  export interface GetOptions {
3
2
  parseToJSON?: boolean;
4
3
  }
5
- export type RedisClientScanMethod = (_key: string, _cursor: number, _options?: {
6
- count?: number;
7
- match: string;
8
- }) => Promise<{
9
- cursor: number;
10
- keys?: string[];
11
- tuples?: {
12
- field: string;
13
- value: string;
14
- }[];
15
- }>;
16
4
  export interface RedisStoreModuleOptions {
17
5
  persistanceModuleName: string;
18
6
  }
19
- export type RedisTransaction = ReturnType<RedisClientType['multi']>;
20
7
  export interface ScanOptions {
21
8
  count?: number;
22
9
  cursor?: number;
@@ -26,6 +13,7 @@ export interface ScanOptions {
26
13
  }
27
14
  export interface SetOptions {
28
15
  transactionId?: string;
16
+ ttl?: number;
29
17
  }
30
18
  export interface StoreDeleteOptions {
31
19
  transactionId?: string;
@@ -36,15 +36,15 @@ let RedisStoreModule = RedisStoreModule_1 = class RedisStoreModule {
36
36
  }),
37
37
  inject: [core_1.ConfigProviderService]
38
38
  },
39
- { provide: definitions_1.Constants.REDIS_CLIENT_PERSISTANCE_MODULE_NAME, useValue: persistanceModuleName },
39
+ { provide: core_1.Constants.PERSISTANCE_MODULE_NAME, useValue: persistanceModuleName },
40
40
  { provide: serviceToken, useClass: redis_store_service_1.RedisStoreService }
41
41
  ],
42
42
  exports: [{ provide: serviceToken, useClass: redis_store_service_1.RedisStoreService }]
43
43
  };
44
44
  }
45
45
  };
46
- RedisStoreModule = RedisStoreModule_1 = __decorate([
46
+ exports.RedisStoreModule = RedisStoreModule;
47
+ exports.RedisStoreModule = RedisStoreModule = RedisStoreModule_1 = __decorate([
47
48
  (0, common_1.Module)({})
48
49
  ], RedisStoreModule);
49
- exports.RedisStoreModule = RedisStoreModule;
50
50
  //# sourceMappingURL=redis.store.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"redis.store.module.js","sourceRoot":"","sources":["../../src/store/redis.store.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,2CAAuD;AAEvD,uCAAqD;AAGrD,+DAA0D;AAE1D,uDAAkD;AAG3C,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,OAAgC;QAC9C,MAAM,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC;QAC1C,MAAM,YAAY,GAAG,GAAG,qBAAqB,GAAG,uBAAS,CAAC,iCAAiC,EAAE,CAAC;QAC9F,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,kBAAgB;YACxB,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,uBAAS,CAAC,YAAY;oBAC/B,UAAU,EAAE,CAAO,cAAqC,EAAE,EAAE;wBAC1D,OAAO,MAAM,uCAAiB,CAAC,YAAY,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,qBAAqB,EAAE,CAAC,CAAC;oBAChG,CAAC,CAAA;oBACD,MAAM,EAAE,CAAC,4BAAqB,CAAC;iBAChC;gBACD,EAAE,OAAO,EAAE,uBAAS,CAAC,oCAAoC,EAAE,QAAQ,EAAE,qBAAqB,EAAE;gBAC5F,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,uCAAiB,EAAE;aACvD;YACD,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,uCAAiB,EAAE,CAAC;SAClE,CAAC;IACJ,CAAC;CACF,CAAA;AArBY,gBAAgB;IAD5B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,gBAAgB,CAqB5B;AArBY,4CAAgB"}
1
+ {"version":3,"file":"redis.store.module.js","sourceRoot":"","sources":["../../src/store/redis.store.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,2CAAuD;AAEvD,uCAAiF;AAGjF,+DAA0D;AAE1D,uDAAkD;AAG3C,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,OAAgC;QAC9C,MAAM,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC;QAC1C,MAAM,YAAY,GAAG,GAAG,qBAAqB,GAAG,uBAAS,CAAC,iCAAiC,EAAE,CAAC;QAC9F,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,kBAAgB;YACxB,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,uBAAS,CAAC,YAAY;oBAC/B,UAAU,EAAE,CAAO,cAAqC,EAAE,EAAE;wBAC1D,OAAO,MAAM,uCAAiB,CAAC,YAAY,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,qBAAqB,EAAE,CAAC,CAAC;oBAChG,CAAC,CAAA;oBACD,MAAM,EAAE,CAAC,4BAAqB,CAAC;iBAChC;gBACD,EAAE,OAAO,EAAE,gBAAa,CAAC,uBAAuB,EAAE,QAAQ,EAAE,qBAAqB,EAAE;gBACnF,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,uCAAiB,EAAE;aACvD;YACD,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,uCAAiB,EAAE,CAAC;SAClE,CAAC;IACJ,CAAC;CACF,CAAA;AArBY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,gBAAgB,CAqB5B"}
@@ -1,20 +1,26 @@
1
1
  import { AppConfig, ConfigProviderService, GenericObject } from '@node-c/core';
2
- import { RedisClientType } from 'redis';
3
- import { GetOptions, RedisTransaction, ScanOptions, SetOptions, StoreDeleteOptions } from './redis.store.definitions';
2
+ import Redis, { ChainableCommander, Cluster } from 'ioredis';
3
+ import { GetOptions, ScanOptions, SetOptions, StoreDeleteOptions } from './redis.store.definitions';
4
4
  export declare class RedisStoreService {
5
5
  protected configProvider: ConfigProviderService;
6
- protected client: RedisClientType;
6
+ protected client: Redis | Cluster;
7
7
  protected persistanceModuleName: string;
8
+ protected defaultTTL?: number;
9
+ protected storeDelimiter: string;
8
10
  protected storeKey: string;
9
- protected transactions: GenericObject<RedisTransaction>;
10
- constructor(configProvider: ConfigProviderService, client: RedisClientType, persistanceModuleName: string);
11
+ protected transactions: GenericObject<ChainableCommander>;
12
+ protected useHashmap: boolean;
13
+ constructor(configProvider: ConfigProviderService, client: Redis | Cluster, persistanceModuleName: string);
11
14
  static createClient(config: AppConfig, options: {
12
15
  persistanceModuleName: string;
13
- }): Promise<RedisClientType>;
16
+ }): Promise<Redis | Cluster>;
14
17
  createTransaction(): string;
15
18
  delete(handle: string | string[], options?: StoreDeleteOptions): Promise<number>;
16
19
  endTransaction(transactionId: string): Promise<void>;
17
20
  get<Value = unknown>(handle: string, options?: GetOptions): Promise<Value>;
18
- scan<Values = unknown[]>(handle: string, options: ScanOptions): Promise<Values>;
21
+ scan<Values = unknown[]>(handle: string, options: ScanOptions): Promise<{
22
+ cursor: number;
23
+ values: Values;
24
+ }>;
19
25
  set<Entry = unknown>(handle: string, entry: Entry, options?: SetOptions): Promise<void>;
20
26
  }