@nestia/fetcher 2.3.9 → 2.3.10-dev.20231122

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.
@@ -53,6 +53,13 @@ export interface IConnection<Headers extends object = {}> {
53
53
  * security reason.
54
54
  */
55
55
  encryption?: IEncryptionPassword | IEncryptionPassword.Closure;
56
+ /**
57
+ * Custom fetch function.
58
+ *
59
+ * If you want to use custom `fetch` function instead of built-in function,
60
+ * assign your custom `fetch` function into this property.
61
+ */
62
+ fetch?: typeof fetch;
56
63
  }
57
64
  export declare namespace IConnection {
58
65
  /**
@@ -119,18 +119,18 @@ var FetcherBase;
119
119
  var _Propagate = function (method) {
120
120
  return function (props) {
121
121
  return function (connection, route, input, stringify) { return __awaiter(_this, void 0, void 0, function () {
122
- var headers, init, path, url, response, result, _a, type, text, query, _b, _c, _d, _e;
123
- var _f, _g, _h, _j, _k, _l, _m;
124
- return __generator(this, function (_o) {
125
- switch (_o.label) {
122
+ var headers, init, path, url, response, _a, result, _b, type, text, query, _c, _d, _e, _f;
123
+ var _g, _h, _j, _k, _l, _m, _o, _p;
124
+ return __generator(this, function (_q) {
125
+ switch (_q.label) {
126
126
  case 0:
127
- headers = __assign({}, ((_f = connection.headers) !== null && _f !== void 0 ? _f : {}));
127
+ headers = __assign({}, ((_g = connection.headers) !== null && _g !== void 0 ? _g : {}));
128
128
  if (input !== undefined) {
129
- if (((_g = route.request) === null || _g === void 0 ? void 0 : _g.type) === undefined)
129
+ if (((_h = route.request) === null || _h === void 0 ? void 0 : _h.type) === undefined)
130
130
  throw new Error("Error on ".concat(props.className, ".fetch(): no content-type being configured."));
131
131
  headers["Content-Type"] = route.request.type;
132
132
  }
133
- init = __assign(__assign({}, ((_h = connection.options) !== null && _h !== void 0 ? _h : {})), { method: route.method, headers: (function () {
133
+ init = __assign(__assign({}, ((_j = connection.options) !== null && _j !== void 0 ? _j : {})), { method: route.method, headers: (function () {
134
134
  var e_1, _a, e_2, _b;
135
135
  var output = [];
136
136
  try {
@@ -169,9 +169,9 @@ var FetcherBase;
169
169
  if (input !== undefined)
170
170
  init.body = props.encode(
171
171
  // BODY TRANSFORM
172
- ((_j = route.request) === null || _j === void 0 ? void 0 : _j.type) === "application/x-www-form-urlencoded"
172
+ ((_k = route.request) === null || _k === void 0 ? void 0 : _k.type) === "application/x-www-form-urlencoded"
173
173
  ? request_query_body(input)
174
- : ((_k = route.request) === null || _k === void 0 ? void 0 : _k.type) !== "text/plain"
174
+ : ((_l = route.request) === null || _l === void 0 ? void 0 : _l.type) !== "text/plain"
175
175
  ? (stringify !== null && stringify !== void 0 ? stringify : JSON.stringify)(input)
176
176
  : input, headers);
177
177
  path = connection.host[connection.host.length - 1] !== "/" &&
@@ -179,10 +179,16 @@ var FetcherBase;
179
179
  ? "/".concat(route.path)
180
180
  : route.path;
181
181
  url = new URL("".concat(connection.host).concat(path));
182
- return [4 /*yield*/, polyfill.get()];
183
- case 1: return [4 /*yield*/, (_o.sent())(url.href, init)];
182
+ if (!((_m = connection.fetch) !== null && _m !== void 0)) return [3 /*break*/, 1];
183
+ _a = _m;
184
+ return [3 /*break*/, 3];
185
+ case 1: return [4 /*yield*/, polyfill.get()];
184
186
  case 2:
185
- response = _o.sent();
187
+ _a = (_q.sent());
188
+ _q.label = 3;
189
+ case 3: return [4 /*yield*/, (_a)(url.href, init)];
190
+ case 4:
191
+ response = _q.sent();
186
192
  result = {
187
193
  success: response.status === 200 ||
188
194
  response.status === 201 ||
@@ -191,13 +197,13 @@ var FetcherBase;
191
197
  headers: response_headers_to_object(response.headers),
192
198
  data: undefined,
193
199
  };
194
- if (!(result.success === false)) return [3 /*break*/, 4];
200
+ if (!(result.success === false)) return [3 /*break*/, 6];
195
201
  // WHEN FAILED
196
- _a = result;
202
+ _b = result;
197
203
  return [4 /*yield*/, response.text()];
198
- case 3:
204
+ case 5:
199
205
  // WHEN FAILED
200
- _a.data = _o.sent();
206
+ _b.data = _q.sent();
201
207
  type = response.headers.get("content-type");
