@adtrackify/at-service-common 3.0.96 → 3.0.98

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (247) hide show
  1. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  2. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.js +527 -527
  3. package/dist/cjs/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  4. package/dist/cjs/__tests__/libs/compress-decompress.spec.js +16 -16
  5. package/dist/cjs/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  6. package/dist/cjs/__tests__/s3-client/s3-client.spec.js +26 -26
  7. package/dist/cjs/clients/generic/cognito-client.d.ts +20 -20
  8. package/dist/cjs/clients/generic/cognito-client.js +164 -164
  9. package/dist/cjs/clients/generic/dynamodb-client.d.ts +17 -17
  10. package/dist/cjs/clients/generic/dynamodb-client.js +167 -167
  11. package/dist/cjs/clients/generic/eventbridge-client.d.ts +14 -14
  12. package/dist/cjs/clients/generic/eventbridge-client.js +49 -49
  13. package/dist/cjs/clients/generic/http-client.d.ts +88 -88
  14. package/dist/cjs/clients/generic/http-client.js +60 -60
  15. package/dist/cjs/clients/generic/index.d.ts +10 -10
  16. package/dist/cjs/clients/generic/index.js +26 -26
  17. package/dist/cjs/clients/generic/lambda-invoke-client.d.ts +10 -10
  18. package/dist/cjs/clients/generic/lambda-invoke-client.js +35 -35
  19. package/dist/cjs/clients/generic/location-client.d.ts +8 -8
  20. package/dist/cjs/clients/generic/location-client.js +31 -31
  21. package/dist/cjs/clients/generic/redis-client.d.ts +17 -17
  22. package/dist/cjs/clients/generic/redis-client.js +117 -117
  23. package/dist/cjs/clients/generic/s3-client.d.ts +16 -16
  24. package/dist/cjs/clients/generic/s3-client.js +110 -110
  25. package/dist/cjs/clients/generic/singlestore-db-client.d.ts +14 -14
  26. package/dist/cjs/clients/generic/singlestore-db-client.js +67 -67
  27. package/dist/cjs/clients/generic/sqs-client.d.ts +20 -14
  28. package/dist/cjs/clients/generic/sqs-client.js +36 -36
  29. package/dist/cjs/clients/generic/sqs-client.js.map +1 -1
  30. package/dist/cjs/clients/index.d.ts +3 -3
  31. package/dist/cjs/clients/index.js +19 -19
  32. package/dist/cjs/clients/internal-api/accounts-client.d.ts +112 -112
  33. package/dist/cjs/clients/internal-api/accounts-client.js +117 -117
  34. package/dist/cjs/clients/internal-api/cache-lambda-client.d.ts +23 -23
  35. package/dist/cjs/clients/internal-api/cache-lambda-client.js +59 -59
  36. package/dist/cjs/clients/internal-api/db-management-client.d.ts +18 -18
  37. package/dist/cjs/clients/internal-api/db-management-client.js +39 -39
  38. package/dist/cjs/clients/internal-api/destinations-client.d.ts +29 -29
  39. package/dist/cjs/clients/internal-api/destinations-client.js +54 -54
  40. package/dist/cjs/clients/internal-api/event-collector-client.d.ts +20 -20
  41. package/dist/cjs/clients/internal-api/event-collector-client.js +39 -39
  42. package/dist/cjs/clients/internal-api/identity-client.d.ts +25 -25
  43. package/dist/cjs/clients/internal-api/identity-client.js +92 -92
  44. package/dist/cjs/clients/internal-api/index.d.ts +8 -8
  45. package/dist/cjs/clients/internal-api/index.js +24 -24
  46. package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +34 -34
  47. package/dist/cjs/clients/internal-api/shopify-app-install-client.js +63 -63
  48. package/dist/cjs/clients/internal-api/users-auth-client.d.ts +31 -31
  49. package/dist/cjs/clients/internal-api/users-auth-client.js +92 -92
  50. package/dist/cjs/clients/third-party/index.d.ts +1 -1
  51. package/dist/cjs/clients/third-party/index.js +17 -17
  52. package/dist/cjs/clients/third-party/shopify-client.d.ts +198 -198
  53. package/dist/cjs/clients/third-party/shopify-client.js +150 -150
  54. package/dist/cjs/helpers/identity-cache-helper.d.ts +4 -4
  55. package/dist/cjs/helpers/identity-cache-helper.js +150 -150
  56. package/dist/cjs/helpers/index.d.ts +5 -5
  57. package/dist/cjs/helpers/index.js +21 -21
  58. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  59. package/dist/cjs/helpers/input-validation-helper.js +22 -22
  60. package/dist/cjs/helpers/logging-helper.d.ts +16 -16
  61. package/dist/cjs/helpers/logging-helper.js +84 -84
  62. package/dist/cjs/helpers/response-helper.d.ts +15 -15
  63. package/dist/cjs/helpers/response-helper.js +42 -42
  64. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  65. package/dist/cjs/helpers/shopify-helper.js +28 -28
  66. package/dist/cjs/index.d.ts +5 -5
  67. package/dist/cjs/index.js +21 -21
  68. package/dist/cjs/libs/clickId-parser.d.ts +23 -23
  69. package/dist/cjs/libs/clickId-parser.js +49 -49
  70. package/dist/cjs/libs/compression.d.ts +2 -2
  71. package/dist/cjs/libs/compression.js +33 -33
  72. package/dist/cjs/libs/crypto.d.ts +1 -1
  73. package/dist/cjs/libs/crypto.js +12 -12
  74. package/dist/cjs/libs/dates.d.ts +6 -6
  75. package/dist/cjs/libs/dates.js +31 -31
  76. package/dist/cjs/libs/http-error.d.ts +21 -21
  77. package/dist/cjs/libs/http-error.js +59 -59
  78. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  79. package/dist/cjs/libs/http-status-codes.js +62 -62
  80. package/dist/cjs/libs/index.d.ts +9 -9
  81. package/dist/cjs/libs/index.js +25 -25
  82. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  83. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  84. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  85. package/dist/cjs/libs/referrer-parser/referrer-data.js +4712 -4712
  86. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  87. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +128 -128
  88. package/dist/cjs/libs/url.d.ts +1 -1
  89. package/dist/cjs/libs/url.js +13 -13
  90. package/dist/cjs/services/db/destinations-db-service.d.ts +8 -8
  91. package/dist/cjs/services/db/destinations-db-service.js +47 -47
  92. package/dist/cjs/services/db/identity-cache-db-service.d.ts +24 -24
  93. package/dist/cjs/services/db/identity-cache-db-service.js +233 -233
  94. package/dist/cjs/services/db/index.d.ts +7 -7
  95. package/dist/cjs/services/db/index.js +23 -23
  96. package/dist/cjs/services/db/log-events-db-service.d.ts +11 -11
  97. package/dist/cjs/services/db/log-events-db-service.js +172 -172
  98. package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +9 -9
  99. package/dist/cjs/services/db/purchased-contacts-db-service.js +38 -38
  100. package/dist/cjs/services/db/shopify-app-installs-db-service.d.ts +7 -7
  101. package/dist/cjs/services/db/shopify-app-installs-db-service.js +47 -47
  102. package/dist/cjs/services/db/shopify-products-cache-db-service.d.ts +9 -9
  103. package/dist/cjs/services/db/shopify-products-cache-db-service.js +64 -64
  104. package/dist/cjs/services/db/tracking-events-db-service.d.ts +20 -20
  105. package/dist/cjs/services/db/tracking-events-db-service.js +162 -162
  106. package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
  107. package/dist/cjs/services/eventbridge-integration-service.js +28 -28
  108. package/dist/cjs/services/index.d.ts +5 -5
  109. package/dist/cjs/services/index.js +21 -21
  110. package/dist/cjs/services/ipdata-lookup-service.d.ts +17 -17
  111. package/dist/cjs/services/ipdata-lookup-service.js +71 -71
  112. package/dist/cjs/services/log-event-service.d.ts +9 -9
  113. package/dist/cjs/services/log-event-service.js +56 -56
  114. package/dist/cjs/services/metric-event-service.d.ts +9 -9
  115. package/dist/cjs/services/metric-event-service.js +49 -49
  116. package/dist/cjs/types/api-response.d.ts +6 -6
  117. package/dist/cjs/types/api-response.js +2 -2
  118. package/dist/cjs/types/index.d.ts +1 -1
  119. package/dist/cjs/types/index.js +17 -17
  120. package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
  121. package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
  122. package/dist/cjs/types/internal-events/index.d.ts +1 -1
  123. package/dist/cjs/types/internal-events/index.js +17 -17
  124. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  125. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js +525 -525
  126. package/dist/esm/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  127. package/dist/esm/__tests__/libs/compress-decompress.spec.js +14 -14
  128. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  129. package/dist/esm/__tests__/s3-client/s3-client.spec.js +24 -24
  130. package/dist/esm/clients/generic/cognito-client.d.ts +20 -20
  131. package/dist/esm/clients/generic/cognito-client.js +159 -159
  132. package/dist/esm/clients/generic/dynamodb-client.d.ts +17 -17
  133. package/dist/esm/clients/generic/dynamodb-client.js +163 -163
  134. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  135. package/dist/esm/clients/generic/eventbridge-client.js +45 -45
  136. package/dist/esm/clients/generic/http-client.d.ts +88 -88
  137. package/dist/esm/clients/generic/http-client.js +52 -52
  138. package/dist/esm/clients/generic/index.d.ts +10 -10
  139. package/dist/esm/clients/generic/index.js +10 -10
  140. package/dist/esm/clients/generic/lambda-invoke-client.d.ts +10 -10
  141. package/dist/esm/clients/generic/lambda-invoke-client.js +31 -31
  142. package/dist/esm/clients/generic/location-client.d.ts +8 -8
  143. package/dist/esm/clients/generic/location-client.js +27 -27
  144. package/dist/esm/clients/generic/redis-client.d.ts +17 -17
  145. package/dist/esm/clients/generic/redis-client.js +110 -110
  146. package/dist/esm/clients/generic/s3-client.d.ts +16 -16
  147. package/dist/esm/clients/generic/s3-client.js +106 -106
  148. package/dist/esm/clients/generic/singlestore-db-client.d.ts +14 -14
  149. package/dist/esm/clients/generic/singlestore-db-client.js +40 -40
  150. package/dist/esm/clients/generic/sqs-client.d.ts +20 -14
  151. package/dist/esm/clients/generic/sqs-client.js +32 -32
  152. package/dist/esm/clients/generic/sqs-client.js.map +1 -1
  153. package/dist/esm/clients/index.d.ts +3 -3
  154. package/dist/esm/clients/index.js +3 -3
  155. package/dist/esm/clients/internal-api/accounts-client.d.ts +112 -112
  156. package/dist/esm/clients/internal-api/accounts-client.js +113 -113
  157. package/dist/esm/clients/internal-api/cache-lambda-client.d.ts +23 -23
  158. package/dist/esm/clients/internal-api/cache-lambda-client.js +55 -55
  159. package/dist/esm/clients/internal-api/db-management-client.d.ts +18 -18
  160. package/dist/esm/clients/internal-api/db-management-client.js +32 -32
  161. package/dist/esm/clients/internal-api/destinations-client.d.ts +29 -29
  162. package/dist/esm/clients/internal-api/destinations-client.js +50 -50
  163. package/dist/esm/clients/internal-api/event-collector-client.d.ts +20 -20
  164. package/dist/esm/clients/internal-api/event-collector-client.js +32 -32
  165. package/dist/esm/clients/internal-api/identity-client.d.ts +25 -25
  166. package/dist/esm/clients/internal-api/identity-client.js +88 -88
  167. package/dist/esm/clients/internal-api/index.d.ts +8 -8
  168. package/dist/esm/clients/internal-api/index.js +8 -8
  169. package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +34 -34
  170. package/dist/esm/clients/internal-api/shopify-app-install-client.js +56 -56
  171. package/dist/esm/clients/internal-api/users-auth-client.d.ts +31 -31
  172. package/dist/esm/clients/internal-api/users-auth-client.js +88 -88
  173. package/dist/esm/clients/third-party/index.d.ts +1 -1
  174. package/dist/esm/clients/third-party/index.js +1 -1
  175. package/dist/esm/clients/third-party/shopify-client.d.ts +198 -198
  176. package/dist/esm/clients/third-party/shopify-client.js +146 -146
  177. package/dist/esm/helpers/identity-cache-helper.d.ts +4 -4
  178. package/dist/esm/helpers/identity-cache-helper.js +145 -145
  179. package/dist/esm/helpers/index.d.ts +5 -5
  180. package/dist/esm/helpers/index.js +5 -5
  181. package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
  182. package/dist/esm/helpers/input-validation-helper.js +18 -18
  183. package/dist/esm/helpers/logging-helper.d.ts +16 -16
  184. package/dist/esm/helpers/logging-helper.js +56 -56
  185. package/dist/esm/helpers/response-helper.d.ts +15 -15
  186. package/dist/esm/helpers/response-helper.js +36 -36
  187. package/dist/esm/helpers/shopify-helper.d.ts +9 -9
  188. package/dist/esm/helpers/shopify-helper.js +23 -23
  189. package/dist/esm/index.d.ts +5 -5
  190. package/dist/esm/index.js +5 -5
  191. package/dist/esm/libs/clickId-parser.d.ts +23 -23
  192. package/dist/esm/libs/clickId-parser.js +45 -45
  193. package/dist/esm/libs/compression.d.ts +2 -2
  194. package/dist/esm/libs/compression.js +25 -25
  195. package/dist/esm/libs/crypto.d.ts +1 -1
  196. package/dist/esm/libs/crypto.js +5 -5
  197. package/dist/esm/libs/dates.d.ts +6 -6
  198. package/dist/esm/libs/dates.js +22 -22
  199. package/dist/esm/libs/http-error.d.ts +21 -21
  200. package/dist/esm/libs/http-error.js +55 -55
  201. package/dist/esm/libs/http-status-codes.d.ts +58 -58
  202. package/dist/esm/libs/http-status-codes.js +59 -59
  203. package/dist/esm/libs/index.d.ts +9 -9
  204. package/dist/esm/libs/index.js +9 -9
  205. package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
  206. package/dist/esm/libs/referrer-parser/index.js +2 -2
  207. package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
  208. package/dist/esm/libs/referrer-parser/referrer-data.js +4709 -4709
  209. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  210. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +121 -121
  211. package/dist/esm/libs/url.d.ts +1 -1
  212. package/dist/esm/libs/url.js +9 -9
  213. package/dist/esm/services/db/destinations-db-service.d.ts +8 -8
  214. package/dist/esm/services/db/destinations-db-service.js +43 -43
  215. package/dist/esm/services/db/identity-cache-db-service.d.ts +24 -24
  216. package/dist/esm/services/db/identity-cache-db-service.js +229 -229
  217. package/dist/esm/services/db/index.d.ts +7 -7
  218. package/dist/esm/services/db/index.js +7 -7
  219. package/dist/esm/services/db/log-events-db-service.d.ts +11 -11
  220. package/dist/esm/services/db/log-events-db-service.js +168 -168
  221. package/dist/esm/services/db/purchased-contacts-db-service.d.ts +9 -9
  222. package/dist/esm/services/db/purchased-contacts-db-service.js +34 -34
  223. package/dist/esm/services/db/shopify-app-installs-db-service.d.ts +7 -7
  224. package/dist/esm/services/db/shopify-app-installs-db-service.js +43 -43
  225. package/dist/esm/services/db/shopify-products-cache-db-service.d.ts +9 -9
  226. package/dist/esm/services/db/shopify-products-cache-db-service.js +60 -60
  227. package/dist/esm/services/db/tracking-events-db-service.d.ts +20 -20
  228. package/dist/esm/services/db/tracking-events-db-service.js +158 -158
  229. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  230. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  231. package/dist/esm/services/index.d.ts +5 -5
  232. package/dist/esm/services/index.js +5 -5
  233. package/dist/esm/services/ipdata-lookup-service.d.ts +17 -17
  234. package/dist/esm/services/ipdata-lookup-service.js +67 -67
  235. package/dist/esm/services/log-event-service.d.ts +9 -9
  236. package/dist/esm/services/log-event-service.js +52 -52
  237. package/dist/esm/services/metric-event-service.d.ts +9 -9
  238. package/dist/esm/services/metric-event-service.js +45 -45
  239. package/dist/esm/types/api-response.d.ts +6 -6
  240. package/dist/esm/types/api-response.js +1 -1
  241. package/dist/esm/types/index.d.ts +1 -1
  242. package/dist/esm/types/index.js +1 -1
  243. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  244. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  245. package/dist/esm/types/internal-events/index.d.ts +1 -1
  246. package/dist/esm/types/internal-events/index.js +1 -1
  247. package/package.json +1 -1
