@adtrackify/at-service-common 2.0.29 → 2.0.30

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 (187) hide show
  1. package/dist/cjs/__tests__/helpers/subscription-helper.spec.d.ts +1 -1
  2. package/dist/cjs/__tests__/helpers/subscription-helper.spec.js +52 -52
  3. package/dist/cjs/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  4. package/dist/cjs/__tests__/s3-client/s3-client.spec.js +26 -26
  5. package/dist/cjs/clients/generic/cognito-client.d.ts +19 -19
  6. package/dist/cjs/clients/generic/cognito-client.js +144 -144
  7. package/dist/cjs/clients/generic/dynamodb-client.d.ts +16 -16
  8. package/dist/cjs/clients/generic/dynamodb-client.js +144 -144
  9. package/dist/cjs/clients/generic/eventbridge-client.d.ts +14 -14
  10. package/dist/cjs/clients/generic/eventbridge-client.js +49 -49
  11. package/dist/cjs/clients/generic/http-client.d.ts +30 -30
  12. package/dist/cjs/clients/generic/http-client.js +35 -35
  13. package/dist/cjs/clients/generic/index.d.ts +6 -6
  14. package/dist/cjs/clients/generic/index.js +22 -22
  15. package/dist/cjs/clients/generic/s3-client.d.ts +14 -14
  16. package/dist/cjs/clients/generic/s3-client.js +82 -82
  17. package/dist/cjs/clients/generic/sqs-client.d.ts +14 -14
  18. package/dist/cjs/clients/generic/sqs-client.js +38 -38
  19. package/dist/cjs/clients/index.d.ts +3 -3
  20. package/dist/cjs/clients/index.js +19 -19
  21. package/dist/cjs/clients/internal-api/accounts-client.d.ts +82 -82
  22. package/dist/cjs/clients/internal-api/accounts-client.js +82 -82
  23. package/dist/cjs/clients/internal-api/db-management-client.d.ts +48 -48
  24. package/dist/cjs/clients/internal-api/db-management-client.js +37 -37
  25. package/dist/cjs/clients/internal-api/destinations-client.d.ts +56 -56
  26. package/dist/cjs/clients/internal-api/destinations-client.js +52 -52
  27. package/dist/cjs/clients/internal-api/event-collector-client.d.ts +47 -47
  28. package/dist/cjs/clients/internal-api/event-collector-client.js +37 -37
  29. package/dist/cjs/clients/internal-api/identity-client.d.ts +7 -7
  30. package/dist/cjs/clients/internal-api/identity-client.js +41 -41
  31. package/dist/cjs/clients/internal-api/index.d.ts +7 -7
  32. package/dist/cjs/clients/internal-api/index.js +23 -23
  33. package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +57 -57
  34. package/dist/cjs/clients/internal-api/shopify-app-install-client.js +49 -49
  35. package/dist/cjs/clients/internal-api/users-auth-client.d.ts +61 -61
  36. package/dist/cjs/clients/internal-api/users-auth-client.js +77 -77
  37. package/dist/cjs/clients/third-party/index.d.ts +1 -1
  38. package/dist/cjs/clients/third-party/index.js +17 -17
  39. package/dist/cjs/clients/third-party/shopify-client.d.ts +90 -90
  40. package/dist/cjs/clients/third-party/shopify-client.js +125 -125
  41. package/dist/cjs/helpers/index.d.ts +5 -5
  42. package/dist/cjs/helpers/index.js +21 -21
  43. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  44. package/dist/cjs/helpers/input-validation-helper.js +23 -23
  45. package/dist/cjs/helpers/logging-helper.d.ts +15 -15
  46. package/dist/cjs/helpers/logging-helper.js +84 -80
  47. package/dist/cjs/helpers/logging-helper.js.map +1 -1
  48. package/dist/cjs/helpers/response-helper.d.ts +15 -15
  49. package/dist/cjs/helpers/response-helper.js +42 -42
  50. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  51. package/dist/cjs/helpers/shopify-helper.js +28 -28
  52. package/dist/cjs/helpers/subscription-helper.d.ts +8 -8
  53. package/dist/cjs/helpers/subscription-helper.js +239 -239
  54. package/dist/cjs/index.d.ts +5 -5
  55. package/dist/cjs/index.js +21 -21
  56. package/dist/cjs/libs/clickId-parser.d.ts +23 -23
  57. package/dist/cjs/libs/clickId-parser.js +49 -49
  58. package/dist/cjs/libs/crypto.d.ts +1 -1
  59. package/dist/cjs/libs/crypto.js +12 -12
  60. package/dist/cjs/libs/dates.d.ts +3 -3
  61. package/dist/cjs/libs/dates.js +16 -16
  62. package/dist/cjs/libs/http-error.d.ts +21 -21
  63. package/dist/cjs/libs/http-error.js +59 -59
  64. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  65. package/dist/cjs/libs/http-status-codes.js +62 -62
  66. package/dist/cjs/libs/index.d.ts +8 -8
  67. package/dist/cjs/libs/index.js +24 -24
  68. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  69. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  70. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  71. package/dist/cjs/libs/referrer-parser/referrer-data.js +4712 -4712
  72. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  73. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +128 -128
  74. package/dist/cjs/libs/url.d.ts +1 -1
  75. package/dist/cjs/libs/url.js +13 -13
  76. package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
  77. package/dist/cjs/services/eventbridge-integration-service.js +28 -28
  78. package/dist/cjs/services/index.d.ts +4 -4
  79. package/dist/cjs/services/index.js +20 -20
  80. package/dist/cjs/services/ipdata-lookup-service.d.ts +8 -8
  81. package/dist/cjs/services/ipdata-lookup-service.js +59 -59
  82. package/dist/cjs/services/log-event-service.d.ts +9 -9
  83. package/dist/cjs/services/log-event-service.js +52 -52
  84. package/dist/cjs/services/metric-event-service.d.ts +9 -9
  85. package/dist/cjs/services/metric-event-service.js +49 -49
  86. package/dist/cjs/types/api-response.d.ts +6 -6
  87. package/dist/cjs/types/api-response.js +2 -2
  88. package/dist/cjs/types/index.d.ts +1 -1
  89. package/dist/cjs/types/index.js +17 -17
  90. package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
  91. package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
  92. package/dist/cjs/types/internal-events/index.d.ts +1 -1
  93. package/dist/cjs/types/internal-events/index.js +17 -17
  94. package/dist/esm/__tests__/helpers/subscription-helper.spec.d.ts +1 -1
  95. package/dist/esm/__tests__/helpers/subscription-helper.spec.js +27 -27
  96. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  97. package/dist/esm/__tests__/s3-client/s3-client.spec.js +24 -24
  98. package/dist/esm/clients/generic/cognito-client.d.ts +19 -19
  99. package/dist/esm/clients/generic/cognito-client.js +139 -139
  100. package/dist/esm/clients/generic/dynamodb-client.d.ts +16 -16
  101. package/dist/esm/clients/generic/dynamodb-client.js +140 -140
  102. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  103. package/dist/esm/clients/generic/eventbridge-client.js +45 -45
  104. package/dist/esm/clients/generic/http-client.d.ts +30 -30
  105. package/dist/esm/clients/generic/http-client.js +28 -28
  106. package/dist/esm/clients/generic/index.d.ts +6 -6
  107. package/dist/esm/clients/generic/index.js +6 -6
  108. package/dist/esm/clients/generic/s3-client.d.ts +14 -14
  109. package/dist/esm/clients/generic/s3-client.js +78 -78
  110. package/dist/esm/clients/generic/sqs-client.d.ts +14 -14
  111. package/dist/esm/clients/generic/sqs-client.js +34 -34
  112. package/dist/esm/clients/index.d.ts +3 -3
  113. package/dist/esm/clients/index.js +3 -3
  114. package/dist/esm/clients/internal-api/accounts-client.d.ts +82 -82
  115. package/dist/esm/clients/internal-api/accounts-client.js +78 -78
  116. package/dist/esm/clients/internal-api/db-management-client.d.ts +48 -48
  117. package/dist/esm/clients/internal-api/db-management-client.js +30 -30
  118. package/dist/esm/clients/internal-api/destinations-client.d.ts +56 -56
  119. package/dist/esm/clients/internal-api/destinations-client.js +48 -48
  120. package/dist/esm/clients/internal-api/event-collector-client.d.ts +47 -47
  121. package/dist/esm/clients/internal-api/event-collector-client.js +30 -30
  122. package/dist/esm/clients/internal-api/identity-client.d.ts +7 -7
  123. package/dist/esm/clients/internal-api/identity-client.js +37 -37
  124. package/dist/esm/clients/internal-api/index.d.ts +7 -7
  125. package/dist/esm/clients/internal-api/index.js +7 -7
  126. package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +57 -57
  127. package/dist/esm/clients/internal-api/shopify-app-install-client.js +42 -42
  128. package/dist/esm/clients/internal-api/users-auth-client.d.ts +61 -61
  129. package/dist/esm/clients/internal-api/users-auth-client.js +73 -73
  130. package/dist/esm/clients/third-party/index.d.ts +1 -1
  131. package/dist/esm/clients/third-party/index.js +1 -1
  132. package/dist/esm/clients/third-party/shopify-client.d.ts +90 -90
  133. package/dist/esm/clients/third-party/shopify-client.js +121 -121
  134. package/dist/esm/helpers/index.d.ts +5 -5
  135. package/dist/esm/helpers/index.js +5 -5
  136. package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
  137. package/dist/esm/helpers/input-validation-helper.js +19 -19
  138. package/dist/esm/helpers/logging-helper.d.ts +15 -15
  139. package/dist/esm/helpers/logging-helper.js +57 -53
  140. package/dist/esm/helpers/logging-helper.js.map +1 -1
  141. package/dist/esm/helpers/response-helper.d.ts +15 -15
  142. package/dist/esm/helpers/response-helper.js +36 -36
  143. package/dist/esm/helpers/shopify-helper.d.ts +9 -9
  144. package/dist/esm/helpers/shopify-helper.js +23 -23
  145. package/dist/esm/helpers/subscription-helper.d.ts +8 -8
  146. package/dist/esm/helpers/subscription-helper.js +234 -234
  147. package/dist/esm/index.d.ts +5 -5
  148. package/dist/esm/index.js +5 -5
  149. package/dist/esm/libs/clickId-parser.d.ts +23 -23
  150. package/dist/esm/libs/clickId-parser.js +45 -45
  151. package/dist/esm/libs/crypto.d.ts +1 -1
  152. package/dist/esm/libs/crypto.js +5 -5
  153. package/dist/esm/libs/dates.d.ts +3 -3
  154. package/dist/esm/libs/dates.js +10 -10
  155. package/dist/esm/libs/http-error.d.ts +21 -21
  156. package/dist/esm/libs/http-error.js +55 -55
  157. package/dist/esm/libs/http-status-codes.d.ts +58 -58
  158. package/dist/esm/libs/http-status-codes.js +59 -59
  159. package/dist/esm/libs/index.d.ts +8 -8
  160. package/dist/esm/libs/index.js +8 -8
  161. package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
  162. package/dist/esm/libs/referrer-parser/index.js +2 -2
  163. package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
  164. package/dist/esm/libs/referrer-parser/referrer-data.js +4709 -4709
  165. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  166. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +121 -121
  167. package/dist/esm/libs/url.d.ts +1 -1
  168. package/dist/esm/libs/url.js +9 -9
  169. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  170. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  171. package/dist/esm/services/index.d.ts +4 -4
  172. package/dist/esm/services/index.js +4 -4
  173. package/dist/esm/services/ipdata-lookup-service.d.ts +8 -8
  174. package/dist/esm/services/ipdata-lookup-service.js +55 -55
  175. package/dist/esm/services/log-event-service.d.ts +9 -9
  176. package/dist/esm/services/log-event-service.js +48 -48
  177. package/dist/esm/services/metric-event-service.d.ts +9 -9
  178. package/dist/esm/services/metric-event-service.js +45 -45
  179. package/dist/esm/types/api-response.d.ts +6 -6
  180. package/dist/esm/types/api-response.js +1 -1
  181. package/dist/esm/types/index.d.ts +1 -1
  182. package/dist/esm/types/index.js +1 -1
  183. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  184. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  185. package/dist/esm/types/internal-events/index.d.ts +1 -1
  186. package/dist/esm/types/internal-events/index.js +1 -1
  187. package/package.json +1 -1
