@spreeloop/orange_money 1.0.11 → 1.0.13

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 (157) hide show
  1. package/dist/index.d.ts +2 -0
  2. package/dist/index.d.ts.map +1 -0
  3. package/dist/index.js +18 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/src/disbursements/implementations/disbursement_service.d.ts +63 -0
  6. package/dist/src/disbursements/implementations/disbursement_service.d.ts.map +1 -0
  7. package/dist/src/disbursements/implementations/disbursement_service.js +84 -0
  8. package/dist/src/disbursements/implementations/disbursement_service.js.map +1 -0
  9. package/dist/src/disbursements/implementations/src/live.d.ts +40 -0
  10. package/dist/src/disbursements/implementations/src/live.d.ts.map +1 -0
  11. package/dist/src/disbursements/implementations/src/live.js +61 -0
  12. package/dist/src/disbursements/implementations/src/live.js.map +1 -0
  13. package/dist/src/disbursements/implementations/src/sandbox.d.ts +40 -0
  14. package/dist/src/disbursements/implementations/src/sandbox.d.ts.map +1 -0
  15. package/dist/src/disbursements/implementations/src/sandbox.js +110 -0
  16. package/dist/src/disbursements/implementations/src/sandbox.js.map +1 -0
  17. package/dist/src/disbursements/operations/create_access_token.d.ts +28 -0
  18. package/dist/src/disbursements/operations/create_access_token.d.ts.map +1 -0
  19. package/dist/src/disbursements/operations/create_access_token.js +45 -0
  20. package/dist/src/disbursements/operations/create_access_token.js.map +1 -0
  21. package/dist/src/disbursements/operations/create_access_token.spec.d.ts +2 -0
  22. package/dist/src/disbursements/operations/create_access_token.spec.d.ts.map +1 -0
  23. package/dist/src/disbursements/operations/create_access_token.spec.js +105 -0
  24. package/dist/src/disbursements/operations/create_access_token.spec.js.map +1 -0
  25. package/dist/src/disbursements/operations/get_transfer_status.d.ts +114 -0
  26. package/dist/src/disbursements/operations/get_transfer_status.d.ts.map +1 -0
  27. package/dist/src/disbursements/operations/get_transfer_status.js +128 -0
  28. package/dist/src/disbursements/operations/get_transfer_status.js.map +1 -0
  29. package/dist/src/disbursements/operations/get_transfer_status.spec.d.ts +2 -0
  30. package/dist/src/disbursements/operations/get_transfer_status.spec.d.ts.map +1 -0
  31. package/dist/src/disbursements/operations/get_transfer_status.spec.js +147 -0
  32. package/dist/src/disbursements/operations/get_transfer_status.spec.js.map +1 -0
  33. package/dist/src/disbursements/operations/transfer.d.ts +45 -0
  34. package/dist/src/disbursements/operations/transfer.d.ts.map +1 -0
  35. package/dist/src/disbursements/operations/transfer.js +74 -0
  36. package/dist/src/disbursements/operations/transfer.js.map +1 -0
  37. package/dist/src/disbursements/operations/transfer.spec.d.ts +2 -0
  38. package/dist/src/disbursements/operations/transfer.spec.d.ts.map +1 -0
  39. package/dist/src/disbursements/operations/transfer.spec.js +177 -0
  40. package/dist/src/disbursements/operations/transfer.spec.js.map +1 -0
  41. package/dist/src/disbursements/routes/routes.d.ts +38 -0
  42. package/dist/src/disbursements/routes/routes.d.ts.map +1 -0
  43. package/dist/src/disbursements/routes/routes.js +53 -0
  44. package/dist/src/disbursements/routes/routes.js.map +1 -0
  45. package/dist/src/disbursements/utils/constants.d.ts +5 -0
  46. package/dist/src/disbursements/utils/constants.d.ts.map +1 -0
  47. package/dist/src/disbursements/utils/constants.js +9 -0
  48. package/dist/src/disbursements/utils/constants.js.map +1 -0
  49. package/dist/src/disbursements/utils/regex.d.ts +9 -0
  50. package/dist/src/disbursements/utils/regex.d.ts.map +1 -0
  51. package/dist/src/disbursements/utils/regex.js +12 -0
  52. package/dist/src/disbursements/utils/regex.js.map +1 -0
  53. package/dist/src/disbursements/utils/regex.spec.d.ts +2 -0
  54. package/dist/src/disbursements/utils/regex.spec.d.ts.map +1 -0
  55. package/dist/src/disbursements/utils/regex.spec.js +32 -0
  56. package/dist/src/disbursements/utils/regex.spec.js.map +1 -0
  57. package/dist/src/disbursements/utils/status.d.ts +53 -0
  58. package/dist/src/disbursements/utils/status.d.ts.map +1 -0
  59. package/dist/src/disbursements/utils/status.js +58 -0
  60. package/dist/src/disbursements/utils/status.js.map +1 -0
  61. package/dist/src/disbursements/utils/utils.d.ts +9 -0
  62. package/dist/src/disbursements/utils/utils.d.ts.map +1 -0
  63. package/dist/src/disbursements/utils/utils.js +26 -0
  64. package/dist/src/disbursements/utils/utils.js.map +1 -0
  65. package/dist/src/disbursements/utils/utils.spec.d.ts +2 -0
  66. package/dist/src/disbursements/utils/utils.spec.d.ts.map +1 -0
  67. package/dist/src/disbursements/utils/utils.spec.js +43 -0
  68. package/dist/src/disbursements/utils/utils.spec.js.map +1 -0
  69. package/dist/src/index.d.ts +7 -0
  70. package/dist/src/index.d.ts.map +1 -0
  71. package/dist/src/index.js +15 -0
  72. package/dist/src/index.js.map +1 -0
  73. package/dist/src/payments/implementations/fake.d.ts +33 -0
  74. package/dist/src/payments/implementations/fake.d.ts.map +1 -0
  75. package/dist/src/payments/implementations/fake.js +110 -0
  76. package/dist/src/payments/implementations/fake.js.map +1 -0
  77. package/dist/src/payments/implementations/live.d.ts +45 -0
  78. package/dist/src/payments/implementations/live.d.ts.map +1 -0
  79. package/dist/src/payments/implementations/live.js +69 -0
  80. package/dist/src/payments/implementations/live.js.map +1 -0
  81. package/dist/src/payments/operations/get_access_token.d.ts +11 -0
  82. package/dist/src/payments/operations/get_access_token.d.ts.map +1 -0
  83. package/dist/src/payments/operations/get_access_token.js +47 -0
  84. package/dist/src/payments/operations/get_access_token.js.map +1 -0
  85. package/dist/src/payments/operations/get_access_token.spec.d.ts +2 -0
  86. package/dist/src/payments/operations/get_access_token.spec.d.ts.map +1 -0
  87. package/dist/src/payments/operations/get_access_token.spec.js +74 -0
  88. package/dist/src/payments/operations/get_access_token.spec.js.map +1 -0
  89. package/dist/src/payments/operations/get_pay_token.d.ts +12 -0
  90. package/dist/src/payments/operations/get_pay_token.d.ts.map +1 -0
  91. package/dist/src/payments/operations/get_pay_token.js +43 -0
  92. package/dist/src/payments/operations/get_pay_token.js.map +1 -0
  93. package/dist/src/payments/operations/get_pay_token.spec.d.ts +2 -0
  94. package/dist/src/payments/operations/get_pay_token.spec.d.ts.map +1 -0
  95. package/dist/src/payments/operations/get_pay_token.spec.js +74 -0
  96. package/dist/src/payments/operations/get_pay_token.spec.js.map +1 -0
  97. package/dist/src/payments/operations/get_payment_status.d.ts +23 -0
  98. package/dist/src/payments/operations/get_payment_status.d.ts.map +1 -0
  99. package/dist/src/payments/operations/get_payment_status.js +51 -0
  100. package/dist/src/payments/operations/get_payment_status.js.map +1 -0
  101. package/dist/src/payments/operations/get_payment_status.spec.d.ts +2 -0
  102. package/dist/src/payments/operations/get_payment_status.spec.d.ts.map +1 -0
  103. package/dist/src/payments/operations/get_payment_status.spec.js +101 -0
  104. package/dist/src/payments/operations/get_payment_status.spec.js.map +1 -0
  105. package/dist/src/payments/operations/initialize_om_payment.d.ts +22 -0
  106. package/dist/src/payments/operations/initialize_om_payment.d.ts.map +1 -0
  107. package/dist/src/payments/operations/initialize_om_payment.js +124 -0
  108. package/dist/src/payments/operations/initialize_om_payment.js.map +1 -0
  109. package/dist/src/payments/operations/initialize_om_payment.spec.d.ts +2 -0
  110. package/dist/src/payments/operations/initialize_om_payment.spec.d.ts.map +1 -0
  111. package/dist/src/payments/operations/initialize_om_payment.spec.js +245 -0
  112. package/dist/src/payments/operations/initialize_om_payment.spec.js.map +1 -0
  113. package/dist/src/payments/payments.d.ts +57 -0
  114. package/dist/src/payments/payments.d.ts.map +1 -0
  115. package/dist/src/payments/payments.js +36 -0
  116. package/dist/src/payments/payments.js.map +1 -0
  117. package/dist/src/payments/routes/routes.d.ts +48 -0
  118. package/dist/src/payments/routes/routes.d.ts.map +1 -0
  119. package/dist/src/payments/routes/routes.js +61 -0
  120. package/dist/src/payments/routes/routes.js.map +1 -0
  121. package/dist/src/payments/utils/constants.d.ts +96 -0
  122. package/dist/src/payments/utils/constants.d.ts.map +1 -0
  123. package/dist/src/payments/utils/constants.js +112 -0
  124. package/dist/src/payments/utils/constants.js.map +1 -0
  125. package/dist/src/payments/utils/joi_schema.d.ts +71 -0
  126. package/dist/src/payments/utils/joi_schema.d.ts.map +1 -0
  127. package/dist/src/payments/utils/joi_schema.js +44 -0
  128. package/dist/src/payments/utils/joi_schema.js.map +1 -0
  129. package/dist/src/payments/utils/request_model.d.ts +75 -0
  130. package/dist/src/payments/utils/request_model.d.ts.map +1 -0
  131. package/dist/src/payments/utils/request_model.js +3 -0
  132. package/dist/src/payments/utils/request_model.js.map +1 -0
  133. package/dist/src/payments/utils/utils.d.ts +15 -0
  134. package/dist/src/payments/utils/utils.d.ts.map +1 -0
  135. package/dist/src/payments/utils/utils.js +27 -0
  136. package/dist/src/payments/utils/utils.js.map +1 -0
  137. package/dist/src/utils/https.d.ts +77 -0
  138. package/dist/src/utils/https.d.ts.map +1 -0
  139. package/dist/src/utils/https.js +240 -0
  140. package/dist/src/utils/https.js.map +1 -0
  141. package/dist/src/utils/https.spec.d.ts +2 -0
  142. package/dist/src/utils/https.spec.d.ts.map +1 -0
  143. package/dist/src/utils/https.spec.js +77 -0
  144. package/dist/src/utils/https.spec.js.map +1 -0
  145. package/dist/src/utils/logging_interface.d.ts +23 -0
  146. package/dist/src/utils/logging_interface.d.ts.map +1 -0
  147. package/dist/src/utils/logging_interface.js +3 -0
  148. package/dist/src/utils/logging_interface.js.map +1 -0
  149. package/dist/src/utils/operation_response.d.ts +16 -0
  150. package/dist/src/utils/operation_response.d.ts.map +1 -0
  151. package/dist/src/utils/operation_response.js +3 -0
  152. package/dist/src/utils/operation_response.js.map +1 -0
  153. package/dist/src/utils/utils.d.ts +6 -0
  154. package/dist/src/utils/utils.d.ts.map +1 -0
  155. package/dist/src/utils/utils.js +10 -0
  156. package/dist/src/utils/utils.js.map +1 -0
  157. package/package.json +3 -3
