@vve/redux-saga 8.4.0 → 9.0.0-alpha.10

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 (75) hide show
  1. package/es/effects.js +3 -2
  2. package/es/effects.js.map +1 -0
  3. package/es/index.js +11 -10
  4. package/es/index.js.map +1 -0
  5. package/es/internal/buffers.js +21 -45
  6. package/es/internal/buffers.js.map +1 -0
  7. package/es/internal/channel.js +36 -87
  8. package/es/internal/channel.js.map +1 -0
  9. package/es/internal/channels-trans-table.png +0 -0
  10. package/es/internal/convenient-io.js +6 -19
  11. package/es/internal/convenient-io.js.map +1 -0
  12. package/es/internal/io-helpers.js +7 -9
  13. package/es/internal/io-helpers.js.map +1 -0
  14. package/es/internal/io.js +70 -113
  15. package/es/internal/io.js.map +1 -0
  16. package/es/internal/middleware.js +42 -45
  17. package/es/internal/middleware.js.map +1 -0
  18. package/es/internal/proc.js +188 -358
  19. package/es/internal/proc.js.map +1 -0
  20. package/es/internal/runSaga.js +20 -27
  21. package/es/internal/runSaga.js.map +1 -0
  22. package/es/internal/sagaHelpers/fsmIterator.js +13 -22
  23. package/es/internal/sagaHelpers/fsmIterator.js.map +1 -0
  24. package/es/internal/sagaHelpers/index.js +12 -13
  25. package/es/internal/sagaHelpers/index.js.map +1 -0
  26. package/es/internal/sagaHelpers/takeEvery.js +13 -20
  27. package/es/internal/sagaHelpers/takeEvery.js.map +1 -0
  28. package/es/internal/sagaHelpers/takeLatest.js +19 -33
  29. package/es/internal/sagaHelpers/takeLatest.js.map +1 -0
  30. package/es/internal/sagaHelpers/throttle.js +22 -36
  31. package/es/internal/sagaHelpers/throttle.js.map +1 -0
  32. package/es/internal/scheduler.js +7 -11
  33. package/es/internal/scheduler.js.map +1 -0
  34. package/es/internal/utils.js +101 -205
  35. package/es/internal/utils.js.map +1 -0
  36. package/es/utils.js +5 -4
  37. package/es/utils.js.map +1 -0
  38. package/lib/effects.js +138 -30
  39. package/lib/effects.js.map +1 -0
  40. package/lib/index.js +86 -48
  41. package/lib/index.js.map +1 -0
  42. package/lib/internal/buffers.js +24 -48
  43. package/lib/internal/buffers.js.map +1 -0
  44. package/lib/internal/channel.js +43 -100
  45. package/lib/internal/channel.js.map +1 -0
  46. package/lib/internal/channels-trans-table.png +0 -0
  47. package/lib/internal/convenient-io.js +10 -23
  48. package/lib/internal/convenient-io.js.map +1 -0
  49. package/lib/internal/io-helpers.js +10 -15
  50. package/lib/internal/io-helpers.js.map +1 -0
  51. package/lib/internal/io.js +89 -149
  52. package/lib/internal/io.js.map +1 -0
  53. package/lib/internal/middleware.js +46 -51
  54. package/lib/internal/middleware.js.map +1 -0
  55. package/lib/internal/proc.js +194 -372
  56. package/lib/internal/proc.js.map +1 -0
  57. package/lib/internal/runSaga.js +25 -35
  58. package/lib/internal/runSaga.js.map +1 -0
  59. package/lib/internal/sagaHelpers/fsmIterator.js +19 -29
  60. package/lib/internal/sagaHelpers/fsmIterator.js.map +1 -0
  61. package/lib/internal/sagaHelpers/index.js +37 -27
  62. package/lib/internal/sagaHelpers/index.js.map +1 -0
  63. package/lib/internal/sagaHelpers/takeEvery.js +19 -31
  64. package/lib/internal/sagaHelpers/takeEvery.js.map +1 -0
  65. package/lib/internal/sagaHelpers/takeLatest.js +25 -44
  66. package/lib/internal/sagaHelpers/takeLatest.js.map +1 -0
  67. package/lib/internal/sagaHelpers/throttle.js +28 -49
  68. package/lib/internal/sagaHelpers/throttle.js.map +1 -0
  69. package/lib/internal/scheduler.js +11 -15
  70. package/lib/internal/scheduler.js.map +1 -0
  71. package/lib/internal/utils.js +119 -247
  72. package/lib/internal/utils.js.map +1 -0
  73. package/lib/utils.js +69 -22
  74. package/lib/utils.js.map +1 -0
  75. package/package.json +19 -18