@@ -1,46 +1,46 @@
1
- import { EventBridgeClient as EventBridge, PutEventsCommand } from '@aws-sdk/client-eventbridge';
2
- import { v4 as uuidv4 } from 'uuid';
3
- import { getCurrentTimestamp } from '../../libs/dates.js';
4
- import { Logger } from '../../index.js';
5
- export class EventBridgeClient {
6
- eventBridge;
7
- EVENT_BUS_NAME;
8
- constructor(eventBusName) {
9
- this.eventBridge = new EventBridge({});
10
- this.EVENT_BUS_NAME = eventBusName;
11
- }
12
- buildAndSendEvent = async (eventSource, eventType, eventData) => {
13
- const event = this.buildEvent(eventType, eventData);
14
- return await this.putEvent(eventSource, eventType, event);
15
- };
16
- buildEvent = (eventType, eventData, eventId = uuidv4(), eventTime = getCurrentTimestamp()) => {
17
- return {
18
- eventId,
19
- eventType,
20
- eventTime,
21
- eventData
22
- };
23
- };
24
- putEvent = async (source, detailType, data, headers = null) => {
25
- const params = {
26
- Entries: [{
27
- Detail: JSON.stringify({ headers, data }),
28
- DetailType: detailType,
29
- EventBusName: this.EVENT_BUS_NAME,
30
- Source: source,
31
- Time: new Date(),
32
- }],
33
- };
34
- const putEventscommand = new PutEventsCommand(params);
35
- const response = await this.eventBridge.send(putEventscommand);
36
- Logger.debug('EventBus Event Published', {
37
- eventBusName: this.EVENT_BUS_NAME,
38
- eventSource: source,
39
- eventType: detailType,
40
- event: data,
41
- response
42
- });
43
- return response;
44
- };
45
- }
1
+ import { EventBridgeClient as EventBridge, PutEventsCommand } from '@aws-sdk/client-eventbridge';
2
+ import { v4 as uuidv4 } from 'uuid';
3
+ import { getCurrentTimestamp } from '../../libs/dates.js';
4
+ import { Logger } from '../../index.js';
5
+ export class EventBridgeClient {
6
+ eventBridge;
7
+ EVENT_BUS_NAME;
8
+ constructor(eventBusName) {
9
+ this.eventBridge = new EventBridge({});
10
+ this.EVENT_BUS_NAME = eventBusName;
11
+ }
12
+ buildAndSendEvent = async (eventSource, eventType, eventData) => {
13
+ const event = this.buildEvent(eventType, eventData);
14
+ return await this.putEvent(eventSource, eventType, event);
15
+ };
16
+ buildEvent = (eventType, eventData, eventId = uuidv4(), eventTime = getCurrentTimestamp()) => {
17
+ return {
18
+ eventId,
19
+ eventType,
20
+ eventTime,
21
+ eventData
22
+ };
23
+ };
24
+ putEvent = async (source, detailType, data, headers = null) => {
25
+ const params = {
26
+ Entries: [{
27
+ Detail: JSON.stringify({ headers, data }),
28
+ DetailType: detailType,
29
+ EventBusName: this.EVENT_BUS_NAME,
30
+ Source: source,
31
+ Time: new Date(),
32
+ }],
33
+ };
34
+ const putEventscommand = new PutEventsCommand(params);
35
+ const response = await this.eventBridge.send(putEventscommand);
36
+ Logger.debug('EventBus Event Published', {
37
+ eventBusName: this.EVENT_BUS_NAME,
38
+ eventSource: source,
39
+ eventType: detailType,
40
+ event: data,
41
+ response
42
+ });
43
+ return response;
44
+ };
45
+ }
46
46
  //# sourceMappingURL=eventbridge-client.js.map
