@adtrackify/at-service-common 2.1.0 → 2.1.2

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 (201) hide show
  1. package/dist/cjs/__tests__/helpers/subscription-helper.spec.d.ts +1 -1
  2. package/dist/cjs/__tests__/helpers/subscription-helper.spec.js +52 -52
  3. package/dist/cjs/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  4. package/dist/cjs/__tests__/s3-client/s3-client.spec.js +26 -26
  5. package/dist/cjs/clients/generic/cognito-client.d.ts +20 -20
  6. package/dist/cjs/clients/generic/cognito-client.js +164 -164
  7. package/dist/cjs/clients/generic/dynamodb-client.d.ts +16 -16
  8. package/dist/cjs/clients/generic/dynamodb-client.js +144 -144
  9. package/dist/cjs/clients/generic/eventbridge-client.d.ts +14 -14
  10. package/dist/cjs/clients/generic/eventbridge-client.js +49 -49
  11. package/dist/cjs/clients/generic/http-client.d.ts +85 -85
  12. package/dist/cjs/clients/generic/http-client.js +51 -51
  13. package/dist/cjs/clients/generic/index.d.ts +6 -6
  14. package/dist/cjs/clients/generic/index.js +22 -22
  15. package/dist/cjs/clients/generic/s3-client.d.ts +14 -14
  16. package/dist/cjs/clients/generic/s3-client.js +82 -82
  17. package/dist/cjs/clients/generic/sqs-client.d.ts +14 -14
  18. package/dist/cjs/clients/generic/sqs-client.js +38 -38
  19. package/dist/cjs/clients/index.d.ts +3 -3
  20. package/dist/cjs/clients/index.js +19 -19
  21. package/dist/cjs/clients/internal-api/accounts-client.d.ts +55 -55
  22. package/dist/cjs/clients/internal-api/accounts-client.js +98 -98
  23. package/dist/cjs/clients/internal-api/db-management-client.d.ts +23 -23
  24. package/dist/cjs/clients/internal-api/db-management-client.js +45 -45
  25. package/dist/cjs/clients/internal-api/destinations-client.d.ts +29 -29
  26. package/dist/cjs/clients/internal-api/destinations-client.js +54 -54
  27. package/dist/cjs/clients/internal-api/event-collector-client.d.ts +20 -20
  28. package/dist/cjs/clients/internal-api/event-collector-client.js +39 -39
  29. package/dist/cjs/clients/internal-api/identity-client.d.ts +10 -10
  30. package/dist/cjs/clients/internal-api/identity-client.js +43 -43
  31. package/dist/cjs/clients/internal-api/index.d.ts +7 -7
  32. package/dist/cjs/clients/internal-api/index.js +23 -23
  33. package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +30 -30
  34. package/dist/cjs/clients/internal-api/shopify-app-install-client.js +51 -51
  35. package/dist/cjs/clients/internal-api/users-auth-client.d.ts +31 -31
  36. package/dist/cjs/clients/internal-api/users-auth-client.js +92 -92
  37. package/dist/cjs/clients/third-party/index.d.ts +1 -1
  38. package/dist/cjs/clients/third-party/index.js +17 -17
  39. package/dist/cjs/clients/third-party/shopify-client.d.ts +255 -255
  40. package/dist/cjs/clients/third-party/shopify-client.js +125 -125
  41. package/dist/cjs/helpers/index.d.ts +5 -5
  42. package/dist/cjs/helpers/index.js +21 -21
  43. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  44. package/dist/cjs/helpers/input-validation-helper.js +23 -23
  45. package/dist/cjs/helpers/logging-helper.d.ts +15 -15
  46. package/dist/cjs/helpers/logging-helper.js +80 -80
  47. package/dist/cjs/helpers/response-helper.d.ts +15 -15
  48. package/dist/cjs/helpers/response-helper.js +42 -42
  49. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  50. package/dist/cjs/helpers/shopify-helper.js +28 -28
  51. package/dist/cjs/helpers/subscription-helper.d.ts +8 -8
  52. package/dist/cjs/helpers/subscription-helper.js +241 -241
  53. package/dist/cjs/index.d.ts +5 -5
  54. package/dist/cjs/index.js +21 -21
  55. package/dist/cjs/libs/clickId-parser.d.ts +23 -23
  56. package/dist/cjs/libs/clickId-parser.js +49 -49
  57. package/dist/cjs/libs/crypto.d.ts +1 -1
  58. package/dist/cjs/libs/crypto.js +12 -12
  59. package/dist/cjs/libs/dates.d.ts +6 -6
  60. package/dist/cjs/libs/dates.js +31 -31
  61. package/dist/cjs/libs/http-error.d.ts +21 -21
  62. package/dist/cjs/libs/http-error.js +59 -59
  63. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  64. package/dist/cjs/libs/http-status-codes.js +62 -62
  65. package/dist/cjs/libs/index.d.ts +8 -8
  66. package/dist/cjs/libs/index.js +24 -24
  67. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  68. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  69. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  70. package/dist/cjs/libs/referrer-parser/referrer-data.js +4712 -4712
  71. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  72. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +128 -128
  73. package/dist/cjs/libs/url.d.ts +1 -1
  74. package/dist/cjs/libs/url.js +13 -13
  75. package/dist/cjs/services/db/destinations-service.d.ts +7 -7
  76. package/dist/cjs/services/db/destinations-service.js +35 -35
  77. package/dist/cjs/services/db/index.d.ts +3 -3
  78. package/dist/cjs/services/db/index.js +19 -19
  79. package/dist/cjs/services/db/log-events-data-service.d.ts +6 -6
  80. package/dist/cjs/services/db/log-events-data-service.js +31 -31
  81. package/dist/cjs/services/db/tracking-events-data-service.d.ts +6 -6
  82. package/dist/cjs/services/db/tracking-events-data-service.js +31 -31
  83. package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
  84. package/dist/cjs/services/eventbridge-integration-service.js +28 -28
  85. package/dist/cjs/services/index.d.ts +5 -5
  86. package/dist/cjs/services/index.js +21 -21
  87. package/dist/cjs/services/ipdata-lookup-service.d.ts +8 -8
  88. package/dist/cjs/services/ipdata-lookup-service.js +59 -59
  89. package/dist/cjs/services/log-event-service.d.ts +9 -9
  90. package/dist/cjs/services/log-event-service.js +56 -56
  91. package/dist/cjs/services/metric-event-service.d.ts +9 -9
  92. package/dist/cjs/services/metric-event-service.js +49 -49
  93. package/dist/cjs/types/api-response.d.ts +6 -6
  94. package/dist/cjs/types/api-response.js +2 -2
  95. package/dist/cjs/types/index.d.ts +1 -1
  96. package/dist/cjs/types/index.js +17 -17
  97. package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
  98. package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
  99. package/dist/cjs/types/internal-events/index.d.ts +1 -1
  100. package/dist/cjs/types/internal-events/index.js +17 -17
  101. package/dist/esm/__tests__/helpers/subscription-helper.spec.d.ts +1 -1
  102. package/dist/esm/__tests__/helpers/subscription-helper.spec.js +27 -27
  103. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  104. package/dist/esm/__tests__/s3-client/s3-client.spec.js +24 -24
  105. package/dist/esm/clients/generic/cognito-client.d.ts +20 -20
  106. package/dist/esm/clients/generic/cognito-client.js +159 -159
  107. package/dist/esm/clients/generic/dynamodb-client.d.ts +16 -16
  108. package/dist/esm/clients/generic/dynamodb-client.js +140 -140
  109. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  110. package/dist/esm/clients/generic/eventbridge-client.js +45 -45
  111. package/dist/esm/clients/generic/http-client.d.ts +85 -85
  112. package/dist/esm/clients/generic/http-client.js +44 -44
  113. package/dist/esm/clients/generic/index.d.ts +6 -6
  114. package/dist/esm/clients/generic/index.js +6 -6
  115. package/dist/esm/clients/generic/s3-client.d.ts +14 -14
  116. package/dist/esm/clients/generic/s3-client.js +78 -78
  117. package/dist/esm/clients/generic/sqs-client.d.ts +14 -14
  118. package/dist/esm/clients/generic/sqs-client.js +34 -34
  119. package/dist/esm/clients/index.d.ts +3 -3
  120. package/dist/esm/clients/index.js +3 -3
  121. package/dist/esm/clients/internal-api/accounts-client.d.ts +55 -55
  122. package/dist/esm/clients/internal-api/accounts-client.js +94 -94
  123. package/dist/esm/clients/internal-api/db-management-client.d.ts +23 -23
  124. package/dist/esm/clients/internal-api/db-management-client.js +38 -38
  125. package/dist/esm/clients/internal-api/destinations-client.d.ts +29 -29
  126. package/dist/esm/clients/internal-api/destinations-client.js +50 -50
  127. package/dist/esm/clients/internal-api/event-collector-client.d.ts +20 -20
  128. package/dist/esm/clients/internal-api/event-collector-client.js +32 -32
  129. package/dist/esm/clients/internal-api/identity-client.d.ts +10 -10
  130. package/dist/esm/clients/internal-api/identity-client.js +39 -39
  131. package/dist/esm/clients/internal-api/index.d.ts +7 -7
  132. package/dist/esm/clients/internal-api/index.js +7 -7
  133. package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +30 -30
  134. package/dist/esm/clients/internal-api/shopify-app-install-client.js +44 -44
  135. package/dist/esm/clients/internal-api/users-auth-client.d.ts +31 -31
  136. package/dist/esm/clients/internal-api/users-auth-client.js +88 -88
  137. package/dist/esm/clients/third-party/index.d.ts +1 -1
  138. package/dist/esm/clients/third-party/index.js +1 -1
  139. package/dist/esm/clients/third-party/shopify-client.d.ts +255 -255
  140. package/dist/esm/clients/third-party/shopify-client.js +121 -121
  141. package/dist/esm/helpers/index.d.ts +5 -5
  142. package/dist/esm/helpers/index.js +5 -5
  143. package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
  144. package/dist/esm/helpers/input-validation-helper.js +19 -19
  145. package/dist/esm/helpers/logging-helper.d.ts +15 -15
  146. package/dist/esm/helpers/logging-helper.js +53 -53
  147. package/dist/esm/helpers/response-helper.d.ts +15 -15
  148. package/dist/esm/helpers/response-helper.js +36 -36
  149. package/dist/esm/helpers/shopify-helper.d.ts +9 -9
  150. package/dist/esm/helpers/shopify-helper.js +23 -23
  151. package/dist/esm/helpers/subscription-helper.d.ts +8 -8
  152. package/dist/esm/helpers/subscription-helper.js +236 -236
  153. package/dist/esm/index.d.ts +5 -5
  154. package/dist/esm/index.js +5 -5
  155. package/dist/esm/libs/clickId-parser.d.ts +23 -23
  156. package/dist/esm/libs/clickId-parser.js +45 -45
  157. package/dist/esm/libs/crypto.d.ts +1 -1
  158. package/dist/esm/libs/crypto.js +5 -5
  159. package/dist/esm/libs/dates.d.ts +6 -6
  160. package/dist/esm/libs/dates.js +22 -22
  161. package/dist/esm/libs/http-error.d.ts +21 -21
  162. package/dist/esm/libs/http-error.js +55 -55
  163. package/dist/esm/libs/http-status-codes.d.ts +58 -58
  164. package/dist/esm/libs/http-status-codes.js +59 -59
  165. package/dist/esm/libs/index.d.ts +8 -8
  166. package/dist/esm/libs/index.js +8 -8
  167. package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
  168. package/dist/esm/libs/referrer-parser/index.js +2 -2
  169. package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
  170. package/dist/esm/libs/referrer-parser/referrer-data.js +4709 -4709
  171. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  172. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +121 -121
  173. package/dist/esm/libs/url.d.ts +1 -1
  174. package/dist/esm/libs/url.js +9 -9
  175. package/dist/esm/services/db/destinations-service.d.ts +7 -7
  176. package/dist/esm/services/db/destinations-service.js +31 -31
  177. package/dist/esm/services/db/index.d.ts +3 -3
  178. package/dist/esm/services/db/index.js +3 -3
  179. package/dist/esm/services/db/log-events-data-service.d.ts +6 -6
  180. package/dist/esm/services/db/log-events-data-service.js +27 -27
  181. package/dist/esm/services/db/tracking-events-data-service.d.ts +6 -6
  182. package/dist/esm/services/db/tracking-events-data-service.js +27 -27
  183. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  184. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  185. package/dist/esm/services/index.d.ts +5 -5
  186. package/dist/esm/services/index.js +5 -5
  187. package/dist/esm/services/ipdata-lookup-service.d.ts +8 -8
  188. package/dist/esm/services/ipdata-lookup-service.js +55 -55
  189. package/dist/esm/services/log-event-service.d.ts +9 -9
  190. package/dist/esm/services/log-event-service.js +52 -52
  191. package/dist/esm/services/metric-event-service.d.ts +9 -9
  192. package/dist/esm/services/metric-event-service.js +45 -45
  193. package/dist/esm/types/api-response.d.ts +6 -6
  194. package/dist/esm/types/api-response.js +1 -1
  195. package/dist/esm/types/index.d.ts +1 -1
  196. package/dist/esm/types/index.js +1 -1
  197. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  198. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  199. package/dist/esm/types/internal-events/index.d.ts +1 -1
  200. package/dist/esm/types/internal-events/index.js +1 -1
  201. package/package.json +1 -1