package/es/internal/io.js CHANGED
@@ -1,5 +1,6 @@
1
- import { sym, is, ident, check, deprecate, updateIncentive, createSetContextWarning, SELF_CANCELLATION } from './utils';
2
- var IO = /*#__PURE__*/sym('IO');
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import { sym, is, ident, check, deprecate, updateIncentive, createSetContextWarning, SELF_CANCELLATION } from "./utils";
3
+ var IO = sym('IO');
3
4
  var TAKE = 'TAKE';
4
5
  var PUT = 'PUT';
5
6
  var ALL = 'ALL';
@@ -19,195 +20,158 @@ var FLUSH = 'FLUSH';
19
20
  var GET_CONTEXT = 'GET_CONTEXT';
20
21
  var SET_CONTEXT = 'SET_CONTEXT';
21
22
  var TEST_HINT = '\n(HINT: if you are getting this errors in tests, consider using createMockTask from redux-saga/utils)';
22
-
23
- var effect = function effect(type, payload) {
24
- var _ref;
25
-
26
- return _ref = {}, _ref[IO] = true, _ref[type] = payload, _ref;
27
- };
28
-
29
- export var detach = function detach(eff) {
23
+ var effect = (type, payload) => ({
24
+ [IO]: true,
25
+ [type]: payload
26
+ });
27
+ export var detach = eff => {
30
28
  check(asEffect.fork(eff), is.object, 'detach(eff): argument must be a fork effect');
31
29
  eff[FORK].detached = true;
32
30
  return eff;
33
31
  };
34
- export function take(patternOrChannel) {
35
- if (patternOrChannel === void 0) {
36
- patternOrChannel = '*';
37
- }
38
-
32
+ export function take() {
33
+ var patternOrChannel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '*';
39
34
  if (arguments.length) {
40
35
  check(arguments[0], is.notUndef, 'take(patternOrChannel): patternOrChannel is undefined');
41
36
  }
42
-
43
37
  if (is.pattern(patternOrChannel)) {
44
38
  return effect(TAKE, {
45
39
  pattern: patternOrChannel
46
40
  });
47
41
  }
48
-
49
42
  if (is.channel(patternOrChannel)) {
50
43
  return effect(TAKE, {
51
44
  channel: patternOrChannel
52
45
  });
53
46
  }
54
-
55
- throw new Error("take(patternOrChannel): argument " + String(patternOrChannel) + " is not valid channel or a valid pattern");
47
+ throw new Error(`take(patternOrChannel): argument ${String(patternOrChannel)} is not valid channel or a valid pattern`);
56
48
  }
57
-
58
49
  take.maybe = function () {
59
- var eff = take.apply(void 0, arguments);
50
+ var eff = take(...arguments);
60
51
  eff[TAKE].maybe = true;
61
52
  return eff;
62
53
  };
63
-
64
- export var takem = /*#__PURE__*/deprecate(take.maybe, /*#__PURE__*/updateIncentive('takem', 'take.maybe'));
54
+ export var takem = deprecate(take.maybe, updateIncentive('takem', 'take.maybe'));
65
55
  export function put(channel, action) {
66
56
  if (arguments.length > 1) {
67
57
  check(channel, is.notUndef, 'put(channel, action): argument channel is undefined');
68
- check(channel, is.channel, "put(channel, action): argument " + channel + " is not a valid channel");
58
+ check(channel, is.channel, `put(channel, action): argument ${channel} is not a valid channel`);
69
59
  check(action, is.notUndef, 'put(channel, action): argument action is undefined');
70
60
  } else {
71
61
  check(channel, is.notUndef, 'put(action): argument action is undefined');
72
62
  action = channel;
73
63
  channel = null;
74
64
  }
75
-
76
65
  return effect(PUT, {
77
- channel: channel,
78
- action: action
66
+ channel,
67
+ action
79
68
  });
80
69
  }
81
-
82
70
  put.resolve = function () {
83
- var eff = put.apply(void 0, arguments);
71
+ var eff = put(...arguments);
84
72
  eff[PUT].resolve = true;
85
73
  return eff;
86
74
  };
87
-
88
- put.sync = /*#__PURE__*/deprecate(put.resolve, /*#__PURE__*/updateIncentive('put.sync', 'put.resolve'));
75
+ put.sync = deprecate(put.resolve, updateIncentive('put.sync', 'put.resolve'));
89
76
  export function all(effects) {
90
77
  return effect(ALL, effects);
91
78
  }
92
79
  export function race(effects) {
93
80
  return effect(RACE, effects);
94
81
  }
95
-
96
82
  function getFnCallDesc(meth, fn, args) {
97
- check(fn, is.notUndef, meth + ": argument fn is undefined");
83
+ check(fn, is.notUndef, `${meth}: argument fn is undefined`);
98
84
  var context = null;
99
-
100
85
  if (is.array(fn)) {
101
86
  var _fn = fn;
102
- context = _fn[0];
103
- fn = _fn[1];
87
+ var _fn2 = _slicedToArray(_fn, 2);
88
+ context = _fn2[0];
89
+ fn = _fn2[1];
104
90
  } else if (fn.fn) {
105
- var _fn2 = fn;
106
- context = _fn2.context;
107
- fn = _fn2.fn;
91
+ var _fn3 = fn;
92
+ context = _fn3.context;
93
+ fn = _fn3.fn;
108
94
  }
109
-
110
95
  if (context && is.string(fn) && is.func(context[fn])) {
111
96
  fn = context[fn];
112
97
  }
113
-
114
- check(fn, is.func, meth + ": argument " + fn + " is not a function");
98
+ check(fn, is.func, `${meth}: argument ${fn} is not a function`);
115
99
  return {
116
- context: context,
117
- fn: fn,
118
- args: args
100
+ context,
101
+ fn,
102
+ args
119
103
  };
120
104
  }
121
-
122
105
  export function call(fn) {
123
106
  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
124
107
  args[_key - 1] = arguments[_key];
125
108
  }
126
-
127
109
  return effect(CALL, getFnCallDesc('call', fn, args));
128
110
  }
129
- export function apply(context, fn, args) {
130
- if (args === void 0) {
131
- args = [];
132
- }
133
-
111
+ export function apply(context, fn) {
112
+ var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
134
113
  return effect(CALL, getFnCallDesc('apply', {
135
- context: context,
136
- fn: fn
114
+ context,
115
+ fn
137
116
  }, args));
138
117
  }
139
118
  export function cps(fn) {
140
119
  for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
141
120
  args[_key2 - 1] = arguments[_key2];
142
121
  }
143
-
144
122
  return effect(CPS, getFnCallDesc('cps', fn, args));
145
123
  }
146
124
  export function fork(fn) {
147
125
  for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
148
126
  args[_key3 - 1] = arguments[_key3];
149
127
  }
150
-
151
128
  return effect(FORK, getFnCallDesc('fork', fn, args));
152
129
  }