@@ -1,30 +1,30 @@
1
- import { AxiosRequestConfig, CreateAxiosDefaults } from 'axios';
2
- export declare const axiosHttpService: (config?: CreateAxiosDefaults) => {
3
- instance: () => import("axios").AxiosInstance;
4
- get: (url: string, config?: AxiosRequestConfig) => Promise<{
5
- headers: any;
6
- data: any;
7
- status: any;
8
- }>;
9
- post: (url: string, data?: any, config?: any) => Promise<{
10
- headers: any;
11
- data: any;
12
- status: any;
13
- }>;
14
- delete: (url: string, config?: any) => Promise<{
15
- headers: any;
16
- data: any;
17
- status: any;
18
- }>;
19
- put: (url: string, data?: any, config?: any) => Promise<{
20
- headers: any;
21
- data: any;
22
- status: any;
23
- }>;
24
- patch: (url: string, data?: any, config?: any) => Promise<{
25
- headers: any;
26
- data: any;
27
- status: any;
28
- }>;
29
- setBaseUrl: (url: string) => boolean;
30
- };
1
+ import { AxiosRequestConfig, CreateAxiosDefaults } from 'axios';
2
+ export declare const axiosHttpService: (config?: CreateAxiosDefaults) => {
3
+ instance: () => import("axios").AxiosInstance;
4
+ get: (url: string, config?: AxiosRequestConfig) => Promise<{
5
+ headers: any;
6
+ data: any;
7
+ status: any;
8
+ }>;
9
+ post: (url: string, data?: any, config?: any) => Promise<{
10
+ headers: any;
11
+ data: any;
12
+ status: any;
13
+ }>;
14
+ delete: (url: string, config?: any) => Promise<{
15
+ headers: any;
16
+ data: any;
17
+ status: any;
18
+ }>;
19
+ put: (url: string, data?: any, config?: any) => Promise<{
20
+ headers: any;
21
+ data: any;
22
+ status: any;
23
+ }>;
24
+ patch: (url: string, data?: any, config?: any) => Promise<{
25
+ headers: any;
26
+ data: any;
27
+ status: any;
28
+ }>;
29
+ setBaseUrl: (url: string) => boolean;
30
+ };
@@ -1,29 +1,29 @@
1
- import axios from 'axios';
2
- import https from 'https';
3
- const httpResponse = (res = {}) => {
4
- return {
5
- headers: res?.headers || {},
6
- data: res?.data || {},
7
- status: res?.status || 0,
8
- };
9
- };
10
- const handleAxiosError = (error) => {
11
- if (!error?.response && !error?.request)
12
- throw error;
13
- return error.response ? httpResponse(error.response) : httpResponse({ status: 500, data: { error: error.request } });
14
- };
15
- export const axiosHttpService = (config = {}) => {
16
- config.adapter = 'http';
17
- config.httpsAgent = new https.Agent({ keepAlive: true });
18
- const axiosService = axios.create(config);
19
- return {
20
- instance: () => axiosService,
21
- get: (url, config) => axiosService.get(url, config).then(httpResponse, handleAxiosError),
22
- post: (url, data, config) => axiosService.post(url, data, config).then(httpResponse, handleAxiosError),
23
- delete: (url, config) => axiosService.delete(url, config).then(httpResponse, handleAxiosError),
24
- put: (url, data, config) => axiosService.put(url, data, config).then(httpResponse, handleAxiosError),
25
- patch: (url, data, config) => axiosService.patch(url, data, config).then(httpResponse, handleAxiosError),
26
- setBaseUrl: (url) => !!(axiosService.defaults.baseURL = url)
27
- };
28
- };
1
+ import axios from 'axios';
2
+ import https from 'https';
3
+ const httpResponse = (res = {}) => {
4
+ return {
5
+ headers: res?.headers || {},
6
+ data: res?.data || {},
7
+ status: res?.status || 0,
8
+ };
9
+ };
10
+ const handleAxiosError = (error) => {
11
+ if (!error?.response && !error?.request)
12
+ throw error;
13
+ return error.response ? httpResponse(error.response) : httpResponse({ status: 500, data: { error: error.request } });
14
+ };
15
+ export const axiosHttpService = (config = {}) => {
16
+ config.adapter = 'http';
17
+ config.httpsAgent = new https.Agent({ keepAlive: true });
18
+ const axiosService = axios.create(config);
19
+ return {
20
+ instance: () => axiosService,
21
+ get: (url, config) => axiosService.get(url, config).then(httpResponse, handleAxiosError),
22
+ post: (url, data, config) => axiosService.post(url, data, config).then(httpResponse, handleAxiosError),
23
+ delete: (url, config) => axiosService.delete(url, config).then(httpResponse, handleAxiosError),
24
+ put: (url, data, config) => axiosService.put(url, data, config).then(httpResponse, handleAxiosError),
25
+ patch: (url, data, config) => axiosService.patch(url, data, config).then(httpResponse, handleAxiosError),
26
+ setBaseUrl: (url) => !!(axiosService.defaults.baseURL = url)
27
+ };
28
+ };
29
29
  //# sourceMappingURL=http-client.js.map
