@adtrackify/at-service-common 3.0.91 → 3.0.92

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 (247) hide show
  1. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  2. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.js +527 -527
  3. package/dist/cjs/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  4. package/dist/cjs/__tests__/libs/compress-decompress.spec.js +16 -16
  5. package/dist/cjs/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  6. package/dist/cjs/__tests__/s3-client/s3-client.spec.js +26 -26
  7. package/dist/cjs/clients/generic/cognito-client.d.ts +20 -20
  8. package/dist/cjs/clients/generic/cognito-client.js +164 -164
  9. package/dist/cjs/clients/generic/dynamodb-client.d.ts +17 -17
  10. package/dist/cjs/clients/generic/dynamodb-client.js +167 -167
  11. package/dist/cjs/clients/generic/eventbridge-client.d.ts +14 -14
  12. package/dist/cjs/clients/generic/eventbridge-client.js +49 -49
  13. package/dist/cjs/clients/generic/http-client.d.ts +88 -88
  14. package/dist/cjs/clients/generic/http-client.js +60 -56
  15. package/dist/cjs/clients/generic/http-client.js.map +1 -1
  16. package/dist/cjs/clients/generic/index.d.ts +10 -10
  17. package/dist/cjs/clients/generic/index.js +26 -26
  18. package/dist/cjs/clients/generic/lambda-invoke-client.d.ts +10 -10
  19. package/dist/cjs/clients/generic/lambda-invoke-client.js +35 -35
  20. package/dist/cjs/clients/generic/location-client.d.ts +8 -8
  21. package/dist/cjs/clients/generic/location-client.js +31 -31
  22. package/dist/cjs/clients/generic/redis-client.d.ts +17 -17
  23. package/dist/cjs/clients/generic/redis-client.js +117 -117
  24. package/dist/cjs/clients/generic/s3-client.d.ts +16 -16
  25. package/dist/cjs/clients/generic/s3-client.js +110 -110
  26. package/dist/cjs/clients/generic/singlestore-db-client.d.ts +14 -14
  27. package/dist/cjs/clients/generic/singlestore-db-client.js +67 -67
  28. package/dist/cjs/clients/generic/sqs-client.d.ts +14 -14
  29. package/dist/cjs/clients/generic/sqs-client.js +36 -36
  30. package/dist/cjs/clients/index.d.ts +3 -3
  31. package/dist/cjs/clients/index.js +19 -19
  32. package/dist/cjs/clients/internal-api/accounts-client.d.ts +112 -112
  33. package/dist/cjs/clients/internal-api/accounts-client.js +117 -117
  34. package/dist/cjs/clients/internal-api/cache-lambda-client.d.ts +23 -23
  35. package/dist/cjs/clients/internal-api/cache-lambda-client.js +59 -59
  36. package/dist/cjs/clients/internal-api/db-management-client.d.ts +18 -18
  37. package/dist/cjs/clients/internal-api/db-management-client.js +39 -39
  38. package/dist/cjs/clients/internal-api/destinations-client.d.ts +29 -29
  39. package/dist/cjs/clients/internal-api/destinations-client.js +54 -54
  40. package/dist/cjs/clients/internal-api/event-collector-client.d.ts +20 -20
  41. package/dist/cjs/clients/internal-api/event-collector-client.js +39 -39
  42. package/dist/cjs/clients/internal-api/identity-client.d.ts +17 -17
  43. package/dist/cjs/clients/internal-api/identity-client.js +75 -75
  44. package/dist/cjs/clients/internal-api/index.d.ts +8 -8
  45. package/dist/cjs/clients/internal-api/index.js +24 -24
  46. package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +34 -34
  47. package/dist/cjs/clients/internal-api/shopify-app-install-client.js +63 -63
  48. package/dist/cjs/clients/internal-api/users-auth-client.d.ts +31 -31
  49. package/dist/cjs/clients/internal-api/users-auth-client.js +92 -92
  50. package/dist/cjs/clients/third-party/index.d.ts +1 -1
  51. package/dist/cjs/clients/third-party/index.js +17 -17
  52. package/dist/cjs/clients/third-party/shopify-client.d.ts +198 -198
  53. package/dist/cjs/clients/third-party/shopify-client.js +150 -150
  54. package/dist/cjs/helpers/identity-cache-helper.d.ts +4 -4
  55. package/dist/cjs/helpers/identity-cache-helper.js +150 -150
  56. package/dist/cjs/helpers/index.d.ts +5 -5
  57. package/dist/cjs/helpers/index.js +21 -21
  58. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  59. package/dist/cjs/helpers/input-validation-helper.js +22 -22
  60. package/dist/cjs/helpers/logging-helper.d.ts +16 -16
  61. package/dist/cjs/helpers/logging-helper.js +84 -84
  62. package/dist/cjs/helpers/response-helper.d.ts +15 -15
  63. package/dist/cjs/helpers/response-helper.js +42 -42
  64. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  65. package/dist/cjs/helpers/shopify-helper.js +28 -28
  66. package/dist/cjs/index.d.ts +5 -5
  67. package/dist/cjs/index.js +21 -21
  68. package/dist/cjs/libs/clickId-parser.d.ts +23 -23
  69. package/dist/cjs/libs/clickId-parser.js +49 -49
  70. package/dist/cjs/libs/compression.d.ts +2 -2
  71. package/dist/cjs/libs/compression.js +33 -33
  72. package/dist/cjs/libs/crypto.d.ts +1 -1
  73. package/dist/cjs/libs/crypto.js +12 -12
  74. package/dist/cjs/libs/dates.d.ts +6 -6
  75. package/dist/cjs/libs/dates.js +31 -31
  76. package/dist/cjs/libs/http-error.d.ts +21 -21
  77. package/dist/cjs/libs/http-error.js +59 -59
  78. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  79. package/dist/cjs/libs/http-status-codes.js +62 -62
  80. package/dist/cjs/libs/index.d.ts +9 -9
  81. package/dist/cjs/libs/index.js +25 -25
  82. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  83. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  84. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  85. package/dist/cjs/libs/referrer-parser/referrer-data.js +4712 -4712
  86. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  87. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +128 -128
  88. package/dist/cjs/libs/url.d.ts +1 -1
  89. package/dist/cjs/libs/url.js +13 -13
  90. package/dist/cjs/services/db/destinations-db-service.d.ts +8 -8
  91. package/dist/cjs/services/db/destinations-db-service.js +47 -47
  92. package/dist/cjs/services/db/identity-cache-db-service.d.ts +24 -24
  93. package/dist/cjs/services/db/identity-cache-db-service.js +233 -233
  94. package/dist/cjs/services/db/index.d.ts +7 -7
  95. package/dist/cjs/services/db/index.js +23 -23
  96. package/dist/cjs/services/db/log-events-db-service.d.ts +11 -11
  97. package/dist/cjs/services/db/log-events-db-service.js +172 -172
  98. package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +9 -9
  99. package/dist/cjs/services/db/purchased-contacts-db-service.js +38 -38
  100. package/dist/cjs/services/db/shopify-app-installs-db-service.d.ts +7 -7
  101. package/dist/cjs/services/db/shopify-app-installs-db-service.js +47 -47
  102. package/dist/cjs/services/db/shopify-products-cache-db-service.d.ts +9 -9
  103. package/dist/cjs/services/db/shopify-products-cache-db-service.js +64 -64
  104. package/dist/cjs/services/db/tracking-events-db-service.d.ts +20 -20
  105. package/dist/cjs/services/db/tracking-events-db-service.js +162 -162
  106. package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
  107. package/dist/cjs/services/eventbridge-integration-service.js +28 -28
  108. package/dist/cjs/services/index.d.ts +5 -5
  109. package/dist/cjs/services/index.js +21 -21
  110. package/dist/cjs/services/ipdata-lookup-service.d.ts +17 -17
  111. package/dist/cjs/services/ipdata-lookup-service.js +71 -71
  112. package/dist/cjs/services/log-event-service.d.ts +9 -9
  113. package/dist/cjs/services/log-event-service.js +56 -56
  114. package/dist/cjs/services/metric-event-service.d.ts +9 -9
  115. package/dist/cjs/services/metric-event-service.js +49 -49
  116. package/dist/cjs/types/api-response.d.ts +6 -6
  117. package/dist/cjs/types/api-response.js +2 -2
  118. package/dist/cjs/types/index.d.ts +1 -1
  119. package/dist/cjs/types/index.js +17 -17
  120. package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
  121. package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
  122. package/dist/cjs/types/internal-events/index.d.ts +1 -1
  123. package/dist/cjs/types/internal-events/index.js +17 -17
  124. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  125. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js +525 -525
  126. package/dist/esm/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  127. package/dist/esm/__tests__/libs/compress-decompress.spec.js +14 -14
  128. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  129. package/dist/esm/__tests__/s3-client/s3-client.spec.js +24 -24
  130. package/dist/esm/clients/generic/cognito-client.d.ts +20 -20
  131. package/dist/esm/clients/generic/cognito-client.js +159 -159
  132. package/dist/esm/clients/generic/dynamodb-client.d.ts +17 -17
  133. package/dist/esm/clients/generic/dynamodb-client.js +163 -163
  134. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  135. package/dist/esm/clients/generic/eventbridge-client.js +45 -45
  136. package/dist/esm/clients/generic/http-client.d.ts +88 -88
  137. package/dist/esm/clients/generic/http-client.js +52 -48
  138. package/dist/esm/clients/generic/http-client.js.map +1 -1
  139. package/dist/esm/clients/generic/index.d.ts +10 -10
  140. package/dist/esm/clients/generic/index.js +10 -10
  141. package/dist/esm/clients/generic/lambda-invoke-client.d.ts +10 -10
  142. package/dist/esm/clients/generic/lambda-invoke-client.js +31 -31
  143. package/dist/esm/clients/generic/location-client.d.ts +8 -8
  144. package/dist/esm/clients/generic/location-client.js +27 -27
  145. package/dist/esm/clients/generic/redis-client.d.ts +17 -17
  146. package/dist/esm/clients/generic/redis-client.js +110 -110
  147. package/dist/esm/clients/generic/s3-client.d.ts +16 -16
  148. package/dist/esm/clients/generic/s3-client.js +106 -106
  149. package/dist/esm/clients/generic/singlestore-db-client.d.ts +14 -14
  150. package/dist/esm/clients/generic/singlestore-db-client.js +40 -40
  151. package/dist/esm/clients/generic/sqs-client.d.ts +14 -14
  152. package/dist/esm/clients/generic/sqs-client.js +32 -32
  153. package/dist/esm/clients/index.d.ts +3 -3
  154. package/dist/esm/clients/index.js +3 -3
  155. package/dist/esm/clients/internal-api/accounts-client.d.ts +112 -112
  156. package/dist/esm/clients/internal-api/accounts-client.js +113 -113
  157. package/dist/esm/clients/internal-api/cache-lambda-client.d.ts +23 -23
  158. package/dist/esm/clients/internal-api/cache-lambda-client.js +55 -55
  159. package/dist/esm/clients/internal-api/db-management-client.d.ts +18 -18
  160. package/dist/esm/clients/internal-api/db-management-client.js +32 -32
  161. package/dist/esm/clients/internal-api/destinations-client.d.ts +29 -29
  162. package/dist/esm/clients/internal-api/destinations-client.js +50 -50
  163. package/dist/esm/clients/internal-api/event-collector-client.d.ts +20 -20
  164. package/dist/esm/clients/internal-api/event-collector-client.js +32 -32
  165. package/dist/esm/clients/internal-api/identity-client.d.ts +17 -17
  166. package/dist/esm/clients/internal-api/identity-client.js +71 -71
  167. package/dist/esm/clients/internal-api/index.d.ts +8 -8
  168. package/dist/esm/clients/internal-api/index.js +8 -8
  169. package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +34 -34
  170. package/dist/esm/clients/internal-api/shopify-app-install-client.js +56 -56
  171. package/dist/esm/clients/internal-api/users-auth-client.d.ts +31 -31
  172. package/dist/esm/clients/internal-api/users-auth-client.js +88 -88
  173. package/dist/esm/clients/third-party/index.d.ts +1 -1
  174. package/dist/esm/clients/third-party/index.js +1 -1
  175. package/dist/esm/clients/third-party/shopify-client.d.ts +198 -198
  176. package/dist/esm/clients/third-party/shopify-client.js +146 -146
  177. package/dist/esm/helpers/identity-cache-helper.d.ts +4 -4
  178. package/dist/esm/helpers/identity-cache-helper.js +145 -145
  179. package/dist/esm/helpers/index.d.ts +5 -5
  180. package/dist/esm/helpers/index.js +5 -5
  181. package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
  182. package/dist/esm/helpers/input-validation-helper.js +18 -18
  183. package/dist/esm/helpers/logging-helper.d.ts +16 -16
  184. package/dist/esm/helpers/logging-helper.js +56 -56
  185. package/dist/esm/helpers/response-helper.d.ts +15 -15
  186. package/dist/esm/helpers/response-helper.js +36 -36
  187. package/dist/esm/helpers/shopify-helper.d.ts +9 -9
  188. package/dist/esm/helpers/shopify-helper.js +23 -23
  189. package/dist/esm/index.d.ts +5 -5
  190. package/dist/esm/index.js +5 -5
  191. package/dist/esm/libs/clickId-parser.d.ts +23 -23
  192. package/dist/esm/libs/clickId-parser.js +45 -45
  193. package/dist/esm/libs/compression.d.ts +2 -2
  194. package/dist/esm/libs/compression.js +25 -25
  195. package/dist/esm/libs/crypto.d.ts +1 -1
  196. package/dist/esm/libs/crypto.js +5 -5
  197. package/dist/esm/libs/dates.d.ts +6 -6
  198. package/dist/esm/libs/dates.js +22 -22
  199. package/dist/esm/libs/http-error.d.ts +21 -21
  200. package/dist/esm/libs/http-error.js +55 -55
  201. package/dist/esm/libs/http-status-codes.d.ts +58 -58
  202. package/dist/esm/libs/http-status-codes.js +59 -59
  203. package/dist/esm/libs/index.d.ts +9 -9
  204. package/dist/esm/libs/index.js +9 -9
  205. package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
  206. package/dist/esm/libs/referrer-parser/index.js +2 -2
  207. package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
  208. package/dist/esm/libs/referrer-parser/referrer-data.js +4709 -4709
  209. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  210. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +121 -121
  211. package/dist/esm/libs/url.d.ts +1 -1
  212. package/dist/esm/libs/url.js +9 -9
  213. package/dist/esm/services/db/destinations-db-service.d.ts +8 -8
  214. package/dist/esm/services/db/destinations-db-service.js +43 -43
  215. package/dist/esm/services/db/identity-cache-db-service.d.ts +24 -24
  216. package/dist/esm/services/db/identity-cache-db-service.js +229 -229
  217. package/dist/esm/services/db/index.d.ts +7 -7
  218. package/dist/esm/services/db/index.js +7 -7
  219. package/dist/esm/services/db/log-events-db-service.d.ts +11 -11
  220. package/dist/esm/services/db/log-events-db-service.js +168 -168
  221. package/dist/esm/services/db/purchased-contacts-db-service.d.ts +9 -9
  222. package/dist/esm/services/db/purchased-contacts-db-service.js +34 -34
  223. package/dist/esm/services/db/shopify-app-installs-db-service.d.ts +7 -7
  224. package/dist/esm/services/db/shopify-app-installs-db-service.js +43 -43
  225. package/dist/esm/services/db/shopify-products-cache-db-service.d.ts +9 -9
  226. package/dist/esm/services/db/shopify-products-cache-db-service.js +60 -60
  227. package/dist/esm/services/db/tracking-events-db-service.d.ts +20 -20
  228. package/dist/esm/services/db/tracking-events-db-service.js +158 -158
  229. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  230. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  231. package/dist/esm/services/index.d.ts +5 -5
  232. package/dist/esm/services/index.js +5 -5
  233. package/dist/esm/services/ipdata-lookup-service.d.ts +17 -17
  234. package/dist/esm/services/ipdata-lookup-service.js +67 -67
  235. package/dist/esm/services/log-event-service.d.ts +9 -9
  236. package/dist/esm/services/log-event-service.js +52 -52
  237. package/dist/esm/services/metric-event-service.d.ts +9 -9
  238. package/dist/esm/services/metric-event-service.js +45 -45
  239. package/dist/esm/types/api-response.d.ts +6 -6
  240. package/dist/esm/types/api-response.js +1 -1
  241. package/dist/esm/types/index.d.ts +1 -1
  242. package/dist/esm/types/index.js +1 -1
  243. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  244. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  245. package/dist/esm/types/internal-events/index.d.ts +1 -1
  246. package/dist/esm/types/internal-events/index.js +1 -1
  247. package/package.json +1 -1
