@jcoreio/abortable 1.0.2 → 1.0.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.
package/index.d.mts ADDED
@@ -0,0 +1,3 @@
1
+ export declare const newAbortError: () => DOMException;
2
+ export declare function abortable<T>(promise: Promise<T>, signal: AbortSignal | undefined): Promise<T>;
3
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":["newAbortError","DOMException","abortable","promise","Promise","T","signal","AbortSignal"],"sources":["src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,qBAAaA,aAAa,QAAAC,YACoC;AAI9D,wBAAgBC,SAAS,CAAC,CAAC,CAAAA,CACzBC,OAAO,EAAEC,OAAO,CAACC,CAAC,CAAC,EACnBC,MAAM,EAAEC,WAAW,GAAG,SAAS,GAC9BH,OAAO,CAACC,CAAC,CAAC","ignoreList":[]}
package/index.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,oBACoC,CAAA;AAI9D,wBAAgB,SAAS,CAAC,CAAC,EACzB,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EACnB,MAAM,EAAE,WAAW,GAAG,SAAS,GAC9B,OAAO,CAAC,CAAC,CAAC,CA6BZ"}
1
+ {"version":3,"file":"index.d.ts","names":["newAbortError","DOMException","abortable","promise","Promise","T","signal","AbortSignal"],"sources":["src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,qBAAaA,aAAa,QAAAC,YACoC;AAI9D,wBAAgBC,SAAS,CAAC,CAAC,CAAAA,CACzBC,OAAO,EAAEC,OAAO,CAACC,CAAC,CAAC,EACnBC,MAAM,EAAEC,WAAW,GAAG,SAAS,GAC9BH,OAAO,CAACC,CAAC,CAAC","ignoreList":[]}
package/index.js CHANGED
@@ -30,7 +30,7 @@ function abortable(promise, signal) {
30
30
  return callbacks;
31
31
  };
32
32
  var onAbort = function onAbort() {
33
- return cleanup().reject(newAbortError());
33
+ return cleanup().reject(signal.reason);
34
34
  };
35
35
  promise.then(function (value) {
36
36
  return cleanup().resolve(value);
@@ -38,7 +38,8 @@ function abortable(promise, signal) {
38
38
  return cleanup().reject(error);
39
39
  });
40
40
  if (signal.aborted) {
41
- reject(newAbortError());
41
+ // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
42
+ reject(signal.reason);
42
43
  } else {
43
44
  signal.addEventListener('abort', onAbort);
44
45
  }
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["newAbortError","exports","DOMException","noop","abortable","promise","signal","Promise","resolve","reject","cleanup","callbacks","removeEventListener","onAbort","then","value","error","aborted","addEventListener"],"sources":["src/index.ts"],"sourcesContent":["export const newAbortError = () =>\n new DOMException('This operation was aborted', 'AbortError')\n\nconst noop = () => {}\n\nexport function abortable<T>(\n promise: Promise<T>,\n signal: AbortSignal | undefined\n): Promise<T> {\n if (!signal) return promise\n return new Promise<T>((resolve, reject) => {\n const cleanup = () => {\n const callbacks = { resolve, reject }\n // Prevent memory leaks. If the input promise never resolves, then the handlers\n // below would retain this enclosing Promise's resolve and reject callbacks,\n // which would retain the enclosing Promise and anything waiting on it.\n // By replacing references to these callbacks, we enable the enclosing Promise to\n // be garbage collected\n resolve = noop\n reject = noop\n // Memory could also leak if the signal never aborts, unless we remove the abort\n // handler\n signal.removeEventListener('abort', onAbort)\n return callbacks\n }\n const onAbort = () => cleanup().reject(newAbortError())\n\n promise.then(\n (value) => cleanup().resolve(value),\n (error) => cleanup().reject(error)\n )\n if (signal.aborted) {\n reject(newAbortError())\n } else {\n signal.addEventListener('abort', onAbort)\n }\n })\n}\n"],"mappings":";;;;;;;AAAO,IAAMA,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,SAAhBA,aAAaA,CAAA;EAAA,OACxB,IAAIE,YAAY,CAAC,4BAA4B,EAAE,YAAY,CAAC;AAAA;AAE9D,IAAMC,IAAI,GAAG,SAAPA,IAAIA,CAAA,EAAS,CAAC,CAAC;AAEd,SAASC,SAASA,CACvBC,OAAmB,EACnBC,MAA+B,EACnB;EACZ,IAAI,CAACA,MAAM,EAAE,OAAOD,OAAO;EAC3B,OAAO,IAAIE,OAAO,CAAI,UAACC,OAAO,EAAEC,MAAM,EAAK;IACzC,IAAMC,OAAO,GAAG,SAAVA,OAAOA,CAAA,EAAS;MACpB,IAAMC,SAAS,GAAG;QAAEH,OAAO,EAAPA,OAAO;QAAEC,MAAM,EAANA;MAAO,CAAC;MACrC;MACA;MACA;MACA;MACA;MACAD,OAAO,GAAGL,IAAI;MACdM,MAAM,GAAGN,IAAI;MACb;MACA;MACAG,MAAM,CAACM,mBAAmB,CAAC,OAAO,EAAEC,OAAO,CAAC;MAC5C,OAAOF,SAAS;IAClB,CAAC;IACD,IAAME,OAAO,GAAG,SAAVA,OAAOA,CAAA;MAAA,OAASH,OAAO,CAAC,CAAC,CAACD,MAAM,CAACT,aAAa,CAAC,CAAC,CAAC;IAAA;IAEvDK,OAAO,CAACS,IAAI,CACV,UAACC,KAAK;MAAA,OAAKL,OAAO,CAAC,CAAC,CAACF,OAAO,CAACO,KAAK,CAAC;IAAA,GACnC,UAACC,KAAK;MAAA,OAAKN,OAAO,CAAC,CAAC,CAACD,MAAM,CAACO,KAAK,CAAC;IAAA,CACpC,CAAC;IACD,IAAIV,MAAM,CAACW,OAAO,EAAE;MAClBR,MAAM,CAACT,aAAa,CAAC,CAAC,CAAC;IACzB,CAAC,MAAM;MACLM,MAAM,CAACY,gBAAgB,CAAC,OAAO,EAAEL,OAAO,CAAC;IAC3C;EACF,CAAC,CAAC;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["newAbortError","exports","DOMException","noop","abortable","promise","signal","Promise","resolve","reject","cleanup","callbacks","removeEventListener","onAbort","reason","then","value","error","aborted","addEventListener"],"sources":["src/index.ts"],"sourcesContent":[null],"mappings":";;;;;;;AAAO,IAAMA,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,SAAhBA,aAAaA,CAAA;EAAA,OACxB,IAAIE,YAAY,CAAC,4BAA4B,EAAE,YAAY,CAAC;AAAA;AAE9D,IAAMC,IAAI,GAAG,SAAPA,IAAIA,CAAA,EAAS,CAAC,CAAC;AAEd,SAASC,SAASA,CACvBC,OAAmB,EACnBC,MAA+B,EACnB;EACZ,IAAI,CAACA,MAAM,EAAE,OAAOD,OAAO;EAC3B,OAAO,IAAIE,OAAO,CAAI,UAACC,OAAO,EAAEC,MAAM,EAAK;IACzC,IAAMC,OAAO,GAAG,SAAVA,OAAOA,CAAA,EAAS;MACpB,IAAMC,SAAS,GAAG;QAAEH,OAAO,EAAPA,OAAO;QAAEC,MAAM,EAANA;MAAO,CAAC;MACrC;MACA;MACA;MACA;MACA;MACAD,OAAO,GAAGL,IAAI;MACdM,MAAM,GAAGN,IAAI;MACb;MACA;MACAG,MAAM,CAACM,mBAAmB,CAAC,OAAO,EAAEC,OAAO,CAAC;MAC5C,OAAOF,SAAS;IAClB,CAAC;IACD,IAAME,OAAO,GAAG,SAAVA,OAAOA,CAAA;MAAA,OAASH,OAAO,CAAC,CAAC,CAACD,MAAM,CAACH,MAAM,CAACQ,MAAM,CAAC;IAAA;IAErDT,OAAO,CAACU,IAAI,CACV,UAACC,KAAK;MAAA,OAAKN,OAAO,CAAC,CAAC,CAACF,OAAO,CAACQ,KAAK,CAAC;IAAA,GACnC,UAACC,KAAc;MAAA,OAAKP,OAAO,CAAC,CAAC,CAACD,MAAM,CAACQ,KAAK,CAAC;IAAA,CAC7C,CAAC;IACD,IAAIX,MAAM,CAACY,OAAO,EAAE;MAClB;MACAT,MAAM,CAACH,MAAM,CAACQ,MAAM,CAAC;IACvB,CAAC,MAAM;MACLR,MAAM,CAACa,gBAAgB,CAAC,OAAO,EAAEN,OAAO,CAAC;IAC3C;EACF,CAAC,CAAC;AACJ","ignoreList":[]}
package/index.mjs CHANGED
@@ -20,10 +20,11 @@ export function abortable(promise, signal) {
20
20
  signal.removeEventListener('abort', onAbort);
21
21
  return callbacks;
22
22
  };
23
- const onAbort = () => cleanup().reject(newAbortError());
23
+ const onAbort = () => cleanup().reject(signal.reason);
24
24
  promise.then(value => cleanup().resolve(value), error => cleanup().reject(error));
25
25
  if (signal.aborted) {
26
- reject(newAbortError());
26
+ // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
27
+ reject(signal.reason);
27
28
  } else {
28
29
  signal.addEventListener('abort', onAbort);
29
30
  }
package/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["newAbortError","DOMException","noop","abortable","promise","signal","Promise","resolve","reject","cleanup","callbacks","removeEventListener","onAbort","then","value","error","aborted","addEventListener"],"sources":["src/index.ts"],"sourcesContent":["export const newAbortError = () =>\n new DOMException('This operation was aborted', 'AbortError')\n\nconst noop = () => {}\n\nexport function abortable<T>(\n promise: Promise<T>,\n signal: AbortSignal | undefined\n): Promise<T> {\n if (!signal) return promise\n return new Promise<T>((resolve, reject) => {\n const cleanup = () => {\n const callbacks = { resolve, reject }\n // Prevent memory leaks. If the input promise never resolves, then the handlers\n // below would retain this enclosing Promise's resolve and reject callbacks,\n // which would retain the enclosing Promise and anything waiting on it.\n // By replacing references to these callbacks, we enable the enclosing Promise to\n // be garbage collected\n resolve = noop\n reject = noop\n // Memory could also leak if the signal never aborts, unless we remove the abort\n // handler\n signal.removeEventListener('abort', onAbort)\n return callbacks\n }\n const onAbort = () => cleanup().reject(newAbortError())\n\n promise.then(\n (value) => cleanup().resolve(value),\n (error) => cleanup().reject(error)\n )\n if (signal.aborted) {\n reject(newAbortError())\n } else {\n signal.addEventListener('abort', onAbort)\n }\n })\n}\n"],"mappings":"AAAA,OAAO,MAAMA,aAAa,GAAGA,CAAA,KAC3B,IAAIC,YAAY,CAAC,4BAA4B,EAAE,YAAY,CAAC;AAE9D,MAAMC,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;AAErB,OAAO,SAASC,SAASA,CACvBC,OAAmB,EACnBC,MAA+B,EACnB;EACZ,IAAI,CAACA,MAAM,EAAE,OAAOD,OAAO;EAC3B,OAAO,IAAIE,OAAO,CAAI,CAACC,OAAO,EAAEC,MAAM,KAAK;IACzC,MAAMC,OAAO,GAAGA,CAAA,KAAM;MACpB,MAAMC,SAAS,GAAG;QAAEH,OAAO;QAAEC;MAAO,CAAC;MACrC;MACA;MACA;MACA;MACA;MACAD,OAAO,GAAGL,IAAI;MACdM,MAAM,GAAGN,IAAI;MACb;MACA;MACAG,MAAM,CAACM,mBAAmB,CAAC,OAAO,EAAEC,OAAO,CAAC;MAC5C,OAAOF,SAAS;IAClB,CAAC;IACD,MAAME,OAAO,GAAGA,CAAA,KAAMH,OAAO,CAAC,CAAC,CAACD,MAAM,CAACR,aAAa,CAAC,CAAC,CAAC;IAEvDI,OAAO,CAACS,IAAI,CACTC,KAAK,IAAKL,OAAO,CAAC,CAAC,CAACF,OAAO,CAACO,KAAK,CAAC,EAClCC,KAAK,IAAKN,OAAO,CAAC,CAAC,CAACD,MAAM,CAACO,KAAK,CACnC,CAAC;IACD,IAAIV,MAAM,CAACW,OAAO,EAAE;MAClBR,MAAM,CAACR,aAAa,CAAC,CAAC,CAAC;IACzB,CAAC,MAAM;MACLK,MAAM,CAACY,gBAAgB,CAAC,OAAO,EAAEL,OAAO,CAAC;IAC3C;EACF,CAAC,CAAC;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"index.mjs","names":["newAbortError","DOMException","noop","abortable","promise","signal","Promise","resolve","reject","cleanup","callbacks","removeEventListener","onAbort","reason","then","value","error","aborted","addEventListener"],"sources":["src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,MAAMA,aAAa,GAAGA,CAAA,KAC3B,IAAIC,YAAY,CAAC,4BAA4B,EAAE,YAAY,CAAC;AAE9D,MAAMC,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;AAErB,OAAO,SAASC,SAASA,CACvBC,OAAmB,EACnBC,MAA+B,EACnB;EACZ,IAAI,CAACA,MAAM,EAAE,OAAOD,OAAO;EAC3B,OAAO,IAAIE,OAAO,CAAI,CAACC,OAAO,EAAEC,MAAM,KAAK;IACzC,MAAMC,OAAO,GAAGA,CAAA,KAAM;MACpB,MAAMC,SAAS,GAAG;QAAEH,OAAO;QAAEC;MAAO,CAAC;MACrC;MACA;MACA;MACA;MACA;MACAD,OAAO,GAAGL,IAAI;MACdM,MAAM,GAAGN,IAAI;MACb;MACA;MACAG,MAAM,CAACM,mBAAmB,CAAC,OAAO,EAAEC,OAAO,CAAC;MAC5C,OAAOF,SAAS;IAClB,CAAC;IACD,MAAME,OAAO,GAAGA,CAAA,KAAMH,OAAO,CAAC,CAAC,CAACD,MAAM,CAACH,MAAM,CAACQ,MAAM,CAAC;IAErDT,OAAO,CAACU,IAAI,CACTC,KAAK,IAAKN,OAAO,CAAC,CAAC,CAACF,OAAO,CAACQ,KAAK,CAAC,EAClCC,KAAc,IAAKP,OAAO,CAAC,CAAC,CAACD,MAAM,CAACQ,KAAK,CAC5C,CAAC;IACD,IAAIX,MAAM,CAACY,OAAO,EAAE;MAClB;MACAT,MAAM,CAACH,MAAM,CAACQ,MAAM,CAAC;IACvB,CAAC,MAAM;MACLR,MAAM,CAACa,gBAAgB,CAAC,OAAO,EAAEN,OAAO,CAAC;IAC3C;EACF,CAAC,CAAC;AACJ","ignoreList":[]}
package/package.json CHANGED
@@ -17,7 +17,7 @@
17
17
  "abort",
18
18
  "promise"
19
19
  ],
20
- "version": "1.0.2",
20
+ "version": "1.0.3",
21
21
  "sideEffects": false,
22
22
  "engines": {
23
23
  "node": ">=16"
@@ -28,14 +28,17 @@
28
28
  "exports": {
29
29
  "./package.json": "./package.json",
30
30
  ".": {
31
- "types": "./index.d.ts",
31
+ "types": {
32
+ "import": "./index.d.mts",
33
+ "default": "./index.d.ts"
34
+ },
32
35
  "import": "./index.mjs",
33
36
  "default": "./index.js"
34
37
  }
35
38
  },
36
- "packageManager": "pnpm@8.11.0",
39
+ "packageManager": "pnpm@10.6.5",
37
40
  "dependencies": {},
38
41
  "@jcoreio/toolchain": {
39
- "migratedVersion": "4.12.3"
42
+ "migratedVersion": "5.8.8"
40
43
  }
41
44
  }
package/src/index.ts CHANGED
@@ -23,14 +23,15 @@ export function abortable<T>(
23
23
  signal.removeEventListener('abort', onAbort)
24
24
  return callbacks
25
25
  }
26
- const onAbort = () => cleanup().reject(newAbortError())
26
+ const onAbort = () => cleanup().reject(signal.reason)
27
27
 
28
28
  promise.then(
29
29
  (value) => cleanup().resolve(value),
30
- (error) => cleanup().reject(error)
30
+ (error: unknown) => cleanup().reject(error)
31
31
  )
32
32
  if (signal.aborted) {
33
- reject(newAbortError())
33
+ // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
34
+ reject(signal.reason)
34
35
  } else {
35
36
  signal.addEventListener('abort', onAbort)
36
37
  }