@adtrackify/at-service-common 3.0.30 → 3.0.31

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 (199) hide show
  1. package/dist/cjs/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  2. package/dist/cjs/__tests__/s3-client/s3-client.spec.js +26 -26
  3. package/dist/cjs/clients/generic/cognito-client.d.ts +20 -20
  4. package/dist/cjs/clients/generic/cognito-client.js +164 -164
  5. package/dist/cjs/clients/generic/dynamodb-client.d.ts +16 -16
  6. package/dist/cjs/clients/generic/dynamodb-client.js +144 -144
  7. package/dist/cjs/clients/generic/eventbridge-client.d.ts +14 -14
  8. package/dist/cjs/clients/generic/eventbridge-client.js +49 -49
  9. package/dist/cjs/clients/generic/http-client.d.ts +88 -88
  10. package/dist/cjs/clients/generic/http-client.js +56 -56
  11. package/dist/cjs/clients/generic/index.d.ts +6 -6
  12. package/dist/cjs/clients/generic/index.js +22 -22
  13. package/dist/cjs/clients/generic/s3-client.d.ts +16 -16
  14. package/dist/cjs/clients/generic/s3-client.js +110 -110
  15. package/dist/cjs/clients/generic/sqs-client.d.ts +14 -14
  16. package/dist/cjs/clients/generic/sqs-client.js +38 -38
  17. package/dist/cjs/clients/index.d.ts +3 -3
  18. package/dist/cjs/clients/index.js +19 -19
  19. package/dist/cjs/clients/internal-api/accounts-client.d.ts +112 -112
  20. package/dist/cjs/clients/internal-api/accounts-client.js +117 -117
  21. package/dist/cjs/clients/internal-api/db-management-client.d.ts +18 -18
  22. package/dist/cjs/clients/internal-api/db-management-client.js +39 -39
  23. package/dist/cjs/clients/internal-api/destinations-client.d.ts +29 -29
  24. package/dist/cjs/clients/internal-api/destinations-client.js +54 -54
  25. package/dist/cjs/clients/internal-api/event-collector-client.d.ts +20 -20
  26. package/dist/cjs/clients/internal-api/event-collector-client.js +39 -39
  27. package/dist/cjs/clients/internal-api/identity-client.d.ts +17 -17
  28. package/dist/cjs/clients/internal-api/identity-client.js +75 -75
  29. package/dist/cjs/clients/internal-api/index.d.ts +7 -7
  30. package/dist/cjs/clients/internal-api/index.js +23 -23
  31. package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +34 -34
  32. package/dist/cjs/clients/internal-api/shopify-app-install-client.js +63 -63
  33. package/dist/cjs/clients/internal-api/users-auth-client.d.ts +31 -31
  34. package/dist/cjs/clients/internal-api/users-auth-client.js +92 -92
  35. package/dist/cjs/clients/third-party/index.d.ts +1 -1
  36. package/dist/cjs/clients/third-party/index.js +17 -17
  37. package/dist/cjs/clients/third-party/shopify-client.d.ts +198 -198
  38. package/dist/cjs/clients/third-party/shopify-client.js +150 -150
  39. package/dist/cjs/helpers/index.d.ts +4 -4
  40. package/dist/cjs/helpers/index.js +20 -20
  41. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  42. package/dist/cjs/helpers/input-validation-helper.js +23 -23
  43. package/dist/cjs/helpers/logging-helper.d.ts +15 -15
  44. package/dist/cjs/helpers/logging-helper.js +80 -80
  45. package/dist/cjs/helpers/response-helper.d.ts +15 -15
  46. package/dist/cjs/helpers/response-helper.js +42 -42
  47. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  48. package/dist/cjs/helpers/shopify-helper.js +28 -28
  49. package/dist/cjs/index.d.ts +5 -5
  50. package/dist/cjs/index.js +21 -21
  51. package/dist/cjs/libs/clickId-parser.d.ts +23 -23
  52. package/dist/cjs/libs/clickId-parser.js +49 -49
  53. package/dist/cjs/libs/crypto.d.ts +1 -1
  54. package/dist/cjs/libs/crypto.js +12 -12
  55. package/dist/cjs/libs/dates.d.ts +6 -6
  56. package/dist/cjs/libs/dates.js +31 -31
  57. package/dist/cjs/libs/http-error.d.ts +21 -21
  58. package/dist/cjs/libs/http-error.js +59 -59
  59. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  60. package/dist/cjs/libs/http-status-codes.js +62 -62
  61. package/dist/cjs/libs/index.d.ts +8 -8
  62. package/dist/cjs/libs/index.js +24 -24
  63. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  64. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  65. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  66. package/dist/cjs/libs/referrer-parser/referrer-data.js +4712 -4712
  67. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  68. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +128 -128
  69. package/dist/cjs/libs/url.d.ts +1 -1
  70. package/dist/cjs/libs/url.js +13 -13
  71. package/dist/cjs/services/db/destinations-service.d.ts +7 -7
  72. package/dist/cjs/services/db/destinations-service.js +35 -35
  73. package/dist/cjs/services/db/index.d.ts +4 -4
  74. package/dist/cjs/services/db/index.js +20 -20
  75. package/dist/cjs/services/db/log-events-data-service.d.ts +6 -6
  76. package/dist/cjs/services/db/log-events-data-service.js +31 -31
  77. package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +9 -9
  78. package/dist/cjs/services/db/purchased-contacts-db-service.js +38 -38
  79. package/dist/cjs/services/db/tracking-events-db-service.d.ts +17 -17
  80. package/dist/cjs/services/db/tracking-events-db-service.js +134 -134
  81. package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
  82. package/dist/cjs/services/eventbridge-integration-service.js +28 -28
  83. package/dist/cjs/services/index.d.ts +5 -5
  84. package/dist/cjs/services/index.js +21 -21
  85. package/dist/cjs/services/ipdata-lookup-service.d.ts +9 -8
  86. package/dist/cjs/services/ipdata-lookup-service.js +65 -59
  87. package/dist/cjs/services/ipdata-lookup-service.js.map +1 -1
  88. package/dist/cjs/services/log-event-service.d.ts +9 -9
  89. package/dist/cjs/services/log-event-service.js +56 -56
  90. package/dist/cjs/services/metric-event-service.d.ts +9 -9
  91. package/dist/cjs/services/metric-event-service.js +49 -49
  92. package/dist/cjs/types/api-response.d.ts +6 -6
  93. package/dist/cjs/types/api-response.js +2 -2
  94. package/dist/cjs/types/index.d.ts +1 -1
  95. package/dist/cjs/types/index.js +17 -17
  96. package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
  97. package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
  98. package/dist/cjs/types/internal-events/index.d.ts +1 -1
  99. package/dist/cjs/types/internal-events/index.js +17 -17
  100. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  101. package/dist/esm/__tests__/s3-client/s3-client.spec.js +24 -24
  102. package/dist/esm/clients/generic/cognito-client.d.ts +20 -20
  103. package/dist/esm/clients/generic/cognito-client.js +159 -159
  104. package/dist/esm/clients/generic/dynamodb-client.d.ts +16 -16
  105. package/dist/esm/clients/generic/dynamodb-client.js +140 -140
  106. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  107. package/dist/esm/clients/generic/eventbridge-client.js +45 -45
  108. package/dist/esm/clients/generic/http-client.d.ts +88 -88
  109. package/dist/esm/clients/generic/http-client.js +48 -48
  110. package/dist/esm/clients/generic/index.d.ts +6 -6
  111. package/dist/esm/clients/generic/index.js +6 -6
  112. package/dist/esm/clients/generic/s3-client.d.ts +16 -16
  113. package/dist/esm/clients/generic/s3-client.js +106 -106
  114. package/dist/esm/clients/generic/sqs-client.d.ts +14 -14
  115. package/dist/esm/clients/generic/sqs-client.js +34 -34
  116. package/dist/esm/clients/index.d.ts +3 -3
  117. package/dist/esm/clients/index.js +3 -3
  118. package/dist/esm/clients/internal-api/accounts-client.d.ts +112 -112
  119. package/dist/esm/clients/internal-api/accounts-client.js +113 -113
  120. package/dist/esm/clients/internal-api/db-management-client.d.ts +18 -18
  121. package/dist/esm/clients/internal-api/db-management-client.js +32 -32
  122. package/dist/esm/clients/internal-api/destinations-client.d.ts +29 -29
  123. package/dist/esm/clients/internal-api/destinations-client.js +50 -50
  124. package/dist/esm/clients/internal-api/event-collector-client.d.ts +20 -20
  125. package/dist/esm/clients/internal-api/event-collector-client.js +32 -32
  126. package/dist/esm/clients/internal-api/identity-client.d.ts +17 -17
  127. package/dist/esm/clients/internal-api/identity-client.js +71 -71
  128. package/dist/esm/clients/internal-api/index.d.ts +7 -7
  129. package/dist/esm/clients/internal-api/index.js +7 -7
  130. package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +34 -34
  131. package/dist/esm/clients/internal-api/shopify-app-install-client.js +56 -56
  132. package/dist/esm/clients/internal-api/users-auth-client.d.ts +31 -31
  133. package/dist/esm/clients/internal-api/users-auth-client.js +88 -88
  134. package/dist/esm/clients/third-party/index.d.ts +1 -1
  135. package/dist/esm/clients/third-party/index.js +1 -1
  136. package/dist/esm/clients/third-party/shopify-client.d.ts +198 -198
  137. package/dist/esm/clients/third-party/shopify-client.js +146 -146
  138. package/dist/esm/helpers/index.d.ts +4 -4
  139. package/dist/esm/helpers/index.js +4 -4
  140. package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
  141. package/dist/esm/helpers/input-validation-helper.js +19 -19
  142. package/dist/esm/helpers/logging-helper.d.ts +15 -15
  143. package/dist/esm/helpers/logging-helper.js +53 -53
  144. package/dist/esm/helpers/response-helper.d.ts +15 -15
  145. package/dist/esm/helpers/response-helper.js +36 -36
  146. package/dist/esm/helpers/shopify-helper.d.ts +9 -9
  147. package/dist/esm/helpers/shopify-helper.js +23 -23
  148. package/dist/esm/index.d.ts +5 -5
  149. package/dist/esm/index.js +5 -5
  150. package/dist/esm/libs/clickId-parser.d.ts +23 -23
  151. package/dist/esm/libs/clickId-parser.js +45 -45
  152. package/dist/esm/libs/crypto.d.ts +1 -1
  153. package/dist/esm/libs/crypto.js +5 -5
  154. package/dist/esm/libs/dates.d.ts +6 -6
  155. package/dist/esm/libs/dates.js +22 -22
  156. package/dist/esm/libs/http-error.d.ts +21 -21
  157. package/dist/esm/libs/http-error.js +55 -55
  158. package/dist/esm/libs/http-status-codes.d.ts +58 -58
  159. package/dist/esm/libs/http-status-codes.js +59 -59
  160. package/dist/esm/libs/index.d.ts +8 -8
  161. package/dist/esm/libs/index.js +8 -8
  162. package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
  163. package/dist/esm/libs/referrer-parser/index.js +2 -2
  164. package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
  165. package/dist/esm/libs/referrer-parser/referrer-data.js +4709 -4709
  166. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  167. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +121 -121
  168. package/dist/esm/libs/url.d.ts +1 -1
  169. package/dist/esm/libs/url.js +9 -9
  170. package/dist/esm/services/db/destinations-service.d.ts +7 -7
  171. package/dist/esm/services/db/destinations-service.js +31 -31
  172. package/dist/esm/services/db/index.d.ts +4 -4
  173. package/dist/esm/services/db/index.js +4 -4
  174. package/dist/esm/services/db/log-events-data-service.d.ts +6 -6
  175. package/dist/esm/services/db/log-events-data-service.js +27 -27
  176. package/dist/esm/services/db/purchased-contacts-db-service.d.ts +9 -9
  177. package/dist/esm/services/db/purchased-contacts-db-service.js +34 -34
  178. package/dist/esm/services/db/tracking-events-db-service.d.ts +17 -17
  179. package/dist/esm/services/db/tracking-events-db-service.js +130 -130
  180. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  181. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  182. package/dist/esm/services/index.d.ts +5 -5
  183. package/dist/esm/services/index.js +5 -5
  184. package/dist/esm/services/ipdata-lookup-service.d.ts +9 -8
  185. package/dist/esm/services/ipdata-lookup-service.js +61 -55
  186. package/dist/esm/services/ipdata-lookup-service.js.map +1 -1
  187. package/dist/esm/services/log-event-service.d.ts +9 -9
  188. package/dist/esm/services/log-event-service.js +52 -52
  189. package/dist/esm/services/metric-event-service.d.ts +9 -9
  190. package/dist/esm/services/metric-event-service.js +45 -45
  191. package/dist/esm/types/api-response.d.ts +6 -6
  192. package/dist/esm/types/api-response.js +1 -1
  193. package/dist/esm/types/index.d.ts +1 -1
  194. package/dist/esm/types/index.js +1 -1
  195. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  196. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  197. package/dist/esm/types/internal-events/index.d.ts +1 -1
  198. package/dist/esm/types/internal-events/index.js +1 -1
  199. package/package.json +1 -1