@@ -1,45 +1,45 @@
1
- import log from 'lambda-log';
2
- import { axiosHttpService } from '../generic/http-client.js';
3
- export class ShopifyAppInstallClient {
4
- BASE_API_URL;
5
- SHOPIFY_APP_INSTALL_API_KEY;
6
- client;
7
- constructor(baseApiUrl, shopifyAppInstallApiKey) {
8
- this.BASE_API_URL = baseApiUrl;
9
- this.SHOPIFY_APP_INSTALL_API_KEY = shopifyAppInstallApiKey;
10
- }
11
- getConfig = () => {
12
- const SERVICE_API_ROOT_URL = `${this.BASE_API_URL}/shopify-app-installs`;
13
- return {
14
- baseURL: SERVICE_API_ROOT_URL,
15
- headers: {
16
- common: {
17
- 'x-api-key': this.SHOPIFY_APP_INSTALL_API_KEY
18
- }
19
- }
20
- };
21
- };
22
- getClient = () => {
23
- this.client = this.client ?? axiosHttpService(this.getConfig());
24
- return this.client;
25
- };
26
- updateShopifyAppInstall = async (shopifyAppInstallId, updateShopifyAppInstallRequest) => {
27
- const client = this.getClient();
28
- const response = await client.put(`/${shopifyAppInstallId}`, updateShopifyAppInstallRequest);
29
- log.info('updateShopifyAppInstall', { response });
30
- return response;
31
- };
32
- getShopifyAppInstall = async (shopifyAppInstallId) => {
33
- const client = this.getClient();
34
- const response = await client.get(`/${shopifyAppInstallId}`);
35
- log.info('getShopifyAppInstall', { response });
36
- return response;
37
- };
38
- getShopifyAppInstallByShop = async (shop) => {
39
- const client = this.getClient();
40
- const response = await client.get(`/?shop=${shop}`);
41
- log.info('getShopifyAppInstallByShop', { response });
42
- return response;
43
- };
44
- }
1
+ import log from 'lambda-log';
2
+ import { axiosHttpService } from '../generic/http-client.js';
3
+ export class ShopifyAppInstallClient {
4
+ BASE_API_URL;
5
+ SHOPIFY_APP_INSTALL_API_KEY;
6
+ client;
7
+ constructor(baseApiUrl, shopifyAppInstallApiKey) {
8
+ this.BASE_API_URL = baseApiUrl;
9
+ this.SHOPIFY_APP_INSTALL_API_KEY = shopifyAppInstallApiKey;
10
+ }
11
+ getConfig = () => {
12
+ const SERVICE_API_ROOT_URL = `${this.BASE_API_URL}/shopify-app-installs`;
13
+ return {
14
+ baseURL: SERVICE_API_ROOT_URL,
15
+ headers: {
16
+ common: {
17
+ 'x-api-key': this.SHOPIFY_APP_INSTALL_API_KEY
18
+ }
19
+ }
20
+ };
21
+ };
22
+ getClient = () => {
23
+ this.client = this.client ?? axiosHttpService(this.getConfig());
24
+ return this.client;
25
+ };
26
+ updateShopifyAppInstall = async (shopifyAppInstallId, updateShopifyAppInstallRequest) => {
27
+ const client = this.getClient();
28
+ const response = await client.put(`/${shopifyAppInstallId}`, updateShopifyAppInstallRequest);
29
+ log.info('updateShopifyAppInstall', { response });
30
+ return response;
31
+ };
32
+ getShopifyAppInstall = async (shopifyAppInstallId) => {
33
+ const client = this.getClient();
34
+ const response = await client.get(`/${shopifyAppInstallId}`);
35
+ log.info('getShopifyAppInstall', { response });
36
+ return response;
37
+ };
38
+ getShopifyAppInstallByShop = async (shop) => {
39
+ const client = this.getClient();
40
+ const response = await client.get(`/?shop=${shop}`);
41
+ log.info('getShopifyAppInstallByShop', { response });
42
+ return response;
43
+ };
44
+ }
45
45
  //# sourceMappingURL=shopify-app-install-client.js.map