@@ -1,118 +1,118 @@
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.RedisClient = void 0;
7
- const ioredis_1 = __importDefault(require("ioredis"));
8
- const helpers_1 = require("../../helpers");
9
- class RedisClient {
10
- poolSize;
11
- pool;
12
- host;
13
- port;
14
- constructor(host, port = 6379, poolSize = 3) {
15
- this.poolSize = poolSize;
16
- this.host = host;
17
- this.port = port;
18
- this.pool = Array.from({ length: poolSize }, () => this.createClient(host, port));
19
- }
20
- createClient(host, port) {
21
- try {
22
- const client = new ioredis_1.default({
23
- host: host,
24
- port: port,
25
- maxRetriesPerRequest: 3,
26
- commandTimeout: 3000,
27
- lazyConnect: true,
28
- keepAlive: 1000,
29
- });
30
- return client;
31
- }
32
- catch (err) {
33
- helpers_1.Logger.error('Error creating Redis client:', { err });
34
- return null;
35
- }
36
- }
37
- getClient() {
38
- const randomIndex = Math.floor(Math.random() * this.poolSize);
39
- let client = this.pool[randomIndex];
40
- if (!client) {
41
- client = this.createClient(this.host, this.port);
42
- }
43
- return client;
44
- }
45
- async connect(client) {
46
- try {
47
- await client.connect();
48
- helpers_1.Logger.debug('Connected to Redis');
49
- }
50
- catch (err) {
51
- helpers_1.Logger.error('Error connecting to Redis:', { err });
52
- return;
53
- }
54
- }
55
- async safeSet(key, value, ttlInSeconds) {
56
- try {
57
- const client = this.getClient();
58
- if (ttlInSeconds) {
59
- await client.set(key, value, 'EX', ttlInSeconds);
60
- }
61
- else {
62
- await client.set(key, value);
63
- }
64
- }
65
- catch (err) {
66
- helpers_1.Logger.error('Error setting value in Redis:', { err, key, value });
67
- return;
68
- }
69
- }
70
- async unsafeSet(key, value, ttlInSeconds) {
71
- const client = this.getClient();
72
- if (ttlInSeconds) {
73
- await client.set(key, value, 'EX', ttlInSeconds);
74
- }
75
- else {
76
- await client.set(key, value);
77
- }
78
- }
79
- async unsafeGet(key) {
80
- const client = this.getClient();
81
- helpers_1.Logger.debug('get', { key, client });
82
- return await client.get(key);
83
- }
84
- async safeGet(key) {
85
- try {
86
- const client = this.getClient();
87
- helpers_1.Logger.debug('get', { key, client });
88
- return await client.get(key);
89
- }
90
- catch (err) {
91
- helpers_1.Logger.error('Error getting value from Redis:', { err, key });
92
- return null;
93
- }
94
- }
95
- async del(key) {
96
- try {
97
- const client = this.getClient();
98
- return await client.del(key);
99
- }
100
- catch (err) {
101
- helpers_1.Logger.error('Error deleting key from Redis:', { err });
102
- return 0;
103
- }
104
- }
105
- async disconnect() {
106
- try {
107
- const client = this.getClient();
108
- await client.quit();
109
- helpers_1.Logger.debug('Disconnected from Redis');
110
- }
111
- catch (err) {
112
- helpers_1.Logger.error('Error disconnecting from Redis:', { err });
113
- return;
114
- }
115
- }
116
- }
117
- exports.RedisClient = RedisClient;
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.RedisClient = void 0;
7
+ const ioredis_1 = __importDefault(require("ioredis"));
8
+ const helpers_1 = require("../../helpers");
9
+ class RedisClient {
10
+ poolSize;
11
+ pool;
12
+ host;
13
+ port;
14
+ constructor(host, port = 6379, poolSize = 3) {
15
+ this.poolSize = poolSize;
16
+ this.host = host;
17
+ this.port = port;
18
+ this.pool = Array.from({ length: poolSize }, () => this.createClient(host, port));
19
+ }
20
+ createClient(host, port) {
21
+ try {
22
+ const client = new ioredis_1.default({
23
+ host: host,
24
+ port: port,
25
+ maxRetriesPerRequest: 3,
26
+ commandTimeout: 3000,
27
+ lazyConnect: true,
28
+ keepAlive: 1000,
29
+ });
30
+ return client;
31
+ }
32
+ catch (err) {
33
+ helpers_1.Logger.error('Error creating Redis client:', { err });
34
+ return null;
35
+ }
36
+ }
37
+ getClient() {
38
+ const randomIndex = Math.floor(Math.random() * this.poolSize);
39
+ let client = this.pool[randomIndex];
40
+ if (!client) {
41
+ client = this.createClient(this.host, this.port);
42
+ }
43
+ return client;
44
+ }
45
+ async connect(client) {
46
+ try {
47
+ await client.connect();
48
+ helpers_1.Logger.debug('Connected to Redis');
49
+ }
50
+ catch (err) {
51
+ helpers_1.Logger.error('Error connecting to Redis:', { err });
52
+ return;
53
+ }
54
+ }
55
+ async safeSet(key, value, ttlInSeconds) {
56
+ try {
57
+ const client = this.getClient();
58
+ if (ttlInSeconds) {
59
+ await client.set(key, value, 'EX', ttlInSeconds);
60
+ }
61
+ else {
62
+ await client.set(key, value);
63
+ }
64
+ }
65
+ catch (err) {
66
+ helpers_1.Logger.error('Error setting value in Redis:', { err, key, value });
67
+ return;
68
+ }
69
+ }
70
+ async unsafeSet(key, value, ttlInSeconds) {
71
+ const client = this.getClient();
72
+ if (ttlInSeconds) {
73
+ await client.set(key, value, 'EX', ttlInSeconds);
74
+ }
75
+ else {
76
+ await client.set(key, value);
77
+ }
78
+ }
79
+ async unsafeGet(key) {
80
+ const client = this.getClient();
81
+ helpers_1.Logger.debug('get', { key, client });
82
+ return await client.get(key);
83
+ }
84
+ async safeGet(key) {
85
+ try {
86
+ const client = this.getClient();
87
+ helpers_1.Logger.debug('get', { key, client });
88
+ return await client.get(key);
89
+ }
90
+ catch (err) {
91
+ helpers_1.Logger.error('Error getting value from Redis:', { err, key });
92
+ return null;
93
+ }
94
+ }
95
+ async del(key) {
96
+ try {
97
+ const client = this.getClient();
98
+ return await client.del(key);
99
+ }
100
+ catch (err) {
101
+ helpers_1.Logger.error('Error deleting key from Redis:', { err });
102
+ return 0;
103
+ }
104
+ }
105
+ async disconnect() {
106
+ try {
107
+ const client = this.getClient();
108
+ await client.quit();
109
+ helpers_1.Logger.debug('Disconnected from Redis');
110
+ }
111
+ catch (err) {
112
+ helpers_1.Logger.error('Error disconnecting from Redis:', { err });
113
+ return;
114
+ }
115
+ }
116
+ }
117
+ exports.RedisClient = RedisClient;
118
118
  //# sourceMappingURL=redis-client.js.map