@@ -1,160 +1,160 @@
1
- import { CognitoIdentityProvider } from '@aws-sdk/client-cognito-identity-provider';
2
- import { Logger } from '../../index.js';
3
- export function dictToAwsAttributes(input) {
4
- delete input.email;
5
- delete input.password;
6
- const output = [];
7
- for (const att in input) {
8
- if (Object.prototype.hasOwnProperty.call(input, att)) {
9
- output.push({ Name: att, Value: input[att] });
10
- }
11
- }
12
- return output;
13
- }
14
- const buildAttributes = (data) => {
15
- const attributes = {
16
- name: data.givenName,
17
- family_name: data.familyName,
18
- };
19
- return dictToAwsAttributes(attributes);
20
- };
21
- export class CognitoClient {
22
- cognitoClient;
23
- USER_POOL_ID;
24
- USER_POOL_NO_SECRET_CLIENT_ID;
25
- constructor(userPoolId, userPoolNoSecretClientId) {
26
- this.cognitoClient = new CognitoIdentityProvider({});
27
- this.USER_POOL_ID = userPoolId;
28
- this.USER_POOL_NO_SECRET_CLIENT_ID = userPoolNoSecretClientId;
29
- }
30
- signupUser = async (data) => {
31
- const params = {
32
- ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
33
- Password: data.password,
34
- Username: data.email,
35
- UserAttributes: buildAttributes(data),
36
- };
37
- const cognitoResponse = await this.cognitoClient.signUp(params);
38
- Logger.info('Successfully Registered User', { cognitoResponse });
39
- return cognitoResponse;
40
- };
41
- forgotPassword = async (email) => {
42
- await this.adminEmailVerify(email);
43
- const params = {
44
- ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
45
- Username: email,
46
- };
47
- const cognitoResponse = await this.cognitoClient.forgotPassword(params);
48
- Logger.info('Sent Forgot Password', { cognitoResponse });
49
- return cognitoResponse;
50
- };
51
- adminEmailVerify = async (email) => {
52
- try {
53
- const user = await this.getUserByEmail(email);
54
- if (user && user?.UserStatus === 'CONFIRMED' && user?.email_verified !== 'true') {
55
- await this.forceValidateEmail(email);
56
- }
57
- }
58
- catch (error) {
59
- Logger.error('Failed admin email verify', { error });
60
- }
61
- };
62
- forceValidateEmail = async (email) => {
63
- try {
64
- const params = {
65
- UserPoolId: this.USER_POOL_ID,
66
- Username: email,
67
- UserAttributes: [
68
- {
69
- Name: 'email_verified',
70
- Value: 'true',
71
- },
72
- ],
73
- };
74
- await this.cognitoClient.adminUpdateUserAttributes(params);
75
- }
76
- catch (error) {
77
- Logger.error('Failed force validate email', { email, error });
78
- }
79
- };
80
- adminConfirmUser = async (data) => {
81
- const params = {
82
- UserPoolId: this.USER_POOL_ID,
83
- Username: data.email,
84
- };
85
- const cognitoResponse = await this.cognitoClient.adminConfirmSignUp(params);
86
- await this.forceValidateEmail(data.email);
87
- Logger.info('Admin Successfully Confirmed User', { cognitoResponse });
88
- return cognitoResponse;
89
- };
90
- confirmUser = async (data) => {
91
- const params = {
92
- ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
93
- ConfirmationCode: data.confirmationCode,
94
- Username: data.email,
95
- };
96
- const cognitoResponse = await this.cognitoClient.confirmSignUp(params);
97
- Logger.info('Successfully Confirmed User', { cognitoResponse });
98
- return cognitoResponse;
99
- };
100
- resendCode = async (email) => {
101
- const params = {
102
- ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
103
- Username: email,
104
- };
105
- await this.cognitoClient.resendConfirmationCode(params);
106
- Logger.info('Successfully Resend Confirmation Code', { email });
107
- return;
108
- };
109
- adminDeleteUser = async (userId) => {
110
- const params = {
111
- UserPoolId: this.USER_POOL_ID,
112
- Username: userId,
113
- };
114
- await this.cognitoClient.adminDeleteUser(params);
115
- return true;
116
- };
117
- getUserByEmail = async (email) => {
118
- const params = {
119
- UserPoolId: this.USER_POOL_ID,
120
- Filter: `email=\"${email}\"`,
121
- Limit: 1,
122
- };
123
- const cognitoResponse = await this.cognitoClient.listUsers(params);
124
- Logger.info('Get Users by Email', { cognitoResponse });
125
- if (cognitoResponse?.Users && cognitoResponse?.Users.length > 0) {
126
- const attributes = cognitoResponse.Users[0].Attributes;
127
- const user = {
128
- ...cognitoResponse.Users[0],
129
- Attributes: undefined,
130
- id: cognitoResponse.Users[0].sub,
131
- };
132
- attributes.forEach((attr) => {
133
- user[attr.Name] = attr?.Value;
134
- });
135
- return user;
136
- }
137
- return null;
138
- };
139
- getUser = async (id) => {
140
- const params = {
141
- UserPoolId: this.USER_POOL_ID,
142
- Username: id
143
- };
144
- const cognitoResponse = await this.cognitoClient.adminGetUser(params);
145
- if (cognitoResponse) {
146
- const attributes = cognitoResponse?.UserAttributes || [];
147
- const user = {
148
- ...cognitoResponse,
149
- UserAttributes: undefined,
150
- id: cognitoResponse.Username
151
- };
152
- attributes.forEach((attr) => {
153
- user[attr.Name] = attr?.Value;
154
- });
155
- return user;
156
- }
157
- return null;
158
- };
159
- }
1
+ import { CognitoIdentityProvider } from '@aws-sdk/client-cognito-identity-provider';
2
+ import { Logger } from '../../index.js';
3
+ export function dictToAwsAttributes(input) {
4
+ delete input.email;
5
+ delete input.password;
6
+ const output = [];
7
+ for (const att in input) {
8
+ if (Object.prototype.hasOwnProperty.call(input, att)) {
9
+ output.push({ Name: att, Value: input[att] });
10
+ }
11
+ }
12
+ return output;
13
+ }
14
+ const buildAttributes = (data) => {
15
+ const attributes = {
16
+ name: data.givenName,
17
+ family_name: data.familyName,
18
+ };
19
+ return dictToAwsAttributes(attributes);
20
+ };
21
+ export class CognitoClient {
22
+ cognitoClient;
23
+ USER_POOL_ID;
24
+ USER_POOL_NO_SECRET_CLIENT_ID;
25
+ constructor(userPoolId, userPoolNoSecretClientId) {
26
+ this.cognitoClient = new CognitoIdentityProvider({});
27
+ this.USER_POOL_ID = userPoolId;
28
+ this.USER_POOL_NO_SECRET_CLIENT_ID = userPoolNoSecretClientId;
29
+ }
30
+ signupUser = async (data) => {
31
+ const params = {
32
+ ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
33
+ Password: data.password,
34
+ Username: data.email,
35
+ UserAttributes: buildAttributes(data),
36
+ };
37
+ const cognitoResponse = await this.cognitoClient.signUp(params);
38
+ Logger.info('Successfully Registered User', { cognitoResponse });
39
+ return cognitoResponse;
40
+ };
41
+ forgotPassword = async (email) => {
42
+ await this.adminEmailVerify(email);
43
+ const params = {
44
+ ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
45
+ Username: email,
46
+ };
47
+ const cognitoResponse = await this.cognitoClient.forgotPassword(params);
48
+ Logger.info('Sent Forgot Password', { cognitoResponse });
49
+ return cognitoResponse;
50
+ };
51
+ adminEmailVerify = async (email) => {
52
+ try {
53
+ const user = await this.getUserByEmail(email);
54
+ if (user && user?.UserStatus === 'CONFIRMED' && user?.email_verified !== 'true') {
55
+ await this.forceValidateEmail(email);
56
+ }
57
+ }
58
+ catch (error) {
59
+ Logger.error('Failed admin email verify', { error });
60
+ }
61
+ };
62
+ forceValidateEmail = async (email) => {
63
+ try {
64
+ const params = {
65
+ UserPoolId: this.USER_POOL_ID,
66
+ Username: email,
67
+ UserAttributes: [
68
+ {
69
+ Name: 'email_verified',
70
+ Value: 'true',
71
+ },
72
+ ],
73
+ };
74
+ await this.cognitoClient.adminUpdateUserAttributes(params);
75
+ }
76
+ catch (error) {
77
+ Logger.error('Failed force validate email', { email, error });
78
+ }
79
+ };
80
+ adminConfirmUser = async (data) => {
81
+ const params = {
82
+ UserPoolId: this.USER_POOL_ID,
83
+ Username: data.email,
84
+ };
85
+ const cognitoResponse = await this.cognitoClient.adminConfirmSignUp(params);
86
+ await this.forceValidateEmail(data.email);
87
+ Logger.info('Admin Successfully Confirmed User', { cognitoResponse });
88
+ return cognitoResponse;
89
+ };
90
+ confirmUser = async (data) => {
91
+ const params = {
92
+ ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
93
+ ConfirmationCode: data.confirmationCode,
94
+ Username: data.email,
95
+ };
96
+ const cognitoResponse = await this.cognitoClient.confirmSignUp(params);
97
+ Logger.info('Successfully Confirmed User', { cognitoResponse });
98
+ return cognitoResponse;
99
+ };
100
+ resendCode = async (email) => {
101
+ const params = {
102
+ ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
103
+ Username: email,
104
+ };
105
+ await this.cognitoClient.resendConfirmationCode(params);
106
+ Logger.info('Successfully Resend Confirmation Code', { email });
107
+ return;
108
+ };
109
+ adminDeleteUser = async (userId) => {
110
+ const params = {
111
+ UserPoolId: this.USER_POOL_ID,
112
+ Username: userId,
113
+ };
114
+ await this.cognitoClient.adminDeleteUser(params);
115
+ return true;
116
+ };
117
+ getUserByEmail = async (email) => {
118
+ const params = {
119
+ UserPoolId: this.USER_POOL_ID,
120
+ Filter: `email=\"${email}\"`,
121
+ Limit: 1,
122
+ };
123
+ const cognitoResponse = await this.cognitoClient.listUsers(params);
124
+ Logger.info('Get Users by Email', { cognitoResponse });
125
+ if (cognitoResponse?.Users && cognitoResponse?.Users.length > 0) {
126
+ const attributes = cognitoResponse.Users[0].Attributes;
127
+ const user = {
128
+ ...cognitoResponse.Users[0],
129
+ Attributes: undefined,
130
+ id: cognitoResponse.Users[0].sub,
131
+ };
132
+ attributes.forEach((attr) => {
133
+ user[attr.Name] = attr?.Value;
134
+ });
135
+ return user;
136
+ }
137
+ return null;
138
+ };
139
+ getUser = async (id) => {
140
+ const params = {
141
+ UserPoolId: this.USER_POOL_ID,
142
+ Username: id
143
+ };
144
+ const cognitoResponse = await this.cognitoClient.adminGetUser(params);
145
+ if (cognitoResponse) {
146
+ const attributes = cognitoResponse?.UserAttributes || [];
147
+ const user = {
148
+ ...cognitoResponse,
149
+ UserAttributes: undefined,
150
+ id: cognitoResponse.Username
151
+ };
152
+ attributes.forEach((attr) => {
153
+ user[attr.Name] = attr?.Value;
154
+ });
155
+ return user;
156
+ }
157
+ return null;
158
+ };
159
+ }
160
160
  //# sourceMappingURL=cognito-client.js.map