@@ -1,6 +1,6 @@
1
- export * from './dynamodb-client.js';
2
- export * from './eventbridge-client.js';
3
- export * from './http-client.js';
4
- export * from './s3-client.js';
5
- export * from './cognito-client.js';
6
- export * from './sqs-client.js';
1
+ export * from './dynamodb-client.js';
2
+ export * from './eventbridge-client.js';
3
+ export * from './http-client.js';
4
+ export * from './s3-client.js';
5
+ export * from './cognito-client.js';
6
+ export * from './sqs-client.js';
@@ -1,7 +1,7 @@
1
- export * from './dynamodb-client.js';
2
- export * from './eventbridge-client.js';
3
- export * from './http-client.js';
4
- export * from './s3-client.js';
5
- export * from './cognito-client.js';
6
- export * from './sqs-client.js';
1
+ export * from './dynamodb-client.js';
2
+ export * from './eventbridge-client.js';
3
+ export * from './http-client.js';
4
+ export * from './s3-client.js';
5
+ export * from './cognito-client.js';
6
+ export * from './sqs-client.js';
7
7
  //# sourceMappingURL=index.js.map
@@ -1,14 +1,14 @@
1
- import { ObjectCannedACL, PutObjectCommandOutput, S3 } from '@aws-sdk/client-s3';
2
- export declare class S3Client {
3
- s3: S3;
4
- constructor(region?: string);
5
- checkObjectExists(path: string, bucket: string): Promise<boolean>;
6
- checkAndUploadJson(path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL | string, retryCount?: number, maxRetries?: number): Promise<{
7
- status: boolean;
8
- response?: PutObjectCommandOutput;
9
- }>;
10
- uploadJson(path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL | string, retryCount?: number, maxRetries?: number, stringify?: boolean): Promise<{
11
- status: boolean;
12
- response: PutObjectCommandOutput;
13
- }>;
14
- }
1
+ import { ObjectCannedACL, PutObjectCommandOutput, S3 } from '@aws-sdk/client-s3';
2
+ export declare class S3Client {
3
+ s3: S3;
4
+ constructor(region?: string);
5
+ checkObjectExists(path: string, bucket: string): Promise<boolean>;
6
+ checkAndUploadJson(path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL | string, retryCount?: number, maxRetries?: number): Promise<{
7
+ status: boolean;
8
+ response?: PutObjectCommandOutput;
9
+ }>;
10
+ uploadJson(path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL | string, retryCount?: number, maxRetries?: number, stringify?: boolean): Promise<{
11
+ status: boolean;
12
+ response: PutObjectCommandOutput;
13
+ }>;
14
+ }
@@ -1,79 +1,79 @@
1
- import { ObjectCannedACL, S3 } from '@aws-sdk/client-s3';
2
- import { Logger } from '../../index.js';
3
- export class S3Client {
4
- s3;
5
- constructor(region = 'us-west-2') {
6
- this.s3 = new S3({ region });
7
- }
8
- async checkObjectExists(path, bucket) {
9
- try {
10
- const data = await this.s3.headObject({
11
- Bucket: bucket,
12
- Key: path,
13
- });
14
- const exists = data.$metadata.httpStatusCode === 200;
15
- return exists;
16
- }
17
- catch (error) {
18
- if (error.$metadata?.httpStatusCode === 404) {
19
- return false;
20
- }
21
- else if (error.$metadata?.httpStatusCode === 403) {
22
- return false;
23
- }
24
- else {
25
- Logger.error('checkObjectExists unknown error', { error });
26
- return false;
27
- }
28
- }
29
- }
30
- async checkAndUploadJson(path, bucket, jsonData, ACL = ObjectCannedACL.private, retryCount = 0, maxRetries = 5) {
31
- try {
32
- const checkObject = await this.checkObjectExists(path, bucket);
33
- let res = {};
34
- if (!checkObject) {
35
- res = await this.s3.putObject({
36
- ACL,
37
- Bucket: bucket,
38
- ContentType: 'application/json; charset=utf-8',
39
- Body: JSON.stringify(jsonData),
40
- Key: path
41
- });
42
- }
43
- return { status: true, response: res };
44
- }
45
- catch (error) {
46
- Logger.error('Error in s3 upload json', { error });
47
- if (retryCount < maxRetries) {
48
- retryCount++;
49
- Logger.warn('retrying to uploadJson', { path, bucket, jsonData, ACL, retryCount });
50
- await new Promise(resolve => setTimeout(resolve, 1000 * retryCount));
51
- return await this.uploadJson(path, bucket, jsonData, ACL, retryCount);
52
- }
53
- return { status: false, response: jsonData };
54
- }
55
- }
56
- async uploadJson(path, bucket, jsonData, ACL = ObjectCannedACL.private, retryCount = 0, maxRetries = 5, stringify = true) {
57
- try {
58
- const res = await this.s3.putObject({
59
- ACL,
60
- Bucket: bucket,
61
- ContentType: 'application/json; charset=utf-8',
62
- Body: stringify ? JSON.stringify(jsonData) : jsonData,
63
- Key: path
64
- });
65
- return { status: true, response: res };
66
- }
67
- catch (error) {
68
- Logger.error('Error in s3 upload json', { error });
69
- if (retryCount < maxRetries) {
70
- retryCount++;
71
- Logger.warn('retrying to uploadJson', { path, bucket, jsonData, ACL, retryCount });
72
- await new Promise(resolve => setTimeout(resolve, 1000 * retryCount));
73
- return await this.uploadJson(path, bucket, jsonData, ACL, retryCount);
74
- }
75
- return { status: false, response: jsonData };
76
- }
77
- }
78
- }
1
+ import { ObjectCannedACL, S3 } from '@aws-sdk/client-s3';
2
+ import { Logger } from '../../index.js';
3
+ export class S3Client {
4
+ s3;
5
+ constructor(region = 'us-west-2') {
6
+ this.s3 = new S3({ region });
7
+ }
8
+ async checkObjectExists(path, bucket) {
9
+ try {
10
+ const data = await this.s3.headObject({
11
+ Bucket: bucket,
12
+ Key: path,
13
+ });
14
+ const exists = data.$metadata.httpStatusCode === 200;
15
+ return exists;
16
+ }
17
+ catch (error) {
18
+ if (error.$metadata?.httpStatusCode === 404) {
19
+ return false;
20
+ }
21
+ else if (error.$metadata?.httpStatusCode === 403) {
22
+ return false;
23
+ }
24
+ else {
25
+ Logger.error('checkObjectExists unknown error', { error });
26
+ return false;
27
+ }
28
+ }
29
+ }
30
+ async checkAndUploadJson(path, bucket, jsonData, ACL = ObjectCannedACL.private, retryCount = 0, maxRetries = 5) {
31
+ try {
32
+ const checkObject = await this.checkObjectExists(path, bucket);
33
+ let res = {};
34
+ if (!checkObject) {
35
+ res = await this.s3.putObject({
36
+ ACL,
37
+ Bucket: bucket,
38
+ ContentType: 'application/json; charset=utf-8',
39
+ Body: JSON.stringify(jsonData),
40
+ Key: path
41
+ });
42
+ }
43
+ return { status: true, response: res };
44
+ }
45
+ catch (error) {
46
+ Logger.error('Error in s3 upload json', { error });
47
+ if (retryCount < maxRetries) {
48
+ retryCount++;
49
+ Logger.warn('retrying to uploadJson', { path, bucket, jsonData, ACL, retryCount });
50
+ await new Promise(resolve => setTimeout(resolve, 1000 * retryCount));
51
+ return await this.uploadJson(path, bucket, jsonData, ACL, retryCount);
52
+ }
53
+ return { status: false, response: jsonData };
54
+ }
55
+ }
56
+ async uploadJson(path, bucket, jsonData, ACL = ObjectCannedACL.private, retryCount = 0, maxRetries = 5, stringify = true) {
57
+ try {
58
+ const res = await this.s3.putObject({
59
+ ACL,
60
+ Bucket: bucket,
61
+ ContentType: 'application/json; charset=utf-8',
62
+ Body: stringify ? JSON.stringify(jsonData) : jsonData,
63
+ Key: path
64
+ });
65
+ return { status: true, response: res };
66
+ }
67
+ catch (error) {
68
+ Logger.error('Error in s3 upload json', { error });
69
+ if (retryCount < maxRetries) {
70
+ retryCount++;
71
+ Logger.warn('retrying to uploadJson', { path, bucket, jsonData, ACL, retryCount });
72
+ await new Promise(resolve => setTimeout(resolve, 1000 * retryCount));
73
+ return await this.uploadJson(path, bucket, jsonData, ACL, retryCount);
74
+ }
75
+ return { status: false, response: jsonData };
76
+ }
77
+ }
78
+ }
79
79
  //# sourceMappingURL=s3-client.js.map