202
208
  if (method !== "fetch" &&
203
209
  type &&
@@ -205,37 +211,37 @@ var FetcherBase;
205
211
  try {
206
212
  result.data = JSON.parse(result.data);
207
213
  }
208
- catch (_p) { }
209
- return [3 /*break*/, 11];
210
- case 4:
211
- if (!(route.method === "HEAD")) return [3 /*break*/, 5];
212
- result.data = undefined;
213
- return [3 /*break*/, 11];
214
- case 5:
215
- if (!(((_l = route.response) === null || _l === void 0 ? void 0 : _l.type) === "application/json")) return [3 /*break*/, 7];
216
- return [4 /*yield*/, response.text()];
214
+ catch (_r) { }
215
+ return [3 /*break*/, 13];
217
216
  case 6:
218
- text = _o.sent();
219
- result.data = text.length ? JSON.parse(text) : undefined;
220
- return [3 /*break*/, 11];
217
+ if (!(route.method === "HEAD")) return [3 /*break*/, 7];
218
+ result.data = undefined;
219
+ return [3 /*break*/, 13];
221
220
  case 7:
222
- if (!(((_m = route.response) === null || _m === void 0 ? void 0 : _m.type) === "application/x-www-form-urlencoded")) return [3 /*break*/, 9];
223
- _b = URLSearchParams.bind;
221
+ if (!(((_o = route.response) === null || _o === void 0 ? void 0 : _o.type) === "application/json")) return [3 /*break*/, 9];
224
222
  return [4 /*yield*/, response.text()];
225
223
  case 8:
226
- query = new (_b.apply(URLSearchParams, [void 0, _o.sent()]))();
224
+ text = _q.sent();
225
+ result.data = text.length ? JSON.parse(text) : undefined;
226
+ return [3 /*break*/, 13];
227
+ case 9:
228
+ if (!(((_p = route.response) === null || _p === void 0 ? void 0 : _p.type) === "application/x-www-form-urlencoded")) return [3 /*break*/, 11];
229
+ _c = URLSearchParams.bind;
230
+ return [4 /*yield*/, response.text()];
231
+ case 10:
232
+ query = new (_c.apply(URLSearchParams, [void 0, _q.sent()]))();
227
233
  result.data = route.parseQuery
228
234
  ? route.parseQuery(query)
229
235
  : query;
230
- return [3 /*break*/, 11];
231
- case 9:
232
- _c = result;
233
- _e = (_d = props).decode;
236
+ return [3 /*break*/, 13];
237
+ case 11:
238
+ _d = result;
239
+ _f = (_e = props).decode;
234
240
  return [4 /*yield*/, response.text()];
235
- case 10:
236
- _c.data = _e.apply(_d, [_o.sent(), result.headers]);
237
- _o.label = 11;
238
- case 11: return [2 /*return*/, result];
241
+ case 12:
242
+ _d.data = _f.apply(_e, [_q.sent(), result.headers]);
243
+ _q.label = 13;
244
+ case 13: return [2 /*return*/, result];
239
245
  }
240
246
  });
241
247
  }); };
@@ -254,8 +260,7 @@ var polyfill = new Singleton_1.Singleton(function () { return __awaiter(void 0,
254
260
  if (!(typeof global === "object" &&
255
261
  typeof global.process === "object" &&
256
262
  typeof global.process.versions === "object" &&
257
- typeof global.process.versions.node !== undefined)) return [3 /*break*/, 5];
258
- if (!(global.fetch === undefined)) return [3 /*break*/, 4];
263
+ typeof global.process.versions.node !== undefined)) return [3 /*break*/, 4];
259
264
  if (!((_c = global.fetch) !== null && _c !== void 0)) return [3 /*break*/, 1];
260
265
  _a = _c;
261
266
  return [3 /*break*/, 3];
@@ -267,9 +272,8 @@ var polyfill = new Singleton_1.Singleton(function () { return __awaiter(void 0,
267
272
  _d.label = 3;
268
273
  case 3:
269
274
  _a;
270
- _d.label = 4;
271
- case 4: return [2 /*return*/, global.fetch];
272
- case 5: return [2 /*return*/, window.fetch];
275
+ return [2 /*return*/, global.fetch];
276
+ case 4: return [2 /*return*/, window.fetch];
273
277
  }
274
278
  });
275
279
  }); });
@@ -1 +1 @@
1
- {"version":3,"file":"FetcherBase.js","sourceRoot":"","sources":["../../src/internal/FetcherBase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FetcherBase.js","sourceRoot":"","sources":["../../src/internal/FetcherBase.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nestia/fetcher",
3
- "version": "2.3.9",
3
+ "version": "2.3.10-dev.20231122",
4
4
  "description": "Fetcher library of Nestia SDK",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
@@ -60,6 +60,14 @@ export interface IConnection<Headers extends object = {}> {
60
60
  * security reason.
61
61
  */
62
62
  encryption?: IEncryptionPassword | IEncryptionPassword.Closure;
63
+
64
+ /**
65
+ * Custom fetch function.
66
+ *
67
+ * If you want to use custom `fetch` function instead of built-in function,
68
+ * assign your custom `fetch` function into this property.
69
+ */
70
+ fetch?: typeof fetch;
63
71
  }
64
72
  export namespace IConnection {
65
73
  /**
@@ -129,7 +129,7 @@ export namespace FetcherBase {
129
129
 
130
130
  // DO FETCH
131
131
  const response: Response = await (
132
- await polyfill.get()
132
+ connection.fetch ?? (await polyfill.get())
133
133
  )(url.href, init);
134
134
 
135
135
  // CONSTRUCT RESULT DATA
@@ -189,8 +189,7 @@ const polyfill = new Singleton(async (): Promise<typeof fetch> => {
189
189
  typeof global.process.versions === "object" &&
190
190
  typeof global.process.versions.node !== undefined
191
191
  ) {
192
- if (global.fetch === undefined)
193
- global.fetch ??= ((await import2("node-fetch")) as any).default;
192
+ global.fetch ??= ((await import2("node-fetch")) as any).default;
194
193
  return (global as any).fetch;
195
194
  }
196
195
  return window.fetch;