@@ -1,16 +1,16 @@
1
- export declare class DynamoDbClient {
2
- static safeGet: (tableName: string, keyName: string, keyValue: any) => Promise<Record<string, any> | null>;
3
- static safePut: (tableName: string, data: any) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput | null>;
4
- static safeDelete: (tableName: string, keyName: string, keyValue: any) => Promise<import("@aws-sdk/lib-dynamodb").DeleteCommandOutput | null>;
5
- static safeQueryByGSI: (tableName: string, gsiName: string, keyName: string, keyValue: any) => Promise<any[] | null>;
6
- static safeBatchGet: (tableName: string, keys: any) => Promise<Record<string, any>[]>;
7
- static queryAll: (params: any) => Promise<any[] | null>;
8
- static scanAll: (params: any) => Promise<any[] | null>;
9
- static batchGet: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").BatchGetCommandOutput>;
10
- static get: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").GetCommandOutput>;
11
- static put: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput>;
12
- static query: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").QueryCommandOutput>;
13
- static scan: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").ScanCommandOutput>;
14
- static update: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").UpdateCommandOutput>;
15
- static delete: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").DeleteCommandOutput>;
16
- }
1
+ export declare class DynamoDbClient {
2
+ static safeGet: (tableName: string, keyName: string, keyValue: any) => Promise<Record<string, any> | null>;
3
+ static safePut: (tableName: string, data: any) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput | null>;
4
+ static safeDelete: (tableName: string, keyName: string, keyValue: any) => Promise<import("@aws-sdk/lib-dynamodb").DeleteCommandOutput | null>;
5
+ static safeQueryByGSI: (tableName: string, gsiName: string, keyName: string, keyValue: any) => Promise<any[] | null>;
6
+ static safeBatchGet: (tableName: string, keys: any) => Promise<Record<string, any>[]>;
7
+ static queryAll: (params: any) => Promise<any[] | null>;
8
+ static scanAll: (params: any) => Promise<any[] | null>;
9
+ static batchGet: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").BatchGetCommandOutput>;
10
+ static get: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").GetCommandOutput>;
11
+ static put: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput>;
12
+ static query: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").QueryCommandOutput>;
13
+ static scan: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").ScanCommandOutput>;
14
+ static update: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").UpdateCommandOutput>;
15
+ static delete: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").DeleteCommandOutput>;
16
+ }
@@ -1,141 +1,141 @@
1
- import { DynamoDBClient } from '@aws-sdk/client-dynamodb';
2
- import { DynamoDBDocument } from '@aws-sdk/lib-dynamodb';
3
- import { Logger } from '../../index.js';
4
- const marshallOptions = {
5
- convertEmptyValues: false,
6
- removeUndefinedValues: true,
7
- convertClassInstanceToMap: true
8
- };
9
- const unmarshallOptions = {
10
- wrapNumbers: false,
11
- };
12
- const translateConfig = { marshallOptions, unmarshallOptions };
13
- const ddbClient = new DynamoDBClient({});
14
- const client = DynamoDBDocument.from(ddbClient, translateConfig);
15
- export class DynamoDbClient {
16
- static safeGet = async (tableName, keyName, keyValue) => {
17
- try {
18
- const params = {
19
- TableName: tableName,
20
- Key: {
21
- [keyName]: keyValue
22
- }
23
- };
24
- const res = await client.get(params);
25
- return res?.Item ?? null;
26
- }
27
- catch (e) {
28
- Logger.error(e, { message: 'Dynamo Client Get Failed', tableName, keyName, keyValue });
29
- return null;
30
- }
31
- };
32
- static safePut = async (tableName, data) => {
33
- try {
34
- const params = {
35
- TableName: tableName,
36
- Item: data
37
- };
38
- const res = await client.put(params);
39
- return res;
40
- }
41
- catch (e) {
42
- Logger.error(e, { message: 'Dynamo failed simplePut', tableName, data });
43
- return null;
44
- }
45
- };
46
- static safeDelete = async (tableName, keyName, keyValue) => {
47
- try {
48
- const params = {
49
- TableName: tableName,
50
- Key: {
51
- [keyName]: keyValue
52
- }
53
- };
54
- const res = await client.delete(params);
55
- return res;
56
- }
57
- catch (e) {
58
- Logger.error(e, { message: 'Dynamo failed safeDelete' });
59
- return null;
60
- }
61
- };
62
- static safeQueryByGSI = async (tableName, gsiName, keyName, keyValue) => {
63
- const query = {
64
- TableName: tableName,
65
- IndexName: gsiName,
66
- KeyConditionExpression: `${keyName} = :value`,
67
- ExpressionAttributeValues: {
68
- ':value': keyValue
69
- }
70
- };
71
- const results = await DynamoDbClient.queryAll(query);
72
- return results;
73
- };
74
- static safeBatchGet = async (tableName, keys) => {
75
- try {
76
- const params = {
77
- RequestItems: {}
78
- };
79
- params.RequestItems[tableName] = {
80
- Keys: keys
81
- };
82
- const res = await client.batchGet(params);
83
- if (res?.Responses?.[tableName]) {
84
- return res?.Responses?.[tableName];
85
- }
86
- return [];
87
- }
88
- catch (e) {
89
- Logger.error(e, { message: 'Dynamo failed safeBatchGet' });
90
- return [];
91
- }
92
- };
93
- static queryAll = async (params) => {
94
- try {
95
- let currentResult, exclusiveStartKey;
96
- let accumulatedResults = [];
97
- do {
98
- params.ExclusiveStartKey = exclusiveStartKey;
99
- params.Limit = 200;
100
- currentResult = await client.query(params);
101
- if (currentResult.Items) {
102
- exclusiveStartKey = currentResult.LastEvaluatedKey;
103
- accumulatedResults = [...accumulatedResults, ...currentResult.Items];
104
- }
105
- } while (currentResult.Items && currentResult.Items.length > 0 && currentResult.LastEvaluatedKey);
106
- return accumulatedResults;
107
- }
108
- catch (e) {
109
- Logger.error(e, { message: 'Dynamo failed queryAll' });
110
- return null;
111
- }
112
- };
113
- static scanAll = async (params) => {
114
- try {
115
- let currentResult, exclusiveStartKey;
116
- let accumulatedResults = [];
117
- do {
118
- params.ExclusiveStartKey = exclusiveStartKey;
119
- params.Limit = 200;
120
- currentResult = await client.scan(params);
121
- if (currentResult.Items) {
122
- exclusiveStartKey = currentResult.LastEvaluatedKey;
123
- accumulatedResults = [...accumulatedResults, ...currentResult.Items];
124
- }
125
- } while (currentResult.Items && currentResult.Items.length > 0 && currentResult.LastEvaluatedKey);
126
- return accumulatedResults;
127
- }
128
- catch (e) {
129
- Logger.error(e, { message: 'Dynamo failed scanAll' });
130
- return null;
131
- }
132
- };
133
- static batchGet = (params) => client.batchGet(params);
134
- static get = (params) => client.get(params);
135
- static put = (params) => client.put(params);
136
- static query = (params) => client.query(params);
137
- static scan = (params) => client.scan(params);
138
- static update = (params) => client.update(params);
139
- static delete = (params) => client.delete(params);
140
- }
1
+ import { DynamoDBClient } from '@aws-sdk/client-dynamodb';
2
+ import { DynamoDBDocument } from '@aws-sdk/lib-dynamodb';
3
+ import { Logger } from '../../index.js';
4
+ const marshallOptions = {
5
+ convertEmptyValues: false,
6
+ removeUndefinedValues: true,
7
+ convertClassInstanceToMap: true
8
+ };
9
+ const unmarshallOptions = {
10
+ wrapNumbers: false,
11
+ };
12
+ const translateConfig = { marshallOptions, unmarshallOptions };
13
+ const ddbClient = new DynamoDBClient({});
14
+ const client = DynamoDBDocument.from(ddbClient, translateConfig);
15
+ export class DynamoDbClient {
16
+ static safeGet = async (tableName, keyName, keyValue) => {
17
+ try {
18
+ const params = {
19
+ TableName: tableName,
20
+ Key: {
21
+ [keyName]: keyValue
22
+ }
23
+ };
24
+ const res = await client.get(params);
25
+ return res?.Item ?? null;
26
+ }
27
+ catch (e) {
28
+ Logger.error(e, { message: 'Dynamo Client Get Failed', tableName, keyName, keyValue });
29
+ return null;
30
+ }
31
+ };
32
+ static safePut = async (tableName, data) => {
33
+ try {
34
+ const params = {
35
+ TableName: tableName,
36
+ Item: data
37
+ };
38
+ const res = await client.put(params);
39
+ return res;
40
+ }
41
+ catch (e) {
42
+ Logger.error(e, { message: 'Dynamo failed simplePut', tableName, data });
43
+ return null;
44
+ }
45
+ };
46
+ static safeDelete = async (tableName, keyName, keyValue) => {
47
+ try {
48
+ const params = {
49
+ TableName: tableName,
50
+ Key: {
51
+ [keyName]: keyValue
52
+ }
53
+ };
54
+ const res = await client.delete(params);
55
+ return res;
56
+ }
57
+ catch (e) {
58
+ Logger.error(e, { message: 'Dynamo failed safeDelete' });
59
+ return null;
60
+ }
61
+ };
62
+ static safeQueryByGSI = async (tableName, gsiName, keyName, keyValue) => {
63
+ const query = {
64
+ TableName: tableName,
65
+ IndexName: gsiName,
66
+ KeyConditionExpression: `${keyName} = :value`,
67
+ ExpressionAttributeValues: {
68
+ ':value': keyValue
69
+ }
70
+ };
71
+ const results = await DynamoDbClient.queryAll(query);
72
+ return results;
73
+ };
74
+ static safeBatchGet = async (tableName, keys) => {
75
+ try {
76
+ const params = {
77
+ RequestItems: {}
78
+ };
79
+ params.RequestItems[tableName] = {
80
+ Keys: keys
81
+ };
82
+ const res = await client.batchGet(params);
83
+ if (res?.Responses?.[tableName]) {
84
+ return res?.Responses?.[tableName];
85
+ }
86
+ return [];
87
+ }
88
+ catch (e) {
89
+ Logger.error(e, { message: 'Dynamo failed safeBatchGet' });
90
+ return [];
91
+ }
92
+ };
93
+ static queryAll = async (params) => {
94
+ try {
95
+ let currentResult, exclusiveStartKey;
96
+ let accumulatedResults = [];
97
+ do {
98
+ params.ExclusiveStartKey = exclusiveStartKey;
99
+ params.Limit = 200;
100
+ currentResult = await client.query(params);
101
+ if (currentResult.Items) {
102
+ exclusiveStartKey = currentResult.LastEvaluatedKey;
103
+ accumulatedResults = [...accumulatedResults, ...currentResult.Items];
104
+ }
105
+ } while (currentResult.Items && currentResult.Items.length > 0 && currentResult.LastEvaluatedKey);
106
+ return accumulatedResults;
107
+ }
108
+ catch (e) {
109
+ Logger.error(e, { message: 'Dynamo failed queryAll' });
110
+ return null;
111
+ }
112
+ };
113
+ static scanAll = async (params) => {
114
+ try {
115
+ let currentResult, exclusiveStartKey;
116
+ let accumulatedResults = [];
117
+ do {
118
+ params.ExclusiveStartKey = exclusiveStartKey;
119
+ params.Limit = 200;
120
+ currentResult = await client.scan(params);
121
+ if (currentResult.Items) {
122
+ exclusiveStartKey = currentResult.LastEvaluatedKey;
123
+ accumulatedResults = [...accumulatedResults, ...currentResult.Items];
124
+ }
125
+ } while (currentResult.Items && currentResult.Items.length > 0 && currentResult.LastEvaluatedKey);
126
+ return accumulatedResults;
127
+ }
128
+ catch (e) {
129
+ Logger.error(e, { message: 'Dynamo failed scanAll' });
130
+ return null;
131
+ }
132
+ };
133
+ static batchGet = (params) => client.batchGet(params);
134
+ static get = (params) => client.get(params);
135
+ static put = (params) => client.put(params);
136
+ static query = (params) => client.query(params);
137
+ static scan = (params) => client.scan(params);
138
+ static update = (params) => client.update(params);
139
+ static delete = (params) => client.delete(params);
140
+ }
141
141
  //# sourceMappingURL=dynamodb-client.js.map
