{"ast":null,"code":"import $$observable from 'symbol-observable';\n/**\n * These are private action types reserved by Redux.\n * For any unknown actions, you must return the current state.\n * If the current state is undefined, you must return the initial state.\n * Do not reference these action types directly in your code.\n */\n\nvar randomString = function randomString() {\n  return Math.random().toString(36).substring(7).split('').join('.');\n};\n\nvar ActionTypes = {\n  INIT: \"@@redux/INIT\" + randomString(),\n  REPLACE: \"@@redux/REPLACE\" + randomString(),\n  PROBE_UNKNOWN_ACTION: function PROBE_UNKNOWN_ACTION() {\n    return \"@@redux/PROBE_UNKNOWN_ACTION\" + randomString();\n  }\n};\n/**\n * @param {any} obj The object to inspect.\n * @returns {boolean} True if the argument appears to be a plain object.\n */\n\nfunction isPlainObject(obj) {\n  if (typeof obj !== 'object' || obj === null) return false;\n  var proto = obj;\n\n  while (Object.getPrototypeOf(proto) !== null) {\n    proto = Object.getPrototypeOf(proto);\n  }\n\n  return Object.getPrototypeOf(obj) === proto;\n}\n/**\n * Creates a Redux store that holds the state tree.\n * The only way to change the data in the store is to call `dispatch()` on it.\n *\n * There should only be a single store in your app. To specify how different\n * parts of the state tree respond to actions, you may combine several reducers\n * into a single reducer function by using `combineReducers`.\n *\n * @param {Function} reducer A function that returns the next state tree, given\n * the current state tree and the action to handle.\n *\n * @param {any} [preloadedState] The initial state. You may optionally specify it\n * to hydrate the state from the server in universal apps, or to restore a\n * previously serialized user session.\n * If you use `combineReducers` to produce the root reducer function, this must be\n * an object with the same shape as `combineReducers` keys.\n *\n * @param {Function} [enhancer] The store enhancer. You may optionally specify it\n * to enhance the store with third-party capabilities such as middleware,\n * time travel, persistence, etc. The only store enhancer that ships with Redux\n * is `applyMiddleware()`.\n *\n * @returns {Store} A Redux store that lets you read the state, dispatch actions\n * and subscribe to changes.\n */\n\n\nfunction createStore(reducer, preloadedState, enhancer) {\n  var _ref2;\n\n  if (typeof preloadedState === 'function' && typeof enhancer === 'function' || typeof enhancer === 'function' && typeof arguments[3] === 'function') {\n    throw new Error('It looks like you are passing several store enhancers to ' + 'createStore(). This is not supported. Instead, compose them ' + 'together to a single function.');\n  }\n\n  if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') {\n    enhancer = preloadedState;\n    preloadedState = undefined;\n  }\n\n  if (typeof enhancer !== 'undefined') {\n    if (typeof enhancer !== 'function') {\n      throw new Error('Expected the enhancer to be a function.');\n    }\n\n    return enhancer(createStore)(reducer, preloadedState);\n  }\n\n  if (typeof reducer !== 'function') {\n    throw new Error('Expected the reducer to be a function.');\n  }\n\n  var currentReducer = reducer;\n  var currentState = preloadedState;\n  var currentListeners = [];\n  var nextListeners = currentListeners;\n  var isDispatching = false;\n  /**\n   * This makes a shallow copy of currentListeners so we can use\n   * nextListeners as a temporary list while dispatching.\n   *\n   * This prevents any bugs around consumers calling\n   * subscribe/unsubscribe in the middle of a dispatch.\n   */\n\n  function ensureCanMutateNextListeners() {\n    if (nextListeners === currentListeners) {\n      nextListeners = currentListeners.slice();\n    }\n  }\n  /**\n   * Reads the state tree managed by the store.\n   *\n   * @returns {any} The current state tree of your application.\n   */\n\n\n  function getState() {\n    if (isDispatching) {\n      throw new Error('You may not call store.getState() while the reducer is executing. ' + 'The reducer has already received the state as an argument. ' + 'Pass it down from the top reducer instead of reading it from the store.');\n    }\n\n    return currentState;\n  }\n  /**\n   * Adds a change listener. It will be called any time an action is dispatched,\n   * and some part of the state tree may potentially have changed. You may then\n   * call `getState()` to read the current state tree inside the callback.\n   *\n   * You may call `dispatch()` from a change listener, with the following\n   * caveats:\n   *\n   * 1. The subscriptions are snapshotted just before every `dispatch()` call.\n   * If you subscribe or unsubscribe while the listeners are being invoked, this\n   * will not have any effect on the `dispatch()` that is currently in progress.\n   * However, the next `dispatch()` call, whether nested or not, will use a more\n   * recent snapshot of the subscription list.\n   *\n   * 2. The listener should not expect to see all state changes, as the state\n   * might have been updated multiple times during a nested `dispatch()` before\n   * the listener is called. It is, however, guaranteed that all subscribers\n   * registered before the `dispatch()` started will be called with the latest\n   * state by the time it exits.\n   *\n   * @param {Function} listener A callback to be invoked on every dispatch.\n   * @returns {Function} A function to remove this change listener.\n   */\n\n\n  function subscribe(listener) {\n    if (typeof listener !== 'function') {\n      throw new Error('Expected the listener to be a function.');\n    }\n\n    if (isDispatching) {\n      throw new Error('You may not call store.subscribe() while the reducer is executing. ' + 'If you would like to be notified after the store has been updated, subscribe from a ' + 'component and invoke store.getState() in the callback to access the latest state. ' + 'See https://redux.js.org/api-reference/store#subscribelistener for more details.');\n    }\n\n    var isSubscribed = true;\n    ensureCanMutateNextListeners();\n    nextListeners.push(listener);\n    return function unsubscribe() {\n      if (!isSubscribed) {\n        return;\n      }\n\n      if (isDispatching) {\n        throw new Error('You may not unsubscribe from a store listener while the reducer is executing. ' + 'See https://redux.js.org/api-reference/store#subscribelistener for more details.');\n      }\n\n      isSubscribed = false;\n      ensureCanMutateNextListeners();\n      var index = nextListeners.indexOf(listener);\n      nextListeners.splice(index, 1);\n      currentListeners = null;\n    };\n  }\n  /**\n   * Dispatches an action. It is the only way to trigger a state change.\n   *\n   * The `reducer` function, used to create the store, will be called with the\n   * current state tree and the given `action`. Its return value will\n   * be considered the **next** state of the tree, and the change listeners\n   * will be notified.\n   *\n   * The base implementation only supports plain object actions. If you want to\n   * dispatch a Promise, an Observable, a thunk, or something else, you need to\n   * wrap your store creating function into the corresponding middleware. For\n   * example, see the documentation for the `redux-thunk` package. Even the\n   * middleware will eventually dispatch plain object actions using this method.\n   *\n   * @param {Object} action A plain object representing “what changed”. It is\n   * a good idea to keep actions serializable so you can record and replay user\n   * sessions, or use the time travelling `redux-devtools`. An action must have\n   * a `type` property which may not be `undefined`. It is a good idea to use\n   * string constants for action types.\n   *\n   * @returns {Object} For convenience, the same action object you dispatched.\n   *\n   * Note that, if you use a custom middleware, it may wrap `dispatch()` to\n   * return something else (for example, a Promise you can await).\n   */\n\n\n  function dispatch(action) {\n    if (!isPlainObject(action)) {\n      throw new Error('Actions must be plain objects. ' + 'Use custom middleware for async actions.');\n    }\n\n    if (typeof action.type === 'undefined') {\n      throw new Error('Actions may not have an undefined \"type\" property. ' + 'Have you misspelled a constant?');\n    }\n\n    if (isDispatching) {\n      throw new Error('Reducers may not dispatch actions.');\n    }\n\n    try {\n      isDispatching = true;\n      currentState = currentReducer(currentState, action);\n    } finally {\n      isDispatching = false;\n    }\n\n    var listeners = currentListeners = nextListeners;\n\n    for (var i = 0; i < listeners.length; i++) {\n      var listener = listeners[i];\n      listener();\n    }\n\n    return action;\n  }\n  /**\n   * Replaces the reducer currently used by the store to calculate the state.\n   *\n   * You might need this if your app implements code splitting and you want to\n   * load some of the reducers dynamically. You might also need this if you\n   * implement a hot reloading mechanism for Redux.\n   *\n   * @param {Function} nextReducer The reducer for the store to use instead.\n   * @returns {void}\n   */\n\n\n  function replaceReducer(nextReducer) {\n    if (typeof nextReducer !== 'function') {\n      throw new Error('Expected the nextReducer to be a function.');\n    }\n\n    currentReducer = nextReducer; // This action has a similiar effect to ActionTypes.INIT.\n    // Any reducers that existed in both the new and old rootReducer\n    // will receive the previous state. This effectively populates\n    // the new state tree with any relevant data from the old one.\n\n    dispatch({\n      type: ActionTypes.REPLACE\n    });\n  }\n  /**\n   * Interoperability point for observable/reactive libraries.\n   * @returns {observable} A minimal observable of state changes.\n   * For more information, see the observable proposal:\n   * https://github.com/tc39/proposal-observable\n   */\n\n\n  function observable() {\n    var _ref;\n\n    var outerSubscribe = subscribe;\n    return _ref = {\n      /**\n       * The minimal observable subscription method.\n       * @param {Object} observer Any object that can be used as an observer.\n       * The observer object should have a `next` method.\n       * @returns {subscription} An object with an `unsubscribe` method that can\n       * be used to unsubscribe the observable from the store, and prevent further\n       * emission of values from the observable.\n       */\n      subscribe: function subscribe(observer) {\n        if (typeof observer !== 'object' || observer === null) {\n          throw new TypeError('Expected the observer to be an object.');\n        }\n\n        function observeState() {\n          if (observer.next) {\n            observer.next(getState());\n          }\n        }\n\n        observeState();\n        var unsubscribe = outerSubscribe(observeState);\n        return {\n          unsubscribe: unsubscribe\n        };\n      }\n    }, _ref[$$observable] = function () {\n      return this;\n    }, _ref;\n  } // When a store is created, an \"INIT\" action is dispatched so that every\n  // reducer returns their initial state. This effectively populates\n  // the initial state tree.\n\n\n  dispatch({\n    type: ActionTypes.INIT\n  });\n  return _ref2 = {\n    dispatch: dispatch,\n    subscribe: subscribe,\n    getState: getState,\n    replaceReducer: replaceReducer\n  }, _ref2[$$observable] = observable, _ref2;\n}\n/**\n * Prints a warning in the console if it exists.\n *\n * @param {String} message The warning message.\n * @returns {void}\n */\n\n\nfunction warning(message) {\n  /* eslint-disable no-console */\n  if (typeof console !== 'undefined' && typeof console.error === 'function') {\n    console.error(message);\n  }\n  /* eslint-enable no-console */\n\n\n  try {\n    // This error was thrown as a convenience so that if you enable\n    // \"break on all exceptions\" in your console,\n    // it would pause the execution at this line.\n    throw new Error(message);\n  } catch (e) {} // eslint-disable-line no-empty\n\n}\n\nfunction getUndefinedStateErrorMessage(key, action) {\n  var actionType = action && action.type;\n  var actionDescription = actionType && \"action \\\"\" + String(actionType) + \"\\\"\" || 'an action';\n  return \"Given \" + actionDescription + \", reducer \\\"\" + key + \"\\\" returned undefined. \" + \"To ignore an action, you must explicitly return the previous state. \" + \"If you want this reducer to hold no value, you can return null instead of undefined.\";\n}\n\nfunction getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) {\n  var reducerKeys = Object.keys(reducers);\n  var argumentName = action && action.type === ActionTypes.INIT ? 'preloadedState argument passed to createStore' : 'previous state received by the reducer';\n\n  if (reducerKeys.length === 0) {\n    return 'Store does not have a valid reducer. Make sure the argument passed ' + 'to combineReducers is an object whose values are reducers.';\n  }\n\n  if (!isPlainObject(inputState)) {\n    return \"The \" + argumentName + \" has unexpected type of \\\"\" + {}.toString.call(inputState).match(/\\s([a-z|A-Z]+)/)[1] + \"\\\". Expected argument to be an object with the following \" + (\"keys: \\\"\" + reducerKeys.join('\", \"') + \"\\\"\");\n  }\n\n  var unexpectedKeys = Object.keys(inputState).filter(function (key) {\n    return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key];\n  });\n  unexpectedKeys.forEach(function (key) {\n    unexpectedKeyCache[key] = true;\n  });\n  if (action && action.type === ActionTypes.REPLACE) return;\n\n  if (unexpectedKeys.length > 0) {\n    return \"Unexpected \" + (unexpectedKeys.length > 1 ? 'keys' : 'key') + \" \" + (\"\\\"\" + unexpectedKeys.join('\", \"') + \"\\\" found in \" + argumentName + \". \") + \"Expected to find one of the known reducer keys instead: \" + (\"\\\"\" + reducerKeys.join('\", \"') + \"\\\". Unexpected keys will be ignored.\");\n  }\n}\n\nfunction assertReducerShape(reducers) {\n  Object.keys(reducers).forEach(function (key) {\n    var reducer = reducers[key];\n    var initialState = reducer(undefined, {\n      type: ActionTypes.INIT\n    });\n\n    if (typeof initialState === 'undefined') {\n      throw new Error(\"Reducer \\\"\" + key + \"\\\" returned undefined during initialization. \" + \"If the state passed to the reducer is undefined, you must \" + \"explicitly return the initial state. The initial state may \" + \"not be undefined. If you don't want to set a value for this reducer, \" + \"you can use null instead of undefined.\");\n    }\n\n    if (typeof reducer(undefined, {\n      type: ActionTypes.PROBE_UNKNOWN_ACTION()\n    }) === 'undefined') {\n      throw new Error(\"Reducer \\\"\" + key + \"\\\" returned undefined when probed with a random type. \" + (\"Don't try to handle \" + ActionTypes.INIT + \" or other actions in \\\"redux/*\\\" \") + \"namespace. They are considered private. Instead, you must return the \" + \"current state for any unknown actions, unless it is undefined, \" + \"in which case you must return the initial state, regardless of the \" + \"action type. The initial state may not be undefined, but can be null.\");\n    }\n  });\n}\n/**\n * Turns an object whose values are different reducer functions, into a single\n * reducer function. It will call every child reducer, and gather their results\n * into a single state object, whose keys correspond to the keys of the passed\n * reducer functions.\n *\n * @param {Object} reducers An object whose values correspond to different\n * reducer functions that need to be combined into one. One handy way to obtain\n * it is to use ES6 `import * as reducers` syntax. The reducers may never return\n * undefined for any action. Instead, they should return their initial state\n * if the state passed to them was undefined, and the current state for any\n * unrecognized action.\n *\n * @returns {Function} A reducer function that invokes every reducer inside the\n * passed object, and builds a state object with the same shape.\n */\n\n\nfunction combineReducers(reducers) {\n  var reducerKeys = Object.keys(reducers);\n  var finalReducers = {};\n\n  for (var i = 0; i < reducerKeys.length; i++) {\n    var key = reducerKeys[i];\n\n    if (process.env.NODE_ENV !== 'production') {\n      if (typeof reducers[key] === 'undefined') {\n        warning(\"No reducer provided for key \\\"\" + key + \"\\\"\");\n      }\n    }\n\n    if (typeof reducers[key] === 'function') {\n      finalReducers[key] = reducers[key];\n    }\n  }\n\n  var finalReducerKeys = Object.keys(finalReducers); // This is used to make sure we don't warn about the same\n  // keys multiple times.\n\n  var unexpectedKeyCache;\n\n  if (process.env.NODE_ENV !== 'production') {\n    unexpectedKeyCache = {};\n  }\n\n  var shapeAssertionError;\n\n  try {\n    assertReducerShape(finalReducers);\n  } catch (e) {\n    shapeAssertionError = e;\n  }\n\n  return function combination(state, action) {\n    if (state === void 0) {\n      state = {};\n    }\n\n    if (shapeAssertionError) {\n      throw shapeAssertionError;\n    }\n\n    if (process.env.NODE_ENV !== 'production') {\n      var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache);\n\n      if (warningMessage) {\n        warning(warningMessage);\n      }\n    }\n\n    var hasChanged = false;\n    var nextState = {};\n\n    for (var _i = 0; _i < finalReducerKeys.length; _i++) {\n      var _key = finalReducerKeys[_i];\n      var reducer = finalReducers[_key];\n      var previousStateForKey = state[_key];\n      var nextStateForKey = reducer(previousStateForKey, action);\n\n      if (typeof nextStateForKey === 'undefined') {\n        var errorMessage = getUndefinedStateErrorMessage(_key, action);\n        throw new Error(errorMessage);\n      }\n\n      nextState[_key] = nextStateForKey;\n      hasChanged = hasChanged || nextStateForKey !== previousStateForKey;\n    }\n\n    hasChanged = hasChanged || finalReducerKeys.length !== Object.keys(state).length;\n    return hasChanged ? nextState : state;\n  };\n}\n\nfunction bindActionCreator(actionCreator, dispatch) {\n  return function () {\n    return dispatch(actionCreator.apply(this, arguments));\n  };\n}\n/**\n * Turns an object whose values are action creators, into an object with the\n * same keys, but with every function wrapped into a `dispatch` call so they\n * may be invoked directly. This is just a convenience method, as you can call\n * `store.dispatch(MyActionCreators.doSomething())` yourself just fine.\n *\n * For convenience, you can also pass an action creator as the first argument,\n * and get a dispatch wrapped function in return.\n *\n * @param {Function|Object} actionCreators An object whose values are action\n * creator functions. One handy way to obtain it is to use ES6 `import * as`\n * syntax. You may also pass a single function.\n *\n * @param {Function} dispatch The `dispatch` function available on your Redux\n * store.\n *\n * @returns {Function|Object} The object mimicking the original object, but with\n * every action creator wrapped into the `dispatch` call. If you passed a\n * function as `actionCreators`, the return value will also be a single\n * function.\n */\n\n\nfunction bindActionCreators(actionCreators, dispatch) {\n  if (typeof actionCreators === 'function') {\n    return bindActionCreator(actionCreators, dispatch);\n  }\n\n  if (typeof actionCreators !== 'object' || actionCreators === null) {\n    throw new Error(\"bindActionCreators expected an object or a function, instead received \" + (actionCreators === null ? 'null' : typeof actionCreators) + \". \" + \"Did you write \\\"import ActionCreators from\\\" instead of \\\"import * as ActionCreators from\\\"?\");\n  }\n\n  var boundActionCreators = {};\n\n  for (var key in actionCreators) {\n    var actionCreator = actionCreators[key];\n\n    if (typeof actionCreator === 'function') {\n      boundActionCreators[key] = bindActionCreator(actionCreator, dispatch);\n    }\n  }\n\n  return boundActionCreators;\n}\n\nfunction _defineProperty(obj, key, value) {\n  if (key in obj) {\n    Object.defineProperty(obj, key, {\n      value: value,\n      enumerable: true,\n      configurable: true,\n      writable: true\n    });\n  } else {\n    obj[key] = value;\n  }\n\n  return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n  var keys = Object.keys(object);\n\n  if (Object.getOwnPropertySymbols) {\n    keys.push.apply(keys, Object.getOwnPropertySymbols(object));\n  }\n\n  if (enumerableOnly) keys = keys.filter(function (sym) {\n    return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n  });\n  return keys;\n}\n\nfunction _objectSpread2(target) {\n  for (var i = 1; i < arguments.length; i++) {\n    var source = arguments[i] != null ? arguments[i] : {};\n\n    if (i % 2) {\n      ownKeys(source, true).forEach(function (key) {\n        _defineProperty(target, key, source[key]);\n      });\n    } else if (Object.getOwnPropertyDescriptors) {\n      Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n    } else {\n      ownKeys(source).forEach(function (key) {\n        Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n      });\n    }\n  }\n\n  return target;\n}\n/**\n * Composes single-argument functions from right to left. The rightmost\n * function can take multiple arguments as it provides the signature for\n * the resulting composite function.\n *\n * @param {...Function} funcs The functions to compose.\n * @returns {Function} A function obtained by composing the argument functions\n * from right to left. For example, compose(f, g, h) is identical to doing\n * (...args) => f(g(h(...args))).\n */\n\n\nfunction compose() {\n  for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {\n    funcs[_key] = arguments[_key];\n  }\n\n  if (funcs.length === 0) {\n    return function (arg) {\n      return arg;\n    };\n  }\n\n  if (funcs.length === 1) {\n    return funcs[0];\n  }\n\n  return funcs.reduce(function (a, b) {\n    return function () {\n      return a(b.apply(void 0, arguments));\n    };\n  });\n}\n/**\n * Creates a store enhancer that applies middleware to the dispatch method\n * of the Redux store. This is handy for a variety of tasks, such as expressing\n * asynchronous actions in a concise manner, or logging every action payload.\n *\n * See `redux-thunk` package as an example of the Redux middleware.\n *\n * Because middleware is potentially asynchronous, this should be the first\n * store enhancer in the composition chain.\n *\n * Note that each middleware will be given the `dispatch` and `getState` functions\n * as named arguments.\n *\n * @param {...Function} middlewares The middleware chain to be applied.\n * @returns {Function} A store enhancer applying the middleware.\n */\n\n\nfunction applyMiddleware() {\n  for (var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++) {\n    middlewares[_key] = arguments[_key];\n  }\n\n  return function (createStore) {\n    return function () {\n      var store = createStore.apply(void 0, arguments);\n\n      var _dispatch = function dispatch() {\n        throw new Error('Dispatching while constructing your middleware is not allowed. ' + 'Other middleware would not be applied to this dispatch.');\n      };\n\n      var middlewareAPI = {\n        getState: store.getState,\n        dispatch: function dispatch() {\n          return _dispatch.apply(void 0, arguments);\n        }\n      };\n      var chain = middlewares.map(function (middleware) {\n        return middleware(middlewareAPI);\n      });\n      _dispatch = compose.apply(void 0, chain)(store.dispatch);\n      return _objectSpread2({}, store, {\n        dispatch: _dispatch\n      });\n    };\n  };\n}\n/*\n * This is a dummy function to check if the function name has been altered by minification.\n * If the function has been minified and NODE_ENV !== 'production', warn the user.\n */\n\n\nfunction isCrushed() {}\n\nif (process.env.NODE_ENV !== 'production' && typeof isCrushed.name === 'string' && isCrushed.name !== 'isCrushed') {\n  warning('You are currently using minified code outside of NODE_ENV === \"production\". ' + 'This means that you are running a slower development build of Redux. ' + 'You can use loose-envify (https://github.com/zertosh/loose-envify) for browserify ' + 'or setting mode to production in webpack (https://webpack.js.org/concepts/mode/) ' + 'to ensure you have the correct code for your production build.');\n}\n\nexport { ActionTypes as __DO_NOT_USE__ActionTypes, applyMiddleware, bindActionCreators, combineReducers, compose, createStore };","map":{"version":3,"sources":["C:/laragon/www/itokin/DriverOPCDA/frontend/node_modules/redux/es/redux.js"],"names":["$$observable","randomString","Math","random","toString","substring","split","join","ActionTypes","INIT","REPLACE","PROBE_UNKNOWN_ACTION","isPlainObject","obj","proto","Object","getPrototypeOf","createStore","reducer","preloadedState","enhancer","_ref2","arguments","Error","undefined","currentReducer","currentState","currentListeners","nextListeners","isDispatching","ensureCanMutateNextListeners","slice","getState","subscribe","listener","isSubscribed","push","unsubscribe","index","indexOf","splice","dispatch","action","type","listeners","i","length","replaceReducer","nextReducer","observable","_ref","outerSubscribe","observer","TypeError","observeState","next","warning","message","console","error","e","getUndefinedStateErrorMessage","key","actionType","actionDescription","String","getUnexpectedStateShapeWarningMessage","inputState","reducers","unexpectedKeyCache","reducerKeys","keys","argumentName","call","match","unexpectedKeys","filter","hasOwnProperty","forEach","assertReducerShape","initialState","combineReducers","finalReducers","process","env","NODE_ENV","finalReducerKeys","shapeAssertionError","combination","state","warningMessage","hasChanged","nextState","_i","_key","previousStateForKey","nextStateForKey","errorMessage","bindActionCreator","actionCreator","apply","bindActionCreators","actionCreators","boundActionCreators","_defineProperty","value","defineProperty","enumerable","configurable","writable","ownKeys","object","enumerableOnly","getOwnPropertySymbols","sym","getOwnPropertyDescriptor","_objectSpread2","target","source","getOwnPropertyDescriptors","defineProperties","compose","_len","funcs","Array","arg","reduce","a","b","applyMiddleware","middlewares","store","_dispatch","middlewareAPI","chain","map","middleware","isCrushed","name","__DO_NOT_USE__ActionTypes"],"mappings":"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","sourcesContent":["import $$observable from 'symbol-observable';\n\n/**\n * These are private action types reserved by Redux.\n * For any unknown actions, you must return the current state.\n * If the current state is undefined, you must return the initial state.\n * Do not reference these action types directly in your code.\n */\nvar randomString = function randomString() {\n  return Math.random().toString(36).substring(7).split('').join('.');\n};\n\nvar ActionTypes = {\n  INIT: \"@@redux/INIT\" + randomString(),\n  REPLACE: \"@@redux/REPLACE\" + randomString(),\n  PROBE_UNKNOWN_ACTION: function PROBE_UNKNOWN_ACTION() {\n    return \"@@redux/PROBE_UNKNOWN_ACTION\" + randomString();\n  }\n};\n\n/**\n * @param {any} obj The object to inspect.\n * @returns {boolean} True if the argument appears to be a plain object.\n */\nfunction isPlainObject(obj) {\n  if (typeof obj !== 'object' || obj === null) return false;\n  var proto = obj;\n\n  while (Object.getPrototypeOf(proto) !== null) {\n    proto = Object.getPrototypeOf(proto);\n  }\n\n  return Object.getPrototypeOf(obj) === proto;\n}\n\n/**\n * Creates a Redux store that holds the state tree.\n * The only way to change the data in the store is to call `dispatch()` on it.\n *\n * There should only be a single store in your app. To specify how different\n * parts of the state tree respond to actions, you may combine several reducers\n * into a single reducer function by using `combineReducers`.\n *\n * @param {Function} reducer A function that returns the next state tree, given\n * the current state tree and the action to handle.\n *\n * @param {any} [preloadedState] The initial state. You may optionally specify it\n * to hydrate the state from the server in universal apps, or to restore a\n * previously serialized user session.\n * If you use `combineReducers` to produce the root reducer function, this must be\n * an object with the same shape as `combineReducers` keys.\n *\n * @param {Function} [enhancer] The store enhancer. You may optionally specify it\n * to enhance the store with third-party capabilities such as middleware,\n * time travel, persistence, etc. The only store enhancer that ships with Redux\n * is `applyMiddleware()`.\n *\n * @returns {Store} A Redux store that lets you read the state, dispatch actions\n * and subscribe to changes.\n */\n\nfunction createStore(reducer, preloadedState, enhancer) {\n  var _ref2;\n\n  if (typeof preloadedState === 'function' && typeof enhancer === 'function' || typeof enhancer === 'function' && typeof arguments[3] === 'function') {\n    throw new Error('It looks like you are passing several store enhancers to ' + 'createStore(). This is not supported. Instead, compose them ' + 'together to a single function.');\n  }\n\n  if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') {\n    enhancer = preloadedState;\n    preloadedState = undefined;\n  }\n\n  if (typeof enhancer !== 'undefined') {\n    if (typeof enhancer !== 'function') {\n      throw new Error('Expected the enhancer to be a function.');\n    }\n\n    return enhancer(createStore)(reducer, preloadedState);\n  }\n\n  if (typeof reducer !== 'function') {\n    throw new Error('Expected the reducer to be a function.');\n  }\n\n  var currentReducer = reducer;\n  var currentState = preloadedState;\n  var currentListeners = [];\n  var nextListeners = currentListeners;\n  var isDispatching = false;\n  /**\n   * This makes a shallow copy of currentListeners so we can use\n   * nextListeners as a temporary list while dispatching.\n   *\n   * This prevents any bugs around consumers calling\n   * subscribe/unsubscribe in the middle of a dispatch.\n   */\n\n  function ensureCanMutateNextListeners() {\n    if (nextListeners === currentListeners) {\n      nextListeners = currentListeners.slice();\n    }\n  }\n  /**\n   * Reads the state tree managed by the store.\n   *\n   * @returns {any} The current state tree of your application.\n   */\n\n\n  function getState() {\n    if (isDispatching) {\n      throw new Error('You may not call store.getState() while the reducer is executing. ' + 'The reducer has already received the state as an argument. ' + 'Pass it down from the top reducer instead of reading it from the store.');\n    }\n\n    return currentState;\n  }\n  /**\n   * Adds a change listener. It will be called any time an action is dispatched,\n   * and some part of the state tree may potentially have changed. You may then\n   * call `getState()` to read the current state tree inside the callback.\n   *\n   * You may call `dispatch()` from a change listener, with the following\n   * caveats:\n   *\n   * 1. The subscriptions are snapshotted just before every `dispatch()` call.\n   * If you subscribe or unsubscribe while the listeners are being invoked, this\n   * will not have any effect on the `dispatch()` that is currently in progress.\n   * However, the next `dispatch()` call, whether nested or not, will use a more\n   * recent snapshot of the subscription list.\n   *\n   * 2. The listener should not expect to see all state changes, as the state\n   * might have been updated multiple times during a nested `dispatch()` before\n   * the listener is called. It is, however, guaranteed that all subscribers\n   * registered before the `dispatch()` started will be called with the latest\n   * state by the time it exits.\n   *\n   * @param {Function} listener A callback to be invoked on every dispatch.\n   * @returns {Function} A function to remove this change listener.\n   */\n\n\n  function subscribe(listener) {\n    if (typeof listener !== 'function') {\n      throw new Error('Expected the listener to be a function.');\n    }\n\n    if (isDispatching) {\n      throw new Error('You may not call store.subscribe() while the reducer is executing. ' + 'If you would like to be notified after the store has been updated, subscribe from a ' + 'component and invoke store.getState() in the callback to access the latest state. ' + 'See https://redux.js.org/api-reference/store#subscribelistener for more details.');\n    }\n\n    var isSubscribed = true;\n    ensureCanMutateNextListeners();\n    nextListeners.push(listener);\n    return function unsubscribe() {\n      if (!isSubscribed) {\n        return;\n      }\n\n      if (isDispatching) {\n        throw new Error('You may not unsubscribe from a store listener while the reducer is executing. ' + 'See https://redux.js.org/api-reference/store#subscribelistener for more details.');\n      }\n\n      isSubscribed = false;\n      ensureCanMutateNextListeners();\n      var index = nextListeners.indexOf(listener);\n      nextListeners.splice(index, 1);\n      currentListeners = null;\n    };\n  }\n  /**\n   * Dispatches an action. It is the only way to trigger a state change.\n   *\n   * The `reducer` function, used to create the store, will be called with the\n   * current state tree and the given `action`. Its return value will\n   * be considered the **next** state of the tree, and the change listeners\n   * will be notified.\n   *\n   * The base implementation only supports plain object actions. If you want to\n   * dispatch a Promise, an Observable, a thunk, or something else, you need to\n   * wrap your store creating function into the corresponding middleware. For\n   * example, see the documentation for the `redux-thunk` package. Even the\n   * middleware will eventually dispatch plain object actions using this method.\n   *\n   * @param {Object} action A plain object representing “what changed”. It is\n   * a good idea to keep actions serializable so you can record and replay user\n   * sessions, or use the time travelling `redux-devtools`. An action must have\n   * a `type` property which may not be `undefined`. It is a good idea to use\n   * string constants for action types.\n   *\n   * @returns {Object} For convenience, the same action object you dispatched.\n   *\n   * Note that, if you use a custom middleware, it may wrap `dispatch()` to\n   * return something else (for example, a Promise you can await).\n   */\n\n\n  function dispatch(action) {\n    if (!isPlainObject(action)) {\n      throw new Error('Actions must be plain objects. ' + 'Use custom middleware for async actions.');\n    }\n\n    if (typeof action.type === 'undefined') {\n      throw new Error('Actions may not have an undefined \"type\" property. ' + 'Have you misspelled a constant?');\n    }\n\n    if (isDispatching) {\n      throw new Error('Reducers may not dispatch actions.');\n    }\n\n    try {\n      isDispatching = true;\n      currentState = currentReducer(currentState, action);\n    } finally {\n      isDispatching = false;\n    }\n\n    var listeners = currentListeners = nextListeners;\n\n    for (var i = 0; i < listeners.length; i++) {\n      var listener = listeners[i];\n      listener();\n    }\n\n    return action;\n  }\n  /**\n   * Replaces the reducer currently used by the store to calculate the state.\n   *\n   * You might need this if your app implements code splitting and you want to\n   * load some of the reducers dynamically. You might also need this if you\n   * implement a hot reloading mechanism for Redux.\n   *\n   * @param {Function} nextReducer The reducer for the store to use instead.\n   * @returns {void}\n   */\n\n\n  function replaceReducer(nextReducer) {\n    if (typeof nextReducer !== 'function') {\n      throw new Error('Expected the nextReducer to be a function.');\n    }\n\n    currentReducer = nextReducer; // This action has a similiar effect to ActionTypes.INIT.\n    // Any reducers that existed in both the new and old rootReducer\n    // will receive the previous state. This effectively populates\n    // the new state tree with any relevant data from the old one.\n\n    dispatch({\n      type: ActionTypes.REPLACE\n    });\n  }\n  /**\n   * Interoperability point for observable/reactive libraries.\n   * @returns {observable} A minimal observable of state changes.\n   * For more information, see the observable proposal:\n   * https://github.com/tc39/proposal-observable\n   */\n\n\n  function observable() {\n    var _ref;\n\n    var outerSubscribe = subscribe;\n    return _ref = {\n      /**\n       * The minimal observable subscription method.\n       * @param {Object} observer Any object that can be used as an observer.\n       * The observer object should have a `next` method.\n       * @returns {subscription} An object with an `unsubscribe` method that can\n       * be used to unsubscribe the observable from the store, and prevent further\n       * emission of values from the observable.\n       */\n      subscribe: function subscribe(observer) {\n        if (typeof observer !== 'object' || observer === null) {\n          throw new TypeError('Expected the observer to be an object.');\n        }\n\n        function observeState() {\n          if (observer.next) {\n            observer.next(getState());\n          }\n        }\n\n        observeState();\n        var unsubscribe = outerSubscribe(observeState);\n        return {\n          unsubscribe: unsubscribe\n        };\n      }\n    }, _ref[$$observable] = function () {\n      return this;\n    }, _ref;\n  } // When a store is created, an \"INIT\" action is dispatched so that every\n  // reducer returns their initial state. This effectively populates\n  // the initial state tree.\n\n\n  dispatch({\n    type: ActionTypes.INIT\n  });\n  return _ref2 = {\n    dispatch: dispatch,\n    subscribe: subscribe,\n    getState: getState,\n    replaceReducer: replaceReducer\n  }, _ref2[$$observable] = observable, _ref2;\n}\n\n/**\n * Prints a warning in the console if it exists.\n *\n * @param {String} message The warning message.\n * @returns {void}\n */\nfunction warning(message) {\n  /* eslint-disable no-console */\n  if (typeof console !== 'undefined' && typeof console.error === 'function') {\n    console.error(message);\n  }\n  /* eslint-enable no-console */\n\n\n  try {\n    // This error was thrown as a convenience so that if you enable\n    // \"break on all exceptions\" in your console,\n    // it would pause the execution at this line.\n    throw new Error(message);\n  } catch (e) {} // eslint-disable-line no-empty\n\n}\n\nfunction getUndefinedStateErrorMessage(key, action) {\n  var actionType = action && action.type;\n  var actionDescription = actionType && \"action \\\"\" + String(actionType) + \"\\\"\" || 'an action';\n  return \"Given \" + actionDescription + \", reducer \\\"\" + key + \"\\\" returned undefined. \" + \"To ignore an action, you must explicitly return the previous state. \" + \"If you want this reducer to hold no value, you can return null instead of undefined.\";\n}\n\nfunction getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) {\n  var reducerKeys = Object.keys(reducers);\n  var argumentName = action && action.type === ActionTypes.INIT ? 'preloadedState argument passed to createStore' : 'previous state received by the reducer';\n\n  if (reducerKeys.length === 0) {\n    return 'Store does not have a valid reducer. Make sure the argument passed ' + 'to combineReducers is an object whose values are reducers.';\n  }\n\n  if (!isPlainObject(inputState)) {\n    return \"The \" + argumentName + \" has unexpected type of \\\"\" + {}.toString.call(inputState).match(/\\s([a-z|A-Z]+)/)[1] + \"\\\". Expected argument to be an object with the following \" + (\"keys: \\\"\" + reducerKeys.join('\", \"') + \"\\\"\");\n  }\n\n  var unexpectedKeys = Object.keys(inputState).filter(function (key) {\n    return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key];\n  });\n  unexpectedKeys.forEach(function (key) {\n    unexpectedKeyCache[key] = true;\n  });\n  if (action && action.type === ActionTypes.REPLACE) return;\n\n  if (unexpectedKeys.length > 0) {\n    return \"Unexpected \" + (unexpectedKeys.length > 1 ? 'keys' : 'key') + \" \" + (\"\\\"\" + unexpectedKeys.join('\", \"') + \"\\\" found in \" + argumentName + \". \") + \"Expected to find one of the known reducer keys instead: \" + (\"\\\"\" + reducerKeys.join('\", \"') + \"\\\". Unexpected keys will be ignored.\");\n  }\n}\n\nfunction assertReducerShape(reducers) {\n  Object.keys(reducers).forEach(function (key) {\n    var reducer = reducers[key];\n    var initialState = reducer(undefined, {\n      type: ActionTypes.INIT\n    });\n\n    if (typeof initialState === 'undefined') {\n      throw new Error(\"Reducer \\\"\" + key + \"\\\" returned undefined during initialization. \" + \"If the state passed to the reducer is undefined, you must \" + \"explicitly return the initial state. The initial state may \" + \"not be undefined. If you don't want to set a value for this reducer, \" + \"you can use null instead of undefined.\");\n    }\n\n    if (typeof reducer(undefined, {\n      type: ActionTypes.PROBE_UNKNOWN_ACTION()\n    }) === 'undefined') {\n      throw new Error(\"Reducer \\\"\" + key + \"\\\" returned undefined when probed with a random type. \" + (\"Don't try to handle \" + ActionTypes.INIT + \" or other actions in \\\"redux/*\\\" \") + \"namespace. They are considered private. Instead, you must return the \" + \"current state for any unknown actions, unless it is undefined, \" + \"in which case you must return the initial state, regardless of the \" + \"action type. The initial state may not be undefined, but can be null.\");\n    }\n  });\n}\n/**\n * Turns an object whose values are different reducer functions, into a single\n * reducer function. It will call every child reducer, and gather their results\n * into a single state object, whose keys correspond to the keys of the passed\n * reducer functions.\n *\n * @param {Object} reducers An object whose values correspond to different\n * reducer functions that need to be combined into one. One handy way to obtain\n * it is to use ES6 `import * as reducers` syntax. The reducers may never return\n * undefined for any action. Instead, they should return their initial state\n * if the state passed to them was undefined, and the current state for any\n * unrecognized action.\n *\n * @returns {Function} A reducer function that invokes every reducer inside the\n * passed object, and builds a state object with the same shape.\n */\n\n\nfunction combineReducers(reducers) {\n  var reducerKeys = Object.keys(reducers);\n  var finalReducers = {};\n\n  for (var i = 0; i < reducerKeys.length; i++) {\n    var key = reducerKeys[i];\n\n    if (process.env.NODE_ENV !== 'production') {\n      if (typeof reducers[key] === 'undefined') {\n        warning(\"No reducer provided for key \\\"\" + key + \"\\\"\");\n      }\n    }\n\n    if (typeof reducers[key] === 'function') {\n      finalReducers[key] = reducers[key];\n    }\n  }\n\n  var finalReducerKeys = Object.keys(finalReducers); // This is used to make sure we don't warn about the same\n  // keys multiple times.\n\n  var unexpectedKeyCache;\n\n  if (process.env.NODE_ENV !== 'production') {\n    unexpectedKeyCache = {};\n  }\n\n  var shapeAssertionError;\n\n  try {\n    assertReducerShape(finalReducers);\n  } catch (e) {\n    shapeAssertionError = e;\n  }\n\n  return function combination(state, action) {\n    if (state === void 0) {\n      state = {};\n    }\n\n    if (shapeAssertionError) {\n      throw shapeAssertionError;\n    }\n\n    if (process.env.NODE_ENV !== 'production') {\n      var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache);\n\n      if (warningMessage) {\n        warning(warningMessage);\n      }\n    }\n\n    var hasChanged = false;\n    var nextState = {};\n\n    for (var _i = 0; _i < finalReducerKeys.length; _i++) {\n      var _key = finalReducerKeys[_i];\n      var reducer = finalReducers[_key];\n      var previousStateForKey = state[_key];\n      var nextStateForKey = reducer(previousStateForKey, action);\n\n      if (typeof nextStateForKey === 'undefined') {\n        var errorMessage = getUndefinedStateErrorMessage(_key, action);\n        throw new Error(errorMessage);\n      }\n\n      nextState[_key] = nextStateForKey;\n      hasChanged = hasChanged || nextStateForKey !== previousStateForKey;\n    }\n\n    hasChanged = hasChanged || finalReducerKeys.length !== Object.keys(state).length;\n    return hasChanged ? nextState : state;\n  };\n}\n\nfunction bindActionCreator(actionCreator, dispatch) {\n  return function () {\n    return dispatch(actionCreator.apply(this, arguments));\n  };\n}\n/**\n * Turns an object whose values are action creators, into an object with the\n * same keys, but with every function wrapped into a `dispatch` call so they\n * may be invoked directly. This is just a convenience method, as you can call\n * `store.dispatch(MyActionCreators.doSomething())` yourself just fine.\n *\n * For convenience, you can also pass an action creator as the first argument,\n * and get a dispatch wrapped function in return.\n *\n * @param {Function|Object} actionCreators An object whose values are action\n * creator functions. One handy way to obtain it is to use ES6 `import * as`\n * syntax. You may also pass a single function.\n *\n * @param {Function} dispatch The `dispatch` function available on your Redux\n * store.\n *\n * @returns {Function|Object} The object mimicking the original object, but with\n * every action creator wrapped into the `dispatch` call. If you passed a\n * function as `actionCreators`, the return value will also be a single\n * function.\n */\n\n\nfunction bindActionCreators(actionCreators, dispatch) {\n  if (typeof actionCreators === 'function') {\n    return bindActionCreator(actionCreators, dispatch);\n  }\n\n  if (typeof actionCreators !== 'object' || actionCreators === null) {\n    throw new Error(\"bindActionCreators expected an object or a function, instead received \" + (actionCreators === null ? 'null' : typeof actionCreators) + \". \" + \"Did you write \\\"import ActionCreators from\\\" instead of \\\"import * as ActionCreators from\\\"?\");\n  }\n\n  var boundActionCreators = {};\n\n  for (var key in actionCreators) {\n    var actionCreator = actionCreators[key];\n\n    if (typeof actionCreator === 'function') {\n      boundActionCreators[key] = bindActionCreator(actionCreator, dispatch);\n    }\n  }\n\n  return boundActionCreators;\n}\n\nfunction _defineProperty(obj, key, value) {\n  if (key in obj) {\n    Object.defineProperty(obj, key, {\n      value: value,\n      enumerable: true,\n      configurable: true,\n      writable: true\n    });\n  } else {\n    obj[key] = value;\n  }\n\n  return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n  var keys = Object.keys(object);\n\n  if (Object.getOwnPropertySymbols) {\n    keys.push.apply(keys, Object.getOwnPropertySymbols(object));\n  }\n\n  if (enumerableOnly) keys = keys.filter(function (sym) {\n    return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n  });\n  return keys;\n}\n\nfunction _objectSpread2(target) {\n  for (var i = 1; i < arguments.length; i++) {\n    var source = arguments[i] != null ? arguments[i] : {};\n\n    if (i % 2) {\n      ownKeys(source, true).forEach(function (key) {\n        _defineProperty(target, key, source[key]);\n      });\n    } else if (Object.getOwnPropertyDescriptors) {\n      Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n    } else {\n      ownKeys(source).forEach(function (key) {\n        Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n      });\n    }\n  }\n\n  return target;\n}\n\n/**\n * Composes single-argument functions from right to left. The rightmost\n * function can take multiple arguments as it provides the signature for\n * the resulting composite function.\n *\n * @param {...Function} funcs The functions to compose.\n * @returns {Function} A function obtained by composing the argument functions\n * from right to left. For example, compose(f, g, h) is identical to doing\n * (...args) => f(g(h(...args))).\n */\nfunction compose() {\n  for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {\n    funcs[_key] = arguments[_key];\n  }\n\n  if (funcs.length === 0) {\n    return function (arg) {\n      return arg;\n    };\n  }\n\n  if (funcs.length === 1) {\n    return funcs[0];\n  }\n\n  return funcs.reduce(function (a, b) {\n    return function () {\n      return a(b.apply(void 0, arguments));\n    };\n  });\n}\n\n/**\n * Creates a store enhancer that applies middleware to the dispatch method\n * of the Redux store. This is handy for a variety of tasks, such as expressing\n * asynchronous actions in a concise manner, or logging every action payload.\n *\n * See `redux-thunk` package as an example of the Redux middleware.\n *\n * Because middleware is potentially asynchronous, this should be the first\n * store enhancer in the composition chain.\n *\n * Note that each middleware will be given the `dispatch` and `getState` functions\n * as named arguments.\n *\n * @param {...Function} middlewares The middleware chain to be applied.\n * @returns {Function} A store enhancer applying the middleware.\n */\n\nfunction applyMiddleware() {\n  for (var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++) {\n    middlewares[_key] = arguments[_key];\n  }\n\n  return function (createStore) {\n    return function () {\n      var store = createStore.apply(void 0, arguments);\n\n      var _dispatch = function dispatch() {\n        throw new Error('Dispatching while constructing your middleware is not allowed. ' + 'Other middleware would not be applied to this dispatch.');\n      };\n\n      var middlewareAPI = {\n        getState: store.getState,\n        dispatch: function dispatch() {\n          return _dispatch.apply(void 0, arguments);\n        }\n      };\n      var chain = middlewares.map(function (middleware) {\n        return middleware(middlewareAPI);\n      });\n      _dispatch = compose.apply(void 0, chain)(store.dispatch);\n      return _objectSpread2({}, store, {\n        dispatch: _dispatch\n      });\n    };\n  };\n}\n\n/*\n * This is a dummy function to check if the function name has been altered by minification.\n * If the function has been minified and NODE_ENV !== 'production', warn the user.\n */\n\nfunction isCrushed() {}\n\nif (process.env.NODE_ENV !== 'production' && typeof isCrushed.name === 'string' && isCrushed.name !== 'isCrushed') {\n  warning('You are currently using minified code outside of NODE_ENV === \"production\". ' + 'This means that you are running a slower development build of Redux. ' + 'You can use loose-envify (https://github.com/zertosh/loose-envify) for browserify ' + 'or setting mode to production in webpack (https://webpack.js.org/concepts/mode/) ' + 'to ensure you have the correct code for your production build.');\n}\n\nexport { ActionTypes as __DO_NOT_USE__ActionTypes, applyMiddleware, bindActionCreators, combineReducers, compose, createStore };\n"]},"metadata":{},"sourceType":"module"}