@@ -1,31 +1,31 @@
1
- import { User } from '@adtrackify/at-tracking-event-types';
2
- import { ApiResponse } from '../../types/api-response.js';
3
- export interface UserResponseData {
4
- user: User;
5
- [key: string]: any;
6
- }
7
- export interface UserSignupRequest {
8
- email: string;
9
- password: string;
10
- givenName: string;
11
- familyName: string;
12
- }
13
- export declare class UsersAuthClient {
14
- SERVICE_API_ROOT_URL: string;
15
- BASE_API_URL: string;
16
- USERS_AUTH_API_KEY: string;
17
- client: any;
18
- constructor(baseApiUrl: string, usersAuthApiKey?: string);
19
- getConfig: () => {
20
- baseURL: string;
21
- headers: {
22
- common: {};
23
- };
24
- };
25
- getClient: () => any;
26
- signupAndConfirmUser: (userSignupRequest: any) => Promise<any>;
27
- signupUser: (userSignupRequest: UserSignupRequest) => Promise<any>;
28
- adminConfirmUser: (email: string) => Promise<any>;
29
- getUserByEmail: (email: string) => Promise<ApiResponse<UserResponseData>>;
30
- getUser: (id: string) => Promise<any>;
31
- }
1
+ import { User } from '@adtrackify/at-tracking-event-types';
2
+ import { ApiResponse } from '../../types/api-response.js';
3
+ export interface UserResponseData {
4
+ user: User;
5
+ [key: string]: any;
6
+ }
7
+ export interface UserSignupRequest {
8
+ email: string;
9
+ password: string;
10
+ givenName: string;
11
+ familyName: string;
12
+ }
13
+ export declare class UsersAuthClient {
14
+ SERVICE_API_ROOT_URL: string;
15
+ BASE_API_URL: string;
16
+ USERS_AUTH_API_KEY: string;
17
+ client: any;
18
+ constructor(baseApiUrl: string, usersAuthApiKey?: string);
19
+ getConfig: () => {
20
+ baseURL: string;
21
+ headers: {
22
+ common: {};
23
+ };
24
+ };
25
+ getClient: () => any;
26
+ signupAndConfirmUser: (userSignupRequest: any) => Promise<any>;
27
+ signupUser: (userSignupRequest: UserSignupRequest) => Promise<any>;
28
+ adminConfirmUser: (email: string) => Promise<any>;
29
+ getUserByEmail: (email: string) => Promise<ApiResponse<UserResponseData>>;
30
+ getUser: (id: string) => Promise<any>;
31
+ }
@@ -1,89 +1,89 @@
1
- import { Logger } from '../../index.js';
2
- import { HttpError } from '../../libs/http-error.js';
3
- import { HttpStatusCodes } from '../../libs/http-status-codes.js';
4
- import { axiosHttpService } from '../generic/http-client.js';
5
- export class UsersAuthClient {
6
- SERVICE_API_ROOT_URL;
7
- BASE_API_URL;
8
- USERS_AUTH_API_KEY;
9
- client;
10
- constructor(baseApiUrl, usersAuthApiKey) {
11
- this.BASE_API_URL = baseApiUrl;
12
- this.USERS_AUTH_API_KEY = usersAuthApiKey;
13
- this.SERVICE_API_ROOT_URL = `${this.BASE_API_URL}/auth`;
14
- }
15
- getConfig = () => {
16
- return {
17
- baseURL: this.SERVICE_API_ROOT_URL,
18
- headers: {
19
- common: {}
20
- }
21
- };
22
- };
23
- getClient = () => {
24
- this.client = this.client ?? axiosHttpService(this.getConfig());
25
- return this.client;
26
- };
27
- signupAndConfirmUser = async (userSignupRequest) => {
28
- const user = await this.signupUser(userSignupRequest);
29
- await this.adminConfirmUser(user.email);
30
- return user;
31
- };
32
- signupUser = async (userSignupRequest) => {
33
- Logger.info('Attempting to signup user', { email: userSignupRequest.email });
34
- const client = this.getClient();
35
- const response = await client.post('/signup', userSignupRequest);
36
- if (response.status !== 200 || !response?.data?.user) {
37
- const message = 'User Signup Failed';
38
- Logger.error(message, { response });
39
- throw new HttpError(HttpStatusCodes.INTERNAL_SERVER_ERROR, message);
40
- }
41
- Logger.info('User Signup Successful', { response });
42
- return response.data.user;
43
- };
44
- adminConfirmUser = async (email) => {
45
- Logger.info('Attempting to admin confirm user', { email });
46
- const client = this.getClient();
47
- const response = await client.post('/admin/confirm', {
48
- email
49
- }, {
50
- headers: {
51
- 'x-api-key': this.USERS_AUTH_API_KEY
52
- }
53
- });
54
- if (response.status !== 200) {
55
- const message = 'Admin User Confirmation Failed';
56
- Logger.error(message, { response });
57
- throw new HttpError(HttpStatusCodes.INTERNAL_SERVER_ERROR, message);
58
- }
59
- Logger.info('Admin User Confirmation Successful', { response });
60
- return response;
61
- };
62
- getUserByEmail = async (email) => {
63
- const client = this.getClient();
64
- const getUserResponse = await client.get('/lookup', {
65
- headers: {
66
- 'x-api-key': this.USERS_AUTH_API_KEY
67
- },
68
- params: {
69
- email
70
- }
71
- });
72
- Logger.debug('getUserByEmail Response', { getUserResponse });
73
- return getUserResponse;
74
- };
75
- getUser = async (id) => {
76
- const client = this.getClient();
77
- const getUserResponse = await client.get('/', {
78
- headers: {
79
- 'x-api-key': this.USERS_AUTH_API_KEY
80
- },
81
- params: {
82
- id
83
- }
84
- });
85
- Logger.debug('getUser Response', { getUserResponse });
86
- return getUserResponse;
87
- };
88
- }
1
+ import { Logger } from '../../index.js';
2
+ import { HttpError } from '../../libs/http-error.js';
3
+ import { HttpStatusCodes } from '../../libs/http-status-codes.js';
4
+ import { axiosHttpService } from '../generic/http-client.js';
5
+ export class UsersAuthClient {
6
+ SERVICE_API_ROOT_URL;
7
+ BASE_API_URL;
8
+ USERS_AUTH_API_KEY;
9
+ client;
10
+ constructor(baseApiUrl, usersAuthApiKey) {
11
+ this.BASE_API_URL = baseApiUrl;
12
+ this.USERS_AUTH_API_KEY = usersAuthApiKey;
13
+ this.SERVICE_API_ROOT_URL = `${this.BASE_API_URL}/auth`;
14
+ }
15
+ getConfig = () => {
16
+ return {
17
+ baseURL: this.SERVICE_API_ROOT_URL,
18
+ headers: {
19
+ common: {}
20
+ }
21
+ };
22
+ };
23
+ getClient = () => {
24
+ this.client = this.client ?? axiosHttpService(this.getConfig());
25
+ return this.client;
26
+ };
27
+ signupAndConfirmUser = async (userSignupRequest) => {
28
+ const user = await this.signupUser(userSignupRequest);
29
+ await this.adminConfirmUser(user.email);
30
+ return user;
31
+ };
32
+ signupUser = async (userSignupRequest) => {
33
+ Logger.info('Attempting to signup user', { email: userSignupRequest.email });
34
+ const client = this.getClient();
35
+ const response = await client.post('/signup', userSignupRequest);
36
+ if (response.status !== 200 || !response?.data?.user) {
37
+ const message = 'User Signup Failed';
38
+ Logger.error(message, { response });
39
+ throw new HttpError(HttpStatusCodes.INTERNAL_SERVER_ERROR, message);
40
+ }
41
+ Logger.info('User Signup Successful', { response });
42
+ return response.data.user;
43
+ };
44
+ adminConfirmUser = async (email) => {
45
+ Logger.info('Attempting to admin confirm user', { email });
46
+ const client = this.getClient();
47
+ const response = await client.post('/admin/confirm', {
48
+ email
49
+ }, {
50
+ headers: {
51
+ 'x-api-key': this.USERS_AUTH_API_KEY
52
+ }
53
+ });
54
+ if (response.status !== 200) {
55
+ const message = 'Admin User Confirmation Failed';
56
+ Logger.error(message, { response });
57
+ throw new HttpError(HttpStatusCodes.INTERNAL_SERVER_ERROR, message);
58
+ }
59
+ Logger.info('Admin User Confirmation Successful', { response });
60
+ return response;
61
+ };
62
+ getUserByEmail = async (email) => {
63
+ const client = this.getClient();
64
+ const getUserResponse = await client.get('/lookup', {
65
+ headers: {
66
+ 'x-api-key': this.USERS_AUTH_API_KEY
67
+ },
68
+ params: {
69
+ email
70
+ }
71
+ });
72
+ Logger.debug('getUserByEmail Response', { getUserResponse });
73
+ return getUserResponse;
74
+ };
75
+ getUser = async (id) => {
76
+ const client = this.getClient();
77
+ const getUserResponse = await client.get('/', {
78
+ headers: {
79
+ 'x-api-key': this.USERS_AUTH_API_KEY
80
+ },
81
+ params: {
82
+ id
83
+ }
84
+ });
85
+ Logger.debug('getUser Response', { getUserResponse });
86
+ return getUserResponse;
87
+ };
88
+ }
89
89
  //# sourceMappingURL=users-auth-client.js.map
@@ -1 +1 @@
1
- export * from './shopify-client.js';
1
+ export * from './shopify-client.js';
@@ -1,2 +1,2 @@
1
- export * from './shopify-client.js';
1
+ export * from './shopify-client.js';
2
2
  //# sourceMappingURL=index.js.map