@@ -1,14 +1,14 @@
1
- import { SQS } from '@aws-sdk/client-sqs';
2
- export declare class SQSClient {
3
- sqs: SQS;
4
- queueUrl: string;
5
- constructor(region: string, accountId: string, queueName: string);
6
- buildAndSendMessage: (messageType: string, messageBody: any, deplaySeconds?: number) => Promise<import("@aws-sdk/client-sqs").SendMessageCommandOutput>;
7
- buildMessage: (messageType: string, messageBody: any, messageId?: string, messageTime?: string) => {
8
- messageId: string;
9
- messageType: string;
10
- messageTime: string;
11
- messageBody: any;
12
- };
13
- sendMessage: (messageBody: any, delaySeconds?: number) => Promise<import("@aws-sdk/client-sqs").SendMessageCommandOutput>;
14
- }
1
+ import { SQS } from '@aws-sdk/client-sqs';
2
+ export declare class SQSClient {
3
+ sqs: SQS;
4
+ queueUrl: string;
5
+ constructor(region: string, accountId: string, queueName: string);
6
+ buildAndSendMessage: (messageType: string, messageBody: any, deplaySeconds?: number) => Promise<import("@aws-sdk/client-sqs").SendMessageCommandOutput>;
7
+ buildMessage: (messageType: string, messageBody: any, messageId?: string, messageTime?: string) => {
8
+ messageId: string;
9
+ messageType: string;
10
+ messageTime: string;
11
+ messageBody: any;
12
+ };
13
+ sendMessage: (messageBody: any, delaySeconds?: number) => Promise<import("@aws-sdk/client-sqs").SendMessageCommandOutput>;
14
+ }
@@ -1,35 +1,35 @@
1
- import { SQS } from '@aws-sdk/client-sqs';
2
- import { v4 as uuidv4 } from 'uuid';
3
- import { getCurrentTimestamp } from '../../libs/dates.js';
4
- import { Logger } from '../../index.js';
5
- export class SQSClient {
6
- sqs;
7
- queueUrl;
8
- constructor(region, accountId, queueName) {
9
- this.sqs = new SQS({ region });
10
- this.queueUrl = `https://sqs.${region}.amazonaws.com/${accountId}/${queueName}`;
11
- }
12
- buildAndSendMessage = async (messageType, messageBody, deplaySeconds = 0) => {
13
- const message = this.buildMessage(messageType, messageBody);
14
- return await this.sendMessage(message, deplaySeconds);
15
- };
16
- buildMessage = (messageType, messageBody, messageId = uuidv4(), messageTime = getCurrentTimestamp()) => {
17
- return {
18
- messageId,
19
- messageType,
20
- messageTime,
21
- messageBody
22
- };
23
- };
24
- sendMessage = async (messageBody, delaySeconds = 0) => {
25
- const params = {
26
- QueueUrl: this.queueUrl,
27
- DelaySeconds: delaySeconds,
28
- MessageBody: JSON.stringify(messageBody)
29
- };
30
- const response = await this.sqs.sendMessage(params);
31
- Logger.debug('SQS Message Sent', { queueUrl: this.queueUrl, messageBody, delaySeconds, response });
32
- return response;
33
- };
34
- }
1
+ import { SQS } from '@aws-sdk/client-sqs';
2
+ import { v4 as uuidv4 } from 'uuid';
3
+ import { getCurrentTimestamp } from '../../libs/dates.js';
4
+ import { Logger } from '../../index.js';
5
+ export class SQSClient {
6
+ sqs;
7
+ queueUrl;
8
+ constructor(region, accountId, queueName) {
9
+ this.sqs = new SQS({ region });
10
+ this.queueUrl = `https://sqs.${region}.amazonaws.com/${accountId}/${queueName}`;
11
+ }
12
+ buildAndSendMessage = async (messageType, messageBody, deplaySeconds = 0) => {
13
+ const message = this.buildMessage(messageType, messageBody);
14
+ return await this.sendMessage(message, deplaySeconds);
15
+ };
16
+ buildMessage = (messageType, messageBody, messageId = uuidv4(), messageTime = getCurrentTimestamp()) => {
17
+ return {
18
+ messageId,
19
+ messageType,
20
+ messageTime,
21
+ messageBody
22
+ };
23
+ };
24
+ sendMessage = async (messageBody, delaySeconds = 0) => {
25
+ const params = {
26
+ QueueUrl: this.queueUrl,
27
+ DelaySeconds: delaySeconds,
28
+ MessageBody: JSON.stringify(messageBody)
29
+ };
30
+ const response = await this.sqs.sendMessage(params);
31
+ Logger.debug('SQS Message Sent', { queueUrl: this.queueUrl, messageBody, delaySeconds, response });
32
+ return response;
33
+ };
34
+ }
35
35
  //# sourceMappingURL=sqs-client.js.map
@@ -1,3 +1,3 @@
1
- export * from './generic/index.js';
2
- export * from './internal-api/index.js';
3
- export * from './third-party/index.js';
1
+ export * from './generic/index.js';
2
+ export * from './internal-api/index.js';
3
+ export * from './third-party/index.js';
@@ -1,4 +1,4 @@
1
- export * from './generic/index.js';
2
- export * from './internal-api/index.js';
3
- export * from './third-party/index.js';
1
+ export * from './generic/index.js';
2
+ export * from './internal-api/index.js';
3
+ export * from './third-party/index.js';
4
4
  //# sourceMappingURL=index.js.map