@medipass/web-sdk 12.11.1 → 12.11.2-feature-axios-to-fetch.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 (103) hide show
  1. package/jest.setup.js +8 -5
  2. package/lib/__mocks__/axios.mock.d.ts +2 -2
  3. package/lib/index.d.ts +16 -16
  4. package/lib/index.js +4 -3
  5. package/lib/resources/abr.js +3 -3
  6. package/lib/resources/accounts.js +3 -3
  7. package/lib/resources/actions.js +3 -3
  8. package/lib/resources/aged-care.js +3 -3
  9. package/lib/resources/api-keys.js +3 -3
  10. package/lib/resources/applePay.js +3 -3
  11. package/lib/resources/applications.js +3 -3
  12. package/lib/resources/attachments.js +3 -3
  13. package/lib/resources/auth.js +3 -3
  14. package/lib/resources/blacklist.js +3 -3
  15. package/lib/resources/bulk-submits.js +3 -3
  16. package/lib/resources/bulk-uploads.js +3 -3
  17. package/lib/resources/business-email-log.js +3 -3
  18. package/lib/resources/business-profiles.js +3 -3
  19. package/lib/resources/businesses.js +3 -3
  20. package/lib/resources/claim-items.js +3 -3
  21. package/lib/resources/devices.js +3 -3
  22. package/lib/resources/doc-accounts.js +3 -3
  23. package/lib/resources/documents.js +3 -3
  24. package/lib/resources/emails.js +3 -3
  25. package/lib/resources/filter-options.js +3 -3
  26. package/lib/resources/form-application-templates.js +3 -3
  27. package/lib/resources/form-applications.js +3 -3
  28. package/lib/resources/forms.js +3 -3
  29. package/lib/resources/funder-services.js +3 -3
  30. package/lib/resources/funder-settings.js +3 -3
  31. package/lib/resources/funder-values.js +3 -3
  32. package/lib/resources/funders.js +3 -3
  33. package/lib/resources/futures.js +3 -3
  34. package/lib/resources/health-fund-accounts.js +3 -3
  35. package/lib/resources/health-fund-settings.js +3 -3
  36. package/lib/resources/healthfunds.js +3 -3
  37. package/lib/resources/icare.js +3 -3
  38. package/lib/resources/icditems.js +3 -3
  39. package/lib/resources/invoice-scans.js +3 -3
  40. package/lib/resources/jhcs.js +3 -3
  41. package/lib/resources/kyc.js +3 -3
  42. package/lib/resources/logs.js +3 -3
  43. package/lib/resources/members.js +3 -3
  44. package/lib/resources/message-mappings.js +3 -3
  45. package/lib/resources/minions.js +3 -3
  46. package/lib/resources/modalities.js +3 -3
  47. package/lib/resources/notes.js +3 -3
  48. package/lib/resources/onboarding-applications.js +3 -3
  49. package/lib/resources/onboarding-requests.js +3 -3
  50. package/lib/resources/ops.js +3 -3
  51. package/lib/resources/organisations.js +3 -3
  52. package/lib/resources/partners.js +3 -3
  53. package/lib/resources/patients.js +3 -3
  54. package/lib/resources/payments.js +3 -3
  55. package/lib/resources/pms.js +3 -3
  56. package/lib/resources/practice-profiles.js +3 -3
  57. package/lib/resources/practice-types.js +3 -3
  58. package/lib/resources/practices.js +3 -3
  59. package/lib/resources/products.js +3 -3
  60. package/lib/resources/professional-categories.js +3 -3
  61. package/lib/resources/provider-number-types.js +3 -3
  62. package/lib/resources/provider-registration-types.js +3 -3
  63. package/lib/resources/provider-requests.js +3 -3
  64. package/lib/resources/provider-types.js +3 -3
  65. package/lib/resources/qbe.js +3 -3
  66. package/lib/resources/ref-sources.js +3 -3
  67. package/lib/resources/risk.js +3 -3
  68. package/lib/resources/rnas.js +3 -3
  69. package/lib/resources/roles.js +3 -3
  70. package/lib/resources/s3-files.js +3 -3
  71. package/lib/resources/self-checkout-sessions.js +3 -3
  72. package/lib/resources/services.js +3 -3
  73. package/lib/resources/settlements.js +3 -3
  74. package/lib/resources/sign-up.js +3 -3
  75. package/lib/resources/specialties.js +3 -3
  76. package/lib/resources/staff-profiles.js +3 -3
  77. package/lib/resources/staff.js +3 -3
  78. package/lib/resources/statistics.js +3 -3
  79. package/lib/resources/subscriptions.js +3 -3
  80. package/lib/resources/terminals.js +3 -3
  81. package/lib/resources/transaction-export.js +3 -3
  82. package/lib/resources/transaction-reports.js +3 -3
  83. package/lib/resources/transactions.js +3 -3
  84. package/lib/resources/triggers.js +3 -3
  85. package/lib/resources/vendors.js +3 -3
  86. package/lib/resources/verify.js +3 -3
  87. package/lib/resources/workers.js +3 -3
  88. package/lib/resources/workflow-exceptions.js +3 -3
  89. package/lib/services/aws.js +3 -3
  90. package/lib/services/version.js +3 -3
  91. package/lib/{staff-d7246b15.js → staff-b353f63a.js} +268 -308
  92. package/lib/types/index.d.ts +1 -0
  93. package/lib/types/index.js +5 -0
  94. package/lib/utils/application.js +3 -3
  95. package/lib/utils/get-http-error.d.ts +12 -0
  96. package/lib/utils/get-http-error.js +22 -0
  97. package/lib/utils/http-client.d.ts +68 -0
  98. package/lib/utils/http-client.js +414 -0
  99. package/lib/utils/professions.js +3 -3
  100. package/lib/utils/request.d.ts +1 -1
  101. package/lib/utils/request.js +3 -3
  102. package/lib/utils/staff.js +3 -3
  103. package/package.json +3 -4