@@ -1,16 +1,16 @@
1
- import { ObjectCannedACL, PutObjectCommandOutput, S3 } from '@aws-sdk/client-s3';
2
- export declare class S3Client {
3
- s3: S3;
4
- constructor(region?: string);
5
- getObject(path: string, bucket: string): Promise<any>;
6
- checkObjectExists(path: string, bucket: string): Promise<boolean>;
7
- checkAndUploadJson(path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL, retryCount?: number, maxRetries?: number): Promise<{
8
- status: boolean;
9
- response?: PutObjectCommandOutput;
10
- }>;
11
- uploadJson(path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL, retryCount?: number, maxRetries?: number, stringify?: boolean): Promise<{
12
- status: boolean;
13
- response: PutObjectCommandOutput;
14
- }>;
15
- moveObject(bucket: string, key: string, moveToKey: string): Promise<any>;
16
- }
1
+ import { ObjectCannedACL, PutObjectCommandOutput, S3 } from '@aws-sdk/client-s3';
2
+ export declare class S3Client {
3
+ s3: S3;
4
+ constructor(region?: string);
5
+ getObject(path: string, bucket: string): Promise<any>;
6
+ checkObjectExists(path: string, bucket: string): Promise<boolean>;
7
+ checkAndUploadJson(path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL, retryCount?: number, maxRetries?: number): Promise<{
8
+ status: boolean;
9
+ response?: PutObjectCommandOutput;
10
+ }>;
11
+ uploadJson(path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL, retryCount?: number, maxRetries?: number, stringify?: boolean): Promise<{
12
+ status: boolean;
13
+ response: PutObjectCommandOutput;
14
+ }>;
15
+ moveObject(bucket: string, key: string, moveToKey: string): Promise<any>;
16
+ }
@@ -1,111 +1,111 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.S3Client = void 0;
4
- const client_s3_1 = require("@aws-sdk/client-s3");
5
- const index_js_1 = require("../../index.js");
6
- class S3Client {
7
- s3;
8
- constructor(region = 'us-west-2') {
9
- this.s3 = new client_s3_1.S3({ region });
10
- }
11
- async getObject(path, bucket) {
12
- try {
13
- const data = await this.s3.getObject({
14
- Bucket: bucket,
15
- Key: path
16
- });
17
- return data?.Body;
18
- }
19
- catch (error) {
20
- index_js_1.Logger.error('Failed to getObject', { bucket, path });
21
- }
22
- }
23
- async checkObjectExists(path, bucket) {
24
- try {
25
- const data = await this.s3.headObject({
26
- Bucket: bucket,
27
- Key: path,
28
- });
29
- const exists = data.$metadata.httpStatusCode === 200;
30
- return exists;
31
- }
32
- catch (error) {
33
- if (error.$metadata?.httpStatusCode === 404) {
34
- return false;
35
- }
36
- else if (error.$metadata?.httpStatusCode === 403) {
37
- return false;
38
- }
39
- else {
40
- index_js_1.Logger.error('checkObjectExists unknown error', { error });
41
- return false;
42
- }
43
- }
44
- }
45
- async checkAndUploadJson(path, bucket, jsonData, ACL = client_s3_1.ObjectCannedACL.private, retryCount = 0, maxRetries = 5) {
46
- try {
47
- const checkObject = await this.checkObjectExists(path, bucket);
48
- let res = {};
49
- if (!checkObject) {
50
- res = await this.s3.putObject({
51
- ACL,
52
- Bucket: bucket,
53
- ContentType: 'application/json; charset=utf-8',
54
- Body: JSON.stringify(jsonData),
55
- Key: path
56
- });
57
- }
58
- return { status: true, response: res };
59
- }
60
- catch (error) {
61
- index_js_1.Logger.error('Error in s3 upload json', { error });
62
- if (retryCount < maxRetries) {
63
- retryCount++;
64
- index_js_1.Logger.warn('retrying to uploadJson', { path, bucket, jsonData, ACL, retryCount });
65
- await new Promise(resolve => setTimeout(resolve, 1000 * retryCount));
66
- return await this.uploadJson(path, bucket, jsonData, ACL, retryCount);
67
- }
68
- return { status: false, response: jsonData };
69
- }
70
- }
71
- async uploadJson(path, bucket, jsonData, ACL = client_s3_1.ObjectCannedACL.private, retryCount = 0, maxRetries = 5, stringify = true) {
72
- try {
73
- const res = await this.s3.putObject({
74
- ACL,
75
- Bucket: bucket,
76
- ContentType: 'application/json; charset=utf-8',
77
- Body: stringify ? JSON.stringify(jsonData) : jsonData,
78
- Key: path
79
- });
80
- return { status: true, response: res };
81
- }
82
- catch (error) {
83
- index_js_1.Logger.error('Error in s3 upload json', { error });
84
- if (retryCount < maxRetries) {
85
- retryCount++;
86
- index_js_1.Logger.warn('retrying to uploadJson', { path, bucket, jsonData, ACL, retryCount });
87
- await new Promise(resolve => setTimeout(resolve, 1000 * retryCount));
88
- return await this.uploadJson(path, bucket, jsonData, ACL, retryCount);
89
- }
90
- return { status: false, response: jsonData };
91
- }
92
- }
93
- async moveObject(bucket, key, moveToKey) {
94
- try {
95
- await this.s3.copyObject({
96
- Bucket: bucket,
97
- CopySource: `${bucket}/${key}`,
98
- Key: moveToKey
99
- });
100
- await this.s3.deleteObject({
101
- Bucket: bucket,
102
- Key: key
103
- });
104
- }
105
- catch (error) {
106
- index_js_1.Logger.error('Failed to move s3 object', { error, bucket, key, moveToKey });
107
- }
108
- }
109
- }
110
- exports.S3Client = S3Client;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.S3Client = void 0;
4
+ const client_s3_1 = require("@aws-sdk/client-s3");
5
+ const index_js_1 = require("../../index.js");
6
+ class S3Client {
7
+ s3;
8
+ constructor(region = 'us-west-2') {
9
+ this.s3 = new client_s3_1.S3({ region });
10
+ }
11
+ async getObject(path, bucket) {
12
+ try {
13
+ const data = await this.s3.getObject({
14
+ Bucket: bucket,
15
+ Key: path
16
+ });
17
+ return data?.Body;
18
+ }
19
+ catch (error) {
20
+ index_js_1.Logger.error('Failed to getObject', { bucket, path });
21
+ }
22
+ }
23
+ async checkObjectExists(path, bucket) {
24
+ try {
25
+ const data = await this.s3.headObject({
26
+ Bucket: bucket,
27
+ Key: path,
28
+ });
29
+ const exists = data.$metadata.httpStatusCode === 200;
30
+ return exists;
31
+ }
32
+ catch (error) {
33
+ if (error.$metadata?.httpStatusCode === 404) {
34
+ return false;
35
+ }
36
+ else if (error.$metadata?.httpStatusCode === 403) {
37
+ return false;
38
+ }
39
+ else {
40
+ index_js_1.Logger.error('checkObjectExists unknown error', { error });
41
+ return false;
42
+ }
43
+ }
44
+ }
45
+ async checkAndUploadJson(path, bucket, jsonData, ACL = client_s3_1.ObjectCannedACL.private, retryCount = 0, maxRetries = 5) {
46
+ try {
47
+ const checkObject = await this.checkObjectExists(path, bucket);
48
+ let res = {};
49
+ if (!checkObject) {
50
+ res = await this.s3.putObject({
51
+ ACL,
52
+ Bucket: bucket,
53
+ ContentType: 'application/json; charset=utf-8',
54
+ Body: JSON.stringify(jsonData),
55
+ Key: path
56
+ });
57
+ }
58
+ return { status: true, response: res };
59
+ }
60
+ catch (error) {
61
+ index_js_1.Logger.error('Error in s3 upload json', { error });
62
+ if (retryCount < maxRetries) {
63
+ retryCount++;
64
+ index_js_1.Logger.warn('retrying to uploadJson', { path, bucket, jsonData, ACL, retryCount });
65
+ await new Promise(resolve => setTimeout(resolve, 1000 * retryCount));
66
+ return await this.uploadJson(path, bucket, jsonData, ACL, retryCount);
67
+ }
68
+ return { status: false, response: jsonData };
69
+ }
70
+ }
71
+ async uploadJson(path, bucket, jsonData, ACL = client_s3_1.ObjectCannedACL.private, retryCount = 0, maxRetries = 5, stringify = true) {
72
+ try {
73
+ const res = await this.s3.putObject({
74
+ ACL,
75
+ Bucket: bucket,
76
+ ContentType: 'application/json; charset=utf-8',
77
+ Body: stringify ? JSON.stringify(jsonData) : jsonData,
78
+ Key: path
79
+ });
80
+ return { status: true, response: res };
81
+ }
82
+ catch (error) {
83
+ index_js_1.Logger.error('Error in s3 upload json', { error });
84
+ if (retryCount < maxRetries) {
85
+ retryCount++;
86
+ index_js_1.Logger.warn('retrying to uploadJson', { path, bucket, jsonData, ACL, retryCount });
87
+ await new Promise(resolve => setTimeout(resolve, 1000 * retryCount));
88
+ return await this.uploadJson(path, bucket, jsonData, ACL, retryCount);
89
+ }
90
+ return { status: false, response: jsonData };
91
+ }
92
+ }
93
+ async moveObject(bucket, key, moveToKey) {
94
+ try {
95
+ await this.s3.copyObject({
96
+ Bucket: bucket,
97
+ CopySource: `${bucket}/${key}`,
98
+ Key: moveToKey
99
+ });
100
+ await this.s3.deleteObject({
101
+ Bucket: bucket,
102
+ Key: key
103
+ });
104
+ }
105
+ catch (error) {
106
+ index_js_1.Logger.error('Failed to move s3 object', { error, bucket, key, moveToKey });
107
+ }
108
+ }
109
+ }
110
+ exports.S3Client = S3Client;
111
111
  //# sourceMappingURL=s3-client.js.map