@@ -0,0 +1,15 @@
1
+ import Joi from 'joi';
2
+ /**
3
+ * Checks if the data is valid type.
4
+ * @param {Record<string, unknown>} data .
5
+ * @param {Joi.PartialSchemaMap<T>} schema .
6
+ * @return {Record<string, unknown>}
7
+ */
8
+ export declare function validateData<T>(data: unknown, schema: Joi.ObjectSchema<T>): {
9
+ isValidData: true;
10
+ data: T;
11
+ } | {
12
+ isValidData: false;
13
+ message: string;
14
+ };
15
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/payments/utils/utils.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC5B,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,GAC1B;IAAE,WAAW,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,WAAW,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAmB1E"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateData = void 0;
4
+ /**
5
+ * Checks if the data is valid type.
6
+ * @param {Record<string, unknown>} data .
7
+ * @param {Joi.PartialSchemaMap<T>} schema .
8
+ * @return {Record<string, unknown>}
9
+ */
10
+ function validateData(data, schema) {
11
+ const { error, value } = schema.unknown(true).validate(data, {
12
+ abortEarly: false,
13
+ convert: false,
14
+ });
15
+ if (error) {
16
+ return {
17
+ isValidData: false,
18
+ message: JSON.stringify(error.details.map((e) => e.message), null, ' '),
19
+ };
20
+ }
21
+ return {
22
+ isValidData: true,
23
+ data: value,
24
+ };
25
+ }
26
+ exports.validateData = validateData;
27
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/payments/utils/utils.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AACH,SAAgB,YAAY,CAC1B,IAAa,EACb,MAA2B;IAE3B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE;QAC3D,UAAU,EAAE,KAAK;QACjB,OAAO,EAAE,KAAK;KACf,CAAC,CAAC;IACH,IAAI,KAAK,EAAE;QACT,OAAO;YACL,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE,IAAI,CAAC,SAAS,CACrB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EACnC,IAAI,EACJ,GAAG,CACJ;SACF,CAAC;KACH;IACD,OAAO;QACL,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,KAAK;KACZ,CAAC;AACJ,CAAC;AAtBD,oCAsBC"}
@@ -0,0 +1,77 @@
1
+ import { LoggerInterface } from './logging_interface';
2
+ export declare enum RequestStatusCode {
3
+ unauthorized = 401,
4
+ expectationFailed = 417
5
+ }
6
+ export declare type RequestResponse<T> = {
7
+ response?: {
8
+ data: T;
9
+ status: number;
10
+ };
11
+ error?: unknown;
12
+ };
13
+ /**
14
+ * Posts an http request to the given route.
15
+ * @param {Record<string, string | undefined> | string} data The data to be posted.
16
+ * @param {string} route The end point url.
17
+ * @param {Record<string, string>} headers The type content of request.
18
+ * @param {LoggerInterface} logger The logger to use when posting data.
19
+ * @return {Promise<unknown | undefined>} The server response.
20
+ */
21
+ export declare function postRequest<T>({ data, route, headers, logger, rejectUnauthorized, }: {
22
+ data?: Record<string, unknown> | string | null;
23
+ route: string;
24
+ logger: LoggerInterface;
25
+ headers?: Record<string, string>;
26
+ rejectUnauthorized?: boolean;
27
+ }): Promise<RequestResponse<T>>;
28
+ /**
29
+ * Gets an http request to the given route.
30
+ * @param {Record<string, string | undefined> | string} data The data to be posted.
31
+ * @param {string} route The end point url.
32
+ * @param {Record<string, string>} headers The type content of request.
33
+ * @param {LoggerInterface} logger The logger to use when getting data.
34
+ * @return {Promise<unknown | undefined>} The server response.
35
+ */
36
+ export declare function getRequest<T>({ data, route, headers, logger, rejectUnauthorized, }: {
37
+ data?: Record<string, string | undefined> | string;
38
+ route: string;
39
+ headers?: Record<string, string>;
40
+ logger: LoggerInterface;
41
+ rejectUnauthorized?: boolean;
42
+ }): Promise<RequestResponse<T>>;
43
+ /**
44
+ * Parses an Axios error and returns a modified error object.
45
+ *
46
+ * @param {unknown} error - The error object to be parsed.
47
+ * @return {unknown} The modified error object.
48
+ */
49
+ export declare function parseAxiosError(error: unknown): unknown;
50
+ /**
51
+ * Generates a hash using the given key and secret.
52
+ *
53
+ * @param {string} key - The key to be hashed.
54
+ * @param {string} secret - The secret to be hashed.
55
+ * @return {string} - The generated hash.
56
+ */
57
+ export declare function hash(key: string, secret: string): string;
58
+ /**
59
+ * Encode the body of the request.
60
+ * @param {Record<string, string>} bodyRequest the body request.
61
+ * @return {string} the encoded body request result.
62
+ */
63
+ export declare function encodeTheBodyOfRequest(bodyRequest: Record<string, string>): string;
64
+ export declare const encodeToBase64: (apiUsername: string, apiPassword: string) => string;
65
+ /**
66
+ * Encode the data to w3 x form encoded url.
67
+ * @param {Record<string, string>} data the data to encode.
68
+ * @return {string} the encoded value.
69
+ */
70
+ export declare function encodeDataToXFormUrl(data: Record<string, string>): string;
71
+ /**
72
+ * Checks if the code is a successful code response.
73
+ * @param {num} code .
74
+ * @return {boolean} true if the code is valid.
75
+ */
76
+ export declare const isSuccessfulCodeResponse: (code: number) => boolean;
77
+ //# sourceMappingURL=https.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"https.d.ts","sourceRoot":"","sources":["../../../src/utils/https.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,oBAAY,iBAAiB;IAC3B,YAAY,MAAM;IAClB,iBAAiB,MAAM;CACxB;AAED,oBAAY,eAAe,CAAC,CAAC,IAAI;IAC/B,QAAQ,CAAC,EAAE;QACT,IAAI,EAAE,CAAC,CAAC;QACR,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAAC,CAAC,EAAE,EACnC,IAAI,EACJ,KAAK,EACL,OAAO,EACP,MAAM,EACN,kBAAyB,GAC1B,EAAE;IACD,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAmD9B;AAED;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAAE,EAClC,IAAI,EACJ,KAAK,EACL,OAAO,EACP,MAAM,EACN,kBAAyB,GAC1B,EAAE;IACD,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,CAAC;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,EAAE,eAAe,CAAC;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAmD9B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CA2BvD;AAED;;;;;;GAMG;AACH,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAMxD;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAClC,MAAM,CAUR;AAGD,eAAO,MAAM,cAAc,gBACZ,MAAM,eACN,MAAM,KAClB,MAEF,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAUzE;AAED;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,SAAU,MAAM,KAAG,OAC7B,CAAC"}
@@ -0,0 +1,240 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.isSuccessfulCodeResponse = exports.encodeDataToXFormUrl = exports.encodeToBase64 = exports.encodeTheBodyOfRequest = exports.hash = exports.parseAxiosError = exports.getRequest = exports.postRequest = exports.RequestStatusCode = void 0;
30
+ const axios = __importStar(require("axios"));
31
+ const axios_1 = require("axios");
32
+ const base64url_1 = __importDefault(require("base64url"));
33
+ const https = __importStar(require("https"));
34
+ var RequestStatusCode;
35
+ (function (RequestStatusCode) {
36
+ RequestStatusCode[RequestStatusCode["unauthorized"] = 401] = "unauthorized";
37
+ RequestStatusCode[RequestStatusCode["expectationFailed"] = 417] = "expectationFailed";
38
+ })(RequestStatusCode = exports.RequestStatusCode || (exports.RequestStatusCode = {}));
39
+ /**
40
+ * Posts an http request to the given route.
41
+ * @param {Record<string, string | undefined> | string} data The data to be posted.
42
+ * @param {string} route The end point url.
43
+ * @param {Record<string, string>} headers The type content of request.
44
+ * @param {LoggerInterface} logger The logger to use when posting data.
45
+ * @return {Promise<unknown | undefined>} The server response.
46
+ */
47
+ async function postRequest({ data, route, headers, logger, rejectUnauthorized = true, }) {
48
+ try {
49
+ logger.info(`Request on the route ${route} is running with data : ${JSON.stringify({
50
+ headers,
51
+ data,
52
+ route,
53
+ })}`);
54
+ const agent = new https.Agent({
55
+ rejectUnauthorized: rejectUnauthorized,
56
+ });
57
+ const response = await axios.default({
58
+ method: 'post',
59
+ url: route,
60
+ headers: headers,
61
+ data: data,
62
+ httpsAgent: agent,
63
+ });
64
+ logger.info(`Request on the route ${route} completed successfully with data : ${JSON.stringify({
65
+ response: response.data,
66
+ status: response.status,
67
+ statusText: response.statusText,
68
+ })}`);
69
+ return { response: { data: response.data, status: response.status } };
70
+ }
71
+ catch (error) {
72
+ logger.warn(`[Axios] failed to post request on the route: ${route} with data : ${JSON.stringify({ headers, data, route })}`);
73
+ const parsedError = parseAxiosError(error);
74
+ logger.warn(JSON.stringify(error));
75
+ if (error instanceof axios_1.AxiosError) {
76
+ if (error.response) {
77
+ return {
78
+ response: {
79
+ status: error.response.status,
80
+ data: error.response.data,
81
+ },
82
+ error: parsedError,
83
+ };
84
+ }
85
+ }
86
+ return { error: parsedError };
87
+ }
88
+ }
89
+ exports.postRequest = postRequest;
90
+ /**
91
+ * Gets an http request to the given route.
92
+ * @param {Record<string, string | undefined> | string} data The data to be posted.
93
+ * @param {string} route The end point url.
94
+ * @param {Record<string, string>} headers The type content of request.
95
+ * @param {LoggerInterface} logger The logger to use when getting data.
96
+ * @return {Promise<unknown | undefined>} The server response.
97
+ */
98
+ async function getRequest({ data, route, headers, logger, rejectUnauthorized = true, }) {
99
+ try {
100
+ logger.info(`Request on the route ${route} is running with data : ${JSON.stringify({
101
+ headers,
102
+ data,
103
+ route,
104
+ })}`);
105
+ const agent = new https.Agent({
106
+ rejectUnauthorized: rejectUnauthorized,
107
+ });
108
+ const response = await axios.default({
109
+ method: 'get',
110
+ url: route,
111
+ headers: headers,
112
+ data: data,
113
+ httpsAgent: agent,
114
+ });
115
+ logger.info(`Request on the route ${route} completed successfully with data : ${JSON.stringify({
116
+ response: response.data,
117
+ status: response.status,
118
+ statusText: response.statusText,
119
+ })}`);
120
+ return { response: { data: response.data, status: response.status } };
121
+ }
122
+ catch (error) {
123
+ logger.warn(`[Axios] failed to get request on the route: ${route} with data : ${JSON.stringify({ headers, data, route })}`);
124
+ const parsedError = parseAxiosError(error);
125
+ logger.warn(JSON.stringify(error));
126
+ if (error instanceof axios_1.AxiosError) {
127
+ if (error.response) {
128
+ return {
129
+ response: {
130
+ status: error.response.status,
131
+ data: error.response.data,
132
+ },
133
+ error: parsedError,
134
+ };
135
+ }
136
+ }
137
+ return { error: parsedError };
138
+ }
139
+ }
140
+ exports.getRequest = getRequest;
141
+ /**
142
+ * Parses an Axios error and returns a modified error object.
143
+ *
144
+ * @param {unknown} error - The error object to be parsed.
145
+ * @return {unknown} The modified error object.
146
+ */
147
+ function parseAxiosError(error) {
148
+ var _a, _b;
149
+ let err = error;
150
+ if (error instanceof axios_1.AxiosError) {
151
+ if (error.response) {
152
+ err = {
153
+ responseError: {
154
+ data: error.response.data,
155
+ status: error.response.status,
156
+ statusText: error.response.statusText,
157
+ headers: error.response.headers,
158
+ },
159
+ requestBody: error.request.body,
160
+ };
161
+ }
162
+ else if (error.request) {
163
+ err = {
164
+ requestFailed: {
165
+ headers: (_a = error.config) === null || _a === void 0 ? void 0 : _a.headers,
166
+ data: (_b = error.config) === null || _b === void 0 ? void 0 : _b.data,
167
+ },
168
+ };
169
+ }
170
+ else {
171
+ err = {
172
+ configFailed: error.message,
173
+ };
174
+ }
175
+ }
176
+ return err;
177
+ }
178
+ exports.parseAxiosError = parseAxiosError;
179
+ /**
180
+ * Generates a hash using the given key and secret.
181
+ *
182
+ * @param {string} key - The key to be hashed.
183
+ * @param {string} secret - The secret to be hashed.
184
+ * @return {string} - The generated hash.
185
+ */
186
+ function hash(key, secret) {
187
+ const toHash = `${key}:${secret}`;
188
+ if (!global.btoa) {
189
+ return Buffer.from(toHash).toString('base64');
190
+ }
191
+ return global.btoa(toHash);
192
+ }
193
+ exports.hash = hash;
194
+ /**
195
+ * Encode the body of the request.
196
+ * @param {Record<string, string>} bodyRequest the body request.
197
+ * @return {string} the encoded body request result.
198
+ */
199
+ function encodeTheBodyOfRequest(bodyRequest) {
200
+ const formBody = [];
201
+ for (const key in bodyRequest) {
202
+ if ({}.hasOwnProperty.call(bodyRequest, key)) {
203
+ const encodedKey = encodeURIComponent(key);
204
+ const encodedValue = encodeURIComponent(bodyRequest[key]);
205
+ formBody.push(encodedKey + '=' + encodedValue);
206
+ }
207
+ }
208
+ return formBody.join('&');
209
+ }
210
+ exports.encodeTheBodyOfRequest = encodeTheBodyOfRequest;
211
+ // Encode to base64
212
+ const encodeToBase64 = (apiUsername, apiPassword) => {
213
+ return (0, base64url_1.default)(`${apiUsername}:${apiPassword}`);
214
+ };
215
+ exports.encodeToBase64 = encodeToBase64;
216
+ /**
217
+ * Encode the data to w3 x form encoded url.
218
+ * @param {Record<string, string>} data the data to encode.
219
+ * @return {string} the encoded value.
220
+ */
221
+ function encodeDataToXFormUrl(data) {
222
+ const segments = [];
223
+ for (const key in data) {
224
+ if (Object.hasOwnProperty.call(data, key)) {
225
+ const encodedKey = encodeURIComponent(key);
226
+ const encodedValue = encodeURIComponent(data[key]);
227
+ segments.push(`${encodedKey}=${encodedValue}`);
228
+ }
229
+ }
230
+ return segments.join('&');
231
+ }
232
+ exports.encodeDataToXFormUrl = encodeDataToXFormUrl;
233
+ /**
234
+ * Checks if the code is a successful code response.
235
+ * @param {num} code .
236
+ * @return {boolean} true if the code is valid.
237
+ */
238
+ const isSuccessfulCodeResponse = (code) => code >= 200 && code < 300;
239
+ exports.isSuccessfulCodeResponse = isSuccessfulCodeResponse;
240
+ //# sourceMappingURL=https.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"https.js","sourceRoot":"","sources":["../../../src/utils/https.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,iCAAmC;AACnC,0DAAkC;AAClC,6CAA+B;AAG/B,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,2EAAkB,CAAA;IAClB,qFAAuB,CAAA;AACzB,CAAC,EAHW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAG5B;AAUD;;;;;;;GAOG;AACI,KAAK,UAAU,WAAW,CAAI,EACnC,IAAI,EACJ,KAAK,EACL,OAAO,EACP,MAAM,EACN,kBAAkB,GAAG,IAAI,GAO1B;IACC,IAAI;QACF,MAAM,CAAC,IAAI,CACT,wBAAwB,KAAK,2BAA2B,IAAI,CAAC,SAAS,CAAC;YACrE,OAAO;YACP,IAAI;YACJ,KAAK;SACN,CAAC,EAAE,CACL,CAAC;QACF,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC;YAC5B,kBAAkB,EAAE,kBAAkB;SACvC,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC;YACnC,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,KAAK;YACV,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,IAAI;YACV,UAAU,EAAE,KAAK;SAClB,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CACT,wBAAwB,KAAK,uCAAuC,IAAI,CAAC,SAAS,CAChF;YACE,QAAQ,EAAE,QAAQ,CAAC,IAAI;YACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;SAChC,CACF,EAAE,CACJ,CAAC;QACF,OAAO,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;KACvE;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,IAAI,CACT,gDAAgD,KAAK,gBAAgB,IAAI,CAAC,SAAS,CACjF,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CACzB,EAAE,CACJ,CAAC;QACF,MAAM,WAAW,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QACnC,IAAI,KAAK,YAAY,kBAAU,EAAE;YAC/B,IAAI,KAAK,CAAC,QAAQ,EAAE;gBAClB,OAAO;oBACL,QAAQ,EAAE;wBACR,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;wBAC7B,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;qBAC1B;oBACD,KAAK,EAAE,WAAW;iBACnB,CAAC;aACH;SACF;QAED,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;KAC/B;AACH,CAAC;AA/DD,kCA+DC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,UAAU,CAAI,EAClC,IAAI,EACJ,KAAK,EACL,OAAO,EACP,MAAM,EACN,kBAAkB,GAAG,IAAI,GAO1B;IACC,IAAI;QACF,MAAM,CAAC,IAAI,CACT,wBAAwB,KAAK,2BAA2B,IAAI,CAAC,SAAS,CAAC;YACrE,OAAO;YACP,IAAI;YACJ,KAAK;SACN,CAAC,EAAE,CACL,CAAC;QACF,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC;YAC5B,kBAAkB,EAAE,kBAAkB;SACvC,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC;YACnC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,KAAK;YACV,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,IAAI;YACV,UAAU,EAAE,KAAK;SAClB,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CACT,wBAAwB,KAAK,uCAAuC,IAAI,CAAC,SAAS,CAChF;YACE,QAAQ,EAAE,QAAQ,CAAC,IAAI;YACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;SAChC,CACF,EAAE,CACJ,CAAC;QACF,OAAO,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;KACvE;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,IAAI,CACT,+CAA+C,KAAK,gBAAgB,IAAI,CAAC,SAAS,CAChF,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CACzB,EAAE,CACJ,CAAC;QACF,MAAM,WAAW,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QACnC,IAAI,KAAK,YAAY,kBAAU,EAAE;YAC/B,IAAI,KAAK,CAAC,QAAQ,EAAE;gBAClB,OAAO;oBACL,QAAQ,EAAE;wBACR,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;wBAC7B,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;qBAC1B;oBACD,KAAK,EAAE,WAAW;iBACnB,CAAC;aACH;SACF;QAED,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;KAC/B;AACH,CAAC;AA/DD,gCA+DC;AAED;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,KAAc;;IAC5C,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI,KAAK,YAAY,kBAAU,EAAE;QAC/B,IAAI,KAAK,CAAC,QAAQ,EAAE;YAClB,GAAG,GAAG;gBACJ,aAAa,EAAE;oBACb,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;oBACzB,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;oBAC7B,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,UAAU;oBACrC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO;iBAChC;gBACD,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;aAChC,CAAC;SACH;aAAM,IAAI,KAAK,CAAC,OAAO,EAAE;YACxB,GAAG,GAAG;gBACJ,aAAa,EAAE;oBACb,OAAO,EAAE,MAAA,KAAK,CAAC,MAAM,0CAAE,OAAO;oBAC9B,IAAI,EAAE,MAAA,KAAK,CAAC,MAAM,0CAAE,IAAI;iBACzB;aACF,CAAC;SACH;aAAM;YACL,GAAG,GAAG;gBACJ,YAAY,EAAE,KAAK,CAAC,OAAO;aAC5B,CAAC;SACH;KACF;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AA3BD,0CA2BC;AAED;;;;;;GAMG;AACH,SAAgB,IAAI,CAAC,GAAW,EAAE,MAAc;IAC9C,MAAM,MAAM,GAAG,GAAG,GAAG,IAAI,MAAM,EAAE,CAAC;IAClC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;QAChB,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;KAC/C;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC7B,CAAC;AAND,oBAMC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB,CACpC,WAAmC;IAEnC,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE;QAC7B,IAAI,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE;YAC5C,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;YAC3C,MAAM,YAAY,GAAG,kBAAkB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1D,QAAQ,CAAC,IAAI,CAAC,UAAU,GAAG,GAAG,GAAG,YAAY,CAAC,CAAC;SAChD;KACF;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5B,CAAC;AAZD,wDAYC;AAED,mBAAmB;AACZ,MAAM,cAAc,GAAG,CAC5B,WAAmB,EACnB,WAAmB,EACX,EAAE;IACV,OAAO,IAAA,mBAAS,EAAC,GAAG,WAAW,IAAI,WAAW,EAAE,CAAC,CAAC;AACpD,CAAC,CAAC;AALW,QAAA,cAAc,kBAKzB;AAEF;;;;GAIG;AACH,SAAgB,oBAAoB,CAAC,IAA4B;IAC/D,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;QACtB,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE;YACzC,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;YAC3C,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YACnD,QAAQ,CAAC,IAAI,CAAC,GAAG,UAAU,IAAI,YAAY,EAAE,CAAC,CAAC;SAChD;KACF;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5B,CAAC;AAVD,oDAUC;AAED;;;;GAIG;AACI,MAAM,wBAAwB,GAAG,CAAC,IAAY,EAAW,EAAE,CAChE,IAAI,IAAI,GAAG,IAAI,IAAI,GAAG,GAAG,CAAC;AADf,QAAA,wBAAwB,4BACT"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=https.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"https.spec.d.ts","sourceRoot":"","sources":["../../../src/utils/https.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const https_1 = require("./https");
4
+ const axios_1 = require("axios");
5
+ describe('hash', () => {
6
+ const btoaRef = global.btoa;
7
+ it('should still Hash if the btao function is not available', () => {
8
+ global.btoa = undefined;
9
+ const hashResponse = (0, https_1.hash)('key', 'secret');
10
+ expect(hashResponse).toBe('a2V5OnNlY3JldA==');
11
+ global.btoa = btoaRef;
12
+ });
13
+ });
14
+ describe('parseAxiosError', () => {
15
+ it('should return initial obj if not instance of axios error', () => {
16
+ const initialObj = { key: 'ERROR_100' };
17
+ const parsedResponse = (0, https_1.parseAxiosError)(initialObj);
18
+ expect(parsedResponse).toBe(initialObj);
19
+ });
20
+ it('should have the configuration failed message when config failed', () => {
21
+ const message = 'configuration failed';
22
+ const parsedResponse = (0, https_1.parseAxiosError)(new axios_1.AxiosError(message));
23
+ expect(parsedResponse).toEqual({
24
+ configFailed: message,
25
+ });
26
+ });
27
+ it('should return request failed when axios is unable to send the request.', () => {
28
+ const request = {
29
+ headers: {
30
+ 'Content-Type': 'application/json',
31
+ },
32
+ };
33
+ const parsedResponse = (0, https_1.parseAxiosError)(new axios_1.AxiosError('message', '400', undefined, request));
34
+ expect(parsedResponse).toEqual({
35
+ requestFailed: { data: undefined, headers: undefined },
36
+ });
37
+ });
38
+ it('should return response error when the request response fail to be retrieve.', () => {
39
+ const request = {
40
+ headers: {
41
+ 'Content-Type': 'application/json',
42
+ },
43
+ body: '',
44
+ };
45
+ const response = {
46
+ data: '',
47
+ status: 201,
48
+ statusText: 'created',
49
+ headers: {},
50
+ request: request,
51
+ };
52
+ const parsedResponse = (0, https_1.parseAxiosError)(new axios_1.AxiosError('message', '400', undefined, request, response));
53
+ expect(parsedResponse).toEqual({
54
+ responseError: {
55
+ data: response.data,
56
+ status: response.status,
57
+ statusText: response.statusText,
58
+ headers: response.headers,
59
+ },
60
+ requestBody: request.body,
61
+ });
62
+ });
63
+ });
64
+ describe('Test the utils function', () => {
65
+ it('Generate the base 64 encoding', async () => {
66
+ const value = (0, https_1.encodeToBase64)('123', '123');
67
+ expect(value).toEqual('MTIzOjEyMw');
68
+ });
69
+ it('encode the body request', async () => {
70
+ const body = {
71
+ amount: '123',
72
+ };
73
+ const value = (0, https_1.encodeTheBodyOfRequest)(body);
74
+ expect(value).toEqual('amount=123');
75
+ });
76
+ });
77
+ //# sourceMappingURL=https.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"https.spec.js","sourceRoot":"","sources":["../../../src/utils/https.spec.ts"],"names":[],"mappings":";;AAAA,mCAKiB;AACjB,iCAAkD;AAElD,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;IACpB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;IAC5B,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,CAAC,IAAI,GAAG,SAAsC,CAAC;QACrD,MAAM,YAAY,GAAG,IAAA,YAAI,EAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC3C,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC9C,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC;IACxB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,UAAU,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC;QACxC,MAAM,cAAc,GAAG,IAAA,uBAAe,EAAC,UAAU,CAAC,CAAC;QACnD,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACzE,MAAM,OAAO,GAAG,sBAAsB,CAAC;QACvC,MAAM,cAAc,GAAG,IAAA,uBAAe,EACpC,IAAI,kBAAU,CAAC,OAAO,CAAuC,CAC9D,CAAC;QACF,MAAM,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC;YAC7B,YAAY,EAAE,OAAO;SACtB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QAChF,MAAM,OAAO,GAAG;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAC;QACF,MAAM,cAAc,GAAG,IAAA,uBAAe,EACpC,IAAI,kBAAU,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAGlD,CACF,CAAC;QACF,MAAM,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC;YAC7B,aAAa,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE;SACvD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6EAA6E,EAAE,GAAG,EAAE;QACrF,MAAM,OAAO,GAAG;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,EAAE;SACT,CAAC;QACF,MAAM,QAAQ,GAAkB;YAC9B,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,GAAG;YACX,UAAU,EAAE,SAAS;YACrB,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,OAAO;SACjB,CAAC;QAEF,MAAM,cAAc,GAAG,IAAA,uBAAe,EACpC,IAAI,kBAAU,CACZ,SAAS,EACT,KAAK,EACL,SAAS,EACT,OAAO,EACP,QAAQ,CAC6B,CACxC,CAAC;QACF,MAAM,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC;YAC7B,aAAa,EAAE;gBACb,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,OAAO,EAAE,QAAQ,CAAC,OAAO;aAC1B;YACD,WAAW,EAAE,OAAO,CAAC,IAAI;SAC1B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,KAAK,GAAG,IAAA,sBAAc,EAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3C,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;QACvC,MAAM,IAAI,GAAG;YACX,MAAM,EAAE,KAAK;SACd,CAAC;QACF,MAAM,KAAK,GAAG,IAAA,8BAAsB,EAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,23 @@
1
+ export interface LoggerInterface {
2
+ /**
3
+ * Logs a debug level message.
4
+ * @param {string[]} args
5
+ */
6
+ log(...args: string[]): void;
7
+ /**
8
+ * Logs an info level message.
9
+ * @param {string[]} args
10
+ */
11
+ info(...args: string[]): void;
12
+ /**
13
+ * Logs a waning level message.
14
+ * @param {string[]} args
15
+ */
16
+ warn(...args: string[]): void;
17
+ /**
18
+ * Logs an error level message.
19
+ * @param {string[]} args
20
+ */
21
+ error(...args: string[]): void;
22
+ }
23
+ //# sourceMappingURL=logging_interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging_interface.d.ts","sourceRoot":"","sources":["../../../src/utils/logging_interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,GAAG,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAE7B;;;OAGG;IACH,IAAI,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAE9B;;;OAGG;IACH,IAAI,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAE9B;;;OAGG;IACH,KAAK,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAChC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=logging_interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging_interface.js","sourceRoot":"","sources":["../../../src/utils/logging_interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Data return to user when requesting an operation.
3
+ */
4
+ export declare type OperationResponse<T, T2 = unknown, R = unknown> = Promise<SuccessfulOperationResponse<T, T2> | FailedOperationResponse<R>>;
5
+ declare type SuccessfulOperationResponse<T, T2 = unknown> = {
6
+ data: T;
7
+ raw: T2;
8
+ error?: never;
9
+ };
10
+ declare type FailedOperationResponse<R = unknown> = {
11
+ data?: never;
12
+ raw?: unknown;
13
+ error: R;
14
+ };
15
+ export {};
16
+ //# sourceMappingURL=operation_response.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation_response.d.ts","sourceRoot":"","sources":["../../../src/utils/operation_response.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,iBAAiB,CAAC,CAAC,EAAE,EAAE,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO,IAAI,OAAO,CACnE,2BAA2B,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAChE,CAAC;AACF,aAAK,2BAA2B,CAAC,CAAC,EAAE,EAAE,GAAG,OAAO,IAAI;IAClD,IAAI,EAAE,CAAC,CAAC;IACR,GAAG,EAAE,EAAE,CAAC;IACR,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF,aAAK,uBAAuB,CAAC,CAAC,GAAG,OAAO,IAAI;IAC1C,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,CAAC,CAAC;CACV,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=operation_response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation_response.js","sourceRoot":"","sources":["../../../src/utils/operation_response.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ export declare enum TargetEnvironment {
2
+ sandbox = "dev",
3
+ prod = "prod",
4
+ fake = "fake"
5
+ }
6
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/utils/utils.ts"],"names":[],"mappings":"AAAA,oBAAY,iBAAiB;IAC3B,OAAO,QAAQ;IACf,IAAI,SAAS;IACb,IAAI,SAAS;CACd"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TargetEnvironment = void 0;
4
+ var TargetEnvironment;
5
+ (function (TargetEnvironment) {
6
+ TargetEnvironment["sandbox"] = "dev";
7
+ TargetEnvironment["prod"] = "prod";
8
+ TargetEnvironment["fake"] = "fake";
9
+ })(TargetEnvironment = exports.TargetEnvironment || (exports.TargetEnvironment = {}));
10
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/utils/utils.ts"],"names":[],"mappings":";;;AAAA,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,oCAAe,CAAA;IACf,kCAAa,CAAA;IACb,kCAAa,CAAA;AACf,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B"}
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@spreeloop/orange_money",
3
- "version": "1.0.11",
3
+ "version": "1.0.13",
4
4
  "description": "A orange money api integration package",
5
5
  "repository": {
6
6
  "type": "git",
7
- "url": "https://github.com/spreeloop/core-ts"
7
+ "url": "git+https://github.com/spreeloop/core-ts.git"
8
8
  },
9
9
  "homepage": "https://github.com/spreeloop/core-ts/tree/master/orange_money",
10
10
  "author": "Spreeloop",
@@ -58,4 +58,4 @@
58
58
  "base64url": "^3.0.1",
59
59
  "joi": "^17.9.2"
60
60
  }
61
- }
61
+ }