@@ -1,3 +1,4 @@
1
+ export * from '../utils/http-client';
1
2
  export * from './abr';
2
3
  export * from './application';
3
4
  export * from './blacklist-bank-account';
@@ -2,10 +2,15 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var utils_httpClient = require('../utils/http-client.js');
5
6
  var types_documents = require('./documents.js');
6
7
  var types_filterOption = require('./filter-option.js');
8
+ require('@babel/runtime/regenerator');
9
+ require('@babel/runtime/helpers/defineProperty');
10
+ require('@babel/runtime/helpers/asyncToGenerator');
7
11
 
8
12
 
9
13
 
14
+ exports.createHttpClient = utils_httpClient.createHttpClient;
10
15
  exports.HealthPointApplicationStatus = types_documents.HealthPointApplicationStatus;
11
16
  exports.FilterGroup = types_filterOption.FilterGroup;
@@ -4,16 +4,16 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('@babel/runtime/regenerator');
6
6
  require('@babel/runtime/helpers/asyncToGenerator');
7
- var utils_request = require('../staff-d7246b15.js');
7
+ var utils_request = require('../staff-b353f63a.js');
8
8
  require('@babel/runtime/helpers/defineProperty');
9
9
  require('lodash/merge');
10
10
  require('lodash/uniq');
11
- require('axios');
11
+ require('./http-client.js');
12
12
  require('date-fns/differenceInSeconds');
13
13
  require('jwt-decode');
14
14
  require('lodash/forOwn');
15
15
  require('lodash/get');
16
- require('./get-axios-error.js');
16
+ require('./get-http-error.js');
17
17
  require('./does-param-exist.js');
18
18
  require('./param-error.js');
19
19
  require('@babel/runtime/helpers/inheritsLoose');