@@ -1,14 +1,14 @@
1
- import * as mysql from 'mysql2/promise';
2
- export declare class SingleStoreDBClient {
3
- _pool: mysql.Pool;
4
- constructor(host: string, user: string, password: string, database: string, port: string);
5
- private getPool;
6
- private getConnection;
7
- executeQuery(query: string, values?: any): Promise<{
8
- rows: mysql.QueryResult;
9
- success: boolean;
10
- } | {
11
- success: boolean;
12
- rows?: undefined;
13
- }>;
14
- }
1
+ import * as mysql from 'mysql2/promise';
2
+ export declare class SingleStoreDBClient {
3
+ _pool: mysql.Pool;
4
+ constructor(host: string, user: string, password: string, database: string, port: string);
5
+ private getPool;
6
+ private getConnection;
7
+ executeQuery(query: string, values?: any): Promise<{
8
+ rows: mysql.QueryResult;
9
+ success: boolean;
10
+ } | {
11
+ success: boolean;
12
+ rows?: undefined;
13
+ }>;
14
+ }
@@ -1,68 +1,68 @@
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.SingleStoreDBClient = void 0;
27
- const mysql = __importStar(require("mysql2/promise"));
28
- const helpers_1 = require("../../helpers");
29
- class SingleStoreDBClient {
30
- _pool;
31
- constructor(host, user, password, database, port) {
32
- if (!host || !user || !password || !database || !port) {
33
- throw new Error('SingleStore env values not found');
34
- }
35
- this._pool = this.getPool(host, user, password, database, port);
36
- }
37
- getPool(host, user, password, database, port) {
38
- let pool = null;
39
- pool = mysql.createPool({
40
- host: host,
41
- port: +port,
42
- user: user,
43
- password: password,
44
- database: database,
45
- multipleStatements: true,
46
- });
47
- return pool;
48
- }
49
- async getConnection() {
50
- return this._pool;
51
- }
52
- async executeQuery(query, values) {
53
- try {
54
- const pool = await this.getConnection();
55
- const [rows] = await pool.query(query, values);
56
- return { rows, success: true };
57
- }
58
- catch (error) {
59
- if (error?.sql) {
60
- error.sql = error.sql.substring(0, 1000);
61
- }
62
- helpers_1.Logger.error('Error executing query', { query: query?.substring(0, 1000), error });
63
- return { success: false };
64
- }
65
- }
66
- }
67
- exports.SingleStoreDBClient = SingleStoreDBClient;
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.SingleStoreDBClient = void 0;
27
+ const mysql = __importStar(require("mysql2/promise"));
28
+ const helpers_1 = require("../../helpers");
29
+ class SingleStoreDBClient {
30
+ _pool;
31
+ constructor(host, user, password, database, port) {
32
+ if (!host || !user || !password || !database || !port) {
33
+ throw new Error('SingleStore env values not found');
34
+ }
35
+ this._pool = this.getPool(host, user, password, database, port);
36
+ }
37
+ getPool(host, user, password, database, port) {
38
+ let pool = null;
39
+ pool = mysql.createPool({
40
+ host: host,
41
+ port: +port,
42
+ user: user,
43
+ password: password,
44
+ database: database,
45
+ multipleStatements: true,
46
+ });
47
+ return pool;
48
+ }
49
+ async getConnection() {
50
+ return this._pool;
51
+ }
52
+ async executeQuery(query, values) {
53
+ try {
54
+ const pool = await this.getConnection();
55
+ const [rows] = await pool.query(query, values);
56
+ return { rows, success: true };
57
+ }
58
+ catch (error) {
59
+ if (error?.sql) {
60
+ error.sql = error.sql.substring(0, 1000);
61
+ }
62
+ helpers_1.Logger.error('Error executing query', { query: query?.substring(0, 1000), error });
63
+ return { success: false };
64
+ }
65
+ }
66
+ }
67
+ exports.SingleStoreDBClient = SingleStoreDBClient;
68
68
  //# sourceMappingURL=singlestore-db-client.js.map