mvc-common-toolkit 1.43.10 → 1.44.0

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 (210) hide show
  1. package/dist/src/constants.d.ts +59 -0
  2. package/dist/src/constants.js +69 -0
  3. package/dist/src/constants.js.map +1 -0
  4. package/dist/src/gateways/alibaba-cloud-gateway.d.ts +30 -0
  5. package/dist/src/gateways/alibaba-cloud-gateway.js +120 -0
  6. package/dist/src/gateways/alibaba-cloud-gateway.js.map +1 -0
  7. package/dist/src/gateways/http-audit-gateway.d.ts +20 -0
  8. package/dist/src/gateways/http-audit-gateway.js +76 -0
  9. package/dist/src/gateways/http-audit-gateway.js.map +1 -0
  10. package/dist/src/gateways/index.d.ts +5 -0
  11. package/dist/src/gateways/index.js +22 -0
  12. package/dist/src/gateways/index.js.map +1 -0
  13. package/dist/src/gateways/internal-auth-gateway.d.ts +8 -0
  14. package/dist/src/gateways/internal-auth-gateway.js +40 -0
  15. package/dist/src/gateways/internal-auth-gateway.js.map +1 -0
  16. package/dist/src/gateways/stdout-audit-gateway.d.ts +7 -0
  17. package/dist/src/gateways/stdout-audit-gateway.js +25 -0
  18. package/dist/src/gateways/stdout-audit-gateway.js.map +1 -0
  19. package/dist/src/gateways/webhook-audit-gateway.d.ts +14 -0
  20. package/dist/src/gateways/webhook-audit-gateway.js +27 -0
  21. package/dist/src/gateways/webhook-audit-gateway.js.map +1 -0
  22. package/dist/src/interfaces.d.ts +218 -0
  23. package/dist/src/interfaces.js +3 -0
  24. package/dist/src/interfaces.js.map +1 -0
  25. package/dist/src/models/audit-log.d.ts +77 -0
  26. package/dist/src/models/audit-log.js +92 -0
  27. package/dist/src/models/audit-log.js.map +1 -0
  28. package/dist/src/models/index.d.ts +1 -0
  29. package/dist/src/models/index.js +18 -0
  30. package/dist/src/models/index.js.map +1 -0
  31. package/dist/src/pkg/array-helper.d.ts +1 -0
  32. package/dist/src/pkg/array-helper.js +12 -0
  33. package/dist/src/pkg/array-helper.js.map +1 -0
  34. package/dist/src/pkg/bcrypt-helper.d.ts +2 -0
  35. package/dist/src/pkg/bcrypt-helper.js +36 -0
  36. package/dist/src/pkg/bcrypt-helper.js.map +1 -0
  37. package/dist/src/pkg/crypto-helper.d.ts +2 -0
  38. package/dist/src/pkg/crypto-helper.js +16 -0
  39. package/dist/src/pkg/crypto-helper.js.map +1 -0
  40. package/dist/src/pkg/encryption-helper.d.ts +18 -0
  41. package/dist/src/pkg/encryption-helper.js +89 -0
  42. package/dist/src/pkg/encryption-helper.js.map +1 -0
  43. package/dist/src/pkg/encryption-helper.spec.d.ts +1 -0
  44. package/dist/src/pkg/encryption-helper.spec.js +238 -0
  45. package/dist/src/pkg/encryption-helper.spec.js.map +1 -0
  46. package/dist/src/pkg/filter-helper.d.ts +2 -0
  47. package/dist/src/pkg/filter-helper.js +102 -0
  48. package/dist/src/pkg/filter-helper.js.map +1 -0
  49. package/dist/src/pkg/filter-helper.spec.d.ts +1 -0
  50. package/dist/src/pkg/filter-helper.spec.js +94 -0
  51. package/dist/src/pkg/filter-helper.spec.js.map +1 -0
  52. package/dist/src/pkg/geoip-helper.d.ts +2 -0
  53. package/dist/src/pkg/geoip-helper.js +32 -0
  54. package/dist/src/pkg/geoip-helper.js.map +1 -0
  55. package/dist/src/pkg/hash-helper.d.ts +1 -0
  56. package/dist/src/pkg/hash-helper.js +37 -0
  57. package/dist/src/pkg/hash-helper.js.map +1 -0
  58. package/dist/src/pkg/http-request-utils.d.ts +4 -0
  59. package/dist/src/pkg/http-request-utils.js +55 -0
  60. package/dist/src/pkg/http-request-utils.js.map +1 -0
  61. package/dist/src/pkg/index.d.ts +19 -0
  62. package/dist/src/pkg/index.js +46 -0
  63. package/dist/src/pkg/index.js.map +1 -0
  64. package/dist/src/pkg/key-helper.d.ts +2 -0
  65. package/dist/src/pkg/key-helper.js +20 -0
  66. package/dist/src/pkg/key-helper.js.map +1 -0
  67. package/dist/src/pkg/logger.d.ts +9 -0
  68. package/dist/src/pkg/logger.js +23 -0
  69. package/dist/src/pkg/logger.js.map +1 -0
  70. package/dist/src/pkg/object-helper.d.ts +2 -0
  71. package/dist/src/pkg/object-helper.js +37 -0
  72. package/dist/src/pkg/object-helper.js.map +1 -0
  73. package/dist/src/pkg/paginated-cache-registry.d.ts +8 -0
  74. package/dist/src/pkg/paginated-cache-registry.js +23 -0
  75. package/dist/src/pkg/paginated-cache-registry.js.map +1 -0
  76. package/dist/src/pkg/query-helper.d.ts +3 -0
  77. package/dist/src/pkg/query-helper.js +60 -0
  78. package/dist/src/pkg/query-helper.js.map +1 -0
  79. package/dist/src/pkg/referral-tree-utils.d.ts +33 -0
  80. package/dist/src/pkg/referral-tree-utils.js +71 -0
  81. package/dist/src/pkg/referral-tree-utils.js.map +1 -0
  82. package/dist/src/pkg/scripts/index.d.ts +1 -0
  83. package/dist/src/pkg/scripts/index.js +28 -0
  84. package/dist/src/pkg/scripts/index.js.map +1 -0
  85. package/dist/src/pkg/scripts/lua.d.ts +10 -0
  86. package/dist/src/pkg/scripts/lua.js +109 -0
  87. package/dist/src/pkg/scripts/lua.js.map +1 -0
  88. package/dist/src/pkg/sort-helper.d.ts +3 -0
  89. package/dist/src/pkg/sort-helper.js +18 -0
  90. package/dist/src/pkg/sort-helper.js.map +1 -0
  91. package/dist/src/pkg/string-utils.d.ts +10 -0
  92. package/dist/src/pkg/string-utils.js +79 -0
  93. package/dist/src/pkg/string-utils.js.map +1 -0
  94. package/dist/src/pkg/task-helper.d.ts +2 -0
  95. package/dist/src/pkg/task-helper.js +30 -0
  96. package/dist/src/pkg/task-helper.js.map +1 -0
  97. package/dist/src/pkg/trading-pair-helper.d.ts +9 -0
  98. package/dist/src/pkg/trading-pair-helper.js +44 -0
  99. package/dist/src/pkg/trading-pair-helper.js.map +1 -0
  100. package/dist/src/pkg/trading-pair-helper.spec.d.ts +1 -0
  101. package/dist/src/pkg/trading-pair-helper.spec.js +132 -0
  102. package/dist/src/pkg/trading-pair-helper.spec.js.map +1 -0
  103. package/dist/src/pkg/workflow/delayed-task-registry.d.ts +10 -0
  104. package/dist/src/pkg/workflow/delayed-task-registry.js +67 -0
  105. package/dist/src/pkg/workflow/delayed-task-registry.js.map +1 -0
  106. package/dist/src/pkg/workflow/delayed-task.d.ts +18 -0
  107. package/dist/src/pkg/workflow/delayed-task.js +95 -0
  108. package/dist/src/pkg/workflow/delayed-task.js.map +1 -0
  109. package/dist/src/pkg/workflow/index.d.ts +5 -0
  110. package/dist/src/pkg/workflow/index.js +22 -0
  111. package/dist/src/pkg/workflow/index.js.map +1 -0
  112. package/dist/src/pkg/workflow/processing-milestone.d.ts +18 -0
  113. package/dist/src/pkg/workflow/processing-milestone.js +39 -0
  114. package/dist/src/pkg/workflow/processing-milestone.js.map +1 -0
  115. package/dist/src/pkg/workflow/retry-task.d.ts +24 -0
  116. package/dist/src/pkg/workflow/retry-task.js +89 -0
  117. package/dist/src/pkg/workflow/retry-task.js.map +1 -0
  118. package/dist/src/pkg/workflow/retry-task.spec.d.ts +1 -0
  119. package/dist/src/pkg/workflow/retry-task.spec.js +145 -0
  120. package/dist/src/pkg/workflow/retry-task.spec.js.map +1 -0
  121. package/dist/src/pkg/workflow/sync-taskqueue.d.ts +32 -0
  122. package/dist/src/pkg/workflow/sync-taskqueue.js +108 -0
  123. package/dist/src/pkg/workflow/sync-taskqueue.js.map +1 -0
  124. package/dist/src/pkg/worksheet.utils.d.ts +27 -0
  125. package/dist/src/pkg/worksheet.utils.js +116 -0
  126. package/dist/src/pkg/worksheet.utils.js.map +1 -0
  127. package/dist/src/services/audit-service.d.ts +7 -0
  128. package/dist/src/services/audit-service.js +32 -0
  129. package/dist/src/services/audit-service.js.map +1 -0
  130. package/dist/src/services/excel.service.d.ts +25 -0
  131. package/dist/src/services/excel.service.js +95 -0
  132. package/dist/src/services/excel.service.js.map +1 -0
  133. package/dist/src/services/http-service.d.ts +7 -0
  134. package/dist/src/services/http-service.js +67 -0
  135. package/dist/src/services/http-service.js.map +1 -0
  136. package/dist/src/services/index.d.ts +8 -0
  137. package/dist/src/services/index.js +25 -0
  138. package/dist/src/services/index.js.map +1 -0
  139. package/dist/src/services/kafka-service.d.ts +15 -0
  140. package/dist/src/services/kafka-service.js +68 -0
  141. package/dist/src/services/kafka-service.js.map +1 -0
  142. package/dist/src/services/mailer-service.d.ts +15 -0
  143. package/dist/src/services/mailer-service.js +44 -0
  144. package/dist/src/services/mailer-service.js.map +1 -0
  145. package/dist/src/services/paginated-cache.d.ts +16 -0
  146. package/dist/src/services/paginated-cache.js +115 -0
  147. package/dist/src/services/paginated-cache.js.map +1 -0
  148. package/dist/src/services/paginated-cache.spec.d.ts +1 -0
  149. package/dist/src/services/paginated-cache.spec.js +284 -0
  150. package/dist/src/services/paginated-cache.spec.js.map +1 -0
  151. package/dist/src/services/redis-service.d.ts +33 -0
  152. package/dist/src/services/redis-service.js +230 -0
  153. package/dist/src/services/redis-service.js.map +1 -0
  154. package/dist/src/services/security-service.d.ts +11 -0
  155. package/dist/src/services/security-service.js +68 -0
  156. package/dist/src/services/security-service.js.map +1 -0
  157. package/dist/tsconfig.tsbuildinfo +1 -1
  158. package/package.json +1 -1
  159. package/src/constants.ts +66 -0
  160. package/src/gateways/alibaba-cloud-gateway.ts +127 -0
  161. package/src/gateways/http-audit-gateway.ts +104 -0
  162. package/src/gateways/index.ts +5 -0
  163. package/src/gateways/internal-auth-gateway.ts +42 -0
  164. package/src/gateways/stdout-audit-gateway.ts +23 -0
  165. package/src/gateways/webhook-audit-gateway.ts +33 -0
  166. package/src/interfaces.ts +304 -0
  167. package/src/models/audit-log.ts +126 -0
  168. package/src/models/index.ts +1 -0
  169. package/src/pkg/array-helper.ts +7 -0
  170. package/src/pkg/bcrypt-helper.ts +9 -0
  171. package/src/pkg/crypto-helper.ts +18 -0
  172. package/src/pkg/encryption-helper.spec.ts +423 -0
  173. package/src/pkg/encryption-helper.ts +155 -0
  174. package/src/pkg/filter-helper.spec.ts +105 -0
  175. package/src/pkg/filter-helper.ts +139 -0
  176. package/src/pkg/geoip-helper.ts +5 -0
  177. package/src/pkg/hash-helper.ts +12 -0
  178. package/src/pkg/http-request-utils.ts +75 -0
  179. package/src/pkg/index.ts +19 -0
  180. package/src/pkg/key-helper.ts +20 -0
  181. package/src/pkg/logger.ts +23 -0
  182. package/src/pkg/object-helper.ts +42 -0
  183. package/src/pkg/paginated-cache-registry.ts +25 -0
  184. package/src/pkg/query-helper.ts +79 -0
  185. package/src/pkg/referral-tree-utils.ts +165 -0
  186. package/src/pkg/scripts/index.ts +1 -0
  187. package/src/pkg/scripts/lua.ts +112 -0
  188. package/src/pkg/sort-helper.ts +19 -0
  189. package/src/pkg/string-utils.ts +104 -0
  190. package/src/pkg/task-helper.ts +25 -0
  191. package/src/pkg/trading-pair-helper.spec.ts +146 -0
  192. package/src/pkg/trading-pair-helper.ts +78 -0
  193. package/src/pkg/workflow/delayed-task-registry.ts +54 -0
  194. package/src/pkg/workflow/delayed-task.ts +106 -0
  195. package/src/pkg/workflow/index.ts +5 -0
  196. package/src/pkg/workflow/processing-milestone.ts +54 -0
  197. package/src/pkg/workflow/retry-task.spec.ts +194 -0
  198. package/src/pkg/workflow/retry-task.ts +119 -0
  199. package/src/pkg/workflow/sync-taskqueue.ts +118 -0
  200. package/src/pkg/worksheet.utils.ts +178 -0
  201. package/src/services/audit-service.ts +22 -0
  202. package/src/services/excel.service.ts +103 -0
  203. package/src/services/http-service.ts +71 -0
  204. package/src/services/index.ts +8 -0
  205. package/src/services/kafka-service.ts +81 -0
  206. package/src/services/mailer-service.ts +43 -0
  207. package/src/services/paginated-cache.spec.ts +519 -0
  208. package/src/services/paginated-cache.ts +122 -0
  209. package/src/services/redis-service.ts +238 -0
  210. package/src/services/security-service.ts +80 -0
