@kelvininc/node-client-sdk 7.21.0 → 8.15.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 (39) hide show
  1. package/dist/cjs/adapters/http/config.d.ts +1 -0
  2. package/dist/cjs/adapters/http/config.js +3 -2
  3. package/dist/cjs/adapters/http/config.js.map +1 -1
  4. package/dist/cjs/adapters/http/http-requester.d.ts +1 -1
  5. package/dist/cjs/adapters/http/http-requester.js +8 -5
  6. package/dist/cjs/adapters/http/http-requester.js.map +1 -1
  7. package/dist/cjs/adapters/http/node-fetch-http.js +1 -1
  8. package/dist/cjs/adapters/http/node-fetch-http.js.map +1 -1
  9. package/dist/cjs/adapters/http/util.d.ts +4 -2
  10. package/dist/cjs/adapters/http/util.js +97 -38
  11. package/dist/cjs/adapters/http/util.js.map +1 -1
  12. package/dist/cjs/index.d.ts +1 -1
  13. package/dist/cjs/index.js +7 -3
  14. package/dist/cjs/index.js.map +1 -1
  15. package/dist/cjs/kelvin-node-sdk.js +6 -2
  16. package/dist/cjs/kelvin-node-sdk.js.map +1 -1
  17. package/dist/cjs/models.js +6 -2
  18. package/dist/cjs/models.js.map +1 -1
  19. package/dist/cjs/types.d.ts +5 -3
  20. package/dist/cjs/types.js +1 -1
  21. package/dist/cjs/types.js.map +1 -1
  22. package/dist/esm/adapters/http/config.d.ts +1 -0
  23. package/dist/esm/adapters/http/config.js +2 -1
  24. package/dist/esm/adapters/http/config.js.map +1 -1
  25. package/dist/esm/adapters/http/http-requester.d.ts +1 -1
  26. package/dist/esm/adapters/http/http-requester.js +8 -5
  27. package/dist/esm/adapters/http/http-requester.js.map +1 -1
  28. package/dist/esm/adapters/http/node-fetch-http.js.map +1 -1
  29. package/dist/esm/adapters/http/util.d.ts +4 -2
  30. package/dist/esm/adapters/http/util.js +83 -32
  31. package/dist/esm/adapters/http/util.js.map +1 -1
  32. package/dist/esm/index.d.ts +1 -1
  33. package/dist/esm/index.js +1 -1
  34. package/dist/esm/index.js.map +1 -1
  35. package/dist/esm/kelvin-node-sdk.js +6 -2
  36. package/dist/esm/kelvin-node-sdk.js.map +1 -1
  37. package/dist/esm/types.d.ts +5 -3
  38. package/package.json +15 -10
  39. package/CHANGELOG.md +0 -513
@@ -3,3 +3,4 @@ import { EHttpAdapterType } from '../../types';
3
3
  export declare const HTTP_ADAPTER: {
4
4
  [key in EHttpAdapterType]: IKvHttpAdapter;
5
5
  };
6
+ export declare const FETCH_ABORT_ERROR_NAME = "AbortError";
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HTTP_ADAPTER = void 0;
3
+ exports.FETCH_ABORT_ERROR_NAME = exports.HTTP_ADAPTER = void 0;
4
4
  const types_1 = require("../../types");
5
- const node_fetch_http_1 = require("./node-fetch-http");
6
5
  const fetch_http_1 = require("./fetch-http");
6
+ const node_fetch_http_1 = require("./node-fetch-http");
7
7
  exports.HTTP_ADAPTER = {
8
8
  [types_1.EHttpAdapterType.NodeFetch]: new node_fetch_http_1.NodeFetchHttpAdapter(),
9
9
  [types_1.EHttpAdapterType.Fetch]: new fetch_http_1.FetchHttpAdapter()
10
10
  };
11
+ exports.FETCH_ABORT_ERROR_NAME = 'AbortError';
11
12
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/adapters/http/config.ts"],"names":[],"mappings":";;;AACA,uCAA+C;AAC/C,uDAAyD;AACzD,6CAAgD;AAEnC,QAAA,YAAY,GAAkD;IAC1E,CAAC,wBAAgB,CAAC,SAAS,CAAC,EAAE,IAAI,sCAAoB,EAAE;IACxD,CAAC,wBAAgB,CAAC,KAAK,CAAC,EAAE,IAAI,6BAAgB,EAAE;CAChD,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/adapters/http/config.ts"],"names":[],"mappings":";;;AAEA,uCAA+C;AAC/C,6CAAgD;AAChD,uDAAyD;AAE5C,QAAA,YAAY,GAAkD;IAC1E,CAAC,wBAAgB,CAAC,SAAS,CAAC,EAAE,IAAI,sCAAoB,EAAE;IACxD,CAAC,wBAAgB,CAAC,KAAK,CAAC,EAAE,IAAI,6BAAgB,EAAE;CAChD,CAAC;AAEW,QAAA,sBAAsB,GAAG,YAAY,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { IKvHttpAdapter, IKvHttpResponse } from '@kelvininc/js-client-sdk';
2
+ import { Response as NF_Response, ResponseInit as NF_RequestInit } from 'node-fetch';
2
3
  import { Observable } from 'rxjs';
3
4
  import { IKvNodeHttpRequest } from 'src/types';