@@ -1,20 +1,20 @@
1
- /// <reference types="node" />
2
- import url from 'url';
3
- export interface ReferrerDictionary {
4
- [domain: string]: {
5
- name: string;
6
- medium: string;
7
- params?: string[];
8
- };
9
- }
10
- export declare class Referrer {
11
- known: boolean;
12
- referrer: string | null;
13
- medium: string;
14
- search_parameter: string | null;
15
- search_term: string | string[] | null | undefined;
16
- referrers: any;
17
- uri?: url.UrlWithStringQuery;
18
- constructor(referrer_url?: string, current_url?: string);
19
- _lookup_referrer: (ref_host: string | null | undefined, ref_path: string | null, include_path: boolean) => any;
20
- }
1
+ /// <reference types="node" />
2
+ import url from 'url';
3
+ export interface ReferrerDictionary {
4
+ [domain: string]: {
5
+ name: string;
6
+ medium: string;
7
+ params?: string[];
8
+ };
9
+ }
10
+ export declare class Referrer {
11
+ known: boolean;
12
+ referrer: string | null;
13
+ medium: string;
14
+ search_parameter: string | null;
15
+ search_term: string | string[] | null | undefined;
16
+ referrers: any;
17
+ uri?: url.UrlWithStringQuery;
18
+ constructor(referrer_url?: string, current_url?: string);
19
+ _lookup_referrer: (ref_host: string | null | undefined, ref_path: string | null, include_path: boolean) => any;
20
+ }
@@ -1,122 +1,122 @@
1
- import url from 'url';
2
- import querystring from 'querystring';
3
- import { REFERRER_DATA } from './referrer-data.js';
4
- const REFERERS = loadReferrers(REFERRER_DATA);
5
- function loadReferrers(source) {
6
- const referrers_dict = {};
7
- for (const medium in source) {
8
- const conf_list = source[medium];
9
- for (const referrer_name in conf_list) {
10
- const config = conf_list[referrer_name];
11
- let params = null;
12
- if (config.parameters) {
13
- params = config.parameters.map(function (p) { return p.toLowerCase(); });
14
- }
15
- config.domains.forEach(function (domain) {
16
- referrers_dict[domain] = {
17
- 'name': referrer_name,
18
- 'medium': medium
19
- };
20
- if (params) {
21
- referrers_dict[domain]['params'] = params;
22
- }
23
- });
24
- }
25
- }
26
- return referrers_dict;
27
- }
28
- export class Referrer {
29
- known;
30
- referrer;
31
- medium;
32
- search_parameter;
33
- search_term;
34
- referrers;
35
- uri;
36
- constructor(referrer_url, current_url) {
37
- this.known = false;
38
- this.referrer = null;
39
- this.medium = 'unknown';
40
- this.search_parameter = null;
41
- this.search_term = null;
42
- if (!referrer_url) {
43
- this.medium = 'none';
44
- this.referrer = 'direct';
45
- return;
46
- }
47
- const ref_uri = url.parse(referrer_url);
48
- const ref_host = ref_uri.hostname;
49
- this.known = Boolean(~['http:', 'https:'].indexOf(ref_uri.protocol));
50
- this.uri = ref_uri;
51
- if (!this.known)
52
- return;
53
- if (current_url) {
54
- const curr_uri = url.parse(current_url);
55
- const curr_host = curr_uri.hostname;
56
- if (curr_host == ref_host) {
57
- this.medium = 'internal';
58
- this.referrer = 'internal';
59
- return;
60
- }
61
- }
62
- let referrer = this._lookup_referrer(ref_host, ref_uri.pathname, true);
63
- if (!referrer) {
64
- referrer = this._lookup_referrer(ref_host, ref_uri.pathname, false);
65
- if (!referrer) {
66
- this.medium = 'referral';
67
- this.referrer = ref_host;
68
- return;
69
- }
70
- }
71
- this.referrer = referrer['name'];
72
- this.medium = referrer['medium'];
73
- if (referrer['medium'] == 'search') {
74
- if (!referrer['params'])
75
- return;
76
- const pqs = querystring.parse(ref_uri?.query || '');
77
- for (const param in pqs) {
78
- const val = pqs[param];
79
- if (referrer['params'].indexOf(param.toLowerCase()) !== -1) {
80
- this.search_parameter = param;
81
- this.search_term = val;
82
- }
83
- }
84
- }
85
- }
86
- _lookup_referrer = (ref_host, ref_path, include_path) => {
87
- let referrer = null;
88
- if (include_path) {
89
- const hostpath = (ref_host ?? '') + (ref_path ?? '');
90
- referrer = REFERERS[hostpath];
91
- }
92
- else {
93
- referrer = REFERERS[ref_host ?? ''];
94
- }
95
- if (!referrer) {
96
- if (include_path) {
97
- const path_parts = ref_path?.split('/');
98
- if (path_parts && path_parts.length > 1) {
99
- try {
100
- referrer = REFERERS[ref_host + '/' + path_parts[1]];
101
- }
102
- catch (e) { }
103
- }
104
- }
105
- }
106
- if (!referrer) {
107
- try {
108
- const idx = (ref_host ?? '').indexOf('.');
109
- if (idx === -1)
110
- return null;
111
- const slicedHost = ref_host?.slice(idx + 1);
112
- return this._lookup_referrer(slicedHost, ref_path, include_path);
113
- }
114
- catch (e) {
115
- return null;
116
- }
117
- }
118
- else
119
- return referrer;
120
- };
121
- }
1
+ import url from 'url';
2
+ import querystring from 'querystring';
3
+ import { REFERRER_DATA } from './referrer-data.js';
4
+ const REFERERS = loadReferrers(REFERRER_DATA);
5
+ function loadReferrers(source) {
6
+ const referrers_dict = {};
7
+ for (const medium in source) {
8
+ const conf_list = source[medium];
9
+ for (const referrer_name in conf_list) {
10
+ const config = conf_list[referrer_name];
11
+ let params = null;
12
+ if (config.parameters) {
13
+ params = config.parameters.map(function (p) { return p.toLowerCase(); });
14
+ }
15
+ config.domains.forEach(function (domain) {
16
+ referrers_dict[domain] = {
17
+ 'name': referrer_name,
18
+ 'medium': medium
19
+ };
20
+ if (params) {
21
+ referrers_dict[domain]['params'] = params;
22
+ }
23
+ });
24
+ }
25
+ }
26
+ return referrers_dict;
27
+ }
28
+ export class Referrer {
29
+ known;
30
+ referrer;
31
+ medium;
32
+ search_parameter;
33
+ search_term;
34
+ referrers;
35
+ uri;
36
+ constructor(referrer_url, current_url) {
37
+ this.known = false;
38
+ this.referrer = null;
39
+ this.medium = 'unknown';
40
+ this.search_parameter = null;
41
+ this.search_term = null;
42
+ if (!referrer_url) {
43
+ this.medium = 'none';
44
+ this.referrer = 'direct';
45
+ return;
46
+ }
47
+ const ref_uri = url.parse(referrer_url);
48
+ const ref_host = ref_uri.hostname;
49
+ this.known = Boolean(~['http:', 'https:'].indexOf(ref_uri.protocol));
50
+ this.uri = ref_uri;
51
+ if (!this.known)
52
+ return;
53
+ if (current_url) {
54
+ const curr_uri = url.parse(current_url);
55
+ const curr_host = curr_uri.hostname;
56
+ if (curr_host == ref_host) {
57
+ this.medium = 'internal';
58
+ this.referrer = 'internal';
59
+ return;
60
+ }
61
+ }
62
+ let referrer = this._lookup_referrer(ref_host, ref_uri.pathname, true);
63
+ if (!referrer) {
64
+ referrer = this._lookup_referrer(ref_host, ref_uri.pathname, false);
65
+ if (!referrer) {
66
+ this.medium = 'referral';
67
+ this.referrer = ref_host;
68
+ return;
69
+ }
70
+ }
71
+ this.referrer = referrer['name'];
72
+ this.medium = referrer['medium'];
73
+ if (referrer['medium'] == 'search') {
74
+ if (!referrer['params'])
75
+ return;
76
+ const pqs = querystring.parse(ref_uri?.query || '');
77
+ for (const param in pqs) {
78
+ const val = pqs[param];
79
+ if (referrer['params'].indexOf(param.toLowerCase()) !== -1) {
80
+ this.search_parameter = param;
81
+ this.search_term = val;
82
+ }
83
+ }
84
+ }
85
+ }
86
+ _lookup_referrer = (ref_host, ref_path, include_path) => {
87
+ let referrer = null;
88
+ if (include_path) {
89
+ const hostpath = (ref_host ?? '') + (ref_path ?? '');
90
+ referrer = REFERERS[hostpath];
91
+ }
92
+ else {
93
+ referrer = REFERERS[ref_host ?? ''];
94
+ }
95
+ if (!referrer) {
96
+ if (include_path) {
97
+ const path_parts = ref_path?.split('/');
98
+ if (path_parts && path_parts.length > 1) {
99
+ try {
100
+ referrer = REFERERS[ref_host + '/' + path_parts[1]];
101
+ }
102
+ catch (e) { }
103
+ }
104
+ }
105
+ }
106
+ if (!referrer) {
107
+ try {
108
+ const idx = (ref_host ?? '').indexOf('.');
109
+ if (idx === -1)
110
+ return null;
111
+ const slicedHost = ref_host?.slice(idx + 1);
112
+ return this._lookup_referrer(slicedHost, ref_path, include_path);
113
+ }
114
+ catch (e) {
115
+ return null;
116
+ }
117
+ }
118
+ else
119
+ return referrer;
120
+ };
121
+ }
122
122
  //# sourceMappingURL=referrer-parser-util.js.map
