@maxkabechani/mtn-momo-sdk 0.2.2 → 1.0.0

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 (101) hide show
  1. package/MIGRATION.md +79 -0
  2. package/README.md +68 -5
  3. package/lib/cjs/auth.d.ts +2 -2
  4. package/lib/cjs/auth.d.ts.map +1 -1
  5. package/lib/cjs/auth.js +31 -11
  6. package/lib/cjs/auth.js.map +1 -1
  7. package/lib/cjs/cli.js +5 -2
  8. package/lib/cjs/cli.js.map +1 -1
  9. package/lib/cjs/client.d.ts +3 -3
  10. package/lib/cjs/client.d.ts.map +1 -1
  11. package/lib/cjs/client.js +15 -7
  12. package/lib/cjs/client.js.map +1 -1
  13. package/lib/cjs/collections.d.ts +6 -5
  14. package/lib/cjs/collections.d.ts.map +1 -1
  15. package/lib/cjs/collections.js +45 -25
  16. package/lib/cjs/collections.js.map +1 -1
  17. package/lib/cjs/common.d.ts +13 -4
  18. package/lib/cjs/common.d.ts.map +1 -1
  19. package/lib/cjs/common.js.map +1 -1
  20. package/lib/cjs/disbursements.d.ts +7 -10
  21. package/lib/cjs/disbursements.d.ts.map +1 -1
  22. package/lib/cjs/disbursements.js +46 -31
  23. package/lib/cjs/disbursements.js.map +1 -1
  24. package/lib/cjs/errors.d.ts +15 -6
  25. package/lib/cjs/errors.d.ts.map +1 -1
  26. package/lib/cjs/errors.js +33 -23
  27. package/lib/cjs/errors.js.map +1 -1
  28. package/lib/cjs/httpClient.d.ts +50 -17
  29. package/lib/cjs/httpClient.d.ts.map +1 -1
  30. package/lib/cjs/httpClient.js +276 -78
  31. package/lib/cjs/httpClient.js.map +1 -1
  32. package/lib/cjs/index.d.ts +12 -11
  33. package/lib/cjs/index.d.ts.map +1 -1
  34. package/lib/cjs/index.js +30 -28
  35. package/lib/cjs/index.js.map +1 -1
  36. package/lib/cjs/remittance.d.ts +5 -5
  37. package/lib/cjs/remittance.d.ts.map +1 -1
  38. package/lib/cjs/remittance.js +58 -41
  39. package/lib/cjs/remittance.js.map +1 -1
  40. package/lib/cjs/security.d.ts +32 -0
  41. package/lib/cjs/security.d.ts.map +1 -0
  42. package/lib/cjs/security.js +253 -0
  43. package/lib/cjs/security.js.map +1 -0
  44. package/lib/cjs/users.d.ts +5 -3
  45. package/lib/cjs/users.d.ts.map +1 -1
  46. package/lib/cjs/users.js +17 -6
  47. package/lib/cjs/users.js.map +1 -1
  48. package/lib/cjs/validate.d.ts +7 -7
  49. package/lib/cjs/validate.d.ts.map +1 -1
  50. package/lib/cjs/validate.js +67 -84
  51. package/lib/cjs/validate.js.map +1 -1
  52. package/lib/esm/auth.d.ts +2 -2
  53. package/lib/esm/auth.d.ts.map +1 -1
  54. package/lib/esm/auth.js +28 -8
  55. package/lib/esm/auth.js.map +1 -1
  56. package/lib/esm/cli.js +5 -2
  57. package/lib/esm/cli.js.map +1 -1
  58. package/lib/esm/client.d.ts +3 -3
  59. package/lib/esm/client.d.ts.map +1 -1
  60. package/lib/esm/client.js +14 -6
  61. package/lib/esm/client.js.map +1 -1
  62. package/lib/esm/collections.d.ts +6 -5
  63. package/lib/esm/collections.d.ts.map +1 -1
  64. package/lib/esm/collections.js +38 -18
  65. package/lib/esm/collections.js.map +1 -1
  66. package/lib/esm/common.d.ts +13 -4
  67. package/lib/esm/common.d.ts.map +1 -1
  68. package/lib/esm/common.js.map +1 -1
  69. package/lib/esm/disbursements.d.ts +7 -10
  70. package/lib/esm/disbursements.d.ts.map +1 -1
  71. package/lib/esm/disbursements.js +34 -19
  72. package/lib/esm/disbursements.js.map +1 -1
  73. package/lib/esm/errors.d.ts +15 -6
  74. package/lib/esm/errors.d.ts.map +1 -1
  75. package/lib/esm/errors.js +16 -6
  76. package/lib/esm/errors.js.map +1 -1
  77. package/lib/esm/httpClient.d.ts +50 -17
  78. package/lib/esm/httpClient.d.ts.map +1 -1
  79. package/lib/esm/httpClient.js +271 -77
  80. package/lib/esm/httpClient.js.map +1 -1
  81. package/lib/esm/index.d.ts +12 -11
  82. package/lib/esm/index.d.ts.map +1 -1
  83. package/lib/esm/index.js +12 -11
  84. package/lib/esm/index.js.map +1 -1
  85. package/lib/esm/remittance.d.ts +5 -5
  86. package/lib/esm/remittance.d.ts.map +1 -1
  87. package/lib/esm/remittance.js +52 -35
  88. package/lib/esm/remittance.js.map +1 -1
  89. package/lib/esm/security.d.ts +32 -0
  90. package/lib/esm/security.d.ts.map +1 -0
  91. package/lib/esm/security.js +234 -0
  92. package/lib/esm/security.js.map +1 -0
  93. package/lib/esm/users.d.ts +5 -3
  94. package/lib/esm/users.d.ts.map +1 -1
  95. package/lib/esm/users.js +17 -6
  96. package/lib/esm/users.js.map +1 -1
  97. package/lib/esm/validate.d.ts +7 -7
  98. package/lib/esm/validate.d.ts.map +1 -1
  99. package/lib/esm/validate.js +66 -84
  100. package/lib/esm/validate.js.map +1 -1
  101. package/package.json +23 -5
