@adtrackify/at-service-common 3.3.6 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/cjs/clients/internal-api/identity-client.d.ts +6 -13
  2. package/dist/cjs/clients/internal-api/identity-client.js +26 -32
  3. package/dist/cjs/clients/internal-api/identity-client.js.map +1 -1
  4. package/dist/cjs/clients/third-party/emailable-client.d.ts +1 -1
  5. package/dist/cjs/clients/third-party/emailable-client.js +5 -8
  6. package/dist/cjs/clients/third-party/emailable-client.js.map +1 -1
  7. package/dist/cjs/helpers/identity-cache-helper.js +0 -7
  8. package/dist/cjs/helpers/identity-cache-helper.js.map +1 -1
  9. package/dist/cjs/libs/strings.d.ts +2 -2
  10. package/dist/cjs/libs/strings.js +17 -8
  11. package/dist/cjs/libs/strings.js.map +1 -1
  12. package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +2 -3
  13. package/dist/cjs/services/db/purchased-contacts-db-service.js +0 -5
  14. package/dist/cjs/services/db/purchased-contacts-db-service.js.map +1 -1
  15. package/dist/cjs/services/index.d.ts +0 -1
  16. package/dist/cjs/services/index.js +0 -1
  17. package/dist/cjs/services/index.js.map +1 -1
  18. package/dist/esm/clients/internal-api/identity-client.d.ts +6 -13
  19. package/dist/esm/clients/internal-api/identity-client.js +26 -32
  20. package/dist/esm/clients/internal-api/identity-client.js.map +1 -1
  21. package/dist/esm/clients/third-party/emailable-client.d.ts +1 -1
  22. package/dist/esm/clients/third-party/emailable-client.js +5 -8
  23. package/dist/esm/clients/third-party/emailable-client.js.map +1 -1
  24. package/dist/esm/helpers/identity-cache-helper.js +1 -8
  25. package/dist/esm/helpers/identity-cache-helper.js.map +1 -1
  26. package/dist/esm/libs/strings.d.ts +2 -2
  27. package/dist/esm/libs/strings.js +17 -8
  28. package/dist/esm/libs/strings.js.map +1 -1
  29. package/dist/esm/services/db/purchased-contacts-db-service.d.ts +2 -3
  30. package/dist/esm/services/db/purchased-contacts-db-service.js +0 -5
  31. package/dist/esm/services/db/purchased-contacts-db-service.js.map +1 -1
  32. package/dist/esm/services/index.d.ts +0 -1
  33. package/dist/esm/services/index.js +0 -1
  34. package/dist/esm/services/index.js.map +1 -1
  35. package/package.json +3 -3
  36. package/dist/cjs/services/email-verification-lookup-service.d.ts +0 -16
  37. package/dist/cjs/services/email-verification-lookup-service.js +0 -66
  38. package/dist/cjs/services/email-verification-lookup-service.js.map +0 -1
  39. package/dist/esm/services/email-verification-lookup-service.d.ts +0 -16
  40. package/dist/esm/services/email-verification-lookup-service.js +0 -62
  41. package/dist/esm/services/email-verification-lookup-service.js.map +0 -1
@@ -11,22 +11,15 @@ export interface MergeIdentityResponse {
11
11
  isIdentityMerged: boolean;
12
12
  identity?: EventIdentity;
13
13
  }
14
- export interface IdentityLookupByEmailResponse {
15
- identities: EventIdentity[];
16
- }
17
14
  export declare class IdentityClient {
18
- BASE_API_URL: string;
19
- SERVICE_API_ROOT_URL: string;
20
- IDENTITY_API_KEY?: string;
15
+ private BASE_API_URL;
16
+ private IDENTITY_API_KEY?;
21
17
  client: GenericHttpClient;
22
18
  constructor(baseApiUrl: string, identityApiKey?: string);
23
- getHeaders: () => {
24
- 'x-api-key': string;
25
- } | {
26
- 'x-api-key'?: undefined;
27
- };
28
- getIdentity: (pixelId: string, eventContext: EventContext | undefined, excludeThirdPartyContacts: boolean) => Promise<any>;
19
+ getConfig: () => any;
20
+ private _getClient;
21
+ private _getIdentity;
22
+ getIdentity: (pixelId: string, eventContext: EventContext | undefined) => Promise<any>;
29
23
  identityAddPurchasedTraits: (pixelId: string, identityId: string, purchasedContactId: string, traits: PurchasedTraits, mergeToIdentityTraitsEnabled: boolean) => Promise<AddPurchasedTraitsResponse | null>;
30
24
  mergeIdentity: (pixelId: string, primaryIdentityId: string, secondaryIdentityId: string) => Promise<MergeIdentityResponse | null>;
31
- getIdentitiesByEmail: (email: string, pixelId?: string) => Promise<IdentityLookupByEmailResponse | null>;
32
25
  }
@@ -4,33 +4,41 @@ exports.IdentityClient = void 0;
4
4
  const libs_1 = require("../../libs");
5
5
  const generic_1 = require("../generic");
6
6
  const helpers_1 = require("../../helpers");
