@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/lib/index.js CHANGED
@@ -1,52 +1,90 @@
1
1
  "use strict";
2
2
 
3
- exports.__esModule = true;
4
- exports.utils = exports.effects = exports.detach = exports.CANCEL = exports.delay = exports.throttle = exports.takeLatest = exports.takeEvery = exports.buffers = exports.channel = exports.eventChannel = exports.END = exports.runSaga = exports["default"] = void 0;
5
-
6
- var _middleware = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("./internal/middleware"));
7
-
8
- var _runSaga = /*#__PURE__*/require("./internal/runSaga");
9
-
10
- exports.runSaga = _runSaga.runSaga;
11
-
12
- var _channel = /*#__PURE__*/require("./internal/channel");
13
-
14
- exports.END = _channel.END;
15
- exports.eventChannel = _channel.eventChannel;
16
- exports.channel = _channel.channel;
17
-
18
- var _buffers = /*#__PURE__*/require("./internal/buffers");
19
-
20
- exports.buffers = _buffers.buffers;
21
-
22
- var _sagaHelpers = /*#__PURE__*/require("./internal/sagaHelpers");
23
-
24
- exports.takeEvery = _sagaHelpers.takeEvery;
25
- exports.takeLatest = _sagaHelpers.takeLatest;
26
- exports.throttle = _sagaHelpers.throttle;
27
-
28
- var _utils = /*#__PURE__*/require("./internal/utils");
29
-
30
- exports.delay = _utils.delay;
31
- exports.CANCEL = _utils.CANCEL;
32
-
33
- var _io = /*#__PURE__*/require("./internal/io");
34
-
35
- exports.detach = _io.detach;
36
-
37
- var effects = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./effects"));
38
-
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ Object.defineProperty(exports, "CANCEL", {
9
+ enumerable: true,
10
+ get: function get() {
11
+ return _utils.CANCEL;
12
+ }
13
+ });
14
+ Object.defineProperty(exports, "END", {
15
+ enumerable: true,
16
+ get: function get() {
17
+ return _channel.END;
18
+ }
19
+ });
20
+ Object.defineProperty(exports, "buffers", {
21
+ enumerable: true,
22
+ get: function get() {
23
+ return _buffers.buffers;
24
+ }
25
+ });
26
+ Object.defineProperty(exports, "channel", {
27
+ enumerable: true,
28
+ get: function get() {
29
+ return _channel.channel;
30
+ }
31
+ });
32
+ exports.default = void 0;
33
+ Object.defineProperty(exports, "delay", {
34
+ enumerable: true,
35
+ get: function get() {
36
+ return _utils.delay;
37
+ }
38
+ });
39
+ Object.defineProperty(exports, "detach", {
40
+ enumerable: true,
41
+ get: function get() {
42
+ return _io.detach;
43
+ }
44
+ });
45
+ exports.effects = void 0;
46
+ Object.defineProperty(exports, "eventChannel", {
47
+ enumerable: true,
48
+ get: function get() {
49
+ return _channel.eventChannel;
50
+ }
51
+ });
52
+ Object.defineProperty(exports, "runSaga", {
53
+ enumerable: true,
54
+ get: function get() {
55
+ return _runSaga.runSaga;
56
+ }
57
+ });
58
+ Object.defineProperty(exports, "takeEvery", {
59
+ enumerable: true,
60
+ get: function get() {
61
+ return _sagaHelpers.takeEvery;
62
+ }
63
+ });
64
+ Object.defineProperty(exports, "takeLatest", {
65
+ enumerable: true,
66
+ get: function get() {
67
+ return _sagaHelpers.takeLatest;
68
+ }
69
+ });
70
+ Object.defineProperty(exports, "throttle", {
71
+ enumerable: true,
72
+ get: function get() {
73
+ return _sagaHelpers.throttle;
74
+ }
75
+ });
76
+ exports.utils = void 0;
77
+ var _middleware = _interopRequireDefault(require("./internal/middleware"));
78
+ var _runSaga = require("./internal/runSaga");
79
+ var _channel = require("./internal/channel");
80
+ var _buffers = require("./internal/buffers");
81
+ var _sagaHelpers = require("./internal/sagaHelpers");
82
+ var _utils = require("./internal/utils");
83
+ var _io = require("./internal/io");
84
+ var effects = _interopRequireWildcard(require("./effects"));
39
85
  exports.effects = effects;