@@ -0,0 +1,12 @@
1
+ import type { HttpClientError, HttpClientResponse } from './http-client';
2
+ /**
3
+ * Extracts a standardized error response from an HttpClientError.
4
+ * Maintains backwards compatibility with the axios error structure.
5
+ *
6
+ * @param error - The HTTP client error
7
+ * @returns The response object if available, or a message-only object for network errors
8
+ */
9
+ declare const getHttpError: (error: HttpClientError) => HttpClientResponse | {
10
+ message: string;
11
+ };
12
+ export default getHttpError;
@@ -0,0 +1,22 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ /**
6
+ * Extracts a standardized error response from an HttpClientError.
7
+ * Maintains backwards compatibility with the axios error structure.
8
+ *
9
+ * @param error - The HTTP client error
10
+ * @returns The response object if available, or a message-only object for network errors
11
+ */
12
+ var getHttpError = function getHttpError(error) {
13
+ if (error.response) {
14
+ return error.response;
15
+ }
16
+
17
+ return {
18
+ message: error.message
19
+ };
20
+ };
21
+
22
+ exports["default"] = getHttpError;
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Custom HTTP client wrapper around native fetch API.
3
+ * Replaces axios with a minimal implementation that provides:
4
+ * - Request/response interceptors (async supported)
5
+ * - Axios-compatible response structure
6
+ * - Automatic JSON parsing when Content-Type is application/json
7
+ * - Error rejection on 4xx/5xx responses (axios behavior)
8
+ *
9
+ * Based on Kent C. Dodds' pattern:
10
+ * https://kentcdodds.com/blog/replace-axios-with-a-simple-custom-fetch-wrapper
11
+ */
12
+ export interface HttpClientConfig {
13
+ method?: string;
14
+ headers?: Record<string, string>;
15
+ body?: BodyInit;
16
+ params?: Record<string, any>;
17
+ data?: any;
18
+ tokenType?: string;
19
+ skipDeviceCheck?: boolean;
20
+ [key: string]: any;
21
+ }
22
+ export interface HttpClientResponse<T = any> {
23
+ data: T;
24
+ status: number;
25
+ statusText: string;
26
+ headers: Record<string, string>;
27
+ config: HttpClientConfig;
28
+ }
29
+ export interface HttpClientError extends Error {
30
+ response?: HttpClientResponse;
31
+ config?: HttpClientConfig;
32
+ }
33
+ declare type RequestInterceptorFulfilled = (config: HttpClientConfig) => HttpClientConfig | Promise<HttpClientConfig>;
34
+ declare type RequestInterceptorRejected = (error: any) => any;
35
+ declare type ResponseInterceptorFulfilled = (response: HttpClientResponse) => HttpClientResponse | Promise<HttpClientResponse>;
36
+ declare type ResponseInterceptorRejected = (error: HttpClientError) => any;
37
+ interface RequestInterceptor {
38
+ fulfilled: RequestInterceptorFulfilled;
39
+ rejected?: RequestInterceptorRejected;
40
+ }
41
+ interface ResponseInterceptor {
42
+ fulfilled: ResponseInterceptorFulfilled;
43
+ rejected?: ResponseInterceptorRejected;
44
+ }
45
+ interface InterceptorManager<T> {
46
+ handlers: Array<T | null>;
47
+ use(fulfilled: T extends RequestInterceptor ? RequestInterceptorFulfilled : ResponseInterceptorFulfilled, rejected?: T extends RequestInterceptor ? RequestInterceptorRejected : ResponseInterceptorRejected): number;
48
+ eject(id: number): void;
49
+ }
50
+ export interface HttpClient {
51
+ (url: string, config?: HttpClientConfig): Promise<HttpClientResponse>;
52
+ defaults: {
53
+ headers: {
54
+ post: Record<string, string>;
55
+ common: Record<string, string>;
56
+ };
57
+ };
58
+ interceptors: {
59
+ request: InterceptorManager<RequestInterceptor>;
60
+ response: InterceptorManager<ResponseInterceptor>;
61
+ };
62
+ }
63
+ /**
64
+ * Creates a new HTTP client instance with interceptor support.
65
+ * This is the fetch-based replacement for axios.create()
66
+ */
67
+ export declare function createHttpClient(): HttpClient;
68
+ export {};
@@ -0,0 +1,414 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _regeneratorRuntime = require('@babel/runtime/regenerator');
6
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
7
+ var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator');
8
+
9
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
+
11
+ var _regeneratorRuntime__default = /*#__PURE__*/_interopDefaultLegacy(_regeneratorRuntime);
12
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
13
+ var _asyncToGenerator__default = /*#__PURE__*/_interopDefaultLegacy(_asyncToGenerator);
14
+
15
+ function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
16
+
17
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
18
+
19
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
20
+
21
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
22
+
23
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
24
+
25
+ /**
26
+ * Custom HTTP client wrapper around native fetch API.
27
+ * Replaces axios with a minimal implementation that provides:
28
+ * - Request/response interceptors (async supported)
29
+ * - Axios-compatible response structure
30
+ * - Automatic JSON parsing when Content-Type is application/json
31
+ * - Error rejection on 4xx/5xx responses (axios behavior)
32
+ *
33
+ * Based on Kent C. Dodds' pattern:
34
+ * https://kentcdodds.com/blog/replace-axios-with-a-simple-custom-fetch-wrapper
35
+ */
36
+
37
+ /**
38
+ * Creates a new HTTP client instance with interceptor support.
39
+ * This is the fetch-based replacement for axios.create()
40
+ */
41
+ function createHttpClient() {
42
+ var requestInterceptors = [];
43
+ var responseInterceptors = [];
44
+ var defaults = {
45
+ headers: {
46
+ post: {},
47
+ common: {}
48
+ }
49
+ };
50
+
51
+ function httpClient(_x, _x2) {
52
+ return _httpClient.apply(this, arguments);
53
+ } // Attach defaults and interceptor management
54
+
55
+
56
+ function _httpClient() {
57
+ _httpClient = _asyncToGenerator__default["default"]( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee(url, config) {
58
+ var processedConfig, _iterator, _step, _interceptor2, _result2, method, headers, fetchOptions, finalUrl, searchParams, queryString, fetchResponse, _error, _iterator2, _step2, interceptor, result, responseHeaders, responseData, contentType, contentLength, response, _error2, _iterator3, _step3, _interceptor, _result, _iterator4, _step4, _interceptor3;
59
+
60
+ return _regeneratorRuntime__default["default"].wrap(function _callee$(_context) {
61
+ while (1) {
62
+ switch (_context.prev = _context.next) {
63
+ case 0:
64
+ if (config === void 0) {
65
+ config = {};
66
+ }
67
+
68
+ processedConfig = _objectSpread({}, config); // Run request interceptors (in order, skip nulls from eject)
69
+
70
+ _iterator = _createForOfIteratorHelperLoose(requestInterceptors);
71
+
72
+ case 3:
73
+ if ((_step = _iterator()).done) {
74
+ _context.next = 22;
75
+ break;
76
+ }
77
+
78
+ _interceptor2 = _step.value;
79
+
80
+ if (!(_interceptor2 === null)) {
81
+ _context.next = 7;
82
+ break;
83
+ }
84
+
85
+ return _context.abrupt("continue", 20);
86
+
87
+ case 7:
88
+ _context.prev = 7;
89
+ _context.next = 10;
90
+ return _interceptor2.fulfilled(processedConfig);
91
+
92
+ case 10:
93
+ processedConfig = _context.sent;
94
+ _context.next = 20;
95
+ break;
96
+
97
+ case 13:
98
+ _context.prev = 13;
99
+ _context.t0 = _context["catch"](7);
100
+
101
+ if (!_interceptor2.rejected) {
102
+ _context.next = 19;
103
+ break;
104
+ }
105
+
106
+ _result2 = _interceptor2.rejected(_context.t0);
107
+
108
+ if (!(_result2 instanceof Promise)) {
109
+ _context.next = 19;
110
+ break;
111
+ }
112
+
113
+ return _context.abrupt("return", _result2);
114
+
115
+ case 19:
116
+ throw _context.t0;
117
+
118
+ case 20:
119
+ _context.next = 3;
120
+ break;
121
+
122
+ case 22:
123
+ // Build headers - merge defaults with config headers
124
+ method = (processedConfig.method || 'GET').toUpperCase();
125
+ headers = _objectSpread({}, defaults.headers.common, {}, method === 'POST' || method === 'PUT' || method === 'PATCH' ? defaults.headers.post : {}, {}, processedConfig.headers); // Build fetch options
126
+
127
+ fetchOptions = {
128
+ method: method,
129
+ headers: headers
130
+ }; // Handle request body
131
+
132
+ if (processedConfig.data !== undefined) {
133
+ if (processedConfig.data instanceof FormData) {
134
+ fetchOptions.body = processedConfig.data; // Remove Content-Type for FormData - browser sets it with boundary
135
+
136
+ delete fetchOptions.headers['Content-Type'];
137
+ } else if (typeof processedConfig.data === 'object') {
138
+ fetchOptions.body = JSON.stringify(processedConfig.data);
139
+ } else {
140
+ fetchOptions.body = processedConfig.data;
141
+ }
142
+ } // Handle query params
143
+
144
+
145
+ finalUrl = url;
146
+
147
+ if (processedConfig.params) {
148
+ searchParams = new URLSearchParams();
149
+ Object.entries(processedConfig.params).forEach(function (_ref) {
150
+ var key = _ref[0],
151
+ value = _ref[1];
152
+
153
+ if (value !== undefined && value !== null) {
154
+ if (Array.isArray(value)) {
155
+ value.forEach(function (v) {
156
+ return searchParams.append(key, String(v));
157
+ });
158
+ } else {
159
+ searchParams.append(key, String(value));
160
+ }
161
+ }
162
+ });
163
+ queryString = searchParams.toString();
164
+
165
+ if (queryString) {
166
+ finalUrl += (url.includes('?') ? '&' : '?') + queryString;
167
+ }
168
+ } // Make the request
169
+
170
+
171
+ _context.prev = 28;
172
+ _context.next = 31;
173
+ return fetch(finalUrl, fetchOptions);
174
+
175
+ case 31:
176
+ fetchResponse = _context.sent;
177
+ _context.next = 50;
178
+ break;
179
+
180
+ case 34:
181
+ _context.prev = 34;
182
+ _context.t1 = _context["catch"](28);
183
+ // Network error (no response)
184
+ _error = new Error(_context.t1 instanceof Error ? _context.t1.message : 'Network Error');
185
+ _error.config = processedConfig; // Run response error interceptors
186
+
187
+ _iterator2 = _createForOfIteratorHelperLoose(responseInterceptors);
188
+
189
+ case 39:
190
+ if ((_step2 = _iterator2()).done) {
191
+ _context.next = 49;
192
+ break;
193
+ }
194
+
195
+ interceptor = _step2.value;
196
+
197
+ if (!(interceptor === null)) {
198
+ _context.next = 43;
199
+ break;
200
+ }
201
+
202
+ return _context.abrupt("continue", 47);
203
+
204
+ case 43:
205
+ if (!interceptor.rejected) {
206
+ _context.next = 47;
207
+ break;
208
+ }
209
+
210
+ result = interceptor.rejected(_error);
211
+
212
+ if (!(result instanceof Promise)) {
213
+ _context.next = 47;
214
+ break;
215
+ }
216
+
217
+ return _context.abrupt("return", result);
218
+
219
+ case 47:
220
+ _context.next = 39;
221
+ break;
222
+
223
+ case 49:
224
+ throw _error;
225
+
226
+ case 50:
227
+ // Parse response headers into plain object (lowercase keys like axios)
228
+ responseHeaders = {};
229
+ fetchResponse.headers.forEach(function (value, key) {
230
+ responseHeaders[key.toLowerCase()] = value;
231
+ }); // Parse response body based on Content-Type
232
+
233
+ contentType = fetchResponse.headers.get('content-type');
234
+ contentLength = fetchResponse.headers.get('content-length'); // Only try to parse body if there's content
235
+
236
+ if (!(contentLength === '0' || fetchResponse.status === 204)) {
237
+ _context.next = 58;
238
+ break;
239
+ }
240
+
241
+ responseData = null;
242
+ _context.next = 75;
243
+ break;
244
+
245
+ case 58:
246
+ if (!(contentType != null && contentType.includes('application/json'))) {
247
+ _context.next = 72;
248
+ break;
249
+ }
250
+
251
+ _context.prev = 59;
252
+ _context.next = 62;
253
+ return fetchResponse.json();
254
+
255
+ case 62:
256
+ responseData = _context.sent;
257
+ _context.next = 70;
258
+ break;
259
+
260
+ case 65:
261
+ _context.prev = 65;
262
+ _context.t2 = _context["catch"](59);
263
+ _context.next = 69;
264
+ return fetchResponse.text();
265
+
266
+ case 69:
267
+ responseData = _context.sent;
268
+
269
+ case 70:
270
+ _context.next = 75;
271
+ break;
272
+
273
+ case 72:
274
+ _context.next = 74;
275
+ return fetchResponse.text();
276
+
277
+ case 74:
278
+ responseData = _context.sent;
279
+
280
+ case 75:
281
+ // Build axios-like response object
282
+ response = {
283
+ data: responseData,
284
+ status: fetchResponse.status,
285
+ statusText: fetchResponse.statusText,
286
+ headers: responseHeaders,
287
+ config: processedConfig
288
+ }; // Check for HTTP errors (fetch doesn't reject on 4xx/5xx, but axios does)
289
+
290
+ if (fetchResponse.ok) {
291
+ _context.next = 92;
292
+ break;
293
+ }
294
+
295
+ _error2 = new Error("Request failed with status code " + fetchResponse.status);
296
+ _error2.response = response;
297
+ _error2.config = processedConfig; // Run response error interceptors
298
+
299
+ _iterator3 = _createForOfIteratorHelperLoose(responseInterceptors);
300
+
301
+ case 81:
302
+ if ((_step3 = _iterator3()).done) {
303
+ _context.next = 91;
304
+ break;
305
+ }
306
+
307
+ _interceptor = _step3.value;
308
+
309
+ if (!(_interceptor === null)) {
310
+ _context.next = 85;
311
+ break;
312
+ }
313
+
314
+ return _context.abrupt("continue", 89);
315
+
316
+ case 85:
317
+ if (!_interceptor.rejected) {
318
+ _context.next = 89;
319
+ break;
320
+ }
321
+
322
+ _result = _interceptor.rejected(_error2);
323
+
324
+ if (!(_result instanceof Promise)) {
325
+ _context.next = 89;
326
+ break;
327
+ }
328
+
329
+ return _context.abrupt("return", _result);
330
+
331
+ case 89:
332
+ _context.next = 81;
333
+ break;
334
+
335
+ case 91:
336
+ throw _error2;
337
+
338
+ case 92:
339
+ _iterator4 = _createForOfIteratorHelperLoose(responseInterceptors);
340
+
341
+ case 93:
342
+ if ((_step4 = _iterator4()).done) {
343
+ _context.next = 102;
344
+ break;
345
+ }
346
+
347
+ _interceptor3 = _step4.value;
348
+
349
+ if (!(_interceptor3 === null)) {
350
+ _context.next = 97;
351
+ break;
352
+ }
353
+
354
+ return _context.abrupt("continue", 100);
355
+
356
+ case 97:
357
+ _context.next = 99;
358
+ return _interceptor3.fulfilled(response);
359
+
360
+ case 99:
361
+ response = _context.sent;
362
+
363
+ case 100:
364
+ _context.next = 93;
365
+ break;
366
+
367
+ case 102:
368
+ return _context.abrupt("return", response);
369
+
370
+ case 103:
371
+ case "end":
372
+ return _context.stop();
373
+ }
374
+ }
375
+ }, _callee, null, [[7, 13], [28, 34], [59, 65]]);
376
+ }));
377
+ return _httpClient.apply(this, arguments);
378
+ }
379
+
380
+ httpClient.defaults = defaults;
381
+ httpClient.interceptors = {
382
+ request: {
383
+ handlers: requestInterceptors,
384
+ use: function use(fulfilled, rejected) {
385
+ return requestInterceptors.push({
386
+ fulfilled: fulfilled,
387
+ rejected: rejected
388
+ }) - 1;
389
+ },
390
+ eject: function eject(id) {
391
+ if (requestInterceptors[id]) {
392
+ requestInterceptors[id] = null;
393
+ }
394
+ }
395
+ },
396
+ response: {
397
+ handlers: responseInterceptors,
398
+ use: function use(fulfilled, rejected) {
399
+ return responseInterceptors.push({
400
+ fulfilled: fulfilled,
401
+ rejected: rejected
402
+ }) - 1;
403
+ },
404
+ eject: function eject(id) {
405
+ if (responseInterceptors[id]) {
406
+ responseInterceptors[id] = null;
407
+ }
408
+ }
409
+ }
410
+ };
411
+ return httpClient;
412
+ }
413
+
414
+ exports.createHttpClient = createHttpClient;
@@ -7,14 +7,14 @@ require('@babel/runtime/helpers/defineProperty');
7
7
  require('@babel/runtime/helpers/asyncToGenerator');