@@ -0,0 +1,19 @@
1
+ export * as bcryptHelper from "./bcrypt-helper";
2
+ export * as httpRequestUtils from "./http-request-utils";
3
+ export * as objectHelper from "./object-helper";
4
+ export * as queryHelper from "./query-helper";
5
+ export * as stringUtils from "./string-utils";
6
+ export * as worksheetUtils from "./worksheet.utils";
7
+ export * as cryptoHelpers from "./crypto-helper";
8
+ export * as sortHelpers from "./sort-helper";
9
+ export * as filterHelpers from "./filter-helper";
10
+ export * as loggers from "./logger";
11
+ export * as workflows from "./workflow";
12
+ export * as geoipHelpers from "./geoip-helper";
13
+ export * as arrayHelpers from "./array-helper";
14
+ export * as referralTreeHelpers from "./referral-tree-utils";
15
+ export * as timeoutHelper from "./task-helper";
16
+ export * as cacheHelper from "./paginated-cache-registry";
17
+ export * as encryptionHelper from "./encryption-helper";
18
+ export * as scripts from "./scripts";
19
+ export * as tradingPairHelper from "./trading-pair-helper";
@@ -0,0 +1,46 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.tradingPairHelper = exports.scripts = exports.encryptionHelper = exports.cacheHelper = exports.timeoutHelper = exports.referralTreeHelpers = exports.arrayHelpers = exports.geoipHelpers = exports.workflows = exports.loggers = exports.filterHelpers = exports.sortHelpers = exports.cryptoHelpers = exports.worksheetUtils = exports.stringUtils = exports.queryHelper = exports.objectHelper = exports.httpRequestUtils = exports.bcryptHelper = void 0;
27
+ exports.bcryptHelper = __importStar(require("./bcrypt-helper"));
28
+ exports.httpRequestUtils = __importStar(require("./http-request-utils"));
29
+ exports.objectHelper = __importStar(require("./object-helper"));
30
+ exports.queryHelper = __importStar(require("./query-helper"));
31
+ exports.stringUtils = __importStar(require("./string-utils"));
32
+ exports.worksheetUtils = __importStar(require("./worksheet.utils"));
33
+ exports.cryptoHelpers = __importStar(require("./crypto-helper"));
34
+ exports.sortHelpers = __importStar(require("./sort-helper"));
35
+ exports.filterHelpers = __importStar(require("./filter-helper"));
36
+ exports.loggers = __importStar(require("./logger"));
37
+ exports.workflows = __importStar(require("./workflow"));
38
+ exports.geoipHelpers = __importStar(require("./geoip-helper"));
39
+ exports.arrayHelpers = __importStar(require("./array-helper"));
40
+ exports.referralTreeHelpers = __importStar(require("./referral-tree-utils"));
41
+ exports.timeoutHelper = __importStar(require("./task-helper"));
42
+ exports.cacheHelper = __importStar(require("./paginated-cache-registry"));
43
+ exports.encryptionHelper = __importStar(require("./encryption-helper"));
44
+ exports.scripts = __importStar(require("./scripts"));
45
+ exports.tradingPairHelper = __importStar(require("./trading-pair-helper"));
46
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pkg/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gEAAgD;AAChD,yEAAyD;AACzD,gEAAgD;AAChD,8DAA8C;AAC9C,8DAA8C;AAC9C,oEAAoD;AACpD,iEAAiD;AACjD,6DAA6C;AAC7C,iEAAiD;AACjD,oDAAoC;AACpC,wDAAwC;AACxC,+DAA+C;AAC/C,+DAA+C;AAC/C,6EAA6D;AAC7D,+DAA+C;AAC/C,0EAA0D;AAC1D,wEAAwD;AACxD,qDAAqC;AACrC,2EAA2D"}
@@ -0,0 +1,2 @@
1
+ export declare const getVersionedCacheKey: (key: string, version: number) => string;
2
+ export declare const getVersionCacheKeyForKey: (key: string) => string;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getVersionCacheKeyForKey = exports.getVersionedCacheKey = void 0;
4
+ const versionPlaceholder = '_version';
5
+ const getVersionedCacheKey = (key, version) => {
6
+ if (key.includes(versionPlaceholder)) {
7
+ return key.replace(versionPlaceholder, version.toString());
8
+ }
9
+ return `${key}:version:${version}`;
10
+ };
11
+ exports.getVersionedCacheKey = getVersionedCacheKey;
12
+ const getVersionCacheKeyForKey = (key) => {
13
+ if (key.includes(versionPlaceholder)) {
14
+ const indexOfPlaceholder = key.indexOf(versionPlaceholder);
15
+ return key.substring(0, indexOfPlaceholder);
16
+ }
17
+ return `${key}:version`;
18
+ };
19
+ exports.getVersionCacheKeyForKey = getVersionCacheKeyForKey;
20
+ //# sourceMappingURL=key-helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"key-helper.js","sourceRoot":"","sources":["../../../src/pkg/key-helper.ts"],"names":[],"mappings":";;;AAAA,MAAM,kBAAkB,GAAG,UAAU,CAAC;AAG/B,MAAM,oBAAoB,GAAG,CAAC,GAAW,EAAE,OAAe,EAAE,EAAE;IACnE,IAAI,GAAG,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;QACpC,OAAO,GAAG,CAAC,OAAO,CAAC,kBAAkB,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;KAC5D;IAED,OAAO,GAAG,GAAG,YAAY,OAAO,EAAE,CAAC;AACrC,CAAC,CAAC;AANW,QAAA,oBAAoB,wBAM/B;AAEK,MAAM,wBAAwB,GAAG,CAAC,GAAW,EAAE,EAAE;IACtD,IAAI,GAAG,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;QACpC,MAAM,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAE3D,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;KAC7C;IAED,OAAO,GAAG,GAAG,UAAU,CAAC;AAC1B,CAAC,CAAC;AARW,QAAA,wBAAwB,4BAQnC"}
@@ -0,0 +1,9 @@
1
+ import pino from "pino";
2
+ import { Logger } from "../interfaces";
3
+ export declare class PinoLogger implements Logger {
4
+ protected _logger: pino.Logger;
5
+ constructor();
6
+ info(message: string, ...args: any[]): void;
7
+ error(message: string, ...args: any[]): void;
8
+ warn(message: string, ...args: any[]): void;
9
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PinoLogger = void 0;
7
+ const pino_1 = __importDefault(require("pino"));
8
+ class PinoLogger {
9
+ constructor() {
10
+ this._logger = (0, pino_1.default)();
11
+ }
12
+ info(message, ...args) {
13
+ return this._logger.info(message, ...args);
14
+ }
15
+ error(message, ...args) {
16
+ return this._logger.error(message, ...args);
17
+ }
18
+ warn(message, ...args) {
19
+ return this._logger.warn(message, ...args);
20
+ }
21
+ }
22
+ exports.PinoLogger = PinoLogger;
23
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/pkg/logger.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AAIxB,MAAa,UAAU;IAGrB;QACE,IAAI,CAAC,OAAO,GAAG,IAAA,cAAI,GAAE,CAAC;IACxB,CAAC;IAEM,IAAI,CAAC,OAAe,EAAE,GAAG,IAAW;QACzC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC7C,CAAC;IAEM,KAAK,CAAC,OAAe,EAAE,GAAG,IAAW;QAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC9C,CAAC;IAEM,IAAI,CAAC,OAAe,EAAE,GAAG,IAAW;QACzC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC7C,CAAC;CACF;AAlBD,gCAkBC"}
@@ -0,0 +1,2 @@
1
+ export declare function removeUndefinedProps(data: any): any;
2
+ export declare const tryParseStringIntoCorrectData: (data: string) => any;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.tryParseStringIntoCorrectData = exports.removeUndefinedProps = void 0;
4
+ function removeUndefinedProps(data) {
5
+ const allKeys = Object.keys(data);
6
+ return allKeys.reduce((aggregated, current) => {
7
+ if (data[current] !== undefined) {
8
+ aggregated[current] = data[current];
9
+ }
10
+ return aggregated;
11
+ }, {});
12
+ }
13
+ exports.removeUndefinedProps = removeUndefinedProps;
14
+ const tryParseStringIntoCorrectData = (data) => {
15
+ if (!(data === null || data === void 0 ? void 0 : data.length)) {
16
+ return;
17
+ }
18
+ try {
19
+ if (data === "true") {
20
+ return true;
21
+ }
22
+ if (data === "false") {
23
+ return false;
24
+ }
25
+ const dataAsNumber = Number(data);
26
+ if (!Number.isNaN(dataAsNumber)) {
27
+ return dataAsNumber;
28
+ }
29
+ const parsedObject = JSON.parse(data);
30
+ return parsedObject;
31
+ }
32
+ catch (error) {
33
+ return data;
34
+ }
35
+ };
36
+ exports.tryParseStringIntoCorrectData = tryParseStringIntoCorrectData;
37
+ //# sourceMappingURL=object-helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-helper.js","sourceRoot":"","sources":["../../../src/pkg/object-helper.ts"],"names":[],"mappings":";;;AAAA,SAAgB,oBAAoB,CAAC,IAAS;IAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAElC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE;QAC5C,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE;YAC/B,UAAU,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;SACrC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAVD,oDAUC;AAEM,MAAM,6BAA6B,GAAG,CAAC,IAAY,EAAO,EAAE;IACjE,IAAI,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAA,EAAE;QACjB,OAAO;KACR;IAED,IAAI;QAEF,IAAI,IAAI,KAAK,MAAM,EAAE;YACnB,OAAO,IAAI,CAAC;SACb;QAED,IAAI,IAAI,KAAK,OAAO,EAAE;YACpB,OAAO,KAAK,CAAC;SACd;QAGD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAElC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;YAC/B,OAAO,YAAY,CAAC;SACrB;QAGD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEtC,OAAO,YAAY,CAAC;KACrB;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,IAAI,CAAC;KACb;AACH,CAAC,CAAC;AA7BW,QAAA,6BAA6B,iCA6BxC"}
@@ -0,0 +1,8 @@
1
+ import { CacheService, IPaginatedDataCache } from "../interfaces";
2
+ export declare class PaginatedCacheRegistry {
3
+ protected cacheService: CacheService;
4
+ protected _registry: Map<string, IPaginatedDataCache<any>>;
5
+ constructor(cacheService: CacheService);
6
+ has(dataName: string): boolean;
7
+ getOrCreatePaginatedCache<T = any>(dataName: string): IPaginatedDataCache<T>;
8
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PaginatedCacheRegistry = void 0;
4
+ const paginated_cache_1 = require("../services/paginated-cache");
5
+ class PaginatedCacheRegistry {
6
+ constructor(cacheService) {
7
+ this.cacheService = cacheService;
8
+ this._registry = new Map();
9
+ }
10
+ has(dataName) {
11
+ return this._registry.has(dataName);
12
+ }
13
+ getOrCreatePaginatedCache(dataName) {
14
+ if (this._registry.has(dataName)) {
15
+ return this._registry.get(dataName);
16
+ }
17
+ const service = new paginated_cache_1.PaginatedDataCache(dataName, this.cacheService);
18
+ this._registry.set(dataName, service);
19
+ return service;
20
+ }
21
+ }
22
+ exports.PaginatedCacheRegistry = PaginatedCacheRegistry;
23
+ //# sourceMappingURL=paginated-cache-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginated-cache-registry.js","sourceRoot":"","sources":["../../../src/pkg/paginated-cache-registry.ts"],"names":[],"mappings":";;;AACA,iEAAiE;AAEjE,MAAa,sBAAsB;IAGjC,YAAsB,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;QAFtC,cAAS,GAAG,IAAI,GAAG,EAA+B,CAAC;IAEV,CAAC;IAE7C,GAAG,CAAC,QAAgB;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IAEM,yBAAyB,CAC9B,QAAgB;QAEhB,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YAChC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;SACrC;QAED,MAAM,OAAO,GAAG,IAAI,oCAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACpE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAEtC,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AArBD,wDAqBC"}
@@ -0,0 +1,3 @@
1
+ import { IFilter, ISort } from "../interfaces";
2
+ export declare function parseSort(data: string): ISort[];
3
+ export declare function parseFilter(field: string, filterData: string): IFilter;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseFilter = exports.parseSort = void 0;
4
+ const constants_1 = require("../constants");
5
+ function parseSort(data) {
6
+ if (!data) {
7
+ return [];
8
+ }
9
+ const sortConditions = data.split(" ").map((item) => {
10
+ if (item[0] === "-") {
11
+ return {
12
+ columnName: item.slice(1, item.length - 1),
13
+ direction: "DESC",
14
+ };
15
+ }
16
+ return {
17
+ columnName: item,
18
+ direction: "ASC",
19
+ };
20
+ });
21
+ return sortConditions;
22
+ }
23
+ exports.parseSort = parseSort;
24
+ function parseFilter(field, filterData) {
25
+ if (!filterData) {
26
+ throw new Error("missing filter data");
27
+ }
28
+ const splittedData = filterData.split(":");
29
+ if (splittedData.length === 1) {
30
+ return {
31
+ field,
32
+ operator: constants_1.FILTER_OPERATOR.EQUAL,
33
+ value: splittedData[0],
34
+ };
35
+ }
36
+ if (splittedData.length === 2) {
37
+ const [operator, value] = splittedData;
38
+ if (!Object.keys(constants_1.FILTER_OPERATOR).includes(operator)) {
39
+ throw new Error(`invalid filter operator ${operator}`);
40
+ }
41
+ if (operator === constants_1.FILTER_OPERATOR.OR || operator === constants_1.FILTER_OPERATOR.AND) {
42
+ throw new Error("operator $or and $and are only for internal use");
43
+ }
44
+ if (operator === constants_1.FILTER_OPERATOR.IN ||
45
+ operator === constants_1.FILTER_OPERATOR.NOT_IN) {
46
+ return {
47
+ field,
48
+ operator: operator,
49
+ value: value.split(","),
50
+ };
51
+ }
52
+ return {
53
+ field,
54
+ operator: operator,
55
+ value,
56
+ };
57
+ }
58
+ }
59
+ exports.parseFilter = parseFilter;
60
+ //# sourceMappingURL=query-helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-helper.js","sourceRoot":"","sources":["../../../src/pkg/query-helper.ts"],"names":[],"mappings":";;;AAAA,4CAA+C;AAQ/C,SAAgB,SAAS,CAAC,IAAY;IACpC,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,EAAE,CAAC;KACX;IAED,MAAM,cAAc,GAAY,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3D,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YACnB,OAAO;gBACL,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC1C,SAAS,EAAE,MAAM;aAClB,CAAC;SACH;QAED,OAAO;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,KAAK;SACjB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,cAAc,CAAC;AACxB,CAAC;AApBD,8BAoBC;AAQD,SAAgB,WAAW,CAAC,KAAa,EAAE,UAAkB;IAC3D,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;KACxC;IAED,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3C,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;QAC7B,OAAO;YACL,KAAK;YACL,QAAQ,EAAE,2BAAe,CAAC,KAAK;YAC/B,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;SACvB,CAAC;KACH;IAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;QAC7B,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,YAAY,CAAC;QAEvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAAe,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACpD,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,EAAE,CAAC,CAAC;SACxD;QAED,IAAI,QAAQ,KAAK,2BAAe,CAAC,EAAE,IAAI,QAAQ,KAAK,2BAAe,CAAC,GAAG,EAAE;YACvE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;SACpE;QAED,IACE,QAAQ,KAAK,2BAAe,CAAC,EAAE;YAC/B,QAAQ,KAAK,2BAAe,CAAC,MAAM,EACnC;YACA,OAAO;gBACL,KAAK;gBACL,QAAQ,EAAE,QAA2B;gBACrC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;aACxB,CAAC;SACH;QAED,OAAO;YACL,KAAK;YACL,QAAQ,EAAE,QAA2B;YACrC,KAAK;SACN,CAAC;KACH;AACH,CAAC;AA1CD,kCA0CC"}
@@ -0,0 +1,33 @@
1
+ interface UserConfig {
2
+ rootRefCode?: string;
3
+ password: string;
4
+ }
5
+ interface User {
6
+ parentRefCode: string;
7
+ refCode: string;
8
+ password: string;
9
+ email: string;
10
+ children: User[];
11
+ }
12
+ interface NormalizedUser {
13
+ parentRefCode: string;
14
+ refCode: string;
15
+ password: string;
16
+ email: string;
17
+ }
18
+ interface ReferralTreeConfig {
19
+ noOfLevels: number;
20
+ minChildPerNode: number;
21
+ maxChildPerNode: number;
22
+ mustHaveChildPerNode: number;
23
+ userConfig: UserConfig;
24
+ passwordHasher?: (password: string) => Promise<string>;
25
+ refCodeGenerator?: () => string;
26
+ addAdditionalData?: () => Promise<Record<string, any>>;
27
+ }
28
+ export declare const generateReferralTree: (data: ReferralTreeConfig) => Promise<{
29
+ rootUser: User;
30
+ totalUsersCount: number;
31
+ totalUsersToInsert: NormalizedUser[];
32
+ }>;
33
+ export {};
@@ -0,0 +1,71 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.generateReferralTree = void 0;
13
+ const faker_1 = require("@faker-js/faker");
14
+ const _1 = require(".");
15
+ const defaultRefcodeGenerator = () => _1.stringUtils.generateRandomId().slice(10).toUpperCase();
16
+ const generateReferralTree = (data) => __awaiter(void 0, void 0, void 0, function* () {
17
+ const { maxChildPerNode, minChildPerNode, mustHaveChildPerNode, noOfLevels, userConfig, passwordHasher, refCodeGenerator, addAdditionalData = () => { }, } = data;
18
+ const hashedPassword = yield passwordHasher(userConfig.password);
19
+ const rootUser = yield genNewUser(null, {
20
+ hashedPassword,
21
+ additionalDataGenerator: addAdditionalData,
22
+ refCodeGenerator: refCodeGenerator || defaultRefcodeGenerator,
23
+ });
24
+ const totalUsersToInsert = [normalizeUser(rootUser)];
25
+ let currentLayerUsers = [rootUser];
26
+ let totalUsersCount = currentLayerUsers.length;
27
+ for (let currentLevel = 0; currentLevel < noOfLevels; currentLevel++) {
28
+ const allChildUserCreated = [];
29
+ const nodeSelectedAsRequired = currentLayerUsers[0];
30
+ for (let i = 0; i < mustHaveChildPerNode; i++) {
31
+ const newUser = yield genNewUser(nodeSelectedAsRequired.refCode, {
32
+ hashedPassword,
33
+ refCodeGenerator: refCodeGenerator || defaultRefcodeGenerator,
34
+ additionalDataGenerator: addAdditionalData,
35
+ });
36
+ allChildUserCreated.push(newUser);
37
+ nodeSelectedAsRequired.children.push(newUser);
38
+ }
39
+ yield Promise.all(currentLayerUsers.slice(1, currentLayerUsers.length).map((user) => __awaiter(void 0, void 0, void 0, function* () {
40
+ const noOfChildNodes = faker_1.faker.helpers.rangeToNumber({
41
+ min: minChildPerNode,
42
+ max: maxChildPerNode,
43
+ });
44
+ for (let i = 0; i < noOfChildNodes; i++) {
45
+ const newUser = yield genNewUser(user.refCode, {
46
+ hashedPassword,
47
+ refCodeGenerator: refCodeGenerator || defaultRefcodeGenerator,
48
+ additionalDataGenerator: addAdditionalData,
49
+ });
50
+ allChildUserCreated.push(newUser);
51
+ user.children.push(newUser);
52
+ }
53
+ })));
54
+ const normalizedUsers = allChildUserCreated.map(normalizeUser);
55
+ totalUsersToInsert.push(...normalizedUsers);
56
+ currentLayerUsers = allChildUserCreated;
57
+ totalUsersCount += currentLayerUsers.length;
58
+ }
59
+ return { rootUser, totalUsersCount, totalUsersToInsert };
60
+ });
61
+ exports.generateReferralTree = generateReferralTree;
62
+ const normalizeUser = (user) => {
63
+ const cloned = JSON.parse(JSON.stringify(user));
64
+ delete cloned.children;
65
+ return cloned;
66
+ };
67
+ const genNewUser = (parentRefCode, { hashedPassword, refCodeGenerator, additionalDataGenerator }) => __awaiter(void 0, void 0, void 0, function* () {
68
+ const additionalData = yield additionalDataGenerator();
69
+ return Object.assign({ parentRefCode, password: hashedPassword, email: faker_1.faker.internet.email().toLowerCase(), children: [], refCode: refCodeGenerator() }, additionalData);
70
+ });
71
+ //# sourceMappingURL=referral-tree-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"referral-tree-utils.js","sourceRoot":"","sources":["../../../src/pkg/referral-tree-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export * as luaScripts from "./lua";
@@ -0,0 +1,28 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.luaScripts = void 0;
27
+ exports.luaScripts = __importStar(require("./lua"));
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/pkg/scripts/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAoC"}
@@ -0,0 +1,10 @@
1
+ export declare const IncrByAndSetTTLIfNotExists = "\nif redis.call(\"EXISTS\", KEYS[1]) == 0 then\n redis.call(\"INCRBY\", KEYS[1], ARGV[1])\n redis.call(\"EXPIRE\", KEYS[1], ARGV[2])\nend\n\nreturn redis.call(\"GET\", KEYS[1])\n";
2
+ export declare const IncrByAndEnsureTTLIsSet = "\nlocal inc = tonumber(ARGV[1])\nlocal ttl = tonumber(ARGV[2])\n\nredis.call(\"INCRBY\", KEYS[1], inc)\n\nif redis.call(\"TTL\", KEYS[1]) == -1 then\n redis.call(\"EXPIRE\", KEYS[1], ttl)\nend\n\nreturn tonumber(redis.call(\"GET\", KEYS[1]))\n";
3
+ export declare const DecrByAndEnsureTTLIsSet = "\nlocal inc = tonumber(ARGV[1])\nlocal ttl = tonumber(ARGV[2])\n\nredis.call(\"DECRBY\", KEYS[1], inc)\n\nif redis.call(\"TTL\", KEYS[1]) == -1 then\n redis.call(\"EXPIRE\", KEYS[1], ttl)\nend\n\nreturn tonumber(redis.call(\"GET\", KEYS[1]))\n";
4
+ export declare const IncrByFloatAndEnsureTTLIsSet = "\nlocal inc = tonumber(ARGV[1])\nlocal ttl = tonumber(ARGV[2])\n\nredis.call(\"INCRBYFLOAT\", KEYS[1], inc)\n\nif redis.call(\"TTL\", KEYS[1]) == -1 then\n redis.call(\"EXPIRE\", KEYS[1], ttl)\nend\n\nreturn tonumber(redis.call(\"GET\", KEYS[1]))\n";
5
+ export declare const IncrByIfExists = "\nif redis.call(\"EXISTS\", KEYS[1]) == 1 then\n redis.call(\"INCRBY\", KEYS[1], ARGV[1])\nend\n\nreturn redis.call(\"GET\", KEYS[1])\n";
6
+ export declare const DecrbyAndSetTTLIfNotExists = "\nif redis.call(\"EXISTS\", KEYS[1]) == 0 then\n redis.call(\"DECRBY\", KEYS[1], ARGV[1])\n redis.call(\"EXPIRE\", KEYS[1], ARGV[2])\nend\n\nreturn redis.call(\"GET\", KEYS[1])\n";
7
+ export declare const DecrbyIfExists = "\nif redis.call(\"EXISTS\", KEYS[1]) == 1 then\n redis.call(\"DECRBY\", KEYS[1], ARGV[1])\nend\n\nreturn redis.call(\"GET\", KEYS[1])\n";
8
+ export declare const IncrByFloatAndSetTTLIfNotExists = "\nif redis.call(\"EXISTS\", KEYS[1]) == 0 then\n redis.call(\"INCRBYFLOAT\", KEYS[1], ARGV[1])\n redis.call(\"EXPIRE\", KEYS[1], ARGV[2])\nend\n\nreturn redis.call(\"GET\", KEYS[1])\n";
9
+ export declare const IncrByFloatIfExists = "\nif redis.call(\"EXISTS\", KEYS[1]) == 1 then\n redis.call(\"INCRBYFLOAT\", KEYS[1], ARGV[1])\nend\n\nreturn redis.call(\"GET\", KEYS[1])\n";
10
+ export declare const RefreshTTLIfBelowThreshold = "\n-- KEYS[1] : key to inspect\n-- ARGV[1] : threshold in seconds (e.g. 10)\n-- ARGV[2] : new TTL in seconds to set (e.g. 60)\n\nlocal ttl = redis.call(\"TTL\", KEYS[1])\n\n-- ttl == -2 \u2192 key doesn\u2019t exist\n-- ttl == -1 \u2192 key has no expiration\nif ttl == -2 then\n return -2 -- key absent\nend\n\nlocal threshold = tonumber(ARGV[1])\nlocal newTTL = tonumber(ARGV[2])\n\n-- If TTL is missing (-1) or below threshold, refresh it\nif ttl == -1 or ttl < threshold then\n redis.call(\"EXPIRE\", KEYS[1], newTTL)\n return newTTL -- return the TTL we just set\nend\n\nreturn ttl -- unchanged TTL\n";
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RefreshTTLIfBelowThreshold = exports.IncrByFloatIfExists = exports.IncrByFloatAndSetTTLIfNotExists = exports.DecrbyIfExists = exports.DecrbyAndSetTTLIfNotExists = exports.IncrByIfExists = exports.IncrByFloatAndEnsureTTLIsSet = exports.DecrByAndEnsureTTLIsSet = exports.IncrByAndEnsureTTLIsSet = exports.IncrByAndSetTTLIfNotExists = void 0;
4
+ exports.IncrByAndSetTTLIfNotExists = `
5
+ if redis.call("EXISTS", KEYS[1]) == 0 then
6
+ redis.call("INCRBY", KEYS[1], ARGV[1])
7
+ redis.call("EXPIRE", KEYS[1], ARGV[2])
8
+ end
9
+
10
+ return redis.call("GET", KEYS[1])
11
+ `;
12
+ exports.IncrByAndEnsureTTLIsSet = `
13
+ local inc = tonumber(ARGV[1])
14
+ local ttl = tonumber(ARGV[2])
15
+
16
+ redis.call("INCRBY", KEYS[1], inc)
17
+
18
+ if redis.call("TTL", KEYS[1]) == -1 then
19
+ redis.call("EXPIRE", KEYS[1], ttl)
20
+ end
21
+
22
+ return tonumber(redis.call("GET", KEYS[1]))
23
+ `;
24
+ exports.DecrByAndEnsureTTLIsSet = `
25
+ local inc = tonumber(ARGV[1])
26
+ local ttl = tonumber(ARGV[2])
27
+
28
+ redis.call("DECRBY", KEYS[1], inc)
29
+
30
+ if redis.call("TTL", KEYS[1]) == -1 then
31
+ redis.call("EXPIRE", KEYS[1], ttl)
32
+ end
33
+
34
+ return tonumber(redis.call("GET", KEYS[1]))
35
+ `;
36
+ exports.IncrByFloatAndEnsureTTLIsSet = `
37
+ local inc = tonumber(ARGV[1])
38
+ local ttl = tonumber(ARGV[2])
39
+
40
+ redis.call("INCRBYFLOAT", KEYS[1], inc)
41
+
42
+ if redis.call("TTL", KEYS[1]) == -1 then
43
+ redis.call("EXPIRE", KEYS[1], ttl)
44
+ end
45
+
46
+ return tonumber(redis.call("GET", KEYS[1]))
47
+ `;
48
+ exports.IncrByIfExists = `
49
+ if redis.call("EXISTS", KEYS[1]) == 1 then
50
+ redis.call("INCRBY", KEYS[1], ARGV[1])
51
+ end
52
+
53
+ return redis.call("GET", KEYS[1])
54
+ `;
55
+ exports.DecrbyAndSetTTLIfNotExists = `
56
+ if redis.call("EXISTS", KEYS[1]) == 0 then
57
+ redis.call("DECRBY", KEYS[1], ARGV[1])
58
+ redis.call("EXPIRE", KEYS[1], ARGV[2])
59
+ end
60
+
61
+ return redis.call("GET", KEYS[1])
62
+ `;
63
+ exports.DecrbyIfExists = `
64
+ if redis.call("EXISTS", KEYS[1]) == 1 then
65
+ redis.call("DECRBY", KEYS[1], ARGV[1])
66
+ end
67
+
68
+ return redis.call("GET", KEYS[1])
69
+ `;
70
+ exports.IncrByFloatAndSetTTLIfNotExists = `
71
+ if redis.call("EXISTS", KEYS[1]) == 0 then
72
+ redis.call("INCRBYFLOAT", KEYS[1], ARGV[1])
73
+ redis.call("EXPIRE", KEYS[1], ARGV[2])
74
+ end
75
+
76
+ return redis.call("GET", KEYS[1])
77
+ `;
78
+ exports.IncrByFloatIfExists = `
79
+ if redis.call("EXISTS", KEYS[1]) == 1 then
80
+ redis.call("INCRBYFLOAT", KEYS[1], ARGV[1])
81
+ end
82
+
83
+ return redis.call("GET", KEYS[1])
84
+ `;
85
+ exports.RefreshTTLIfBelowThreshold = `
86
+ -- KEYS[1] : key to inspect
87
+ -- ARGV[1] : threshold in seconds (e.g. 10)
88
+ -- ARGV[2] : new TTL in seconds to set (e.g. 60)
89
+
90
+ local ttl = redis.call("TTL", KEYS[1])
91
+
92
+ -- ttl == -2 → key doesn’t exist
93
+ -- ttl == -1 → key has no expiration
94
+ if ttl == -2 then
95
+ return -2 -- key absent
96
+ end
97
+
98
+ local threshold = tonumber(ARGV[1])
99
+ local newTTL = tonumber(ARGV[2])
100
+
101
+ -- If TTL is missing (-1) or below threshold, refresh it
102
+ if ttl == -1 or ttl < threshold then
103
+ redis.call("EXPIRE", KEYS[1], newTTL)
104
+ return newTTL -- return the TTL we just set
105
+ end
106
+
107
+ return ttl -- unchanged TTL
108
+ `;
109
+ //# sourceMappingURL=lua.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lua.js","sourceRoot":"","sources":["../../../../src/pkg/scripts/lua.ts"],"names":[],"mappings":";;;AAAa,QAAA,0BAA0B,GAAG;;;;;;;CAOzC,CAAC;AAEW,QAAA,uBAAuB,GAAG;;;;;;;;;;;CAWtC,CAAC;AACW,QAAA,uBAAuB,GAAG;;;;;;;;;;;CAWtC,CAAC;AACW,QAAA,4BAA4B,GAAG;;;;;;;;;;;CAW3C,CAAC;AAEW,QAAA,cAAc,GAAG;;;;;;CAM7B,CAAC;AAEW,QAAA,0BAA0B,GAAG;;;;;;;CAOzC,CAAC;AAEW,QAAA,cAAc,GAAG;;;;;;CAM7B,CAAC;AAEW,QAAA,+BAA+B,GAAG;;;;;;;CAO9C,CAAC;AAEW,QAAA,mBAAmB,GAAG;;;;;;CAMlC,CAAC;AAEW,QAAA,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;;CAuBzC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { ISort, SORT_DIRECTION } from "../interfaces";
2
+ export declare const toMongooseSort: (sorts: ISort[]) => Record<string, number>;
3
+ export declare const toTypeOrmSort: (sorts: ISort[]) => Record<string, SORT_DIRECTION>;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toTypeOrmSort = exports.toMongooseSort = void 0;
4
+ const toMongooseSort = (sorts) => {
5
+ return sorts.reduce((agg, current) => {
6
+ agg[current.columnName] = current.direction === "ASC" ? 1 : -1;
7
+ return agg;
8
+ }, {});
9
+ };
10
+ exports.toMongooseSort = toMongooseSort;
11
+ const toTypeOrmSort = (sorts) => {
12
+ return sorts.reduce((agg, current) => {
13
+ agg[current.columnName] = current.direction;
14
+ return agg;
15
+ }, {});
16
+ };
17
+ exports.toTypeOrmSort = toTypeOrmSort;
18
+ //# sourceMappingURL=sort-helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort-helper.js","sourceRoot":"","sources":["../../../src/pkg/sort-helper.ts"],"names":[],"mappings":";;;AAEO,MAAM,cAAc,GAAG,CAAC,KAAc,EAA0B,EAAE;IACvE,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;QACnC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/D,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC,CAAC;AANW,QAAA,cAAc,kBAMzB;AAEK,MAAM,aAAa,GAAG,CAC3B,KAAc,EACkB,EAAE;IAClC,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;QACnC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;QAE5C,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC,CAAC;AARW,QAAA,aAAa,iBAQxB"}
@@ -0,0 +1,10 @@
1
+ export declare function generateRandomId(): string;
2
+ export declare function generatePassword(length?: number): string;
3
+ export declare function validatePasswordStrengthWithMessage(password: string): string;
4
+ type MaskRule = {
5
+ keys: string[];
6
+ pattern: RegExp;
7
+ replacer: (...groups: string[]) => string;
8
+ };
9
+ export declare const maskFn: (key: string, value: unknown, additionalMaskRules?: MaskRule[]) => unknown;
10
+ export {};