7
- const client = (0, generic_1.axiosHttpService)({
8
- headers: {
9
- 'Content-Type': 'application/json',
10
- },
11
- });
12
7
  class IdentityClient {
13
8
  BASE_API_URL;
14
- SERVICE_API_ROOT_URL;
15
9
  IDENTITY_API_KEY;
16
10
  client;
17
11
  constructor(baseApiUrl, identityApiKey) {
18
12
  this.BASE_API_URL = baseApiUrl;
19
13
  this.IDENTITY_API_KEY = identityApiKey;
20
- this.SERVICE_API_ROOT_URL = `${this.BASE_API_URL}/identities`;
21
- this.client = client;
14
+ this.client = (0, generic_1.axiosHttpService)(this.getConfig());
22
15
  }
23
- getHeaders = () => {
16
+ getConfig = () => {
17
+ const IDENTITY_SERVICE_URL = `${this.BASE_API_URL}/identities`;
18
+ const params = {
19
+ baseURL: IDENTITY_SERVICE_URL,
20
+ };
24
21
  if (this.IDENTITY_API_KEY) {
25
- return {
26
- 'x-api-key': this.IDENTITY_API_KEY,
22
+ params.headers = {
23
+ common: {
24
+ 'x-api-key': this.IDENTITY_API_KEY,
25
+ },
27
26
  };
28
27
  }
29
- return {};
28
+ return params;
30
29
  };
31
- getIdentity = async (pixelId, eventContext, excludeThirdPartyContacts) => {
30
+ _getClient = () => {
31
+ this.client = this.client ?? (0, generic_1.axiosHttpService)(this.getConfig());
32
+ return this.client;
33
+ };
34
+ _getIdentity = async (postBody) => {
35
+ const client = this._getClient();
36
+ const response = await client.post('/', postBody);
37
+ return response;
38
+ };
39
+ getIdentity = async (pixelId, eventContext) => {
32
40
  try {
33
- const identityResponse = await this.client.post(`${this.SERVICE_API_ROOT_URL}`, { pixelId, context: eventContext || {}, excludeThirdPartyContacts }, { headers: this.getHeaders() });
41
+ const identityResponse = await this._getIdentity({ pixelId, context: eventContext || {} });
34
42
  if (identityResponse.status != libs_1.HttpStatusCodes.OK) {
35
43
  const msg = 'HTTP Status Code Failed while retrieving identity data';
36
44
  helpers_1.Logger.error(msg, { identityResponse });
@@ -48,7 +56,8 @@ class IdentityClient {
48
56
  };
49
57
  identityAddPurchasedTraits = async (pixelId, identityId, purchasedContactId, traits, mergeToIdentityTraitsEnabled) => {
50
58
  try {
51
- const response = await this.client.post(`${this.SERVICE_API_ROOT_URL}/purchased-traits`, { pixelId, identityId, purchasedContactId, traits, mergeToIdentityTraitsEnabled }, { headers: this.getHeaders() });
59
+ const client = this._getClient();
60
+ const response = await client.post('/purchased-traits', { pixelId, identityId, purchasedContactId, traits, mergeToIdentityTraitsEnabled });
52
61
  if (response.status === libs_1.HttpStatusCodes.OK) {
53
62
  return response.data;
54
63
  }
@@ -64,7 +73,8 @@ class IdentityClient {
64
73
  };
65
74
  mergeIdentity = async (pixelId, primaryIdentityId, secondaryIdentityId) => {
66
75
  try {
67
- const response = await this.client.post(`${this.SERVICE_API_ROOT_URL}/merge-identity`, { pixelId, primaryIdentityId, secondaryIdentityId }, { headers: this.getHeaders() });
76
+ const client = this._getClient();
77
+ const response = await client.post('/merge-identity', { pixelId, primaryIdentityId, secondaryIdentityId });
68
78
  if (response.status === libs_1.HttpStatusCodes.OK) {
69
79
  return response.data;
70
80
  }
@@ -78,22 +88,6 @@ class IdentityClient {
78
88
  return null;
79
89
  }
80
90
  };
81
- getIdentitiesByEmail = async (email, pixelId) => {
82
- try {
83
- const response = await this.client.get(`${this.SERVICE_API_ROOT_URL}/identities-by-email`, { params: { pixelId, email }, headers: this.getHeaders() });
84
- if (response.status === libs_1.HttpStatusCodes.OK) {
85
- return response.data;
86
- }
87
- else {
88
- helpers_1.Logger.error('HTTP status code failed while looking up identity by email', { response, pixelId, email });
89
- return null;
90
- }
91
- }
92
- catch (error) {
93
- helpers_1.Logger.error('Error while looking up identity by email', { error, email });
94
- return null;
95
- }
96
- };
97
91
  }
98
92
  exports.IdentityClient = IdentityClient;
99
93
  //# sourceMappingURL=identity-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"identity-client.js","sourceRoot":"","sources":["../../../../src/clients/internal-api/identity-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity-client.js","sourceRoot":"","sources":["../../../../src/clients/internal-api/identity-client.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,5 @@ import { EmailableVerifyEmailResponse } from '@adtrackify/at-tracking-event-type
3
3
  export declare class EmailableClient {
4
4
  private EMAILABLE_API_KEY;
5
5
  constructor(emailableApiKey: string);
6
- verifyEmail: (email: string, retries?: number, maxRetries?: number, retryDelay?: number) => Promise<ApiResponse<EmailableVerifyEmailResponse>>;
6
+ verifyEmail: (email: string, retries?: number, delay?: number) => Promise<ApiResponse<EmailableVerifyEmailResponse>>;
7
7
  }
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EmailableClient = void 0;
4
4
  const generic_1 = require("../generic");
5
- const helpers_1 = require("../../helpers");
6
5
  const EMAILABLE_API_URL = 'https://api.emailable.com/v1';
7
6
  const client = (0, generic_1.axiosHttpService)({
8
7
  baseURL: EMAILABLE_API_URL
@@ -12,14 +11,12 @@ class EmailableClient {
12
11
  constructor(emailableApiKey) {
13
12
  this.EMAILABLE_API_KEY = emailableApiKey;
14
13
  }
15
- verifyEmail = async (email, retries = 0, maxRetries = 3, retryDelay = 2000) => {
14
+ verifyEmail = async (email, retries = 3, delay = 3000) => {
16
15
  const response = await client.get('/verify', { params: { api_key: this.EMAILABLE_API_KEY, email } });
17
- if (response.status === 249 || response.status >= 400) {
18
- helpers_1.Logger.error('Failed to verify email', { response, email, retries, maxRetries, retryDelay });
19
- if (retries < maxRetries) {
20
- await new Promise(resolve => setTimeout(resolve, retryDelay));
21
- helpers_1.Logger.info('Retrying to verify email', { email, retries, maxRetries, retryDelay });
22
- return await this.verifyEmail(email, retries + 1, maxRetries, retryDelay);
16
+ if (response.status !== 200) {
17
+ if (retries > 0) {
18
+ await new Promise(resolve => setTimeout(resolve, delay));
19
+ return await this.verifyEmail(email, retries - 1, delay * 2);
23
20
  }
24
21
  }
25
22
  return response;
@@ -1 +1 @@
1
- {"version":3,"file":"emailable-client.js","sourceRoot":"","sources":["../../../../src/clients/third-party/emailable-client.ts"],"names":[],"mappings":";;;AAAA,wCAA8C;AAG9C,2CAAuC;AAEvC,MAAM,iBAAiB,GAAG,8BAA8B,CAAC;AACzD,MAAM,MAAM,GAAG,IAAA,0BAAgB,EAAC;IAC9B,OAAO,EAAE,iBAAiB;CAC3B,CAAC,CAAC;AAEH,MAAa,eAAe;IAClB,iBAAiB,CAAS;IAElC,YAAY,eAAuB;QACjC,IAAI,CAAC,iBAAiB,GAAG,eAAe,CAAC;IAC3C,CAAC;IAEM,WAAW,GAAG,KAAK,EAAE,KAAa,EAAE,OAAO,GAAG,CAAC,EAAE,UAAU,GAAG,CAAC,EAAE,UAAU,GAAG,IAAI,EAAsD,EAAE;QAC/I,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACrG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE;YACrD,gBAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;YAC7F,IAAI,OAAO,GAAG,UAAU,EAAE;gBACxB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;gBAC9D,gBAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;gBACpF,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;aAC3E;SACF;QACD,OAAO,QAAqD,CAAC;IAC/D,CAAC,CAAA;CACF;AAnBD,0CAmBC"}
1
+ {"version":3,"file":"emailable-client.js","sourceRoot":"","sources":["../../../../src/clients/third-party/emailable-client.ts"],"names":[],"mappings":";;;AAAA,wCAA8C;AAM9C,MAAM,iBAAiB,GAAG,8BAA8B,CAAC;AACzD,MAAM,MAAM,GAAG,IAAA,0BAAgB,EAAC;IAC9B,OAAO,EAAE,iBAAiB;CAC3B,CAAC,CAAC;AAEH,MAAa,eAAe;IAClB,iBAAiB,CAAS;IAElC,YAAY,eAAuB;QACjC,IAAI,CAAC,iBAAiB,GAAG,eAAe,CAAC;IAC3C,CAAC;IAEM,WAAW,GAAG,KAAK,EAAE,KAAa,EAAE,OAAO,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,EAAsD,EAAE;QAC1H,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACrG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE;YAC3B,IAAI,OAAO,GAAG,CAAC,EAAE;gBACf,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;gBACzD,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;aAC9D;SACF;QACD,OAAO,QAAqD,CAAC;IAC/D,CAAC,CAAA;CACF;AAjBD,0CAiBC"}
@@ -21,7 +21,6 @@ const isIdentityCacheStale = (identityCache, incomingIdentity) => {
21
21
  isClickInfosStale: false,
22
22
  isIpAddressStale: false,
23
23
  isUserAgentStale: false,
24
- isThirdPartyContactIdsStale: false,
25
24
  isCacheStale: false
26
25
  };
27
26
  const isNewUserIds = (0, at_shared_utils_1.hasNewTrait)(cachedTraits?.userIds ?? [], incomingTraits?.userIds ?? []);
@@ -88,12 +87,6 @@ const isIdentityCacheStale = (identityCache, incomingIdentity) => {
88
87
  identityCacheStaleTracker.isUserAgentStale = true;
89
88
  identityCacheStaleTracker.isCacheStale = true;
90
89
  }
91
- const isNewThirdPartyContacts = (0, at_shared_utils_1.hasNewThirdPartyContact)(cachedTraits?.thirdPartyContacts ?? [], incomingTraits?.thirdPartyContacts ?? []);
92
- if (isNewThirdPartyContacts) {
93
- logging_helper_1.Logger.debug('identity cache miss - thirdPartyContacts changed', { cachedTraits, incomingTraits });
94
- identityCacheStaleTracker.isThirdPartyContactIdsStale = true;
95
- identityCacheStaleTracker.isCacheStale = true;
96
- }
97
90
  if (identityCacheStaleTracker.isCacheStale) {
98
91
  logging_helper_1.Logger.debug('identity cache miss - cache stale', { identityCacheStaleTracker });
99
92
  }
@@ -1 +1 @@
1
- {"version":3,"file":"identity-cache-helper.js","sourceRoot":"","sources":["../../../src/helpers/identity-cache-helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity-cache-helper.js","sourceRoot":"","sources":["../../../src/helpers/identity-cache-helper.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- export declare const capitalizeEachWord: (value: string) => string;
2
- export declare const capitalizeFirstLetter: (value: string) => string;
1
+ export declare const capitalizeEachWord: (input: string) => string;
2
+ export declare const capitalizeFirstLetter: (input: string) => string;
3
3
  export declare const containsUpperCase: (input: string) => boolean;
@@ -2,31 +2,40 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.containsUpperCase = exports.capitalizeFirstLetter = exports.capitalizeEachWord = void 0;
4
4
  const helpers_1 = require("../helpers");
5
- const capitalizeEachWord = (value) => {
5
+ const capitalizeEachWord = (input) => {
6
6
  try {
7
- return value
7
+ if (typeof input !== 'string') {
8
+ return input;
9
+ }
10
+ return input
8
11
  .split(' ')
9
12
  .map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
10
13
  .join(' ');
11
14
  }
12
15
  catch (error) {
13
- helpers_1.Logger.error('error capitalizing each word', { error, value });
14
- return value;
16
+ helpers_1.Logger.error('error capitalizing each word', { error, input });
17
+ return input;
15
18
  }
16
19
  };
17
20
  exports.capitalizeEachWord = capitalizeEachWord;
18
- const capitalizeFirstLetter = (value) => {
21
+ const capitalizeFirstLetter = (input) => {
19
22
  try {
20
- return value.charAt(0).toUpperCase() + value.slice(1);
23
+ if (typeof input !== 'string') {
24
+ return input;
25
+ }
26
+ return input.charAt(0).toUpperCase() + input.slice(1);
21
27
  }
22
28
  catch (error) {
23
- helpers_1.Logger.error('error capitalizing first letter', { error, value });
24
- return value;
29
+ helpers_1.Logger.error('error capitalizing first letter', { error, input });
30
+ return input;
25
31
  }
26
32
  };
27
33
  exports.capitalizeFirstLetter = capitalizeFirstLetter;
28
34
  const containsUpperCase = (input) => {
29
35
  try {
36
+ if (typeof input !== 'string') {
37
+ return false;
38
+ }
30
39
  return /[A-Z]/.test(input);
31
40
  }
32
41
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"strings.js","sourceRoot":"","sources":["../../../src/libs/strings.ts"],"names":[],"mappings":";;;AAAA,wCAAoC;AAE7B,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;IAClD,IAAI;QACF,OAAO,KAAK;aACT,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;aACvE,IAAI,CAAC,GAAG,CAAC,CAAC;KACd;IAAC,OAAO,KAAK,EAAE;QACd,gBAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/D,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAVW,QAAA,kBAAkB,sBAU7B;AAEK,MAAM,qBAAqB,GAAG,CAAC,KAAa,EAAE,EAAE;IACrD,IAAI;QACF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACvD;IAAC,OAAO,KAAK,EAAE;QACd,gBAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAClE,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAPW,QAAA,qBAAqB,yBAOhC;AAEK,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAW,EAAE;IAC1D,IAAI;QACF,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC5B;IAAC,OAAO,KAAK,EAAE;QACd,gBAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/E,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAPW,QAAA,iBAAiB,qBAO5B"}
1
+ {"version":3,"file":"strings.js","sourceRoot":"","sources":["../../../src/libs/strings.ts"],"names":[],"mappings":";;;AAAA,wCAAoC;AAE7B,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;IAClD,IAAI;QACF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,OAAO,KAAK,CAAC;SACd;QACD,OAAO,KAAK;aACT,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;aACvE,IAAI,CAAC,GAAG,CAAC,CAAC;KACd;IAAC,OAAO,KAAK,EAAE;QACd,gBAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/D,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAbW,QAAA,kBAAkB,sBAa7B;AAEK,MAAM,qBAAqB,GAAG,CAAC,KAAa,EAAE,EAAE;IACrD,IAAI;QACF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,OAAO,KAAK,CAAC;SACd;QACD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACvD;IAAC,OAAO,KAAK,EAAE;QACd,gBAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAClE,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAVW,QAAA,qBAAqB,yBAUhC;AAEK,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAW,EAAE;IAC1D,IAAI;QACF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,OAAO,KAAK,CAAC;SACd;QACD,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC5B;IAAC,OAAO,KAAK,EAAE;QACd,gBAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/E,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAVW,QAAA,iBAAiB,qBAU5B"}
@@ -3,8 +3,7 @@ export declare class PurchasedContactsDbService {
3
3
  TABLE_NAME: string;
4
4
  TABLE_KEY: string;
5
5
  constructor(tableName: string, purchasedContactsKey: string);
6
- getPurchasedContact: (id: string) => Promise<PurchasedContact>;
7
- batchGetPurchasedContacts: (ids: string[]) => Promise<PurchasedContact[]>;
6
+ getPurchasedContact: (id: string) => Promise<Record<string, any>>;
8
7
  putPurchasedContact: (purchasedContact: PurchasedContact) => Promise<PurchasedContact>;
9
- updatePurchasedContact: (id: string, data: any) => Promise<PurchasedContact>;
8
+ updatePurchasedContact: (id: string, data: any) => Promise<Record<string, any>>;
10
9
  }
@@ -18,11 +18,6 @@ class PurchasedContactsDbService {
18
18
  }
19
19
  return purchasedContact;
20
20
  };
21
- batchGetPurchasedContacts = async (ids) => {
22
- const keys = ids.map((id) => ({ [this.TABLE_KEY]: id }));
23
- const purchasedContacts = await clients_1.DynamoDbClient.safeBatchGet(this.TABLE_NAME, keys);
24
- return purchasedContacts;
25
- };
26
21
  putPurchasedContact = async (purchasedContact) => {
27
22
  await clients_1.DynamoDbClient.safePut(this.TABLE_NAME, purchasedContact);
28
23
  return purchasedContact;
@@ -1 +1 @@
1
- {"version":3,"file":"purchased-contacts-db-service.js","sourceRoot":"","sources":["../../../../src/services/db/purchased-contacts-db-service.ts"],"names":[],"mappings":";;;AACA,2CAA+C;AAC/C,qCAA4D;AAC5D,2CAAuC;AAEvC,MAAa,0BAA0B;IAC9B,UAAU,CAAS;IACnB,SAAS,CAAS;IAEzB,YAAY,SAAiB,EAAE,oBAA4B;QACzD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,oBAAoB,CAAC;IACxC,CAAC;IAEM,mBAAmB,GAAG,KAAK,EAAE,EAAU,EAA6B,EAAE;QAC3E,MAAM,gBAAgB,GAAG,MAAM,wBAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC3F,IAAI,CAAC,gBAAgB,EAAE;YACrB,MAAM,gBAAS,CAAC,QAAQ,EAAE,CAAC;SAC5B;QACD,OAAO,gBAAoC,CAAC;IAC9C,CAAC,CAAA;IAEM,yBAAyB,GAAG,KAAK,EAAE,GAAa,EAA+B,EAAE;QACtF,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACzD,MAAM,iBAAiB,GAAG,MAAM,wBAAc,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACnF,OAAO,iBAAuC,CAAC;IACjD,CAAC,CAAA;IAEM,mBAAmB,GAAG,KAAK,EAAE,gBAAkC,EAA6B,EAAE;QACnG,MAAM,wBAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAChE,OAAO,gBAAgB,CAAC;IAC1B,CAAC,CAAA;IAEM,sBAAsB,GAAG,KAAK,EAAE,EAAU,EAAE,IAAS,EAA6B,EAAE;QACzF,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAE5D,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,gBAAgB,GAAG,IAAA,0BAAmB,GAAE,CAAC;QAC/C,gBAAgB,CAAC,SAAS,GAAG,gBAAgB,CAAC;QAE9C,MAAM,GAAG,GAAG,MAAM,wBAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAC5E,IAAI,CAAC,GAAG,EAAE;YACR,gBAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACtE,MAAM,gBAAS,CAAC,QAAQ,EAAE,CAAC;SAC5B;QACD,OAAO,gBAAgB,CAAC;IAC1B,CAAC,CAAA;CACF;AA1CD,gEA0CC"}
1
+ {"version":3,"file":"purchased-contacts-db-service.js","sourceRoot":"","sources":["../../../../src/services/db/purchased-contacts-db-service.ts"],"names":[],"mappings":";;;AACA,2CAA+C;AAC/C,qCAA4D;AAC5D,2CAAuC;AAEvC,MAAa,0BAA0B;IAC9B,UAAU,CAAS;IACnB,SAAS,CAAS;IAEzB,YAAY,SAAiB,EAAE,oBAA4B;QACzD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,oBAAoB,CAAC;IACxC,CAAC;IAEM,mBAAmB,GAAG,KAAK,EAAE,EAAU,EAAE,EAAE;QAChD,MAAM,gBAAgB,GAAG,MAAM,wBAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC3F,IAAI,CAAC,gBAAgB,EAAE;YACrB,MAAM,gBAAS,CAAC,QAAQ,EAAE,CAAC;SAC5B;QACD,OAAO,gBAAgB,CAAC;IAC1B,CAAC,CAAA;IAEM,mBAAmB,GAAG,KAAK,EAAE,gBAAkC,EAAE,EAAE;QACxE,MAAM,wBAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAChE,OAAO,gBAAgB,CAAC;IAC1B,CAAC,CAAA;IAEM,sBAAsB,GAAG,KAAK,EAAE,EAAU,EAAE,IAAS,EAAE,EAAE;QAC9D,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAE5D,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,gBAAgB,GAAG,IAAA,0BAAmB,GAAE,CAAC;QAC/C,gBAAgB,CAAC,SAAS,GAAG,gBAAgB,CAAC;QAE9C,MAAM,GAAG,GAAG,MAAM,wBAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAC5E,IAAI,CAAC,GAAG,EAAE;YACR,gBAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACtE,MAAM,gBAAS,CAAC,QAAQ,EAAE,CAAC;SAC5B;QACD,OAAO,gBAAgB,CAAC;IAC1B,CAAC,CAAA;CACF;AApCD,gEAoCC"}
@@ -2,7 +2,6 @@ export * from './eventbridge-integration-service.js';
2
2
  export * from './ipdata-lookup-service.js';
3
3
  export * from './generic-cache-service.js';
4
4
  export * from './currency-exchange-rate-lookup-service.js';
5
- export * from './email-verification-lookup-service.js';
6
5
  export * from './db';
7
6
  export * from './shopify';
8
7
  export * from './cache';
@@ -18,7 +18,6 @@ __exportStar(require("./eventbridge-integration-service.js"), exports);
18
18
  __exportStar(require("./ipdata-lookup-service.js"), exports);
19
19
  __exportStar(require("./generic-cache-service.js"), exports);
20
20
  __exportStar(require("./currency-exchange-rate-lookup-service.js"), exports);
21
- __exportStar(require("./email-verification-lookup-service.js"), exports);
22
21
  __exportStar(require("./db"), exports);
23
22
  __exportStar(require("./shopify"), exports);
24
23
  __exportStar(require("./cache"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uEAAqD;AACrD,6DAA2C;AAC3C,6DAA2C;AAC3C,6EAA2D;AAC3D,yEAAuD;AACvD,uCAAqB;AACrB,4CAA0B;AAC1B,0CAAwB;AACxB,2CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uEAAqD;AACrD,6DAA2C;AAC3C,6DAA2C;AAC3C,6EAA2D;AAC3D,uCAAqB;AACrB,4CAA0B;AAC1B,0CAAwB;AACxB,2CAAyB"}
@@ -11,22 +11,15 @@ export interface MergeIdentityResponse {
11
11
  isIdentityMerged: boolean;
12
12
  identity?: EventIdentity;
13
13
  }
14
- export interface IdentityLookupByEmailResponse {
15
- identities: EventIdentity[];
16
- }
17
14
  export declare class IdentityClient {
18
- BASE_API_URL: string;
19
- SERVICE_API_ROOT_URL: string;
20
- IDENTITY_API_KEY?: string;
15
+ private BASE_API_URL;
16
+ private IDENTITY_API_KEY?;
21
17
  client: GenericHttpClient;
22
18
  constructor(baseApiUrl: string, identityApiKey?: string);
23
- getHeaders: () => {
24
- 'x-api-key': string;
25
- } | {
26
- 'x-api-key'?: undefined;
27
- };
28
- getIdentity: (pixelId: string, eventContext: EventContext | undefined, excludeThirdPartyContacts: boolean) => Promise<any>;
19
+ getConfig: () => any;
20
+ private _getClient;
21
+ private _getIdentity;
22
+ getIdentity: (pixelId: string, eventContext: EventContext | undefined) => Promise<any>;
29
23
  identityAddPurchasedTraits: (pixelId: string, identityId: string, purchasedContactId: string, traits: PurchasedTraits, mergeToIdentityTraitsEnabled: boolean) => Promise<AddPurchasedTraitsResponse | null>;
30
24
  mergeIdentity: (pixelId: string, primaryIdentityId: string, secondaryIdentityId: string) => Promise<MergeIdentityResponse | null>;
31
- getIdentitiesByEmail: (email: string, pixelId?: string) => Promise<IdentityLookupByEmailResponse | null>;
32
25
  }
@@ -1,33 +1,41 @@
1
1
  import { HttpStatusCodes } from '../../libs';
2
2
  import { axiosHttpService } from '../generic';
3
3
  import { Logger } from '../../helpers';
4
- const client = axiosHttpService({
5
- headers: {
6
- 'Content-Type': 'application/json',
7
- },
8
- });
9
4
  export class IdentityClient {
10
5
  BASE_API_URL;
11
- SERVICE_API_ROOT_URL;
12
6
  IDENTITY_API_KEY;
13
7
  client;
14
8
  constructor(baseApiUrl, identityApiKey) {
15
9
  this.BASE_API_URL = baseApiUrl;
16
10
  this.IDENTITY_API_KEY = identityApiKey;
17
- this.SERVICE_API_ROOT_URL = `${this.BASE_API_URL}/identities`;
18
- this.client = client;
11
+ this.client = axiosHttpService(this.getConfig());
19
12
  }
20
- getHeaders = () => {
13
+ getConfig = () => {
14
+ const IDENTITY_SERVICE_URL = `${this.BASE_API_URL}/identities`;
15
+ const params = {
16
+ baseURL: IDENTITY_SERVICE_URL,
17
+ };
21
18
  if (this.IDENTITY_API_KEY) {
22
- return {
23
- 'x-api-key': this.IDENTITY_API_KEY,
19
+ params.headers = {
20
+ common: {
21
+ 'x-api-key': this.IDENTITY_API_KEY,
22
+ },
24
23
  };
25
24
  }
26
- return {};
25
+ return params;
27
26
  };
28
- getIdentity = async (pixelId, eventContext, excludeThirdPartyContacts) => {
27
+ _getClient = () => {
28
+ this.client = this.client ?? axiosHttpService(this.getConfig());
29
+ return this.client;
30
+ };
31
+ _getIdentity = async (postBody) => {
32
+ const client = this._getClient();
33
+ const response = await client.post('/', postBody);
34
+ return response;
35
+ };
36
+ getIdentity = async (pixelId, eventContext) => {
29
37
  try {
30
- const identityResponse = await this.client.post(`${this.SERVICE_API_ROOT_URL}`, { pixelId, context: eventContext || {}, excludeThirdPartyContacts }, { headers: this.getHeaders() });
38
+ const identityResponse = await this._getIdentity({ pixelId, context: eventContext || {} });
31
39
  if (identityResponse.status != HttpStatusCodes.OK) {
32
40
  const msg = 'HTTP Status Code Failed while retrieving identity data';
33
41
  Logger.error(msg, { identityResponse });
@@ -45,7 +53,8 @@ export class IdentityClient {
45
53
  };
46
54
  identityAddPurchasedTraits = async (pixelId, identityId, purchasedContactId, traits, mergeToIdentityTraitsEnabled) => {
47
55
  try {
48
- const response = await this.client.post(`${this.SERVICE_API_ROOT_URL}/purchased-traits`, { pixelId, identityId, purchasedContactId, traits, mergeToIdentityTraitsEnabled }, { headers: this.getHeaders() });
56
+ const client = this._getClient();
57
+ const response = await client.post('/purchased-traits', { pixelId, identityId, purchasedContactId, traits, mergeToIdentityTraitsEnabled });
49
58
  if (response.status === HttpStatusCodes.OK) {
50
59
  return response.data;
51
60
  }
@@ -61,7 +70,8 @@ export class IdentityClient {
61
70
  };
62
71
  mergeIdentity = async (pixelId, primaryIdentityId, secondaryIdentityId) => {
63
72
  try {
64
- const response = await this.client.post(`${this.SERVICE_API_ROOT_URL}/merge-identity`, { pixelId, primaryIdentityId, secondaryIdentityId }, { headers: this.getHeaders() });
73
+ const client = this._getClient();
74
+ const response = await client.post('/merge-identity', { pixelId, primaryIdentityId, secondaryIdentityId });
65
75
  if (response.status === HttpStatusCodes.OK) {
66
76
  return response.data;
67
77
  }
@@ -75,21 +85,5 @@ export class IdentityClient {
75
85
  return null;
76
86
  }
77
87
  };
78
- getIdentitiesByEmail = async (email, pixelId) => {
79
- try {
80
- const response = await this.client.get(`${this.SERVICE_API_ROOT_URL}/identities-by-email`, { params: { pixelId, email }, headers: this.getHeaders() });
81
- if (response.status === HttpStatusCodes.OK) {
82
- return response.data;
83
- }
84
- else {
85
- Logger.error('HTTP status code failed while looking up identity by email', { response, pixelId, email });
86
- return null;
87
- }
88
- }
89
- catch (error) {
90
- Logger.error('Error while looking up identity by email', { error, email });
91
- return null;
92
- }
93
- };
94
88
  }
95
89
  //# sourceMappingURL=identity-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"identity-client.js","sourceRoot":"","sources":["../../../../src/clients/internal-api/identity-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity-client.js","sourceRoot":"","sources":["../../../../src/clients/internal-api/identity-client.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,5 @@ import { EmailableVerifyEmailResponse } from '@adtrackify/at-tracking-event-type
3
3
  export declare class EmailableClient {
4
4
  private EMAILABLE_API_KEY;
5
5
  constructor(emailableApiKey: string);
6
- verifyEmail: (email: string, retries?: number, maxRetries?: number, retryDelay?: number) => Promise<ApiResponse<EmailableVerifyEmailResponse>>;
6
+ verifyEmail: (email: string, retries?: number, delay?: number) => Promise<ApiResponse<EmailableVerifyEmailResponse>>;
7
7
  }
@@ -1,5 +1,4 @@
1
1
  import { axiosHttpService } from '../generic';
2
- import { Logger } from '../../helpers';
3
2
  const EMAILABLE_API_URL = 'https://api.emailable.com/v1';
4
3
  const client = axiosHttpService({
5
4
  baseURL: EMAILABLE_API_URL
@@ -9,14 +8,12 @@ export class EmailableClient {
9
8
  constructor(emailableApiKey) {
10
9
  this.EMAILABLE_API_KEY = emailableApiKey;
11
10
  }
12
- verifyEmail = async (email, retries = 0, maxRetries = 3, retryDelay = 2000) => {
11
+ verifyEmail = async (email, retries = 3, delay = 3000) => {
13
12
  const response = await client.get('/verify', { params: { api_key: this.EMAILABLE_API_KEY, email } });
14
- if (response.status === 249 || response.status >= 400) {
15
- Logger.error('Failed to verify email', { response, email, retries, maxRetries, retryDelay });
16
- if (retries < maxRetries) {
17
- await new Promise(resolve => setTimeout(resolve, retryDelay));
18
- Logger.info('Retrying to verify email', { email, retries, maxRetries, retryDelay });
19
- return await this.verifyEmail(email, retries + 1, maxRetries, retryDelay);
13
+ if (response.status !== 200) {
14
+ if (retries > 0) {
15
+ await new Promise(resolve => setTimeout(resolve, delay));
16
+ return await this.verifyEmail(email, retries - 1, delay * 2);
20
17
  }
21
18
  }
22
19
  return response;
@@ -1 +1 @@
1
- {"version":3,"file":"emailable-client.js","sourceRoot":"","sources":["../../../../src/clients/third-party/emailable-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAG9C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,MAAM,iBAAiB,GAAG,8BAA8B,CAAC;AACzD,MAAM,MAAM,GAAG,gBAAgB,CAAC;IAC9B,OAAO,EAAE,iBAAiB;CAC3B,CAAC,CAAC;AAEH,MAAM,OAAO,eAAe;IAClB,iBAAiB,CAAS;IAElC,YAAY,eAAuB;QACjC,IAAI,CAAC,iBAAiB,GAAG,eAAe,CAAC;IAC3C,CAAC;IAEM,WAAW,GAAG,KAAK,EAAE,KAAa,EAAE,OAAO,GAAG,CAAC,EAAE,UAAU,GAAG,CAAC,EAAE,UAAU,GAAG,IAAI,EAAsD,EAAE;QAC/I,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACrG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE;YACrD,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;YAC7F,IAAI,OAAO,GAAG,UAAU,EAAE;gBACxB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;gBAC9D,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;gBACpF,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;aAC3E;SACF;QACD,OAAO,QAAqD,CAAC;IAC/D,CAAC,CAAA;CACF"}
1
+ {"version":3,"file":"emailable-client.js","sourceRoot":"","sources":["../../../../src/clients/third-party/emailable-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAM9C,MAAM,iBAAiB,GAAG,8BAA8B,CAAC;AACzD,MAAM,MAAM,GAAG,gBAAgB,CAAC;IAC9B,OAAO,EAAE,iBAAiB;CAC3B,CAAC,CAAC;AAEH,MAAM,OAAO,eAAe;IAClB,iBAAiB,CAAS;IAElC,YAAY,eAAuB;QACjC,IAAI,CAAC,iBAAiB,GAAG,eAAe,CAAC;IAC3C,CAAC;IAEM,WAAW,GAAG,KAAK,EAAE,KAAa,EAAE,OAAO,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,EAAsD,EAAE;QAC1H,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACrG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE;YAC3B,IAAI,OAAO,GAAG,CAAC,EAAE;gBACf,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;gBACzD,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;aAC9D;SACF;QACD,OAAO,QAAqD,CAAC;IAC/D,CAAC,CAAA;CACF"}
@@ -1,4 +1,4 @@
1
- import { hasNewTrait, hasNewAddress, removeEmptyFields, hasNewThirdPartyContact } from '@adtrackify/at-shared-utils';
1
+ import { hasNewTrait, hasNewAddress, removeEmptyFields } from '@adtrackify/at-shared-utils';
2
2
  import { Logger } from './logging-helper';
3
3
  export const isIdentityCacheStale = (identityCache, incomingIdentity) => {
4
4
  try {
@@ -18,7 +18,6 @@ export const isIdentityCacheStale = (identityCache, incomingIdentity) => {
18
18
  isClickInfosStale: false,
19
19
  isIpAddressStale: false,
20
20
  isUserAgentStale: false,
21
- isThirdPartyContactIdsStale: false,
22
21
  isCacheStale: false
23
22
  };
24
23
  const isNewUserIds = hasNewTrait(cachedTraits?.userIds ?? [], incomingTraits?.userIds ?? []);
@@ -85,12 +84,6 @@ export const isIdentityCacheStale = (identityCache, incomingIdentity) => {
85
84
  identityCacheStaleTracker.isUserAgentStale = true;
86
85
  identityCacheStaleTracker.isCacheStale = true;
87
86
  }
88
- const isNewThirdPartyContacts = hasNewThirdPartyContact(cachedTraits?.thirdPartyContacts ?? [], incomingTraits?.thirdPartyContacts ?? []);
89
- if (isNewThirdPartyContacts) {
90
- Logger.debug('identity cache miss - thirdPartyContacts changed', { cachedTraits, incomingTraits });
91
- identityCacheStaleTracker.isThirdPartyContactIdsStale = true;
92
- identityCacheStaleTracker.isCacheStale = true;
93
- }
94
87
  if (identityCacheStaleTracker.isCacheStale) {
95
88
  Logger.debug('identity cache miss - cache stale', { identityCacheStaleTracker });
96
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"identity-cache-helper.js","sourceRoot":"","sources":["../../../src/helpers/identity-cache-helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity-cache-helper.js","sourceRoot":"","sources":["../../../src/helpers/identity-cache-helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAG5F,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,aAA4B,EAAE,gBAA+B,EAAE,EAAE;IACpG,IAAI;QACF,MAAM,YAAY,GAAG,aAAa,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,CAAC;QAC1D,MAAM,cAAc,GAAG,gBAAgB,EAAE,MAAM,IAAI,EAAE,CAAC;QACtD,MAAM,yBAAyB,GAAG;YAChC,YAAY,EAAE,YAAY;YAC1B,cAAc,EAAE,cAAc;YAC9B,cAAc,EAAE,KAAK;YACrB,UAAU,EAAE,KAAK;YACjB,aAAa,EAAE,KAAK;YACpB,aAAa,EAAE,KAAK;YACpB,kBAAkB,EAAE,KAAK;YACzB,cAAc,EAAE,KAAK;YACrB,WAAW,EAAE,KAAK;YAClB,gBAAgB,EAAE,KAAK;YACvB,iBAAiB,EAAE,KAAK;YACxB,gBAAgB,EAAE,KAAK;YACvB,gBAAgB,EAAE,KAAK;YACvB,YAAY,EAAE,KAAK;SACpB,CAAA;QAED,MAAM,YAAY,GAAG,WAAW,CAAC,YAAY,EAAE,OAAO,IAAI,EAAE,EAAE,cAAc,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QAC7F,IAAI,YAAY,EAAE;YAChB,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;YACxF,yBAAyB,CAAC,cAAc,GAAG,IAAI,CAAA;YAC/C,yBAAyB,CAAC,YAAY,GAAG,IAAI,CAAC;SAC/C;QACD,MAAM,QAAQ,GAAG,WAAW,CAAC,YAAY,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;QACjF,IAAI,QAAQ,EAAE;YACZ,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;YACpF,yBAAyB,CAAC,UAAU,GAAG,IAAI,CAAC;YAC5C,yBAAyB,CAAC,YAAY,GAAG,IAAI,CAAC;SAC/C;QACD,MAAM,WAAW,GAAG,WAAW,CAAC,YAAY,EAAE,MAAM,IAAI,EAAE,EAAE,cAAc,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;QAC1F,IAAI,WAAW,EAAE;YACf,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;YACvF,yBAAyB,CAAC,aAAa,GAAG,IAAI,CAAC;YAC/C,yBAAyB,CAAC,YAAY,GAAG,IAAI,CAAC;SAC/C;QACD,MAAM,WAAW,GAAG,WAAW,CAAC,YAAY,EAAE,MAAM,IAAI,EAAE,EAAE,cAAc,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;QAC1F,IAAI,WAAW,EAAE;YACf,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;YACvF,yBAAyB,CAAC,aAAa,GAAG,IAAI,CAAC;YAC/C,yBAAyB,CAAC,YAAY,GAAG,IAAI,CAAC;SAC/C;QACD,MAAM,gBAAgB,GAAG,WAAW,CAAC,YAAY,EAAE,WAAW,IAAI,EAAE,EAAE,cAAc,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC;QACzG,IAAI,gBAAgB,EAAE;YACpB,MAAM,CAAC,KAAK,CAAC,6CAA6C,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;YAC9F,yBAAyB,CAAC,kBAAkB,GAAG,IAAI,CAAC;YACpD,yBAAyB,CAAC,YAAY,GAAG,IAAI,CAAC;SAC/C;QACD,MAAM,YAAY,GAAG,WAAW,CAAC,YAAY,EAAE,OAAO,IAAI,EAAE,EAAE,cAAc,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QAC7F,IAAI,YAAY,EAAE;YAChB,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;YACxF,yBAAyB,CAAC,cAAc,GAAG,IAAI,CAAC;YAChD,yBAAyB,CAAC,YAAY,GAAG,IAAI,CAAC;SAC/C;QACD,MAAM,SAAS,GAAG,WAAW,CAAC,YAAY,EAAE,IAAI,IAAI,EAAE,EAAE,cAAc,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;QACpF,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;YACrF,yBAAyB,CAAC,WAAW,GAAG,IAAI,CAAC;YAC7C,yBAAyB,CAAC,YAAY,GAAG,IAAI,CAAC;SAC/C;QACD,MAAM,YAAY,GAAG,aAAa,CAAC,YAAY,EAAE,SAAS,IAAI,EAAE,EAAE,cAAc,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;QACnG,IAAI,YAAY,EAAE;YAChB,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;YACxF,yBAAyB,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAClD,yBAAyB,CAAC,YAAY,GAAG,IAAI,CAAC;SAC/C;QAED,MAAM,UAAU,GAAG,iBAAiB,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE,EAAE,cAAc,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;QAC7F,IAAI,UAAU,EAAE;YACd,MAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;YAC3F,yBAAyB,CAAC,iBAAiB,GAAG,IAAI,CAAC;YACnD,yBAAyB,CAAC,YAAY,GAAG,IAAI,CAAC;SAC/C;QACD,IAAI,cAAc,EAAE,SAAS,IAAI,YAAY,EAAE,SAAS,KAAK,cAAc,EAAE,SAAS,EAAE;YACtF,MAAM,CAAC,KAAK,CAAC,4CAA4C,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;YAC7F,yBAAyB,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAClD,yBAAyB,CAAC,YAAY,GAAG,IAAI,CAAC;SAC/C;QAED,IAAI,cAAc,EAAE,SAAS,IAAI,YAAY,EAAE,SAAS,KAAK,cAAc,EAAE,SAAS,EAAE;YACtF,MAAM,CAAC,KAAK,CAAC,yCAAyC,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;YAC1F,yBAAyB,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAClD,yBAAyB,CAAC,YAAY,GAAG,IAAI,CAAC;SAC/C;QACD,IAAI,yBAAyB,CAAC,YAAY,EAAE;YAC1C,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,EAAE,yBAAyB,EAAE,CAAC,CAAC;SAClF;QACD,OAAO,yBAAyB,CAAC,YAAY,CAAC;KAC/C;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,CAAC,KAAK,CAAC,iDAAiD,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC;KACb;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,WAAwB,EAAE,aAA0B,EAAE,EAAE;IACxF,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC1D,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAC9D,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACvD,MAAM,qBAAqB,GAAG;QAC5B,kBAAkB;QAClB,oBAAoB;QACpB,iBAAiB,EAAE,KAAK;QACxB,SAAS,EAAE,EAAc;KAC1B,CAAA;IACD,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACzB,IAAI,GAAG,KAAK,mBAAmB,IAAI,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE;YAC9D,OAAO,IAAI,CAAC;SACb;aACI,IAAI,GAAG,KAAK,KAAK,EAAE;YACtB,MAAM,gBAAgB,GAAI,kBAA0B,EAAE,CAAC,GAAG,CAAC,CAAC;YAC5D,MAAM,kBAAkB,GAAI,oBAA4B,EAAE,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,kBAAkB,IAAI,CAAC,gBAAgB,EAAE;gBAC3C,qBAAqB,CAAC,iBAAiB,GAAG,IAAI,CAAC;gBAC/C,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAC3C;iBACI,IAAI,kBAAkB,IAAI,gBAAgB,IAAI,kBAAkB,KAAK,gBAAgB,EAAE;gBAC1F,MAAM,iBAAiB,GAAG,kBAAkB,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC9D,MAAM,eAAe,GAAG,gBAAgB,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC1D,IAAI,iBAAiB,KAAK,eAAe,EAAE;oBACzC,qBAAqB,CAAC,iBAAiB,GAAG,IAAI,CAAC;oBAC/C,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBAC3C;gBACD,IAAI,CAAC,iBAAiB,IAAI,CAAC,eAAe,EAAE;oBAC1C,qBAAqB,CAAC,iBAAiB,GAAG,IAAI,CAAC;oBAC/C,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBAC3C;aACF;SACF;aAAM;YACL,MAAM,gBAAgB,GAAI,kBAA0B,EAAE,CAAC,GAAG,CAAC,CAAC;YAC5D,MAAM,kBAAkB,GAAI,oBAA4B,EAAE,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,CAAC,kBAAkB,IAAI,CAAC,gBAAgB,CAAC;mBACxC,kBAAkB,KAAK,gBAAgB,EAAE;gBAC5C,qBAAqB,CAAC,iBAAiB,GAAG,IAAI,CAAC;gBAC/C,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAC3C;SACF;IACH,CAAC,CAAC,CAAA;IACF,IAAI,qBAAqB,CAAC,iBAAiB,EAAE;QAC3C,MAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE,EAAE,qBAAqB,EAAE,CAAC,CAAC;KACrF;IACD,OAAO,qBAAqB,CAAC,iBAAiB,CAAC;AACjD,CAAC,CAAA"}
@@ -1,3 +1,3 @@
1
- export declare const capitalizeEachWord: (value: string) => string;
2
- export declare const capitalizeFirstLetter: (value: string) => string;
1
+ export declare const capitalizeEachWord: (input: string) => string;
2
+ export declare const capitalizeFirstLetter: (input: string) => string;
3
3
  export declare const containsUpperCase: (input: string) => boolean;
@@ -1,27 +1,36 @@
1
1
  import { Logger } from '../helpers';
2
- export const capitalizeEachWord = (value) => {
2
+ export const capitalizeEachWord = (input) => {
3
3
  try {
4
- return value
4
+ if (typeof input !== 'string') {
5
+ return input;
6
+ }
7
+ return input
5
8
  .split(' ')
6
9
  .map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
7
10
  .join(' ');
8
11
  }
9
12
  catch (error) {
10
- Logger.error('error capitalizing each word', { error, value });
11
- return value;
13
+ Logger.error('error capitalizing each word', { error, input });
14
+ return input;
12
15
  }
13
16
  };
14
- export const capitalizeFirstLetter = (value) => {
17
+ export const capitalizeFirstLetter = (input) => {
15
18
  try {
16
- return value.charAt(0).toUpperCase() + value.slice(1);
19
+ if (typeof input !== 'string') {
20
+ return input;
21
+ }
22
+ return input.charAt(0).toUpperCase() + input.slice(1);
17
23
  }
18
24
  catch (error) {
19
- Logger.error('error capitalizing first letter', { error, value });
20
- return value;
25
+ Logger.error('error capitalizing first letter', { error, input });
26
+ return input;
21
27
  }
22
28
  };
23
29
  export const containsUpperCase = (input) => {
24
30
  try {
31
+ if (typeof input !== 'string') {
32
+ return false;
33
+ }
25
34
  return /[A-Z]/.test(input);
26
35
  }
27
36
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"strings.js","sourceRoot":"","sources":["../../../src/libs/strings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;IAClD,IAAI;QACF,OAAO,KAAK;aACT,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;aACvE,IAAI,CAAC,GAAG,CAAC,CAAC;KACd;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/D,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAa,EAAE,EAAE;IACrD,IAAI;QACF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACvD;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAClE,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAW,EAAE;IAC1D,IAAI;QACF,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC5B;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/E,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"strings.js","sourceRoot":"","sources":["../../../src/libs/strings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;IAClD,IAAI;QACF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,OAAO,KAAK,CAAC;SACd;QACD,OAAO,KAAK;aACT,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;aACvE,IAAI,CAAC,GAAG,CAAC,CAAC;KACd;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/D,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAa,EAAE,EAAE;IACrD,IAAI;QACF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,OAAO,KAAK,CAAC;SACd;QACD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACvD;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAClE,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAW,EAAE;IAC1D,IAAI;QACF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,OAAO,KAAK,CAAC;SACd;QACD,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC5B;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/E,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC"}
@@ -3,8 +3,7 @@ export declare class PurchasedContactsDbService {
3
3
  TABLE_NAME: string;
4
4
  TABLE_KEY: string;
5
5
  constructor(tableName: string, purchasedContactsKey: string);
6
- getPurchasedContact: (id: string) => Promise<PurchasedContact>;
7
- batchGetPurchasedContacts: (ids: string[]) => Promise<PurchasedContact[]>;
6
+ getPurchasedContact: (id: string) => Promise<Record<string, any>>;
8
7
  putPurchasedContact: (purchasedContact: PurchasedContact) => Promise<PurchasedContact>;
9
- updatePurchasedContact: (id: string, data: any) => Promise<PurchasedContact>;
8
+ updatePurchasedContact: (id: string, data: any) => Promise<Record<string, any>>;
10
9
  }
@@ -15,11 +15,6 @@ export class PurchasedContactsDbService {
15
15
  }
16
16
  return purchasedContact;
17
17
  };
18
- batchGetPurchasedContacts = async (ids) => {
19
- const keys = ids.map((id) => ({ [this.TABLE_KEY]: id }));
20
- const purchasedContacts = await DynamoDbClient.safeBatchGet(this.TABLE_NAME, keys);
21
- return purchasedContacts;
22
- };
23
18
  putPurchasedContact = async (purchasedContact) => {
24
19
  await DynamoDbClient.safePut(this.TABLE_NAME, purchasedContact);
25
20
  return purchasedContact;
@@ -1 +1 @@
1
- {"version":3,"file":"purchased-contacts-db-service.js","sourceRoot":"","sources":["../../../../src/services/db/purchased-contacts-db-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,MAAM,OAAO,0BAA0B;IAC9B,UAAU,CAAS;IACnB,SAAS,CAAS;IAEzB,YAAY,SAAiB,EAAE,oBAA4B;QACzD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,oBAAoB,CAAC;IACxC,CAAC;IAEM,mBAAmB,GAAG,KAAK,EAAE,EAAU,EAA6B,EAAE;QAC3E,MAAM,gBAAgB,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC3F,IAAI,CAAC,gBAAgB,EAAE;YACrB,MAAM,SAAS,CAAC,QAAQ,EAAE,CAAC;SAC5B;QACD,OAAO,gBAAoC,CAAC;IAC9C,CAAC,CAAA;IAEM,yBAAyB,GAAG,KAAK,EAAE,GAAa,EAA+B,EAAE;QACtF,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACzD,MAAM,iBAAiB,GAAG,MAAM,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACnF,OAAO,iBAAuC,CAAC;IACjD,CAAC,CAAA;IAEM,mBAAmB,GAAG,KAAK,EAAE,gBAAkC,EAA6B,EAAE;QACnG,MAAM,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAChE,OAAO,gBAAgB,CAAC;IAC1B,CAAC,CAAA;IAEM,sBAAsB,GAAG,KAAK,EAAE,EAAU,EAAE,IAAS,EAA6B,EAAE;QACzF,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAE5D,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;QAC/C,gBAAgB,CAAC,SAAS,GAAG,gBAAgB,CAAC;QAE9C,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAC5E,IAAI,CAAC,GAAG,EAAE;YACR,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACtE,MAAM,SAAS,CAAC,QAAQ,EAAE,CAAC;SAC5B;QACD,OAAO,gBAAgB,CAAC;IAC1B,CAAC,CAAA;CACF"}
1
+ {"version":3,"file":"purchased-contacts-db-service.js","sourceRoot":"","sources":["../../../../src/services/db/purchased-contacts-db-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,MAAM,OAAO,0BAA0B;IAC9B,UAAU,CAAS;IACnB,SAAS,CAAS;IAEzB,YAAY,SAAiB,EAAE,oBAA4B;QACzD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,oBAAoB,CAAC;IACxC,CAAC;IAEM,mBAAmB,GAAG,KAAK,EAAE,EAAU,EAAE,EAAE;QAChD,MAAM,gBAAgB,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC3F,IAAI,CAAC,gBAAgB,EAAE;YACrB,MAAM,SAAS,CAAC,QAAQ,EAAE,CAAC;SAC5B;QACD,OAAO,gBAAgB,CAAC;IAC1B,CAAC,CAAA;IAEM,mBAAmB,GAAG,KAAK,EAAE,gBAAkC,EAAE,EAAE;QACxE,MAAM,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAChE,OAAO,gBAAgB,CAAC;IAC1B,CAAC,CAAA;IAEM,sBAAsB,GAAG,KAAK,EAAE,EAAU,EAAE,IAAS,EAAE,EAAE;QAC9D,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAE5D,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;QAC/C,gBAAgB,CAAC,SAAS,GAAG,gBAAgB,CAAC;QAE9C,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAC5E,IAAI,CAAC,GAAG,EAAE;YACR,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACtE,MAAM,SAAS,CAAC,QAAQ,EAAE,CAAC;SAC5B;QACD,OAAO,gBAAgB,CAAC;IAC1B,CAAC,CAAA;CACF"}
@@ -2,7 +2,6 @@ export * from './eventbridge-integration-service.js';
2
2
  export * from './ipdata-lookup-service.js';
3
3
  export * from './generic-cache-service.js';
4
4
  export * from './currency-exchange-rate-lookup-service.js';
5
- export * from './email-verification-lookup-service.js';
6
5
  export * from './db';
7
6
  export * from './shopify';
8
7
  export * from './cache';
@@ -2,7 +2,6 @@ export * from './eventbridge-integration-service.js';
2
2
  export * from './ipdata-lookup-service.js';
3
3
  export * from './generic-cache-service.js';
4
4
  export * from './currency-exchange-rate-lookup-service.js';
5
- export * from './email-verification-lookup-service.js';
6
5
  export * from './db';
7
6
  export * from './shopify';
8
7
  export * from './cache';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,sCAAsC,CAAC;AACrD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4CAA4C,CAAC;AAC3D,cAAc,wCAAwC,CAAC;AACvD,cAAc,MAAM,CAAC;AACrB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,sCAAsC,CAAC;AACrD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4CAA4C,CAAC;AAC3D,cAAc,MAAM,CAAC;AACrB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adtrackify/at-service-common",
3
- "version": "3.3.6",
3
+ "version": "3.4.0",
4
4
  "description": "",
5
5
  "files": [
6
6
  "dist/*"
@@ -36,7 +36,7 @@
36
36
  "shopify:graphql:codegen": "graphql-codegen"
37
37
  },
38
38
  "dependencies": {
39
- "@adtrackify/at-shared-utils": "^3.1.6",
39
+ "@adtrackify/at-shared-utils": "^3.1.2",
40
40
  "@aws-sdk/util-utf8": "^3.374.0",
41
41
  "@shopify/admin-api-client": "^1.0.4",
42
42
  "@shopify/shopify-api": "^11.6.1",
@@ -61,7 +61,7 @@
61
61
  "uuid": "^9.0.0"
62
62
  },
63
63
  "devDependencies": {
64
- "@adtrackify/at-tracking-event-types": "^3.3.13",
64
+ "@adtrackify/at-tracking-event-types": "^3.3.9",
65
65
  "@aws-sdk/client-cognito-identity-provider": "^3.345.0",
66
66
  "@aws-sdk/client-dynamodb": "^3.345.0",
67
67
  "@aws-sdk/client-eventbridge": "^3.345.0",
@@ -1,16 +0,0 @@
1
- import { EmailableVerifyEmailResponse } from '@adtrackify/at-tracking-event-types';
2
- import { GenericCachedObject } from './cache/generic-cached-object';
3
- export interface EmailVerificationCache extends GenericCachedObject {
4
- email: string;
5
- emailVerificationCompressed: string;
6
- }
7
- export declare class EmailVerificationLookupService {
8
- private genericCacheService;
9
- private emailableApiClient;
10
- private TTL_IN_DAYS;
11
- constructor(cacheLambdaFunctionArn: string, emailableApiKey: string, ttlInDays?: number);
12
- private getEmailVerificationCacheKey;
13
- lookupEmailVerification: (email: string) => Promise<EmailableVerifyEmailResponse | null>;
14
- private putEmailVerificationCache;
15
- private isCacheStale;
16
- }
@@ -1,66 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EmailVerificationLookupService = void 0;
4
- const clients_1 = require("../clients");
5
- const helpers_1 = require("../helpers");
6
- const generic_cache_service_1 = require("./generic-cache-service");
7
- const luxon_1 = require("luxon");
8
- const libs_1 = require("../libs");
9
- class EmailVerificationLookupService {
10
- genericCacheService;
11
- emailableApiClient;
12
- TTL_IN_DAYS;
13
- constructor(cacheLambdaFunctionArn, emailableApiKey, ttlInDays) {
14
- this.genericCacheService = new generic_cache_service_1.GenericCacheService(cacheLambdaFunctionArn);
15
- this.emailableApiClient = new clients_1.EmailableClient(emailableApiKey);
16
- this.TTL_IN_DAYS = ttlInDays || 120;
17
- }
18
- getEmailVerificationCacheKey = (email) => `email-verification:${email}`;
19
- lookupEmailVerification = async (email) => {
20
- try {
21
- const cacheKey = this.getEmailVerificationCacheKey(email);
22
- const record = await this.genericCacheService.getCachedData(cacheKey);
23
- if (record && !this.isCacheStale(record)) {
24
- helpers_1.Logger.debug('Emailable lookup cache record found in redis cache', { email, record, expiresAt: record.expiresAt, currentEpoch: luxon_1.DateTime.utc().toSeconds() });
25
- return (0, libs_1.decompressJSON)(record.emailVerificationCompressed);
26
- }
27
- const response = await this.emailableApiClient.verifyEmail(email);
28
- if (response.status !== 200 || !response?.data) {
29
- helpers_1.Logger.error('Failed to get email verification response from api', { response });
30
- return null;
31
- }
32
- const emailVerificationResponse = response.data;
33
- await this.putEmailVerificationCache(email, emailVerificationResponse);
34
- helpers_1.Logger.debug('Email verification cache record put in redis cache', { email, emailVerificationResponse, currentEpoch: luxon_1.DateTime.utc().toSeconds() });
35
- return emailVerificationResponse;
36
- }
37
- catch (error) {
38
- helpers_1.Logger.error('Failed to lookup email verification', { error, email });
39
- return null;
40
- }
41
- };
42
- putEmailVerificationCache = async (email, emailVerificationResponse) => {
43
- const cacheKey = this.getEmailVerificationCacheKey(email);
44
- const emailVerificationCompressed = (0, libs_1.compressJSON)(emailVerificationResponse);
45
- if (!emailVerificationCompressed) {
46
- helpers_1.Logger.error('Failed to compress email verification response', { emailVerificationResponse });
47
- return;
48
- }
49
- const emailVerificationCache = {
50
- email,
51
- emailVerificationCompressed,
52
- cachedAt: (0, libs_1.getCurrentTimestamp)(),
53
- cachedAtEpoch: luxon_1.DateTime.utc().toSeconds(),
54
- expiresAt: luxon_1.DateTime.utc().plus({ days: this.TTL_IN_DAYS }).toSeconds(),
55
- };
56
- await this.genericCacheService.putCachedData(cacheKey, emailVerificationCache);
57
- };
58
- isCacheStale = (record) => {
59
- if (record?.expiresAt && record.expiresAt < luxon_1.DateTime.utc().toSeconds()) {
60
- return true;
61
- }
62
- return false;
63
- };
64
- }
65
- exports.EmailVerificationLookupService = EmailVerificationLookupService;
66
- //# sourceMappingURL=email-verification-lookup-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"email-verification-lookup-service.js","sourceRoot":"","sources":["../../../src/services/email-verification-lookup-service.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- import { EmailableVerifyEmailResponse } from '@adtrackify/at-tracking-event-types';
2
- import { GenericCachedObject } from './cache/generic-cached-object';
3
- export interface EmailVerificationCache extends GenericCachedObject {
4
- email: string;
5
- emailVerificationCompressed: string;
6
- }
7
- export declare class EmailVerificationLookupService {
8
- private genericCacheService;
9
- private emailableApiClient;
10
- private TTL_IN_DAYS;
11
- constructor(cacheLambdaFunctionArn: string, emailableApiKey: string, ttlInDays?: number);
12
- private getEmailVerificationCacheKey;
13
- lookupEmailVerification: (email: string) => Promise<EmailableVerifyEmailResponse | null>;
14
- private putEmailVerificationCache;
15
- private isCacheStale;
16
- }
@@ -1,62 +0,0 @@
1
- import { EmailableClient } from '../clients';
2
- import { Logger } from '../helpers';
3
- import { GenericCacheService } from './generic-cache-service';
4
- import { DateTime } from 'luxon';
5
- import { compressJSON, decompressJSON, getCurrentTimestamp } from '../libs';
6
- export class EmailVerificationLookupService {
7
- genericCacheService;
8
- emailableApiClient;
9
- TTL_IN_DAYS;
10
- constructor(cacheLambdaFunctionArn, emailableApiKey, ttlInDays) {
11
- this.genericCacheService = new GenericCacheService(cacheLambdaFunctionArn);
12
- this.emailableApiClient = new EmailableClient(emailableApiKey);
13
- this.TTL_IN_DAYS = ttlInDays || 120;
14
- }
15
- getEmailVerificationCacheKey = (email) => `email-verification:${email}`;
16
- lookupEmailVerification = async (email) => {
17
- try {
18
- const cacheKey = this.getEmailVerificationCacheKey(email);
19
- const record = await this.genericCacheService.getCachedData(cacheKey);
20
- if (record && !this.isCacheStale(record)) {
21
- Logger.debug('Emailable lookup cache record found in redis cache', { email, record, expiresAt: record.expiresAt, currentEpoch: DateTime.utc().toSeconds() });
22
- return decompressJSON(record.emailVerificationCompressed);
23
- }
24
- const response = await this.emailableApiClient.verifyEmail(email);
25
- if (response.status !== 200 || !response?.data) {
26
- Logger.error('Failed to get email verification response from api', { response });
27
- return null;
28
- }
29
- const emailVerificationResponse = response.data;
30
- await this.putEmailVerificationCache(email, emailVerificationResponse);
31
- Logger.debug('Email verification cache record put in redis cache', { email, emailVerificationResponse, currentEpoch: DateTime.utc().toSeconds() });
32
- return emailVerificationResponse;
33
- }
34
- catch (error) {
35
- Logger.error('Failed to lookup email verification', { error, email });
36
- return null;
37
- }
38
- };
39
- putEmailVerificationCache = async (email, emailVerificationResponse) => {
40
- const cacheKey = this.getEmailVerificationCacheKey(email);
41
- const emailVerificationCompressed = compressJSON(emailVerificationResponse);
42
- if (!emailVerificationCompressed) {
43
- Logger.error('Failed to compress email verification response', { emailVerificationResponse });
44
- return;
45
- }
46
- const emailVerificationCache = {
47
- email,
48
- emailVerificationCompressed,
49
- cachedAt: getCurrentTimestamp(),
50
- cachedAtEpoch: DateTime.utc().toSeconds(),
51
- expiresAt: DateTime.utc().plus({ days: this.TTL_IN_DAYS }).toSeconds(),
52
- };
53
- await this.genericCacheService.putCachedData(cacheKey, emailVerificationCache);
54
- };
55
- isCacheStale = (record) => {
56
- if (record?.expiresAt && record.expiresAt < DateTime.utc().toSeconds()) {
57
- return true;
58
- }
59
- return false;
60
- };
61
- }
62
- //# sourceMappingURL=email-verification-lookup-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"email-verification-lookup-service.js","sourceRoot":"","sources":["../../../src/services/email-verification-lookup-service.ts"],"names":[],"mappings":"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"}