@whatwg-node/node-fetch 0.4.2-rc-20230605152941-d296e3c → 0.4.3-alpha-20230608092002-31ae5e4

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.
package/cjs/Request.js CHANGED
@@ -43,7 +43,7 @@ class PonyfillRequest extends Body_js_1.PonyfillBody {
43
43
  this.redirect = requestInit?.redirect || 'follow';
44
44
  this.referrer = requestInit?.referrer || 'about:client';
45
45
  this.referrerPolicy = requestInit?.referrerPolicy || 'no-referrer';
46
- this.signal = requestInit?.signal || new AbortController().signal;
46
+ this._signal = requestInit?.signal;
47
47
  this.headersSerializer = requestInit?.headersSerializer || utils_js_1.getHeadersObj;
48
48
  this.agent = requestInit?.agent;
49
49
  this.url = url || '';
@@ -66,6 +66,14 @@ class PonyfillRequest extends Body_js_1.PonyfillBody {
66
66
  this.contentLength = parseInt(contentLengthInHeaders, 10);
67
67
  }
68
68
  }
69
+ get signal() {
70
+ // Create a new signal only if needed
71
+ // Because the creation of signal is expensive
72
+ if (this._signal) {
73
+ this._signal = new AbortController().signal;
74
+ }
75
+ return this._signal;
76
+ }
69
77
  clone() {
70
78
  return new Request(this);
71
79
  }
package/esm/Request.js CHANGED
@@ -40,7 +40,7 @@ export class PonyfillRequest extends PonyfillBody {
40
40
  this.redirect = requestInit?.redirect || 'follow';
41
41
  this.referrer = requestInit?.referrer || 'about:client';
42
42
  this.referrerPolicy = requestInit?.referrerPolicy || 'no-referrer';
43
- this.signal = requestInit?.signal || new AbortController().signal;
43
+ this._signal = requestInit?.signal;
44
44
  this.headersSerializer = requestInit?.headersSerializer || getHeadersObj;
45
45
  this.agent = requestInit?.agent;
46
46
  this.url = url || '';
@@ -63,6 +63,14 @@ export class PonyfillRequest extends PonyfillBody {
63
63
  this.contentLength = parseInt(contentLengthInHeaders, 10);
64
64
  }
65
65
  }
66
+ get signal() {
67
+ // Create a new signal only if needed
68
+ // Because the creation of signal is expensive
69
+ if (this._signal) {
70
+ this._signal = new AbortController().signal;
71
+ }
72
+ return this._signal;
73
+ }
66
74
  clone() {
67
75
  return new Request(this);
68
76
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whatwg-node/node-fetch",
3
- "version": "0.4.2-rc-20230605152941-d296e3c",
3
+ "version": "0.4.3-alpha-20230608092002-31ae5e4",
4
4
  "description": "Fetch API implementation for Node",
5
5
  "sideEffects": false,
6
6
  "dependencies": {
@@ -25,7 +25,8 @@ export declare class PonyfillRequest<TJSON = any> extends PonyfillBody<TJSON> im
25
25
  referrer: string;
26
26
  referrerPolicy: ReferrerPolicy;
27
27
  url: string;
28
- signal: AbortSignal;
28
+ _signal: AbortSignal | undefined | null;
29
+ get signal(): AbortSignal;
29
30
  agent?: Agent;
30
31
  clone(): Request;
31
32
  }
@@ -25,7 +25,8 @@ export declare class PonyfillRequest<TJSON = any> extends PonyfillBody<TJSON> im
25
25
  referrer: string;
26
26
  referrerPolicy: ReferrerPolicy;
27
27
  url: string;
28
- signal: AbortSignal;
28
+ _signal: AbortSignal | undefined | null;
29
+ get signal(): AbortSignal;
29
30
  agent?: Agent;
30
31
  clone(): Request;
31
32
  }