@whatwg-node/promise-helpers 1.2.3 → 1.2.4

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/index.js CHANGED
@@ -15,6 +15,12 @@ function isPromise(value) {
15
15
  function handleMaybePromise(inputFactory, outputSuccessFactory, outputErrorFactory) {
16
16
  function _handleMaybePromise() {
17
17
  const input$ = inputFactory();
18
+ if (isFakePromise(input$)) {
19
+ return outputSuccessFactory(input$.__fakePromiseValue);
20
+ }
21
+ if (isFakeRejectPromise(input$)) {
22
+ throw input$.__fakeRejectError;
23
+ }
18
24
  if (isPromise(input$)) {
19
25
  return input$.then(outputSuccessFactory, outputErrorFactory);
20
26
  }
@@ -61,6 +67,7 @@ function fakePromise(value) {
61
67
  return this;
62
68
  },
63
69
  [Symbol.toStringTag]: 'Promise',
70
+ __fakePromiseValue: value,
64
71
  };
65
72
  }
66
73
  function createDeferredPromise() {
@@ -130,6 +137,7 @@ function fakeRejectPromise(error) {
130
137
  }
131
138
  return this;
132
139
  },
140
+ __fakeRejectError: error,
133
141
  [Symbol.toStringTag]: 'Promise',
134
142
  };
135
143
  }
@@ -206,3 +214,9 @@ function mapAsyncIterator(iterator, onNext, onError, onEnd) {
206
214
  function iteratorResult(value) {
207
215
  return { value, done: false };
208
216
  }
217
+ function isFakePromise(value) {
218
+ return value?.__fakePromiseValue != null;
219
+ }
220
+ function isFakeRejectPromise(value) {
221
+ return value?.__fakeRejectError != null;
222
+ }
package/esm/index.js CHANGED
@@ -4,6 +4,12 @@ export function isPromise(value) {
4
4
  export function handleMaybePromise(inputFactory, outputSuccessFactory, outputErrorFactory) {
5
5
  function _handleMaybePromise() {
6
6
  const input$ = inputFactory();
7
+ if (isFakePromise(input$)) {
8
+ return outputSuccessFactory(input$.__fakePromiseValue);
9
+ }
10
+ if (isFakeRejectPromise(input$)) {
11
+ throw input$.__fakeRejectError;
12
+ }
7
13
  if (isPromise(input$)) {
8
14
  return input$.then(outputSuccessFactory, outputErrorFactory);
9
15
  }
@@ -50,6 +56,7 @@ export function fakePromise(value) {
50
56
  return this;
51
57
  },
52
58
  [Symbol.toStringTag]: 'Promise',
59
+ __fakePromiseValue: value,
53
60
  };
54
61
  }
55
62
  export function createDeferredPromise() {
@@ -120,6 +127,7 @@ export function fakeRejectPromise(error) {
120
127
  }
121
128
  return this;
122
129
  },
130
+ __fakeRejectError: error,
123
131
  [Symbol.toStringTag]: 'Promise',
124
132
  };
125
133
  }
@@ -196,3 +204,9 @@ export function mapAsyncIterator(iterator, onNext, onError, onEnd) {
196
204
  function iteratorResult(value) {
197
205
  return { value, done: false };
198
206
  }
207
+ function isFakePromise(value) {
208
+ return value?.__fakePromiseValue != null;
209
+ }
210
+ function isFakeRejectPromise(value) {
211
+ return value?.__fakeRejectError != null;
212
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whatwg-node/promise-helpers",
3
- "version": "1.2.3",
3
+ "version": "1.2.4",
4
4
  "description": "Promise helpers",
5
5
  "sideEffects": false,
6
6
  "dependencies": {