@@ -2,32 +2,63 @@ export interface RequestConfig {
2
2
  baseURL?: string;
3
3
  headers?: Record<string, string>;
4
4
  timeout?: number;
5
- data?: any;
5
+ maxResponseBytes?: number;
6
+ data?: unknown;
6
7
  params?: Record<string, string>;
8
+ signal?: AbortSignal;
7
9
  }
8
10
  export interface InternalRequestConfig extends RequestConfig {
9
11
  url: string;
10
12
  method: string;
11
13
  }
12
- export interface FetchResponse<T = any> {
14
+ export interface SafeRequestSummary {
15
+ method: string;
16
+ url: string;
17
+ timeout: number;
18
+ }
19
+ export interface FetchResponse<T = unknown> {
13
20
  data: T;
14
21
  status: number;
15
22
  statusText: string;
16
23
  headers: Record<string, string>;
17
- config: InternalRequestConfig;
24
+ config: SafeRequestSummary;
25
+ }
26
+ interface HttpClientErrorOptions {
27
+ status?: number;
28
+ providerCode?: string;
29
+ providerMessage?: string;
30
+ retryable?: boolean;
31
+ causeName?: string;
32
+ secrets?: string[];
18
33
  }
19
34
  export declare class HttpClientError extends Error {
20
- config: InternalRequestConfig;
21
- request?: any;
22
- response?: FetchResponse;
23
- constructor(message: string, config: InternalRequestConfig, response?: FetchResponse);
35
+ readonly config: SafeRequestSummary;
36
+ readonly status?: number;
37
+ readonly providerCode?: string;
38
+ readonly providerMessage?: string;
39
+ readonly retryable: boolean;
40
+ readonly causeName?: string;
41
+ constructor(message: string, config: SafeRequestSummary, options?: HttpClientErrorOptions);
42
+ toJSON(): Record<string, unknown>;
43
+ }
44
+ export declare class RequestTimeoutError extends HttpClientError {
45
+ readonly name = "RequestTimeoutError";
46
+ }
47
+ export declare class RequestAbortedError extends HttpClientError {
48
+ readonly name = "RequestAbortedError";
49
+ }
50
+ export declare class UnexpectedRedirectError extends HttpClientError {
51
+ readonly name = "UnexpectedRedirectError";
52
+ }
53
+ export declare class ResponseSizeLimitError extends HttpClientError {
54
+ readonly name = "ResponseSizeLimitError";
24
55
  }
25
56
  declare class InterceptorManagerImpl<V> {
26
57
  handlers: {
27
58
  onFulfilled: ((value: V) => V | Promise<V>) | null;
28
- onRejected: ((error: any) => any) | null;
59
+ onRejected: ((error: unknown) => unknown) | null;
29
60
  }[];
30
- use(onFulfilled?: ((value: V) => V | Promise<V>) | null, onRejected?: ((error: any) => any) | null): number;
61
+ use(onFulfilled?: ((value: V) => V | Promise<V>) | null, onRejected?: ((error: unknown) => unknown) | null): number;
31
62
  eject(id: number): void;
32
63
  }
33
64
  export interface HttpClientDefaults {
@@ -36,21 +67,23 @@ export interface HttpClientDefaults {
36
67
  common: Record<string, string>;
37
68
  [key: string]: Record<string, string> | string | undefined;
38
69
  };
39
- timeout?: number;
70
+ timeout: number;
71
+ maxResponseBytes: number;
40
72
  }
41
73
  export declare class HttpClient {
42
74
  defaults: HttpClientDefaults;
43
75
  interceptors: {
44
76
  request: InterceptorManagerImpl<InternalRequestConfig>;
45
- response: InterceptorManagerImpl<FetchResponse<any>>;
77
+ response: InterceptorManagerImpl<FetchResponse<unknown>>;
46
78
  };
47
79
  constructor(config?: RequestConfig);
48
- request<T = any>(config: InternalRequestConfig): Promise<FetchResponse<T>>;
49
- get<T = any>(url: string, config?: RequestConfig): Promise<FetchResponse<T>>;
50
- post<T = any>(url: string, data?: any, config?: RequestConfig): Promise<FetchResponse<T>>;
51
- put<T = any>(url: string, data?: any, config?: RequestConfig): Promise<FetchResponse<T>>;
52
- delete<T = any>(url: string, config?: RequestConfig): Promise<FetchResponse<T>>;
53
- patch<T = any>(url: string, data?: any, config?: RequestConfig): Promise<FetchResponse<T>>;
80
+ request<T = unknown>(config: InternalRequestConfig): Promise<FetchResponse<T>>;
81
+ get<T = unknown>(url: string, config?: RequestConfig): Promise<FetchResponse<T>>;
82
+ post<T = unknown>(url: string, data?: unknown, config?: RequestConfig): Promise<FetchResponse<T>>;
83
+ put<T = unknown>(url: string, data?: unknown, config?: RequestConfig): Promise<FetchResponse<T>>;
84
+ delete<T = unknown>(url: string, config?: RequestConfig): Promise<FetchResponse<T>>;
85
+ patch<T = unknown>(url: string, data?: unknown, config?: RequestConfig): Promise<FetchResponse<T>>;
86
+ private runRejectedInterceptors;
54
87
  }
55
88
  export declare function createHttpClient(config?: RequestConfig): HttpClient;
56
89
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"httpClient.d.ts","sourceRoot":"","sources":["../../src/httpClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"httpClient.d.ts","sourceRoot":"","sources":["../../src/httpClient.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,56 @@
1
+ import { DEFAULT_MAX_RESPONSE_BYTES, DEFAULT_TIMEOUT_MS, redactSensitiveText, redactUrl, } from "./security.js";
1
2
  export class HttpClientError extends Error {
2
- constructor(message, config, response) {
3
- super(message);
3
+ constructor(message, config, options = {}) {
4
+ super(redactValues(message, options.secrets));
4
5
  this.name = "HttpClientError";
5
- this.config = config;
6
- this.response = response;
6
+ this.config = Object.freeze({ ...config });
7
+ this.status = options.status;
8
+ this.providerCode = options.providerCode;
9
+ this.retryable = options.retryable ?? false;
10
+ this.causeName = options.causeName;
11
+ if (options.providerMessage) {
12
+ Object.defineProperty(this, "providerMessage", {
13
+ value: redactValues(options.providerMessage, options.secrets),
14
+ enumerable: false,
15
+ writable: false,
16
+ });
17
+ }
18
+ Object.setPrototypeOf(this, new.target.prototype);
19
+ }
20
+ toJSON() {
21
+ return {
22
+ name: this.name,
23
+ message: this.message,
24
+ config: this.config,
25
+ status: this.status,
26
+ providerCode: this.providerCode,
27
+ retryable: this.retryable,
28
+ causeName: this.causeName,
29
+ };
30
+ }
31
+ }
32
+ export class RequestTimeoutError extends HttpClientError {
33
+ constructor() {
34
+ super(...arguments);
35
+ this.name = "RequestTimeoutError";
36
+ }
37
+ }
38
+ export class RequestAbortedError extends HttpClientError {
39
+ constructor() {
40
+ super(...arguments);
41
+ this.name = "RequestAbortedError";
42
+ }
43
+ }
44
+ export class UnexpectedRedirectError extends HttpClientError {
45
+ constructor() {
46
+ super(...arguments);
47
+ this.name = "UnexpectedRedirectError";
48
+ }
49
+ }
50
+ export class ResponseSizeLimitError extends HttpClientError {
51
+ constructor() {
52
+ super(...arguments);
53
+ this.name = "ResponseSizeLimitError";
7
54
  }
8
55
  }
9
56
  class InterceptorManagerImpl {
@@ -27,6 +74,8 @@ export class HttpClient {
27
74
  constructor(config) {
28
75
  this.defaults = {
29
76
  headers: { common: {} },
77
+ timeout: DEFAULT_TIMEOUT_MS,
78
+ maxResponseBytes: DEFAULT_MAX_RESPONSE_BYTES,
30
79
  };
31
80
  this.interceptors = {
32
81
  request: new InterceptorManagerImpl(),
@@ -38,129 +87,171 @@ export class HttpClient {
38
87
  if (config?.headers) {
39
88
  this.defaults.headers.common = { ...config.headers };
40
89
  }
90
+ if (config?.timeout !== undefined) {
91
+ this.defaults.timeout = config.timeout;
92
+ }
93
+ if (config?.maxResponseBytes !== undefined) {
94
+ this.defaults.maxResponseBytes = config.maxResponseBytes;
95
+ }
41
96
  }
42
97
  async request(config) {
43
- let currentConfig = { ...config };
44
- // Set base URL
98
+ let currentConfig = {
99
+ ...config,
100
+ headers: { ...config.headers },
101
+ };
45
102
  if (this.defaults.baseURL &&
46
103
  currentConfig.url &&
47
- !currentConfig.url.startsWith("http")) {
48
- const baseUrl = this.defaults.baseURL.endsWith("/")
49
- ? this.defaults.baseURL.substring(0, this.defaults.baseURL.length - 1)
50
- : this.defaults.baseURL;
104
+ !/^https?:\/\//i.test(currentConfig.url)) {
105
+ const baseUrl = this.defaults.baseURL.replace(/\/+$/, "");
51
106
  const urlPath = currentConfig.url.startsWith("/")
52
107
  ? currentConfig.url
53
108
  : `/${currentConfig.url}`;
54
109
  currentConfig.url = baseUrl + urlPath;
55
110
  }
56
- // Merge headers
57
111
  currentConfig.headers = {
58
112
  ...this.defaults.headers.common,
59
113
  ...currentConfig.headers,
60
114
  };
61
- // Run request interceptors
115
+ currentConfig.timeout = currentConfig.timeout ?? this.defaults.timeout;
116
+ currentConfig.maxResponseBytes =
117
+ currentConfig.maxResponseBytes ?? this.defaults.maxResponseBytes;
62
118
  for (const interceptor of this.interceptors.request.handlers) {
63
119
  if (interceptor?.onFulfilled) {
64
120
  currentConfig = await interceptor.onFulfilled(currentConfig);
65
121
  }
66
122
  }
67
- const { url, method, data, timeout } = currentConfig;
123
+ const summary = safeRequestSummary(currentConfig);
68
124
  const fetchOptions = {
69
- method: method || "GET",
125
+ method: currentConfig.method || "GET",
70
126
  headers: currentConfig.headers,
127
+ redirect: "manual",
71
128
  };
72
- if (data !== undefined) {
73
- if (typeof data === "string") {
74
- fetchOptions.body = data;
75
- }
76
- else if (data instanceof URLSearchParams) {
77
- fetchOptions.body = data;
129
+ if (currentConfig.data !== undefined) {
130
+ if (typeof currentConfig.data === "string" ||
131
+ currentConfig.data instanceof URLSearchParams) {
132
+ fetchOptions.body = currentConfig.data;
78
133
  }
79
134
  else {
80
- fetchOptions.body = JSON.stringify(data);
81
- if (!fetchOptions.headers["Content-Type"]) {
135
+ fetchOptions.body = JSON.stringify(currentConfig.data);
136
+ if (!hasHeader(fetchOptions.headers, "content-type")) {
82
137
  fetchOptions.headers["Content-Type"] =
83
138
  "application/json";
84
139
  }
85
140
  }
86
141
  }
87
- let timer;
88
- if (timeout) {
89
- const controller = new AbortController();
90
- fetchOptions.signal = controller.signal;
91
- timer = setTimeout(() => controller.abort(), timeout);
142
+ const controller = new AbortController();
143
+ let timedOut = false;
144
+ const timeout = currentConfig.timeout ?? DEFAULT_TIMEOUT_MS;
145
+ const timer = setTimeout(() => {
146
+ timedOut = true;
147
+ controller.abort();
148
+ }, timeout);
149
+ const abortFromCaller = () => controller.abort(currentConfig.signal?.reason);
150
+ if (currentConfig.signal) {
151
+ if (currentConfig.signal.aborted) {
152
+ abortFromCaller();
153
+ }
154
+ else {
155
+ currentConfig.signal.addEventListener("abort", abortFromCaller, {
156
+ once: true,
157
+ });
158
+ }
92
159
  }
160
+ fetchOptions.signal = controller.signal;
161
+ const cleanupAbortState = () => {
162
+ clearTimeout(timer);
163
+ currentConfig.signal?.removeEventListener("abort", abortFromCaller);
164
+ };
93
165
  let response;
94
166
  try {
95
- response = await fetch(url, fetchOptions);
96
- }
97
- catch (e) {
98
- let error = new HttpClientError(e.message, currentConfig);
99
- // Run response reject interceptors for network errors
100
- for (const interceptor of this.interceptors.response.handlers) {
101
- if (interceptor?.onRejected) {
102
- try {
103
- await interceptor.onRejected(error);
104
- }
105
- catch (interceptedError) {
106
- error = interceptedError;
107
- }
108
- }
109
- }
110
- throw error;
167
+ response = await fetch(currentConfig.url, fetchOptions);
111
168
  }
112
- finally {
113
- if (timer)
114
- clearTimeout(timer);
169
+ catch (cause) {
170
+ const causeError = cause instanceof Error ? cause : new Error(String(cause));
171
+ const error = timedOut
172
+ ? new RequestTimeoutError("Request timed out", summary, {
173
+ retryable: true,
174
+ causeName: causeError.name,
175
+ })
176
+ : currentConfig.signal?.aborted
177
+ ? new RequestAbortedError("Request was aborted", summary, {
178
+ retryable: false,
179
+ causeName: causeError.name,
180
+ })
181
+ : new HttpClientError("Network request failed", summary, {
182
+ retryable: true,
183
+ causeName: causeError.name,
184
+ });
185
+ cleanupAbortState();
186
+ throw await this.runRejectedInterceptors(error);
187
+ }
188
+ if (response.status >= 300 && response.status < 400) {
189
+ const error = new UnexpectedRedirectError("Unexpected redirect response", summary, { status: response.status, retryable: false });
190
+ cleanupAbortState();
191
+ throw await this.runRejectedInterceptors(error);
115
192
  }
116
193
  const responseHeaders = {};
117
194
  response.headers.forEach((value, key) => {
118
195
  responseHeaders[key] = value;
119
196
  });
120
- let responseData = null;
121
- let responseText = await response.text();
122
- const contentType = response.headers.get("content-type");
123
- if (responseText) {
124
- if (contentType && contentType.includes("application/json")) {
125
- try {
126
- responseData = JSON.parse(responseText);
127
- }
128
- catch (e) {
129
- responseData = responseText;
130
- }
131
- }
132
- else {
133
- responseData = responseText;
197
+ let responseText;
198
+ try {
199
+ responseText = await readResponseText(response, currentConfig.maxResponseBytes ?? DEFAULT_MAX_RESPONSE_BYTES, summary);
200
+ }
201
+ catch (error) {
202
+ cleanupAbortState();
203
+ if (error instanceof ResponseSizeLimitError) {
204
+ throw await this.runRejectedInterceptors(error);
134
205
  }
206
+ const causeError = error instanceof Error ? error : new Error(String(error));
207
+ const safeError = timedOut
208
+ ? new RequestTimeoutError("Request timed out", summary, {
209
+ retryable: true,
210
+ causeName: causeError.name,
211
+ })
212
+ : currentConfig.signal?.aborted
213
+ ? new RequestAbortedError("Request was aborted", summary, {
214
+ retryable: false,
215
+ causeName: causeError.name,
216
+ })
217
+ : new HttpClientError("Failed to read response body", summary, {
218
+ status: response.status,
219
+ retryable: true,
220
+ causeName: causeError.name,
221
+ });
222
+ throw await this.runRejectedInterceptors(safeError);
135
223
  }
136
- let fetchResponse = {
224
+ cleanupAbortState();
225
+ const responseData = parseResponseBody(responseText, response.headers.get("content-type"));
226
+ const fetchResponse = {
137
227
  data: responseData,
138
228
  status: response.status,
139
229
  statusText: response.statusText,
140
230
  headers: responseHeaders,
141
- config: currentConfig,
231
+ config: summary,
142
232
  };
143
233
  if (!response.ok) {
144
- let error = new HttpClientError(`Request failed with status code ${response.status}`, currentConfig, fetchResponse);
145
- for (const interceptor of this.interceptors.response.handlers) {
146
- if (interceptor?.onRejected) {
147
- try {
148
- await interceptor.onRejected(error);
149
- }
150
- catch (e) {
151
- error = e;
152
- }
153
- }
154
- }
155
- throw error;
234
+ const body = responseData && typeof responseData === "object"
235
+ ? responseData
236
+ : {};
237
+ const providerCode = typeof body.code === "string" ? body.code : undefined;
238
+ const providerMessage = typeof body.message === "string" ? body.message : undefined;
239
+ const error = new HttpClientError(`Request failed with status code ${response.status}`, summary, {
240
+ status: response.status,
241
+ providerCode,
242
+ providerMessage,
243
+ retryable: response.status === 429 || response.status >= 500,
244
+ secrets: sensitiveHeaderValues(currentConfig.headers),
245
+ });
246
+ throw await this.runRejectedInterceptors(error);
156
247
  }
157
- // Run response fulfil interceptors
248
+ let interceptedResponse = fetchResponse;
158
249
  for (const interceptor of this.interceptors.response.handlers) {
159
250
  if (interceptor?.onFulfilled) {
160
- fetchResponse = await interceptor.onFulfilled(fetchResponse);
251
+ interceptedResponse = await interceptor.onFulfilled(interceptedResponse);
161
252
  }
162
253
  }
163
- return fetchResponse;
254
+ return interceptedResponse;
164
255
  }
165
256
  get(url, config) {
166
257
  return this.request({ ...config, url, method: "GET" });
@@ -177,6 +268,109 @@ export class HttpClient {
177
268
  patch(url, data, config) {
178
269
  return this.request({ ...config, url, method: "PATCH", data });
179
270
  }
271
+ async runRejectedInterceptors(error) {
272
+ let currentError = error;
273
+ for (const interceptor of this.interceptors.response.handlers) {
274
+ if (interceptor?.onRejected) {
275
+ try {
276
+ await interceptor.onRejected(currentError);
277
+ }
278
+ catch (interceptedError) {
279
+ currentError =
280
+ interceptedError instanceof Error
281
+ ? interceptedError
282
+ : new Error(String(interceptedError));
283
+ }
284
+ }
285
+ }
286
+ return currentError;
287
+ }
288
+ }
289
+ function safeRequestSummary(config) {
290
+ return Object.freeze({
291
+ method: config.method || "GET",
292
+ url: redactUrl(config.url),
293
+ timeout: config.timeout ?? DEFAULT_TIMEOUT_MS,
294
+ });
295
+ }
296
+ function hasHeader(headers, name) {
297
+ if (!headers)
298
+ return false;
299
+ const expected = name.toLowerCase();
300
+ if (headers instanceof Headers)
301
+ return headers.has(name);
302
+ if (Array.isArray(headers)) {
303
+ return headers.some(([key]) => key.toLowerCase() === expected);
304
+ }
305
+ return Object.keys(headers).some((key) => key.toLowerCase() === expected);
306
+ }
307
+ async function readResponseText(response, limit, summary) {
308
+ const declaredLength = Number(response.headers.get("content-length"));
309
+ if (Number.isFinite(declaredLength) && declaredLength > limit) {
310
+ throw new ResponseSizeLimitError("Response body exceeded the configured size limit", summary);
311
+ }
312
+ if (!response.body) {
313
+ return "";
314
+ }
315
+ const reader = response.body.getReader();
316
+ const chunks = [];
317
+ let total = 0;
318
+ while (true) {
319
+ const { done, value } = await reader.read();
320
+ if (done)
321
+ break;
322
+ if (!value)
323
+ continue;
324
+ total += value.byteLength;
325
+ if (total > limit) {
326
+ await reader.cancel();
327
+ throw new ResponseSizeLimitError("Response body exceeded the configured size limit", summary);
328
+ }
329
+ chunks.push(value);
330
+ }
331
+ const body = new Uint8Array(total);
332
+ let offset = 0;
333
+ for (const chunk of chunks) {
334
+ body.set(chunk, offset);
335
+ offset += chunk.byteLength;
336
+ }
337
+ return new TextDecoder().decode(body);
338
+ }
339
+ function parseResponseBody(responseText, contentType) {
340
+ if (!responseText)
341
+ return null;
342
+ if (contentType?.includes("application/json")) {
343
+ try {
344
+ return JSON.parse(responseText);
345
+ }
346
+ catch {
347
+ return responseText;
348
+ }
349
+ }
350
+ return responseText;
351
+ }
352
+ function sensitiveHeaderValues(headers) {
353
+ if (!headers)
354
+ return [];
355
+ const sensitiveNames = new Set([
356
+ "authorization",
357
+ "ocp-apim-subscription-key",
358
+ "cookie",
359
+ "set-cookie",
360
+ "x-api-key",
361
+ "api-key",
362
+ ]);
363
+ return Object.entries(headers)
364
+ .filter(([name]) => sensitiveNames.has(name.toLowerCase()))
365
+ .map(([, value]) => value)
366
+ .filter(Boolean);
367
+ }
368
+ function redactValues(value, secrets = []) {
369
+ let redacted = redactSensitiveText(value);
370
+ for (const secret of secrets) {
371
+ redacted = redacted.split(secret).join("[redacted]");
372
+ }
373
+ return redacted;
180
374
  }
181
375
  export function createHttpClient(config) {
182
376
  return new HttpClient(config);
@@ -1 +1 @@
1
- {"version":3,"file":"httpClient.js","sourceRoot":"","sources":["../../src/httpClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"httpClient.js","sourceRoot":"","sources":["../../src/httpClient.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,15 @@
1
- export type { Payment, PaymentRequest } from "./collections";
2
- export type { Transfer, TransferRequest } from "./disbursements";
3
- export type { Withdrawal, WithdrawalRequest, Deposit, DepositRequest, Refund, RefundRequest, CashTransfer, CashTransferRequest, } from "./common";
4
- export * from "./errors";
5
- export { PartyIdType as PayerType, TransactionStatus as Status, Environment, } from "./common";
6
- export type { ApiUserInfo, Party as Payer, Balance, FailureReason, GlobalConfig, ProductConfig, BasicUserInfo, BcAuthorizeRequest, BcAuthorizeResponse, OAuth2TokenRequest, OAuth2TokenResponse, ConsentKycResponse, DeliveryNotification, } from "./common";
7
- import Collections from "./collections";
8
- import Disbursements from "./disbursements";
9
- import Remittance from "./remittance";
10
- import Users from "./users";
11
- import type { GlobalConfig, ProductConfig, SubscriptionConfig } from "./common";
1
+ export type { Payment, PaymentRequest } from "./collections.js";
2
+ export type { Transfer, TransferRequest } from "./disbursements.js";
3
+ export type { Withdrawal, WithdrawalRequest, Deposit, DepositRequest, Refund, RefundRequest, CashTransfer, CashTransferRequest, } from "./common.js";
4
+ export * from "./errors.js";
5
+ export { generateReferenceId, type FinancialOperationOptions, } from "./security.js";
6
+ export { PartyIdType as PayerType, TransactionStatus as Status, Environment, } from "./common.js";
7
+ export type { ApiUserInfo, Party as Payer, Balance, FailureReason, GlobalConfig, ProductConfig, BasicUserInfo, BcAuthorizeRequest, BcAuthorizeResponse, OAuth2TokenRequest, OAuth2TokenResponse, ConsentKycResponse, DeliveryNotification, } from "./common.js";
8
+ import Collections from "./collections.js";
9
+ import Disbursements from "./disbursements.js";
10
+ import Remittance from "./remittance.js";
11
+ import Users from "./users.js";
12
+ import type { GlobalConfig, ProductConfig, SubscriptionConfig } from "./common.js";
12
13
  export interface MomoClient {
13
14
  Collections(productConfig: ProductConfig): Collections;
14
15
  Disbursements(productConfig: ProductConfig): Disbursements;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC7D,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACjE,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,OAAO,EACP,cAAc,EACd,MAAM,EACN,aAAa,EACb,YAAY,EACZ,mBAAmB,GACpB,MAAM,UAAU,CAAC;AAClB,cAAc,UAAU,CAAC;AACzB,OAAO,EACL,WAAW,IAAI,SAAS,EACxB,iBAAiB,IAAI,MAAM,EAC3B,WAAW,GACZ,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,WAAW,EACX,KAAK,IAAI,KAAK,EACd,OAAO,EACP,aAAa,EACb,YAAY,EACZ,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,UAAU,CAAC;AAIlB,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,MAAM,SAAS,CAAC;AAgB5B,OAAO,KAAK,EAEV,YAAY,EACZ,aAAa,EACb,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,UAAU;IACzB,WAAW,CAAC,aAAa,EAAE,aAAa,GAAG,WAAW,CAAC;IACvD,aAAa,CAAC,aAAa,EAAE,aAAa,GAAG,aAAa,CAAC;IAC3D,UAAU,CAAC,aAAa,EAAE,aAAa,GAAG,UAAU,CAAC;IACrD,KAAK,CAAC,YAAY,EAAE,kBAAkB,GAAG,KAAK,CAAC;CAChD;AAOD;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,YAAY,EAAE,YAAY,GAAG,UAAU,CAoE7D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAChE,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACpE,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,OAAO,EACP,cAAc,EACd,MAAM,EACN,aAAa,EACb,YAAY,EACZ,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,mBAAmB,EACnB,KAAK,yBAAyB,GAC/B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,WAAW,IAAI,SAAS,EACxB,iBAAiB,IAAI,MAAM,EAC3B,WAAW,GACZ,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,WAAW,EACX,KAAK,IAAI,KAAK,EACd,OAAO,EACP,aAAa,EACb,YAAY,EACZ,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAIrB,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,KAAK,MAAM,YAAY,CAAC;AAgB/B,OAAO,KAAK,EAEV,YAAY,EACZ,aAAa,EACb,kBAAkB,EACnB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,UAAU;IACzB,WAAW,CAAC,aAAa,EAAE,aAAa,GAAG,WAAW,CAAC;IACvD,aAAa,CAAC,aAAa,EAAE,aAAa,GAAG,aAAa,CAAC;IAC3D,UAAU,CAAC,aAAa,EAAE,aAAa,GAAG,UAAU,CAAC;IACrD,KAAK,CAAC,YAAY,EAAE,kBAAkB,GAAG,KAAK,CAAC;CAChD;AAOD;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,YAAY,EAAE,YAAY,GAAG,UAAU,CAoE7D"}