@node-c/data-redis 1.0.0-alpha62

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.
Files changed (83) hide show
  1. package/LICENSE +1 -0
  2. package/README.md +4 -0
  3. package/coverage/base.css +224 -0
  4. package/coverage/block-navigation.js +87 -0
  5. package/coverage/clover.xml +580 -0
  6. package/coverage/common/definitions/common.constants.ts.html +121 -0
  7. package/coverage/common/definitions/index.html +131 -0
  8. package/coverage/common/definitions/index.ts.html +88 -0
  9. package/coverage/coverage-final.json +13 -0
  10. package/coverage/entityService/index.html +131 -0
  11. package/coverage/entityService/index.ts.html +91 -0
  12. package/coverage/entityService/redis.entity.service.ts.html +454 -0
  13. package/coverage/favicon.png +0 -0
  14. package/coverage/index.html +176 -0
  15. package/coverage/module/index.html +131 -0
  16. package/coverage/module/index.ts.html +91 -0
  17. package/coverage/module/redis.module.ts.html +169 -0
  18. package/coverage/prettify.css +1 -0
  19. package/coverage/prettify.js +2 -0
  20. package/coverage/repository/index.html +146 -0
  21. package/coverage/repository/index.ts.html +94 -0
  22. package/coverage/repository/redis.repository.module.ts.html +181 -0
  23. package/coverage/repository/redis.repository.service.ts.html +784 -0
  24. package/coverage/sort-arrow-sprite.png +0 -0
  25. package/coverage/sorter.js +196 -0
  26. package/coverage/store/index.html +146 -0
  27. package/coverage/store/index.ts.html +94 -0
  28. package/coverage/store/redis.store.module.ts.html +181 -0
  29. package/coverage/store/redis.store.service.ts.html +586 -0
  30. package/dist/common/definitions/common.constants.d.ts +6 -0
  31. package/dist/common/definitions/common.constants.js +11 -0
  32. package/dist/common/definitions/common.constants.js.map +1 -0
  33. package/dist/common/definitions/index.d.ts +1 -0
  34. package/dist/common/definitions/index.js +18 -0
  35. package/dist/common/definitions/index.js.map +1 -0
  36. package/dist/entityService/index.d.ts +2 -0
  37. package/dist/entityService/index.js +19 -0
  38. package/dist/entityService/index.js.map +1 -0
  39. package/dist/entityService/redis.entity.service.d.ts +19 -0
  40. package/dist/entityService/redis.entity.service.definitions.d.ts +44 -0
  41. package/dist/entityService/redis.entity.service.definitions.js +3 -0
  42. package/dist/entityService/redis.entity.service.definitions.js.map +1 -0
  43. package/dist/entityService/redis.entity.service.js +231 -0
  44. package/dist/entityService/redis.entity.service.js.map +1 -0
  45. package/dist/index.d.ts +5 -0
  46. package/dist/index.js +22 -0
  47. package/dist/index.js.map +1 -0
  48. package/dist/module/index.d.ts +2 -0
  49. package/dist/module/index.js +19 -0
  50. package/dist/module/index.js.map +1 -0
  51. package/dist/module/redis.module.d.ts +5 -0
  52. package/dist/module/redis.module.definitions.d.ts +16 -0
  53. package/dist/module/redis.module.definitions.js +3 -0
  54. package/dist/module/redis.module.definitions.js.map +1 -0
  55. package/dist/module/redis.module.js +30 -0
  56. package/dist/module/redis.module.js.map +1 -0
  57. package/dist/repository/index.d.ts +3 -0
  58. package/dist/repository/index.js +20 -0
  59. package/dist/repository/index.js.map +1 -0
  60. package/dist/repository/redis.repository.definitions.d.ts +74 -0
  61. package/dist/repository/redis.repository.definitions.js +20 -0
  62. package/dist/repository/redis.repository.definitions.js.map +1 -0
  63. package/dist/repository/redis.repository.module.d.ts +5 -0
  64. package/dist/repository/redis.repository.module.js +43 -0
  65. package/dist/repository/redis.repository.module.js.map +1 -0
  66. package/dist/repository/redis.repository.service.d.ts +39 -0
  67. package/dist/repository/redis.repository.service.js +496 -0
  68. package/dist/repository/redis.repository.service.js.map +1 -0
  69. package/dist/store/index.d.ts +3 -0
  70. package/dist/store/index.js +20 -0
  71. package/dist/store/index.js.map +1 -0
  72. package/dist/store/redis.store.definitions.d.ts +21 -0
  73. package/dist/store/redis.store.definitions.js +3 -0
  74. package/dist/store/redis.store.definitions.js.map +1 -0
  75. package/dist/store/redis.store.module.d.ts +5 -0
  76. package/dist/store/redis.store.module.js +51 -0
  77. package/dist/store/redis.store.module.js.map +1 -0
  78. package/dist/store/redis.store.service.d.ts +30 -0
  79. package/dist/store/redis.store.service.js +376 -0
  80. package/dist/store/redis.store.service.js.map +1 -0
  81. package/package.json +27 -0
  82. package/tsconfig.build.json +9 -0
  83. package/tsconfig.json +9 -0
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./redis.entity.service.definitions"), exports);
18
+ __exportStar(require("./redis.entity.service"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/entityService/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qEAAmD;AACnD,yDAAuC"}
@@ -0,0 +1,19 @@
1
+ import { AppConfigCommonDataNoSQLEntityServiceSettings, ConfigProviderService, DataDeleteResult, DataEntityService, DataFindResults, DataUpdateResult } from '@node-c/core';
2
+ import { BulkCreateOptions, BulkCreatePrivateOptions, CountOptions, CountPrivateOptions, CreateOptions, CreatePrivateOptions, DeleteOptions, DeletePrivateOptions, FindOneOptions, FindOnePrivateOptions, FindOptions, FindPrivateOptions, ServiceSaveOptions, UpdateOptions, UpdatePrivateOptions } from './redis.entity.service.definitions';
3
+ import { RedisRepositoryService } from '../repository';
4
+ import { RedisStoreService } from '../store';
5
+ export declare class RedisEntityService<Entity extends object> extends DataEntityService<Entity> {
6
+ protected configProvider: ConfigProviderService;
7
+ protected repository: RedisRepositoryService<Entity>;
8
+ protected store: RedisStoreService;
9
+ protected settings: AppConfigCommonDataNoSQLEntityServiceSettings;
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<DataDeleteResult<Entity>>;
15
+ find(options: FindOptions, privateOptions?: FindPrivateOptions): Promise<DataFindResults<Entity>>;
16
+ findOne(options: FindOneOptions, privateOptions?: FindOnePrivateOptions): Promise<Entity | null>;
17
+ protected save<Data extends Partial<Entity> | Partial<Entity>[], ReturnData = unknown>(data: Data, options: ServiceSaveOptions): Promise<ReturnData>;
18
+ update(data: Entity, options: UpdateOptions, privateOptions?: UpdatePrivateOptions): Promise<DataUpdateResult<Entity>>;
19
+ }
@@ -0,0 +1,44 @@
1
+ import { DataBulkCreatePrivateOptions, DataCountOptions, DataCountPrivateOptions, DataCreatePrivateOptions, DataDeleteOptions, DataDeletePrivateOptions, DataFindOneOptions, DataFindOnePrivateOptions, DataFindOptions, DataFindPrivateOptions, DataUpdateOptions, DataUpdatePrivateOptions } from '@node-c/core';
2
+ export interface BaseCreateOptions extends BaseOptions {
3
+ ttl?: number;
4
+ }
5
+ export interface BaseOptions {
6
+ forceTransaction?: boolean;
7
+ transactionId?: string;
8
+ }
9
+ export type BulkCreateOptions = BaseCreateOptions;
10
+ export interface BulkCreatePrivateOptions extends DataBulkCreatePrivateOptions {
11
+ validate?: boolean;
12
+ }
13
+ export interface CountOptions extends BaseOptions, Omit<DataCountOptions, 'withDeleted'> {
14
+ }
15
+ export type CountPrivateOptions = DataCountPrivateOptions;
16
+ export type CreateOptions = BaseCreateOptions;
17
+ export interface CreatePrivateOptions extends DataCreatePrivateOptions {
18
+ validate?: boolean;
19
+ }
20
+ export interface DeleteOptions extends BaseOptions, Omit<DataDeleteOptions, 'softDelete'> {
21
+ }
22
+ export type DeletePrivateOptions = DataDeletePrivateOptions;
23
+ export interface FindOneOptions extends BaseOptions, Omit<DataFindOneOptions, 'include' | 'orderBy' | 'select' | 'selectOperator' | 'withDeleted'> {
24
+ }
25
+ export interface FindOnePrivateOptions extends DataFindOnePrivateOptions {
26
+ requirePrimaryKeys?: boolean;
27
+ }
28
+ export interface FindOptions extends BaseOptions, Omit<DataFindOptions, 'include' | 'orderBy' | 'select' | 'selectOperator' | 'withDeleted'> {
29
+ }
30
+ export interface FindPrivateOptions extends DataFindPrivateOptions {
31
+ requirePrimaryKeys?: boolean;
32
+ }
33
+ export interface ServiceSaveOptions {
34
+ delete?: boolean;
35
+ generatePrimaryKeys: boolean;
36
+ processObjectAllowedFieldsEnabled?: boolean;
37
+ transactionId?: string;
38
+ validate?: boolean;
39
+ }
40
+ export interface UpdateOptions extends BaseCreateOptions, DataUpdateOptions {
41
+ }
42
+ export interface UpdatePrivateOptions extends DataUpdatePrivateOptions {
43
+ validate?: boolean;
44
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=redis.entity.service.definitions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redis.entity.service.definitions.js","sourceRoot":"","sources":["../../src/entityService/redis.entity.service.definitions.ts"],"names":[],"mappings":""}
@@ -0,0 +1,231 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.RedisEntityService = void 0;
16
+ const core_1 = require("@node-c/core");
17
+ const lodash_1 = __importDefault(require("lodash"));
18
+ class RedisEntityService extends core_1.DataEntityService {
19
+ constructor(configProvider, repository, store) {
20
+ super(configProvider, repository.dataModuleName);
21
+ this.configProvider = configProvider;
22
+ this.repository = repository;
23
+ this.store = store;
24
+ }
25
+ bulkCreate(data, options, privateOptions) {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ const { store } = this;
28
+ const actualOptions = options || {};
29
+ const actualPrivateOptions = privateOptions || {};
30
+ const { forceTransaction, transactionId } = actualOptions;
31
+ if (!transactionId && forceTransaction) {
32
+ const tId = store.createTransaction();
33
+ const result = yield this.bulkCreate(data, Object.assign(Object.assign({}, actualOptions), { transactionId: tId }), actualPrivateOptions);
34
+ yield store.endTransaction(tId);
35
+ return result;
36
+ }
37
+ const { processInputAllowedFieldsEnabled, validate } = actualPrivateOptions;
38
+ return yield this.save(data, {
39
+ generatePrimaryKeys: true,
40
+ processObjectAllowedFieldsEnabled: processInputAllowedFieldsEnabled,
41
+ transactionId,
42
+ validate
43
+ });
44
+ });
45
+ }
46
+ count(options, privateOptions) {
47
+ return __awaiter(this, void 0, void 0, function* () {
48
+ const { repository } = this;
49
+ const { filters, findAll } = options;
50
+ const { allowCountWithoutFilters, processFiltersAllowedFieldsEnabled } = privateOptions || {};
51
+ const parsedFilters = (yield this.processObjectAllowedFields(filters || {}, {
52
+ allowedFields: repository.columnNames,
53
+ isEnabled: processFiltersAllowedFieldsEnabled,
54
+ objectType: core_1.ProcessObjectAllowedFieldsType.Filters
55
+ }));
56
+ if (!allowCountWithoutFilters && !Object.keys(parsedFilters).length) {
57
+ throw new core_1.ApplicationError('At least one filter field for counting is required.');
58
+ }
59
+ return (yield repository.find({ filters: parsedFilters, findAll, individualSearch: false })).items.length;
60
+ });
61
+ }
62
+ create(data, options, privateOptions) {
63
+ return __awaiter(this, void 0, void 0, function* () {
64
+ const { store } = this;
65
+ const actualOptions = options || {};
66
+ const actualPrivateOptions = privateOptions || {};
67
+ const { forceTransaction, transactionId } = actualOptions;
68
+ if (!transactionId && forceTransaction) {
69
+ const tId = store.createTransaction();
70
+ const result = yield this.create(data, Object.assign(Object.assign({}, actualOptions), { transactionId: tId }), actualPrivateOptions);
71
+ yield store.endTransaction(tId);
72
+ return result;
73
+ }
74
+ const { processInputAllowedFieldsEnabled, validate } = actualPrivateOptions;
75
+ return yield this.save(data instanceof Array ? data[0] : data, {
76
+ generatePrimaryKeys: false,
77
+ processObjectAllowedFieldsEnabled: processInputAllowedFieldsEnabled,
78
+ transactionId,
79
+ validate
80
+ });
81
+ });
82
+ }
83
+ delete(options, privateOptions) {
84
+ return __awaiter(this, void 0, void 0, function* () {
85
+ const { repository, store } = this;
86
+ const { filters, forceTransaction, returnOriginalItems, transactionId } = options;
87
+ const actualPrivateOptions = privateOptions || {};
88
+ if (!transactionId && forceTransaction) {
89
+ const tId = store.createTransaction();
90
+ const result = yield this.delete(Object.assign(Object.assign({}, options), { transactionId: tId }), actualPrivateOptions);
91
+ yield store.endTransaction(tId);
92
+ return result;
93
+ }
94
+ const { processFiltersAllowedFieldsEnabled, requirePrimaryKeys = true } = actualPrivateOptions;
95
+ const parsedFilters = (yield this.processObjectAllowedFields(filters, {
96
+ allowedFields: repository.columnNames,
97
+ isEnabled: processFiltersAllowedFieldsEnabled,
98
+ objectType: core_1.ProcessObjectAllowedFieldsType.Filters
99
+ }));
100
+ if (!Object.keys(parsedFilters).length) {
101
+ throw new core_1.ApplicationError('At least one filter field for deleting data is required.');
102
+ }
103
+ const { items: itemsToDelete } = yield this.find({ filters, findAll: true }, { requirePrimaryKeys });
104
+ const results = yield this.save(itemsToDelete, {
105
+ delete: true,
106
+ generatePrimaryKeys: false,
107
+ transactionId
108
+ });
109
+ const dataToReturn = { count: results.length };
110
+ if (returnOriginalItems) {
111
+ dataToReturn.originalItems = itemsToDelete;
112
+ }
113
+ return dataToReturn;
114
+ });
115
+ }
116
+ find(options, privateOptions) {
117
+ return __awaiter(this, void 0, void 0, function* () {
118
+ const { repository } = this;
119
+ const { filters, getTotalCount = true, individualSearch, page: optPage, perPage: optPerPage, findAll: optFindAll } = options;
120
+ const { processFiltersAllowedFieldsEnabled, requirePrimaryKeys } = privateOptions || {};
121
+ const page = optPage ? parseInt(optPage, 10) : 1;
122
+ const perPage = optPerPage ? parseInt(optPerPage, 10) : 10;
123
+ const findAll = optFindAll === true || optFindAll === 'true';
124
+ const findResults = { page: 1, perPage: 0, items: [], more: false };
125
+ const parsedFilters = (yield this.processObjectAllowedFields(filters || {}, {
126
+ allowedFields: repository.columnNames,
127
+ isEnabled: processFiltersAllowedFieldsEnabled,
128
+ objectType: core_1.ProcessObjectAllowedFieldsType.Filters
129
+ }));
130
+ if (!findAll) {
131
+ findResults.page = page;
132
+ findResults.perPage = perPage;
133
+ }
134
+ const { items, more } = yield repository.find({ filters: parsedFilters, findAll, individualSearch, page, perPage }, { requirePrimaryKeys });
135
+ if (findAll) {
136
+ findResults.perPage = items.length;
137
+ }
138
+ else {
139
+ findResults.more = more;
140
+ if (getTotalCount) {
141
+ findResults.totalCount = yield this.count(options, { allowCountWithoutFilters: true });
142
+ }
143
+ }
144
+ findResults.items = items;
145
+ return findResults;
146
+ });
147
+ }
148
+ findOne(options, privateOptions) {
149
+ return __awaiter(this, void 0, void 0, function* () {
150
+ const { filters } = options;
151
+ const { processFiltersAllowedFieldsEnabled, requirePrimaryKeys } = privateOptions || {};
152
+ const parsedFilters = (yield this.processObjectAllowedFields(filters, {
153
+ allowedFields: this.repository.columnNames,
154
+ isEnabled: processFiltersAllowedFieldsEnabled,
155
+ objectType: core_1.ProcessObjectAllowedFieldsType.Filters
156
+ }));
157
+ if (!Object.keys(parsedFilters).length) {
158
+ throw new core_1.ApplicationError('At least one filter field is required for the findOne method.');
159
+ }
160
+ const result = yield this.repository.find({ filters, individualSearch: true, page: 1, perPage: 1 }, { requirePrimaryKeys });
161
+ return result.items[0] || null;
162
+ });
163
+ }
164
+ save(data, options) {
165
+ return __awaiter(this, void 0, void 0, function* () {
166
+ const { repository, settings } = this;
167
+ const { validationSettings } = settings;
168
+ const { delete: optDelete, generatePrimaryKeys, processObjectAllowedFieldsEnabled, transactionId, validate } = options || {};
169
+ if (optDelete) {
170
+ return (yield repository.save(data, {
171
+ delete: true,
172
+ generatePrimaryKeys: false,
173
+ transactionId,
174
+ validate: false
175
+ }));
176
+ }
177
+ const dataToSave = yield this.processObjectAllowedFields(data, {
178
+ allowedFields: repository.columnNames,
179
+ isEnabled: processObjectAllowedFieldsEnabled,
180
+ objectType: core_1.ProcessObjectAllowedFieldsType.Input
181
+ });
182
+ return (yield repository.save(dataToSave, {
183
+ generatePrimaryKeys,
184
+ transactionId,
185
+ validate: typeof validate !== 'undefined' ? validate : !!(validationSettings === null || validationSettings === void 0 ? void 0 : validationSettings.isEnabled)
186
+ }));
187
+ });
188
+ }
189
+ update(data, options, privateOptions) {
190
+ return __awaiter(this, void 0, void 0, function* () {
191
+ const { store } = this;
192
+ const { filters, forceTransaction, returnData, returnOriginalItems, transactionId } = options;
193
+ const actualPrivateOptions = privateOptions || {};
194
+ if (!transactionId && forceTransaction) {
195
+ const tId = store.createTransaction();
196
+ const result = yield this.update(data, Object.assign(Object.assign({}, options), { transactionId: tId }), actualPrivateOptions);
197
+ yield store.endTransaction(tId);
198
+ return result;
199
+ }
200
+ const { processFiltersAllowedFieldsEnabled, processInputAllowedFieldsEnabled, requirePrimaryKeys = true, validate } = actualPrivateOptions;
201
+ const dataToReturn = {};
202
+ const { items: itemsToUpdate } = yield this.find({ filters, findAll: true }, { processFiltersAllowedFieldsEnabled, requirePrimaryKeys });
203
+ if (!itemsToUpdate.length) {
204
+ dataToReturn.count = 0;
205
+ if (returnData) {
206
+ dataToReturn.items = [];
207
+ }
208
+ if (returnOriginalItems) {
209
+ dataToReturn.originalItems = [];
210
+ }
211
+ return dataToReturn;
212
+ }
213
+ const updateResult = yield this.save(itemsToUpdate.map(item => lodash_1.default.merge(item, data)), {
214
+ generatePrimaryKeys: false,
215
+ processObjectAllowedFieldsEnabled: processInputAllowedFieldsEnabled,
216
+ transactionId,
217
+ validate
218
+ });
219
+ dataToReturn.count = updateResult.length;
220
+ if (returnData) {
221
+ dataToReturn.items = updateResult;
222
+ }
223
+ if (returnOriginalItems) {
224
+ dataToReturn.originalItems = itemsToUpdate;
225
+ }
226
+ return dataToReturn;
227
+ });
228
+ }
229
+ }
230
+ exports.RedisEntityService = RedisEntityService;
231
+ //# sourceMappingURL=redis.entity.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redis.entity.service.js","sourceRoot":"","sources":["../../src/entityService/redis.entity.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export * from './common/definitions';
2
+ export * from './entityService';
3
+ export * from './module';
4
+ export * from './repository';
5
+ export * from './store';
package/dist/index.js ADDED
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./common/definitions"), exports);
18
+ __exportStar(require("./entityService"), exports);
19
+ __exportStar(require("./module"), exports);
20
+ __exportStar(require("./repository"), exports);
21
+ __exportStar(require("./store"), exports);
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,kDAAgC;AAChC,2CAAyB;AACzB,+CAA6B;AAC7B,0CAAwB"}
@@ -0,0 +1,2 @@
1
+ export * from './redis.module.definitions';
2
+ export * from './redis.module';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./redis.module.definitions"), exports);
18
+ __exportStar(require("./redis.module"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/module/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C;AAC3C,iDAA+B"}
@@ -0,0 +1,5 @@
1
+ import { DynamicModule } from '@nestjs/common';
2
+ import { RedisModuleOptions } from './redis.module.definitions';
3
+ export declare class RedisModule {
4
+ static register(options: RedisModuleOptions): DynamicModule;
5
+ }
@@ -0,0 +1,16 @@
1
+ import { ModuleMetadata } from '@nestjs/common';
2
+ import { GenericObject } from '@node-c/core';
3
+ export interface RedisModuleOptions {
4
+ entityModuleRegisterOptions?: unknown;
5
+ exports?: ModuleMetadata['exports'];
6
+ folderData: GenericObject<unknown>;
7
+ imports?: {
8
+ atEnd?: ModuleMetadata['imports'];
9
+ postStore?: ModuleMetadata['imports'];
10
+ preStore?: ModuleMetadata['imports'];
11
+ };
12
+ moduleClass: unknown;
13
+ moduleName: string;
14
+ providers?: ModuleMetadata['providers'];
15
+ registerOptionsPerEntityModule?: GenericObject;
16
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=redis.module.definitions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redis.module.definitions.js","sourceRoot":"","sources":["../../src/module/redis.module.definitions.ts"],"names":[],"mappings":""}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RedisModule = void 0;
4
+ const core_1 = require("@node-c/core");
5
+ const store_1 = require("../store");
6
+ class RedisModule {
7
+ static register(options) {
8
+ const { folderData, imports: additionalImports, moduleClass, moduleName } = options;
9
+ const { atEnd: importsAtEnd, postStore: importsPostStore, preStore: importsPreStore } = additionalImports || {};
10
+ const { modules } = (0, core_1.loadDynamicModules)(folderData, {
11
+ moduleRegisterOptions: options.entityModuleRegisterOptions,
12
+ registerOptionsPerModule: options.registerOptionsPerEntityModule
13
+ });
14
+ return {
15
+ global: true,
16
+ module: moduleClass,
17
+ imports: [
18
+ ...(importsPreStore || []),
19
+ store_1.RedisStoreModule.register({ dataModuleName: moduleName }),
20
+ ...(importsPostStore || []),
21
+ ...(modules || []),
22
+ ...(importsAtEnd || [])
23
+ ],
24
+ providers: [...(options.providers || [])],
25
+ exports: [...(modules || []), ...(options.exports || [])]
26
+ };
27
+ }
28
+ }
29
+ exports.RedisModule = RedisModule;
30
+ //# sourceMappingURL=redis.module.js.map
@@ -0,0 +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,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,cAAc,EAAE,UAAU,EAAE,CAAC;gBACzD,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"}
@@ -0,0 +1,3 @@
1
+ export * from './redis.repository.definitions';
2
+ export * from './redis.repository.module';
3
+ export * from './redis.repository.service';
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./redis.repository.definitions"), exports);
18
+ __exportStar(require("./redis.repository.module"), exports);
19
+ __exportStar(require("./redis.repository.service"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/repository/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iEAA+C;AAC/C,4DAA0C;AAC1C,6DAA2C"}
@@ -0,0 +1,74 @@
1
+ import { GenericObject } from '@node-c/core';
2
+ import { ValidationSchema } from 'class-validator';
3
+ export interface EntitySchema {
4
+ columns: {
5
+ [columnName: string]: {
6
+ generated?: boolean;
7
+ isCreationDate?: boolean;
8
+ isDeletionDate?: boolean;
9
+ isInnerPrimary?: boolean;
10
+ isUpdateDate?: boolean;
11
+ primary?: boolean;
12
+ primaryOrder?: number;
13
+ type?: EntitySchemaColumnType;
14
+ validationProperties?: ValidationSchema['properties'][''];
15
+ };
16
+ };
17
+ isArray?: boolean;
18
+ name: string;
19
+ nestedObjectContainerPath?: string;
20
+ paranoid?: boolean;
21
+ storeKey: string;
22
+ }
23
+ export declare enum EntitySchemaColumnType {
24
+ Array = "array",
25
+ Boolean = "boolean",
26
+ Integer = "integer",
27
+ Object = "object",
28
+ String = "string",
29
+ TimestampTz = "timestampTz",
30
+ UUIDV4 = "uuidv4"
31
+ }
32
+ export interface FilterItemOptions {
33
+ keysToSkip?: GenericObject<boolean>;
34
+ skippableKeysToForceCheck?: GenericObject<boolean>;
35
+ }
36
+ export interface GetValuesFromResultsOptions {
37
+ filters?: GenericObject<unknown>;
38
+ flattenArray?: boolean;
39
+ hasNonPrimaryKeyFilters?: boolean;
40
+ primaryKeyFiltersToForceCheck?: GenericObject<boolean>;
41
+ }
42
+ export interface PrepareOptions {
43
+ generatePrimaryKeys: boolean;
44
+ onConflict?: SaveOptionsOnConflict;
45
+ validate?: boolean;
46
+ }
47
+ export interface RedisRepositoryModuleOptions {
48
+ dataModuleName: string;
49
+ schema: EntitySchema;
50
+ }
51
+ export interface RepositoryFindOptions {
52
+ filters?: GenericObject<unknown>;
53
+ findAll?: boolean;
54
+ individualSearch?: boolean;
55
+ page?: number;
56
+ perPage?: number;
57
+ withValues?: boolean;
58
+ }
59
+ export interface RepositoryFindPrivateOptions {
60
+ requirePrimaryKeys?: boolean;
61
+ }
62
+ export interface SaveOptions {
63
+ delete?: boolean;
64
+ generatePrimaryKeys: boolean;
65
+ onConflict?: SaveOptionsOnConflict;
66
+ transactionId?: string;
67
+ ttl?: number;
68
+ validate?: boolean;
69
+ }
70
+ export declare enum SaveOptionsOnConflict {
71
+ DoNothing = "doNothing",
72
+ ThrowError = "throwError",
73
+ Update = "update"
74
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SaveOptionsOnConflict = exports.EntitySchemaColumnType = void 0;
4
+ var EntitySchemaColumnType;
5
+ (function (EntitySchemaColumnType) {
6
+ EntitySchemaColumnType["Array"] = "array";
7
+ EntitySchemaColumnType["Boolean"] = "boolean";
8
+ EntitySchemaColumnType["Integer"] = "integer";
9
+ EntitySchemaColumnType["Object"] = "object";
10
+ EntitySchemaColumnType["String"] = "string";
11
+ EntitySchemaColumnType["TimestampTz"] = "timestampTz";
12
+ EntitySchemaColumnType["UUIDV4"] = "uuidv4";
13
+ })(EntitySchemaColumnType || (exports.EntitySchemaColumnType = EntitySchemaColumnType = {}));
14
+ var SaveOptionsOnConflict;
15
+ (function (SaveOptionsOnConflict) {
16
+ SaveOptionsOnConflict["DoNothing"] = "doNothing";
17
+ SaveOptionsOnConflict["ThrowError"] = "throwError";
18
+ SaveOptionsOnConflict["Update"] = "update";
19
+ })(SaveOptionsOnConflict || (exports.SaveOptionsOnConflict = SaveOptionsOnConflict = {}));
20
+ //# sourceMappingURL=redis.repository.definitions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redis.repository.definitions.js","sourceRoot":"","sources":["../../src/repository/redis.repository.definitions.ts"],"names":[],"mappings":";;;AA2BA,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;AA+CD,IAAY,qBAOX;AAPD,WAAY,qBAAqB;IAE/B,gDAAuB,CAAA;IAEvB,kDAAyB,CAAA;IAEzB,0CAAiB,CAAA;AACnB,CAAC,EAPW,qBAAqB,qCAArB,qBAAqB,QAOhC"}
@@ -0,0 +1,5 @@
1
+ import { DynamicModule } from '@nestjs/common';
2
+ import { RedisRepositoryModuleOptions } from './redis.repository.definitions';
3
+ export declare class RedisRepositoryModule {
4
+ static register<Entity>(options: RedisRepositoryModuleOptions): DynamicModule;
5
+ }