40
-
41
- var utils = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./utils"));
42
-
86
+ var utils = _interopRequireWildcard(require("./utils"));
43
87
  exports.utils = utils;
44
-
45
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
46
-
47
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
48
-
49
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
50
-
51
- var _default = _middleware["default"];
52
- exports["default"] = _default;
88
+ var _default = _middleware.default;
89
+ exports.default = _default;
90
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_middleware","_interopRequireDefault","require","_runSaga","_channel","_buffers","_sagaHelpers","_utils","_io","effects","_interopRequireWildcard","exports","utils","_default","middleware","default"],"sources":["../index.js"],"sourcesContent":["import middleware from './internal/middleware'\nexport default middleware\n\nexport { runSaga } from './internal/runSaga'\nexport { END, eventChannel, channel } from './internal/channel'\nexport { buffers } from './internal/buffers'\nexport { takeEvery, takeLatest, throttle } from './internal/sagaHelpers'\nexport { delay, CANCEL } from './internal/utils'\nexport { detach } from './internal/io'\n\nimport * as effects from './effects'\nimport * as utils from './utils'\n\nexport { effects, utils }\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,YAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,GAAA,GAAAN,OAAA;AAEA,IAAAO,OAAA,GAAAC,uBAAA,CAAAR,OAAA;AAAoCS,OAAA,CAAAF,OAAA,GAAAA,OAAA;AACpC,IAAAG,KAAA,GAAAF,uBAAA,CAAAR,OAAA;AAAgCS,OAAA,CAAAC,KAAA,GAAAA,KAAA;AAAA,IAAAC,QAAA,GAVjBC,mBAAU;AAAAH,OAAA,CAAAI,OAAA,GAAAF,QAAA"}
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
 
3
- exports.__esModule = true;
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
4
6
  exports.buffers = exports.BUFFER_OVERFLOW = void 0;
5
-
6
- var _utils = /*#__PURE__*/require("./utils");
7
-
7
+ var _utils = require("./utils");
8
8
  var BUFFER_OVERFLOW = "Channel's Buffer overflow!";
9
9
  exports.BUFFER_OVERFLOW = BUFFER_OVERFLOW;
10
10
  var ON_OVERFLOW_THROW = 1;
@@ -16,24 +16,19 @@ var zeroBuffer = {
16
16
  put: _utils.noop,
17
17
  take: _utils.noop
18
18
  };