@@ -1 +1 @@
1
- export declare const mapObjectToQueryString: (inputObj: any) => string;
1
+ export declare const mapObjectToQueryString: (inputObj: any) => string;
@@ -1,10 +1,10 @@
1
- export const mapObjectToQueryString = (inputObj) => {
2
- const qsp = Object.entries(inputObj).sort((a, b) => a[0] < b[0] ? -1 : 1);
3
- const urlParams = new URLSearchParams();
4
- qsp.map(p => {
5
- urlParams.append(p[0], p[1]);
6
- });
7
- const qs = urlParams.toString();
8
- return qs;
9
- };
1
+ export const mapObjectToQueryString = (inputObj) => {
2
+ const qsp = Object.entries(inputObj).sort((a, b) => a[0] < b[0] ? -1 : 1);
3
+ const urlParams = new URLSearchParams();
4
+ qsp.map(p => {
5
+ urlParams.append(p[0], p[1]);
6
+ });
7
+ const qs = urlParams.toString();
8
+ return qs;
9
+ };
10
10
  //# sourceMappingURL=url.js.map
@@ -1,8 +1,8 @@
1
- import { Destination } from '@adtrackify/at-tracking-event-types';
2
- export declare class DestinationsDbService {
3
- TABLE_NAME: string;
4
- constructor(tableName: string);
5
- getDestinationsByPixel: (indexName: string, pixelId: string) => Promise<Destination[]>;
6
- getDestinationsByAccountId: (indexName: string, accountId: string) => Promise<Destination[]>;
7
- getDestinationsByDestinationType: (indexName: string, destinationType: string) => Promise<Destination[]>;
8
- }
1
+ import { Destination } from '@adtrackify/at-tracking-event-types';
2
+ export declare class DestinationsDbService {
3
+ TABLE_NAME: string;
4
+ constructor(tableName: string);
5
+ getDestinationsByPixel: (indexName: string, pixelId: string) => Promise<Destination[]>;
6
+ getDestinationsByAccountId: (indexName: string, accountId: string) => Promise<Destination[]>;
7
+ getDestinationsByDestinationType: (indexName: string, destinationType: string) => Promise<Destination[]>;
8
+ }
@@ -1,44 +1,44 @@
1
- import { DynamoDbClient } from '../../clients';
2
- export class DestinationsDbService {
3
- TABLE_NAME;
4
- constructor(tableName) {
5
- this.TABLE_NAME = tableName;
6
- }
7
- getDestinationsByPixel = async (indexName, pixelId) => {
8
- const query = {
9
- TableName: this.TABLE_NAME,
10
- IndexName: indexName,
11
- KeyConditionExpression: 'pixelId = :pixelId',
12
- ExpressionAttributeValues: {
13
- ':pixelId': pixelId,
14
- },
15
- };
16
- const destinations = await DynamoDbClient.queryAll(query);
17
- return destinations || [];
18
- };
19
- getDestinationsByAccountId = async (indexName, accountId) => {
20
- const query = {
21
- TableName: this.TABLE_NAME,
22
- IndexName: indexName,
23
- KeyConditionExpression: 'accountId = :accountId',
24
- ExpressionAttributeValues: {
25
- ':accountId': accountId,
26
- },
27
- };
28
- const destinations = await DynamoDbClient.queryAll(query);
29
- return destinations || [];
30
- };
31
- getDestinationsByDestinationType = async (indexName, destinationType) => {
32
- const query = {
33
- TableName: this.TABLE_NAME,
34
- IndexName: indexName,
35
- KeyConditionExpression: 'destinationType = :destinationType',
36
- ExpressionAttributeValues: {
37
- ':destinationType': destinationType
38
- }
39
- };
40
- const destinations = await DynamoDbClient.queryAll(query);
41
- return destinations || [];
42
- };
43
- }
1
+ import { DynamoDbClient } from '../../clients';
2
+ export class DestinationsDbService {
3
+ TABLE_NAME;
4
+ constructor(tableName) {
5
+ this.TABLE_NAME = tableName;
6
+ }
7
+ getDestinationsByPixel = async (indexName, pixelId) => {
8
+ const query = {
9
+ TableName: this.TABLE_NAME,
10
+ IndexName: indexName,
11
+ KeyConditionExpression: 'pixelId = :pixelId',
12
+ ExpressionAttributeValues: {
13
+ ':pixelId': pixelId,
14
+ },
15
+ };
16
+ const destinations = await DynamoDbClient.queryAll(query);
17
+ return destinations || [];
18
+ };
19
+ getDestinationsByAccountId = async (indexName, accountId) => {
20
+ const query = {
21
+ TableName: this.TABLE_NAME,
22
+ IndexName: indexName,
23
+ KeyConditionExpression: 'accountId = :accountId',
24
+ ExpressionAttributeValues: {
25
+ ':accountId': accountId,
26
+ },
27
+ };
28
+ const destinations = await DynamoDbClient.queryAll(query);
29
+ return destinations || [];
30
+ };
31
+ getDestinationsByDestinationType = async (indexName, destinationType) => {
32
+ const query = {
33
+ TableName: this.TABLE_NAME,
34
+ IndexName: indexName,
35
+ KeyConditionExpression: 'destinationType = :destinationType',
36
+ ExpressionAttributeValues: {
37
+ ':destinationType': destinationType
38
+ }
39
+ };
40
+ const destinations = await DynamoDbClient.queryAll(query);
41
+ return destinations || [];
42
+ };
43
+ }
44
44
  //# sourceMappingURL=destinations-db-service.js.map
