api-def 0.9.1 → 0.9.3

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 (122) hide show
  1. package/README.md +1 -1
  2. package/cjs/Api.d.ts +35 -35
  3. package/cjs/Api.js +140 -144
  4. package/cjs/ApiConstants.d.ts +58 -58
  5. package/cjs/ApiConstants.js +55 -55
  6. package/cjs/ApiTypes.d.ts +103 -103
  7. package/cjs/ApiTypes.js +4 -4
  8. package/cjs/ApiUtils.d.ts +6 -6
  9. package/cjs/ApiUtils.js +51 -53
  10. package/cjs/Endpoint.d.ts +52 -52
  11. package/cjs/Endpoint.js +104 -108
  12. package/cjs/EndpointBuilder.d.ts +14 -14
  13. package/cjs/EndpointBuilder.js +46 -46
  14. package/cjs/MockingTypes.d.ts +30 -30
  15. package/cjs/MockingTypes.js +2 -2
  16. package/cjs/QueryHandling.d.ts +3 -3
  17. package/cjs/QueryHandling.js +24 -24
  18. package/cjs/RequestConfig.d.ts +2 -2
  19. package/cjs/RequestConfig.js +74 -74
  20. package/cjs/RequestContext.d.ts +48 -48
  21. package/cjs/RequestContext.js +235 -238
  22. package/cjs/RequestError.d.ts +30 -30
  23. package/cjs/RequestError.js +47 -47
  24. package/cjs/Requester.d.ts +3 -3
  25. package/cjs/Requester.js +335 -336
  26. package/cjs/TextDecoding.d.ts +1 -1
  27. package/cjs/TextDecoding.js +152 -139
  28. package/cjs/UtilTypes.d.ts +5 -5
  29. package/cjs/UtilTypes.js +2 -2
  30. package/cjs/Utils.d.ts +15 -15
  31. package/cjs/Utils.js +79 -77
  32. package/cjs/Validation.d.ts +8 -8
  33. package/cjs/Validation.js +2 -2
  34. package/cjs/backend/AxiosRequestBackend.d.ts +13 -13
  35. package/cjs/backend/AxiosRequestBackend.js +99 -99
  36. package/cjs/backend/FetchRequestBackend.d.ts +15 -15
  37. package/cjs/backend/FetchRequestBackend.js +203 -202
  38. package/cjs/backend/MockRequestBackend.d.ts +11 -11
  39. package/cjs/backend/MockRequestBackend.js +164 -164
  40. package/cjs/backend/RequestBackend.d.ts +19 -19
  41. package/cjs/backend/RequestBackend.js +2 -2
  42. package/cjs/cache/CacheBackend.d.ts +6 -6
  43. package/cjs/cache/CacheBackend.js +2 -2
  44. package/cjs/cache/Caching.d.ts +10 -10
  45. package/cjs/cache/Caching.js +88 -88
  46. package/cjs/cache/LocalForageCacheBackend.d.ts +9 -9
  47. package/cjs/cache/LocalForageCacheBackend.js +24 -24
  48. package/cjs/cache/LocalStorageCacheBackend.d.ts +7 -7
  49. package/cjs/cache/LocalStorageCacheBackend.js +77 -77
  50. package/cjs/index.d.ts +13 -13
  51. package/cjs/index.js +41 -41
  52. package/cjs/middleware/CacheMiddleware.d.ts +7 -7
  53. package/cjs/middleware/CacheMiddleware.js +107 -107
  54. package/cjs/middleware/LoggingMiddleware.d.ts +6 -6
  55. package/cjs/middleware/LoggingMiddleware.js +82 -88
  56. package/cjs/util/retry/index.d.ts +3 -3
  57. package/cjs/util/retry/index.js +52 -52
  58. package/cjs/util/retry/lib/retry.d.ts +3 -3
  59. package/cjs/util/retry/lib/retry.js +50 -54
  60. package/cjs/util/retry/lib/retryOperation.d.ts +27 -27
  61. package/cjs/util/retry/lib/retryOperation.js +130 -134
  62. package/esm/Api.d.ts +35 -35
  63. package/esm/Api.js +92 -98
  64. package/esm/ApiConstants.d.ts +58 -58
  65. package/esm/ApiConstants.js +52 -52
  66. package/esm/ApiTypes.d.ts +103 -103
  67. package/esm/ApiTypes.js +1 -1
  68. package/esm/ApiUtils.d.ts +6 -6
  69. package/esm/ApiUtils.js +43 -45
  70. package/esm/Endpoint.d.ts +52 -52
  71. package/esm/Endpoint.js +66 -70
  72. package/esm/EndpointBuilder.d.ts +14 -14
  73. package/esm/EndpointBuilder.js +31 -31
  74. package/esm/MockingTypes.d.ts +30 -30
  75. package/esm/MockingTypes.js +1 -1
  76. package/esm/QueryHandling.d.ts +3 -3
  77. package/esm/QueryHandling.js +19 -19
  78. package/esm/RequestConfig.d.ts +2 -2
  79. package/esm/RequestConfig.js +56 -56
  80. package/esm/RequestContext.d.ts +48 -48
  81. package/esm/RequestContext.js +167 -170
  82. package/esm/RequestError.d.ts +30 -30
  83. package/esm/RequestError.js +42 -42
  84. package/esm/Requester.d.ts +3 -3
  85. package/esm/Requester.js +252 -253
  86. package/esm/TextDecoding.d.ts +1 -1
  87. package/esm/TextDecoding.js +148 -135
  88. package/esm/UtilTypes.d.ts +5 -5
  89. package/esm/UtilTypes.js +1 -1
  90. package/esm/Utils.d.ts +15 -15
  91. package/esm/Utils.js +66 -68
  92. package/esm/Validation.d.ts +8 -8
  93. package/esm/Validation.js +1 -1
  94. package/esm/backend/AxiosRequestBackend.d.ts +13 -13
  95. package/esm/backend/AxiosRequestBackend.js +62 -62
  96. package/esm/backend/FetchRequestBackend.d.ts +15 -15
  97. package/esm/backend/FetchRequestBackend.js +136 -136
  98. package/esm/backend/MockRequestBackend.d.ts +11 -11
  99. package/esm/backend/MockRequestBackend.js +116 -116
  100. package/esm/backend/RequestBackend.d.ts +19 -19
  101. package/esm/backend/RequestBackend.js +1 -1
  102. package/esm/cache/CacheBackend.d.ts +6 -6
  103. package/esm/cache/CacheBackend.js +1 -1
  104. package/esm/cache/Caching.d.ts +10 -10
  105. package/esm/cache/Caching.js +39 -39
  106. package/esm/cache/LocalForageCacheBackend.d.ts +9 -9
  107. package/esm/cache/LocalForageCacheBackend.js +20 -20
  108. package/esm/cache/LocalStorageCacheBackend.d.ts +7 -7
  109. package/esm/cache/LocalStorageCacheBackend.js +32 -32
  110. package/esm/index.d.ts +13 -13
  111. package/esm/index.js +14 -15
  112. package/esm/middleware/CacheMiddleware.d.ts +7 -7
  113. package/esm/middleware/CacheMiddleware.js +58 -58
  114. package/esm/middleware/LoggingMiddleware.d.ts +6 -6
  115. package/esm/middleware/LoggingMiddleware.js +77 -83
  116. package/esm/util/retry/index.d.ts +3 -3
  117. package/esm/util/retry/index.js +50 -50
  118. package/esm/util/retry/lib/retry.d.ts +3 -3
  119. package/esm/util/retry/lib/retry.js +35 -39
  120. package/esm/util/retry/lib/retryOperation.d.ts +27 -27
  121. package/esm/util/retry/lib/retryOperation.js +126 -132
  122. package/package.json +19 -34
