{"version":3,"sources":["jsdelivr-header.js","/npm/redux-saga-tester@1.0.874/dist/SagaTester.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,aAEA,OAAO,eAAe,QAAS,aAAc,CACzC,OAAO,IAEX,QAAQ,iBAAc,EAEtB,IAAI,SAAW,QAAQ,iCAEnB,UAAY,uBAAuB,UAEnC,MAAQ,QAAQ,qCAEhB,OAAS,uBAAuB,OAEhC,oBAAsB,QAAQ,2CAE9B,oBAAsB,uBAAuB,qBAE7C,QAAU,QAAQ,uCAElB,SAAW,uBAAuB,SAElC,SAAW,QAAQ,gCAEnB,SAAW,uBAAuB,UAElC,iBAAmB,QAAQ,wCAE3B,iBAAmB,uBAAuB,kBAE1C,cAAgB,QAAQ,qCAExB,cAAgB,uBAAuB,eAEvC,WAAa,QAAQ,cAErB,YAAc,uBAAuB,YAErC,OAAS,QAAQ,SAErB,SAAS,uBAAuB,GAAO,OAAO,GAAO,EAAI,WAAa,EAAM,CAAE,QAAS,EAAO,CAE9F,IAAI,yBAA2B,iBAC3B,eAAiB,qBACjB,kBAAoB,wBAEpB,YAAc,QAAQ,YAAc,CAAE,KAAM,0BAE5C,sBAAwB,WACxB,SAAS,IACL,IAAI,EAAQ,KAER,EAAO,UAAU,OAAS,QAAsB,IAAjB,UAAU,GAAmB,UAAU,GAAK,CAAC,EAC5E,EAAoB,EAAK,aACzB,OAAqC,IAAtB,EAAkC,CAAC,EAAI,EACtD,EAAW,EAAK,SAChB,EAAmB,EAAK,YACxB,OAAmC,IAArB,EAAiC,GAAK,EACpD,EAAuB,EAAK,gBAC5B,OAA2C,IAAzB,EAAqC,OAAO,gBAAkB,EAChF,EAAwB,EAAK,mBAC7B,OAA+C,IAA1B,GAA6C,EAClE,EAAe,EAAK,QACpB,OAA2B,IAAjB,EAA6B,CAAC,EAAI,GAEhD,EAAI,iBAAiB,SAAS,KAAM,GAEpC,KAAK,cAAgB,GACrB,KAAK,cAAgB,CAAC,EACtB,KAAK,gBAAiB,EAAI,YAAY,SAAS,GAE/C,IAAI,EAAkG,iBAAjE,IAAb,EAA2B,aAAc,EAAI,SAAS,SAAS,IAA0B,EAAgB,aAAa,IAAa,EA4CvJ,EAAiB,GAAG,QAAO,EAAI,oBAAoB,SAAS,GAAc,CAhBvD,WACnB,OAAO,SAAU,GACb,OAAO,SAAU,GACb,GAAI,GAAsB,EAAO,KAAK,WAAW,aAAe,EAAO,OAAS,uBAEzE,CACH,EAAM,cAAc,KAAK,GACzB,IAAI,EAAY,EAAM,WAAW,EAAO,MACxC,EAAU,QACV,EAAU,SAAS,EACvB,CACA,OAAO,EAAK,EAChB,CACJ,CACJ,EAEiG,KAAK,iBACtG,KAAK,OAAQ,EAAI,OAAO,cA3CL,SAAsB,EAAO,GAE5C,GAAI,EAAO,OAAS,yBAA0B,OAAO,EAGrD,IAAK,EAAW,CACZ,IAAI,EAAc,CAAC,EAQnB,MANI,CAAC,eAAgB,mBAAmB,QAAQ,EAAO,OAAS,IAC5D,EAAc,EAAO,SAKrB,EAAa,KACN,EAAa,UAAU,IAG3B,EAAI,SAAS,SAAS,CAAC,EAAG,EAAc,EACnD,CAGA,OAAO,EAAU,EAAO,EAC5B,GAoBmD,EAAc,OAAO,gBAAgB,WAAM,GAAW,EAAI,oBAAoB,SAAS,IAC9I,CAiLA,OA/KA,EAAI,cAAc,SAAS,EAAuB,CAAC,CAC/C,IAAK,2BACL,MAAO,SAAkC,GACrC,IAAI,EAAS,MAEb,EAAI,OAAO,SAAS,KAAK,eAAe,SAAQ,SAAU,GACtD,OAAO,EAAO,cAAc,GAAK,OAAO,EAC5C,GACJ,GACD,CACC,IAAK,aACL,MAAO,SAAoB,GACvB,IAAI,EAAa,UAAU,OAAS,QAAsB,IAAjB,UAAU,IAAmB,UAAU,GAE5E,EAAS,KAAK,cAAc,GAWhC,OATK,IAAU,KACX,EAAS,CAAE,MAAO,IACX,QAAU,IAAI,UAAU,SAAQ,SAAU,EAAS,GACtD,EAAO,SAAW,EAClB,EAAO,OAAS,CACpB,IACA,KAAK,cAAc,GAAc,GAG9B,CACX,GACD,CACC,IAAK,8BACL,MAAO,WACH,IAAI,EAAS,MAEb,EAAI,OAAO,SAAS,KAAK,eAAe,SAAQ,SAAU,GACtD,IAAI,EAAS,EAAO,cAAc,GACb,IAAjB,EAAO,OAAe,EAAO,QAC7B,EAAO,OAAO,IAAI,MAAM,EAAa,oCAE7C,GACJ,GACD,CACC,IAAK,MACL,MAAO,WAGH,IAFA,IAAI,EAAQ,UAAU,OAAS,QAAsB,IAAjB,UAAU,GAAmB,UAAU,GAAK,GAEvE,EAAO,UAAU,OAAQ,EAAO,MAAM,EAAO,EAAI,EAAO,EAAI,GAAI,EAAO,EAAG,EAAO,EAAM,IAC5F,EAAK,EAAO,GAAK,UAAU,GAG/B,IAAI,EAAO,KAAK,MAAM,MAAM,KAAM,CAAC,GAAO,OAAO,IACjD,OAAiB,MAAb,EAAK,KACE,EAAK,KAEL,EAAK,WAEpB,GACD,CACC,IAAK,QACL,MAAO,WAMH,IALA,IAAI,EACA,EAAS,KAET,EAAQ,UAAU,OAAS,QAAsB,IAAjB,UAAU,GAAmB,UAAU,GAAK,GAEvE,EAAQ,UAAU,OAAQ,EAAO,MAAM,EAAQ,EAAI,EAAQ,EAAI,GAAI,EAAQ,EAAG,EAAQ,EAAO,IAClG,EAAK,EAAQ,GAAK,UAAU,GAGhC,IAAI,GAAQ,EAAkB,KAAK,gBAAgB,IAAI,MAAM,EAAiB,CAAC,GAAO,OAAO,IACzF,EAAS,WACT,OAAO,EAAO,6BAClB,EACI,EAAU,SAAiB,GAC3B,OAAO,EAAO,yBAAyB,EAC3C,EACA,GAAiB,MAAb,EAAK,KACL,EAAK,KAAK,KAAK,GACf,EAAK,KAAK,MAAM,OACb,CACH,IAAI,EAAc,EAAK,YACvB,EAAY,KAAK,GACjB,EAAY,MAAM,EACtB,CACA,OAAO,CACX,GACD,CACC,IAAK,QACL,MAAO,WACH,IAAI,EAAS,KAET,EAAkB,UAAU,OAAS,QAAsB,IAAjB,UAAU,IAAmB,UAAU,GAErF,KAAK,MAAM,SAAS,aAChB,IAEA,KAAK,cAAc,OAAS,GAE5B,EAAI,OAAO,SAAS,KAAK,eAAe,SAAQ,SAAU,GACtD,cAAc,EAAO,cAAc,EACvC,IAER,GACD,CACC,IAAK,WACL,MAAO,SAAkB,GACrB,OAAO,KAAK,MAAM,SAAS,EAC/B,GACD,CACC,IAAK,WACL,MAAO,WACH,OAAO,KAAK,MAAM,UACtB,GACD,CACC,IAAK,WACL,MAAO,SAAkB,GACrB,UAAU,yDACV,KAAK,MAAM,SAAS,CAAE,KAAM,eAAgB,QAAS,GACzD,GACD,CACC,IAAK,cACL,MAAO,SAAqB,GACxB,KAAK,MAAM,SAAS,CAAE,KAAM,kBAAmB,QAAS,GAC5D,GACD,CACC,IAAK,mBACL,MAAO,WACH,OAAO,KAAK,cAAc,OAC9B,GACD,CACC,IAAK,wBACL,MAAO,WACH,OAAO,KAAK,cAAc,KAAK,cAAc,OAAS,EAC1D,GACD,CACC,IAAK,yBACL,MAAO,WACH,IAAI,EAAM,UAAU,OAAS,QAAsB,IAAjB,UAAU,GAAmB,UAAU,GAAK,EAE9E,OAAO,KAAK,cAAc,OAAO,EAAI,EACzC,GACD,CACC,IAAK,YACL,MAAO,SAAmB,GACtB,IAAI,EAAS,KAAK,cAAc,GAEhC,QAAO,GAAS,EAAO,MAAQ,CACnC,GACD,CACC,IAAK,YACL,MAAO,SAAmB,GACtB,IAAI,EAAS,KAAK,cAAc,GAEhC,OAAO,GAAU,EAAO,OAAS,CACrC,GACD,CACC,IAAK,UACL,MAAO,SAAiB,GACpB,IAAI,EAAa,UAAU,OAAS,QAAsB,IAAjB,UAAU,IAAmB,UAAU,GAEhF,OAAO,KAAK,WAAW,EAAY,GAAY,OACnD,GACD,CACC,IAAK,mBACL,MAAO,WAEH,OADA,UAAU,sEACH,KAAK,aAChB,GACD,CACC,IAAK,sBACL,MAAO,WACH,IAAI,EAAM,UAAU,OAAS,QAAsB,IAAjB,UAAU,GAAmB,UAAU,GAAK,EAG9E,OADA,UAAU,wGACH,KAAK,cAAc,OAAO,EAAI,EACzC,KAEG,CACX,CAvP4B,GA4P5B,SAAS,aAAa,GAClB,OAAO,EAAI,OAAO,SAAS,GAAa,QAAO,SAAU,EAAQ,GAc7D,OAbA,EAAO,GAAQ,SAAU,EAAO,GAC5B,IAAI,EAAU,EAAY,GACtB,EAAU,EAAO,QACjB,EAAO,EAAO,KAEd,EAAW,EAAQ,EAAO,GAM9B,MAJI,CAAC,eAAgB,mBAAmB,QAAQ,IAAS,GAAK,EAAQ,KAClE,GAAW,EAAI,SAAS,SAAS,CAAC,EAAG,EAAO,EAAQ,KAGjD,CACX,EACO,CACX,GAAG,CAAC,EACR,CAEA,SAAS,YACL,IAAI,EAAM,UAAU,OAAS,QAAsB,IAAjB,UAAU,GAAmB,UAAU,GAAK,GAE9E,QAAQ,KAAK,gCAAkC,EACnD,CA1BA,QAAQ,QAAU","file":"/npm/redux-saga-tester@1.0.874/dist/SagaTester.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/redux-saga-tester@1.0.874/dist/SagaTester.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\nexports.resetAction = undefined;\n\nvar _promise = require('babel-runtime/core-js/promise');\n\nvar _promise2 = _interopRequireDefault(_promise);\n\nvar _keys = require('babel-runtime/core-js/object/keys');\n\nvar _keys2 = _interopRequireDefault(_keys);\n\nvar _toConsumableArray2 = require('babel-runtime/helpers/toConsumableArray');\n\nvar _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2);\n\nvar _assign = require('babel-runtime/core-js/object/assign');\n\nvar _assign2 = _interopRequireDefault(_assign);\n\nvar _typeof2 = require('babel-runtime/helpers/typeof');\n\nvar _typeof3 = _interopRequireDefault(_typeof2);\n\nvar _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');\n\nvar _classCallCheck3 = _interopRequireDefault(_classCallCheck2);\n\nvar _createClass2 = require('babel-runtime/helpers/createClass');\n\nvar _createClass3 = _interopRequireDefault(_createClass2);\n\nvar _reduxSaga = require('redux-saga');\n\nvar _reduxSaga2 = _interopRequireDefault(_reduxSaga);\n\nvar _redux = require('redux');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar RESET_TESTER_ACTION_TYPE = '@@RESET_TESTER';\nvar SET_STATE_TYPE = '@@SET_TESTER_STATE';\nvar UPDATE_STATE_TYPE = '@@UPDATE_TESTER_STATE';\n\nvar resetAction = exports.resetAction = { type: RESET_TESTER_ACTION_TYPE };\n\nvar SagaIntegrationTester = function () {\n    function SagaIntegrationTester() {\n        var _this = this;\n\n        var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n            _ref$initialState = _ref.initialState,\n            initialState = _ref$initialState === undefined ? {} : _ref$initialState,\n            reducers = _ref.reducers,\n            _ref$middlewares = _ref.middlewares,\n            middlewares = _ref$middlewares === undefined ? [] : _ref$middlewares,\n            _ref$combineReducers = _ref.combineReducers,\n            combineReducers = _ref$combineReducers === undefined ? _redux.combineReducers : _ref$combineReducers,\n            _ref$ignoreReduxActio = _ref.ignoreReduxActions,\n            ignoreReduxActions = _ref$ignoreReduxActio === undefined ? true : _ref$ignoreReduxActio,\n            _ref$options = _ref.options,\n            options = _ref$options === undefined ? {} : _ref$options;\n\n        (0, _classCallCheck3.default)(this, SagaIntegrationTester);\n\n        this.calledActions = [];\n        this.actionLookups = {};\n        this.sagaMiddleware = (0, _reduxSaga2.default)(options);\n\n        var reducerFn = (typeof reducers === 'undefined' ? 'undefined' : (0, _typeof3.default)(reducers)) === 'object' ? combineReducers(wrapReducers(reducers)) : reducers;\n\n        var finalReducer = function finalReducer(state, action) {\n            // reset state if requested\n            if (action.type === RESET_TESTER_ACTION_TYPE) return initialState;\n\n            // supply identity reducer as default\n            if (!reducerFn) {\n                var stateUpdate = {};\n\n                if ([SET_STATE_TYPE, UPDATE_STATE_TYPE].indexOf(action.type) > -1) {\n                    stateUpdate = action.payload;\n                }\n\n                // TODO: update this to use `.isImmutable()` as soon as v4 is released.\n                // http://facebook.github.io/immutable-js/docs/#/isImmutable\n                if (initialState.toJS) {\n                    return initialState.mergeDeep(stateUpdate);\n                }\n\n                return (0, _assign2.default)({}, initialState, stateUpdate);\n            }\n\n            // otherwise use the provided reducer\n            return reducerFn(state, action);\n        };\n\n        // Middleware to store the actions and create promises\n        var testerMiddleware = function testerMiddleware() {\n            return function (next) {\n                return function (action) {\n                    if (ignoreReduxActions && action.type.startsWith('@@redux/') || action.type === UPDATE_STATE_TYPE) {\n                        // Don't monitor redux actions\n                    } else {\n                        _this.calledActions.push(action);\n                        var actionObj = _this._addAction(action.type);\n                        actionObj.count++;\n                        actionObj.callback(action);\n                    }\n                    return next(action);\n                };\n            };\n        };\n\n        var allMiddlewares = [].concat((0, _toConsumableArray3.default)(middlewares), [testerMiddleware, this.sagaMiddleware]);\n        this.store = (0, _redux.createStore)(finalReducer, initialState, _redux.applyMiddleware.apply(undefined, (0, _toConsumableArray3.default)(allMiddlewares)));\n    }\n\n    (0, _createClass3.default)(SagaIntegrationTester, [{\n        key: '_handleRootSagaException',\n        value: function _handleRootSagaException(e) {\n            var _this2 = this;\n\n            (0, _keys2.default)(this.actionLookups).forEach(function (key) {\n                return _this2.actionLookups[key].reject(e);\n            });\n        }\n    }, {\n        key: '_addAction',\n        value: function _addAction(actionType) {\n            var futureOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n            var action = this.actionLookups[actionType];\n\n            if (!action || futureOnly) {\n                action = { count: 0 };\n                action.promise = new _promise2.default(function (resolve, reject) {\n                    action.callback = resolve;\n                    action.reject = reject;\n                });\n                this.actionLookups[actionType] = action;\n            }\n\n            return action;\n        }\n    }, {\n        key: '_verifyAwaitedActionsCalled',\n        value: function _verifyAwaitedActionsCalled() {\n            var _this3 = this;\n\n            (0, _keys2.default)(this.actionLookups).forEach(function (actionType) {\n                var action = _this3.actionLookups[actionType];\n                if (action.count === 0 && action.reject) {\n                    action.reject(new Error(actionType + ' was waited for but never called'));\n                }\n            });\n        }\n    }, {\n        key: 'run',\n        value: function run() {\n            var sagas = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n\n            for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n                args[_key - 1] = arguments[_key];\n            }\n\n            var task = this.start.apply(this, [sagas].concat(args));\n            if (task.done != null) {\n                return task.done;\n            } else {\n                return task.toPromise();\n            }\n        }\n    }, {\n        key: 'start',\n        value: function start() {\n            var _sagaMiddleware,\n                _this4 = this;\n\n            var sagas = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n\n            for (var _len2 = arguments.length, args = Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n                args[_key2 - 1] = arguments[_key2];\n            }\n\n            var task = (_sagaMiddleware = this.sagaMiddleware).run.apply(_sagaMiddleware, [sagas].concat(args));\n            var onDone = function onDone() {\n                return _this4._verifyAwaitedActionsCalled();\n            };\n            var onCatch = function onCatch(e) {\n                return _this4._handleRootSagaException(e);\n            };\n            if (task.done != null) {\n                task.done.then(onDone);\n                task.done.catch(onCatch);\n            } else {\n                var taskPromise = task.toPromise();\n                taskPromise.then(onDone);\n                taskPromise.catch(onCatch);\n            }\n            return task;\n        }\n    }, {\n        key: 'reset',\n        value: function reset() {\n            var _this5 = this;\n\n            var clearActionList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n            this.store.dispatch(resetAction);\n            if (clearActionList) {\n                // Clear existing array in case there are other references to it\n                this.calledActions.length = 0;\n                // Delete object keys in case there are other references to it\n                (0, _keys2.default)(this.actionLookups).forEach(function (key) {\n                    return delete _this5.actionLookups[key];\n                });\n            }\n        }\n    }, {\n        key: 'dispatch',\n        value: function dispatch(action) {\n            return this.store.dispatch(action);\n        }\n    }, {\n        key: 'getState',\n        value: function getState() {\n            return this.store.getState();\n        }\n    }, {\n        key: 'setState',\n        value: function setState(newState) {\n            deprecate('setState has been deprecated. Please use updateState.');\n            this.store.dispatch({ type: SET_STATE_TYPE, payload: newState });\n        }\n    }, {\n        key: 'updateState',\n        value: function updateState(newState) {\n            this.store.dispatch({ type: UPDATE_STATE_TYPE, payload: newState });\n        }\n    }, {\n        key: 'getCalledActions',\n        value: function getCalledActions() {\n            return this.calledActions.slice(); // shallow copy\n        }\n    }, {\n        key: 'getLatestCalledAction',\n        value: function getLatestCalledAction() {\n            return this.calledActions[this.calledActions.length - 1];\n        }\n    }, {\n        key: 'getLatestCalledActions',\n        value: function getLatestCalledActions() {\n            var num = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n\n            return this.calledActions.slice(-1 * num);\n        }\n    }, {\n        key: 'wasCalled',\n        value: function wasCalled(actionType) {\n            var action = this.actionLookups[actionType];\n\n            return action ? action.count > 0 : false;\n        }\n    }, {\n        key: 'numCalled',\n        value: function numCalled(actionType) {\n            var action = this.actionLookups[actionType];\n\n            return action && action.count || 0;\n        }\n    }, {\n        key: 'waitFor',\n        value: function waitFor(actionType) {\n            var futureOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n            return this._addAction(actionType, futureOnly).promise;\n        }\n    }, {\n        key: 'getActionsCalled',\n        value: function getActionsCalled() {\n            deprecate('getActionsCalled has been deprecated. Please use getCalledActions.');\n            return this.calledActions;\n        }\n    }, {\n        key: 'getLastActionCalled',\n        value: function getLastActionCalled() {\n            var num = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n\n            deprecate('getLastActionCalled has been deprecated. Please use getLatestCalledAction or getLatestCalledActions.');\n            return this.calledActions.slice(-1 * num);\n        }\n    }]);\n    return SagaIntegrationTester;\n}();\n\nexports.default = SagaIntegrationTester;\n\n\nfunction wrapReducers(reducerList) {\n    return (0, _keys2.default)(reducerList).reduce(function (result, name) {\n        result[name] = function (state, action) {\n            var reducer = reducerList[name];\n            var payload = action.payload,\n                type = action.type;\n\n            var newState = reducer(state, action);\n\n            if ([SET_STATE_TYPE, UPDATE_STATE_TYPE].indexOf(type) > -1 && payload[name]) {\n                newState = (0, _assign2.default)({}, state, payload[name]);\n            }\n\n            return newState;\n        };\n        return result;\n    }, {});\n}\n\nfunction deprecate() {\n    var txt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n\n    console.warn('[redux-saga-tester] Warning: ' + txt);\n}"]}