@adtrackify/at-service-common 2.0.5 → 2.0.7
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.
- package/dist/cjs/__tests__/helpers/subscription-helper.spec.d.ts +1 -1
- package/dist/cjs/__tests__/helpers/subscription-helper.spec.js +52 -52
- package/dist/cjs/__tests__/s3-client/s3-client.spec.d.ts +1 -1
- package/dist/cjs/__tests__/s3-client/s3-client.spec.js +26 -26
- package/dist/cjs/clients/generic/cognito-client.d.ts +19 -19
- package/dist/cjs/clients/generic/cognito-client.js +144 -144
- package/dist/cjs/clients/generic/dynamodb-client.d.ts +15 -15
- package/dist/cjs/clients/generic/dynamodb-client.js +124 -124
- package/dist/cjs/clients/generic/eventbridge-client.d.ts +14 -14
- package/dist/cjs/clients/generic/eventbridge-client.js +49 -49
- package/dist/cjs/clients/generic/http-client.d.ts +30 -30
- package/dist/cjs/clients/generic/http-client.js +35 -35
- package/dist/cjs/clients/generic/index.d.ts +6 -6
- package/dist/cjs/clients/generic/index.js +22 -22
- package/dist/cjs/clients/generic/s3-client.d.ts +14 -14
- package/dist/cjs/clients/generic/s3-client.js +82 -82
- package/dist/cjs/clients/generic/sqs-client.d.ts +14 -14
- package/dist/cjs/clients/generic/sqs-client.js +38 -38
- package/dist/cjs/clients/index.d.ts +3 -3
- package/dist/cjs/clients/index.js +19 -19
- package/dist/cjs/clients/internal-api/accounts-client.d.ts +82 -82
- package/dist/cjs/clients/internal-api/accounts-client.js +82 -82
- package/dist/cjs/clients/internal-api/destinations-client.d.ts +54 -54
- package/dist/cjs/clients/internal-api/destinations-client.js +40 -40
- package/dist/cjs/clients/internal-api/index.d.ts +4 -4
- package/dist/cjs/clients/internal-api/index.js +20 -20
- package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +57 -57
- package/dist/cjs/clients/internal-api/shopify-app-install-client.js +49 -49
- package/dist/cjs/clients/internal-api/users-auth-client.d.ts +61 -61
- package/dist/cjs/clients/internal-api/users-auth-client.js +77 -77
- package/dist/cjs/clients/third-party/index.d.ts +1 -1
- package/dist/cjs/clients/third-party/index.js +17 -17
- package/dist/cjs/clients/third-party/shopify-client.d.ts +90 -90
- package/dist/cjs/clients/third-party/shopify-client.js +125 -125
- package/dist/cjs/helpers/index.d.ts +5 -5
- package/dist/cjs/helpers/index.js +21 -21
- package/dist/cjs/helpers/input-validation-helper.d.ts +2 -2
- package/dist/cjs/helpers/input-validation-helper.js +22 -22
- package/dist/cjs/helpers/logging-helper.d.ts +15 -15
- package/dist/cjs/helpers/logging-helper.js +80 -80
- package/dist/cjs/helpers/response-helper.d.ts +36 -36
- package/dist/cjs/helpers/response-helper.js +41 -41
- package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
- package/dist/cjs/helpers/shopify-helper.js +28 -28
- package/dist/cjs/helpers/subscription-helper.d.ts +8 -8
- package/dist/cjs/helpers/subscription-helper.js +229 -229
- package/dist/cjs/index.d.ts +5 -5
- package/dist/cjs/index.js +21 -21
- package/dist/cjs/libs/clickId-parser.d.ts +18 -18
- package/dist/cjs/libs/clickId-parser.js +38 -38
- package/dist/cjs/libs/crypto.d.ts +1 -1
- package/dist/cjs/libs/crypto.js +12 -12
- package/dist/cjs/libs/dates.d.ts +3 -3
- package/dist/cjs/libs/dates.js +16 -16
- package/dist/cjs/libs/http-error.d.ts +21 -21
- package/dist/cjs/libs/http-error.js +59 -59
- package/dist/cjs/libs/http-status-codes.d.ts +58 -58
- package/dist/cjs/libs/http-status-codes.js +62 -62
- package/dist/cjs/libs/index.d.ts +8 -8
- package/dist/cjs/libs/index.js +24 -24
- package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
- package/dist/cjs/libs/referrer-parser/index.js +18 -18
- package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
- package/dist/cjs/libs/referrer-parser/referrer-data.js +4712 -4712
- package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
- package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +123 -123
- package/dist/cjs/libs/url.d.ts +1 -1
- package/dist/cjs/libs/url.js +13 -13
- package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
- package/dist/cjs/services/eventbridge-integration-service.js +28 -28
- package/dist/cjs/services/index.d.ts +3 -2
- package/dist/cjs/services/index.js +19 -18
- package/dist/cjs/services/index.js.map +1 -1
- package/dist/cjs/services/ipdata-lookup-service.d.ts +8 -8
- package/dist/cjs/services/ipdata-lookup-service.js +59 -59
- package/dist/cjs/services/log-event-service.d.ts +9 -0
- package/dist/cjs/services/log-event-service.js +49 -0
- package/dist/cjs/services/log-event-service.js.map +1 -0
- package/dist/cjs/types/api-response.d.ts +6 -6
- package/dist/cjs/types/api-response.js +2 -2
- package/dist/cjs/types/index.d.ts +1 -1
- package/dist/cjs/types/index.js +17 -17
- package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
- package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
- package/dist/cjs/types/internal-events/index.d.ts +1 -1
- package/dist/cjs/types/internal-events/index.js +17 -17
- package/dist/esm/__tests__/helpers/subscription-helper.spec.d.ts +1 -1
- package/dist/esm/__tests__/helpers/subscription-helper.spec.js +27 -27
- package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
- package/dist/esm/__tests__/s3-client/s3-client.spec.js +24 -24
- package/dist/esm/clients/generic/cognito-client.d.ts +19 -19
- package/dist/esm/clients/generic/cognito-client.js +139 -139
- package/dist/esm/clients/generic/dynamodb-client.d.ts +15 -15
- package/dist/esm/clients/generic/dynamodb-client.js +120 -120
- package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
- package/dist/esm/clients/generic/eventbridge-client.js +45 -45
- package/dist/esm/clients/generic/http-client.d.ts +30 -30
- package/dist/esm/clients/generic/http-client.js +28 -28
- package/dist/esm/clients/generic/index.d.ts +6 -6
- package/dist/esm/clients/generic/index.js +6 -6
- package/dist/esm/clients/generic/s3-client.d.ts +14 -14
- package/dist/esm/clients/generic/s3-client.js +78 -78
- package/dist/esm/clients/generic/sqs-client.d.ts +14 -14
- package/dist/esm/clients/generic/sqs-client.js +34 -34
- package/dist/esm/clients/index.d.ts +3 -3
- package/dist/esm/clients/index.js +3 -3
- package/dist/esm/clients/internal-api/accounts-client.d.ts +82 -82
- package/dist/esm/clients/internal-api/accounts-client.js +78 -78
- package/dist/esm/clients/internal-api/destinations-client.d.ts +54 -54
- package/dist/esm/clients/internal-api/destinations-client.js +36 -36
- package/dist/esm/clients/internal-api/index.d.ts +4 -4
- package/dist/esm/clients/internal-api/index.js +4 -4
- package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +57 -57
- package/dist/esm/clients/internal-api/shopify-app-install-client.js +42 -42
- package/dist/esm/clients/internal-api/users-auth-client.d.ts +61 -61
- package/dist/esm/clients/internal-api/users-auth-client.js +73 -73
- package/dist/esm/clients/third-party/index.d.ts +1 -1
- package/dist/esm/clients/third-party/index.js +1 -1
- package/dist/esm/clients/third-party/shopify-client.d.ts +90 -90
- package/dist/esm/clients/third-party/shopify-client.js +121 -121
- package/dist/esm/helpers/index.d.ts +5 -5
- package/dist/esm/helpers/index.js +5 -5
- package/dist/esm/helpers/input-validation-helper.d.ts +2 -2
- package/dist/esm/helpers/input-validation-helper.js +18 -18
- package/dist/esm/helpers/logging-helper.d.ts +15 -15
- package/dist/esm/helpers/logging-helper.js +53 -53
- package/dist/esm/helpers/response-helper.d.ts +36 -36
- package/dist/esm/helpers/response-helper.js +35 -35
- package/dist/esm/helpers/shopify-helper.d.ts +9 -9
- package/dist/esm/helpers/shopify-helper.js +23 -23
- package/dist/esm/helpers/subscription-helper.d.ts +8 -8
- package/dist/esm/helpers/subscription-helper.js +224 -224
- package/dist/esm/index.d.ts +5 -5
- package/dist/esm/index.js +5 -5
- package/dist/esm/libs/clickId-parser.d.ts +18 -18
- package/dist/esm/libs/clickId-parser.js +34 -34
- package/dist/esm/libs/crypto.d.ts +1 -1
- package/dist/esm/libs/crypto.js +5 -5
- package/dist/esm/libs/dates.d.ts +3 -3
- package/dist/esm/libs/dates.js +10 -10
- package/dist/esm/libs/http-error.d.ts +21 -21
- package/dist/esm/libs/http-error.js +55 -55
- package/dist/esm/libs/http-status-codes.d.ts +58 -58
- package/dist/esm/libs/http-status-codes.js +59 -59
- package/dist/esm/libs/index.d.ts +8 -8
- package/dist/esm/libs/index.js +8 -8
- package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
- package/dist/esm/libs/referrer-parser/index.js +2 -2
- package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
- package/dist/esm/libs/referrer-parser/referrer-data.js +4709 -4709
- package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
- package/dist/esm/libs/referrer-parser/referrer-parser-util.js +116 -116
- package/dist/esm/libs/url.d.ts +1 -1
- package/dist/esm/libs/url.js +9 -9
- package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
- package/dist/esm/services/eventbridge-integration-service.js +24 -24
- package/dist/esm/services/index.d.ts +3 -2
- package/dist/esm/services/index.js +3 -2
- package/dist/esm/services/index.js.map +1 -1
- package/dist/esm/services/ipdata-lookup-service.d.ts +8 -8
- package/dist/esm/services/ipdata-lookup-service.js +55 -55
- package/dist/esm/services/log-event-service.d.ts +9 -0
- package/dist/esm/services/log-event-service.js +45 -0
- package/dist/esm/services/log-event-service.js.map +1 -0
- package/dist/esm/types/api-response.d.ts +6 -6
- package/dist/esm/types/api-response.js +1 -1
- package/dist/esm/types/index.d.ts +1 -1
- package/dist/esm/types/index.js +1 -1
- package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
- package/dist/esm/types/internal-events/event-detail-types.js +24 -24
- package/dist/esm/types/internal-events/index.d.ts +1 -1
- package/dist/esm/types/internal-events/index.js +1 -1
- package/package.json +2 -2
|
@@ -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) {
|
|
57
|
-
try {
|
|
58
|
-
const res = await this.s3.putObject({
|
|
59
|
-
ACL,
|
|
60
|
-
Bucket: bucket,
|
|
61
|
-
ContentType: 'application/json; charset=utf-8',
|
|
62
|
-
Body: JSON.stringify(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) {
|
|
57
|
+
try {
|
|
58
|
+
const res = await this.s3.putObject({
|
|
59
|
+
ACL,
|
|
60
|
+
Bucket: bucket,
|
|
61
|
+
ContentType: 'application/json; charset=utf-8',
|
|
62
|
+
Body: JSON.stringify(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
|
|
@@ -1,82 +1,82 @@
|
|
|
1
|
-
import { ApiResponse } from '../../types/api-response.js';
|
|
2
|
-
import { Account, ACCOUNT_STATUS, Destination } from '@adtrackify/at-tracking-event-types';
|
|
3
|
-
export interface AccountResponseData {
|
|
4
|
-
account: Account;
|
|
5
|
-
[key: string]: any;
|
|
6
|
-
}
|
|
7
|
-
export interface IsAuthorizedUserResponseData {
|
|
8
|
-
isAccountUser: boolean;
|
|
9
|
-
[key: string]: any;
|
|
10
|
-
}
|
|
11
|
-
export interface PixelConfigResponseData {
|
|
12
|
-
id: string;
|
|
13
|
-
destinations: Destination[];
|
|
14
|
-
[key: string]: any;
|
|
15
|
-
}
|
|
16
|
-
export interface AddUserToAccountResponseData {
|
|
17
|
-
userId: string;
|
|
18
|
-
accountId: string;
|
|
19
|
-
}
|
|
20
|
-
export interface UpdateAccountRequest {
|
|
21
|
-
accountName?: string;
|
|
22
|
-
companyName?: string;
|
|
23
|
-
primaryEmail?: string;
|
|
24
|
-
ownerId?: string;
|
|
25
|
-
subscriptionId?: string;
|
|
26
|
-
accountStatus?: ACCOUNT_STATUS;
|
|
27
|
-
}
|
|
28
|
-
export declare class AccountsClient {
|
|
29
|
-
BASE_API_URL: string;
|
|
30
|
-
ACCOUNTS_API_KEY?: string;
|
|
31
|
-
constructor(baseApiUrl: string, accountsApiKey?: string);
|
|
32
|
-
getConfig: () => any;
|
|
33
|
-
getClient: () => Promise<{
|
|
34
|
-
instance: () => import("axios").AxiosInstance;
|
|
35
|
-
get: (url: string, config?: any) => Promise<{
|
|
36
|
-
headers: any;
|
|
37
|
-
data: any;
|
|
38
|
-
status: any;
|
|
39
|
-
}>;
|
|
40
|
-
post: (url: string, data?: any, config?: any) => Promise<{
|
|
41
|
-
headers: any;
|
|
42
|
-
data: any;
|
|
43
|
-
status: any;
|
|
44
|
-
}>;
|
|
45
|
-
delete: (url: string, config?: any) => Promise<{
|
|
46
|
-
headers: any;
|
|
47
|
-
data: any;
|
|
48
|
-
status: any;
|
|
49
|
-
}>;
|
|
50
|
-
put: (url: string, data?: any, config?: any) => Promise<{
|
|
51
|
-
headers: any;
|
|
52
|
-
data: any;
|
|
53
|
-
status: any;
|
|
54
|
-
}>;
|
|
55
|
-
patch: (url: string, data?: any, config?: any) => Promise<{
|
|
56
|
-
headers: any;
|
|
57
|
-
data: any;
|
|
58
|
-
status: any;
|
|
59
|
-
}>;
|
|
60
|
-
setBaseUrl: (url: string) => boolean;
|
|
61
|
-
}>;
|
|
62
|
-
createAccount: (createAccountRequest: any) => Promise<{
|
|
63
|
-
headers: any;
|
|
64
|
-
data: any;
|
|
65
|
-
status: any;
|
|
66
|
-
}>;
|
|
67
|
-
updateAccount: (accountId: string, body: any) => Promise<ApiResponse<AccountResponseData>>;
|
|
68
|
-
addOwner: (accountId: string, userId: string) => Promise<{
|
|
69
|
-
headers: any;
|
|
70
|
-
data: any;
|
|
71
|
-
status: any;
|
|
72
|
-
}>;
|
|
73
|
-
isAuthorizedUser: (userId: string, accountId: string, pixelId?: string) => Promise<ApiResponse<IsAuthorizedUserResponseData>>;
|
|
74
|
-
adminDeleteAccount: (accountId: string) => Promise<{
|
|
75
|
-
headers: any;
|
|
76
|
-
data: any;
|
|
77
|
-
status: any;
|
|
78
|
-
}>;
|
|
79
|
-
getPixelConfigById: (pixelId: string) => Promise<ApiResponse<PixelConfigResponseData>>;
|
|
80
|
-
getAccount: (accountId: string) => Promise<ApiResponse<AccountResponseData>>;
|
|
81
|
-
addUserToAccount: (accountId: string, userId: string) => Promise<ApiResponse<AddUserToAccountResponseData>>;
|
|
82
|
-
}
|
|
1
|
+
import { ApiResponse } from '../../types/api-response.js';
|
|
2
|
+
import { Account, ACCOUNT_STATUS, Destination } from '@adtrackify/at-tracking-event-types';
|
|
3
|
+
export interface AccountResponseData {
|
|
4
|
+
account: Account;
|
|
5
|
+
[key: string]: any;
|
|
6
|
+
}
|
|
7
|
+
export interface IsAuthorizedUserResponseData {
|
|
8
|
+
isAccountUser: boolean;
|
|
9
|
+
[key: string]: any;
|
|
10
|
+
}
|
|
11
|
+
export interface PixelConfigResponseData {
|
|
12
|
+
id: string;
|
|
13
|
+
destinations: Destination[];
|
|
14
|
+
[key: string]: any;
|
|
15
|
+
}
|
|
16
|
+
export interface AddUserToAccountResponseData {
|
|
17
|
+
userId: string;
|
|
18
|
+
accountId: string;
|
|
19
|
+
}
|
|
20
|
+
export interface UpdateAccountRequest {
|
|
21
|
+
accountName?: string;
|
|
22
|
+
companyName?: string;
|
|
23
|
+
primaryEmail?: string;
|
|
24
|
+
ownerId?: string;
|
|
25
|
+
subscriptionId?: string;
|
|
26
|
+
accountStatus?: ACCOUNT_STATUS;
|
|
27
|
+
}
|
|
28
|
+
export declare class AccountsClient {
|
|
29
|
+
BASE_API_URL: string;
|
|
30
|
+
ACCOUNTS_API_KEY?: string;
|
|
31
|
+
constructor(baseApiUrl: string, accountsApiKey?: string);
|
|
32
|
+
getConfig: () => any;
|
|
33
|
+
getClient: () => Promise<{
|
|
34
|
+
instance: () => import("axios").AxiosInstance;
|
|
35
|
+
get: (url: string, config?: any) => Promise<{
|
|
36
|
+
headers: any;
|
|
37
|
+
data: any;
|
|
38
|
+
status: any;
|
|
39
|
+
}>;
|
|
40
|
+
post: (url: string, data?: any, config?: any) => Promise<{
|
|
41
|
+
headers: any;
|
|
42
|
+
data: any;
|
|
43
|
+
status: any;
|
|
44
|
+
}>;
|
|
45
|
+
delete: (url: string, config?: any) => Promise<{
|
|
46
|
+
headers: any;
|
|
47
|
+
data: any;
|
|
48
|
+
status: any;
|
|
49
|
+
}>;
|
|
50
|
+
put: (url: string, data?: any, config?: any) => Promise<{
|
|
51
|
+
headers: any;
|
|
52
|
+
data: any;
|
|
53
|
+
status: any;
|
|
54
|
+
}>;
|
|
55
|
+
patch: (url: string, data?: any, config?: any) => Promise<{
|
|
56
|
+
headers: any;
|
|
57
|
+
data: any;
|
|
58
|
+
status: any;
|
|
59
|
+
}>;
|
|
60
|
+
setBaseUrl: (url: string) => boolean;
|
|
61
|
+
}>;
|
|
62
|
+
createAccount: (createAccountRequest: any) => Promise<{
|
|
63
|
+
headers: any;
|
|
64
|
+
data: any;
|
|
65
|
+
status: any;
|
|
66
|
+
}>;
|
|
67
|
+
updateAccount: (accountId: string, body: any) => Promise<ApiResponse<AccountResponseData>>;
|
|
68
|
+
addOwner: (accountId: string, userId: string) => Promise<{
|
|
69
|
+
headers: any;
|
|
70
|
+
data: any;
|
|
71
|
+
status: any;
|
|
72
|
+
}>;
|
|
73
|
+
isAuthorizedUser: (userId: string, accountId: string, pixelId?: string) => Promise<ApiResponse<IsAuthorizedUserResponseData>>;
|
|
74
|
+
adminDeleteAccount: (accountId: string) => Promise<{
|
|
75
|
+
headers: any;
|
|
76
|
+
data: any;
|
|
77
|
+
status: any;
|
|
78
|
+
}>;
|
|
79
|
+
getPixelConfigById: (pixelId: string) => Promise<ApiResponse<PixelConfigResponseData>>;
|
|
80
|
+
getAccount: (accountId: string) => Promise<ApiResponse<AccountResponseData>>;
|
|
81
|
+
addUserToAccount: (accountId: string, userId: string) => Promise<ApiResponse<AddUserToAccountResponseData>>;
|
|
82
|
+
}
|
|
@@ -1,79 +1,79 @@
|
|
|
1
|
-
import { Logger } from '../../index.js';
|
|
2
|
-
import { axiosHttpService } from '../generic/http-client.js';
|
|
3
|
-
export class AccountsClient {
|
|
4
|
-
BASE_API_URL;
|
|
5
|
-
ACCOUNTS_API_KEY;
|
|
6
|
-
constructor(baseApiUrl, accountsApiKey) {
|
|
7
|
-
this.BASE_API_URL = baseApiUrl;
|
|
8
|
-
this.ACCOUNTS_API_KEY = accountsApiKey;
|
|
9
|
-
}
|
|
10
|
-
getConfig = () => {
|
|
11
|
-
const SERVICE_API_ROOT_URL = `${this.BASE_API_URL}/accounts`;
|
|
12
|
-
const params = {
|
|
13
|
-
baseURL: SERVICE_API_ROOT_URL
|
|
14
|
-
};
|
|
15
|
-
if (this.ACCOUNTS_API_KEY) {
|
|
16
|
-
params.headers = {
|
|
17
|
-
common: {
|
|
18
|
-
'x-api-key': this.ACCOUNTS_API_KEY
|
|
19
|
-
}
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
return params;
|
|
23
|
-
};
|
|
24
|
-
getClient = async () => {
|
|
25
|
-
return axiosHttpService(this.getConfig());
|
|
26
|
-
};
|
|
27
|
-
createAccount = async (createAccountRequest) => {
|
|
28
|
-
const client = await this.getClient();
|
|
29
|
-
const createAccountResponse = await client.post('', createAccountRequest);
|
|
30
|
-
Logger.debug('createAccountResponse', { createAccountResponse });
|
|
31
|
-
return createAccountResponse;
|
|
32
|
-
};
|
|
33
|
-
updateAccount = async (accountId, body) => {
|
|
34
|
-
const client = await this.getClient();
|
|
35
|
-
const response = await client.patch(`/${accountId}/`, body);
|
|
36
|
-
Logger.debug('update Account response', { response });
|
|
37
|
-
return response;
|
|
38
|
-
};
|
|
39
|
-
addOwner = async (accountId, userId) => {
|
|
40
|
-
const client = await this.getClient();
|
|
41
|
-
const addOwnerResponse = await client.post('/addOwner', { accountId, userId });
|
|
42
|
-
Logger.debug('addOwnerResponse', { addOwnerResponse });
|
|
43
|
-
return addOwnerResponse;
|
|
44
|
-
};
|
|
45
|
-
isAuthorizedUser = async (userId, accountId, pixelId) => {
|
|
46
|
-
const client = await this.getClient();
|
|
47
|
-
const body = {
|
|
48
|
-
userId, accountId, pixelId
|
|
49
|
-
};
|
|
50
|
-
const response = await client.post('/checkUserAuthorization', body);
|
|
51
|
-
Logger.debug('checkUserAuthorization', { response });
|
|
52
|
-
return response;
|
|
53
|
-
};
|
|
54
|
-
adminDeleteAccount = async (accountId) => {
|
|
55
|
-
const client = await this.getClient();
|
|
56
|
-
const success = await client.delete(`/${accountId}`);
|
|
57
|
-
Logger.debug('adminDeleteAccount');
|
|
58
|
-
return success;
|
|
59
|
-
};
|
|
60
|
-
getPixelConfigById = async (pixelId) => {
|
|
61
|
-
const client = await this.getClient();
|
|
62
|
-
const pixelResponse = await client.get(`/px/${pixelId}/config`);
|
|
63
|
-
Logger.debug('get pixelResponse', { pixelResponse });
|
|
64
|
-
return pixelResponse;
|
|
65
|
-
};
|
|
66
|
-
getAccount = async (accountId) => {
|
|
67
|
-
const client = await this.getClient();
|
|
68
|
-
const response = await client.get(`/${accountId}/`);
|
|
69
|
-
Logger.debug('get account response', { response });
|
|
70
|
-
return response;
|
|
71
|
-
};
|
|
72
|
-
addUserToAccount = async (accountId, userId) => {
|
|
73
|
-
const client = await this.getClient();
|
|
74
|
-
const response = await client.post('/addUser', { accountId, userId });
|
|
75
|
-
Logger.debug('add user account response', { response });
|
|
76
|
-
return response;
|
|
77
|
-
};
|
|
78
|
-
}
|
|
1
|
+
import { Logger } from '../../index.js';
|
|
2
|
+
import { axiosHttpService } from '../generic/http-client.js';
|
|
3
|
+
export class AccountsClient {
|
|
4
|
+
BASE_API_URL;
|
|
5
|
+
ACCOUNTS_API_KEY;
|
|
6
|
+
constructor(baseApiUrl, accountsApiKey) {
|
|
7
|
+
this.BASE_API_URL = baseApiUrl;
|
|
8
|
+
this.ACCOUNTS_API_KEY = accountsApiKey;
|
|
9
|
+
}
|
|
10
|
+
getConfig = () => {
|
|
11
|
+
const SERVICE_API_ROOT_URL = `${this.BASE_API_URL}/accounts`;
|
|
12
|
+
const params = {
|
|
13
|
+
baseURL: SERVICE_API_ROOT_URL
|
|
14
|
+
};
|
|
15
|
+
if (this.ACCOUNTS_API_KEY) {
|
|
16
|
+
params.headers = {
|
|
17
|
+
common: {
|
|
18
|
+
'x-api-key': this.ACCOUNTS_API_KEY
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
return params;
|
|
23
|
+
};
|
|
24
|
+
getClient = async () => {
|
|
25
|
+
return axiosHttpService(this.getConfig());
|
|
26
|
+
};
|
|
27
|
+
createAccount = async (createAccountRequest) => {
|
|
28
|
+
const client = await this.getClient();
|
|
29
|
+
const createAccountResponse = await client.post('', createAccountRequest);
|
|
30
|
+
Logger.debug('createAccountResponse', { createAccountResponse });
|
|
31
|
+
return createAccountResponse;
|
|
32
|
+
};
|
|
33
|
+
updateAccount = async (accountId, body) => {
|
|
34
|
+
const client = await this.getClient();
|
|
35
|
+
const response = await client.patch(`/${accountId}/`, body);
|
|
36
|
+
Logger.debug('update Account response', { response });
|
|
37
|
+
return response;
|
|
38
|
+
};
|
|
39
|
+
addOwner = async (accountId, userId) => {
|
|
40
|
+
const client = await this.getClient();
|
|
41
|
+
const addOwnerResponse = await client.post('/addOwner', { accountId, userId });
|
|
42
|
+
Logger.debug('addOwnerResponse', { addOwnerResponse });
|
|
43
|
+
return addOwnerResponse;
|
|
44
|
+
};
|
|
45
|
+
isAuthorizedUser = async (userId, accountId, pixelId) => {
|
|
46
|
+
const client = await this.getClient();
|
|
47
|
+
const body = {
|
|
48
|
+
userId, accountId, pixelId
|
|
49
|
+
};
|
|
50
|
+
const response = await client.post('/checkUserAuthorization', body);
|
|
51
|
+
Logger.debug('checkUserAuthorization', { response });
|
|
52
|
+
return response;
|
|
53
|
+
};
|
|
54
|
+
adminDeleteAccount = async (accountId) => {
|
|
55
|
+
const client = await this.getClient();
|
|
56
|
+
const success = await client.delete(`/${accountId}`);
|
|
57
|
+
Logger.debug('adminDeleteAccount');
|
|
58
|
+
return success;
|
|
59
|
+
};
|
|
60
|
+
getPixelConfigById = async (pixelId) => {
|
|
61
|
+
const client = await this.getClient();
|
|
62
|
+
const pixelResponse = await client.get(`/px/${pixelId}/config`);
|
|
63
|
+
Logger.debug('get pixelResponse', { pixelResponse });
|
|
64
|
+
return pixelResponse;
|
|
65
|
+
};
|
|
66
|
+
getAccount = async (accountId) => {
|
|
67
|
+
const client = await this.getClient();
|
|
68
|
+
const response = await client.get(`/${accountId}/`);
|
|
69
|
+
Logger.debug('get account response', { response });
|
|
70
|
+
return response;
|
|
71
|
+
};
|
|
72
|
+
addUserToAccount = async (accountId, userId) => {
|
|
73
|
+
const client = await this.getClient();
|
|
74
|
+
const response = await client.post('/addUser', { accountId, userId });
|
|
75
|
+
Logger.debug('add user account response', { response });
|
|
76
|
+
return response;
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
79
|
//# sourceMappingURL=accounts-client.js.map
|