8
8
  require('lodash/uniq');
9
9
  require('lodash/flatten');
10
- var utils_request = require('../staff-d7246b15.js');
10
+ var utils_request = require('../staff-b353f63a.js');
11
11
  require('lodash/merge');
12
- require('axios');
12
+ require('./http-client.js');
13
13
  require('date-fns/differenceInSeconds');
14
14
  require('jwt-decode');
15
15
  require('lodash/forOwn');
16
16
  require('lodash/get');
17
- require('./get-axios-error.js');
17
+ require('./get-http-error.js');
18
18
  require('./does-param-exist.js');
19
19
  require('./param-error.js');
20
20
  require('@babel/runtime/helpers/inheritsLoose');
@@ -5,5 +5,5 @@ import type { MedipassRequestOpts } from '../types';
5
5
  export declare const stripBottleneckOpts: (axiosRequestOpts?: Record<string, any>) => {
6
6
  [x: string]: any;
7
7
  };
8
- declare const request: (medipassRequestOpts: MedipassRequestOpts, axiosRequestOpts?: Record<string, any>) => Promise<any>;
8
+ declare const request: (medipassRequestOpts: MedipassRequestOpts, httpRequestOpts?: Record<string, any>) => Promise<any>;
9
9
  export default request;
@@ -6,11 +6,11 @@ require('@babel/runtime/regenerator');
6
6
  require('@babel/runtime/helpers/asyncToGenerator');