@@ -1,24 +1,24 @@
1
- import { EventIdentity } from '@adtrackify/at-tracking-event-types';
2
- export interface IdentityCache {
3
- identityId: string;
4
- request?: EventIdentity;
5
- response: EventIdentity;
6
- createdAt?: string;
7
- updatedAt: string;
8
- expiresAt?: number;
9
- }
10
- export declare class IdentityCacheDbService {
11
- private cacheLambdaClient;
12
- private identifyPrivateLambdaArn;
13
- private lambdaInvokeClient;
14
- constructor(cacheLambdaFunctionArn: string, identifyPrivateLambdaArn: string);
15
- getIdentityWithCaching: (pixelId: string, incomingIdentity?: EventIdentity) => Promise<EventIdentity | undefined>;
16
- updateIdentityCacheRedis: (pixelId: string, request: EventIdentity, response: EventIdentity) => Promise<import("../../clients").CacheRequestCommandResponse[] | undefined>;
17
- private getIdentityCache;
18
- getIdentityFromCache(pixelId: string, incomingIdentity: EventIdentity): Promise<{
19
- resolvedIdentity: EventIdentity | undefined;
20
- updateCache: boolean;
21
- }>;
22
- deleteIdentityCache(pixelId: string, incomingIdentity: EventIdentity, resolvedIdentity: EventIdentity): Promise<void>;
23
- private deleteIdentityCacheRedis;
24
- }
1
+ import { EventIdentity } from '@adtrackify/at-tracking-event-types';
2
+ export interface IdentityCache {
3
+ identityId: string;
4
+ request?: EventIdentity;
5
+ response: EventIdentity;
6
+ createdAt?: string;
7
+ updatedAt: string;
8
+ expiresAt?: number;
9
+ }
10
+ export declare class IdentityCacheDbService {
11
+ private cacheLambdaClient;
12
+ private identifyPrivateLambdaArn;
13
+ private lambdaInvokeClient;
14
+ constructor(cacheLambdaFunctionArn: string, identifyPrivateLambdaArn: string);
15
+ getIdentityWithCaching: (pixelId: string, incomingIdentity?: EventIdentity) => Promise<EventIdentity | undefined>;
16
+ updateIdentityCacheRedis: (pixelId: string, request: EventIdentity, response: EventIdentity) => Promise<import("../../clients").CacheRequestCommandResponse[] | undefined>;
17
+ private getIdentityCache;
18
+ getIdentityFromCache(pixelId: string, incomingIdentity: EventIdentity): Promise<{
19
+ resolvedIdentity: EventIdentity | undefined;
20
+ updateCache: boolean;
21
+ }>;
22
+ deleteIdentityCache(pixelId: string, incomingIdentity: EventIdentity, resolvedIdentity: EventIdentity): Promise<void>;
23
+ private deleteIdentityCacheRedis;
24
+ }