727 lines
25 KiB
JavaScript
727 lines
25 KiB
JavaScript
"use strict";
|
|
var wp;
|
|
(wp ||= {}).reduxRoutine = (() => {
|
|
var __create = Object.create;
|
|
var __defProp = Object.defineProperty;
|
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
var __getProtoOf = Object.getPrototypeOf;
|
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
var __commonJS = (cb, mod) => function __require() {
|
|
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
};
|
|
var __export = (target, all) => {
|
|
for (var name in all)
|
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
};
|
|
var __copyProps = (to, from, except, desc) => {
|
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
for (let key of __getOwnPropNames(from))
|
|
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
}
|
|
return to;
|
|
};
|
|
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
// If the importer is in node compatibility mode or this is not an ESM
|
|
// file that has been converted to a CommonJS file using a Babel-
|
|
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
mod
|
|
));
|
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
|
|
// node_modules/rungen/dist/utils/keys.js
|
|
var require_keys = __commonJS({
|
|
"node_modules/rungen/dist/utils/keys.js"(exports) {
|
|
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
var keys = {
|
|
all: /* @__PURE__ */ Symbol("all"),
|
|
error: /* @__PURE__ */ Symbol("error"),
|
|
fork: /* @__PURE__ */ Symbol("fork"),
|
|
join: /* @__PURE__ */ Symbol("join"),
|
|
race: /* @__PURE__ */ Symbol("race"),
|
|
call: /* @__PURE__ */ Symbol("call"),
|
|
cps: /* @__PURE__ */ Symbol("cps"),
|
|
subscribe: /* @__PURE__ */ Symbol("subscribe")
|
|
};
|
|
exports.default = keys;
|
|
}
|
|
});
|
|
|
|
// node_modules/rungen/dist/utils/helpers.js
|
|
var require_helpers = __commonJS({
|
|
"node_modules/rungen/dist/utils/helpers.js"(exports) {
|
|
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
exports.createChannel = exports.subscribe = exports.cps = exports.apply = exports.call = exports.invoke = exports.delay = exports.race = exports.join = exports.fork = exports.error = exports.all = void 0;
|
|
var _keys = require_keys();
|
|
var _keys2 = _interopRequireDefault(_keys);
|
|
function _interopRequireDefault(obj) {
|
|
return obj && obj.__esModule ? obj : { default: obj };
|
|
}
|
|
var all = exports.all = function all2(value) {
|
|
return {
|
|
type: _keys2.default.all,
|
|
value
|
|
};
|
|
};
|
|
var error = exports.error = function error2(err) {
|
|
return {
|
|
type: _keys2.default.error,
|
|
error: err
|
|
};
|
|
};
|
|
var fork = exports.fork = function fork2(iterator) {
|
|
for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
args[_key - 1] = arguments[_key];
|
|
}
|
|
return {
|
|
type: _keys2.default.fork,
|
|
iterator,
|
|
args
|
|
};
|
|
};
|
|
var join = exports.join = function join2(task) {
|
|
return {
|
|
type: _keys2.default.join,
|
|
task
|
|
};
|
|
};
|
|
var race = exports.race = function race2(competitors) {
|
|
return {
|
|
type: _keys2.default.race,
|
|
competitors
|
|
};
|
|
};
|
|
var delay = exports.delay = function delay2(timeout) {
|
|
return new Promise(function(resolve) {
|
|
setTimeout(function() {
|
|
return resolve(true);
|
|
}, timeout);
|
|
});
|
|
};
|
|
var invoke = exports.invoke = function invoke2(func) {
|
|
for (var _len2 = arguments.length, args = Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
|
|
args[_key2 - 1] = arguments[_key2];
|
|
}
|
|
return {
|
|
type: _keys2.default.call,
|
|
func,
|
|
context: null,
|
|
args
|
|
};
|
|
};
|
|
var call = exports.call = function call2(func, context) {
|
|
for (var _len3 = arguments.length, args = Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {
|
|
args[_key3 - 2] = arguments[_key3];
|
|
}
|
|
return {
|
|
type: _keys2.default.call,
|
|
func,
|
|
context,
|
|
args
|
|
};
|
|
};
|
|
var apply = exports.apply = function apply2(func, context, args) {
|
|
return {
|
|
type: _keys2.default.call,
|
|
func,
|
|
context,
|
|
args
|
|
};
|
|
};
|
|
var cps = exports.cps = function cps2(func) {
|
|
for (var _len4 = arguments.length, args = Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {
|
|
args[_key4 - 1] = arguments[_key4];
|
|
}
|
|
return {
|
|
type: _keys2.default.cps,
|
|
func,
|
|
args
|
|
};
|
|
};
|
|
var subscribe = exports.subscribe = function subscribe2(channel) {
|
|
return {
|
|
type: _keys2.default.subscribe,
|
|
channel
|
|
};
|
|
};
|
|
var createChannel = exports.createChannel = function createChannel2(callback) {
|
|
var listeners = [];
|
|
var subscribe2 = function subscribe3(l) {
|
|
listeners.push(l);
|
|
return function() {
|
|
return listeners.splice(listeners.indexOf(l), 1);
|
|
};
|
|
};
|
|
var next = function next2(val) {
|
|
return listeners.forEach(function(l) {
|
|
return l(val);
|
|
});
|
|
};
|
|
callback(next);
|
|
return {
|
|
subscribe: subscribe2
|
|
};
|
|
};
|
|
}
|
|
});
|
|
|
|
// node_modules/rungen/dist/utils/is.js
|
|
var require_is = __commonJS({
|
|
"node_modules/rungen/dist/utils/is.js"(exports) {
|
|
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function(obj) {
|
|
return typeof obj;
|
|
} : function(obj) {
|
|
return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
};
|
|
var _keys = require_keys();
|
|
var _keys2 = _interopRequireDefault(_keys);
|
|
function _interopRequireDefault(obj) {
|
|
return obj && obj.__esModule ? obj : { default: obj };
|
|
}
|
|
var is = {
|
|
obj: function obj(value) {
|
|
return (typeof value === "undefined" ? "undefined" : _typeof(value)) === "object" && !!value;
|
|
},
|
|
all: function all(value) {
|
|
return is.obj(value) && value.type === _keys2.default.all;
|
|
},
|
|
error: function error(value) {
|
|
return is.obj(value) && value.type === _keys2.default.error;
|
|
},
|
|
array: Array.isArray,
|
|
func: function func(value) {
|
|
return typeof value === "function";
|
|
},
|
|
promise: function promise(value) {
|
|
return value && is.func(value.then);
|
|
},
|
|
iterator: function iterator(value) {
|
|
return value && is.func(value.next) && is.func(value.throw);
|
|
},
|
|
fork: function fork(value) {
|
|
return is.obj(value) && value.type === _keys2.default.fork;
|
|
},
|
|
join: function join(value) {
|
|
return is.obj(value) && value.type === _keys2.default.join;
|
|
},
|
|
race: function race(value) {
|
|
return is.obj(value) && value.type === _keys2.default.race;
|
|
},
|
|
call: function call(value) {
|
|
return is.obj(value) && value.type === _keys2.default.call;
|
|
},
|
|
cps: function cps(value) {
|
|
return is.obj(value) && value.type === _keys2.default.cps;
|
|
},
|
|
subscribe: function subscribe(value) {
|
|
return is.obj(value) && value.type === _keys2.default.subscribe;
|
|
},
|
|
channel: function channel(value) {
|
|
return is.obj(value) && is.func(value.subscribe);
|
|
}
|
|
};
|
|
exports.default = is;
|
|
}
|
|
});
|
|
|
|
// node_modules/rungen/dist/controls/builtin.js
|
|
var require_builtin = __commonJS({
|
|
"node_modules/rungen/dist/controls/builtin.js"(exports) {
|
|
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
exports.iterator = exports.array = exports.object = exports.error = exports.any = void 0;
|
|
var _is = require_is();
|
|
var _is2 = _interopRequireDefault(_is);
|
|
function _interopRequireDefault(obj) {
|
|
return obj && obj.__esModule ? obj : { default: obj };
|
|
}
|
|
var any = exports.any = function any2(value, next, rungen, yieldNext) {
|
|
yieldNext(value);
|
|
return true;
|
|
};
|
|
var error = exports.error = function error2(value, next, rungen, yieldNext, raiseNext) {
|
|
if (!_is2.default.error(value)) return false;
|
|
raiseNext(value.error);
|
|
return true;
|
|
};
|
|
var object = exports.object = function object2(value, next, rungen, yieldNext, raiseNext) {
|
|
if (!_is2.default.all(value) || !_is2.default.obj(value.value)) return false;
|
|
var result = {};
|
|
var keys = Object.keys(value.value);
|
|
var count = 0;
|
|
var hasError = false;
|
|
var gotResultSuccess = function gotResultSuccess2(key, ret) {
|
|
if (hasError) return;
|
|
result[key] = ret;
|
|
count++;
|
|
if (count === keys.length) {
|
|
yieldNext(result);
|
|
}
|
|
};
|
|
var gotResultError = function gotResultError2(key, error2) {
|
|
if (hasError) return;
|
|
hasError = true;
|
|
raiseNext(error2);
|
|
};
|
|
keys.map(function(key) {
|
|
rungen(value.value[key], function(ret) {
|
|
return gotResultSuccess(key, ret);
|
|
}, function(err) {
|
|
return gotResultError(key, err);
|
|
});
|
|
});
|
|
return true;
|
|
};
|
|
var array = exports.array = function array2(value, next, rungen, yieldNext, raiseNext) {
|
|
if (!_is2.default.all(value) || !_is2.default.array(value.value)) return false;
|
|
var result = [];
|
|
var count = 0;
|
|
var hasError = false;
|
|
var gotResultSuccess = function gotResultSuccess2(key, ret) {
|
|
if (hasError) return;
|
|
result[key] = ret;
|
|
count++;
|
|
if (count === value.value.length) {
|
|
yieldNext(result);
|
|
}
|
|
};
|
|
var gotResultError = function gotResultError2(key, error2) {
|
|
if (hasError) return;
|
|
hasError = true;
|
|
raiseNext(error2);
|
|
};
|
|
value.value.map(function(v, key) {
|
|
rungen(v, function(ret) {
|
|
return gotResultSuccess(key, ret);
|
|
}, function(err) {
|
|
return gotResultError(key, err);
|
|
});
|
|
});
|
|
return true;
|
|
};
|
|
var iterator = exports.iterator = function iterator2(value, next, rungen, yieldNext, raiseNext) {
|
|
if (!_is2.default.iterator(value)) return false;
|
|
rungen(value, next, raiseNext);
|
|
return true;
|
|
};
|
|
exports.default = [error, iterator, array, object, any];
|
|
}
|
|
});
|
|
|
|
// node_modules/rungen/dist/create.js
|
|
var require_create = __commonJS({
|
|
"node_modules/rungen/dist/create.js"(exports) {
|
|
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
var _builtin = require_builtin();
|
|
var _builtin2 = _interopRequireDefault(_builtin);
|
|
var _is = require_is();
|
|
var _is2 = _interopRequireDefault(_is);
|
|
function _interopRequireDefault(obj) {
|
|
return obj && obj.__esModule ? obj : { default: obj };
|
|
}
|
|
function _toConsumableArray(arr) {
|
|
if (Array.isArray(arr)) {
|
|
for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {
|
|
arr2[i] = arr[i];
|
|
}
|
|
return arr2;
|
|
} else {
|
|
return Array.from(arr);
|
|
}
|
|
}
|
|
var create2 = function create3() {
|
|
var userControls = arguments.length <= 0 || arguments[0] === void 0 ? [] : arguments[0];
|
|
var controls = [].concat(_toConsumableArray(userControls), _toConsumableArray(_builtin2.default));
|
|
var runtime = function runtime2(input) {
|
|
var success = arguments.length <= 1 || arguments[1] === void 0 ? function() {
|
|
} : arguments[1];
|
|
var error = arguments.length <= 2 || arguments[2] === void 0 ? function() {
|
|
} : arguments[2];
|
|
var iterate = function iterate2(gen) {
|
|
var yieldValue = function yieldValue2(isError) {
|
|
return function(ret) {
|
|
try {
|
|
var _ref = isError ? gen.throw(ret) : gen.next(ret);
|
|
var value = _ref.value;
|
|
var done = _ref.done;
|
|
if (done) return success(value);
|
|
next(value);
|
|
} catch (e) {
|
|
return error(e);
|
|
}
|
|
};
|
|
};
|
|
var next = function next2(ret) {
|
|
controls.some(function(control) {
|
|
return control(ret, next2, runtime2, yieldValue(false), yieldValue(true));
|
|
});
|
|
};
|
|
yieldValue(false)();
|
|
};
|
|
var iterator = _is2.default.iterator(input) ? input : regeneratorRuntime.mark(function _callee() {
|
|
return regeneratorRuntime.wrap(function _callee$(_context) {
|
|
while (1) {
|
|
switch (_context.prev = _context.next) {
|
|
case 0:
|
|
_context.next = 2;
|
|
return input;
|
|
case 2:
|
|
return _context.abrupt("return", _context.sent);
|
|
case 3:
|
|
case "end":
|
|
return _context.stop();
|
|
}
|
|
}
|
|
}, _callee, this);
|
|
})();
|
|
iterate(iterator, success, error);
|
|
};
|
|
return runtime;
|
|
};
|
|
exports.default = create2;
|
|
}
|
|
});
|
|
|
|
// node_modules/rungen/dist/utils/dispatcher.js
|
|
var require_dispatcher = __commonJS({
|
|
"node_modules/rungen/dist/utils/dispatcher.js"(exports) {
|
|
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
var createDispatcher = function createDispatcher2() {
|
|
var listeners = [];
|
|
return {
|
|
subscribe: function subscribe(listener) {
|
|
listeners.push(listener);
|
|
return function() {
|
|
listeners = listeners.filter(function(l) {
|
|
return l !== listener;
|
|
});
|
|
};
|
|
},
|
|
dispatch: function dispatch(action) {
|
|
listeners.slice().forEach(function(listener) {
|
|
return listener(action);
|
|
});
|
|
}
|
|
};
|
|
};
|
|
exports.default = createDispatcher;
|
|
}
|
|
});
|
|
|
|
// node_modules/rungen/dist/controls/async.js
|
|
var require_async = __commonJS({
|
|
"node_modules/rungen/dist/controls/async.js"(exports) {
|
|
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
exports.race = exports.join = exports.fork = exports.promise = void 0;
|
|
var _is = require_is();
|
|
var _is2 = _interopRequireDefault(_is);
|
|
var _helpers = require_helpers();
|
|
var _dispatcher = require_dispatcher();
|
|
var _dispatcher2 = _interopRequireDefault(_dispatcher);
|
|
function _interopRequireDefault(obj) {
|
|
return obj && obj.__esModule ? obj : { default: obj };
|
|
}
|
|
var promise = exports.promise = function promise2(value, next, rungen, yieldNext, raiseNext) {
|
|
if (!_is2.default.promise(value)) return false;
|
|
value.then(next, raiseNext);
|
|
return true;
|
|
};
|
|
var forkedTasks = /* @__PURE__ */ new Map();
|
|
var fork = exports.fork = function fork2(value, next, rungen) {
|
|
if (!_is2.default.fork(value)) return false;
|
|
var task = /* @__PURE__ */ Symbol("fork");
|
|
var dispatcher = (0, _dispatcher2.default)();
|
|
forkedTasks.set(task, dispatcher);
|
|
rungen(value.iterator.apply(null, value.args), function(result) {
|
|
return dispatcher.dispatch(result);
|
|
}, function(err) {
|
|
return dispatcher.dispatch((0, _helpers.error)(err));
|
|
});
|
|
var unsubscribe = dispatcher.subscribe(function() {
|
|
unsubscribe();
|
|
forkedTasks.delete(task);
|
|
});
|
|
next(task);
|
|
return true;
|
|
};
|
|
var join = exports.join = function join2(value, next, rungen, yieldNext, raiseNext) {
|
|
if (!_is2.default.join(value)) return false;
|
|
var dispatcher = forkedTasks.get(value.task);
|
|
if (!dispatcher) {
|
|
raiseNext("join error : task not found");
|
|
} else {
|
|
(function() {
|
|
var unsubscribe = dispatcher.subscribe(function(result) {
|
|
unsubscribe();
|
|
next(result);
|
|
});
|
|
})();
|
|
}
|
|
return true;
|
|
};
|
|
var race = exports.race = function race2(value, next, rungen, yieldNext, raiseNext) {
|
|
if (!_is2.default.race(value)) return false;
|
|
var finished = false;
|
|
var success = function success2(result, k, v) {
|
|
if (finished) return;
|
|
finished = true;
|
|
result[k] = v;
|
|
next(result);
|
|
};
|
|
var fail = function fail2(err) {
|
|
if (finished) return;
|
|
raiseNext(err);
|
|
};
|
|
if (_is2.default.array(value.competitors)) {
|
|
(function() {
|
|
var result = value.competitors.map(function() {
|
|
return false;
|
|
});
|
|
value.competitors.forEach(function(competitor, index) {
|
|
rungen(competitor, function(output) {
|
|
return success(result, index, output);
|
|
}, fail);
|
|
});
|
|
})();
|
|
} else {
|
|
(function() {
|
|
var result = Object.keys(value.competitors).reduce(function(p, c) {
|
|
p[c] = false;
|
|
return p;
|
|
}, {});
|
|
Object.keys(value.competitors).forEach(function(index) {
|
|
rungen(value.competitors[index], function(output) {
|
|
return success(result, index, output);
|
|
}, fail);
|
|
});
|
|
})();
|
|
}
|
|
return true;
|
|
};
|
|
var subscribe = function subscribe2(value, next) {
|
|
if (!_is2.default.subscribe(value)) return false;
|
|
if (!_is2.default.channel(value.channel)) {
|
|
throw new Error('the first argument of "subscribe" must be a valid channel');
|
|
}
|
|
var unsubscribe = value.channel.subscribe(function(ret) {
|
|
unsubscribe && unsubscribe();
|
|
next(ret);
|
|
});
|
|
return true;
|
|
};
|
|
exports.default = [promise, fork, join, race, subscribe];
|
|
}
|
|
});
|
|
|
|
// node_modules/rungen/dist/controls/wrap.js
|
|
var require_wrap = __commonJS({
|
|
"node_modules/rungen/dist/controls/wrap.js"(exports) {
|
|
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
exports.cps = exports.call = void 0;
|
|
var _is = require_is();
|
|
var _is2 = _interopRequireDefault(_is);
|
|
function _interopRequireDefault(obj) {
|
|
return obj && obj.__esModule ? obj : { default: obj };
|
|
}
|
|
function _toConsumableArray(arr) {
|
|
if (Array.isArray(arr)) {
|
|
for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {
|
|
arr2[i] = arr[i];
|
|
}
|
|
return arr2;
|
|
} else {
|
|
return Array.from(arr);
|
|
}
|
|
}
|
|
var call = exports.call = function call2(value, next, rungen, yieldNext, raiseNext) {
|
|
if (!_is2.default.call(value)) return false;
|
|
try {
|
|
next(value.func.apply(value.context, value.args));
|
|
} catch (err) {
|
|
raiseNext(err);
|
|
}
|
|
return true;
|
|
};
|
|
var cps = exports.cps = function cps2(value, next, rungen, yieldNext, raiseNext) {
|
|
var _value$func;
|
|
if (!_is2.default.cps(value)) return false;
|
|
(_value$func = value.func).call.apply(_value$func, [null].concat(_toConsumableArray(value.args), [function(err, result) {
|
|
if (err) raiseNext(err);
|
|
else next(result);
|
|
}]));
|
|
return true;
|
|
};
|
|
exports.default = [call, cps];
|
|
}
|
|
});
|
|
|
|
// node_modules/rungen/dist/index.js
|
|
var require_dist = __commonJS({
|
|
"node_modules/rungen/dist/index.js"(exports) {
|
|
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
exports.wrapControls = exports.asyncControls = exports.create = void 0;
|
|
var _helpers = require_helpers();
|
|
Object.keys(_helpers).forEach(function(key) {
|
|
if (key === "default") return;
|
|
Object.defineProperty(exports, key, {
|
|
enumerable: true,
|
|
get: function get() {
|
|
return _helpers[key];
|
|
}
|
|
});
|
|
});
|
|
var _create = require_create();
|
|
var _create2 = _interopRequireDefault(_create);
|
|
var _async = require_async();
|
|
var _async2 = _interopRequireDefault(_async);
|
|
var _wrap = require_wrap();
|
|
var _wrap2 = _interopRequireDefault(_wrap);
|
|
function _interopRequireDefault(obj) {
|
|
return obj && obj.__esModule ? obj : { default: obj };
|
|
}
|
|
exports.create = _create2.default;
|
|
exports.asyncControls = _async2.default;
|
|
exports.wrapControls = _wrap2.default;
|
|
}
|
|
});
|
|
|
|
// packages/redux-routine/build-module/index.mjs
|
|
var index_exports = {};
|
|
__export(index_exports, {
|
|
default: () => createMiddleware
|
|
});
|
|
|
|
// packages/redux-routine/build-module/is-generator.mjs
|
|
function isGenerator(object) {
|
|
return !!object && typeof object[Symbol.iterator] === "function" && typeof object.next === "function";
|
|
}
|
|
|
|
// packages/redux-routine/build-module/runtime.mjs
|
|
var import_rungen = __toESM(require_dist(), 1);
|
|
|
|
// node_modules/is-promise/index.mjs
|
|
function isPromise(obj) {
|
|
return !!obj && (typeof obj === "object" || typeof obj === "function") && typeof obj.then === "function";
|
|
}
|
|
|
|
// node_modules/is-plain-object/dist/is-plain-object.mjs
|
|
function isObject(o) {
|
|
return Object.prototype.toString.call(o) === "[object Object]";
|
|
}
|
|
function isPlainObject(o) {
|
|
var ctor, prot;
|
|
if (isObject(o) === false) return false;
|
|
ctor = o.constructor;
|
|
if (ctor === void 0) return true;
|
|
prot = ctor.prototype;
|
|
if (isObject(prot) === false) return false;
|
|
if (prot.hasOwnProperty("isPrototypeOf") === false) {
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
// packages/redux-routine/build-module/is-action.mjs
|
|
function isAction(object) {
|
|
return isPlainObject(object) && typeof object.type === "string";
|
|
}
|
|
function isActionOfType(object, expectedType) {
|
|
return isAction(object) && object.type === expectedType;
|
|
}
|
|
|
|
// packages/redux-routine/build-module/runtime.mjs
|
|
function createRuntime(controls = {}, dispatch) {
|
|
const rungenControls = Object.entries(controls).map(
|
|
([actionType, control]) => (value, next, iterate, yieldNext, yieldError) => {
|
|
if (!isActionOfType(value, actionType)) {
|
|
return false;
|
|
}
|
|
const routine = control(value);
|
|
if (isPromise(routine)) {
|
|
routine.then(yieldNext, yieldError);
|
|
} else {
|
|
yieldNext(routine);
|
|
}
|
|
return true;
|
|
}
|
|
);
|
|
const unhandledActionControl = (value, next) => {
|
|
if (!isAction(value)) {
|
|
return false;
|
|
}
|
|
dispatch(value);
|
|
next();
|
|
return true;
|
|
};
|
|
rungenControls.push(unhandledActionControl);
|
|
const rungenRuntime = (0, import_rungen.create)(rungenControls);
|
|
return (action) => new Promise(
|
|
(resolve, reject) => rungenRuntime(
|
|
action,
|
|
(result) => {
|
|
if (isAction(result)) {
|
|
dispatch(result);
|
|
}
|
|
resolve(result);
|
|
},
|
|
reject
|
|
)
|
|
);
|
|
}
|
|
|
|
// packages/redux-routine/build-module/index.mjs
|
|
function createMiddleware(controls = {}) {
|
|
return (store) => {
|
|
const runtime = createRuntime(controls, store.dispatch);
|
|
return (next) => (action) => {
|
|
if (!isGenerator(action)) {
|
|
return next(action);
|
|
}
|
|
return runtime(action);
|
|
};
|
|
};
|
|
}
|
|
return __toCommonJS(index_exports);
|
|
})();
|
|
/*! Bundled license information:
|
|
|
|
is-plain-object/dist/is-plain-object.mjs:
|
|
(*!
|
|
* is-plain-object <https://github.com/jonschlinkert/is-plain-object>
|
|
*
|
|
* Copyright (c) 2014-2017, Jon Schlinkert.
|
|
* Released under the MIT License.
|
|
*)
|
|
*/
|
|
if (typeof wp.reduxRoutine === 'object' && wp.reduxRoutine.default) { wp.reduxRoutine = wp.reduxRoutine.default; }
|