7
7
  require('@babel/runtime/helpers/defineProperty');
8
8
  require('lodash/get');
9
- var utils_request = require('../staff-d7246b15.js');
10
- require('./get-axios-error.js');
9
+ var utils_request = require('../staff-b353f63a.js');
10
+ require('./get-http-error.js');
11
11
  require('lodash/merge');
12
12
  require('lodash/uniq');
13
- require('axios');
13
+ require('./http-client.js');
14
14
  require('date-fns/differenceInSeconds');
15
15
  require('jwt-decode');
16
16
  require('lodash/forOwn');
@@ -7,13 +7,13 @@ require('@babel/runtime/regenerator');
7
7
  require('@babel/runtime/helpers/asyncToGenerator');
8
8
  require('lodash/merge');
9
9
  require('lodash/uniq');
10
- var utils_request = require('../staff-d7246b15.js');
11
- require('axios');
10
+ var utils_request = require('../staff-b353f63a.js');
11
+ require('./http-client.js');
12
12
  require('date-fns/differenceInSeconds');
13
13
  require('jwt-decode');
14
14
  require('lodash/forOwn');
15
15
  require('lodash/get');
16
- require('./get-axios-error.js');
16
+ require('./get-http-error.js');
17
17
  require('./does-param-exist.js');
18
18
  require('./param-error.js');