@@ -1,14 +1,14 @@
1
- import { EventBridgeClient as EventBridge } from '@aws-sdk/client-eventbridge';
2
- export declare class EventBridgeClient {
3
- eventBridge: EventBridge;
4
- EVENT_BUS_NAME: string;
5
- constructor(eventBusName: string);
6
- buildAndSendEvent: (eventSource: string, eventType: string, eventData: any) => Promise<import("@aws-sdk/client-eventbridge").PutEventsCommandOutput>;
7
- buildEvent: (eventType: string, eventData: any, eventId?: string, eventTime?: string) => {
8
- eventId: string;
9
- eventType: string;
10
- eventTime: string;
11
- eventData: any;
12
- };
13
- putEvent: (source: string, detailType: string, data: any, headers?: any) => Promise<import("@aws-sdk/client-eventbridge").PutEventsCommandOutput>;
14
- }
1
+ import { EventBridgeClient as EventBridge } from '@aws-sdk/client-eventbridge';
2
+ export declare class EventBridgeClient {
3
+ eventBridge: EventBridge;
4
+ EVENT_BUS_NAME: string;
5
+ constructor(eventBusName: string);
6
+ buildAndSendEvent: (eventSource: string, eventType: string, eventData: any) => Promise<import("@aws-sdk/client-eventbridge").PutEventsCommandOutput>;
7
+ buildEvent: (eventType: string, eventData: any, eventId?: string, eventTime?: string) => {
8
+ eventId: string;
9
+ eventType: string;
10
+ eventTime: string;
11
+ eventData: any;
12
+ };
13
+ putEvent: (source: string, detailType: string, data: any, headers?: any) => Promise<import("@aws-sdk/client-eventbridge").PutEventsCommandOutput>;
14
+ }