"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(
isNodeMode||!mod||!mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }):target,
mod
));
var __toCommonJS=(mod)=> __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var require_keys=__commonJS({
"node_modules/rungen/dist/utils/keys.js"(exports){
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var keys={
all:  Symbol("all"),
error:  Symbol("error"),
fork:  Symbol("fork"),
join:  Symbol("join"),
race:  Symbol("race"),
call:  Symbol("call"),
cps:  Symbol("cps"),
subscribe:  Symbol("subscribe")
};
exports.default=keys;
}});
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
};};
}});
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;
}});
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];
}});
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;
}});
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;
}});
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= new Map();
var fork=exports.fork=function fork2(value, next, rungen){
if(!_is2.default.fork(value)) return false;
var task= 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];
}});
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];
}});
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;
}});
var index_exports={};
__export(index_exports, {
default: ()=> createMiddleware
});
function isGenerator(object){
return !!object&&typeof object[Symbol.iterator]==="function"&&typeof object.next==="function";
}
var import_rungen=__toESM(require_dist(), 1);
function isPromise(obj){
return !!obj&&(typeof obj==="object"||typeof obj==="function")&&typeof obj.then==="function";
}
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;
}
function isAction(object){
return isPlainObject(object)&&typeof object.type==="string";
}
function isActionOfType(object, expectedType){
return isAction(object)&&object.type===expectedType;
}
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
)
);
}
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);
})();
if(typeof wp.reduxRoutine==='object'&&wp.reduxRoutine.default){ wp.reduxRoutine=wp.reduxRoutine.default; };