@adtrackify/at-service-common 3.0.90 → 3.0.91

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.
@@ -1,3 +1,4 @@
1
- import { EventIdentity } from '@adtrackify/at-tracking-event-types';
1
+ import { AdClickInfo, EventIdentity } from '@adtrackify/at-tracking-event-types';
2
2
  import { IdentityCache } from '../services';
3
3
  export declare const isIdentityCacheStale: (identityCache: IdentityCache, incomingIdentity: EventIdentity) => boolean;
4
+ export declare const isClickInfosStale: (cachedClick: AdClickInfo, incomingClick: AdClickInfo) => boolean;
@@ -1,62 +1,96 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isIdentityCacheStale = void 0;
3
+ exports.isClickInfosStale = exports.isIdentityCacheStale = void 0;
4
4
  const at_shared_utils_1 = require("@adtrackify/at-shared-utils");
5
5
  const logging_helper_1 = require("./logging-helper");
6
6
  const isIdentityCacheStale = (identityCache, incomingIdentity) => {
7
7
  try {
8
8
  const cachedTraits = identityCache.response?.traits ?? {};
9
9
  const incomingTraits = incomingIdentity?.traits ?? {};
10
+ const identityCacheStaleTracker = {
11
+ cachedTraits: cachedTraits,
12
+ incomingTraits: incomingTraits,
13
+ isUserIdsStale: false,
14
+ isIdsStale: false,
15
+ isEmailsStale: false,
16
+ isPhonesStale: false,
17
+ isShopifyYIdsStale: false,
18
+ isGendersStale: false,
19
+ isDobsStale: false,
20
+ isAddressesStale: false,
21
+ isClickInfosStale: false,
22
+ isIpAddressStale: false,
23
+ isUserAgentStale: false,
24
+ isCacheStale: false
25
+ };
10
26
  const isNewUserIds = (0, at_shared_utils_1.hasNewTrait)(cachedTraits?.userIds ?? [], incomingTraits?.userIds ?? []);
11
27
  if (isNewUserIds) {
12
28
  logging_helper_1.Logger.debug('identity cache miss - userIds changed', { cachedTraits, incomingTraits });
13
- return true;
29
+ identityCacheStaleTracker.isUserIdsStale = true;
30
+ identityCacheStaleTracker.isCacheStale = true;
14
31
  }
15
32
  const isNewIds = (0, at_shared_utils_1.hasNewTrait)(cachedTraits?.ids ?? [], incomingTraits?.ids ?? []);
16
33
  if (isNewIds) {
17
34
  logging_helper_1.Logger.debug('identity cache miss - ids changed', { cachedTraits, incomingTraits });
18
- return true;
35
+ identityCacheStaleTracker.isIdsStale = true;
36
+ identityCacheStaleTracker.isCacheStale = true;
19
37
  }
20
38
  const isNewEmails = (0, at_shared_utils_1.hasNewTrait)(cachedTraits?.emails ?? [], incomingTraits?.emails ?? []);
21
39
  if (isNewEmails) {
22
40
  logging_helper_1.Logger.debug('identity cache miss - emails changed', { cachedTraits, incomingTraits });
23
- return true;
41
+ identityCacheStaleTracker.isEmailsStale = true;
42
+ identityCacheStaleTracker.isCacheStale = true;
24
43
  }
25
44
  const isNewPhones = (0, at_shared_utils_1.hasNewTrait)(cachedTraits?.phones ?? [], incomingTraits?.phones ?? []);
26
45
  if (isNewPhones) {
27
46
  logging_helper_1.Logger.debug('identity cache miss - phones changed', { cachedTraits, incomingTraits });
28
- return true;
47
+ identityCacheStaleTracker.isPhonesStale = true;
48
+ identityCacheStaleTracker.isCacheStale = true;
29
49
  }
30
50
  const isNewShopifyYIds = (0, at_shared_utils_1.hasNewTrait)(cachedTraits?.shopifyYIds ?? [], incomingTraits?.shopifyYIds ?? []);
31
51
  if (isNewShopifyYIds) {
32
52
  logging_helper_1.Logger.debug('identity cache miss - shopify Y ids changed', { cachedTraits, incomingTraits });
33
- return true;
53
+ identityCacheStaleTracker.isShopifyYIdsStale = true;
54
+ identityCacheStaleTracker.isCacheStale = true;
34
55
  }
35
56
  const isNewGenders = (0, at_shared_utils_1.hasNewTrait)(cachedTraits?.genders ?? [], incomingTraits?.genders ?? []);
36
57
  if (isNewGenders) {
37
58
  logging_helper_1.Logger.debug('identity cache miss - genders changed', { cachedTraits, incomingTraits });
38
- return true;
59
+ identityCacheStaleTracker.isGendersStale = true;
60
+ identityCacheStaleTracker.isCacheStale = true;
39
61
  }
40
62
  const isNewDobs = (0, at_shared_utils_1.hasNewTrait)(cachedTraits?.dobs ?? [], incomingTraits?.dobs ?? []);
41
63
  if (isNewDobs) {
42
64
  logging_helper_1.Logger.debug('identity cache miss - dobs changed', { cachedTraits, incomingTraits });
43
- return true;
65
+ identityCacheStaleTracker.isDobsStale = true;
66
+ identityCacheStaleTracker.isCacheStale = true;
44
67
  }
45
68
  const isNewAddress = (0, at_shared_utils_1.hasNewAddress)(cachedTraits?.addresses ?? [], incomingTraits?.addresses ?? []);
46
69
  if (isNewAddress) {
47
70
  logging_helper_1.Logger.debug('identity cache miss - address changed', { cachedTraits, incomingTraits });
48
- return true;
71
+ identityCacheStaleTracker.isAddressesStale = true;
72
+ identityCacheStaleTracker.isCacheStale = true;
49
73
  }
50
- const isNewClick = (0, at_shared_utils_1.hasNewIncomingClickInfo)(cachedTraits?.click ?? {}, incomingTraits?.click ?? {});
74
+ const isNewClick = (0, exports.isClickInfosStale)(cachedTraits?.click ?? {}, incomingTraits?.click ?? {});
51
75
  if (isNewClick) {
52
76
  logging_helper_1.Logger.debug('identity cache miss - clickInfos changed', { cachedTraits, incomingTraits });
53
- return true;
77
+ identityCacheStaleTracker.isClickInfosStale = true;
78
+ identityCacheStaleTracker.isCacheStale = true;
54
79
  }
55
- if ((incomingTraits?.ipAddress && cachedTraits?.ipAddress !== incomingTraits?.ipAddress) || (incomingTraits?.userAgent && cachedTraits?.userAgent !== incomingTraits?.userAgent)) {
80
+ if (incomingTraits?.ipAddress && cachedTraits?.ipAddress !== incomingTraits?.ipAddress) {
56
81
  logging_helper_1.Logger.debug('identity cache miss - ip/userAgent changed', { cachedTraits, incomingTraits });
57
- return true;
82
+ identityCacheStaleTracker.isIpAddressStale = true;
83
+ identityCacheStaleTracker.isCacheStale = true;
84
+ }
85
+ if (incomingTraits?.userAgent && cachedTraits?.userAgent !== incomingTraits?.userAgent) {
86
+ logging_helper_1.Logger.debug('identity cache miss - userAgent changed', { cachedTraits, incomingTraits });
87
+ identityCacheStaleTracker.isUserAgentStale = true;
88
+ identityCacheStaleTracker.isCacheStale = true;
89
+ }
90
+ if (identityCacheStaleTracker.isCacheStale) {
91
+ logging_helper_1.Logger.debug('identity cache miss - cache stale', { identityCacheStaleTracker });
58
92
  }
59
- return false;
93
+ return identityCacheStaleTracker.isCacheStale;
60
94
  }
61
95
  catch (err) {
62
96
  logging_helper_1.Logger.error('Error while checking if identity cache is stale', { err });
@@ -64,4 +98,54 @@ const isIdentityCacheStale = (identityCache, incomingIdentity) => {
64
98
  }
65
99
  };
66
100
  exports.isIdentityCacheStale = isIdentityCacheStale;
101
+ const isClickInfosStale = (cachedClick, incomingClick) => {
102
+ const cleanedCachedClick = (0, at_shared_utils_1.removeEmptyFields)(cachedClick);
103
+ const cleanedIncomingClick = (0, at_shared_utils_1.removeEmptyFields)(incomingClick);
104
+ const incomingKeys = Object.keys(cleanedIncomingClick);
105
+ const clickInfoStaleTracker = {
106
+ cleanedCachedClick,
107
+ cleanedIncomingClick,
108
+ isClickInfosStale: false,
109
+ staleKeys: []
110
+ };
111
+ incomingKeys.forEach(key => {
112
+ if (key === 'googleClientInfos' || key.includes('CollectedAt')) {
113
+ return true;
114
+ }
115
+ else if (key === 'fbc') {
116
+ const cachedClickValue = cleanedCachedClick?.[key];
117
+ const incomingClickValue = cleanedIncomingClick?.[key];
118
+ if (incomingClickValue && !cachedClickValue) {
119
+ clickInfoStaleTracker.isClickInfosStale = true;
120
+ clickInfoStaleTracker.staleKeys.push(key);
121
+ }
122
+ else if (incomingClickValue && cachedClickValue && incomingClickValue !== cachedClickValue) {
123
+ const incomingFbcFbclid = incomingClickValue?.split('.')?.[3];
124
+ const cachedFbcFbclid = cachedClickValue?.split('.')?.[3];
125
+ if (incomingFbcFbclid !== cachedFbcFbclid) {
126
+ clickInfoStaleTracker.isClickInfosStale = true;
127
+ clickInfoStaleTracker.staleKeys.push(key);
128
+ }
129
+ if (!incomingFbcFbclid || !cachedFbcFbclid) {
130
+ clickInfoStaleTracker.isClickInfosStale = true;
131
+ clickInfoStaleTracker.staleKeys.push(key);
132
+ }
133
+ }
134
+ }
135
+ else {
136
+ const cachedClickValue = cleanedCachedClick?.[key];
137
+ const incomingClickValue = cleanedIncomingClick?.[key];
138
+ if ((incomingClickValue && !cachedClickValue)
139
+ || incomingClickValue !== cachedClickValue) {
140
+ clickInfoStaleTracker.isClickInfosStale = true;
141
+ clickInfoStaleTracker.staleKeys.push(key);
142
+ }
143
+ }
144
+ });
145
+ if (clickInfoStaleTracker.isClickInfosStale) {
146
+ logging_helper_1.Logger.debug('identity cache miss - clickInfos changed', { clickInfoStaleTracker });
147
+ }
148
+ return clickInfoStaleTracker.isClickInfosStale;
149
+ };
150
+ exports.isClickInfosStale = isClickInfosStale;
67
151
  //# sourceMappingURL=identity-cache-helper.js.map
@@ -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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"}
@@ -6,7 +6,6 @@ const http_error_js_1 = require("../libs/http-error.js");
6
6
  const validateInput = (schema, input) => {
7
7
  const { error, value } = schema.validate(input);
8
8
  if (error) {
9
- logging_helper_js_1.Logger.info('', { error });
10
9
  const httperr = http_error_js_1.HttpError.badRequest('Bad Request', {
11
10
  errors: error.details.map((detail) => ({
12
11
  message: detail?.message,
@@ -14,7 +13,7 @@ const validateInput = (schema, input) => {
14
13
  path: detail?.path,
15
14
  })),
16
15
  });
17
- logging_helper_js_1.Logger.error('validation failure', { httperr });
16
+ logging_helper_js_1.Logger.error('validation failure', { error, httperr });
18
17
  throw httperr;
19
18
  }
20
19
  return value;
@@ -1 +1 @@
1
- {"version":3,"file":"input-validation-helper.js","sourceRoot":"","sources":["../../../src/helpers/input-validation-helper.ts"],"names":[],"mappings":";;;AACA,2DAA6C;AAC7C,yDAAkD;AAE3C,MAAM,aAAa,GAAG,CAAC,MAA6B,EAAE,KAAU,EAAE,EAAE;IACzE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,KAAK,EAAE;QACT,0BAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAE3B,MAAM,OAAO,GAAG,yBAAS,CAAC,UAAU,CAAC,aAAa,EAAE;YAClD,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBACrC,OAAO,EAAE,MAAM,EAAE,OAAO;gBACxB,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;gBACzB,IAAI,EAAE,MAAM,EAAE,IAAI;aACnB,CAAC,CAAC;SACJ,CAAC,CAAC;QAEH,0BAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,OAAO,CAAC;KACf;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAjBW,QAAA,aAAa,iBAiBxB;AAEW,QAAA,yBAAyB,GAAG,qBAAa,CAAC"}
1
+ {"version":3,"file":"input-validation-helper.js","sourceRoot":"","sources":["../../../src/helpers/input-validation-helper.ts"],"names":[],"mappings":";;;AACA,2DAA6C;AAC7C,yDAAkD;AAE3C,MAAM,aAAa,GAAG,CAAC,MAA6B,EAAE,KAAU,EAAE,EAAE;IACzE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,KAAK,EAAE;QAGT,MAAM,OAAO,GAAG,yBAAS,CAAC,UAAU,CAAC,aAAa,EAAE;YAClD,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBACrC,OAAO,EAAE,MAAM,EAAE,OAAO;gBACxB,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;gBACzB,IAAI,EAAE,MAAM,EAAE,IAAI;aACnB,CAAC,CAAC;SACJ,CAAC,CAAC;QAEH,0BAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACvD,MAAM,OAAO,CAAC;KACf;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAjBW,QAAA,aAAa,iBAiBxB;AAEW,QAAA,yBAAyB,GAAG,qBAAa,CAAC"}
@@ -1,3 +1,4 @@
1
- import { EventIdentity } from '@adtrackify/at-tracking-event-types';
1
+ import { AdClickInfo, EventIdentity } from '@adtrackify/at-tracking-event-types';
2
2
  import { IdentityCache } from '../services';
3
3
  export declare const isIdentityCacheStale: (identityCache: IdentityCache, incomingIdentity: EventIdentity) => boolean;
4
+ export declare const isClickInfosStale: (cachedClick: AdClickInfo, incomingClick: AdClickInfo) => boolean;
@@ -1,63 +1,146 @@
1
- import { hasNewTrait, hasNewAddress, hasNewIncomingClickInfo } 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 {
5
5
  const cachedTraits = identityCache.response?.traits ?? {};
6
6
  const incomingTraits = incomingIdentity?.traits ?? {};
7
+ const identityCacheStaleTracker = {
8
+ cachedTraits: cachedTraits,
9
+ incomingTraits: incomingTraits,
10
+ isUserIdsStale: false,
11
+ isIdsStale: false,
12
+ isEmailsStale: false,
13
+ isPhonesStale: false,
14
+ isShopifyYIdsStale: false,
15
+ isGendersStale: false,
16
+ isDobsStale: false,
17
+ isAddressesStale: false,
18
+ isClickInfosStale: false,
19
+ isIpAddressStale: false,
20
+ isUserAgentStale: false,
21
+ isCacheStale: false
22
+ };
7
23
  const isNewUserIds = hasNewTrait(cachedTraits?.userIds ?? [], incomingTraits?.userIds ?? []);
8
24
  if (isNewUserIds) {
9
25
  Logger.debug('identity cache miss - userIds changed', { cachedTraits, incomingTraits });
10
- return true;
26
+ identityCacheStaleTracker.isUserIdsStale = true;
27
+ identityCacheStaleTracker.isCacheStale = true;
11
28
  }
12
29
  const isNewIds = hasNewTrait(cachedTraits?.ids ?? [], incomingTraits?.ids ?? []);
13
30
  if (isNewIds) {
14
31
  Logger.debug('identity cache miss - ids changed', { cachedTraits, incomingTraits });
15
- return true;
32
+ identityCacheStaleTracker.isIdsStale = true;
33
+ identityCacheStaleTracker.isCacheStale = true;
16
34
  }
17
35
  const isNewEmails = hasNewTrait(cachedTraits?.emails ?? [], incomingTraits?.emails ?? []);
18
36
  if (isNewEmails) {
19
37
  Logger.debug('identity cache miss - emails changed', { cachedTraits, incomingTraits });
20
- return true;
38
+ identityCacheStaleTracker.isEmailsStale = true;
39
+ identityCacheStaleTracker.isCacheStale = true;
21
40
  }
22
41
  const isNewPhones = hasNewTrait(cachedTraits?.phones ?? [], incomingTraits?.phones ?? []);
23
42
  if (isNewPhones) {
24
43
  Logger.debug('identity cache miss - phones changed', { cachedTraits, incomingTraits });
25
- return true;
44
+ identityCacheStaleTracker.isPhonesStale = true;
45
+ identityCacheStaleTracker.isCacheStale = true;
26
46
  }
27
47
  const isNewShopifyYIds = hasNewTrait(cachedTraits?.shopifyYIds ?? [], incomingTraits?.shopifyYIds ?? []);
28
48
  if (isNewShopifyYIds) {
29
49
  Logger.debug('identity cache miss - shopify Y ids changed', { cachedTraits, incomingTraits });
30
- return true;
50
+ identityCacheStaleTracker.isShopifyYIdsStale = true;
51
+ identityCacheStaleTracker.isCacheStale = true;
31
52
  }
32
53
  const isNewGenders = hasNewTrait(cachedTraits?.genders ?? [], incomingTraits?.genders ?? []);
33
54
  if (isNewGenders) {
34
55
  Logger.debug('identity cache miss - genders changed', { cachedTraits, incomingTraits });
35
- return true;
56
+ identityCacheStaleTracker.isGendersStale = true;
57
+ identityCacheStaleTracker.isCacheStale = true;
36
58
  }
37
59
  const isNewDobs = hasNewTrait(cachedTraits?.dobs ?? [], incomingTraits?.dobs ?? []);
38
60
  if (isNewDobs) {
39
61
  Logger.debug('identity cache miss - dobs changed', { cachedTraits, incomingTraits });
40
- return true;
62
+ identityCacheStaleTracker.isDobsStale = true;
63
+ identityCacheStaleTracker.isCacheStale = true;
41
64
  }
42
65
  const isNewAddress = hasNewAddress(cachedTraits?.addresses ?? [], incomingTraits?.addresses ?? []);
43
66
  if (isNewAddress) {
44
67
  Logger.debug('identity cache miss - address changed', { cachedTraits, incomingTraits });
45
- return true;
68
+ identityCacheStaleTracker.isAddressesStale = true;
69
+ identityCacheStaleTracker.isCacheStale = true;
46
70
  }
47
- const isNewClick = hasNewIncomingClickInfo(cachedTraits?.click ?? {}, incomingTraits?.click ?? {});
71
+ const isNewClick = isClickInfosStale(cachedTraits?.click ?? {}, incomingTraits?.click ?? {});
48
72
  if (isNewClick) {
49
73
  Logger.debug('identity cache miss - clickInfos changed', { cachedTraits, incomingTraits });
50
- return true;
74
+ identityCacheStaleTracker.isClickInfosStale = true;
75
+ identityCacheStaleTracker.isCacheStale = true;
51
76
  }
52
- if ((incomingTraits?.ipAddress && cachedTraits?.ipAddress !== incomingTraits?.ipAddress) || (incomingTraits?.userAgent && cachedTraits?.userAgent !== incomingTraits?.userAgent)) {
77
+ if (incomingTraits?.ipAddress && cachedTraits?.ipAddress !== incomingTraits?.ipAddress) {
53
78
  Logger.debug('identity cache miss - ip/userAgent changed', { cachedTraits, incomingTraits });
54
- return true;
79
+ identityCacheStaleTracker.isIpAddressStale = true;
80
+ identityCacheStaleTracker.isCacheStale = true;
81
+ }
82
+ if (incomingTraits?.userAgent && cachedTraits?.userAgent !== incomingTraits?.userAgent) {
83
+ Logger.debug('identity cache miss - userAgent changed', { cachedTraits, incomingTraits });
84
+ identityCacheStaleTracker.isUserAgentStale = true;
85
+ identityCacheStaleTracker.isCacheStale = true;
86
+ }
87
+ if (identityCacheStaleTracker.isCacheStale) {
88
+ Logger.debug('identity cache miss - cache stale', { identityCacheStaleTracker });
55
89
  }
56
- return false;
90
+ return identityCacheStaleTracker.isCacheStale;
57
91
  }
58
92
  catch (err) {
59
93
  Logger.error('Error while checking if identity cache is stale', { err });
60
94
  return true;
61
95
  }
62
96
  };
97
+ export const isClickInfosStale = (cachedClick, incomingClick) => {
98
+ const cleanedCachedClick = removeEmptyFields(cachedClick);
99
+ const cleanedIncomingClick = removeEmptyFields(incomingClick);
100
+ const incomingKeys = Object.keys(cleanedIncomingClick);
101
+ const clickInfoStaleTracker = {
102
+ cleanedCachedClick,
103
+ cleanedIncomingClick,
104
+ isClickInfosStale: false,
105
+ staleKeys: []
106
+ };
107
+ incomingKeys.forEach(key => {
108
+ if (key === 'googleClientInfos' || key.includes('CollectedAt')) {
109
+ return true;
110
+ }
111
+ else if (key === 'fbc') {
112
+ const cachedClickValue = cleanedCachedClick?.[key];
113
+ const incomingClickValue = cleanedIncomingClick?.[key];
114
+ if (incomingClickValue && !cachedClickValue) {
115
+ clickInfoStaleTracker.isClickInfosStale = true;
116
+ clickInfoStaleTracker.staleKeys.push(key);
117
+ }
118
+ else if (incomingClickValue && cachedClickValue && incomingClickValue !== cachedClickValue) {
119
+ const incomingFbcFbclid = incomingClickValue?.split('.')?.[3];
120
+ const cachedFbcFbclid = cachedClickValue?.split('.')?.[3];
121
+ if (incomingFbcFbclid !== cachedFbcFbclid) {
122
+ clickInfoStaleTracker.isClickInfosStale = true;
123
+ clickInfoStaleTracker.staleKeys.push(key);
124
+ }
125
+ if (!incomingFbcFbclid || !cachedFbcFbclid) {
126
+ clickInfoStaleTracker.isClickInfosStale = true;
127
+ clickInfoStaleTracker.staleKeys.push(key);
128
+ }
129
+ }
130
+ }
131
+ else {
132
+ const cachedClickValue = cleanedCachedClick?.[key];
133
+ const incomingClickValue = cleanedIncomingClick?.[key];
134
+ if ((incomingClickValue && !cachedClickValue)
135
+ || incomingClickValue !== cachedClickValue) {
136
+ clickInfoStaleTracker.isClickInfosStale = true;
137
+ clickInfoStaleTracker.staleKeys.push(key);
138
+ }
139
+ }
140
+ });
141
+ if (clickInfoStaleTracker.isClickInfosStale) {
142
+ Logger.debug('identity cache miss - clickInfos changed', { clickInfoStaleTracker });
143
+ }
144
+ return clickInfoStaleTracker.isClickInfosStale;
145
+ };
63
146
  //# sourceMappingURL=identity-cache-helper.js.map
@@ -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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"}
@@ -3,7 +3,6 @@ import { HttpError } from '../libs/http-error.js';
3
3
  export const validateInput = (schema, input) => {
4
4
  const { error, value } = schema.validate(input);
5
5
  if (error) {
6
- Logger.info('', { error });
7
6
  const httperr = HttpError.badRequest('Bad Request', {
8
7
  errors: error.details.map((detail) => ({
9
8
  message: detail?.message,
@@ -11,7 +10,7 @@ export const validateInput = (schema, input) => {
11
10
  path: detail?.path,
12
11
  })),
13
12
  });
14
- Logger.error('validation failure', { httperr });
13
+ Logger.error('validation failure', { error, httperr });
15
14
  throw httperr;
16
15
  }
17
16
  return value;
@@ -1 +1 @@
1
- {"version":3,"file":"input-validation-helper.js","sourceRoot":"","sources":["../../../src/helpers/input-validation-helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAA6B,EAAE,KAAU,EAAE,EAAE;IACzE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,KAAK,EAAE;QACT,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAE3B,MAAM,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,aAAa,EAAE;YAClD,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBACrC,OAAO,EAAE,MAAM,EAAE,OAAO;gBACxB,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;gBACzB,IAAI,EAAE,MAAM,EAAE,IAAI;aACnB,CAAC,CAAC;SACJ,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,OAAO,CAAC;KACf;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,aAAa,CAAC"}
1
+ {"version":3,"file":"input-validation-helper.js","sourceRoot":"","sources":["../../../src/helpers/input-validation-helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAA6B,EAAE,KAAU,EAAE,EAAE;IACzE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,KAAK,EAAE;QAGT,MAAM,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,aAAa,EAAE;YAClD,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBACrC,OAAO,EAAE,MAAM,EAAE,OAAO;gBACxB,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;gBACzB,IAAI,EAAE,MAAM,EAAE,IAAI;aACnB,CAAC,CAAC;SACJ,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACvD,MAAM,OAAO,CAAC;KACf;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,aAAa,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adtrackify/at-service-common",
3
- "version": "3.0.90",
3
+ "version": "3.0.91",
4
4
  "description": "",
5
5
  "files": [
6
6
  "dist/*"
@@ -64,8 +64,8 @@
64
64
  "@aws-sdk/client-sqs": "^3.345.0",
65
65
  "@aws-sdk/lib-dynamodb": "^3.345.0",
66
66
  "@faker-js/faker": "^7.5.0",
67
- "@swc/core": "^1.3.1",
68
- "@swc/jest": "^0.2.22",
67
+ "@swc/core": "^1.7.35",
68
+ "@swc/jest": "^0.2.36",
69
69
  "@types/jest": "^28.1.8",
70
70
  "@types/lambda-log": "^3.0.0",
71
71
  "@types/luxon": "^3.0.1",
@@ -97,11 +97,11 @@
97
97
  "prettier": "^2.7.1",
98
98
  "regenerator-runtime": "^0.13.9",
99
99
  "rimraf": "^3.0.2",
100
- "swc-loader": "^0.2.3",
100
+ "swc-loader": "^0.2.6",
101
101
  "ts-jest": "^29.0.5",
102
102
  "ts-jest-resolver": "^2.0.1",
103
- "ts-loader": "^9.4.2",
104
- "ts-node": "^10.9.1",
103
+ "ts-loader": "^9.5.1",
104
+ "ts-node": "^10.9.2",
105
105
  "tslint": "^6.1.3",
106
106
  "tslint-config-prettier": "^1.18.0",
107
107
  "typescript": "4.9.5"