19
19
  require('@babel/runtime/helpers/inheritsLoose');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@medipass/web-sdk",
3
- "version": "12.11.1",
3
+ "version": "12.11.2-feature-axios-to-fetch.2",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -33,7 +33,6 @@
33
33
  },
34
34
  "dependencies": {
35
35
  "@babel/runtime": "7.8.4",
36
- "axios": "0.21.1",
37
36
  "compare-versions": "3.4.0",
38
37
  "date-fns": "2.16.1",
39
38
  "jwt-decode": "2.2.0",
@@ -51,7 +50,7 @@
51
50
  "@types/mocha": "9.1.1",
52
51
  "@types/node": "20.3.2",
53
52
  "@types/pify": "5.0.4",
54
- "axios-mock-adapter": "1.21.2",
53
+ "jest-fetch-mock": "3.0.3",
55
54
  "query-string": "7.0.0",
56
55
  "rimraf": "2.6.2",
57
56
  "typescript": "4.7.4"
@@ -59,5 +58,5 @@
59
58
  "resolutions": {
60
59
  "react-scripts/**/@typescript-eslint/eslint-plugin": "5.32.0"
61
60
  },
62
- "gitHead": "adcb709728d2b59ec7bc7ad70cd284a2bc329e52"
61
+ "gitHead": "b112021aecc5bb3aefda615f34e65c0ff1dcac3c"
63
62
  }