153
130
  export function spawn(fn) {
154
131
  for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {
155
132
  args[_key4 - 1] = arguments[_key4];
156
133
  }
157
-
158
- return detach(fork.apply(void 0, [fn].concat(args)));
134
+ return detach(fork(fn, ...args));
159
135
  }
160
136
  export function join() {
161
137
  for (var _len5 = arguments.length, tasks = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
162
138
  tasks[_key5] = arguments[_key5];
163
139
  }
164
-
165
140
  if (tasks.length > 1) {
166
- return all(tasks.map(function (t) {
167
- return join(t);
168
- }));
141
+ return all(tasks.map(t => join(t)));
169
142
  }
170
-
171
143
  var task = tasks[0];
172
144
  check(task, is.notUndef, 'join(task): argument task is undefined');
173
- check(task, is.task, "join(task): argument " + task + " is not a valid Task object " + TEST_HINT);
145
+ check(task, is.task, `join(task): argument ${task} is not a valid Task object ${TEST_HINT}`);
174
146
  return effect(JOIN, task);
175
147
  }
176
148
  export function cancel() {
177
149
  for (var _len6 = arguments.length, tasks = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {
178
150
  tasks[_key6] = arguments[_key6];
179
151
  }
180
-
181
152
  if (tasks.length > 1) {
182
- return all(tasks.map(function (t) {
183
- return cancel(t);
184
- }));
153
+ return all(tasks.map(t => cancel(t)));
185
154
  }
186
-
187
155
  var task = tasks[0];
188
-
189
156
  if (tasks.length === 1) {
190
157
  check(task, is.notUndef, 'cancel(task): argument task is undefined');
191
- check(task, is.task, "cancel(task): argument " + task + " is not a valid Task object " + TEST_HINT);
158
+ check(task, is.task, `cancel(task): argument ${task} is not a valid Task object ${TEST_HINT}`);
192
159
  }
193
-
194
160
  return effect(CANCEL, task || SELF_CANCELLATION);
195
161
  }
196
162
  export function select(selector) {
197
163
  for (var _len7 = arguments.length, args = new Array(_len7 > 1 ? _len7 - 1 : 0), _key7 = 1; _key7 < _len7; _key7++) {
198
164
  args[_key7 - 1] = arguments[_key7];
199
165
  }
200
-
201
166
  if (arguments.length === 0) {
202
167
  selector = ident;
203
168
  } else {
204
169
  check(selector, is.notUndef, 'select(selector,[...]): argument selector is undefined');
205
- check(selector, is.func, "select(selector,[...]): argument " + selector + " is not a function");
170
+ check(selector, is.func, `select(selector,[...]): argument ${selector} is not a function`);
206
171
  }
207
-
208
172
  return effect(SELECT, {
209
- selector: selector,
210
- args: args
173
+ selector,
174
+ args
211
175
  });
212
176
  }
213
177
  export function selectSelf() {
@@ -215,70 +179,63 @@ export function selectSelf() {
215
179
  }
216
180
  export function putMutation(fn) {
217
181
  return effect(PUT_MUTAION, {
218
- fn: fn
182
+ fn
219
183
  });
220
184
  }
221
185
  export function putAsyncAction(action) {
222
186
  return effect(PUT_ASYNC, {
223
- action: action
187
+ action
224
188
  });
225
189
  }
190
+
226
191
  /**
227
192
  channel(pattern, [buffer]) => creates an event channel for store actions
228
193
  **/
229
-
230
194
  export function actionChannel(pattern, buffer) {
231
195
  check(pattern, is.notUndef, 'actionChannel(pattern,...): argument pattern is undefined');
232
-
233
196
  if (arguments.length > 1) {
234
197
  check(buffer, is.notUndef, 'actionChannel(pattern, buffer): argument buffer is undefined');
235
- check(buffer, is.buffer, "actionChannel(pattern, buffer): argument " + buffer + " is not a valid buffer");
198
+ check(buffer, is.buffer, `actionChannel(pattern, buffer): argument ${buffer} is not a valid buffer`);
236
199
  }
237
-
238
200
  return effect(ACTION_CHANNEL, {
239
- pattern: pattern,
240
- buffer: buffer
201
+ pattern,
202
+ buffer
241
203
  });
242
204
  }
243
205
  export function cancelled() {
244
206
  return effect(CANCELLED, {});
245
207
  }
246
208
  export function flush(channel) {
247
- check(channel, is.channel, "flush(channel): argument " + channel + " is not valid channel");
209
+ check(channel, is.channel, `flush(channel): argument ${channel} is not valid channel`);
248
210
  return effect(FLUSH, channel);
249
211
  }
250
212
  export function getContext(prop) {
251
- check(prop, is.string, "getContext(prop): argument " + prop + " is not a string");
213
+ check(prop, is.string, `getContext(prop): argument ${prop} is not a string`);
252
214
  return effect(GET_CONTEXT, prop);
253
215
  }
254
216
  export function setContext(props) {
255
217
  check(props, is.object, createSetContextWarning(null, props));
256
218
  return effect(SET_CONTEXT, props);
257
219
  }
258
-
259
- var createAsEffectType = function createAsEffectType(type) {
260
- return function (effect) {
261
- return effect && effect[IO] && effect[type];
262
- };
263
- };
264
-
220
+ var createAsEffectType = type => effect => effect && effect[IO] && effect[type];
265
221
  export var asEffect = {
266
- take: /*#__PURE__*/createAsEffectType(TAKE),
267
- put: /*#__PURE__*/createAsEffectType(PUT),
268
- all: /*#__PURE__*/createAsEffectType(ALL),
269
- race: /*#__PURE__*/createAsEffectType(RACE),
270
- call: /*#__PURE__*/createAsEffectType(CALL),
271
- cps: /*#__PURE__*/createAsEffectType(CPS),
272
- fork: /*#__PURE__*/createAsEffectType(FORK),
273
- join: /*#__PURE__*/createAsEffectType(JOIN),
274
- cancel: /*#__PURE__*/createAsEffectType(CANCEL),
275
- select: /*#__PURE__*/createAsEffectType(SELECT),
276
- selectSelf: /*#__PURE__*/createAsEffectType(SELECT_SELF),
277
- putAsyncAction: /*#__PURE__*/createAsEffectType(PUT_ASYNC),
278
- actionChannel: /*#__PURE__*/createAsEffectType(ACTION_CHANNEL),
279
- cancelled: /*#__PURE__*/createAsEffectType(CANCELLED),
280
- flush: /*#__PURE__*/createAsEffectType(FLUSH),
281
- getContext: /*#__PURE__*/createAsEffectType(GET_CONTEXT),
282
- setContext: /*#__PURE__*/createAsEffectType(SET_CONTEXT),
283
- putMutation: /*#__PURE__*/createAsEffectType(PUT_MUTAION)
284
- };
222
+ take: createAsEffectType(TAKE),
223
+ put: createAsEffectType(PUT),
224
+ all: createAsEffectType(ALL),
225
+ race: createAsEffectType(RACE),
226
+ call: createAsEffectType(CALL),
227
+ cps: createAsEffectType(CPS),
228
+ fork: createAsEffectType(FORK),
229
+ join: createAsEffectType(JOIN),
230
+ cancel: createAsEffectType(CANCEL),
231
+ select: createAsEffectType(SELECT),
232
+ selectSelf: createAsEffectType(SELECT_SELF),
233
+ putAsyncAction: createAsEffectType(PUT_ASYNC),
234
+ actionChannel: createAsEffectType(ACTION_CHANNEL),
235
+ cancelled: createAsEffectType(CANCELLED),
236
+ flush: createAsEffectType(FLUSH),
237
+ getContext: createAsEffectType(GET_CONTEXT),
238
+ setContext: createAsEffectType(SET_CONTEXT),
239
+ putMutation: createAsEffectType(PUT_MUTAION)
240
+ };
241
+ //# sourceMappingURL=io.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"io.js","names":["sym","is","ident","check","deprecate","updateIncentive","createSetContextWarning","SELF_CANCELLATION","IO","TAKE","PUT","ALL","RACE","CALL","CPS","FORK","JOIN","CANCEL","SELECT","SELECT_SELF","PUT_MUTAION","PUT_ASYNC","ACTION_CHANNEL","CANCELLED","FLUSH","GET_CONTEXT","SET_CONTEXT","TEST_HINT","effect","type","payload","detach","eff","asEffect","fork","object","detached","take","patternOrChannel","arguments","length","undefined","notUndef","pattern","channel","Error","String","maybe","takem","put","action","resolve","sync","all","effects","race","getFnCallDesc","meth","fn","args","context","array","_fn","_fn2","_slicedToArray","_fn3","string","func","call","_len","Array","_key","apply","cps","_len2","_key2","_len3","_key3","spawn","_len4","_key4","join","_len5","tasks","_key5","map","t","task","cancel","_len6","_key6","select","selector","_len7","_key7","selectSelf","putMutation","putAsyncAction","actionChannel","buffer","cancelled","flush","getContext","prop","setContext","props","createAsEffectType"],"sources":["../../io.js"],"sourcesContent":["import { sym, is, ident, check, deprecate, updateIncentive, createSetContextWarning, SELF_CANCELLATION } from './utils'\n\nconst IO = sym('IO')\nconst TAKE = 'TAKE'\nconst PUT = 'PUT'\nconst ALL = 'ALL'\nconst RACE = 'RACE'\nconst CALL = 'CALL'\nconst CPS = 'CPS'\nconst FORK = 'FORK'\nconst JOIN = 'JOIN'\nconst CANCEL = 'CANCEL'\nconst SELECT = 'SELECT'\nconst SELECT_SELF = 'SELECT_SELF'\nconst PUT_MUTAION = 'PUT_MUTATION'\nconst PUT_ASYNC = 'PUT_ASYNC'\nconst ACTION_CHANNEL = 'ACTION_CHANNEL'\nconst CANCELLED = 'CANCELLED'\nconst FLUSH = 'FLUSH'\nconst GET_CONTEXT = 'GET_CONTEXT'\nconst SET_CONTEXT = 'SET_CONTEXT'\n\nconst TEST_HINT =\n '\\n(HINT: if you are getting this errors in tests, consider using createMockTask from redux-saga/utils)'\n\nconst effect = (type, payload) => ({ [IO]: true, [type]: payload })\n\nexport const detach = eff => {\n check(asEffect.fork(eff), is.object, 'detach(eff): argument must be a fork effect')\n eff[FORK].detached = true\n return eff\n}\n\nexport function take(patternOrChannel = '*') {\n if (arguments.length) {\n check(arguments[0], is.notUndef, 'take(patternOrChannel): patternOrChannel is undefined')\n }\n if (is.pattern(patternOrChannel)) {\n return effect(TAKE, { pattern: patternOrChannel })\n }\n if (is.channel(patternOrChannel)) {\n return effect(TAKE, { channel: patternOrChannel })\n }\n throw new Error(\n `take(patternOrChannel): argument ${String(patternOrChannel)} is not valid channel or a valid pattern`,\n )\n}\n\ntake.maybe = (...args) => {\n const eff = take(...args)\n eff[TAKE].maybe = true\n return eff\n}\n\nexport const takem = deprecate(take.maybe, updateIncentive('takem', 'take.maybe'))\n\nexport function put(channel, action) {\n if (arguments.length > 1) {\n check(channel, is.notUndef, 'put(channel, action): argument channel is undefined')\n check(channel, is.channel, `put(channel, action): argument ${channel} is not a valid channel`)\n check(action, is.notUndef, 'put(channel, action): argument action is undefined')\n } else {\n check(channel, is.notUndef, 'put(action): argument action is undefined')\n action = channel\n channel = null\n }\n return effect(PUT, { channel, action })\n}\n\nput.resolve = (...args) => {\n const eff = put(...args)\n eff[PUT].resolve = true\n return eff\n}\n\nput.sync = deprecate(put.resolve, updateIncentive('put.sync', 'put.resolve'))\n\nexport function all(effects) {\n return effect(ALL, effects)\n}\n\nexport function race(effects) {\n return effect(RACE, effects)\n}\n\nfunction getFnCallDesc(meth, fn, args) {\n check(fn, is.notUndef, `${meth}: argument fn is undefined`)\n\n let context = null\n if (is.array(fn)) {\n [context, fn] = fn\n } else if (fn.fn) {\n ({ context, fn } = fn)\n }\n if (context && is.string(fn) && is.func(context[fn])) {\n fn = context[fn]\n }\n check(fn, is.func, `${meth}: argument ${fn} is not a function`)\n\n return { context, fn, args }\n}\n\nexport function call(fn, ...args) {\n return effect(CALL, getFnCallDesc('call', fn, args))\n}\n\nexport function apply(context, fn, args = []) {\n return effect(CALL, getFnCallDesc('apply', { context, fn }, args))\n}\n\nexport function cps(fn, ...args) {\n return effect(CPS, getFnCallDesc('cps', fn, args))\n}\n\nexport function fork(fn, ...args) {\n return effect(FORK, getFnCallDesc('fork', fn, args))\n}\n\nexport function spawn(fn, ...args) {\n return detach(fork(fn, ...args))\n}\n\nexport function join(...tasks) {\n if (tasks.length > 1) {\n return all(tasks.map(t => join(t)))\n }\n const task = tasks[0]\n check(task, is.notUndef, 'join(task): argument task is undefined')\n check(task, is.task, `join(task): argument ${task} is not a valid Task object ${TEST_HINT}`)\n return effect(JOIN, task)\n}\n\nexport function cancel(...tasks) {\n if (tasks.length > 1) {\n return all(tasks.map(t => cancel(t)))\n }\n const task = tasks[0]\n if (tasks.length === 1) {\n check(task, is.notUndef, 'cancel(task): argument task is undefined')\n check(task, is.task, `cancel(task): argument ${task} is not a valid Task object ${TEST_HINT}`)\n }\n return effect(CANCEL, task || SELF_CANCELLATION)\n}\n\nexport function select(selector, ...args) {\n if (arguments.length === 0) {\n selector = ident\n } else {\n check(selector, is.notUndef, 'select(selector,[...]): argument selector is undefined')\n check(selector, is.func, `select(selector,[...]): argument ${selector} is not a function`)\n }\n return effect(SELECT, { selector, args })\n}\n\nexport function selectSelf() {\n return effect(SELECT_SELF, {})\n}\n\nexport function putMutation(fn) {\n return effect(PUT_MUTAION, { fn })\n}\n\nexport function putAsyncAction(action) {\n return effect(PUT_ASYNC, { action })\n}\n\n/**\n channel(pattern, [buffer]) => creates an event channel for store actions\n**/\nexport function actionChannel(pattern, buffer) {\n check(pattern, is.notUndef, 'actionChannel(pattern,...): argument pattern is undefined')\n if (arguments.length > 1) {\n check(buffer, is.notUndef, 'actionChannel(pattern, buffer): argument buffer is undefined')\n check(buffer, is.buffer, `actionChannel(pattern, buffer): argument ${buffer} is not a valid buffer`)\n }\n return effect(ACTION_CHANNEL, { pattern, buffer })\n}\n\nexport function cancelled() {\n return effect(CANCELLED, {})\n}\n\nexport function flush(channel) {\n check(channel, is.channel, `flush(channel): argument ${channel} is not valid channel`)\n return effect(FLUSH, channel)\n}\n\nexport function getContext(prop) {\n check(prop, is.string, `getContext(prop): argument ${prop} is not a string`)\n return effect(GET_CONTEXT, prop)\n}\n\nexport function setContext(props) {\n check(props, is.object, createSetContextWarning(null, props))\n return effect(SET_CONTEXT, props)\n}\n\nconst createAsEffectType = type => effect => effect && effect[IO] && effect[type]\n\nexport const asEffect = {\n take: createAsEffectType(TAKE),\n put: createAsEffectType(PUT),\n all: createAsEffectType(ALL),\n race: createAsEffectType(RACE),\n call: createAsEffectType(CALL),\n cps: createAsEffectType(CPS),\n fork: createAsEffectType(FORK),\n join: createAsEffectType(JOIN),\n cancel: createAsEffectType(CANCEL),\n select: createAsEffectType(SELECT),\n selectSelf: createAsEffectType(SELECT_SELF),\n putAsyncAction: createAsEffectType(PUT_ASYNC),\n actionChannel: createAsEffectType(ACTION_CHANNEL),\n cancelled: createAsEffectType(CANCELLED),\n flush: createAsEffectType(FLUSH),\n getContext: createAsEffectType(GET_CONTEXT),\n setContext: createAsEffectType(SET_CONTEXT),\n putMutation: createAsEffectType(PUT_MUTAION)\n}\n"],"mappings":"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"}
@@ -1,79 +1,76 @@
1
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
2
-
3
- import { is, check, object, createSetContextWarning } from './utils';
4
- import { emitter } from './channel';
5
- import { ident } from './utils';
6
- import { runSaga } from './runSaga';
7
- export default function sagaMiddlewareFactory(_temp) {
8
- var _ref = _temp === void 0 ? {} : _temp,
9
- _ref$context = _ref.context,
10
- context = _ref$context === void 0 ? {} : _ref$context,
11
- options = _objectWithoutPropertiesLoose(_ref, ["context"]);
12
-
1
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
+ var _excluded = ["context"];
3
+ import { is, check, object, createSetContextWarning } from "./utils";
4
+ import { emitter } from "./channel";
5
+ import { ident } from "./utils";
6
+ import { runSaga } from "./runSaga";
7
+ export default function sagaMiddlewareFactory() {
8
+ var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
9
+ _ref$context = _ref.context,
10
+ context = _ref$context === void 0 ? {} : _ref$context,
11
+ options = _objectWithoutProperties(_ref, _excluded);
13
12
  var sagaMonitor = options.sagaMonitor,
14
- logger = options.logger,
15
- onError = options.onError;
16
-
13
+ logger = options.logger,
14
+ onError = options.onError;
17
15
  if (is.func(options)) {
18
16
  if (process.env.NODE_ENV === 'production') {
19
17
  throw new Error('Saga middleware no longer accept Generator functions. Use sagaMiddleware.run instead');
20
18
  } else {
21
- throw new Error("You passed a function to the Saga middleware. You are likely trying to start a Saga by directly passing it to the middleware. This is no longer possible starting from 0.10.0. To run a Saga, you must do it dynamically AFTER mounting the middleware into the store.\n Example:\n import createSagaMiddleware from 'redux-saga'\n ... other imports\n\n const sagaMiddleware = createSagaMiddleware()\n const store = createStore(reducer, applyMiddleware(sagaMiddleware))\n sagaMiddleware.run(saga, ...args)\n ");
19
+ throw new Error(`You passed a function to the Saga middleware. You are likely trying to start a\
20
+ Saga by directly passing it to the middleware. This is no longer possible starting from 0.10.0.\
21
+ To run a Saga, you must do it dynamically AFTER mounting the middleware into the store.
22
+ Example:
23
+ import createSagaMiddleware from 'redux-saga'
24
+ ... other imports
25
+
26
+ const sagaMiddleware = createSagaMiddleware()
27
+ const store = createStore(reducer, applyMiddleware(sagaMiddleware))
28
+ sagaMiddleware.run(saga, ...args)
29
+ `);
22
30
  }
23
31
  }
24
-
25
32
  if (logger && !is.func(logger)) {
26
33
  throw new Error('`options.logger` passed to the Saga middleware is not a function!');
27
34
  }
28
-
29
35
  if (process.env.NODE_ENV === 'development' && options.onerror) {
30
36
  throw new Error('`options.onerror` was removed. Use `options.onError` instead.');
31
37
  }
32
-
33
38
  if (onError && !is.func(onError)) {
34
39
  throw new Error('`options.onError` passed to the Saga middleware is not a function!');
35
40
  }
36
-
37
41
  if (options.emitter && !is.func(options.emitter)) {
38
42
  throw new Error('`options.emitter` passed to the Saga middleware is not a function!');
39
43
  }
40
-
41
44
  function sagaMiddleware(_ref2) {
42
45
  var getState = _ref2.getState,
43
- dispatch = _ref2.dispatch;
46
+ dispatch = _ref2.dispatch;
44
47
  var sagaEmitter = emitter();
45
48
  sagaEmitter.emit = (options.emitter || ident)(sagaEmitter.emit);
46
49
  sagaMiddleware.run = runSaga.bind(null, {
47
- context: context,
50
+ context,
48
51
  subscribe: sagaEmitter.subscribe,
49
- dispatch: dispatch,
50
- getState: getState,
51
- sagaMonitor: sagaMonitor,
52
- logger: logger,
53
- onError: onError
52
+ dispatch,
53
+ getState,
54
+ sagaMonitor,
55
+ logger,
56
+ onError
54
57
  });
55
- return function (next) {
56
- return function (action) {
57
- if (sagaMonitor && sagaMonitor.actionDispatched) {
58
- sagaMonitor.actionDispatched(action);
59
- }
60
-
61
- var result = next(action); // hit reducers
62
-
63
- sagaEmitter.emit(action);
64
- return result;
65
- };
58
+ return next => action => {
59
+ if (sagaMonitor && sagaMonitor.actionDispatched) {
60
+ sagaMonitor.actionDispatched(action);
61
+ }
62
+ var result = next(action); // hit reducers
63
+ sagaEmitter.emit(action);
64
+ return result;
66
65
  };
67
66
  }
68
-
69
- sagaMiddleware.run = function () {
67
+ sagaMiddleware.run = () => {
70
68
  throw new Error('Before running a Saga, you must mount the Saga middleware on the Store using applyMiddleware');
71
69
  };
72
-
73
- sagaMiddleware.setContext = function (props) {
70
+ sagaMiddleware.setContext = props => {
74
71
  check(props, is.object, createSetContextWarning('sagaMiddleware', props));
75
72
  object.assign(context, props);
76
73
  };
77
-
78
74
  return sagaMiddleware;
79
- }
75
+ }
76
+ //# sourceMappingURL=middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"middleware.js","names":["is","check","object","createSetContextWarning","emitter","ident","runSaga","sagaMiddlewareFactory","_ref","arguments","length","undefined","_ref$context","context","options","_objectWithoutProperties","_excluded","sagaMonitor","logger","onError","func","process","env","NODE_ENV","Error","onerror","sagaMiddleware","_ref2","getState","dispatch","sagaEmitter","emit","run","bind","subscribe","next","action","actionDispatched","result","setContext","props","assign"],"sources":["../../middleware.js"],"sourcesContent":["import { is, check, object, createSetContextWarning } from './utils'\nimport { emitter } from './channel'\nimport { ident } from './utils'\nimport { runSaga } from './runSaga'\n\nexport default function sagaMiddlewareFactory({ context = {}, ...options } = {}) {\n const { sagaMonitor, logger, onError } = options\n\n if (is.func(options)) {\n if (process.env.NODE_ENV === 'production') {\n throw new Error('Saga middleware no longer accept Generator functions. Use sagaMiddleware.run instead')\n } else {\n throw new Error(\n `You passed a function to the Saga middleware. You are likely trying to start a\\\n Saga by directly passing it to the middleware. This is no longer possible starting from 0.10.0.\\\n To run a Saga, you must do it dynamically AFTER mounting the middleware into the store.\n Example:\n import createSagaMiddleware from 'redux-saga'\n ... other imports\n\n const sagaMiddleware = createSagaMiddleware()\n const store = createStore(reducer, applyMiddleware(sagaMiddleware))\n sagaMiddleware.run(saga, ...args)\n `,\n )\n }\n }\n\n if (logger && !is.func(logger)) {\n throw new Error('`options.logger` passed to the Saga middleware is not a function!')\n }\n\n if (process.env.NODE_ENV === 'development' && options.onerror) {\n throw new Error('`options.onerror` was removed. Use `options.onError` instead.')\n }\n\n if (onError && !is.func(onError)) {\n throw new Error('`options.onError` passed to the Saga middleware is not a function!')\n }\n\n if (options.emitter && !is.func(options.emitter)) {\n throw new Error('`options.emitter` passed to the Saga middleware is not a function!')\n }\n\n function sagaMiddleware({ getState, dispatch }) {\n const sagaEmitter = emitter()\n sagaEmitter.emit = (options.emitter || ident)(sagaEmitter.emit)\n\n sagaMiddleware.run = runSaga.bind(null, {\n context,\n subscribe: sagaEmitter.subscribe,\n dispatch,\n getState,\n sagaMonitor,\n logger,\n onError,\n })\n\n return next => action => {\n if (sagaMonitor && sagaMonitor.actionDispatched) {\n sagaMonitor.actionDispatched(action)\n }\n const result = next(action) // hit reducers\n sagaEmitter.emit(action)\n return result\n }\n }\n\n sagaMiddleware.run = () => {\n throw new Error('Before running a Saga, you must mount the Saga middleware on the Store using applyMiddleware')\n }\n\n sagaMiddleware.setContext = props => {\n check(props, is.object, createSetContextWarning('sagaMiddleware', props))\n object.assign(context, props)\n }\n\n return sagaMiddleware\n}\n"],"mappings":"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"}