@@ -1,62 +1,62 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- let axios;
11
- export const isAxiosError = (error) => {
12
- return "isAxiosError" in error;
13
- };
14
- export default class AxiosRequestBackend {
15
- // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
16
- constructor(axiosLibrary) {
17
- this.id = "axios";
18
- axios = axiosLibrary;
19
- }
20
- extractResponseFromError(error) {
21
- return __awaiter(this, void 0, void 0, function* () {
22
- if (isAxiosError(error)) {
23
- return error.response ? error.response : null;
24
- }
25
- return undefined;
26
- });
27
- }
28
- convertResponse(context, response) {
29
- return __awaiter(this, void 0, void 0, function* () {
30
- return {
31
- method: context.method,
32
- url: response.request.res.responseUrl,
33
- data: response.data,
34
- headers: response.headers,
35
- status: response.status,
36
- __lowercaseHeaders: response._lowerCaseResponseHeaders,
37
- };
38
- });
39
- }
40
- makeRequest(context) {
41
- const { computedConfig } = context;
42
- const url = context.requestUrl;
43
- let canceler = null;
44
- const promise = axios({
45
- method: context.method,
46
- url: url.href,
47
- data: context.getParsedBody(),
48
- headers: computedConfig.headers || {},
49
- responseType: context.responseType,
50
- cancelToken: new axios.CancelToken((cancellerFunc) => {
51
- canceler = cancellerFunc;
52
- }),
53
- });
54
- return {
55
- promise: promise,
56
- canceler: () => canceler && canceler(),
57
- };
58
- }
59
- getErrorInfo(error, response) {
60
- return undefined;
61
- }
62
- }
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ let axios;
11
+ export const isAxiosError = (error) => {
12
+ return "isAxiosError" in error;
13
+ };
14
+ export default class AxiosRequestBackend {
15
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
16
+ constructor(axiosLibrary) {
17
+ this.id = "axios";
18
+ axios = axiosLibrary;
19
+ }
20
+ extractResponseFromError(error) {
21
+ return __awaiter(this, void 0, void 0, function* () {
22
+ if (isAxiosError(error)) {
23
+ return error.response ? error.response : null;
24
+ }
25
+ return undefined;
26
+ });
27
+ }
28
+ convertResponse(context, response) {
29
+ return __awaiter(this, void 0, void 0, function* () {
30
+ return {
31
+ method: context.method,
32
+ url: response.request.res.responseUrl,
33
+ data: response.data,
34
+ headers: response.headers,
35
+ status: response.status,
36
+ __lowercaseHeaders: response._lowerCaseResponseHeaders,
37
+ };
38
+ });
39
+ }
40
+ makeRequest(context) {
41
+ const { computedConfig } = context;
42
+ const url = context.requestUrl;
43
+ let canceler = null;
44
+ const promise = axios({
45
+ method: context.method,
46
+ url: url.href,
47
+ data: context.getParsedBody(),
48
+ headers: computedConfig.headers || {},
49
+ responseType: context.responseType,
50
+ cancelToken: new axios.CancelToken((cancellerFunc) => {
51
+ canceler = cancellerFunc;
52
+ }),
53
+ });
54
+ return {
55
+ promise: promise,
56
+ canceler: () => canceler === null || canceler === void 0 ? void 0 : canceler(),
57
+ };
58
+ }
59
+ getErrorInfo(error, response) {
60
+ return undefined;
61
+ }
62
+ }
@@ -1,15 +1,15 @@
1
- import RequestBackend, { ConvertedApiResponse, RequestBackendErrorInfo, RequestOperation } from "./RequestBackend";
2
- import { ApiResponse } from "../ApiTypes";
3
- import RequestContext from "../RequestContext";
4
- import { Fetch } from "../Utils";
5
- export default class FetchRequestBackend implements RequestBackend<Response> {
6
- fetch: (((input: RequestInfo | URL, init?: RequestInit | undefined) => Promise<Response>) & typeof fetch) | undefined;
7
- readonly id = "fetch";
8
- constructor(fetchLibrary?: Fetch);
9
- extractResponseFromError(error: Error): Promise<Response | null | undefined>;
10
- convertResponse<T>(context: RequestContext, response: Response & {
11
- __text?: string;
12
- }): Promise<ConvertedApiResponse<T>>;
13
- makeRequest(context: RequestContext): RequestOperation<Response>;
14
- getErrorInfo(error: Error, response: ApiResponse | undefined | null): RequestBackendErrorInfo | undefined;
15
- }
1
+ import { ApiResponse } from "../ApiTypes";
2
+ import RequestContext from "../RequestContext";
3
+ import { Fetch } from "../Utils";
4
+ import RequestBackend, { ConvertedApiResponse, RequestBackendErrorInfo, RequestOperation } from "./RequestBackend";
5
+ export default class FetchRequestBackend implements RequestBackend<Response> {
6
+ fetch: (((input: RequestInfo | URL, init?: RequestInit | undefined) => Promise<Response>) & typeof fetch) | undefined;
7
+ readonly id = "fetch";
8
+ constructor(fetchLibrary?: Fetch);
9
+ extractResponseFromError(error: Error): Promise<Response | null | undefined>;
10
+ convertResponse<T>(context: RequestContext, response: Response & {
11
+ __text?: string;
12
+ }): Promise<ConvertedApiResponse<T>>;
13
+ makeRequest(context: RequestContext): RequestOperation<Response>;
14
+ getErrorInfo(error: Error, response: ApiResponse | undefined | null): RequestBackendErrorInfo | undefined;
15
+ }
@@ -1,136 +1,136 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- import * as Utils from "../Utils";
11
- import { getGlobal, getGlobalFetch } from "../Utils";
12
- import { inferResponseType } from "../ApiUtils";
13
- import { convertToRequestError, RequestErrorCode } from "../RequestError";
14
- class FetchError extends Error {
15
- }
16
- export default class FetchRequestBackend {
17
- constructor(fetchLibrary) {
18
- this.fetch = getGlobalFetch();
19
- this.id = "fetch";
20
- if (fetchLibrary !== undefined) {
21
- this.fetch = fetchLibrary;
22
- // otherwise window throws illegal invocation
23
- if (fetchLibrary === getGlobalFetch()) {
24
- this.fetch = fetchLibrary.bind(getGlobal());
25
- }
26
- }
27
- }
28
- extractResponseFromError(error) {
29
- return __awaiter(this, void 0, void 0, function* () {
30
- if ("response" in error) {
31
- const fetchError = error;
32
- return fetchError.response ? fetchError.response : null;
33
- }
34
- return undefined;
35
- });
36
- }
37
- convertResponse(context, response) {
38
- var _a;
39
- return __awaiter(this, void 0, void 0, function* () {
40
- const { status, headers } = response;
41
- const processedHeaders = {};
42
- headers.forEach((value, key) => {
43
- processedHeaders[key] = value;
44
- });
45
- const convertedResponse = {
46
- __lowercaseHeaders: processedHeaders,
47
- method: context.method,
48
- url: response.url,
49
- data: undefined,
50
- status: status,
51
- headers: processedHeaders,
52
- };
53
- const responseType = (_a = context.responseType) !== null && _a !== void 0 ? _a : inferResponseType(response.headers.get("Content-Type"));
54
- let text;
55
- let data;
56
- try {
57
- if (responseType === "arraybuffer") {
58
- data = yield response.arrayBuffer();
59
- }
60
- else if (responseType === "json") {
61
- text = yield response.text();
62
- data = JSON.parse(text);
63
- }
64
- else {
65
- data = response.text();
66
- }
67
- }
68
- catch (error) {
69
- throw convertToRequestError({
70
- error: Object.assign(new Error(`[api-def] Failed to parse response as '${responseType}'${text ? `, got: ${text}` : ""}`), {
71
- cause: error,
72
- }),
73
- code: RequestErrorCode.REQUEST_MISMATCH_RESPONSE_TYPE,
74
- context: context,
75
- response: convertedResponse,
76
- });
77
- }
78
- convertedResponse.data = data;
79
- return convertedResponse;
80
- });
81
- }
82
- makeRequest(context) {
83
- if (!this.fetch) {
84
- throw new Error("[api-def] No fetch impl was provided to FetchRequestBackend");
85
- }
86
- const { computedConfig } = context;
87
- // abort controller is a newer feature than fetch
88
- const abortController = AbortController && new AbortController();
89
- const abortSignal = abortController ? abortController.signal : undefined;
90
- let softAbort = false;
91
- let responded = false;
92
- const body = context.getParsedBody();
93
- const bodyJsonify = body !== null && typeof body === "object";
94
- const headers = Utils.assign({
95
- // logic from axios
96
- "Content-Type": bodyJsonify ? "application/json;charset=utf-8" : "application/x-www-form-urlencoded",
97
- }, computedConfig.headers);
98
- const parsedHeaders = Object.keys(headers).reduce((parsedHeaders, key) => {
99
- const value = headers[key];
100
- if (value !== undefined) {
101
- parsedHeaders[key] = value;
102
- }
103
- return parsedHeaders;
104
- }, {});
105
- const url = context.requestUrl;
106
- const promise = this.fetch(url.href, {
107
- method: context.method.toUpperCase(),
108
- body: bodyJsonify ? JSON.stringify(body) : body,
109
- headers: parsedHeaders,
110
- mode: "cors",
111
- signal: abortSignal,
112
- }).then((response) => {
113
- responded = true;
114
- if (!response.ok) {
115
- const error = new FetchError("Fetch failed");
116
- error.response = response;
117
- throw error;
118
- }
119
- if (softAbort) {
120
- throw new Error("[api-def] Request was aborted");
121
- }
122
- return response;
123
- });
124
- return {
125
- promise: promise,
126
- canceler: abortSignal
127
- ? () => !responded && abortController.abort()
128
- : () => {
129
- softAbort = true;
130
- },
131
- };
132
- }
133
- getErrorInfo(error, response) {
134
- return undefined;
135
- }
136
- }
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { inferResponseType } from "../ApiUtils";
11
+ import { RequestErrorCode, convertToRequestError } from "../RequestError";
12
+ import * as Utils from "../Utils";
13
+ import { getGlobal, getGlobalFetch } from "../Utils";
14
+ class FetchError extends Error {
15
+ }
16
+ export default class FetchRequestBackend {
17
+ constructor(fetchLibrary) {
18
+ this.fetch = getGlobalFetch();
19
+ this.id = "fetch";
20
+ if (fetchLibrary !== undefined) {
21
+ this.fetch = fetchLibrary;
22
+ // otherwise window throws illegal invocation
23
+ if (fetchLibrary === getGlobalFetch()) {
24
+ this.fetch = fetchLibrary.bind(getGlobal());
25
+ }
26
+ }
27
+ }
28
+ extractResponseFromError(error) {
29
+ return __awaiter(this, void 0, void 0, function* () {
30
+ if ("response" in error) {
31
+ const fetchError = error;
32
+ return fetchError.response ? fetchError.response : null;
33
+ }
34
+ return undefined;
35
+ });
36
+ }
37
+ convertResponse(context, response) {
38
+ var _a;
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ const { status, headers } = response;
41
+ const processedHeaders = {};
42
+ headers.forEach((value, key) => {
43
+ processedHeaders[key] = value;
44
+ });
45
+ const convertedResponse = {
46
+ __lowercaseHeaders: processedHeaders,
47
+ method: context.method,
48
+ url: response.url,
49
+ data: undefined,
50
+ status: status,
51
+ headers: processedHeaders,
52
+ };
53
+ const responseType = (_a = context.responseType) !== null && _a !== void 0 ? _a : inferResponseType(response.headers.get("Content-Type"));
54
+ let text;
55
+ let data;
56
+ try {
57
+ if (responseType === "arraybuffer") {
58
+ data = yield response.arrayBuffer();
59
+ }
60
+ else if (responseType === "json") {
61
+ text = yield response.text();
62
+ data = JSON.parse(text);
63
+ }
64
+ else {
65
+ data = yield response.text();
66
+ }
67
+ }
68
+ catch (error) {
69
+ throw convertToRequestError({
70
+ error: Object.assign(new Error(`[api-def] Failed to parse response as '${responseType}'${text ? `, got: ${text}` : ""}`), {
71
+ cause: error,
72
+ }),
73
+ code: RequestErrorCode.REQUEST_MISMATCH_RESPONSE_TYPE,
74
+ context: context,
75
+ response: convertedResponse,
76
+ });
77
+ }
78
+ convertedResponse.data = data;
79
+ return convertedResponse;
80
+ });
81
+ }
82
+ makeRequest(context) {
83
+ if (!this.fetch) {
84
+ throw new Error("[api-def] No fetch impl was provided to FetchRequestBackend");
85
+ }
86
+ const { computedConfig } = context;
87
+ // abort controller is a newer feature than fetch
88
+ const abortController = AbortController && new AbortController();
89
+ const abortSignal = abortController ? abortController.signal : undefined;
90
+ let softAbort = false;
91
+ let responded = false;
92
+ const body = context.getParsedBody();
93
+ const bodyJsonify = body !== null && typeof body === "object";
94
+ const headers = Utils.assign({
95
+ // logic from axios
96
+ "Content-Type": bodyJsonify ? "application/json;charset=utf-8" : "application/x-www-form-urlencoded",
97
+ }, computedConfig.headers);
98
+ const parsedHeaders = Object.keys(headers).reduce((parsedHeaders, key) => {
99
+ const value = headers[key];
100
+ if (value !== undefined) {
101
+ parsedHeaders[key] = value;
102
+ }
103
+ return parsedHeaders;
104
+ }, {});
105
+ const url = context.requestUrl;
106
+ const promise = this.fetch(url.href, {
107
+ method: context.method.toUpperCase(),
108
+ body: bodyJsonify ? JSON.stringify(body) : body,
109
+ headers: parsedHeaders,
110
+ mode: "cors",
111
+ signal: abortSignal,
112
+ }).then((response) => {
113
+ responded = true;
114
+ if (!response.ok) {
115
+ const error = new FetchError("Fetch failed");
116
+ error.response = response;
117
+ throw error;
118
+ }
119
+ if (softAbort) {
120
+ throw new Error("[api-def] Request was aborted");
121
+ }
122
+ return response;
123
+ });
124
+ return {
125
+ promise: promise,
126
+ canceler: abortSignal
127
+ ? () => !responded && abortController.abort()
128
+ : () => {
129
+ softAbort = true;
130
+ },
131
+ };
132
+ }
133
+ getErrorInfo(error, response) {
134
+ return undefined;
135
+ }
136
+ }
@@ -1,11 +1,11 @@
1
- import RequestBackend, { RequestBackendErrorInfo, RequestOperation } from "./RequestBackend";
2
- import { ApiResponse } from "../ApiTypes";
3
- import RequestContext from "../RequestContext";
4
- export default class MockRequestBackend implements RequestBackend<ApiResponse> {
5
- readonly id = "mock";
6
- convertResponse<T>(context: RequestContext, response: ApiResponse, error?: boolean): Promise<ApiResponse<T>>;
7
- extractResponseFromError(error: Error): Promise<ApiResponse | null | undefined>;
8
- private runRequest;
9
- makeRequest(context: RequestContext): RequestOperation<ApiResponse>;
10
- getErrorInfo(error: Error, response: ApiResponse | undefined | null): RequestBackendErrorInfo | undefined;
11
- }
1
+ import { ApiResponse } from "../ApiTypes";
2
+ import RequestContext from "../RequestContext";
3
+ import RequestBackend, { RequestBackendErrorInfo, RequestOperation } from "./RequestBackend";
4
+ export default class MockRequestBackend implements RequestBackend<ApiResponse> {
5
+ readonly id = "mock";
6
+ convertResponse<T>(context: RequestContext, response: ApiResponse, error?: boolean): Promise<ApiResponse<T>>;
7
+ extractResponseFromError(error: Error): Promise<ApiResponse | null | undefined>;
8
+ private runRequest;
9
+ makeRequest(context: RequestContext): RequestOperation<ApiResponse>;
10
+ getErrorInfo(error: Error, response: ApiResponse | undefined | null): RequestBackendErrorInfo | undefined;
11
+ }