4
- import { Response as NF_Response, ResponseInit as NF_RequestInit } from 'node-fetch';
5
5
  export declare abstract class HTTPRequester implements IKvHttpAdapter {
6
6
  request<L = {}>(requestPayload: IKvNodeHttpRequest<L>): Observable<IKvHttpResponse>;
7
7
  abstract requestAdapter(url: string, requestOptions: RequestInit | NF_RequestInit): Promise<Response | NF_Response>;
@@ -11,14 +11,17 @@ class HTTPRequester {
11
11
  * fetch/node-fetch doesn't support progress report for upload.
12
12
  * switched to XHR api.
13
13
  * */
14
- if ((options === null || options === void 0 ? void 0 : options.reportProgress) &&
14
+ if (options?.reportProgress &&
15
15
  data instanceof FormData &&
16
16
  method === js_client_sdk_1.EKvHttpMethod.POST) {
17
- return util_1.handleUploadWithProgress(requestPayload);
17
+ return (0, util_1.handleUploadWithProgress)(requestPayload);
18
18
  }
19
- const requestInitConfig = util_1.buildFetchRequestInit(requestPayload);
20
- const requestInstance$ = rxjs_1.from(this.requestAdapter(util_1.buildFetchUrl(requestPayload), Object.assign({}, requestInitConfig)));
21
- return util_1.handleFetchResponse(requestPayload, requestInstance$);
19
+ const [updatedRequestPayload, controller] = (0, util_1.checkBuildController)(requestPayload);
20
+ const requestInitConfig = (0, util_1.buildFetchRequestInit)(updatedRequestPayload);
21
+ const requestInstance$ = (0, rxjs_1.from)(this.requestAdapter((0, util_1.buildFetchUrl)(requestPayload), {
22
+ ...requestInitConfig
23
+ }));
24
+ return (0, util_1.handleFetchResponse)(updatedRequestPayload, requestInstance$, controller);
22
25
  }
23
26
  }
24
27
  exports.HTTPRequester = HTTPRequester;
@@ -1 +1 @@
1
- {"version":3,"file":"http-requester.js","sourceRoot":"","sources":["../../../../src/adapters/http/http-requester.ts"],"names":[],"mappings":";;;AAAA,4DAIkC;AAClC,+BAAwC;AAExC,iCAKgB;AAMhB,MAAsB,aAAa;IAClC,OAAO,CACN,cAAqC;QAErC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC;QAEjD;;;aAGK;QACL,IACC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc;YACvB,IAAI,YAAY,QAAQ;YACxB,MAAM,KAAK,6BAAa,CAAC,IAAI,EAC5B;YACD,OAAO,+BAAwB,CAAI,cAAc,CAAC,CAAC;SACnD;QAED,MAAM,iBAAiB,GAAG,4BAAqB,CAAC,cAAc,CAAC,CAAC;QAChE,MAAM,gBAAgB,GAAG,WAAI,CAC5B,IAAI,CAAC,cAAc,CAAC,oBAAa,CAAC,cAAc,CAAC,oBAC7C,iBAAiB,EACnB,CACF,CAAC;QAEF,OAAO,0BAAmB,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAC9D,CAAC;CAMD;AAhCD,sCAgCC"}
1
+ {"version":3,"file":"http-requester.js","sourceRoot":"","sources":["../../../../src/adapters/http/http-requester.ts"],"names":[],"mappings":";;;AAAA,4DAIkC;AAKlC,+BAAwC;AAGxC,iCAMgB;AAEhB,MAAsB,aAAa;IAClC,OAAO,CACN,cAAqC;QAErC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC;QAEjD;;;aAGK;QACL,IACC,OAAO,EAAE,cAAc;YACvB,IAAI,YAAY,QAAQ;YACxB,MAAM,KAAK,6BAAa,CAAC,IAAI,EAC5B,CAAC;YACF,OAAO,IAAA,+BAAwB,EAAI,cAAc,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,CAAC,qBAAqB,EAAE,UAAU,CAAC,GACxC,IAAA,2BAAoB,EAAC,cAAc,CAAC,CAAC;QACtC,MAAM,iBAAiB,GAAG,IAAA,4BAAqB,EAAC,qBAAqB,CAAC,CAAC;QACvE,MAAM,gBAAgB,GAAG,IAAA,WAAI,EAC5B,IAAI,CAAC,cAAc,CAAC,IAAA,oBAAa,EAAC,cAAc,CAAC,EAAE;YAClD,GAAG,iBAAiB;SACpB,CAAC,CACF,CAAC;QAEF,OAAO,IAAA,0BAAmB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,UAAU,CACV,CAAC;IACH,CAAC;CAMD;AAtCD,sCAsCC"}
@@ -8,7 +8,7 @@ const node_fetch_1 = __importDefault(require("node-fetch"));
8
8
  const http_requester_1 = require("./http-requester");
9
9
  class NodeFetchHttpAdapter extends http_requester_1.HTTPRequester {
10
10
  requestAdapter(url, init) {
11
- return node_fetch_1.default(url, init);
11
+ return (0, node_fetch_1.default)(url, init);
12
12
  }
13
13
  }
14
14
  exports.NodeFetchHttpAdapter = NodeFetchHttpAdapter;
@@ -1 +1 @@
1
- {"version":3,"file":"node-fetch-http.js","sourceRoot":"","sources":["../../../../src/adapters/http/node-fetch-http.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA0D;AAC1D,qDAAiD;AAEjD,MAAa,oBAAqB,SAAQ,8BAAa;IACtD,cAAc,CAAC,GAAW,EAAE,IAAkB;QAC7C,OAAO,oBAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACzB,CAAC;CACD;AAJD,oDAIC"}
1
+ {"version":3,"file":"node-fetch-http.js","sourceRoot":"","sources":["../../../../src/adapters/http/node-fetch-http.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA0D;AAE1D,qDAAiD;AAEjD,MAAa,oBAAqB,SAAQ,8BAAa;IACtD,cAAc,CAAC,GAAW,EAAE,IAAkB;QAC7C,OAAO,IAAA,oBAAK,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACzB,CAAC;CACD;AAJD,oDAIC"}
@@ -1,10 +1,12 @@
1
1
  import { IKvHttpRequest, IKvHttpResponse } from '@kelvininc/js-client-sdk';
2
- import { Observable } from 'rxjs';
3
2
  import { Response as NF_Response, ResponseInit as NF_RequestInit } from 'node-fetch';
3
+ import { Observable } from 'rxjs';
4
4
  import { IKvNodeHttpRequest } from '../../types';
5
5
  export declare const handleFetchError: (response: Response | NF_Response, request: IKvHttpRequest) => Observable<IKvHttpResponse>;
6
6
  export declare const handleFetchRequest: (response: Response | NF_Response, request: IKvHttpRequest) => Observable<IKvHttpResponse>;
7
+ export declare const isEmptyParam: (value: string | string[]) => boolean;
7
8
  export declare const buildFetchUrl: ({ url, params }: IKvHttpRequest) => string;
8
9
  export declare const buildFetchRequestInit: ({ method, data, headers: requestHeaders, options }: IKvHttpRequest) => RequestInit | NF_RequestInit;
9
- export declare const handleFetchResponse: (request: IKvHttpRequest, response$: Observable<Response | NF_Response>) => Observable<IKvHttpResponse>;
10
+ export declare const handleFetchResponse: (request: IKvHttpRequest, response$: Observable<Response | NF_Response>, controller?: AbortController) => Observable<IKvHttpResponse>;
10
11
  export declare const handleUploadWithProgress: <L>(requestPayload: IKvNodeHttpRequest<L>) => Observable<IKvHttpResponse>;
12
+ export declare const checkBuildController: <L>(requestPayload: IKvNodeHttpRequest<L>) => [IKvNodeHttpRequest<L>, AbortController | undefined];
@@ -1,19 +1,23 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.handleUploadWithProgress = exports.handleFetchResponse = exports.buildFetchRequestInit = exports.buildFetchUrl = exports.handleFetchRequest = exports.handleFetchError = void 0;
3
+ exports.checkBuildController = exports.handleUploadWithProgress = exports.handleFetchResponse = exports.buildFetchRequestInit = exports.buildFetchUrl = exports.isEmptyParam = exports.handleFetchRequest = exports.handleFetchError = void 0;
4
4
  const js_client_sdk_1 = require("@kelvininc/js-client-sdk");
5
5
  const rxjs_1 = require("rxjs");
6
- const operators_1 = require("rxjs/operators");
7
6
  const rxjs_2 = require("rxjs");
7
+ const operators_1 = require("rxjs/operators");
8
+ const config_1 = require("./config");
8
9
  const isObject = (value) => {
9
10
  const type = typeof value;
10
11
  return value !== null && (type === 'object' || type === 'function');
11
12
  };
13
+ const isEmptyResponseBody = (res) => {
14
+ return res.headers.get('content-length') === '0' || res.status === js_client_sdk_1.EKvHttpStatusCode.NoContent;
15
+ };
12
16
  const handleResponse = (response) => {
13
17
  try {
14
18
  return JSON.parse(response);
15
19
  }
16
- catch (error) {
20
+ catch {
17
21
  return response;
18
22
  }
19
23
  };
@@ -36,7 +40,7 @@ const transformToSuccessResponse = (httpResponse, body, config) => {
36
40
  httpResponse
37
41
  };
38
42
  };
39
- exports.handleFetchError = (response, request) => {
43
+ const handleFetchError = (response, request) => {
40
44
  const { statusText, status, headers } = response;
41
45
  const error = {
42
46
  status,
@@ -44,9 +48,13 @@ exports.handleFetchError = (response, request) => {
44
48
  headers,
45
49
  config: request
46
50
  };
47
- return rxjs_1.from(response.text()).pipe(operators_1.map((data) => handleResponse(data)), operators_1.switchMap((httpResponse) => rxjs_1.throwError(Object.assign(Object.assign({}, error), { httpResponse }))));
51
+ return (0, rxjs_1.from)(response.text()).pipe((0, operators_1.map)((data) => handleResponse(data)), (0, operators_1.switchMap)((httpResponse) => (0, rxjs_1.throwError)({ ...error, httpResponse })));
48
52
  };
49
- const handleReponseData = (response, request) => {
53
+ exports.handleFetchError = handleFetchError;
54
+ const handleResponseData = (response, request) => {
55
+ if (isEmptyResponseBody(response)) {
56
+ return Promise.resolve();
57
+ }
50
58
  switch (request.mediaType) {
51
59
  case js_client_sdk_1.EKvHttpMediaType.json:
52
60
  return response.json();
@@ -54,49 +62,83 @@ const handleReponseData = (response, request) => {
54
62
  return response.text();
55
63
  case js_client_sdk_1.EKvHttpMediaType.zip:
56
64
  return response.blob();
65
+ case js_client_sdk_1.EKvHttpMediaType.csv:
66
+ return response.text();
57
67
  default:
58
- return response.json();
68
+ return response.text();
59
69
  }
60
70
  };
61
- exports.handleFetchRequest = (response, request) => {
62
- const data = handleReponseData(response, request);
63
- return rxjs_1.from(data).pipe(operators_1.map((data) => {
71
+ const handleFetchRequest = (response, request) => {
72
+ const responseData = handleResponseData(response, request);
73
+ return (0, rxjs_1.from)(responseData).pipe((0, operators_1.map)((data) => {
64
74
  const isChunked = request.mediaType === js_client_sdk_1.EKvHttpMediaType.jsonStream;
65
- let parsedData = data;
66
- if (isChunked) {
67
- try {
68
- parsedData = parsedData
69
- ? JSON.parse(parsedData.replace(/\]\n\[/g, ','))
70
- : [];
71
- }
72
- catch (error) {
73
- console.error('Error during parsing chunk data');
74
- parsedData = [];
75
- }
76
- }
75
+ const parsedData = isChunked ? (0, js_client_sdk_1.parseChunkedBody)(data) : data;
77
76
  return transformToSuccessResponse(response, parsedData, request);
78
77
  }));
79
78
  };
80
- exports.buildFetchUrl = ({ url, params }) => {
81
- return params
82
- ? `${url}?${new URLSearchParams(params).toString()}`
83
- : url;
79
+ exports.handleFetchRequest = handleFetchRequest;
80
+ const isEmptyParam = (value) => {
81
+ if (typeof value === 'string') {
82
+ return !value.trim();
83
+ }
84
+ if (Array.isArray(value)) {
85
+ return !value.filter((item) => item !== undefined && item !== null && item !== '').length;
86
+ }
87
+ return false;
88
+ };
89
+ exports.isEmptyParam = isEmptyParam;
90
+ const buildFetchUrl = ({ url, params }) => {
91
+ if (params) {
92
+ const filteredParams = Object.fromEntries(Object.entries(params).filter(([_, value]) => !(0, exports.isEmptyParam)(value)));
93
+ const searchParams = new URLSearchParams(filteredParams);
94
+ return `${url}?${searchParams.toString()}`;
95
+ }
96
+ return url;
84
97
  };
85
- exports.buildFetchRequestInit = ({ method, data, headers: requestHeaders, options = {} }) => {
98
+ exports.buildFetchUrl = buildFetchUrl;
99
+ const buildFetchRequestInit = ({ method, data, headers: requestHeaders, options = {} }) => {
86
100
  const isFormData = data instanceof FormData;
87
101
  const isDataObject = isObject(data) && !isFormData;
88
102
  const headers = isDataObject
89
- ? Object.assign({ 'Content-Type': js_client_sdk_1.EKvHttpMediaType.json }, requestHeaders) : requestHeaders;
103
+ ? { 'Content-Type': js_client_sdk_1.EKvHttpMediaType.json, ...requestHeaders }
104
+ : requestHeaders;
90
105
  const body = isDataObject ? JSON.stringify(data) : data;
91
- return Object.assign({ method,
106
+ return {
107
+ method,
92
108
  headers,
93
- body, redirect: 'error' }, options);
109
+ body,
110
+ redirect: 'error',
111
+ ...options
112
+ };
94
113
  };
95
- exports.handleFetchResponse = (request, response$) => {
96
- return response$.pipe(operators_1.switchMap((response) => response.ok
97
- ? exports.handleFetchRequest(response, request)
98
- : exports.handleFetchError(response, request)));
114
+ exports.buildFetchRequestInit = buildFetchRequestInit;
115
+ const handleFetchResponse = (request, response$, controller) => {
116
+ // All requests can be abortable initially,
117
+ // but after the response is received, it should not be abortable
118
+ let abortable = true;
119
+ return response$.pipe((0, operators_1.switchMap)((response) => response.ok
120
+ ? (0, exports.handleFetchRequest)(response, request)
121
+ : (0, exports.handleFetchError)(response, request)), (0, operators_1.tap)(() => {
122
+ abortable = false;
123
+ }), (0, operators_1.catchError)((err) => {
124
+ if (err instanceof DOMException &&
125
+ err.name === config_1.FETCH_ABORT_ERROR_NAME) {
126
+ return (0, rxjs_1.of)({
127
+ type: js_client_sdk_1.EKvHttpResponseType.Response,
128
+ status: js_client_sdk_1.EKvHttpStatusCode.RequestClosed,
129
+ statusText: err.message,
130
+ config: request
131
+ });
132
+ }
133
+ abortable = false;
134
+ return (0, rxjs_1.throwError)(err);
135
+ }), (0, operators_1.finalize)(() => {
136
+ if (controller && abortable) {
137
+ controller.abort(js_client_sdk_1.EKvHttpStatusCode.RequestClosed);
138
+ }
139
+ }));
99
140
  };
141
+ exports.handleFetchResponse = handleFetchResponse;
100
142
  const transformXHRError = (xhr, config) => {
101
143
  const { status, statusText, responseText } = xhr;
102
144
  return {
@@ -108,16 +150,16 @@ const transformXHRError = (xhr, config) => {
108
150
  body: handleResponse(responseText)
109
151
  };
110
152
  };
111
- exports.handleUploadWithProgress = (requestPayload) => {
153
+ const handleUploadWithProgress = (requestPayload) => {
112
154
  const xhr = new XMLHttpRequest();
113
155
  const response$ = new rxjs_2.Subject();
114
156
  xhr.onload = function () {
115
157
  const { status, response } = this;
116
- if (status >= js_client_sdk_1.EKvHttpStatusCode.SUCCESS &&
117
- status < js_client_sdk_1.EKvHttpStatusCode.MULTIPLE_CHOICES) {
158
+ if (status >= js_client_sdk_1.EKvHttpStatusCode.Ok &&
159
+ status < js_client_sdk_1.EKvHttpStatusCode.MultipleChoices) {
118
160
  const data = handleResponse(response);
119
161
  const headers = transformXHRHeaders(this.getAllResponseHeaders());
120
- response$.next(transformToSuccessResponse(Object.assign(Object.assign({}, this), { headers }), data, requestPayload));
162
+ response$.next(transformToSuccessResponse({ ...this, headers }, data, requestPayload));
121
163
  response$.complete();
122
164
  }
123
165
  else {
@@ -141,4 +183,21 @@ exports.handleUploadWithProgress = (requestPayload) => {
141
183
  xhr.send(requestPayload.data);
142
184
  return response$;
143
185
  };
186
+ exports.handleUploadWithProgress = handleUploadWithProgress;
187
+ const checkBuildController = (requestPayload) => {
188
+ // The abort proccess is already handled by the user
189
+ if (requestPayload.options && requestPayload.options.signal) {
190
+ return [requestPayload, undefined];
191
+ }
192
+ const controller = new AbortController();
193
+ const newPayload = {
194
+ ...requestPayload,
195
+ options: {
196
+ ...requestPayload.options,
197
+ signal: controller.signal
198
+ }
199
+ };
200
+ return [newPayload, controller];
201
+ };
202
+ exports.checkBuildController = checkBuildController;
144
203
  //# sourceMappingURL=util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../src/adapters/http/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../src/adapters/http/util.ts"],"names":[],"mappings":";;;AAAA,4DAQkC;AAKlC,+BAAwD;AACxD,+BAA+B;AAC/B,8CAA2E;AAG3E,qCAAkD;AAElD,MAAM,QAAQ,GAAG,CAAC,KAAK,EAAE,EAAE;IAC1B,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC;IAC1B,OAAO,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,UAAU,CAAC,CAAC;AACrE,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,GAA2B,EAAW,EAAE;IACpE,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,iCAAiB,CAAC,SAAS,CAAC;AAChG,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,QAAgB,EAAoB,EAAE;IAC7D,IAAI,CAAC;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,QAAQ,CAAC;IACjB,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,OAAe,EAAW,EAAE;IACxD,MAAM,aAAa,GAAG,OAAO;SAC3B,IAAI,EAAE;SACN,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAqB,CAAC,CAAC;IAEhE,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,0BAA0B,GAAG,CAClC,YAAyD,EACzD,IAAa,EACb,MAAsB,EACJ,EAAE;IACpB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,YAAY,CAAC;IAErD,OAAO;QACN,IAAI,EAAE,mCAAmB,CAAC,QAAQ;QAClC,IAAI;QACJ,MAAM;QACN,UAAU;QACV,OAAO;QACP,MAAM;QACN,YAAY;KACZ,CAAC;AACH,CAAC,CAAC;AAEK,MAAM,gBAAgB,GAAG,CAC/B,QAAgC,EAChC,OAAuB,EACO,EAAE;IAChC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;IACjD,MAAM,KAAK,GAAG;QACb,MAAM;QACN,UAAU;QACV,OAAO;QACP,MAAM,EAAE,OAAO;KACf,CAAC;IAEF,OAAO,IAAA,WAAI,EAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAChC,IAAA,eAAG,EAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EACnC,IAAA,qBAAS,EAAC,CAAC,YAAY,EAAE,EAAE,CAAC,IAAA,iBAAU,EAAC,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CACnE,CAAC;AACH,CAAC,CAAC;AAhBW,QAAA,gBAAgB,oBAgB3B;AAEF,MAAM,kBAAkB,GAAG,CAC1B,QAAgC,EAChC,OAAuB,EACtB,EAAE;IACH,IAAI,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAED,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC3B,KAAK,gCAAgB,CAAC,IAAI;YACzB,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxB,KAAK,gCAAgB,CAAC,UAAU;YAC/B,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxB,KAAK,gCAAgB,CAAC,GAAG;YACxB,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxB,KAAK,gCAAgB,CAAC,GAAG;YACxB,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxB;YACC,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;AACF,CAAC,CAAC;AAEK,MAAM,kBAAkB,GAAG,CACjC,QAAgC,EAChC,OAAuB,EACO,EAAE;IAChC,MAAM,YAAY,GAAG,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAE3D,OAAO,IAAA,WAAI,EAAC,YAAY,CAAC,CAAC,IAAI,CAC7B,IAAA,eAAG,EAAC,CAAC,IAAI,EAAE,EAAE;QACZ,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,gCAAgB,CAAC,UAAU,CAAC;QACpE,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,IAAA,gCAAgB,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAE7D,OAAO,0BAA0B,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC,CAAC,CACF,CAAC;AACH,CAAC,CAAC;AAdW,QAAA,kBAAkB,sBAc7B;AAEK,MAAM,YAAY,GAAG,CAAC,KAAwB,EAAW,EAAE;IACjE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,KAAK,CAAC,MAAM,CACnB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE,CAC5D,CAAC,MAAM,CAAC;IACV,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAVW,QAAA,YAAY,gBAUvB;AAEK,MAAM,aAAa,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,EAAkB,EAAE,EAAE;IAChE,IAAI,MAAM,EAAE,CAAC;QACZ,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CACxC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAA,oBAAY,EAAC,KAAK,CAAC,CAAC,CACnE,CAAC;QACF,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC,cAAc,CAAC,CAAC;QACzD,OAAO,GAAG,GAAG,IAAI,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC;IAC5C,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC;AATW,QAAA,aAAa,iBASxB;AAEK,MAAM,qBAAqB,GAAG,CAAC,EACrC,MAAM,EACN,IAAI,EACJ,OAAO,EAAE,cAAc,EACvB,OAAO,GAAG,EAAE,EACI,EAAgC,EAAE;IAClD,MAAM,UAAU,GAAG,IAAI,YAAY,QAAQ,CAAC;IAC5C,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IACnD,MAAM,OAAO,GAAG,YAAY;QAC3B,CAAC,CAAC,EAAE,cAAc,EAAE,gCAAgB,CAAC,IAAI,EAAE,GAAG,cAAc,EAAE;QAC9D,CAAC,CAAC,cAAc,CAAC;IAElB,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAExD,OAAO;QACN,MAAM;QACN,OAAO;QACP,IAAI;QACJ,QAAQ,EAAE,OAAO;QACjB,GAAG,OAAO;KACV,CAAC;AACH,CAAC,CAAC;AArBW,QAAA,qBAAqB,yBAqBhC;AAEK,MAAM,mBAAmB,GAAG,CAClC,OAAuB,EACvB,SAA6C,EAC7C,UAA4B,EAC3B,EAAE;IACH,2CAA2C;IAC3C,iEAAiE;IACjE,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,OAAO,SAAS,CAAC,IAAI,CACpB,IAAA,qBAAS,EAAC,CAAC,QAAQ,EAAE,EAAE,CACtB,QAAQ,CAAC,EAAE;QACV,CAAC,CAAC,IAAA,0BAAkB,EAAC,QAAQ,EAAE,OAAO,CAAC;QACvC,CAAC,CAAC,IAAA,wBAAgB,EAAC,QAAQ,EAAE,OAAO,CAAC,CACtC,EACD,IAAA,eAAG,EAAC,GAAG,EAAE;QACR,SAAS,GAAG,KAAK,CAAC;IACnB,CAAC,CAAC,EACF,IAAA,sBAAU,EAAC,CAAC,GAAU,EAAE,EAAE;QACzB,IACC,GAAG,YAAY,YAAY;YAC3B,GAAG,CAAC,IAAI,KAAK,+BAAsB,EAClC,CAAC;YACF,OAAO,IAAA,SAAE,EAAkB;gBAC1B,IAAI,EAAE,mCAAmB,CAAC,QAAQ;gBAClC,MAAM,EAAE,iCAAiB,CAAC,aAAa;gBACvC,UAAU,EAAE,GAAG,CAAC,OAAO;gBACvB,MAAM,EAAE,OAAO;aACf,CAAC,CAAC;QACJ,CAAC;QAED,SAAS,GAAG,KAAK,CAAC;QAClB,OAAO,IAAA,iBAAU,EAAC,GAAG,CAAC,CAAC;IACxB,CAAC,CAAC,EACF,IAAA,oBAAQ,EAAC,GAAG,EAAE;QACb,IAAI,UAAU,IAAI,SAAS,EAAE,CAAC;YAC7B,UAAU,CAAC,KAAK,CAAC,iCAAiB,CAAC,aAAa,CAAC,CAAC;QACnD,CAAC;IACF,CAAC,CAAC,CACF,CAAC;AACH,CAAC,CAAC;AAxCW,QAAA,mBAAmB,uBAwC9B;AAEF,MAAM,iBAAiB,GAAG,CACzB,GAAmB,EACnB,MAA6B,EAC5B,EAAE;IACH,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC;IAEjD,OAAO;QACN,IAAI,EAAE,mCAAmB,CAAC,QAAQ;QAClC,YAAY,EAAE,IAAI;QAClB,MAAM;QACN,MAAM;QACN,UAAU;QACV,IAAI,EAAE,cAAc,CAAC,YAAY,CAAC;KAClC,CAAC;AACH,CAAC,CAAC;AAEK,MAAM,wBAAwB,GAAG,CACvC,cAAqC,EACP,EAAE;IAChC,MAAM,GAAG,GAAG,IAAI,cAAc,EAAE,CAAC;IACjC,MAAM,SAAS,GAAG,IAAI,cAAO,EAAmB,CAAC;IAEjD,GAAG,CAAC,MAAM,GAAG;QACZ,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAElC,IACC,MAAM,IAAI,iCAAiB,CAAC,EAAE;YAC9B,MAAM,GAAG,iCAAiB,CAAC,eAAe,EACzC,CAAC;YACF,MAAM,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC;YAElE,SAAS,CAAC,IAAI,CACb,0BAA0B,CACzB,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EACpB,IAAI,EACJ,cAAc,CACd,CACD,CAAC;YACF,SAAS,CAAC,QAAQ,EAAE,CAAC;QACtB,CAAC;aAAM,CAAC;YACP,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;QAC1D,CAAC;IACF,CAAC,CAAC;IAEF,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,UAEvB,YAA2B;QAE3B,SAAS,CAAC,IAAI,CAAC;YACd,IAAI,EAAE,mCAAmB,CAAC,cAAc;YACxC,MAAM,EAAE,cAAc;YACtB,YAAY;SACZ,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,GAAG,CAAC,OAAO,GAAG;QACb,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC;IAEF,GAAG,CAAC,IAAI,CAAC,6BAAa,CAAC,IAAI,EAAE,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAEvD,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;QAC5B,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAC/D,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,CAChC,CAAC;IACH,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAE9B,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC;AAvDW,QAAA,wBAAwB,4BAuDnC;AAEK,MAAM,oBAAoB,GAAG,CACnC,cAAqC,EACkB,EAAE;IACzD,oDAAoD;IACpD,IAAI,cAAc,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC7D,OAAO,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,UAAU,GAAG;QAClB,GAAG,cAAc;QACjB,OAAO,EAAE;YACR,GAAG,cAAc,CAAC,OAAO;YACzB,MAAM,EAAE,UAAU,CAAC,MAAM;SACzB;KACD,CAAC;IAEF,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;AACjC,CAAC,CAAC;AAlBW,QAAA,oBAAoB,wBAkB/B"}
@@ -1,3 +1,3 @@
1
- export * from '@kelvininc/js-client-sdk';
2
1
  export * from './kelvin-node-sdk';
3
2
  export * from './types';
3
+ export * from '@kelvininc/js-client-sdk';
package/dist/cjs/index.js CHANGED
@@ -1,16 +1,20 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[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);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
8
12
  }));
9
13
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
- for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
15
  };
12
16
  Object.defineProperty(exports, "__esModule", { value: true });
13
- __exportStar(require("@kelvininc/js-client-sdk"), exports);
14
17
  __exportStar(require("./kelvin-node-sdk"), exports);
15
18
  __exportStar(require("./types"), exports);
19
+ __exportStar(require("@kelvininc/js-client-sdk"), exports);
16
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2DAAyC;AACzC,oDAAkC;AAClC,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,0CAAwB;AACxB,2DAAyC"}
@@ -2,12 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.KelvinSDK = void 0;
4
4
  const js_client_sdk_1 = require("@kelvininc/js-client-sdk");
5
+ const config_1 = require("./adapters/http/config");
5
6
  const storage_1 = require("./adapters/storage");
6
7
  const types_1 = require("./types");
7
- const config_1 = require("./adapters/http/config");
8
8
  class KelvinSDK {
9
9
  static initialize(configuration, adapter = types_1.EHttpAdapterType.NodeFetch) {
10
- js_client_sdk_1.init(Object.assign(Object.assign({}, configuration), { httpAdapter: config_1.HTTP_ADAPTER[adapter], storageAdapter: new storage_1.NodeStorageAdapter() }));
10
+ (0, js_client_sdk_1.init)({
11
+ ...configuration,
12
+ httpAdapter: config_1.HTTP_ADAPTER[adapter],
13
+ storageAdapter: new storage_1.NodeStorageAdapter()
14
+ });
11
15
  }
12
16
  }
13
17
  exports.KelvinSDK = KelvinSDK;
@@ -1 +1 @@
1
- {"version":3,"file":"kelvin-node-sdk.js","sourceRoot":"","sources":["../../src/kelvin-node-sdk.ts"],"names":[],"mappings":";;;AAAA,4DAGkC;AAClC,gDAAwD;AACxD,mCAA2C;AAC3C,mDAAsD;AAEtD,MAAa,SAAS;IACrB,MAAM,CAAC,UAAU,CAChB,aAAmC,EACnC,OAAO,GAAG,wBAAgB,CAAC,SAAS;QAEpC,oBAAc,iCACV,aAAa,KAChB,WAAW,EAAE,qBAAY,CAAC,OAAO,CAAC,EAClC,cAAc,EAAE,IAAI,4BAAkB,EAAE,IACvC,CAAC;IACJ,CAAC;CACD;AAXD,8BAWC"}
1
+ {"version":3,"file":"kelvin-node-sdk.js","sourceRoot":"","sources":["../../src/kelvin-node-sdk.ts"],"names":[],"mappings":";;;AAAA,4DAGkC;AAElC,mDAAsD;AACtD,gDAAwD;AACxD,mCAA2C;AAE3C,MAAa,SAAS;IACrB,MAAM,CAAC,UAAU,CAChB,aAAmC,EACnC,OAAO,GAAG,wBAAgB,CAAC,SAAS;QAEpC,IAAA,oBAAc,EAAC;YACd,GAAG,aAAa;YAChB,WAAW,EAAE,qBAAY,CAAC,OAAO,CAAC;YAClC,cAAc,EAAE,IAAI,4BAAkB,EAAE;SACxC,CAAC,CAAC;IACJ,CAAC;CACD;AAXD,8BAWC"}
@@ -1,13 +1,17 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[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);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
8
12
  }));
9
13
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
- for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
15
  };
12
16
  Object.defineProperty(exports, "__esModule", { value: true });
13
17
  __exportStar(require("@kelvininc/js-client-sdk/models"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kEAAgD"}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kEAAgD"}
@@ -3,10 +3,12 @@ export declare enum EHttpAdapterType {
3
3
  Fetch = "fetch",
4
4
  NodeFetch = "node-fetch"
5
5
  }
6
- export declare type KvNodeHttpRequestOptions<L extends RequestInit> = L & IKvHttpRequestOptions;
7
- export interface IKvNodeHttpRequest<L extends {}> extends IKvHttpRequest {
6
+ export type KvNodeHttpRequestOptions<L extends RequestInit> = IKvHttpRequestOptions & {
7
+ signal?: AbortSignal;
8
+ } & L;
9
+ export interface IKvNodeHttpRequest<L extends {} = {}> extends IKvHttpRequest {
8
10
  options?: KvNodeHttpRequestOptions<L>;
9
11
  }
10
- export declare type XHRResponseHeaders = XMLHttpRequest & {
12
+ export type XHRResponseHeaders = XMLHttpRequest & {
11
13
  headers: Headers;
12
14
  };
package/dist/cjs/types.js CHANGED
@@ -5,5 +5,5 @@ var EHttpAdapterType;
5
5
  (function (EHttpAdapterType) {
6
6
  EHttpAdapterType["Fetch"] = "fetch";
7
7
  EHttpAdapterType["NodeFetch"] = "node-fetch";
8
- })(EHttpAdapterType = exports.EHttpAdapterType || (exports.EHttpAdapterType = {}));
8
+ })(EHttpAdapterType || (exports.EHttpAdapterType = EHttpAdapterType = {}));
9
9
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAKA,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC3B,mCAAe,CAAA;IACf,4CAAwB,CAAA;AACzB,CAAC,EAHW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAG3B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAKA,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC3B,mCAAe,CAAA;IACf,4CAAwB,CAAA;AACzB,CAAC,EAHW,gBAAgB,gCAAhB,gBAAgB,QAG3B"}
@@ -3,3 +3,4 @@ import { EHttpAdapterType } from '../../types';
3
3
  export declare const HTTP_ADAPTER: {
4
4
  [key in EHttpAdapterType]: IKvHttpAdapter;
5
5
  };
6
+ export declare const FETCH_ABORT_ERROR_NAME = "AbortError";
@@ -1,8 +1,9 @@
1
1
  import { EHttpAdapterType } from '../../types';
2
- import { NodeFetchHttpAdapter } from './node-fetch-http';
3
2
  import { FetchHttpAdapter } from './fetch-http';
3
+ import { NodeFetchHttpAdapter } from './node-fetch-http';
4
4
  export const HTTP_ADAPTER = {
5
5
  [EHttpAdapterType.NodeFetch]: new NodeFetchHttpAdapter(),
6
6
  [EHttpAdapterType.Fetch]: new FetchHttpAdapter()
7
7
  };
8
+ export const FETCH_ABORT_ERROR_NAME = 'AbortError';
8
9
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/adapters/http/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,YAAY,GAAkD;IAC1E,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,IAAI,oBAAoB,EAAE;IACxD,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,IAAI,gBAAgB,EAAE;CAChD,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/adapters/http/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,MAAM,CAAC,MAAM,YAAY,GAAkD;IAC1E,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,IAAI,oBAAoB,EAAE;IACxD,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,IAAI,gBAAgB,EAAE;CAChD,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,YAAY,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { IKvHttpAdapter, IKvHttpResponse } from '@kelvininc/js-client-sdk';
2
+ import { Response as NF_Response, ResponseInit as NF_RequestInit } from 'node-fetch';
2
3
  import { Observable } from 'rxjs';
3
4
  import { IKvNodeHttpRequest } from 'src/types';
4
- import { Response as NF_Response, ResponseInit as NF_RequestInit } from 'node-fetch';
5
5
  export declare abstract class HTTPRequester implements IKvHttpAdapter {
6
6
  request<L = {}>(requestPayload: IKvNodeHttpRequest<L>): Observable<IKvHttpResponse>;
7
7
  abstract requestAdapter(url: string, requestOptions: RequestInit | NF_RequestInit): Promise<Response | NF_Response>;
@@ -1,6 +1,6 @@
1
1
  import { EKvHttpMethod } from '@kelvininc/js-client-sdk';
2
2
  import { from } from 'rxjs';
3
- import { buildFetchRequestInit, buildFetchUrl, handleFetchResponse, handleUploadWithProgress } from './util';
3
+ import { buildFetchRequestInit, buildFetchUrl, checkBuildController, handleFetchResponse, handleUploadWithProgress } from './util';
4
4
  export class HTTPRequester {
5
5
  request(requestPayload) {
6
6
  const { options, data, method } = requestPayload;
@@ -8,14 +8,17 @@ export class HTTPRequester {
8
8
  * fetch/node-fetch doesn't support progress report for upload.
9
9
  * switched to XHR api.
10
10
  * */
11
- if ((options === null || options === void 0 ? void 0 : options.reportProgress) &&
11
+ if (options?.reportProgress &&
12
12
  data instanceof FormData &&
13
13
  method === EKvHttpMethod.POST) {
14
14
  return handleUploadWithProgress(requestPayload);
15
15
  }
16
- const requestInitConfig = buildFetchRequestInit(requestPayload);
17
- const requestInstance$ = from(this.requestAdapter(buildFetchUrl(requestPayload), Object.assign({}, requestInitConfig)));
18
- return handleFetchResponse(requestPayload, requestInstance$);
16
+ const [updatedRequestPayload, controller] = checkBuildController(requestPayload);
17
+ const requestInitConfig = buildFetchRequestInit(updatedRequestPayload);
18
+ const requestInstance$ = from(this.requestAdapter(buildFetchUrl(requestPayload), {
19
+ ...requestInitConfig
20
+ }));
21
+ return handleFetchResponse(updatedRequestPayload, requestInstance$, controller);
19
22
  }
20
23
  }
21
24
  //# sourceMappingURL=http-requester.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"http-requester.js","sourceRoot":"","sources":["../../../../src/adapters/http/http-requester.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,aAAa,EAGb,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAc,IAAI,EAAE,MAAM,MAAM,CAAC;AAExC,OAAO,EACN,qBAAqB,EACrB,aAAa,EACb,mBAAmB,EACnB,wBAAwB,EACxB,MAAM,QAAQ,CAAC;AAMhB,MAAM,OAAgB,aAAa;IAClC,OAAO,CACN,cAAqC;QAErC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC;QAEjD;;;aAGK;QACL,IACC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc;YACvB,IAAI,YAAY,QAAQ;YACxB,MAAM,KAAK,aAAa,CAAC,IAAI,EAC5B;YACD,OAAO,wBAAwB,CAAI,cAAc,CAAC,CAAC;SACnD;QAED,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAChE,MAAM,gBAAgB,GAAG,IAAI,CAC5B,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,cAAc,CAAC,oBAC7C,iBAAiB,EACnB,CACF,CAAC;QAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAC9D,CAAC;CAMD"}
1
+ {"version":3,"file":"http-requester.js","sourceRoot":"","sources":["../../../../src/adapters/http/http-requester.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,aAAa,EAGb,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EAAE,IAAI,EAAc,MAAM,MAAM,CAAC;AAGxC,OAAO,EACN,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,MAAM,QAAQ,CAAC;AAEhB,MAAM,OAAgB,aAAa;IAClC,OAAO,CACN,cAAqC;QAErC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC;QAEjD;;;aAGK;QACL,IACC,OAAO,EAAE,cAAc;YACvB,IAAI,YAAY,QAAQ;YACxB,MAAM,KAAK,aAAa,CAAC,IAAI,EAC5B,CAAC;YACF,OAAO,wBAAwB,CAAI,cAAc,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,CAAC,qBAAqB,EAAE,UAAU,CAAC,GACxC,oBAAoB,CAAC,cAAc,CAAC,CAAC;QACtC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,qBAAqB,CAAC,CAAC;QACvE,MAAM,gBAAgB,GAAG,IAAI,CAC5B,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE;YAClD,GAAG,iBAAiB;SACpB,CAAC,CACF,CAAC;QAEF,OAAO,mBAAmB,CACzB,qBAAqB,EACrB,gBAAgB,EAChB,UAAU,CACV,CAAC;IACH,CAAC;CAMD"}
@@ -1 +1 @@
1
- {"version":3,"file":"node-fetch-http.js","sourceRoot":"","sources":["../../../../src/adapters/http/node-fetch-http.ts"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,OAAO,oBAAqB,SAAQ,aAAa;IACtD,cAAc,CAAC,GAAW,EAAE,IAAkB;QAC7C,OAAO,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACzB,CAAC;CACD"}
1
+ {"version":3,"file":"node-fetch-http.js","sourceRoot":"","sources":["../../../../src/adapters/http/node-fetch-http.ts"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,YAAY,CAAC;AAE1D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,OAAO,oBAAqB,SAAQ,aAAa;IACtD,cAAc,CAAC,GAAW,EAAE,IAAkB;QAC7C,OAAO,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACzB,CAAC;CACD"}
@@ -1,10 +1,12 @@
1
1
  import { IKvHttpRequest, IKvHttpResponse } from '@kelvininc/js-client-sdk';
2
- import { Observable } from 'rxjs';
3
2
  import { Response as NF_Response, ResponseInit as NF_RequestInit } from 'node-fetch';
3
+ import { Observable } from 'rxjs';
4
4
  import { IKvNodeHttpRequest } from '../../types';
5
5
  export declare const handleFetchError: (response: Response | NF_Response, request: IKvHttpRequest) => Observable<IKvHttpResponse>;
6
6
  export declare const handleFetchRequest: (response: Response | NF_Response, request: IKvHttpRequest) => Observable<IKvHttpResponse>;
7
+ export declare const isEmptyParam: (value: string | string[]) => boolean;
7
8
  export declare const buildFetchUrl: ({ url, params }: IKvHttpRequest) => string;
8
9
  export declare const buildFetchRequestInit: ({ method, data, headers: requestHeaders, options }: IKvHttpRequest) => RequestInit | NF_RequestInit;
9
- export declare const handleFetchResponse: (request: IKvHttpRequest, response$: Observable<Response | NF_Response>) => Observable<IKvHttpResponse>;
10
+ export declare const handleFetchResponse: (request: IKvHttpRequest, response$: Observable<Response | NF_Response>, controller?: AbortController) => Observable<IKvHttpResponse>;
10
11
  export declare const handleUploadWithProgress: <L>(requestPayload: IKvNodeHttpRequest<L>) => Observable<IKvHttpResponse>;
12
+ export declare const checkBuildController: <L>(requestPayload: IKvNodeHttpRequest<L>) => [IKvNodeHttpRequest<L>, AbortController | undefined];