19
-
20
- function ringBuffer(limit, overflowAction) {
21
- if (limit === void 0) {
22
- limit = 10;
23
- }
24
-
19
+ function ringBuffer() {
20
+ var limit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 10;
21
+ var overflowAction = arguments.length > 1 ? arguments[1] : undefined;
25
22
  var arr = new Array(limit);
26
23
  var length = 0;
27
24
  var pushIndex = 0;
28
25
  var popIndex = 0;
29
-
30
- var push = function push(it) {
26
+ var push = it => {
31
27
  arr[pushIndex] = it;
32
28
  pushIndex = (pushIndex + 1) % limit;
33
29
  length++;
34
30
  };
35
-
36
- var take = function take() {
31
+ var take = () => {
37
32
  if (length != 0) {
38
33
  var it = arr[popIndex];
39
34
  arr[popIndex] = null;
@@ -42,37 +37,28 @@ function ringBuffer(limit, overflowAction) {
42
37
  return it;
43
38
  }
44
39
  };
45
-
46
- var flush = function flush() {
40
+ var flush = () => {
47
41
  var items = [];
48
-
49
42
  while (length) {
50
43
  items.push(take());
51
44
  }
52
-
53
45
  return items;
54
46
  };
55
-
56
47
  return {
57
- isEmpty: function isEmpty() {
58
- return length == 0;
59
- },
60
- put: function put(it) {
48
+ isEmpty: () => length == 0,
49
+ put: it => {
61
50
  if (length < limit) {
62
51
  push(it);
63
52
  } else {
64
53
  var doubledLimit;
65
-
66
54
  switch (overflowAction) {
67
55
  case ON_OVERFLOW_THROW:
68
56
  throw new Error(BUFFER_OVERFLOW);
69
-
70
57
  case ON_OVERFLOW_SLIDE:
71
58
  arr[pushIndex] = it;
72
59
  pushIndex = (pushIndex + 1) % limit;
73
60
  popIndex = pushIndex;
74
61
  break;
75
-
76
62
  case ON_OVERFLOW_EXPAND:
77
63
  doubledLimit = 2 * limit;
78
64
  arr = flush();
@@ -83,32 +69,22 @@ function ringBuffer(limit, overflowAction) {
83
69
  limit = doubledLimit;
84
70
  push(it);
85
71
  break;
86
-
87
- default: // DROP
88
-
72
+ default:
73
+ // DROP
89
74
  }
90
75
  }
91
76
  },
92
- take: take,
93
- flush: flush
77
+
78
+ take,
79
+ flush
94
80
  };
95
81
  }
96
-
97
82
  var buffers = {
98
- none: function none() {
99
- return zeroBuffer;
100
- },
101
- fixed: function fixed(limit) {
102
- return ringBuffer(limit, ON_OVERFLOW_THROW);
103
- },
104
- dropping: function dropping(limit) {
105
- return ringBuffer(limit, ON_OVERFLOW_DROP);
106
- },
107
- sliding: function sliding(limit) {
108
- return ringBuffer(limit, ON_OVERFLOW_SLIDE);
109
- },
110
- expanding: function expanding(initialSize) {
111
- return ringBuffer(initialSize, ON_OVERFLOW_EXPAND);
112
- }
83
+ none: () => zeroBuffer,
84
+ fixed: limit => ringBuffer(limit, ON_OVERFLOW_THROW),
85
+ dropping: limit => ringBuffer(limit, ON_OVERFLOW_DROP),
86
+ sliding: limit => ringBuffer(limit, ON_OVERFLOW_SLIDE),
87
+ expanding: initialSize => ringBuffer(initialSize, ON_OVERFLOW_EXPAND)
113
88
  };
114
- exports.buffers = buffers;
89
+ exports.buffers = buffers;
90
+ //# sourceMappingURL=buffers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buffers.js","names":["_utils","require","BUFFER_OVERFLOW","exports","ON_OVERFLOW_THROW","ON_OVERFLOW_DROP","ON_OVERFLOW_SLIDE","ON_OVERFLOW_EXPAND","zeroBuffer","isEmpty","kTrue","put","noop","take","ringBuffer","limit","arguments","length","undefined","overflowAction","arr","Array","pushIndex","popIndex","push","it","flush","items","doubledLimit","Error","buffers","none","fixed","dropping","sliding","expanding","initialSize"],"sources":["../../buffers.js"],"sourcesContent":["import { kTrue, noop } from './utils'\n\nexport const BUFFER_OVERFLOW = \"Channel's Buffer overflow!\"\n\nconst ON_OVERFLOW_THROW = 1\nconst ON_OVERFLOW_DROP = 2\nconst ON_OVERFLOW_SLIDE = 3\nconst ON_OVERFLOW_EXPAND = 4\n\nconst zeroBuffer = { isEmpty: kTrue, put: noop, take: noop }\n\nfunction ringBuffer(limit = 10, overflowAction) {\n let arr = new Array(limit)\n let length = 0\n let pushIndex = 0\n let popIndex = 0\n\n const push = it => {\n arr[pushIndex] = it\n pushIndex = (pushIndex + 1) % limit\n length++\n }\n\n const take = () => {\n if (length != 0) {\n let it = arr[popIndex]\n arr[popIndex] = null\n length--\n popIndex = (popIndex + 1) % limit\n return it\n }\n }\n\n const flush = () => {\n let items = []\n while (length) {\n items.push(take())\n }\n return items\n }\n\n return {\n isEmpty: () => length == 0,\n put: it => {\n if (length < limit) {\n push(it)\n } else {\n let doubledLimit\n switch (overflowAction) {\n case ON_OVERFLOW_THROW:\n throw new Error(BUFFER_OVERFLOW)\n case ON_OVERFLOW_SLIDE:\n arr[pushIndex] = it\n pushIndex = (pushIndex + 1) % limit\n popIndex = pushIndex\n break\n case ON_OVERFLOW_EXPAND:\n doubledLimit = 2 * limit\n\n arr = flush()\n\n length = arr.length\n pushIndex = arr.length\n popIndex = 0\n\n arr.length = doubledLimit\n limit = doubledLimit\n\n push(it)\n break\n default:\n // DROP\n }\n }\n },\n take,\n flush,\n }\n}\n\nexport const buffers = {\n none: () => zeroBuffer,\n fixed: limit => ringBuffer(limit, ON_OVERFLOW_THROW),\n dropping: limit => ringBuffer(limit, ON_OVERFLOW_DROP),\n sliding: limit => ringBuffer(limit, ON_OVERFLOW_SLIDE),\n expanding: initialSize => ringBuffer(initialSize, ON_OVERFLOW_EXPAND),\n}\n"],"mappings":"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"}
@@ -1,175 +1,133 @@
1
1
  "use strict";
2
2
 
3
- exports.__esModule = true;
4
- exports.emitter = emitter;
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.UNDEFINED_INPUT_ERROR = exports.INVALID_BUFFER = exports.END = void 0;
5
8
  exports.channel = channel;
9
+ exports.emitter = emitter;
6
10
  exports.eventChannel = eventChannel;
11
+ exports.isEnd = void 0;
7
12
  exports.stdChannel = stdChannel;
8
- exports.UNDEFINED_INPUT_ERROR = exports.INVALID_BUFFER = exports.isEnd = exports.END = void 0;
9
-
10
- var _utils = /*#__PURE__*/require("./utils");
11
-
12
- var _buffers = /*#__PURE__*/require("./buffers");
13
-
14
- var _scheduler = /*#__PURE__*/require("./scheduler");
15
-
16
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
17
-
13
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
14
+ var _utils = require("./utils");
15
+ var _buffers = require("./buffers");
16
+ var _scheduler = require("./scheduler");
18
17
  var CHANNEL_END_TYPE = '@@redux-saga/CHANNEL_END';
19
18
  var END = {
20
19
  type: CHANNEL_END_TYPE
21
20
  };
22
21
  exports.END = END;
23
-
24
- var isEnd = function isEnd(a) {
25
- return a && a.type === CHANNEL_END_TYPE;
26
- };
27
-
22
+ var isEnd = a => a && a.type === CHANNEL_END_TYPE;
28
23
  exports.isEnd = isEnd;
29
-
30
24
  function emitter() {
31
25
  var subscribers = [];
32
-
33
26
  function subscribe(sub) {
34
27
  subscribers.push(sub);
35
- return function () {
36
- return (0, _utils.remove)(subscribers, sub);
37
- };
28
+ return () => (0, _utils.remove)(subscribers, sub);
38
29
  }
39
-
40
30
  function emit(item) {
41
31
  var arr = subscribers.slice();
42
-
43
32
  for (var i = 0, len = arr.length; i < len; i++) {
44
33
  arr[i](item);
45
34
  }
46
35
  }
47
-
48
36
  return {
49
- subscribe: subscribe,
50
- emit: emit
37
+ subscribe,
38
+ emit
51
39
  };
52
40
  }
53
-
54
41
  var INVALID_BUFFER = 'invalid buffer passed to channel factory function';
55
42
  exports.INVALID_BUFFER = INVALID_BUFFER;
56
43
  var UNDEFINED_INPUT_ERROR = 'Saga was provided with an undefined action';
57
44
  exports.UNDEFINED_INPUT_ERROR = UNDEFINED_INPUT_ERROR;
58
-
59
45
  if (process.env.NODE_ENV !== 'production') {
60
- exports.UNDEFINED_INPUT_ERROR = UNDEFINED_INPUT_ERROR = UNDEFINED_INPUT_ERROR + "\nHints:\n - check that your Action Creator returns a non-undefined value\n - if the Saga was started using runSaga, check that your subscribe source provides the action to its listeners\n ";
46
+ exports.UNDEFINED_INPUT_ERROR = UNDEFINED_INPUT_ERROR = UNDEFINED_INPUT_ERROR + `\nHints:
47
+ - check that your Action Creator returns a non-undefined value
48
+ - if the Saga was started using runSaga, check that your subscribe source provides the action to its listeners
49
+ `;
61
50
  }
62
-
63
- function channel(buffer) {
64
- if (buffer === void 0) {
65
- buffer = _buffers.buffers.fixed();
66
- }
67
-
51
+ function channel() {
52
+ var buffer = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _buffers.buffers.fixed();
68
53
  var closed = false;
69
54
  var takers = [];
70
55
  (0, _utils.check)(buffer, _utils.is.buffer, INVALID_BUFFER);
71
-
72
56
  function checkForbiddenStates() {
73
57
  if (closed && takers.length) {
74
58
  throw (0, _utils.internalErr)('Cannot have a closed channel with pending takers');
75
59
  }
76
-
77
60
  if (takers.length && !buffer.isEmpty()) {
78
61
  throw (0, _utils.internalErr)('Cannot have pending takers with non empty buffer');
79
62
  }
80
63
  }
81
-
82
64
  function put(input) {
83
65
  checkForbiddenStates();
84
66
  (0, _utils.check)(input, _utils.is.notUndef, UNDEFINED_INPUT_ERROR);
85
-
86
67
  if (closed) {
87
68
  return;
88
69
  }
89
-
90
70
  if (!takers.length) {
91
71
  return buffer.put(input);
92
72
  }
93
-
94
73
  for (var i = 0; i < takers.length; i++) {
95
74
  var cb = takers[i];
96
-
97
75
  if (!cb[_utils.MATCH] || cb[_utils.MATCH](input)) {
98
76
  takers.splice(i, 1);
99
77
  return cb(input);
100
78
  }
101
79
  }
102
80
  }
103
-
104
81
  function take(cb) {
105
82
  checkForbiddenStates();
106
83
  (0, _utils.check)(cb, _utils.is.func, "channel.take's callback must be a function");
107
-
108
84
  if (closed && buffer.isEmpty()) {
109
85
  cb(END);
110
86
  } else if (!buffer.isEmpty()) {
111
87
  cb(buffer.take());
112
88
  } else {
113
89
  takers.push(cb);
114
-
115
- cb.cancel = function () {
116
- return (0, _utils.remove)(takers, cb);
117
- };
90
+ cb.cancel = () => (0, _utils.remove)(takers, cb);
118
91
  }
119
92
  }
120
-
121
93
  function flush(cb) {
122
94
  checkForbiddenStates(); // TODO: check if some new state should be forbidden now
123
-
124
95
  (0, _utils.check)(cb, _utils.is.func, "channel.flush' callback must be a function");
125
-
126
96
  if (closed && buffer.isEmpty()) {
127
97
  cb(END);
128
98
  return;
129
99
  }
130
-
131
100
  cb(buffer.flush());
132
101
  }
133
-
134
102
  function close() {
135
103
  checkForbiddenStates();
136
-
137
104
  if (!closed) {
138
105
  closed = true;
139
-
140
106
  if (takers.length) {
141
107
  var arr = takers;
142
108
  takers = [];
143
-
144
109
  for (var i = 0, len = arr.length; i < len; i++) {
145
110
  arr[i](END);
146
111
  }
147
112
  }
148
113
  }
149
114
  }
150
-
151
115
  return {
152
- take: take,
153
- put: put,
154
- flush: flush,
155
- close: close,
156
-
116
+ take,
117
+ put,
118
+ flush,
119
+ close,
157
120
  get __takers__() {
158
121
  return takers;
159
122
  },
160
-
161
123
  get __closed__() {
162
124
  return closed;
163
125
  }
164
-
165
126
  };
166
127
  }
167
-
168
- function eventChannel(subscribe, buffer, matcher) {
169
- if (buffer === void 0) {
170
- buffer = _buffers.buffers.none();
171
- }
172
-
128
+ function eventChannel(subscribe) {
129
+ var buffer = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _buffers.buffers.none();
130
+ var matcher = arguments.length > 2 ? arguments[2] : undefined;
173
131
  /**
174
132
  should be if(typeof matcher !== undefined) instead?
175
133
  see PR #273 for a background discussion
@@ -177,68 +135,53 @@ function eventChannel(subscribe, buffer, matcher) {
177
135
  if (arguments.length > 2) {
178
136
  (0, _utils.check)(matcher, _utils.is.func, 'Invalid match function passed to eventChannel');
179
137
  }
180
-
181
138
  var chan = channel(buffer);
182
-
183
- var close = function close() {
139
+ var close = () => {
184
140
  if (!chan.__closed__) {
185
141
  if (unsubscribe) {
186
142
  unsubscribe();
187
143
  }
188
-
189
144
  chan.close();
190
145
  }
191
146
  };
192
-
193
- var unsubscribe = subscribe(function (input) {
147
+ var unsubscribe = subscribe(input => {
194
148
  if (isEnd(input)) {
195
149
  close();
196
150
  return;
197
151
  }
198
-
199
152
  if (matcher && !matcher(input)) {
200
153
  return;
201
154
  }
202
-
203
155
  chan.put(input);
204
156
  });
205
-
206
157
  if (chan.__closed__) {
207
158
  unsubscribe();
208
159
  }
209
-
210
160
  if (!_utils.is.func(unsubscribe)) {
211
161
  throw new Error('in eventChannel: subscribe should return a function to unsubscribe');
212
162
  }
213
-
214
163
  return {
215
164
  take: chan.take,
216
165
  flush: chan.flush,
217
- close: close
166
+ close
218
167
  };
219
168
  }
220
-
221
169
  function stdChannel(subscribe) {
222
- var chan = eventChannel(function (cb) {
223
- return subscribe(function (input) {
224
- if (input[_utils.SAGA_ACTION]) {
225
- cb(input);
226
- return;
227
- }
228
-
229
- (0, _scheduler.asap)(function () {
230
- return cb(input);
231
- });
232
- });
233
- });
234
- return _extends({}, chan, {
235
- take: function take(cb, matcher) {
170
+ var chan = eventChannel(cb => subscribe(input => {
171
+ if (input[_utils.SAGA_ACTION]) {
172
+ cb(input);
173
+ return;
174
+ }
175
+ (0, _scheduler.asap)(() => cb(input));
176
+ }));
177
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, chan), {}, {
178
+ take(cb, matcher) {
236
179
  if (arguments.length > 1) {
237
180
  (0, _utils.check)(matcher, _utils.is.func, "channel.take's matcher argument must be a function");
238
181
  cb[_utils.MATCH] = matcher;
239
182
  }
240
-
241
183
  chan.take(cb);
242
184
  }
243
185
  });
244
- }
186
+ }
187
+ //# sourceMappingURL=channel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel.js","names":["_utils","require","_buffers","_scheduler","CHANNEL_END_TYPE","END","type","exports","isEnd","a","emitter","subscribers","subscribe","sub","push","remove","emit","item","arr","slice","i","len","length","INVALID_BUFFER","UNDEFINED_INPUT_ERROR","process","env","NODE_ENV","channel","buffer","arguments","undefined","buffers","fixed","closed","takers","check","is","checkForbiddenStates","internalErr","isEmpty","put","input","notUndef","cb","MATCH","splice","take","func","cancel","flush","close","__takers__","__closed__","eventChannel","none","matcher","chan","unsubscribe","Error","stdChannel","SAGA_ACTION","asap","_objectSpread2","default"],"sources":["../../channel.js"],"sourcesContent":["import { is, check, remove, MATCH, internalErr, SAGA_ACTION } from './utils'\nimport { buffers } from './buffers'\nimport { asap } from './scheduler'\n\nconst CHANNEL_END_TYPE = '@@redux-saga/CHANNEL_END'\nexport const END = { type: CHANNEL_END_TYPE }\nexport const isEnd = a => a && a.type === CHANNEL_END_TYPE\n\nexport function emitter() {\n const subscribers = []\n\n function subscribe(sub) {\n subscribers.push(sub)\n return () => remove(subscribers, sub)\n }\n\n function emit(item) {\n const arr = subscribers.slice()\n for (var i = 0, len = arr.length; i < len; i++) {\n arr[i](item)\n }\n }\n\n return {\n subscribe,\n emit,\n }\n}\n\nexport const INVALID_BUFFER = 'invalid buffer passed to channel factory function'\nexport var UNDEFINED_INPUT_ERROR = 'Saga was provided with an undefined action'\n\nif (process.env.NODE_ENV !== 'production') {\n UNDEFINED_INPUT_ERROR += `\\nHints:\n - check that your Action Creator returns a non-undefined value\n - if the Saga was started using runSaga, check that your subscribe source provides the action to its listeners\n `\n}\n\nexport function channel(buffer = buffers.fixed()) {\n let closed = false\n let takers = []\n\n check(buffer, is.buffer, INVALID_BUFFER)\n\n function checkForbiddenStates() {\n if (closed && takers.length) {\n throw internalErr('Cannot have a closed channel with pending takers')\n }\n if (takers.length && !buffer.isEmpty()) {\n throw internalErr('Cannot have pending takers with non empty buffer')\n }\n }\n\n function put(input) {\n checkForbiddenStates()\n check(input, is.notUndef, UNDEFINED_INPUT_ERROR)\n if (closed) {\n return\n }\n if (!takers.length) {\n return buffer.put(input)\n }\n for (var i = 0; i < takers.length; i++) {\n const cb = takers[i]\n if (!cb[MATCH] || cb[MATCH](input)) {\n takers.splice(i, 1)\n return cb(input)\n }\n }\n }\n\n function take(cb) {\n checkForbiddenStates()\n check(cb, is.func, \"channel.take's callback must be a function\")\n\n if (closed && buffer.isEmpty()) {\n cb(END)\n } else if (!buffer.isEmpty()) {\n cb(buffer.take())\n } else {\n takers.push(cb)\n cb.cancel = () => remove(takers, cb)\n }\n }\n\n function flush(cb) {\n checkForbiddenStates() // TODO: check if some new state should be forbidden now\n check(cb, is.func, \"channel.flush' callback must be a function\")\n if (closed && buffer.isEmpty()) {\n cb(END)\n return\n }\n cb(buffer.flush())\n }\n\n function close() {\n checkForbiddenStates()\n if (!closed) {\n closed = true\n if (takers.length) {\n const arr = takers\n takers = []\n for (let i = 0, len = arr.length; i < len; i++) {\n arr[i](END)\n }\n }\n }\n }\n\n return {\n take,\n put,\n flush,\n close,\n get __takers__() {\n return takers\n },\n get __closed__() {\n return closed\n },\n }\n}\n\nexport function eventChannel(subscribe, buffer = buffers.none(), matcher) {\n /**\n should be if(typeof matcher !== undefined) instead?\n see PR #273 for a background discussion\n **/\n if (arguments.length > 2) {\n check(matcher, is.func, 'Invalid match function passed to eventChannel')\n }\n\n const chan = channel(buffer)\n const close = () => {\n if (!chan.__closed__) {\n if (unsubscribe) {\n unsubscribe()\n }\n chan.close()\n }\n }\n const unsubscribe = subscribe(input => {\n if (isEnd(input)) {\n close()\n return\n }\n if (matcher && !matcher(input)) {\n return\n }\n chan.put(input)\n })\n if (chan.__closed__) {\n unsubscribe()\n }\n\n if (!is.func(unsubscribe)) {\n throw new Error('in eventChannel: subscribe should return a function to unsubscribe')\n }\n\n return {\n take: chan.take,\n flush: chan.flush,\n close,\n }\n}\n\nexport function stdChannel(subscribe) {\n const chan = eventChannel(cb =>\n subscribe(input => {\n if (input[SAGA_ACTION]) {\n cb(input)\n return\n }\n asap(() => cb(input))\n }))\n\n return {\n ...chan,\n take(cb, matcher) {\n if (arguments.length > 1) {\n check(matcher, is.func, \"channel.take's matcher argument must be a function\")\n cb[MATCH] = matcher\n }\n chan.take(cb)\n },\n }\n}\n"],"mappings":"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"}
@@ -1,40 +1,27 @@
1
1
  "use strict";
2
2
 
3
- exports.__esModule = true;
4
- exports["default"] = completeIOType;
5
-
6
- var _io = /*#__PURE__*/require("./io");
7
-
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = completeIOType;
7
+ var _io = require("./io");
8
8
  var editInSaga = '@@INNER/SAGA_EDIT';
9
-
10
9
  function isPromise(obj) {
11
10
  return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function';
12
11
  }
13
-
14
12
  function completeIOType(io) {
15
13
  if (typeof io === 'function') {
16
14
  return (0, _io.putMutation)(io);
17
15
  }
18
-
19
16
  if (io === '') {
20
17
  return (0, _io.selectSelf)();
21
18
  }
22
-
23
19
  if (typeof io === 'string') {
24
- return (0, _io.select)(function (state) {
25
- return state[io];
26
- });
20
+ return (0, _io.select)(state => state[io]);
27
21
  }
28
-
29
- if (Array.isArray(io) && io.every(function (x) {
30
- return typeof x === 'string';
31
- })) {
32
- return (0, _io.select)(function (state) {
33
- return [io].map(function (x) {
34
- return state[x];
35
- });
36
- });
22
+ if (Array.isArray(io) && io.every(x => typeof x === 'string')) {
23
+ return (0, _io.select)(state => [io].map(x => state[x]));
37
24
  }
38
-
39
25
  return io;
40
- }
26
+ }
27
+ //# sourceMappingURL=convenient-io.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convenient-io.js","names":["_io","require","editInSaga","isPromise","obj","then","completeIOType","io","putMutation","selectSelf","select","state","Array","isArray","every","x","map"],"sources":["../../convenient-io.js"],"sourcesContent":["import {\n select,\n put, putMutation, selectSelf, putAsyncAction,\n} from './io';\n\nconst editInSaga = '@@INNER/SAGA_EDIT';\n\nfunction isPromise(obj) {\n return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function';\n}\n\nexport default function completeIOType(io) {\n if (typeof io === 'function') {\n return putMutation(io);\n }\n if (io === '') {\n return selectSelf();\n }\n if (typeof io === 'string') {\n return select(state => state[io]);\n }\n if (Array.isArray(io) && io.every(x => typeof x === 'string')) {\n return select(state => [io].map(x => state[x]));\n }\n return io;\n}\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAKA,IAAMC,UAAU,GAAG,mBAAmB;AAEtC,SAASC,SAASA,CAACC,GAAG,EAAE;EACtB,OAAO,CAAC,CAACA,GAAG,KAAK,OAAOA,GAAG,KAAK,QAAQ,IAAI,OAAOA,GAAG,KAAK,UAAU,CAAC,IAAI,OAAOA,GAAG,CAACC,IAAI,KAAK,UAAU;AAC1G;AAEe,SAASC,cAAcA,CAACC,EAAE,EAAE;EACzC,IAAI,OAAOA,EAAE,KAAK,UAAU,EAAE;IAC5B,OAAO,IAAAC,eAAW,EAACD,EAAE,CAAC;EACxB;EACA,IAAIA,EAAE,KAAK,EAAE,EAAE;IACb,OAAO,IAAAE,cAAU,GAAE;EACrB;EACA,IAAI,OAAOF,EAAE,KAAK,QAAQ,EAAE;IAC1B,OAAO,IAAAG,UAAM,EAACC,KAAK,IAAIA,KAAK,CAACJ,EAAE,CAAC,CAAC;EACnC;EACA,IAAIK,KAAK,CAACC,OAAO,CAACN,EAAE,CAAC,IAAIA,EAAE,CAACO,KAAK,CAACC,CAAC,IAAI,OAAOA,CAAC,KAAK,QAAQ,CAAC,EAAE;IAC7D,OAAO,IAAAL,UAAM,EAACC,KAAK,IAAI,CAACJ,EAAE,CAAC,CAACS,GAAG,CAACD,CAAC,IAAIJ,KAAK,CAACI,CAAC,CAAC,CAAC,CAAC;EACjD;EACA,OAAOR,EAAE;AACX"}