Leon 2 lat temu
rodzic
commit
742290f1c9
45 zmienionych plików z 6905 dodań i 404 usunięć
  1. 15 2
      config/index.ts
  2. 112 240
      dist/app.js
  3. 0 0
      dist/app.js.map
  4. 494 0
      dist/common.js
  5. 0 0
      dist/common.js.map
  6. 92 10
      dist/pages/ChooseAuth.js
  7. 0 1
      dist/pages/ChooseAuth.js.map
  8. 15 1
      dist/pages/ChooseAuth.wxss
  9. 1 1
      dist/pages/ChooseScenario.js
  10. 0 0
      dist/pages/ChooseScenario.js.map
  11. 35 8
      dist/pages/Second.js
  12. 1 1
      dist/pages/Second.js.map
  13. 0 1
      dist/pages/SetGoal.wxss
  14. 24 13
      dist/pages/index/index.js
  15. 0 0
      dist/pages/index/index.js.map
  16. 37 0
      dist/prebundle/node_modules_taro_weapp_prebundle_react-dom_js.js
  17. 25 13
      dist/prebundle/remoteEntry.js
  18. 38 41
      dist/prebundle/vendors-node_modules_taro_weapp_prebundle_chunk-2Y2U3MWF_js.js
  19. 1589 0
      dist/prebundle/vendors-node_modules_taro_weapp_prebundle_react-redux_js.js
  20. 3612 0
      dist/prebundle/vendors-node_modules_taro_weapp_prebundle_reduxjs_toolkit_js.js
  21. 24 24
      dist/prebundle/vendors-node_modules_taro_weapp_prebundle_tarojs_taro_js.js
  22. 3 2
      dist/project.config.json
  23. 1 1
      dist/project.private.config.json
  24. 13 1
      dist/runtime.js
  25. 0 0
      dist/runtime.js.map
  26. 358 0
      dist/vendors.js
  27. 0 0
      dist/vendors.js.map
  28. 2 0
      package.json
  29. 0 18
      src/app.ts
  30. 24 0
      src/app.tsx
  31. 0 1
      src/components/Buttons.scss
  32. 1 1
      src/components/Texts.tsx
  33. 1 1
      src/features/auth/components/Auth.scss
  34. 1 1
      src/features/trackTimeDuration/components/ChooseScenario.tsx
  35. 7 0
      src/pages/ChooseAuth.scss
  36. 44 6
      src/pages/ChooseAuth.tsx
  37. 14 1
      src/pages/Second.tsx
  38. 6 2
      src/pages/index/index.tsx
  39. 2 1
      src/services/http/api.js
  40. 9 6
      src/services/http/request.ts
  41. 40 0
      src/store/demo.tsx
  42. 13 0
      src/store/store.tsx
  43. 170 0
      src/store/user.tsx
  44. 20 3
      tsconfig.json
  45. 62 3
      yarn.lock

+ 15 - 2
config/index.ts

@@ -1,4 +1,4 @@
-const path = require('path');
+import path from 'path';
 const config = {
   projectName: 'hola',
   date: '2023-10-5',
@@ -25,12 +25,17 @@ const config = {
     enable: false // Webpack 持久化缓存配置,建议开启。默认配置请参考:https://docs.taro.zone/docs/config-detail#cache
   },
   alias: {
-    '@components': path.resolve(__dirname, '..', 'src/components'),
+    '@': path.resolve(__dirname, '..', 'src'), // 这样配置后 @ 可以指向 src 目录
+    '@components': path.resolve(__dirname, '../src/components'),
     '@assets': path.resolve(__dirname, '..', 'src/assets'),
     '@utils': path.resolve(__dirname, '..', 'src/utils'),
     '@features': path.resolve(__dirname, '..', 'src/features'),
+    '@services': path.resolve(__dirname, '..', 'src/services'),
   },
   mini: {
+    miniCssExtractPluginOption: {
+      ignoreOrder: true
+    },
     postcss: {
       pxtransform: {
         enable: true,
@@ -73,6 +78,14 @@ const config = {
   },
   rn: {
     appName: 'hola',
+    alias: {
+      '@': path.resolve(__dirname, '..', 'src'), // 这样配置后 @ 可以指向 src 目录
+      '@components': path.resolve(__dirname, '../src/components'),
+      '@assets': path.resolve(__dirname, '..', 'src/assets'),
+      '@utils': path.resolve(__dirname, '..', 'src/utils'),
+      '@features': path.resolve(__dirname, '..', 'src/features'),
+      '@services': path.resolve(__dirname, '..', 'src/services'),
+    },
     output: {
       ios: './ios/main.jsbundle',
       iosAssetsDest: './ios',

+ 112 - 240
dist/app.js

@@ -1,7 +1,9 @@
 "use strict";
-require("./prebundle/vendors-node_modules_taro_weapp_prebundle_react-dom_js.js");
+require("./prebundle/vendors-node_modules_taro_weapp_prebundle_chunk-2Y2U3MWF_js.js");
 require("./prebundle/vendors-node_modules_taro_weapp_prebundle_chunk-3EXGJ5BE_js.js");
+require("./prebundle/vendors-node_modules_taro_weapp_prebundle_reduxjs_toolkit_js.js");
 require("./prebundle/vendors-node_modules_taro_weapp_prebundle_i18next_js.js");
+require("./prebundle/vendors-node_modules_taro_weapp_prebundle_react-redux_js.js");
 require("./prebundle/vendors-node_modules_taro_weapp_prebundle_chunk-77KB62LY_js.js");
 require("./prebundle/vendors-node_modules_taro_weapp_prebundle_react-i18next_js.js");
 require("./prebundle/vendors-node_modules_taro_weapp_prebundle_tarojs_plugin-framework-react_dist_runtime_js.js");
@@ -13,6 +15,7 @@ require("./prebundle/vendors-node_modules_taro_weapp_prebundle_chunk-LNJCN3VW_js
 require("./prebundle/remoteEntry.js");
 require("./prebundle/node_modules_taro_weapp_prebundle_react_jsx-runtime_js.js");
 require("./prebundle/node_modules_taro_weapp_prebundle_react_js.js");
+require("./prebundle/node_modules_taro_weapp_prebundle_react-dom_js.js");
 
 require("./common");
 require("./vendors");
@@ -21,60 +24,51 @@ require("./runtime");
 
 (wx["webpackJsonp"] = wx["webpackJsonp"] || []).push([["app"],{
 
-/***/ "./node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./src/app.ts":
-/*!*****************************************************************************************!*\
-  !*** ./node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./src/app.ts ***!
-  \*****************************************************************************************/
+/***/ "./node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./src/app.tsx":
+/*!******************************************************************************************!*\
+  !*** ./node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./src/app.tsx ***!
+  \******************************************************************************************/
 /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
 
-/* harmony import */ var _Users_Work_hola2_node_modules_babel_runtime_helpers_esm_classCallCheck_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js");
-/* harmony import */ var _Users_Work_hola2_node_modules_babel_runtime_helpers_esm_createClass_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/createClass.js */ "./node_modules/@babel/runtime/helpers/esm/createClass.js");
-/* harmony import */ var _Users_Work_hola2_node_modules_babel_runtime_helpers_esm_inherits_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/inherits.js */ "./node_modules/@babel/runtime/helpers/esm/inherits.js");
-/* harmony import */ var _Users_Work_hola2_node_modules_babel_runtime_helpers_esm_createSuper_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/createSuper.js */ "./node_modules/@babel/runtime/helpers/esm/createSuper.js");
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "webpack/container/remote/react");
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var _context_locales_index__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./context/locales/index */ "./src/context/locales/index.ts");
+/* harmony import */ var _context_locales_index__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./context/locales/index */ "./src/context/locales/index.ts");
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-redux */ "webpack/container/remote/react-redux");
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _store_store__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./store/store */ "./src/store/store.tsx");
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ "webpack/container/remote/react/jsx-runtime");
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__);
 
 
 
 
 
+var App = function App(_ref) {
+  var children = _ref.children;
+  return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(react_redux__WEBPACK_IMPORTED_MODULE_1__.Provider, {
+    store: _store_store__WEBPACK_IMPORTED_MODULE_2__["default"],
+    children: children
+  });
+};
+// class App extends Component<PropsWithChildren> {
 
+//   componentDidMount () {}
 
-var App = /*#__PURE__*/function (_Component) {
-  (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_inherits_js__WEBPACK_IMPORTED_MODULE_2__["default"])(App, _Component);
-  var _super = (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_createSuper_js__WEBPACK_IMPORTED_MODULE_3__["default"])(App);
-  function App() {
-    (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_classCallCheck_js__WEBPACK_IMPORTED_MODULE_4__["default"])(this, App);
-    return _super.apply(this, arguments);
-  }
-  (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_createClass_js__WEBPACK_IMPORTED_MODULE_5__["default"])(App, [{
-    key: "componentDidMount",
-    value: function componentDidMount() {}
-  }, {
-    key: "componentDidShow",
-    value: function componentDidShow() {}
-  }, {
-    key: "componentDidHide",
-    value: function componentDidHide() {}
-
-    // this.props.children 是将要会渲染的页面
-  }, {
-    key: "render",
-    value: function render() {
-      return this.props.children;
-    }
-  }]);
-  return App;
-}(react__WEBPACK_IMPORTED_MODULE_0__.Component);
+//   componentDidShow () {}
+
+//   componentDidHide () {}
+
+//   // this.props.children 是将要会渲染的页面
+//   render () {
+//     return this.props.children
+//   }
+// }
 /* harmony default export */ __webpack_exports__["default"] = (App);
 
 /***/ }),
 
-/***/ "./src/app.ts":
-/*!********************!*\
-  !*** ./src/app.ts ***!
-  \********************/
+/***/ "./src/app.tsx":
+/*!*********************!*\
+  !*** ./src/app.tsx ***!
+  \*********************/
 /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
 
 /* harmony import */ var _tarojs_plugin_platform_weapp_dist_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tarojs/plugin-platform-weapp/dist/runtime */ "webpack/container/remote/@tarojs/plugin-platform-weapp/dist/runtime");
@@ -85,7 +79,7 @@ var App = /*#__PURE__*/function (_Component) {
 /* harmony import */ var _tarojs_plugin_framework_react_dist_runtime__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_tarojs_plugin_framework_react_dist_runtime__WEBPACK_IMPORTED_MODULE_2__);
 /* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tarojs/taro */ "webpack/container/remote/@tarojs/taro");
 /* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_tarojs_taro__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_ruleSet_1_rules_5_use_0_app_ts__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./app.ts */ "./node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./src/app.ts");
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ruleSet_1_rules_5_use_0_app_tsx__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./app.tsx */ "./node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./src/app.tsx");
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react */ "webpack/container/remote/react");
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_5__);
 /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! react-dom */ "webpack/container/remote/react-dom");
@@ -103,7 +97,7 @@ var App = /*#__PURE__*/function (_Component) {
 
 var config = {"pages":["pages/index/index","pages/Second","pages/Login","pages/Auth","pages/ChooseAuth","pages/ChooseScenario","pages/SetGoal"],"subPackages":[{"root":"moduleA","pages":["pages/third"]}],"tabBar":{"list":[{"pagePath":"pages/index/index","text":"首页"},{"pagePath":"pages/Second","text":"第二页"}]},"window":{"backgroundTextStyle":"light","navigationBarBackgroundColor":"#000000","navigationBarTitleText":"Weixin","navigationBarTextStyle":"white","backgroundColor":"#000000"},"darkmode":true};
 _tarojs_runtime__WEBPACK_IMPORTED_MODULE_1__.window.__taroAppConfig = config
-var inst = App((0,_tarojs_plugin_framework_react_dist_runtime__WEBPACK_IMPORTED_MODULE_2__.createReactApp)(_node_modules_babel_loader_lib_index_js_ruleSet_1_rules_5_use_0_app_ts__WEBPACK_IMPORTED_MODULE_4__["default"], react__WEBPACK_IMPORTED_MODULE_5__, (react_dom__WEBPACK_IMPORTED_MODULE_6___default()), config))
+var inst = App((0,_tarojs_plugin_framework_react_dist_runtime__WEBPACK_IMPORTED_MODULE_2__.createReactApp)(_node_modules_babel_loader_lib_index_js_ruleSet_1_rules_5_use_0_app_tsx__WEBPACK_IMPORTED_MODULE_4__["default"], react__WEBPACK_IMPORTED_MODULE_5__, (react_dom__WEBPACK_IMPORTED_MODULE_6___default()), config))
 
 ;(0,_tarojs_taro__WEBPACK_IMPORTED_MODULE_3__.initPxTransform)({
   designWidth: 750,
@@ -311,222 +305,100 @@ function initLocale(strLocale) {
 
 /***/ }),
 
-/***/ "./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js":
-/*!**************************************************************************!*\
-  !*** ./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js ***!
-  \**************************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */   "default": function() { return /* binding */ _assertThisInitialized; }
-/* harmony export */ });
-function _assertThisInitialized(self) {
-  if (self === void 0) {
-    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
-  }
-  return self;
-}
-
-/***/ }),
-
-/***/ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js":
-/*!*******************************************************************!*\
-  !*** ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js ***!
-  \*******************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */   "default": function() { return /* binding */ _classCallCheck; }
-/* harmony export */ });
-function _classCallCheck(instance, Constructor) {
-  if (!(instance instanceof Constructor)) {
-    throw new TypeError("Cannot call a class as a function");
-  }
-}
+/***/ "./src/store/demo.tsx":
+/*!****************************!*\
+  !*** ./src/store/demo.tsx ***!
+  \****************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
 
-/***/ }),
+/* unused harmony exports increment, decrement, incrementByAmount, apple */
+/* harmony import */ var _Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js */ "./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js");
+/* harmony import */ var _Users_Work_hola2_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js");
+/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @reduxjs/toolkit */ "webpack/container/remote/@reduxjs/toolkit");
+/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__);
 
-/***/ "./node_modules/@babel/runtime/helpers/esm/createClass.js":
-/*!****************************************************************!*\
-  !*** ./node_modules/@babel/runtime/helpers/esm/createClass.js ***!
-  \****************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */   "default": function() { return /* binding */ _createClass; }
-/* harmony export */ });
-/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js");
-
-function _defineProperties(target, props) {
-  for (var i = 0; i < props.length; i++) {
-    var descriptor = props[i];
-    descriptor.enumerable = descriptor.enumerable || false;
-    descriptor.configurable = true;
-    if ("value" in descriptor) descriptor.writable = true;
-    Object.defineProperty(target, (0,_toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__["default"])(descriptor.key), descriptor);
-  }
-}
-function _createClass(Constructor, protoProps, staticProps) {
-  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
-  if (staticProps) _defineProperties(Constructor, staticProps);
-  Object.defineProperty(Constructor, "prototype", {
-    writable: false
-  });
-  return Constructor;
-}
 
-/***/ }),
 
-/***/ "./node_modules/@babel/runtime/helpers/esm/createSuper.js":
-/*!****************************************************************!*\
-  !*** ./node_modules/@babel/runtime/helpers/esm/createSuper.js ***!
-  \****************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */   "default": function() { return /* binding */ _createSuper; }
-/* harmony export */ });
-/* harmony import */ var _getPrototypeOf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getPrototypeOf.js */ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js");
-/* harmony import */ var _isNativeReflectConstruct_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "./node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js");
-/* harmony import */ var _possibleConstructorReturn_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./possibleConstructorReturn.js */ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js");
-
-
-
-function _createSuper(Derived) {
-  var hasNativeReflectConstruct = (0,_isNativeReflectConstruct_js__WEBPACK_IMPORTED_MODULE_0__["default"])();
-  return function _createSuperInternal() {
-    var Super = (0,_getPrototypeOf_js__WEBPACK_IMPORTED_MODULE_1__["default"])(Derived),
-      result;
-    if (hasNativeReflectConstruct) {
-      var NewTarget = (0,_getPrototypeOf_js__WEBPACK_IMPORTED_MODULE_1__["default"])(this).constructor;
-      result = Reflect.construct(Super, arguments, NewTarget);
-    } else {
-      result = Super.apply(this, arguments);
+var initialState = {
+  value: 0
+};
+var counterSlice = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSlice)({
+  name: 'counter',
+  initialState: initialState,
+  reducers: {
+    increment: function increment(state) {
+      state.value += 1;
+    },
+    decrement: function decrement(state) {
+      state.value -= 1;
+    },
+    incrementByAmount: function incrementByAmount(state, action) {
+      state.value += action.payload;
     }
-    return (0,_possibleConstructorReturn_js__WEBPACK_IMPORTED_MODULE_2__["default"])(this, result);
-  };
-}
-
-/***/ }),
-
-/***/ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js":
-/*!*******************************************************************!*\
-  !*** ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js ***!
-  \*******************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */   "default": function() { return /* binding */ _getPrototypeOf; }
-/* harmony export */ });
-function _getPrototypeOf(o) {
-  _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
-    return o.__proto__ || Object.getPrototypeOf(o);
-  };
-  return _getPrototypeOf(o);
-}
-
-/***/ }),
-
-/***/ "./node_modules/@babel/runtime/helpers/esm/inherits.js":
-/*!*************************************************************!*\
-  !*** ./node_modules/@babel/runtime/helpers/esm/inherits.js ***!
-  \*************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */   "default": function() { return /* binding */ _inherits; }
-/* harmony export */ });
-/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setPrototypeOf.js */ "./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js");
-
-function _inherits(subClass, superClass) {
-  if (typeof superClass !== "function" && superClass !== null) {
-    throw new TypeError("Super expression must either be null or a function");
   }
-  subClass.prototype = Object.create(superClass && superClass.prototype, {
-    constructor: {
-      value: subClass,
-      writable: true,
-      configurable: true
-    }
-  });
-  Object.defineProperty(subClass, "prototype", {
-    writable: false
-  });
-  if (superClass) (0,_setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__["default"])(subClass, superClass);
-}
+});
+var _counterSlice$actions = counterSlice.actions,
+  increment = _counterSlice$actions.increment,
+  decrement = _counterSlice$actions.decrement,
+  incrementByAmount = _counterSlice$actions.incrementByAmount;
+
+var apple = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)('user/wxLogin', /*#__PURE__*/function () {
+  var _ref2 = (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/(0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2__["default"])().mark(function _callee(payload, _ref) {
+    var dispatch;
+    return (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2__["default"])().wrap(function _callee$(_context) {
+      while (1) switch (_context.prev = _context.next) {
+        case 0:
+          dispatch = _ref.dispatch;
+          dispatch(increment());
+          // console.log(payload.code)
+          // request({
+          //     url: API_LOGIN, method: 'POST', data: { 'code':payload.code,type:'WX_MP',app_version:'1',client_version:'1',client_type:'WXP_MP' }
+          // }).then(res => {
+          //     console.log(res);
+          //     dispatch(loginSuccess(res));
+          // })
+        case 2:
+        case "end":
+          return _context.stop();
+      }
+    }, _callee);
+  }));
+  return function (_x, _x2) {
+    return _ref2.apply(this, arguments);
+  };
+}());
+/* harmony default export */ __webpack_exports__["default"] = (counterSlice.reducer);
 
 /***/ }),
 
-/***/ "./node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js":
-/*!*****************************************************************************!*\
-  !*** ./node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js ***!
-  \*****************************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */   "default": function() { return /* binding */ _isNativeReflectConstruct; }
-/* harmony export */ });
-function _isNativeReflectConstruct() {
-  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-  if (Reflect.construct.sham) return false;
-  if (typeof Proxy === "function") return true;
-  try {
-    Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
-    return true;
-  } catch (e) {
-    return false;
-  }
-}
-
-/***/ }),
+/***/ "./src/store/store.tsx":
+/*!*****************************!*\
+  !*** ./src/store/store.tsx ***!
+  \*****************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
 
-/***/ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js":
-/*!******************************************************************************!*\
-  !*** ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js ***!
-  \******************************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @reduxjs/toolkit */ "webpack/container/remote/@reduxjs/toolkit");
+/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _user__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./user */ "./src/store/user.tsx");
+/* harmony import */ var _demo__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./demo */ "./src/store/demo.tsx");
 
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */   "default": function() { return /* binding */ _possibleConstructorReturn; }
-/* harmony export */ });
-/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "./node_modules/@babel/runtime/helpers/esm/typeof.js");
-/* harmony import */ var _assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./assertThisInitialized.js */ "./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js");
 
 
-function _possibleConstructorReturn(self, call) {
-  if (call && ((0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(call) === "object" || typeof call === "function")) {
-    return call;
-  } else if (call !== void 0) {
-    throw new TypeError("Derived constructors may only return object or undefined");
+var store = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.configureStore)({
+  reducer: {
+    // 添加你的 reducer
+    user: _user__WEBPACK_IMPORTED_MODULE_1__["default"],
+    counter: _demo__WEBPACK_IMPORTED_MODULE_2__["default"]
   }
-  return (0,_assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_1__["default"])(self);
-}
-
-/***/ }),
-
-/***/ "./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js":
-/*!*******************************************************************!*\
-  !*** ./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js ***!
-  \*******************************************************************/
-/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
-
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */   "default": function() { return /* binding */ _setPrototypeOf; }
-/* harmony export */ });
-function _setPrototypeOf(o, p) {
-  _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
-    o.__proto__ = p;
-    return o;
-  };
-  return _setPrototypeOf(o, p);
-}
+});
+/* harmony default export */ __webpack_exports__["default"] = (store);
 
 /***/ })
 
 },
 /******/ function(__webpack_require__) { // webpackRuntimeModules
 /******/ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
-/******/ __webpack_require__.O(0, ["vendors","common"], function() { return __webpack_exec__("./src/app.ts"); });
+/******/ __webpack_require__.O(0, ["vendors","common"], function() { return __webpack_exec__("./src/app.tsx"); });
 /******/ var __webpack_exports__ = __webpack_require__.O();
 /******/ }
 ]);;;

Plik diff jest za duży
+ 0 - 0
dist/app.js.map


+ 494 - 0
dist/common.js

@@ -251,6 +251,9 @@ function Component(props) {
         });
       default:
         return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_2__.Text, {
+          style: {
+            color: '#fff'
+          },
           children: props.text
         });
     }
@@ -260,6 +263,497 @@ function Component(props) {
 
 /***/ }),
 
+/***/ "./src/services/http/api.js":
+/*!**********************************!*\
+  !*** ./src/services/http/api.js ***!
+  \**********************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */   API_CLEAR_USER: function() { return /* binding */ API_CLEAR_USER; },
+/* harmony export */   API_LOGIN: function() { return /* binding */ API_LOGIN; },
+/* harmony export */   API_LOGOUT: function() { return /* binding */ API_LOGOUT; },
+/* harmony export */   API_REGISTER: function() { return /* binding */ API_REGISTER; },
+/* harmony export */   API_USER_INFO: function() { return /* binding */ API_USER_INFO; }
+/* harmony export */ });
+/* unused harmony exports baseUrl, imgUrl, API_ADJUST_TIMES, API_WX_PUB_FOLLOWED, API_STATIC_RESOURCES, API_CLEAR_FAST, API_CLEAR_SLEEP, API_CLEAR_MIX, API_FAST_PLANS, API_FAST_CHECKS, API_FAST_CHECK_ABANDONED, API_FAST_RECORDS, API_FAST_SCHEDULES, API_FAST_CALENDARS */
+var online = false;
+var baseUrl = online ? 'https://api.fast.liveplus.fun' : 'https://api.fast.dev.liveplus.fun';
+var imgUrl = online ? 'https://api.fast.liveplus.fun/static/image/' : 'https://api.fast.dev.liveplus.fun/static/image/';
+
+//common
+var API_ADJUST_TIMES = "".concat(baseUrl, "/api/fast/adjust-times");
+var API_WX_PUB_FOLLOWED = "".concat(baseUrl, "/api/fast/user/wx-pub-followed");
+var API_LOGIN = "".concat(baseUrl, "/api/user/oauth2/login");
+var API_REGISTER = "".concat(baseUrl, "/api/user/register");
+var API_LOGOUT = "".concat(baseUrl, "/api/user/logout");
+var API_CLEAR_USER = "".concat(baseUrl, "/api/clear/user");
+var API_STATIC_RESOURCES = "".concat(baseUrl, "/api/static-resource-urls");
+var API_USER_INFO = "".concat(baseUrl, "/api/user/info");
+var API_CLEAR_FAST = "".concat(baseUrl, "/api/clear/fasting");
+var API_CLEAR_SLEEP = "".concat(baseUrl, "/api/sleep/clear-my-data");
+var API_CLEAR_MIX = "".concat(baseUrl, "/api/clear-data/FAST_SLEEP");
+
+//track time duration
+var API_FAST_PLANS = "".concat(baseUrl, "/api/fast/plans");
+var API_FAST_CHECKS = "".concat(baseUrl, "/api/fast/checks");
+var API_FAST_CHECK_ABANDONED = "".concat(baseUrl, "/api/fast/check-abandoned");
+var API_FAST_RECORDS = "".concat(baseUrl, "/api/fast/records");
+var API_FAST_SCHEDULES = "".concat(baseUrl, "/api/fast/schedules");
+var API_FAST_CALENDARS = "".concat(baseUrl, "/api/fast/calendars/");
+
+//track something
+
+//journal
+
+/***/ }),
+
+/***/ "./src/services/http/request.ts":
+/*!**************************************!*\
+  !*** ./src/services/http/request.ts ***!
+  \**************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */   request: function() { return /* binding */ request; }
+/* harmony export */ });
+/* harmony import */ var _Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js */ "./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js");
+/* harmony import */ var _Users_Work_hola2_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js");
+/* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tarojs/taro */ "webpack/container/remote/@tarojs/taro");
+/* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_tarojs_taro__WEBPACK_IMPORTED_MODULE_0__);
+
+
+
+;
+function getStorage(_x) {
+  return _getStorage.apply(this, arguments);
+}
+function _getStorage() {
+  _getStorage = (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/(0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2__["default"])().mark(function _callee(key) {
+    var res;
+    return (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2__["default"])().wrap(function _callee$(_context) {
+      while (1) switch (_context.prev = _context.next) {
+        case 0:
+          _context.prev = 0;
+          _context.next = 3;
+          return _tarojs_taro__WEBPACK_IMPORTED_MODULE_0___default().getStorage({
+            key: key
+          });
+        case 3:
+          res = _context.sent;
+          return _context.abrupt("return", res.data);
+        case 7:
+          _context.prev = 7;
+          _context.t0 = _context["catch"](0);
+          return _context.abrupt("return", '');
+        case 10:
+        case "end":
+          return _context.stop();
+      }
+    }, _callee, null, [[0, 7]]);
+  }));
+  return _getStorage.apply(this, arguments);
+}
+function request(_x2) {
+  return _request.apply(this, arguments);
+}
+
+// import axios from 'axios';
+
+// const kTimeout = 6000;
+// const kRetry = 3;
+
+// const axiosInstance = axios.create({
+//     timeout: kTimeout,
+// });
+
+// axios.interceptors.request.use(
+//     function (config) {
+//         var split = new Date().toString().split(' ');
+//         var timeZoneFormatted = split[split.length - 2];
+
+//         config.headers['X-Time-Zone'] = timeZoneFormatted;
+//         // config.headers['channel'] = 'mini program'
+//         return config
+//     },
+//     function (error) {
+//         return Promise.reject(error)
+//     }
+// )
+
+// axiosInstance.interceptors.response.use(
+//     response => response,
+//     error => Promise.reject(error)
+// );
+
+// export const request = async (url, method = 'post', data = {}, options = {}) => {
+
+//     const { timeout = kTimeout, retry = kRetry } = options;
+
+//     axiosInstance.defaults.timeout = timeout;
+
+//     let retries = 0;
+//     while (retries < retry) {
+//         try {
+//             const response = await axiosInstance({
+//                 url,
+//                 method,
+//                 data,
+//             });
+//             return response.data;
+//         } catch (error) {
+//             console.log(error)
+//             if (axios.isCancel(error)) {
+//                 // 请求被取消
+//                 console.log('Request canceled');
+//                 break;
+//             }
+
+//             if (retries === retry - 1) {
+//                 // 达到最大重试次数
+//                 throw error;
+//             }
+
+//             console.log('Request failed. Retrying...');
+//             retries++;
+//         }
+//     }
+// };
+function _request() {
+  _request = (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/(0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2__["default"])().mark(function _callee2(param) {
+    var url, method, data, header, token, split, timeZoneFormatted;
+    return (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2__["default"])().wrap(function _callee2$(_context2) {
+      while (1) switch (_context2.prev = _context2.next) {
+        case 0:
+          url = param.url, method = param.method, data = param.data;
+          header = {};
+          token = __webpack_require__.g.token ? __webpack_require__.g.token : ''; //await getStorage('token')
+          split = new Date().toString().split(' ');
+          timeZoneFormatted = split[split.length - 2];
+          header['X-Time-Zone'] = timeZoneFormatted; //new Date().getTimezoneOffset() / 60
+          if (token.length > 0) {
+            header['Authorization'] = "Bearer ".concat(token);
+          }
+          //X-Language:语言,X-Device-Id:设备唯一码,X-Platform:小程序/android/ios,X-Location:地区,X-Device:登录设备
+          // header['X-Language'] = ''
+          // header['X-Device-Id'] = ''
+          // header['X-Platform'] = ''
+          // header['X-Location'] = ''
+          // header['X-Device'] = ''
+          // header['X-Time-Zone-Id'] = Intl.DateTimeFormat().resolvedOptions().timeZone
+          // header['Authorization'] = 'Bearer ' + wx.getStorageSync('token');
+          // header['Authorization'] = 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJhY2NvdW50Iiwic3ViIjoiMmQ5OWNlYzI0ZDFlMzE0Y2U1MjhlODM4MWMzYzk0MzgiLCJpc3MiOiJDT0RFUEFBUy5DT00iLCJuaWNrbmFtZSI6IueOi-a4nSIsInR5cCI6IkJlYXJlciIsInNlc3Npb25fc3RhdGUiOiIyN2RjNmU4ZDdjMWU1MTVmNDQwNzVjZTFlODk2ZmUzNCIsImV4cCI6MTcxNjY0Mzk5MSwiaWF0IjoxNjg1MDIxNTkxfQ.fmFj0OVNRzjLkdebSyGJyk8EScPJFpDiz0L25W35zoA'
+          return _context2.abrupt("return", new Promise(function (resolve, reject) {
+            _tarojs_taro__WEBPACK_IMPORTED_MODULE_0___default().request({
+              url: url,
+              method: method,
+              header: header,
+              data: data || {},
+              success: function success(response) {
+                var statusCode = response.statusCode,
+                  data = response.data;
+                if (statusCode == 204) {
+                  resolve({});
+                }
+                if (statusCode != 200) {
+                  reject(data);
+                }
+                var _ref = response.data || {},
+                  error_code = _ref.error_code;
+                if (error_code === 'NOT_LOGIN') {
+                  // new UserManager().logout();
+                }
+                var resp = response.data;
+                resolve(resp);
+              },
+              fail: function fail(err) {
+                if (err.errMsg == 'request:fail timeout') {
+                  // wx.showToast({
+                  //     title: '请求超时',
+                  //     icon: 'none',
+                  // });
+                }
+                reject(err);
+              },
+              complete: function complete() {}
+            });
+          }));
+        case 8:
+        case "end":
+          return _context2.stop();
+      }
+    }, _callee2);
+  }));
+  return _request.apply(this, arguments);
+}
+
+/***/ }),
+
+/***/ "./src/store/user.tsx":
+/*!****************************!*\
+  !*** ./src/store/user.tsx ***!
+  \****************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */   clear: function() { return /* binding */ clear; },
+/* harmony export */   logout: function() { return /* binding */ logout; },
+/* harmony export */   wxLogin: function() { return /* binding */ wxLogin; }
+/* harmony export */ });
+/* unused harmony exports loginSuccess, registerSuccess, logoutSuccess, getInfoSuccess, updateSuccess, clearSuccess, login, register, getInfo, update */
+/* harmony import */ var _Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js */ "./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js");
+/* harmony import */ var _Users_Work_hola2_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js");
+/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @reduxjs/toolkit */ "webpack/container/remote/@reduxjs/toolkit");
+/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _services_http_request__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @services/http/request */ "./src/services/http/request.ts");
+/* harmony import */ var _services_http_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @services/http/api */ "./src/services/http/api.js");
+/* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tarojs/taro */ "webpack/container/remote/@tarojs/taro");
+/* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_tarojs_taro__WEBPACK_IMPORTED_MODULE_3__);
+
+
+
+
+
+
+function getStorage(key) {
+  return _tarojs_taro__WEBPACK_IMPORTED_MODULE_3___default().getStorage({
+    key: key
+  }).then(function (res) {
+    return res.data;
+  }).catch(function () {
+    return '';
+  });
+}
+var getUserDataFromLocalStorage = /*#__PURE__*/function () {
+  var _ref = (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_4__["default"])( /*#__PURE__*/(0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5__["default"])().mark(function _callee() {
+    var userData;
+    return (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5__["default"])().wrap(function _callee$(_context) {
+      while (1) switch (_context.prev = _context.next) {
+        case 0:
+          _context.next = 2;
+          return getStorage('userData');
+        case 2:
+          userData = _context.sent;
+          if (!userData) {
+            _context.next = 5;
+            break;
+          }
+          return _context.abrupt("return", JSON.parse(userData));
+        case 5:
+          return _context.abrupt("return", {
+            isLogin: false,
+            nickname: null,
+            avatar: null,
+            token: null
+          });
+        case 6:
+        case "end":
+          return _context.stop();
+      }
+    }, _callee);
+  }));
+  return function getUserDataFromLocalStorage() {
+    return _ref.apply(this, arguments);
+  };
+}();
+
+// const initialState: UserState = await getUserDataFromLocalStorage();
+var initialState = {
+  isLogin: false,
+  nickname: null,
+  avatar: null,
+  token: null
+};
+var userSlice = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSlice)({
+  name: 'user',
+  initialState: initialState,
+  reducers: {
+    loginSuccess: function loginSuccess(state, action) {
+      var _action$payload = action.payload,
+        nickname = _action$payload.nickname,
+        avatar = _action$payload.avatar,
+        token = _action$payload.token;
+      state.nickname = nickname;
+      state.avatar = avatar;
+      state.token = token;
+      state.isLogin = true;
+      __webpack_require__.g.token = token;
+    },
+    registerSuccess: function registerSuccess(state, action) {
+      var _action$payload2 = action.payload,
+        nickname = _action$payload2.nickname,
+        avatar = _action$payload2.avatar,
+        token = _action$payload2.token;
+      state.nickname = nickname;
+      state.avatar = avatar;
+      state.token = token;
+      state.isLogin = true;
+    },
+    logoutSuccess: function logoutSuccess(state) {
+      state.nickname = null;
+      state.avatar = null;
+      state.token = null;
+      state.isLogin = false;
+    },
+    clearSuccess: function clearSuccess(state) {
+      state.nickname = null;
+      state.avatar = null;
+      state.token = null;
+      state.isLogin = false;
+    },
+    getInfoSuccess: function getInfoSuccess(state, action) {
+      var _action$payload3 = action.payload,
+        nickname = _action$payload3.nickname,
+        avatar = _action$payload3.avatar,
+        token = _action$payload3.token;
+      state.nickname = nickname;
+      state.avatar = avatar;
+      state.token = token;
+      state.isLogin = true;
+    },
+    updateSuccess: function updateSuccess(state, action) {
+      var _action$payload4 = action.payload,
+        nickname = _action$payload4.nickname,
+        avatar = _action$payload4.avatar,
+        token = _action$payload4.token;
+      state.nickname = nickname;
+      state.avatar = avatar;
+      state.token = token;
+      state.isLogin = true;
+    }
+  }
+});
+var _userSlice$actions = userSlice.actions,
+  loginSuccess = _userSlice$actions.loginSuccess,
+  registerSuccess = _userSlice$actions.registerSuccess,
+  logoutSuccess = _userSlice$actions.logoutSuccess,
+  getInfoSuccess = _userSlice$actions.getInfoSuccess,
+  updateSuccess = _userSlice$actions.updateSuccess,
+  clearSuccess = _userSlice$actions.clearSuccess;
+
+/* harmony default export */ __webpack_exports__["default"] = (userSlice.reducer);
+var login = function login(username, password) {
+  return function (dispatch) {
+    (0,_services_http_request__WEBPACK_IMPORTED_MODULE_1__.request)({
+      url: _services_http_api__WEBPACK_IMPORTED_MODULE_2__.API_LOGIN,
+      method: 'POST',
+      data: {
+        username: username,
+        password: password
+      }
+    }).then(function (res) {
+      dispatch(loginSuccess(res));
+    });
+  };
+};
+var wxLogin = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)('user/wxLogin', /*#__PURE__*/function () {
+  var _ref3 = (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_4__["default"])( /*#__PURE__*/(0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5__["default"])().mark(function _callee2(payload, _ref2) {
+    var dispatch;
+    return (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5__["default"])().wrap(function _callee2$(_context2) {
+      while (1) switch (_context2.prev = _context2.next) {
+        case 0:
+          dispatch = _ref2.dispatch;
+          console.log(payload.code);
+          (0,_services_http_request__WEBPACK_IMPORTED_MODULE_1__.request)({
+            url: _services_http_api__WEBPACK_IMPORTED_MODULE_2__.API_LOGIN,
+            method: 'POST',
+            data: {
+              code: payload.code,
+              type: 'WX_MP',
+              app_version: '1',
+              client_version: '1',
+              client_type: 'WX_MP',
+              extra: {
+                encryptedData: payload.encryptedData,
+                iv: payload.iv
+              }
+            }
+          }).then(function (res) {
+            dispatch(loginSuccess(res));
+          });
+        case 3:
+        case "end":
+          return _context2.stop();
+      }
+    }, _callee2);
+  }));
+  return function (_x, _x2) {
+    return _ref3.apply(this, arguments);
+  };
+}());
+
+/*
+export const wxLogin = (code: string) => (dispatch: any) => {
+    
+    request({
+        url: API_LOGIN, method: 'POST', data: { code,type:'WX_MP',app_version:'1',client_version:'1',client_type:'WXP_MP' }
+    }).then(res => {
+        console.log(res);
+        dispatch(loginSuccess(res));
+    })
+}*/
+
+var register = function register(username, password) {
+  return function (dispatch) {
+    (0,_services_http_request__WEBPACK_IMPORTED_MODULE_1__.request)({
+      url: _services_http_api__WEBPACK_IMPORTED_MODULE_2__.API_REGISTER,
+      method: 'POST',
+      data: {
+        username: username,
+        password: password
+      }
+    }).then(function (res) {
+      dispatch(registerSuccess(res));
+    });
+  };
+};
+var logout = function logout() {
+  return function (dispatch) {
+    (0,_services_http_request__WEBPACK_IMPORTED_MODULE_1__.request)({
+      url: _services_http_api__WEBPACK_IMPORTED_MODULE_2__.API_LOGOUT,
+      method: 'GET',
+      data: {}
+    }).then(function (res) {
+      dispatch(logoutSuccess());
+    });
+  };
+};
+var clear = function clear() {
+  return function (dispatch) {
+    (0,_services_http_request__WEBPACK_IMPORTED_MODULE_1__.request)({
+      url: _services_http_api__WEBPACK_IMPORTED_MODULE_2__.API_CLEAR_USER,
+      method: 'POST',
+      data: {}
+    }).then(function (res) {
+      dispatch(clearSuccess());
+    });
+  };
+};
+var getInfo = function getInfo() {
+  return function (dispatch) {
+    (0,_services_http_request__WEBPACK_IMPORTED_MODULE_1__.request)({
+      url: _services_http_api__WEBPACK_IMPORTED_MODULE_2__.API_USER_INFO,
+      method: 'GET',
+      data: {}
+    }).then(function (res) {
+      dispatch(getInfoSuccess(res));
+    });
+  };
+};
+var update = function update() {
+  return function (dispatch) {
+    (0,_services_http_request__WEBPACK_IMPORTED_MODULE_1__.request)({
+      url: _services_http_api__WEBPACK_IMPORTED_MODULE_2__.API_USER_INFO,
+      method: 'POST',
+      data: {}
+    }).then(function (res) {
+      dispatch(updateSuccess(res));
+    });
+  };
+};
+
+/***/ }),
+
 /***/ "./src/utils/types.ts":
 /*!****************************!*\
   !*** ./src/utils/types.ts ***!

Plik diff jest za duży
+ 0 - 0
dist/common.js.map


+ 92 - 10
dist/pages/ChooseAuth.js

@@ -10,14 +10,24 @@
 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
 /* harmony export */   "default": function() { return /* binding */ Page; }
 /* harmony export */ });
-/* harmony import */ var _tarojs_components__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @tarojs/components */ "./node_modules/@tarojs/plugin-platform-weapp/dist/components-react.js");
+/* harmony import */ var _Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js */ "./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js");
+/* harmony import */ var _Users_Work_hola2_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js");
+/* harmony import */ var _tarojs_components__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @tarojs/components */ "./node_modules/@tarojs/plugin-platform-weapp/dist/components-react.js");
 /* harmony import */ var _components_Buttons__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @components/Buttons */ "./src/components/Buttons.tsx");
 /* harmony import */ var _components_Texts__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @components/Texts */ "./src/components/Texts.tsx");
 /* harmony import */ var _utils_types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/types */ "./src/utils/types.ts");
 /* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tarojs/taro */ "webpack/container/remote/@tarojs/taro");
 /* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_tarojs_taro__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react/jsx-runtime */ "webpack/container/remote/react/jsx-runtime");
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react-redux */ "webpack/container/remote/react-redux");
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _store_user__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/store/user */ "./src/store/user.tsx");
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! react/jsx-runtime */ "webpack/container/remote/react/jsx-runtime");
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__);
+
+
+
+
+
 
 
 
@@ -26,19 +36,91 @@
 
 
 function Page() {
+  var dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_4__.useDispatch)();
+  var counter = (0,react_redux__WEBPACK_IMPORTED_MODULE_4__.useSelector)(function (state) {
+    return state.counter.value;
+  });
+  var code = '';
+  (0,_tarojs_taro__WEBPACK_IMPORTED_MODULE_3__.useReady)(function () {
+    _tarojs_taro__WEBPACK_IMPORTED_MODULE_3___default().login().then(function (res) {
+      code = res.code;
+      // dispatch(wxLogin({code:res.code}) as any);
+    });
+  });
+
   function login() {
+    return _login.apply(this, arguments);
+  }
+  function _login() {
+    _login = (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_7__["default"])( /*#__PURE__*/(0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_8__["default"])().mark(function _callee() {
+      var _yield$Taro$getUserPr, userInfo, encryptedData, iv;
+      return (0,_Users_Work_hola2_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_8__["default"])().wrap(function _callee$(_context) {
+        while (1) switch (_context.prev = _context.next) {
+          case 0:
+            _context.prev = 0;
+            _context.next = 3;
+            return _tarojs_taro__WEBPACK_IMPORTED_MODULE_3___default().getUserProfile({
+              desc: '获取用户信息'
+            });
+          case 3:
+            _yield$Taro$getUserPr = _context.sent;
+            userInfo = _yield$Taro$getUserPr.userInfo;
+            encryptedData = _yield$Taro$getUserPr.encryptedData;
+            iv = _yield$Taro$getUserPr.iv;
+            dispatch((0,_store_user__WEBPACK_IMPORTED_MODULE_5__.wxLogin)({
+              code: code,
+              encryptedData: encryptedData,
+              iv: iv
+            }));
+            _tarojs_taro__WEBPACK_IMPORTED_MODULE_3___default().redirectTo({
+              url: '/pages/ChooseScenario'
+            });
+            // 在这里处理用户信息
+            _context.next = 14;
+            break;
+          case 11:
+            _context.prev = 11;
+            _context.t0 = _context["catch"](0);
+            console.log('获取用户信息失败:', _context.t0);
+          case 14:
+          case "end":
+            return _context.stop();
+        }
+      }, _callee, null, [[0, 11]]);
+    }));
+    return _login.apply(this, arguments);
+  }
+  function createAccount() {
     _tarojs_taro__WEBPACK_IMPORTED_MODULE_3___default().navigateTo({
-      url: '/pages/ChooseScenario'
+      url: '/pages/Auth'
     });
   }
-  return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_5__.View, {
-    className: "container",
-    children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(_components_Texts__WEBPACK_IMPORTED_MODULE_1__["default"], {
+  return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_9__.View, {
+    className: "container choose_container",
+    children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_components_Texts__WEBPACK_IMPORTED_MODULE_1__["default"], {
       text: "App name",
       type: _utils_types__WEBPACK_IMPORTED_MODULE_2__.TextType.big
-    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(_components_Buttons__WEBPACK_IMPORTED_MODULE_0__["default"], {
-      title: "Login",
-      onClick: login
+    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_components_Texts__WEBPACK_IMPORTED_MODULE_1__["default"], {
+      text: counter
+    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_9__.View, {
+      style: {
+        height: 100
+      }
+    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_components_Buttons__WEBPACK_IMPORTED_MODULE_0__["default"], {
+      title: "WeChat",
+      onClick: login,
+      style: {
+        width: 289,
+        marginBottom: 30
+      }
+    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_components_Buttons__WEBPACK_IMPORTED_MODULE_0__["default"], {
+      title: "Create account",
+      type: _utils_types__WEBPACK_IMPORTED_MODULE_2__.ButtonType.outline,
+      onClick: createAccount,
+      style: {
+        width: 289,
+        marginBottom: 30
+      }
     })]
   });
 }

Plik diff jest za duży
+ 0 - 1
dist/pages/ChooseAuth.js.map


+ 15 - 1
dist/pages/ChooseAuth.wxss

@@ -1 +1,15 @@
-/* pages/ChooseAuth.wxss */
+/*!************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[0].use[2]!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[0].use[4]!./src/pages/ChooseAuth.scss ***!
+  \************************************************************************************************************************************************************************************************************************************************************************************************************************/
+.choose_container {
+  display: -webkit-flex;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-flex-direction: column;
+      -ms-flex-direction: column;
+          flex-direction: column;
+  -webkit-align-items: center;
+      -ms-flex-align: center;
+          align-items: center;
+  padding-top: 200rpx;
+}

+ 1 - 1
dist/pages/ChooseScenario.js

@@ -64,7 +64,7 @@ function Component(props) {
 /* harmony import */ var _tarojs_components__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @tarojs/components */ "./node_modules/@tarojs/plugin-platform-weapp/dist/components-react.js");
 /* harmony import */ var _components_Buttons__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @components/Buttons */ "./src/components/Buttons.tsx");
 /* harmony import */ var _components_Texts__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @components/Texts */ "./src/components/Texts.tsx");
-/* harmony import */ var _components_Rings__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../components/Rings */ "./src/components/Rings.weapp.tsx");
+/* harmony import */ var _components_Rings__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @components/Rings */ "./src/components/Rings.weapp.tsx");
 /* harmony import */ var _components_Footer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @components/Footer */ "./src/components/Footer.tsx");
 /* harmony import */ var _components_SingleSelect__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../components/SingleSelect */ "./src/components/SingleSelect.tsx");
 /* harmony import */ var _utils_types__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @utils/types */ "./src/utils/types.ts");

Plik diff jest za duży
+ 0 - 0
dist/pages/ChooseScenario.js.map


+ 35 - 8
dist/pages/Second.js

@@ -10,16 +10,43 @@
 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
 /* harmony export */   "default": function() { return /* binding */ Second; }
 /* harmony export */ });
-/* harmony import */ var _tarojs_components__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tarojs/components */ "./node_modules/@tarojs/plugin-platform-weapp/dist/components-react.js");
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-runtime */ "webpack/container/remote/react/jsx-runtime");
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _components_Buttons__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @/components/Buttons */ "./src/components/Buttons.tsx");
+/* harmony import */ var _tarojs_components__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @tarojs/components */ "./node_modules/@tarojs/plugin-platform-weapp/dist/components-react.js");
+/* harmony import */ var _store_user__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/store/user */ "./src/store/user.tsx");
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-redux */ "webpack/container/remote/react-redux");
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ "webpack/container/remote/react/jsx-runtime");
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__);
+
+
+
+
 
 
 function Second() {
-  return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_1__.View, {
-    children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_1__.Text, {
-      children: "second"
-    })
+  var dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_2__.useDispatch)();
+  function logoutF() {
+    dispatch((0,_store_user__WEBPACK_IMPORTED_MODULE_1__.logout)());
+  }
+  function clearF() {
+    dispatch((0,_store_user__WEBPACK_IMPORTED_MODULE_1__.clear)());
+  }
+  return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_4__.View, {
+    children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_components_Buttons__WEBPACK_IMPORTED_MODULE_0__["default"], {
+      title: "\u9000\u51FA\u767B\u5F55",
+      onClick: logoutF,
+      style: {
+        width: 289,
+        marginBottom: 30
+      }
+    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_components_Buttons__WEBPACK_IMPORTED_MODULE_0__["default"], {
+      title: "\u6CE8\u9500\u8D26\u53F7",
+      onClick: clearF,
+      style: {
+        width: 289,
+        marginBottom: 30
+      }
+    })]
   });
 }
 
@@ -50,7 +77,7 @@ var inst = Page((0,_tarojs_runtime__WEBPACK_IMPORTED_MODULE_0__.createPageConfig
 },
 /******/ function(__webpack_require__) { // webpackRuntimeModules
 /******/ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
-/******/ __webpack_require__.O(0, ["taro","common"], function() { return __webpack_exec__("./src/pages/Second.tsx"); });
+/******/ __webpack_require__.O(0, ["taro","vendors","common"], function() { return __webpack_exec__("./src/pages/Second.tsx"); });
 /******/ var __webpack_exports__ = __webpack_require__.O();
 /******/ }
 ]);

+ 1 - 1
dist/pages/Second.js.map

@@ -1 +1 @@
-{"version":3,"file":"pages/Second.js","mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAEA;AACA;AAAA;AACA;AAAA;AAAA;AAEA;;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack://hola/._src_pages_Second.tsx","webpack://hola/./src/pages/Second.tsx?e2e5"],"sourcesContent":["import { View,Text } from \"@tarojs/components\";\n\nexport default function Second() {\n    return <View>\n        <Text>second</Text>\n    </View>\n}","import { createPageConfig } from '@tarojs/runtime'\nimport component from \"../../node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./Second.tsx\"\nvar config = {};\n\n\nvar inst = Page(createPageConfig(component, 'pages/Second', {root:{cn:[]}}, config || {}))\n\n\nexport default component\n"],"names":[],"sourceRoot":""}
+{"version":3,"file":"pages/Second.js","mappings":";;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAEA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;;;;;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack://hola/._src_pages_Second.tsx","webpack://hola/./src/pages/Second.tsx?e2e5"],"sourcesContent":["import Buttons from \"@/components/Buttons\";\nimport { View,Text } from \"@tarojs/components\";\nimport { logout,clear } from \"@/store/user\";\nimport { useDispatch } from \"react-redux\";\n\nexport default function Second() {\n    const dispatch = useDispatch();\n    \n    function logoutF(){\n        dispatch(logout() as any);\n    }\n\n    function clearF(){\n        dispatch(clear() as any);\n    }\n    return <View>\n        <Buttons title='退出登录' onClick={logoutF} style={{ width: 289, marginBottom: 30 }} />\n        <Buttons title='注销账号' onClick={clearF} style={{ width: 289, marginBottom: 30 }} />\n    </View>\n}","import { createPageConfig } from '@tarojs/runtime'\nimport component from \"../../node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./Second.tsx\"\nvar config = {};\n\n\nvar inst = Page(createPageConfig(component, 'pages/Second', {root:{cn:[]}}, config || {}))\n\n\nexport default component\n"],"names":[],"sourceRoot":""}

+ 0 - 1
dist/pages/SetGoal.wxss

@@ -1 +0,0 @@
-/* pages/SetGoal.wxss */

+ 24 - 13
dist/pages/index/index.js

@@ -10,25 +10,30 @@
 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
 /* harmony export */   "default": function() { return /* binding */ IndexPage; }
 /* harmony export */ });
-/* harmony import */ var _tarojs_components__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tarojs/components */ "./node_modules/@tarojs/plugin-platform-weapp/dist/components-react.js");
+/* harmony import */ var _tarojs_components__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @tarojs/components */ "./node_modules/@tarojs/plugin-platform-weapp/dist/components-react.js");
 /* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tarojs/taro */ "webpack/container/remote/@tarojs/taro");
 /* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_tarojs_taro__WEBPACK_IMPORTED_MODULE_0__);
 /* harmony import */ var _components_Rings__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @components/Rings */ "./src/components/Rings.weapp.tsx");
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "webpack/container/remote/react/jsx-runtime");
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-redux */ "webpack/container/remote/react-redux");
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ "webpack/container/remote/react/jsx-runtime");
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__);
 
 
 
 // import ComponentA from './component'
 
 
-
 // import TabBar from '../../components/Tabbar';
 
+
 function IndexPage() {
   var array = [];
+  var user = (0,react_redux__WEBPACK_IMPORTED_MODULE_2__.useSelector)(function (state) {
+    return state.user;
+  });
   array.push('ffff');
-  array.push( /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_3__.Text, {
+  array.push( /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_4__.Text, {
     children: "ffff"
   }));
   // array.push(<Rings radius={50}/>)
@@ -44,27 +49,33 @@ function IndexPage() {
       url: '/pages/ChooseAuth'
     });
   }
-  return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_3__.View, {
+  return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_4__.View, {
     style: {
       backgroundColor: '#fff',
-      flex: 1
+      flex: 1,
+      flexDirection: 'column',
+      display: 'flex'
     },
-    children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_3__.Text, {
+    children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_4__.Text, {
       children: "homepage12234"
-    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_3__.Button, {
+    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_4__.Text, {
+      children: user.isLogin ? '已登录' : '未登录'
+    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_4__.Text, {
+      children: user.isLogin ? "\u7528\u6237\u6635\u79F0\uFF1A".concat(user.nickname) : ''
+    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_4__.Button, {
       onClick: function onClick() {
         return goDetail();
       },
       children: "go detail"
-    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_components_Rings__WEBPACK_IMPORTED_MODULE_1__["default"], {
+    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_components_Rings__WEBPACK_IMPORTED_MODULE_1__["default"], {
       radius: 50
-    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_3__.Input, {
-      placeholder: "\u8BF7\u8F93\u5165\u7528\u6237\u540D",
+    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_4__.Input, {
+      placeholder: "\u8BF7\u8F93\u5165\u7528\u6237\u540D1",
       style: {
         textAlign: 'left',
         backgroundColor: 'pink'
       }
-    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_3__.Text, {
+    }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_4__.Text, {
       className: "login",
       onClick: function onClick() {
         return login();

Plik diff jest za duży
+ 0 - 0
dist/pages/index/index.js.map


+ 37 - 0
dist/prebundle/node_modules_taro_weapp_prebundle_react-dom_js.js

@@ -0,0 +1,37 @@
+"use strict";
+(wx["webpackJsonp"] = wx["webpackJsonp"] || []).push([["node_modules_taro_weapp_prebundle_react-dom_js"],{
+
+/***/ "./node_modules/.taro/weapp/prebundle/react-dom.js":
+/*!*********************************************************!*\
+  !*** ./node_modules/.taro/weapp/prebundle/react-dom.js ***!
+  \*********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */   createPortal: function() { return /* reexport safe */ _chunk_2Y2U3MWF_js__WEBPACK_IMPORTED_MODULE_0__.createPortal; },
+/* harmony export */   createRoot: function() { return /* reexport safe */ _chunk_2Y2U3MWF_js__WEBPACK_IMPORTED_MODULE_0__.createRoot; },
+/* harmony export */   "default": function() { return /* binding */ react_dom_default; },
+/* harmony export */   findDOMNode: function() { return /* reexport safe */ _chunk_2Y2U3MWF_js__WEBPACK_IMPORTED_MODULE_0__.findDOMNode; },
+/* harmony export */   render: function() { return /* reexport safe */ _chunk_2Y2U3MWF_js__WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */   unmountComponentAtNode: function() { return /* reexport safe */ _chunk_2Y2U3MWF_js__WEBPACK_IMPORTED_MODULE_0__.unmountComponentAtNode; },
+/* harmony export */   unstable_batchedUpdates: function() { return /* reexport safe */ _chunk_2Y2U3MWF_js__WEBPACK_IMPORTED_MODULE_0__.unstable_batchedUpdates; }
+/* harmony export */ });
+/* harmony import */ var _chunk_2Y2U3MWF_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./chunk-2Y2U3MWF.js */ "./node_modules/.taro/weapp/prebundle/chunk-2Y2U3MWF.js");
+/* harmony import */ var _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./chunk-3EXGJ5BE.js */ "./node_modules/.taro/weapp/prebundle/chunk-3EXGJ5BE.js");
+/* harmony import */ var _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./chunk-77KB62LY.js */ "./node_modules/.taro/weapp/prebundle/chunk-77KB62LY.js");
+/* harmony import */ var _chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./chunk-LNJCN3VW.js */ "./node_modules/.taro/weapp/prebundle/chunk-LNJCN3VW.js");
+/* harmony import */ var _chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./chunk-P7VEE7PG.js */ "./node_modules/.taro/weapp/prebundle/chunk-P7VEE7PG.js");
+
+
+
+
+
+// entry:react-dom
+var react_dom_default = _chunk_2Y2U3MWF_js__WEBPACK_IMPORTED_MODULE_0__.index;
+
+
+
+/***/ })
+
+}]);

+ 25 - 13
dist/prebundle/remoteEntry.js

@@ -9,15 +9,21 @@ var taro_app_library;
 /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
 
 var moduleMap = {
-	"./react": function() {
-		return Promise.all([__webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-LNJCN3VW_js"), __webpack_require__.e("node_modules_taro_weapp_prebundle_react_js")]).then(function() { return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/react.js */ "./node_modules/.taro/weapp/prebundle/react.js")); }; });
-	},
 	"./@tarojs/taro": function() {
 		return Promise.all([__webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-77KB62LY_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-3EXGJ5BE_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_tarojs_taro_js")]).then(function() { return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/@tarojs_taro.js */ "./node_modules/.taro/weapp/prebundle/@tarojs_taro.js")); }; });
 	},
+	"./react-redux": function() {
+		return Promise.all([__webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-77KB62LY_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-3EXGJ5BE_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-LNJCN3VW_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-2Y2U3MWF_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_react-redux_js")]).then(function() { return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/react-redux.js */ "./node_modules/.taro/weapp/prebundle/react-redux.js")); }; });
+	},
+	"./react": function() {
+		return Promise.all([__webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-LNJCN3VW_js"), __webpack_require__.e("node_modules_taro_weapp_prebundle_react_js")]).then(function() { return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/react.js */ "./node_modules/.taro/weapp/prebundle/react.js")); }; });
+	},
 	"./react-i18next": function() {
 		return Promise.all([__webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-LNJCN3VW_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_react-i18next_js")]).then(function() { return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/react-i18next.js */ "./node_modules/.taro/weapp/prebundle/react-i18next.js")); }; });
 	},
+	"./@reduxjs/toolkit": function() {
+		return Promise.all([__webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-77KB62LY_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-3EXGJ5BE_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_reduxjs_toolkit_js")]).then(function() { return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/@reduxjs_toolkit.js */ "./node_modules/.taro/weapp/prebundle/@reduxjs_toolkit.js")); }; });
+	},
 	"./i18next-browser-languagedetector": function() {
 		return Promise.all([__webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-77KB62LY_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-3EXGJ5BE_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_i18next-browser-languagedetector_js")]).then(function() { return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/i18next-browser-languagedetector.js */ "./node_modules/.taro/weapp/prebundle/i18next-browser-languagedetector.js")); }; });
 	},
@@ -30,14 +36,14 @@ var moduleMap = {
 	"./@tarojs/runtime": function() {
 		return Promise.all([__webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-77KB62LY_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-3EXGJ5BE_js"), __webpack_require__.e("node_modules_taro_weapp_prebundle_tarojs_runtime_js")]).then(function() { return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/@tarojs_runtime.js */ "./node_modules/.taro/weapp/prebundle/@tarojs_runtime.js")); }; });
 	},
-	"./@tarojs/plugin-framework-react/dist/runtime": function() {
-		return Promise.all([__webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-77KB62LY_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-3EXGJ5BE_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_tarojs_plugin-framework-react_dist_runtime_js")]).then(function() { return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/@tarojs_plugin-framework-react_dist_runtime.js */ "./node_modules/.taro/weapp/prebundle/@tarojs_plugin-framework-react_dist_runtime.js")); }; });
-	},
 	"./@tarojs/plugin-platform-weapp/dist/runtime": function() {
 		return Promise.all([__webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-77KB62LY_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_tarojs_plugin-platform-weapp_dist_runtime_js")]).then(function() { return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/@tarojs_plugin-platform-weapp_dist_runtime.js */ "./node_modules/.taro/weapp/prebundle/@tarojs_plugin-platform-weapp_dist_runtime.js")); }; });
 	},
+	"./@tarojs/plugin-framework-react/dist/runtime": function() {
+		return Promise.all([__webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-77KB62LY_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-3EXGJ5BE_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_tarojs_plugin-framework-react_dist_runtime_js")]).then(function() { return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/@tarojs_plugin-framework-react_dist_runtime.js */ "./node_modules/.taro/weapp/prebundle/@tarojs_plugin-framework-react_dist_runtime.js")); }; });
+	},
 	"./react-dom": function() {
-		return Promise.all([__webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-77KB62LY_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-3EXGJ5BE_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-LNJCN3VW_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_react-dom_js")]).then(function() { return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/react-dom.js */ "./node_modules/.taro/weapp/prebundle/react-dom.js")); }; });
+		return Promise.all([__webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-77KB62LY_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-3EXGJ5BE_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-LNJCN3VW_js"), __webpack_require__.e("vendors-node_modules_taro_weapp_prebundle_chunk-2Y2U3MWF_js"), __webpack_require__.e("node_modules_taro_weapp_prebundle_react-dom_js")]).then(function() { return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/react-dom.js */ "./node_modules/.taro/weapp/prebundle/react-dom.js")); }; });
 	}
 };
 var get = function(module, getScope) {
@@ -68,15 +74,21 @@ __webpack_require__.d(exports, {
 });
 
 var taroModuleMap = {
-	"./react": function() {
-		return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/react.js */ "./node_modules/.taro/weapp/prebundle/react.js")); };
-	},
 	"./@tarojs/taro": function() {
 		return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/@tarojs_taro.js */ "./node_modules/.taro/weapp/prebundle/@tarojs_taro.js")); };
 	},
+	"./react-redux": function() {
+		return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/react-redux.js */ "./node_modules/.taro/weapp/prebundle/react-redux.js")); };
+	},
+	"./react": function() {
+		return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/react.js */ "./node_modules/.taro/weapp/prebundle/react.js")); };
+	},
 	"./react-i18next": function() {
 		return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/react-i18next.js */ "./node_modules/.taro/weapp/prebundle/react-i18next.js")); };
 	},
+	"./@reduxjs/toolkit": function() {
+		return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/@reduxjs_toolkit.js */ "./node_modules/.taro/weapp/prebundle/@reduxjs_toolkit.js")); };
+	},
 	"./i18next-browser-languagedetector": function() {
 		return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/i18next-browser-languagedetector.js */ "./node_modules/.taro/weapp/prebundle/i18next-browser-languagedetector.js")); };
 	},
@@ -89,12 +101,12 @@ var taroModuleMap = {
 	"./@tarojs/runtime": function() {
 		return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/@tarojs_runtime.js */ "./node_modules/.taro/weapp/prebundle/@tarojs_runtime.js")); };
 	},
-	"./@tarojs/plugin-framework-react/dist/runtime": function() {
-		return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/@tarojs_plugin-framework-react_dist_runtime.js */ "./node_modules/.taro/weapp/prebundle/@tarojs_plugin-framework-react_dist_runtime.js")); };
-	},
 	"./@tarojs/plugin-platform-weapp/dist/runtime": function() {
 		return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/@tarojs_plugin-platform-weapp_dist_runtime.js */ "./node_modules/.taro/weapp/prebundle/@tarojs_plugin-platform-weapp_dist_runtime.js")); };
 	},
+	"./@tarojs/plugin-framework-react/dist/runtime": function() {
+		return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/@tarojs_plugin-framework-react_dist_runtime.js */ "./node_modules/.taro/weapp/prebundle/@tarojs_plugin-framework-react_dist_runtime.js")); };
+	},
 	"./react-dom": function() {
 		return function() { return (__webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/react-dom.js */ "./node_modules/.taro/weapp/prebundle/react-dom.js")); };
 	}

+ 38 - 41
dist/prebundle/vendors-node_modules_taro_weapp_prebundle_react-dom_js.js → dist/prebundle/vendors-node_modules_taro_weapp_prebundle_chunk-2Y2U3MWF_js.js

@@ -1,25 +1,24 @@
 "use strict";
-(wx["webpackJsonp"] = wx["webpackJsonp"] || []).push([["vendors-node_modules_taro_weapp_prebundle_react-dom_js"],{
+(wx["webpackJsonp"] = wx["webpackJsonp"] || []).push([["vendors-node_modules_taro_weapp_prebundle_chunk-2Y2U3MWF_js"],{
 
-/***/ "./node_modules/.taro/weapp/prebundle/react-dom.js":
-/*!*********************************************************!*\
-  !*** ./node_modules/.taro/weapp/prebundle/react-dom.js ***!
-  \*********************************************************/
+/***/ "./node_modules/.taro/weapp/prebundle/chunk-2Y2U3MWF.js":
+/*!**************************************************************!*\
+  !*** ./node_modules/.taro/weapp/prebundle/chunk-2Y2U3MWF.js ***!
+  \**************************************************************/
 /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
 
-__webpack_require__.r(__webpack_exports__);
 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
 /* harmony export */   createPortal: function() { return /* binding */ createPortal; },
 /* harmony export */   createRoot: function() { return /* binding */ createRoot; },
-/* harmony export */   "default": function() { return /* binding */ react_dom_default; },
 /* harmony export */   findDOMNode: function() { return /* binding */ findDOMNode; },
+/* harmony export */   index: function() { return /* binding */ index; },
 /* harmony export */   render: function() { return /* binding */ render; },
 /* harmony export */   unmountComponentAtNode: function() { return /* binding */ unmountComponentAtNode; },
 /* harmony export */   unstable_batchedUpdates: function() { return /* binding */ unstable_batchedUpdates; }
 /* harmony export */ });
-/* harmony import */ var _chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./chunk-LNJCN3VW.js */ "./node_modules/.taro/weapp/prebundle/chunk-LNJCN3VW.js");
-/* harmony import */ var _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./chunk-3EXGJ5BE.js */ "./node_modules/.taro/weapp/prebundle/chunk-3EXGJ5BE.js");
-/* harmony import */ var _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./chunk-77KB62LY.js */ "./node_modules/.taro/weapp/prebundle/chunk-77KB62LY.js");
+/* harmony import */ var _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./chunk-3EXGJ5BE.js */ "./node_modules/.taro/weapp/prebundle/chunk-3EXGJ5BE.js");
+/* harmony import */ var _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./chunk-77KB62LY.js */ "./node_modules/.taro/weapp/prebundle/chunk-77KB62LY.js");
+/* harmony import */ var _chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./chunk-LNJCN3VW.js */ "./node_modules/.taro/weapp/prebundle/chunk-LNJCN3VW.js");
 /* harmony import */ var _chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./chunk-P7VEE7PG.js */ "./node_modules/.taro/weapp/prebundle/chunk-P7VEE7PG.js");
 /* provided dependency */ var navigator = __webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/chunk-3EXGJ5BE.js */ "./node_modules/.taro/weapp/prebundle/chunk-3EXGJ5BE.js")["nav"];
 
@@ -487,7 +486,7 @@ var require_react_reconciler_production_min = (0,_chunk_P7VEE7PG_js__WEBPACK_IMP
         module.exports = function $$$reconciler($$$hostConfig) {
             var exports2 = {};
             "use strict";
-            var aa = (0,_chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_0__.require_react_production_min)(), ba = require_scheduler(), ca = Object.assign;
+            var aa = (0,_chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_2__.require_react_production_min)(), ba = require_scheduler(), ca = Object.assign;
             function n(a) {
                 for(var b = "https://reactjs.org/docs/error-decoder.html?invariant=" + a, c = 1; c < arguments.length; c++)b += "&args[]=" + encodeURIComponent(arguments[c]);
                 return "Minified React error #" + a + "; visit " + b + " for the full message or use the non-minified dev environment for full errors and additional helpful warnings.";
@@ -5563,8 +5562,8 @@ var require_constants = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__.__com
     }
 });
 // node_modules/@tarojs/react/dist/react.esm.js
-(0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.init_shared_esm)();
-(0,_chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__.init_runtime_esm)();
+(0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.init_shared_esm)();
+(0,_chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__.init_runtime_esm)();
 var import_react_reconciler = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__.__toESM)(require_react_reconciler_production_min());
 var import_constants = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__.__toESM)(require_constants());
 var supportedInputTypes = {
@@ -5820,7 +5819,7 @@ function getUpdatePayload(dom, oldProps, newProps) {
             (updatePayload = updatePayload || []).push(i, null);
         }
     }
-    const isFormElement = dom instanceof _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__.FormElement;
+    const isFormElement = dom instanceof _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__.FormElement;
     for(i in newProps){
         if (oldProps[i] !== newProps[i] || isFormElement && i === "value") {
             (updatePayload = updatePayload || []).push(i, newProps[i]);
@@ -5834,11 +5833,11 @@ function setEvent(dom, name, value, oldValue) {
     if (isCapture) {
         eventName = eventName.slice(0, -7);
     }
-    const compName = (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.capitalize)((0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.toCamelCase)(dom.tagName.toLowerCase()));
-    if (eventName === "click" && compName in _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.internalComponents) {
+    const compName = (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.capitalize)((0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.toCamelCase)(dom.tagName.toLowerCase()));
+    if (eventName === "click" && compName in _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.internalComponents) {
         eventName = "tap";
     }
-    if ((0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.isFunction)(value)) {
+    if ((0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.isFunction)(value)) {
         if (oldValue) {
             dom.removeEventListener(eventName, oldValue, false);
             dom.addEventListener(eventName, value, {
@@ -5857,7 +5856,7 @@ function setStyle(style, key, value) {
         style.setProperty(key, value.toString());
         return;
     }
-    style[key] = (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.isNumber)(value) && IS_NON_DIMENSIONAL.test(key) === false ? value + "px" : value == null ? "" : value;
+    style[key] = (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.isNumber)(value) && IS_NON_DIMENSIONAL.test(key) === false ? value + "px" : value == null ? "" : value;
 }
 function setProperty(dom, name, value, oldValue) {
     var _a, _b;
@@ -5865,21 +5864,21 @@ function setProperty(dom, name, value, oldValue) {
     if (name === "key" || name === "children" || name === "ref") ;
     else if (name === "style") {
         const style = dom.style;
-        if ((0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.isString)(value)) {
+        if ((0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.isString)(value)) {
             style.cssText = value;
         } else {
-            if ((0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.isString)(oldValue)) {
+            if ((0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.isString)(oldValue)) {
                 style.cssText = "";
                 oldValue = null;
             }
-            if ((0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.isObject)(oldValue)) {
+            if ((0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.isObject)(oldValue)) {
                 for(const i in oldValue){
                     if (!(value && i in value)) {
                         setStyle(style, i, "");
                     }
                 }
             }
-            if ((0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.isObject)(value)) {
+            if ((0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.isObject)(value)) {
                 for(const i1 in value){
                     if (!oldValue || value[i1] !== oldValue[i1]) {
                         setStyle(style, i1, value[i1]);
@@ -5897,7 +5896,7 @@ function setProperty(dom, name, value, oldValue) {
                 dom.innerHTML = newHtml;
             }
         }
-    } else if (!(0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.isFunction)(value)) {
+    } else if (!(0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.isFunction)(value)) {
         if (value == null) {
             dom.removeAttribute(name);
         } else {
@@ -5918,9 +5917,9 @@ var hostConfig = {
     prepareForCommit (..._) {
         return null;
     },
-    resetAfterCommit: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.noop,
+    resetAfterCommit: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.noop,
     createInstance (type, props, _rootContainerInstance, _hostContext, internalInstanceHandle) {
-        const element = _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__.document$1.createElement(type);
+        const element = _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__.document$1.createElement(type);
         precacheFiberNode(internalInstanceHandle, element);
         updateFiberProps(element, props);
         return element;
@@ -5942,7 +5941,7 @@ var hostConfig = {
         return false;
     },
     createTextInstance (text, _rootContainerInstance, _hostContext, internalInstanceHandle) {
-        const textNode = _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__.document$1.createTextNode(text);
+        const textNode = _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__.document$1.createTextNode(text);
         precacheFiberNode(internalInstanceHandle, textNode);
         return textNode;
     },
@@ -5955,17 +5954,17 @@ var hostConfig = {
     supportsPersistence: false,
     supportsHydration: false,
     getInstanceFromNode: ()=>null,
-    beforeActiveInstanceBlur: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.noop,
-    afterActiveInstanceBlur: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.noop,
-    preparePortalMount: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.noop,
-    prepareScopeUpdate: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.noop,
+    beforeActiveInstanceBlur: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.noop,
+    afterActiveInstanceBlur: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.noop,
+    preparePortalMount: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.noop,
+    prepareScopeUpdate: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.noop,
     getInstanceFromScope: ()=>null,
     getCurrentEventPriority () {
         return import_constants.DefaultEventPriority;
     },
-    detachDeletedInstance: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.noop,
+    detachDeletedInstance: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.noop,
     supportsMicrotasks: true,
-    scheduleMicrotask: (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.isUndefined)(Promise) ? setTimeout : (callback)=>Promise.resolve(null).then(callback).catch(function(error) {
+    scheduleMicrotask: (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.isUndefined)(Promise) ? setTimeout : (callback)=>Promise.resolve(null).then(callback).catch(function(error) {
             setTimeout(()=>{
                 throw error;
             });
@@ -5979,7 +5978,7 @@ var hostConfig = {
     commitTextUpdate (textInst, _, newText) {
         textInst.nodeValue = newText;
     },
-    commitMount: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.noop,
+    commitMount: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.noop,
     commitUpdate (dom, updatePayload, _, oldProps, newProps) {
         updatePropsByPayload(dom, oldProps, updatePayload);
         updateFiberProps(dom, newProps);
@@ -5996,7 +5995,7 @@ var hostConfig = {
     removeChildFromContainer (parent, child) {
         parent.removeChild(child);
     },
-    resetTextContent: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.noop,
+    resetTextContent: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.noop,
     hideInstance (instance) {
         const style = instance.style;
         style.setProperty("display", "none");
@@ -6007,7 +6006,7 @@ var hostConfig = {
     unhideInstance (instance, props) {
         const styleProp = props.style;
         let display = (styleProp === null || styleProp === void 0 ? void 0 : styleProp.hasOwnProperty("display")) ? styleProp.display : null;
-        display = display == null || (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.isBoolean)(display) || display === "" ? "" : ("" + display).trim();
+        display = display == null || (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.isBoolean)(display) || display === "" ? "" : ("" + display).trim();
         instance.style["display"] = display;
     },
     unhideTextInstance (textInstance, text) {
@@ -6156,13 +6155,13 @@ function createRoot(domContainer, options = {}) {
     const root = new Root(TaroReconciler, domContainer, options);
     ContainerMap.set(domContainer, root);
     markContainerAsRoot((_a = root === null || root === void 0 ? void 0 : root.internalRoot) === null || _a === void 0 ? void 0 : _a.current, domContainer);
-    _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.hooks.tap("dispatchTaroEvent", (e, node)=>{
+    _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.hooks.tap("dispatchTaroEvent", (e, node)=>{
         const eventPriority = getEventPriority(e.type);
         TaroReconciler.runWithPriority(eventPriority, ()=>{
             node.dispatchEvent(e);
         });
     });
-    _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.hooks.tap("modifyTaroEvent", (e, node)=>{
+    _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.hooks.tap("modifyTaroEvent", (e, node)=>{
         var _a2, _b;
         const inst = getTargetInstForInputOrChangeEvent(e, node);
         if (!inst) return;
@@ -6188,7 +6187,7 @@ var unstable_batchedUpdates = (fn, a)=>{
     }
 };
 function unmountComponentAtNode(dom) {
-    (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.ensure)(dom && [
+    (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.ensure)(dom && [
         1,
         8,
         9,
@@ -6213,7 +6212,7 @@ function findDOMNode(comp) {
     }
     return TaroReconciler.findHostInstance(comp);
 }
-var portalType = (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.isFunction)(Symbol) && Symbol.for ? Symbol.for("react.portal") : 60106;
+var portalType = (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.isFunction)(Symbol) && Symbol.for ? Symbol.for("react.portal") : 60106;
 function createPortal(children, containerInfo, key) {
     return {
         $$typeof: portalType,
@@ -6231,8 +6230,6 @@ var index = {
     findDOMNode,
     createPortal
 };
-// entry:react-dom
-var react_dom_default = index;
  /**
  * @license React
  * react-reconciler-constants.development.js

+ 1589 - 0
dist/prebundle/vendors-node_modules_taro_weapp_prebundle_react-redux_js.js

@@ -0,0 +1,1589 @@
+"use strict";
+(wx["webpackJsonp"] = wx["webpackJsonp"] || []).push([["vendors-node_modules_taro_weapp_prebundle_react-redux_js"],{
+
+/***/ "./node_modules/.taro/weapp/prebundle/react-redux.js":
+/*!***********************************************************!*\
+  !*** ./node_modules/.taro/weapp/prebundle/react-redux.js ***!
+  \***********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */   Provider: function() { return /* binding */ Provider_default; },
+/* harmony export */   ReactReduxContext: function() { return /* binding */ ReactReduxContext; },
+/* harmony export */   batch: function() { return /* reexport safe */ _chunk_2Y2U3MWF_js__WEBPACK_IMPORTED_MODULE_0__.unstable_batchedUpdates; },
+/* harmony export */   connect: function() { return /* binding */ connect_default; },
+/* harmony export */   createDispatchHook: function() { return /* binding */ createDispatchHook; },
+/* harmony export */   createSelectorHook: function() { return /* binding */ createSelectorHook; },
+/* harmony export */   createStoreHook: function() { return /* binding */ createStoreHook; },
+/* harmony export */   shallowEqual: function() { return /* binding */ shallowEqual; },
+/* harmony export */   useDispatch: function() { return /* binding */ useDispatch; },
+/* harmony export */   useSelector: function() { return /* binding */ useSelector; },
+/* harmony export */   useStore: function() { return /* binding */ useStore; }
+/* harmony export */ });
+/* harmony import */ var _chunk_2Y2U3MWF_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./chunk-2Y2U3MWF.js */ "./node_modules/.taro/weapp/prebundle/chunk-2Y2U3MWF.js");
+/* harmony import */ var _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./chunk-3EXGJ5BE.js */ "./node_modules/.taro/weapp/prebundle/chunk-3EXGJ5BE.js");
+/* harmony import */ var _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./chunk-77KB62LY.js */ "./node_modules/.taro/weapp/prebundle/chunk-77KB62LY.js");
+/* harmony import */ var _chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./chunk-LNJCN3VW.js */ "./node_modules/.taro/weapp/prebundle/chunk-LNJCN3VW.js");
+/* harmony import */ var _chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./chunk-P7VEE7PG.js */ "./node_modules/.taro/weapp/prebundle/chunk-P7VEE7PG.js");
+/* provided dependency */ var window = __webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/chunk-3EXGJ5BE.js */ "./node_modules/.taro/weapp/prebundle/chunk-3EXGJ5BE.js")["window$1"];
+
+
+
+
+
+// node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js
+var require_use_sync_external_store_shim_development = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__commonJS)({
+    "node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js" (exports) {
+        "use strict";
+        if (true) {
+            (function() {
+                "use strict";
+                if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart === "function") {
+                    __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());
+                }
+                var React5 = (0,_chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_3__.require_react_production_min)();
+                var ReactSharedInternals = React5.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
+                function error(format) {
+                    {
+                        {
+                            for(var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++){
+                                args[_key2 - 1] = arguments[_key2];
+                            }
+                            printWarning("error", format, args);
+                        }
+                    }
+                }
+                function printWarning(level, format, args) {
+                    {
+                        var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;
+                        var stack = ReactDebugCurrentFrame.getStackAddendum();
+                        if (stack !== "") {
+                            format += "%s";
+                            args = args.concat([
+                                stack
+                            ]);
+                        }
+                        var argsWithFormat = args.map(function(item) {
+                            return String(item);
+                        });
+                        argsWithFormat.unshift("Warning: " + format);
+                        Function.prototype.apply.call(console[level], console, argsWithFormat);
+                    }
+                }
+                function is2(x, y) {
+                    return x === y && (x !== 0 || 1 / x === 1 / y) || x !== x && y !== y;
+                }
+                var objectIs = typeof Object.is === "function" ? Object.is : is2;
+                var useState = React5.useState, useEffect2 = React5.useEffect, useLayoutEffect2 = React5.useLayoutEffect, useDebugValue2 = React5.useDebugValue;
+                var didWarnOld18Alpha = false;
+                var didWarnUncachedGetSnapshot = false;
+                function useSyncExternalStore3(subscribe, getSnapshot, getServerSnapshot) {
+                    {
+                        if (!didWarnOld18Alpha) {
+                            if (React5.startTransition !== void 0) {
+                                didWarnOld18Alpha = true;
+                                error("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release.");
+                            }
+                        }
+                    }
+                    var value = getSnapshot();
+                    {
+                        if (!didWarnUncachedGetSnapshot) {
+                            var cachedValue = getSnapshot();
+                            if (!objectIs(value, cachedValue)) {
+                                error("The result of getSnapshot should be cached to avoid an infinite loop");
+                                didWarnUncachedGetSnapshot = true;
+                            }
+                        }
+                    }
+                    var _useState = useState({
+                        inst: {
+                            value,
+                            getSnapshot
+                        }
+                    }), inst = _useState[0].inst, forceUpdate = _useState[1];
+                    useLayoutEffect2(function() {
+                        inst.value = value;
+                        inst.getSnapshot = getSnapshot;
+                        if (checkIfSnapshotChanged(inst)) {
+                            forceUpdate({
+                                inst
+                            });
+                        }
+                    }, [
+                        subscribe,
+                        value,
+                        getSnapshot
+                    ]);
+                    useEffect2(function() {
+                        if (checkIfSnapshotChanged(inst)) {
+                            forceUpdate({
+                                inst
+                            });
+                        }
+                        var handleStoreChange = function() {
+                            if (checkIfSnapshotChanged(inst)) {
+                                forceUpdate({
+                                    inst
+                                });
+                            }
+                        };
+                        return subscribe(handleStoreChange);
+                    }, [
+                        subscribe
+                    ]);
+                    useDebugValue2(value);
+                    return value;
+                }
+                function checkIfSnapshotChanged(inst) {
+                    var latestGetSnapshot = inst.getSnapshot;
+                    var prevValue = inst.value;
+                    try {
+                        var nextValue = latestGetSnapshot();
+                        return !objectIs(prevValue, nextValue);
+                    } catch (error2) {
+                        return true;
+                    }
+                }
+                function useSyncExternalStore$1(subscribe, getSnapshot, getServerSnapshot) {
+                    return getSnapshot();
+                }
+                var canUseDOM2 = !!(typeof window !== "undefined" && typeof window.document !== "undefined" && typeof window.document.createElement !== "undefined");
+                var isServerEnvironment = !canUseDOM2;
+                var shim = isServerEnvironment ? useSyncExternalStore$1 : useSyncExternalStore3;
+                var useSyncExternalStore$2 = React5.useSyncExternalStore !== void 0 ? React5.useSyncExternalStore : shim;
+                exports.useSyncExternalStore = useSyncExternalStore$2;
+                if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop === "function") {
+                    __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());
+                }
+            })();
+        }
+    }
+});
+// node_modules/use-sync-external-store/shim/index.js
+var require_shim = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__commonJS)({
+    "node_modules/use-sync-external-store/shim/index.js" (exports, module) {
+        "use strict";
+        if (false) {} else {
+            module.exports = require_use_sync_external_store_shim_development();
+        }
+    }
+});
+// node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js
+var require_with_selector_development = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__commonJS)({
+    "node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js" (exports) {
+        "use strict";
+        if (true) {
+            (function() {
+                "use strict";
+                if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart === "function") {
+                    __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());
+                }
+                var React5 = (0,_chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_3__.require_react_production_min)();
+                var shim = require_shim();
+                function is2(x, y) {
+                    return x === y && (x !== 0 || 1 / x === 1 / y) || x !== x && y !== y;
+                }
+                var objectIs = typeof Object.is === "function" ? Object.is : is2;
+                var useSyncExternalStore3 = shim.useSyncExternalStore;
+                var useRef3 = React5.useRef, useEffect2 = React5.useEffect, useMemo3 = React5.useMemo, useDebugValue2 = React5.useDebugValue;
+                function useSyncExternalStoreWithSelector3(subscribe, getSnapshot, getServerSnapshot, selector, isEqual) {
+                    var instRef = useRef3(null);
+                    var inst;
+                    if (instRef.current === null) {
+                        inst = {
+                            hasValue: false,
+                            value: null
+                        };
+                        instRef.current = inst;
+                    } else {
+                        inst = instRef.current;
+                    }
+                    var _useMemo = useMemo3(function() {
+                        var hasMemo = false;
+                        var memoizedSnapshot;
+                        var memoizedSelection;
+                        var memoizedSelector = function(nextSnapshot) {
+                            if (!hasMemo) {
+                                hasMemo = true;
+                                memoizedSnapshot = nextSnapshot;
+                                var _nextSelection = selector(nextSnapshot);
+                                if (isEqual !== void 0) {
+                                    if (inst.hasValue) {
+                                        var currentSelection = inst.value;
+                                        if (isEqual(currentSelection, _nextSelection)) {
+                                            memoizedSelection = currentSelection;
+                                            return currentSelection;
+                                        }
+                                    }
+                                }
+                                memoizedSelection = _nextSelection;
+                                return _nextSelection;
+                            }
+                            var prevSnapshot = memoizedSnapshot;
+                            var prevSelection = memoizedSelection;
+                            if (objectIs(prevSnapshot, nextSnapshot)) {
+                                return prevSelection;
+                            }
+                            var nextSelection = selector(nextSnapshot);
+                            if (isEqual !== void 0 && isEqual(prevSelection, nextSelection)) {
+                                return prevSelection;
+                            }
+                            memoizedSnapshot = nextSnapshot;
+                            memoizedSelection = nextSelection;
+                            return nextSelection;
+                        };
+                        var maybeGetServerSnapshot = getServerSnapshot === void 0 ? null : getServerSnapshot;
+                        var getSnapshotWithSelector = function() {
+                            return memoizedSelector(getSnapshot());
+                        };
+                        var getServerSnapshotWithSelector = maybeGetServerSnapshot === null ? void 0 : function() {
+                            return memoizedSelector(maybeGetServerSnapshot());
+                        };
+                        return [
+                            getSnapshotWithSelector,
+                            getServerSnapshotWithSelector
+                        ];
+                    }, [
+                        getSnapshot,
+                        getServerSnapshot,
+                        selector,
+                        isEqual
+                    ]), getSelection = _useMemo[0], getServerSelection = _useMemo[1];
+                    var value = useSyncExternalStore3(subscribe, getSelection, getServerSelection);
+                    useEffect2(function() {
+                        inst.hasValue = true;
+                        inst.value = value;
+                    }, [
+                        value
+                    ]);
+                    useDebugValue2(value);
+                    return value;
+                }
+                exports.useSyncExternalStoreWithSelector = useSyncExternalStoreWithSelector3;
+                if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop === "function") {
+                    __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());
+                }
+            })();
+        }
+    }
+});
+// node_modules/use-sync-external-store/shim/with-selector.js
+var require_with_selector = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__commonJS)({
+    "node_modules/use-sync-external-store/shim/with-selector.js" (exports, module) {
+        "use strict";
+        if (false) {} else {
+            module.exports = require_with_selector_development();
+        }
+    }
+});
+// node_modules/react-is/cjs/react-is.development.js
+var require_react_is_development = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__commonJS)({
+    "node_modules/react-is/cjs/react-is.development.js" (exports) {
+        "use strict";
+        if (true) {
+            (function() {
+                "use strict";
+                var hasSymbol = typeof Symbol === "function" && Symbol.for;
+                var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for("react.element") : 60103;
+                var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for("react.portal") : 60106;
+                var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for("react.fragment") : 60107;
+                var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for("react.strict_mode") : 60108;
+                var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for("react.profiler") : 60114;
+                var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for("react.provider") : 60109;
+                var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for("react.context") : 60110;
+                var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for("react.async_mode") : 60111;
+                var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for("react.concurrent_mode") : 60111;
+                var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for("react.forward_ref") : 60112;
+                var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for("react.suspense") : 60113;
+                var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for("react.suspense_list") : 60120;
+                var REACT_MEMO_TYPE = hasSymbol ? Symbol.for("react.memo") : 60115;
+                var REACT_LAZY_TYPE = hasSymbol ? Symbol.for("react.lazy") : 60116;
+                var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for("react.block") : 60121;
+                var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for("react.fundamental") : 60117;
+                var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for("react.responder") : 60118;
+                var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for("react.scope") : 60119;
+                function isValidElementType2(type) {
+                    return typeof type === "string" || typeof type === "function" || type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === "object" && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
+                }
+                function typeOf(object) {
+                    if (typeof object === "object" && object !== null) {
+                        var $$typeof = object.$$typeof;
+                        switch($$typeof){
+                            case REACT_ELEMENT_TYPE:
+                                var type = object.type;
+                                switch(type){
+                                    case REACT_ASYNC_MODE_TYPE:
+                                    case REACT_CONCURRENT_MODE_TYPE:
+                                    case REACT_FRAGMENT_TYPE:
+                                    case REACT_PROFILER_TYPE:
+                                    case REACT_STRICT_MODE_TYPE:
+                                    case REACT_SUSPENSE_TYPE:
+                                        return type;
+                                    default:
+                                        var $$typeofType = type && type.$$typeof;
+                                        switch($$typeofType){
+                                            case REACT_CONTEXT_TYPE:
+                                            case REACT_FORWARD_REF_TYPE:
+                                            case REACT_LAZY_TYPE:
+                                            case REACT_MEMO_TYPE:
+                                            case REACT_PROVIDER_TYPE:
+                                                return $$typeofType;
+                                            default:
+                                                return $$typeof;
+                                        }
+                                }
+                            case REACT_PORTAL_TYPE:
+                                return $$typeof;
+                        }
+                    }
+                    return void 0;
+                }
+                var AsyncMode = REACT_ASYNC_MODE_TYPE;
+                var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
+                var ContextConsumer = REACT_CONTEXT_TYPE;
+                var ContextProvider = REACT_PROVIDER_TYPE;
+                var Element = REACT_ELEMENT_TYPE;
+                var ForwardRef = REACT_FORWARD_REF_TYPE;
+                var Fragment = REACT_FRAGMENT_TYPE;
+                var Lazy = REACT_LAZY_TYPE;
+                var Memo = REACT_MEMO_TYPE;
+                var Portal = REACT_PORTAL_TYPE;
+                var Profiler = REACT_PROFILER_TYPE;
+                var StrictMode = REACT_STRICT_MODE_TYPE;
+                var Suspense = REACT_SUSPENSE_TYPE;
+                var hasWarnedAboutDeprecatedIsAsyncMode = false;
+                function isAsyncMode(object) {
+                    {
+                        if (!hasWarnedAboutDeprecatedIsAsyncMode) {
+                            hasWarnedAboutDeprecatedIsAsyncMode = true;
+                            console["warn"]("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.");
+                        }
+                    }
+                    return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
+                }
+                function isConcurrentMode(object) {
+                    return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
+                }
+                function isContextConsumer2(object) {
+                    return typeOf(object) === REACT_CONTEXT_TYPE;
+                }
+                function isContextProvider(object) {
+                    return typeOf(object) === REACT_PROVIDER_TYPE;
+                }
+                function isElement(object) {
+                    return typeof object === "object" && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
+                }
+                function isForwardRef(object) {
+                    return typeOf(object) === REACT_FORWARD_REF_TYPE;
+                }
+                function isFragment(object) {
+                    return typeOf(object) === REACT_FRAGMENT_TYPE;
+                }
+                function isLazy(object) {
+                    return typeOf(object) === REACT_LAZY_TYPE;
+                }
+                function isMemo(object) {
+                    return typeOf(object) === REACT_MEMO_TYPE;
+                }
+                function isPortal(object) {
+                    return typeOf(object) === REACT_PORTAL_TYPE;
+                }
+                function isProfiler(object) {
+                    return typeOf(object) === REACT_PROFILER_TYPE;
+                }
+                function isStrictMode(object) {
+                    return typeOf(object) === REACT_STRICT_MODE_TYPE;
+                }
+                function isSuspense(object) {
+                    return typeOf(object) === REACT_SUSPENSE_TYPE;
+                }
+                exports.AsyncMode = AsyncMode;
+                exports.ConcurrentMode = ConcurrentMode;
+                exports.ContextConsumer = ContextConsumer;
+                exports.ContextProvider = ContextProvider;
+                exports.Element = Element;
+                exports.ForwardRef = ForwardRef;
+                exports.Fragment = Fragment;
+                exports.Lazy = Lazy;
+                exports.Memo = Memo;
+                exports.Portal = Portal;
+                exports.Profiler = Profiler;
+                exports.StrictMode = StrictMode;
+                exports.Suspense = Suspense;
+                exports.isAsyncMode = isAsyncMode;
+                exports.isConcurrentMode = isConcurrentMode;
+                exports.isContextConsumer = isContextConsumer2;
+                exports.isContextProvider = isContextProvider;
+                exports.isElement = isElement;
+                exports.isForwardRef = isForwardRef;
+                exports.isFragment = isFragment;
+                exports.isLazy = isLazy;
+                exports.isMemo = isMemo;
+                exports.isPortal = isPortal;
+                exports.isProfiler = isProfiler;
+                exports.isStrictMode = isStrictMode;
+                exports.isSuspense = isSuspense;
+                exports.isValidElementType = isValidElementType2;
+                exports.typeOf = typeOf;
+            })();
+        }
+    }
+});
+// node_modules/react-is/index.js
+var require_react_is = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__commonJS)({
+    "node_modules/react-is/index.js" (exports, module) {
+        "use strict";
+        if (false) {} else {
+            module.exports = require_react_is_development();
+        }
+    }
+});
+// node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js
+var require_hoist_non_react_statics_cjs = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__commonJS)({
+    "node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js" (exports, module) {
+        "use strict";
+        var reactIs = require_react_is();
+        var REACT_STATICS = {
+            childContextTypes: true,
+            contextType: true,
+            contextTypes: true,
+            defaultProps: true,
+            displayName: true,
+            getDefaultProps: true,
+            getDerivedStateFromError: true,
+            getDerivedStateFromProps: true,
+            mixins: true,
+            propTypes: true,
+            type: true
+        };
+        var KNOWN_STATICS = {
+            name: true,
+            length: true,
+            prototype: true,
+            caller: true,
+            callee: true,
+            arguments: true,
+            arity: true
+        };
+        var FORWARD_REF_STATICS = {
+            "$$typeof": true,
+            render: true,
+            defaultProps: true,
+            displayName: true,
+            propTypes: true
+        };
+        var MEMO_STATICS = {
+            "$$typeof": true,
+            compare: true,
+            defaultProps: true,
+            displayName: true,
+            propTypes: true,
+            type: true
+        };
+        var TYPE_STATICS = {};
+        TYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;
+        TYPE_STATICS[reactIs.Memo] = MEMO_STATICS;
+        function getStatics(component) {
+            if (reactIs.isMemo(component)) {
+                return MEMO_STATICS;
+            }
+            return TYPE_STATICS[component["$$typeof"]] || REACT_STATICS;
+        }
+        var defineProperty = Object.defineProperty;
+        var getOwnPropertyNames = Object.getOwnPropertyNames;
+        var getOwnPropertySymbols = Object.getOwnPropertySymbols;
+        var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
+        var getPrototypeOf = Object.getPrototypeOf;
+        var objectPrototype = Object.prototype;
+        function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {
+            if (typeof sourceComponent !== "string") {
+                if (objectPrototype) {
+                    var inheritedComponent = getPrototypeOf(sourceComponent);
+                    if (inheritedComponent && inheritedComponent !== objectPrototype) {
+                        hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);
+                    }
+                }
+                var keys = getOwnPropertyNames(sourceComponent);
+                if (getOwnPropertySymbols) {
+                    keys = keys.concat(getOwnPropertySymbols(sourceComponent));
+                }
+                var targetStatics = getStatics(targetComponent);
+                var sourceStatics = getStatics(sourceComponent);
+                for(var i = 0; i < keys.length; ++i){
+                    var key = keys[i];
+                    if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {
+                        var descriptor = getOwnPropertyDescriptor(sourceComponent, key);
+                        try {
+                            defineProperty(targetComponent, key, descriptor);
+                        } catch (e) {}
+                    }
+                }
+            }
+            return targetComponent;
+        }
+        module.exports = hoistNonReactStatics;
+    }
+});
+// node_modules/react-redux/node_modules/react-is/cjs/react-is.development.js
+var require_react_is_development2 = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__commonJS)({
+    "node_modules/react-redux/node_modules/react-is/cjs/react-is.development.js" (exports) {
+        "use strict";
+        if (true) {
+            (function() {
+                "use strict";
+                var REACT_ELEMENT_TYPE = Symbol.for("react.element");
+                var REACT_PORTAL_TYPE = Symbol.for("react.portal");
+                var REACT_FRAGMENT_TYPE = Symbol.for("react.fragment");
+                var REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode");
+                var REACT_PROFILER_TYPE = Symbol.for("react.profiler");
+                var REACT_PROVIDER_TYPE = Symbol.for("react.provider");
+                var REACT_CONTEXT_TYPE = Symbol.for("react.context");
+                var REACT_SERVER_CONTEXT_TYPE = Symbol.for("react.server_context");
+                var REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref");
+                var REACT_SUSPENSE_TYPE = Symbol.for("react.suspense");
+                var REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list");
+                var REACT_MEMO_TYPE = Symbol.for("react.memo");
+                var REACT_LAZY_TYPE = Symbol.for("react.lazy");
+                var REACT_OFFSCREEN_TYPE = Symbol.for("react.offscreen");
+                var enableScopeAPI = false;
+                var enableCacheElement = false;
+                var enableTransitionTracing = false;
+                var enableLegacyHidden = false;
+                var enableDebugTracing = false;
+                var REACT_MODULE_REFERENCE;
+                {
+                    REACT_MODULE_REFERENCE = Symbol.for("react.module.reference");
+                }
+                function isValidElementType2(type) {
+                    if (typeof type === "string" || typeof type === "function") {
+                        return true;
+                    }
+                    if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || enableCacheElement || enableTransitionTracing) {
+                        return true;
+                    }
+                    if (typeof type === "object" && type !== null) {
+                        if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== void 0) {
+                            return true;
+                        }
+                    }
+                    return false;
+                }
+                function typeOf(object) {
+                    if (typeof object === "object" && object !== null) {
+                        var $$typeof = object.$$typeof;
+                        switch($$typeof){
+                            case REACT_ELEMENT_TYPE:
+                                var type = object.type;
+                                switch(type){
+                                    case REACT_FRAGMENT_TYPE:
+                                    case REACT_PROFILER_TYPE:
+                                    case REACT_STRICT_MODE_TYPE:
+                                    case REACT_SUSPENSE_TYPE:
+                                    case REACT_SUSPENSE_LIST_TYPE:
+                                        return type;
+                                    default:
+                                        var $$typeofType = type && type.$$typeof;
+                                        switch($$typeofType){
+                                            case REACT_SERVER_CONTEXT_TYPE:
+                                            case REACT_CONTEXT_TYPE:
+                                            case REACT_FORWARD_REF_TYPE:
+                                            case REACT_LAZY_TYPE:
+                                            case REACT_MEMO_TYPE:
+                                            case REACT_PROVIDER_TYPE:
+                                                return $$typeofType;
+                                            default:
+                                                return $$typeof;
+                                        }
+                                }
+                            case REACT_PORTAL_TYPE:
+                                return $$typeof;
+                        }
+                    }
+                    return void 0;
+                }
+                var ContextConsumer = REACT_CONTEXT_TYPE;
+                var ContextProvider = REACT_PROVIDER_TYPE;
+                var Element = REACT_ELEMENT_TYPE;
+                var ForwardRef = REACT_FORWARD_REF_TYPE;
+                var Fragment = REACT_FRAGMENT_TYPE;
+                var Lazy = REACT_LAZY_TYPE;
+                var Memo = REACT_MEMO_TYPE;
+                var Portal = REACT_PORTAL_TYPE;
+                var Profiler = REACT_PROFILER_TYPE;
+                var StrictMode = REACT_STRICT_MODE_TYPE;
+                var Suspense = REACT_SUSPENSE_TYPE;
+                var SuspenseList = REACT_SUSPENSE_LIST_TYPE;
+                var hasWarnedAboutDeprecatedIsAsyncMode = false;
+                var hasWarnedAboutDeprecatedIsConcurrentMode = false;
+                function isAsyncMode(object) {
+                    {
+                        if (!hasWarnedAboutDeprecatedIsAsyncMode) {
+                            hasWarnedAboutDeprecatedIsAsyncMode = true;
+                            console["warn"]("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 18+.");
+                        }
+                    }
+                    return false;
+                }
+                function isConcurrentMode(object) {
+                    {
+                        if (!hasWarnedAboutDeprecatedIsConcurrentMode) {
+                            hasWarnedAboutDeprecatedIsConcurrentMode = true;
+                            console["warn"]("The ReactIs.isConcurrentMode() alias has been deprecated, and will be removed in React 18+.");
+                        }
+                    }
+                    return false;
+                }
+                function isContextConsumer2(object) {
+                    return typeOf(object) === REACT_CONTEXT_TYPE;
+                }
+                function isContextProvider(object) {
+                    return typeOf(object) === REACT_PROVIDER_TYPE;
+                }
+                function isElement(object) {
+                    return typeof object === "object" && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
+                }
+                function isForwardRef(object) {
+                    return typeOf(object) === REACT_FORWARD_REF_TYPE;
+                }
+                function isFragment(object) {
+                    return typeOf(object) === REACT_FRAGMENT_TYPE;
+                }
+                function isLazy(object) {
+                    return typeOf(object) === REACT_LAZY_TYPE;
+                }
+                function isMemo(object) {
+                    return typeOf(object) === REACT_MEMO_TYPE;
+                }
+                function isPortal(object) {
+                    return typeOf(object) === REACT_PORTAL_TYPE;
+                }
+                function isProfiler(object) {
+                    return typeOf(object) === REACT_PROFILER_TYPE;
+                }
+                function isStrictMode(object) {
+                    return typeOf(object) === REACT_STRICT_MODE_TYPE;
+                }
+                function isSuspense(object) {
+                    return typeOf(object) === REACT_SUSPENSE_TYPE;
+                }
+                function isSuspenseList(object) {
+                    return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;
+                }
+                exports.ContextConsumer = ContextConsumer;
+                exports.ContextProvider = ContextProvider;
+                exports.Element = Element;
+                exports.ForwardRef = ForwardRef;
+                exports.Fragment = Fragment;
+                exports.Lazy = Lazy;
+                exports.Memo = Memo;
+                exports.Portal = Portal;
+                exports.Profiler = Profiler;
+                exports.StrictMode = StrictMode;
+                exports.Suspense = Suspense;
+                exports.SuspenseList = SuspenseList;
+                exports.isAsyncMode = isAsyncMode;
+                exports.isConcurrentMode = isConcurrentMode;
+                exports.isContextConsumer = isContextConsumer2;
+                exports.isContextProvider = isContextProvider;
+                exports.isElement = isElement;
+                exports.isForwardRef = isForwardRef;
+                exports.isFragment = isFragment;
+                exports.isLazy = isLazy;
+                exports.isMemo = isMemo;
+                exports.isPortal = isPortal;
+                exports.isProfiler = isProfiler;
+                exports.isStrictMode = isStrictMode;
+                exports.isSuspense = isSuspense;
+                exports.isSuspenseList = isSuspenseList;
+                exports.isValidElementType = isValidElementType2;
+                exports.typeOf = typeOf;
+            })();
+        }
+    }
+});
+// node_modules/react-redux/node_modules/react-is/index.js
+var require_react_is2 = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__commonJS)({
+    "node_modules/react-redux/node_modules/react-is/index.js" (exports, module) {
+        "use strict";
+        if (false) {} else {
+            module.exports = require_react_is_development2();
+        }
+    }
+});
+// node_modules/react-redux/es/index.js
+var import_shim = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__toESM)(require_shim());
+var import_with_selector = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__toESM)(require_with_selector());
+// node_modules/react-redux/es/utils/batch.js
+function defaultNoopBatch(callback) {
+    callback();
+}
+var batch = defaultNoopBatch;
+var setBatch = (newBatch)=>batch = newBatch;
+var getBatch = ()=>batch;
+// node_modules/react-redux/es/hooks/useSelector.js
+var import_react2 = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__toESM)((0,_chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_3__.require_react_production_min)());
+// node_modules/react-redux/es/hooks/useReduxContext.js
+var import_react = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__toESM)((0,_chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_3__.require_react_production_min)());
+// node_modules/react-redux/es/components/Context.js
+var React = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__toESM)((0,_chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_3__.require_react_production_min)());
+var ContextKey = Symbol.for(`react-redux-context`);
+var gT = typeof globalThis !== "undefined" ? globalThis : {};
+function getContext() {
+    var _gT$ContextKey;
+    if (!React.createContext) return {};
+    const contextMap = (_gT$ContextKey = gT[ContextKey]) != null ? _gT$ContextKey : gT[ContextKey] = /* @__PURE__ */ new Map();
+    let realContext = contextMap.get(React.createContext);
+    if (!realContext) {
+        realContext = React.createContext(null);
+        if (true) {
+            realContext.displayName = "ReactRedux";
+        }
+        contextMap.set(React.createContext, realContext);
+    }
+    return realContext;
+}
+var ReactReduxContext = getContext();
+// node_modules/react-redux/es/hooks/useReduxContext.js
+function createReduxContextHook(context = ReactReduxContext) {
+    return function useReduxContext2() {
+        const contextValue = (0, import_react.useContext)(context);
+        if (!contextValue) {
+            throw new Error("could not find react-redux context value; please ensure the component is wrapped in a <Provider>");
+        }
+        return contextValue;
+    };
+}
+var useReduxContext = createReduxContextHook();
+// node_modules/react-redux/es/utils/useSyncExternalStore.js
+var notInitialized = ()=>{
+    throw new Error("uSES not initialized!");
+};
+// node_modules/react-redux/es/hooks/useSelector.js
+var useSyncExternalStoreWithSelector = notInitialized;
+var initializeUseSelector = (fn)=>{
+    useSyncExternalStoreWithSelector = fn;
+};
+var refEquality = (a, b)=>a === b;
+function createSelectorHook(context = ReactReduxContext) {
+    const useReduxContext2 = context === ReactReduxContext ? useReduxContext : createReduxContextHook(context);
+    return function useSelector2(selector, equalityFnOrOptions = {}) {
+        const { equalityFn =refEquality , stabilityCheck =void 0 , noopCheck =void 0  } = typeof equalityFnOrOptions === "function" ? {
+            equalityFn: equalityFnOrOptions
+        } : equalityFnOrOptions;
+        if (true) {
+            if (!selector) {
+                throw new Error(`You must pass a selector to useSelector`);
+            }
+            if (typeof selector !== "function") {
+                throw new Error(`You must pass a function as a selector to useSelector`);
+            }
+            if (typeof equalityFn !== "function") {
+                throw new Error(`You must pass a function as an equality function to useSelector`);
+            }
+        }
+        const { store , subscription , getServerState , stabilityCheck: globalStabilityCheck , noopCheck: globalNoopCheck  } = useReduxContext2();
+        const firstRun = (0, import_react2.useRef)(true);
+        const wrappedSelector = (0, import_react2.useCallback)({
+            [selector.name] (state) {
+                const selected = selector(state);
+                if (true) {
+                    const finalStabilityCheck = typeof stabilityCheck === "undefined" ? globalStabilityCheck : stabilityCheck;
+                    if (finalStabilityCheck === "always" || finalStabilityCheck === "once" && firstRun.current) {
+                        const toCompare = selector(state);
+                        if (!equalityFn(selected, toCompare)) {
+                            let stack = void 0;
+                            try {
+                                throw new Error();
+                            } catch (e) {
+                                ;
+                                ({ stack  } = e);
+                            }
+                            console.warn("Selector " + (selector.name || "unknown") + " returned a different result when called with the same parameters. This can lead to unnecessary rerenders.\nSelectors that return a new reference (such as an object or an array) should be memoized: https://redux.js.org/usage/deriving-data-selectors#optimizing-selectors-with-memoization", {
+                                state,
+                                selected,
+                                selected2: toCompare,
+                                stack
+                            });
+                        }
+                    }
+                    const finalNoopCheck = typeof noopCheck === "undefined" ? globalNoopCheck : noopCheck;
+                    if (finalNoopCheck === "always" || finalNoopCheck === "once" && firstRun.current) {
+                        if (selected === state) {
+                            let stack1 = void 0;
+                            try {
+                                throw new Error();
+                            } catch (e1) {
+                                ;
+                                ({ stack: stack1  } = e1);
+                            }
+                            console.warn("Selector " + (selector.name || "unknown") + " returned the root state when called. This can lead to unnecessary rerenders.\nSelectors that return the entire state are almost certainly a mistake, as they will cause a rerender whenever *anything* in state changes.", {
+                                stack: stack1
+                            });
+                        }
+                    }
+                    if (firstRun.current) firstRun.current = false;
+                }
+                return selected;
+            }
+        }[selector.name], [
+            selector,
+            globalStabilityCheck,
+            stabilityCheck
+        ]);
+        const selectedState = useSyncExternalStoreWithSelector(subscription.addNestedSub, store.getState, getServerState || store.getState, wrappedSelector, equalityFn);
+        (0, import_react2.useDebugValue)(selectedState);
+        return selectedState;
+    };
+}
+var useSelector = createSelectorHook();
+// node_modules/react-redux/node_modules/@babel/runtime/helpers/esm/extends.js
+function _extends() {
+    _extends = Object.assign ? Object.assign.bind() : function(target) {
+        for(var i = 1; i < arguments.length; i++){
+            var source = arguments[i];
+            for(var key in source){
+                if (Object.prototype.hasOwnProperty.call(source, key)) {
+                    target[key] = source[key];
+                }
+            }
+        }
+        return target;
+    };
+    return _extends.apply(this, arguments);
+}
+// node_modules/react-redux/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
+function _objectWithoutPropertiesLoose(source, excluded) {
+    if (source == null) return {};
+    var target = {};
+    var sourceKeys = Object.keys(source);
+    var key, i;
+    for(i = 0; i < sourceKeys.length; i++){
+        key = sourceKeys[i];
+        if (excluded.indexOf(key) >= 0) continue;
+        target[key] = source[key];
+    }
+    return target;
+}
+// node_modules/react-redux/es/components/connect.js
+var import_hoist_non_react_statics = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__toESM)(require_hoist_non_react_statics_cjs());
+var React3 = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__toESM)((0,_chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_3__.require_react_production_min)());
+var import_react_is = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__toESM)(require_react_is2());
+// node_modules/react-redux/es/utils/warning.js
+function warning(message) {
+    if (typeof console !== "undefined" && typeof console.error === "function") {
+        console.error(message);
+    }
+    try {
+        throw new Error(message);
+    } catch (e) {}
+}
+// node_modules/react-redux/es/connect/verifySubselectors.js
+function verify(selector, methodName) {
+    if (!selector) {
+        throw new Error(`Unexpected value for ${methodName} in connect.`);
+    } else if (methodName === "mapStateToProps" || methodName === "mapDispatchToProps") {
+        if (!Object.prototype.hasOwnProperty.call(selector, "dependsOnOwnProps")) {
+            warning(`The selector for ${methodName} of connect did not specify a value for dependsOnOwnProps.`);
+        }
+    }
+}
+function verifySubselectors(mapStateToProps, mapDispatchToProps, mergeProps) {
+    verify(mapStateToProps, "mapStateToProps");
+    verify(mapDispatchToProps, "mapDispatchToProps");
+    verify(mergeProps, "mergeProps");
+}
+// node_modules/react-redux/es/connect/selectorFactory.js
+var _excluded = [
+    "initMapStateToProps",
+    "initMapDispatchToProps",
+    "initMergeProps"
+];
+function pureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, { areStatesEqual , areOwnPropsEqual , areStatePropsEqual  }) {
+    let hasRunAtLeastOnce = false;
+    let state;
+    let ownProps;
+    let stateProps;
+    let dispatchProps;
+    let mergedProps;
+    function handleFirstCall(firstState, firstOwnProps) {
+        state = firstState;
+        ownProps = firstOwnProps;
+        stateProps = mapStateToProps(state, ownProps);
+        dispatchProps = mapDispatchToProps(dispatch, ownProps);
+        mergedProps = mergeProps(stateProps, dispatchProps, ownProps);
+        hasRunAtLeastOnce = true;
+        return mergedProps;
+    }
+    function handleNewPropsAndNewState() {
+        stateProps = mapStateToProps(state, ownProps);
+        if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);
+        mergedProps = mergeProps(stateProps, dispatchProps, ownProps);
+        return mergedProps;
+    }
+    function handleNewProps() {
+        if (mapStateToProps.dependsOnOwnProps) stateProps = mapStateToProps(state, ownProps);
+        if (mapDispatchToProps.dependsOnOwnProps) dispatchProps = mapDispatchToProps(dispatch, ownProps);
+        mergedProps = mergeProps(stateProps, dispatchProps, ownProps);
+        return mergedProps;
+    }
+    function handleNewState() {
+        const nextStateProps = mapStateToProps(state, ownProps);
+        const statePropsChanged = !areStatePropsEqual(nextStateProps, stateProps);
+        stateProps = nextStateProps;
+        if (statePropsChanged) mergedProps = mergeProps(stateProps, dispatchProps, ownProps);
+        return mergedProps;
+    }
+    function handleSubsequentCalls(nextState, nextOwnProps) {
+        const propsChanged = !areOwnPropsEqual(nextOwnProps, ownProps);
+        const stateChanged = !areStatesEqual(nextState, state, nextOwnProps, ownProps);
+        state = nextState;
+        ownProps = nextOwnProps;
+        if (propsChanged && stateChanged) return handleNewPropsAndNewState();
+        if (propsChanged) return handleNewProps();
+        if (stateChanged) return handleNewState();
+        return mergedProps;
+    }
+    return function pureFinalPropsSelector(nextState, nextOwnProps) {
+        return hasRunAtLeastOnce ? handleSubsequentCalls(nextState, nextOwnProps) : handleFirstCall(nextState, nextOwnProps);
+    };
+}
+function finalPropsSelectorFactory(dispatch, _ref) {
+    let { initMapStateToProps , initMapDispatchToProps , initMergeProps  } = _ref, options = _objectWithoutPropertiesLoose(_ref, _excluded);
+    const mapStateToProps = initMapStateToProps(dispatch, options);
+    const mapDispatchToProps = initMapDispatchToProps(dispatch, options);
+    const mergeProps = initMergeProps(dispatch, options);
+    if (true) {
+        verifySubselectors(mapStateToProps, mapDispatchToProps, mergeProps);
+    }
+    return pureFinalPropsSelectorFactory(mapStateToProps, mapDispatchToProps, mergeProps, dispatch, options);
+}
+// node_modules/react-redux/es/utils/bindActionCreators.js
+function bindActionCreators(actionCreators, dispatch) {
+    const boundActionCreators = {};
+    for(const key in actionCreators){
+        const actionCreator = actionCreators[key];
+        if (typeof actionCreator === "function") {
+            boundActionCreators[key] = (...args)=>dispatch(actionCreator(...args));
+        }
+    }
+    return boundActionCreators;
+}
+// node_modules/react-redux/es/utils/isPlainObject.js
+function isPlainObject(obj) {
+    if (typeof obj !== "object" || obj === null) return false;
+    let proto = Object.getPrototypeOf(obj);
+    if (proto === null) return true;
+    let baseProto = proto;
+    while(Object.getPrototypeOf(baseProto) !== null){
+        baseProto = Object.getPrototypeOf(baseProto);
+    }
+    return proto === baseProto;
+}
+// node_modules/react-redux/es/utils/verifyPlainObject.js
+function verifyPlainObject(value, displayName, methodName) {
+    if (!isPlainObject(value)) {
+        warning(`${methodName}() in ${displayName} must return a plain object. Instead received ${value}.`);
+    }
+}
+// node_modules/react-redux/es/connect/wrapMapToProps.js
+function wrapMapToPropsConstant(getConstant) {
+    return function initConstantSelector(dispatch) {
+        const constant = getConstant(dispatch);
+        function constantSelector() {
+            return constant;
+        }
+        constantSelector.dependsOnOwnProps = false;
+        return constantSelector;
+    };
+}
+function getDependsOnOwnProps(mapToProps) {
+    return mapToProps.dependsOnOwnProps ? Boolean(mapToProps.dependsOnOwnProps) : mapToProps.length !== 1;
+}
+function wrapMapToPropsFunc(mapToProps, methodName) {
+    return function initProxySelector(dispatch, { displayName  }) {
+        const proxy = function mapToPropsProxy(stateOrDispatch, ownProps) {
+            return proxy.dependsOnOwnProps ? proxy.mapToProps(stateOrDispatch, ownProps) : proxy.mapToProps(stateOrDispatch, void 0);
+        };
+        proxy.dependsOnOwnProps = true;
+        proxy.mapToProps = function detectFactoryAndVerify(stateOrDispatch, ownProps) {
+            proxy.mapToProps = mapToProps;
+            proxy.dependsOnOwnProps = getDependsOnOwnProps(mapToProps);
+            let props = proxy(stateOrDispatch, ownProps);
+            if (typeof props === "function") {
+                proxy.mapToProps = props;
+                proxy.dependsOnOwnProps = getDependsOnOwnProps(props);
+                props = proxy(stateOrDispatch, ownProps);
+            }
+            if (true) verifyPlainObject(props, displayName, methodName);
+            return props;
+        };
+        return proxy;
+    };
+}
+// node_modules/react-redux/es/connect/invalidArgFactory.js
+function createInvalidArgFactory(arg, name) {
+    return (dispatch, options)=>{
+        throw new Error(`Invalid value of type ${typeof arg} for ${name} argument when connecting component ${options.wrappedComponentName}.`);
+    };
+}
+// node_modules/react-redux/es/connect/mapDispatchToProps.js
+function mapDispatchToPropsFactory(mapDispatchToProps) {
+    return mapDispatchToProps && typeof mapDispatchToProps === "object" ? wrapMapToPropsConstant((dispatch)=>bindActionCreators(mapDispatchToProps, dispatch)) : !mapDispatchToProps ? wrapMapToPropsConstant((dispatch)=>({
+            dispatch
+        })) : typeof mapDispatchToProps === "function" ? wrapMapToPropsFunc(mapDispatchToProps, "mapDispatchToProps") : createInvalidArgFactory(mapDispatchToProps, "mapDispatchToProps");
+}
+// node_modules/react-redux/es/connect/mapStateToProps.js
+function mapStateToPropsFactory(mapStateToProps) {
+    return !mapStateToProps ? wrapMapToPropsConstant(()=>({})) : typeof mapStateToProps === "function" ? wrapMapToPropsFunc(mapStateToProps, "mapStateToProps") : createInvalidArgFactory(mapStateToProps, "mapStateToProps");
+}
+// node_modules/react-redux/es/connect/mergeProps.js
+function defaultMergeProps(stateProps, dispatchProps, ownProps) {
+    return _extends({}, ownProps, stateProps, dispatchProps);
+}
+function wrapMergePropsFunc(mergeProps) {
+    return function initMergePropsProxy(dispatch, { displayName , areMergedPropsEqual  }) {
+        let hasRunOnce = false;
+        let mergedProps;
+        return function mergePropsProxy(stateProps, dispatchProps, ownProps) {
+            const nextMergedProps = mergeProps(stateProps, dispatchProps, ownProps);
+            if (hasRunOnce) {
+                if (!areMergedPropsEqual(nextMergedProps, mergedProps)) mergedProps = nextMergedProps;
+            } else {
+                hasRunOnce = true;
+                mergedProps = nextMergedProps;
+                if (true) verifyPlainObject(mergedProps, displayName, "mergeProps");
+            }
+            return mergedProps;
+        };
+    };
+}
+function mergePropsFactory(mergeProps) {
+    return !mergeProps ? ()=>defaultMergeProps : typeof mergeProps === "function" ? wrapMergePropsFunc(mergeProps) : createInvalidArgFactory(mergeProps, "mergeProps");
+}
+// node_modules/react-redux/es/utils/Subscription.js
+function createListenerCollection() {
+    const batch2 = getBatch();
+    let first = null;
+    let last = null;
+    return {
+        clear () {
+            first = null;
+            last = null;
+        },
+        notify () {
+            batch2(()=>{
+                let listener = first;
+                while(listener){
+                    listener.callback();
+                    listener = listener.next;
+                }
+            });
+        },
+        get () {
+            let listeners = [];
+            let listener = first;
+            while(listener){
+                listeners.push(listener);
+                listener = listener.next;
+            }
+            return listeners;
+        },
+        subscribe (callback) {
+            let isSubscribed = true;
+            let listener = last = {
+                callback,
+                next: null,
+                prev: last
+            };
+            if (listener.prev) {
+                listener.prev.next = listener;
+            } else {
+                first = listener;
+            }
+            return function unsubscribe() {
+                if (!isSubscribed || first === null) return;
+                isSubscribed = false;
+                if (listener.next) {
+                    listener.next.prev = listener.prev;
+                } else {
+                    last = listener.prev;
+                }
+                if (listener.prev) {
+                    listener.prev.next = listener.next;
+                } else {
+                    first = listener.next;
+                }
+            };
+        }
+    };
+}
+var nullListeners = {
+    notify () {},
+    get: ()=>[]
+};
+function createSubscription(store, parentSub) {
+    let unsubscribe;
+    let listeners = nullListeners;
+    let subscriptionsAmount = 0;
+    let selfSubscribed = false;
+    function addNestedSub(listener) {
+        trySubscribe();
+        const cleanupListener = listeners.subscribe(listener);
+        let removed = false;
+        return ()=>{
+            if (!removed) {
+                removed = true;
+                cleanupListener();
+                tryUnsubscribe();
+            }
+        };
+    }
+    function notifyNestedSubs() {
+        listeners.notify();
+    }
+    function handleChangeWrapper() {
+        if (subscription.onStateChange) {
+            subscription.onStateChange();
+        }
+    }
+    function isSubscribed() {
+        return selfSubscribed;
+    }
+    function trySubscribe() {
+        subscriptionsAmount++;
+        if (!unsubscribe) {
+            unsubscribe = parentSub ? parentSub.addNestedSub(handleChangeWrapper) : store.subscribe(handleChangeWrapper);
+            listeners = createListenerCollection();
+        }
+    }
+    function tryUnsubscribe() {
+        subscriptionsAmount--;
+        if (unsubscribe && subscriptionsAmount === 0) {
+            unsubscribe();
+            unsubscribe = void 0;
+            listeners.clear();
+            listeners = nullListeners;
+        }
+    }
+    function trySubscribeSelf() {
+        if (!selfSubscribed) {
+            selfSubscribed = true;
+            trySubscribe();
+        }
+    }
+    function tryUnsubscribeSelf() {
+        if (selfSubscribed) {
+            selfSubscribed = false;
+            tryUnsubscribe();
+        }
+    }
+    const subscription = {
+        addNestedSub,
+        notifyNestedSubs,
+        handleChangeWrapper,
+        isSubscribed,
+        trySubscribe: trySubscribeSelf,
+        tryUnsubscribe: tryUnsubscribeSelf,
+        getListeners: ()=>listeners
+    };
+    return subscription;
+}
+// node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js
+var React2 = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__toESM)((0,_chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_3__.require_react_production_min)());
+var canUseDOM = !!(typeof window !== "undefined" && typeof window.document !== "undefined" && typeof window.document.createElement !== "undefined");
+var useIsomorphicLayoutEffect = canUseDOM ? React2.useLayoutEffect : React2.useEffect;
+// node_modules/react-redux/es/utils/shallowEqual.js
+function is(x, y) {
+    if (x === y) {
+        return x !== 0 || y !== 0 || 1 / x === 1 / y;
+    } else {
+        return x !== x && y !== y;
+    }
+}
+function shallowEqual(objA, objB) {
+    if (is(objA, objB)) return true;
+    if (typeof objA !== "object" || objA === null || typeof objB !== "object" || objB === null) {
+        return false;
+    }
+    const keysA = Object.keys(objA);
+    const keysB = Object.keys(objB);
+    if (keysA.length !== keysB.length) return false;
+    for(let i = 0; i < keysA.length; i++){
+        if (!Object.prototype.hasOwnProperty.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {
+            return false;
+        }
+    }
+    return true;
+}
+// node_modules/react-redux/es/components/connect.js
+var _excluded2 = [
+    "reactReduxForwardedRef"
+];
+var useSyncExternalStore = notInitialized;
+var initializeConnect = (fn)=>{
+    useSyncExternalStore = fn;
+};
+var NO_SUBSCRIPTION_ARRAY = [
+    null,
+    null
+];
+var stringifyComponent = (Comp)=>{
+    try {
+        return JSON.stringify(Comp);
+    } catch (err) {
+        return String(Comp);
+    }
+};
+function useIsomorphicLayoutEffectWithArgs(effectFunc, effectArgs, dependencies) {
+    useIsomorphicLayoutEffect(()=>effectFunc(...effectArgs), dependencies);
+}
+function captureWrapperProps(lastWrapperProps, lastChildProps, renderIsScheduled, wrapperProps, childPropsFromStoreUpdate, notifyNestedSubs) {
+    lastWrapperProps.current = wrapperProps;
+    renderIsScheduled.current = false;
+    if (childPropsFromStoreUpdate.current) {
+        childPropsFromStoreUpdate.current = null;
+        notifyNestedSubs();
+    }
+}
+function subscribeUpdates(shouldHandleStateChanges, store, subscription, childPropsSelector, lastWrapperProps, lastChildProps, renderIsScheduled, isMounted, childPropsFromStoreUpdate, notifyNestedSubs, additionalSubscribeListener) {
+    if (!shouldHandleStateChanges) return ()=>{};
+    let didUnsubscribe = false;
+    let lastThrownError = null;
+    const checkForUpdates = ()=>{
+        if (didUnsubscribe || !isMounted.current) {
+            return;
+        }
+        const latestStoreState = store.getState();
+        let newChildProps, error;
+        try {
+            newChildProps = childPropsSelector(latestStoreState, lastWrapperProps.current);
+        } catch (e) {
+            error = e;
+            lastThrownError = e;
+        }
+        if (!error) {
+            lastThrownError = null;
+        }
+        if (newChildProps === lastChildProps.current) {
+            if (!renderIsScheduled.current) {
+                notifyNestedSubs();
+            }
+        } else {
+            lastChildProps.current = newChildProps;
+            childPropsFromStoreUpdate.current = newChildProps;
+            renderIsScheduled.current = true;
+            additionalSubscribeListener();
+        }
+    };
+    subscription.onStateChange = checkForUpdates;
+    subscription.trySubscribe();
+    checkForUpdates();
+    const unsubscribeWrapper = ()=>{
+        didUnsubscribe = true;
+        subscription.tryUnsubscribe();
+        subscription.onStateChange = null;
+        if (lastThrownError) {
+            throw lastThrownError;
+        }
+    };
+    return unsubscribeWrapper;
+}
+function strictEqual(a, b) {
+    return a === b;
+}
+var hasWarnedAboutDeprecatedPureOption = false;
+function connect(mapStateToProps, mapDispatchToProps, mergeProps, { pure , areStatesEqual =strictEqual , areOwnPropsEqual =shallowEqual , areStatePropsEqual =shallowEqual , areMergedPropsEqual =shallowEqual , forwardRef: forwardRef2 = false , context =ReactReduxContext  } = {}) {
+    if (true) {
+        if (pure !== void 0 && !hasWarnedAboutDeprecatedPureOption) {
+            hasWarnedAboutDeprecatedPureOption = true;
+            warning('The `pure` option has been removed. `connect` is now always a "pure/memoized" component');
+        }
+    }
+    const Context = context;
+    const initMapStateToProps = mapStateToPropsFactory(mapStateToProps);
+    const initMapDispatchToProps = mapDispatchToPropsFactory(mapDispatchToProps);
+    const initMergeProps = mergePropsFactory(mergeProps);
+    const shouldHandleStateChanges = Boolean(mapStateToProps);
+    const wrapWithConnect = (WrappedComponent)=>{
+        if (!(0, import_react_is.isValidElementType)(WrappedComponent)) {
+            throw new Error(`You must pass a component to the function returned by connect. Instead received ${stringifyComponent(WrappedComponent)}`);
+        }
+        const wrappedComponentName = WrappedComponent.displayName || WrappedComponent.name || "Component";
+        const displayName = `Connect(${wrappedComponentName})`;
+        const selectorFactoryOptions = {
+            shouldHandleStateChanges,
+            displayName,
+            wrappedComponentName,
+            WrappedComponent,
+            initMapStateToProps,
+            initMapDispatchToProps,
+            initMergeProps,
+            areStatesEqual,
+            areStatePropsEqual,
+            areOwnPropsEqual,
+            areMergedPropsEqual
+        };
+        function ConnectFunction(props) {
+            const [propsContext, reactReduxForwardedRef, wrapperProps] = React3.useMemo(()=>{
+                const { reactReduxForwardedRef: reactReduxForwardedRef2  } = props, wrapperProps2 = _objectWithoutPropertiesLoose(props, _excluded2);
+                return [
+                    props.context,
+                    reactReduxForwardedRef2,
+                    wrapperProps2
+                ];
+            }, [
+                props
+            ]);
+            const ContextToUse = React3.useMemo(()=>{
+                return propsContext && propsContext.Consumer && (0, import_react_is.isContextConsumer)(React3.createElement(propsContext.Consumer, null)) ? propsContext : Context;
+            }, [
+                propsContext,
+                Context
+            ]);
+            const contextValue = React3.useContext(ContextToUse);
+            const didStoreComeFromProps = Boolean(props.store) && Boolean(props.store.getState) && Boolean(props.store.dispatch);
+            const didStoreComeFromContext = Boolean(contextValue) && Boolean(contextValue.store);
+            if (!didStoreComeFromProps && !didStoreComeFromContext) {
+                throw new Error(`Could not find "store" in the context of "${displayName}". Either wrap the root component in a <Provider>, or pass a custom React context provider to <Provider> and the corresponding React context consumer to ${displayName} in connect options.`);
+            }
+            const store = didStoreComeFromProps ? props.store : contextValue.store;
+            const getServerState = didStoreComeFromContext ? contextValue.getServerState : store.getState;
+            const childPropsSelector = React3.useMemo(()=>{
+                return finalPropsSelectorFactory(store.dispatch, selectorFactoryOptions);
+            }, [
+                store
+            ]);
+            const [subscription, notifyNestedSubs] = React3.useMemo(()=>{
+                if (!shouldHandleStateChanges) return NO_SUBSCRIPTION_ARRAY;
+                const subscription2 = createSubscription(store, didStoreComeFromProps ? void 0 : contextValue.subscription);
+                const notifyNestedSubs2 = subscription2.notifyNestedSubs.bind(subscription2);
+                return [
+                    subscription2,
+                    notifyNestedSubs2
+                ];
+            }, [
+                store,
+                didStoreComeFromProps,
+                contextValue
+            ]);
+            const overriddenContextValue = React3.useMemo(()=>{
+                if (didStoreComeFromProps) {
+                    return contextValue;
+                }
+                return _extends({}, contextValue, {
+                    subscription
+                });
+            }, [
+                didStoreComeFromProps,
+                contextValue,
+                subscription
+            ]);
+            const lastChildProps = React3.useRef();
+            const lastWrapperProps = React3.useRef(wrapperProps);
+            const childPropsFromStoreUpdate = React3.useRef();
+            const renderIsScheduled = React3.useRef(false);
+            const isProcessingDispatch = React3.useRef(false);
+            const isMounted = React3.useRef(false);
+            const latestSubscriptionCallbackError = React3.useRef();
+            useIsomorphicLayoutEffect(()=>{
+                isMounted.current = true;
+                return ()=>{
+                    isMounted.current = false;
+                };
+            }, []);
+            const actualChildPropsSelector = React3.useMemo(()=>{
+                const selector = ()=>{
+                    if (childPropsFromStoreUpdate.current && wrapperProps === lastWrapperProps.current) {
+                        return childPropsFromStoreUpdate.current;
+                    }
+                    return childPropsSelector(store.getState(), wrapperProps);
+                };
+                return selector;
+            }, [
+                store,
+                wrapperProps
+            ]);
+            const subscribeForReact = React3.useMemo(()=>{
+                const subscribe = (reactListener)=>{
+                    if (!subscription) {
+                        return ()=>{};
+                    }
+                    return subscribeUpdates(shouldHandleStateChanges, store, subscription, childPropsSelector, lastWrapperProps, lastChildProps, renderIsScheduled, isMounted, childPropsFromStoreUpdate, notifyNestedSubs, reactListener);
+                };
+                return subscribe;
+            }, [
+                subscription
+            ]);
+            useIsomorphicLayoutEffectWithArgs(captureWrapperProps, [
+                lastWrapperProps,
+                lastChildProps,
+                renderIsScheduled,
+                wrapperProps,
+                childPropsFromStoreUpdate,
+                notifyNestedSubs
+            ]);
+            let actualChildProps;
+            try {
+                actualChildProps = useSyncExternalStore(subscribeForReact, actualChildPropsSelector, getServerState ? ()=>childPropsSelector(getServerState(), wrapperProps) : actualChildPropsSelector);
+            } catch (err) {
+                if (latestSubscriptionCallbackError.current) {
+                    ;
+                    err.message += `
+The error may be correlated with this previous error:
+${latestSubscriptionCallbackError.current.stack}
+
+`;
+                }
+                throw err;
+            }
+            useIsomorphicLayoutEffect(()=>{
+                latestSubscriptionCallbackError.current = void 0;
+                childPropsFromStoreUpdate.current = void 0;
+                lastChildProps.current = actualChildProps;
+            });
+            const renderedWrappedComponent = React3.useMemo(()=>{
+                return React3.createElement(WrappedComponent, _extends({}, actualChildProps, {
+                    ref: reactReduxForwardedRef
+                }));
+            }, [
+                reactReduxForwardedRef,
+                WrappedComponent,
+                actualChildProps
+            ]);
+            const renderedChild = React3.useMemo(()=>{
+                if (shouldHandleStateChanges) {
+                    return React3.createElement(ContextToUse.Provider, {
+                        value: overriddenContextValue
+                    }, renderedWrappedComponent);
+                }
+                return renderedWrappedComponent;
+            }, [
+                ContextToUse,
+                renderedWrappedComponent,
+                overriddenContextValue
+            ]);
+            return renderedChild;
+        }
+        const _Connect = React3.memo(ConnectFunction);
+        const Connect = _Connect;
+        Connect.WrappedComponent = WrappedComponent;
+        Connect.displayName = ConnectFunction.displayName = displayName;
+        if (forwardRef2) {
+            const _forwarded = React3.forwardRef(function forwardConnectRef(props, ref) {
+                return React3.createElement(Connect, _extends({}, props, {
+                    reactReduxForwardedRef: ref
+                }));
+            });
+            const forwarded = _forwarded;
+            forwarded.displayName = displayName;
+            forwarded.WrappedComponent = WrappedComponent;
+            return (0, import_hoist_non_react_statics.default)(forwarded, WrappedComponent);
+        }
+        return (0, import_hoist_non_react_statics.default)(Connect, WrappedComponent);
+    };
+    return wrapWithConnect;
+}
+var connect_default = connect;
+// node_modules/react-redux/es/components/Provider.js
+var React4 = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_4__.__toESM)((0,_chunk_LNJCN3VW_js__WEBPACK_IMPORTED_MODULE_3__.require_react_production_min)());
+function Provider({ store , context , children , serverState , stabilityCheck ="once" , noopCheck ="once"  }) {
+    const contextValue = React4.useMemo(()=>{
+        const subscription = createSubscription(store);
+        return {
+            store,
+            subscription,
+            getServerState: serverState ? ()=>serverState : void 0,
+            stabilityCheck,
+            noopCheck
+        };
+    }, [
+        store,
+        serverState,
+        stabilityCheck,
+        noopCheck
+    ]);
+    const previousState = React4.useMemo(()=>store.getState(), [
+        store
+    ]);
+    useIsomorphicLayoutEffect(()=>{
+        const { subscription  } = contextValue;
+        subscription.onStateChange = subscription.notifyNestedSubs;
+        subscription.trySubscribe();
+        if (previousState !== store.getState()) {
+            subscription.notifyNestedSubs();
+        }
+        return ()=>{
+            subscription.tryUnsubscribe();
+            subscription.onStateChange = void 0;
+        };
+    }, [
+        contextValue,
+        previousState
+    ]);
+    const Context = context || ReactReduxContext;
+    return React4.createElement(Context.Provider, {
+        value: contextValue
+    }, children);
+}
+var Provider_default = Provider;
+// node_modules/react-redux/es/hooks/useStore.js
+function createStoreHook(context = ReactReduxContext) {
+    const useReduxContext2 = context === ReactReduxContext ? useReduxContext : createReduxContextHook(context);
+    return function useStore2() {
+        const { store  } = useReduxContext2();
+        return store;
+    };
+}
+var useStore = createStoreHook();
+// node_modules/react-redux/es/hooks/useDispatch.js
+function createDispatchHook(context = ReactReduxContext) {
+    const useStore2 = context === ReactReduxContext ? useStore : createStoreHook(context);
+    return function useDispatch2() {
+        const store = useStore2();
+        return store.dispatch;
+    };
+}
+var useDispatch = createDispatchHook();
+// node_modules/react-redux/es/index.js
+initializeUseSelector(import_with_selector.useSyncExternalStoreWithSelector);
+initializeConnect(import_shim.useSyncExternalStore);
+setBatch(_chunk_2Y2U3MWF_js__WEBPACK_IMPORTED_MODULE_0__.unstable_batchedUpdates);
+ /**
+ * @license React
+ * react-is.development.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */  /**
+ * @license React
+ * use-sync-external-store-shim.development.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */  /**
+ * @license React
+ * use-sync-external-store-shim/with-selector.development.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */  /** @license React v16.13.1
+ * react-is.development.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */ 
+
+
+/***/ })
+
+}]);

+ 3612 - 0
dist/prebundle/vendors-node_modules_taro_weapp_prebundle_reduxjs_toolkit_js.js

@@ -0,0 +1,3612 @@
+"use strict";
+(wx["webpackJsonp"] = wx["webpackJsonp"] || []).push([["vendors-node_modules_taro_weapp_prebundle_reduxjs_toolkit_js"],{
+
+/***/ "./node_modules/.taro/weapp/prebundle/@reduxjs_toolkit.js":
+/*!****************************************************************!*\
+  !*** ./node_modules/.taro/weapp/prebundle/@reduxjs_toolkit.js ***!
+  \****************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */   EnhancerArray: function() { return /* binding */ EnhancerArray; },
+/* harmony export */   MiddlewareArray: function() { return /* binding */ MiddlewareArray; },
+/* harmony export */   SHOULD_AUTOBATCH: function() { return /* binding */ SHOULD_AUTOBATCH; },
+/* harmony export */   TaskAbortError: function() { return /* binding */ TaskAbortError; },
+/* harmony export */   __DO_NOT_USE__ActionTypes: function() { return /* binding */ ActionTypes; },
+/* harmony export */   addListener: function() { return /* binding */ addListener; },
+/* harmony export */   applyMiddleware: function() { return /* binding */ applyMiddleware; },
+/* harmony export */   autoBatchEnhancer: function() { return /* binding */ autoBatchEnhancer; },
+/* harmony export */   bindActionCreators: function() { return /* binding */ bindActionCreators; },
+/* harmony export */   clearAllListeners: function() { return /* binding */ clearAllListeners; },
+/* harmony export */   combineReducers: function() { return /* binding */ combineReducers; },
+/* harmony export */   compose: function() { return /* binding */ compose; },
+/* harmony export */   configureStore: function() { return /* binding */ configureStore; },
+/* harmony export */   createAction: function() { return /* binding */ createAction; },
+/* harmony export */   createActionCreatorInvariantMiddleware: function() { return /* binding */ createActionCreatorInvariantMiddleware; },
+/* harmony export */   createAsyncThunk: function() { return /* binding */ createAsyncThunk; },
+/* harmony export */   createDraftSafeSelector: function() { return /* binding */ createDraftSafeSelector; },
+/* harmony export */   createEntityAdapter: function() { return /* binding */ createEntityAdapter; },
+/* harmony export */   createImmutableStateInvariantMiddleware: function() { return /* binding */ createImmutableStateInvariantMiddleware; },
+/* harmony export */   createListenerMiddleware: function() { return /* binding */ createListenerMiddleware; },
+/* harmony export */   createNextState: function() { return /* binding */ immer_esm_default; },
+/* harmony export */   createReducer: function() { return /* binding */ createReducer; },
+/* harmony export */   createSelector: function() { return /* binding */ createSelector; },
+/* harmony export */   createSerializableStateInvariantMiddleware: function() { return /* binding */ createSerializableStateInvariantMiddleware; },
+/* harmony export */   createSlice: function() { return /* binding */ createSlice; },
+/* harmony export */   createStore: function() { return /* binding */ createStore; },
+/* harmony export */   current: function() { return /* binding */ R; },
+/* harmony export */   findNonSerializableValue: function() { return /* binding */ findNonSerializableValue; },
+/* harmony export */   freeze: function() { return /* binding */ d; },
+/* harmony export */   getDefaultMiddleware: function() { return /* binding */ getDefaultMiddleware; },
+/* harmony export */   getType: function() { return /* binding */ getType; },
+/* harmony export */   isAction: function() { return /* binding */ isAction; },
+/* harmony export */   isActionCreator: function() { return /* binding */ isActionCreator; },
+/* harmony export */   isAllOf: function() { return /* binding */ isAllOf; },
+/* harmony export */   isAnyOf: function() { return /* binding */ isAnyOf; },
+/* harmony export */   isAsyncThunkAction: function() { return /* binding */ isAsyncThunkAction; },
+/* harmony export */   isDraft: function() { return /* binding */ r; },
+/* harmony export */   isFluxStandardAction: function() { return /* binding */ isFSA; },
+/* harmony export */   isFulfilled: function() { return /* binding */ isFulfilled; },
+/* harmony export */   isImmutableDefault: function() { return /* binding */ isImmutableDefault; },
+/* harmony export */   isPending: function() { return /* binding */ isPending; },
+/* harmony export */   isPlain: function() { return /* binding */ isPlain; },
+/* harmony export */   isPlainObject: function() { return /* binding */ isPlainObject2; },
+/* harmony export */   isRejected: function() { return /* binding */ isRejected; },
+/* harmony export */   isRejectedWithValue: function() { return /* binding */ isRejectedWithValue; },
+/* harmony export */   legacy_createStore: function() { return /* binding */ legacy_createStore; },
+/* harmony export */   miniSerializeError: function() { return /* binding */ miniSerializeError; },
+/* harmony export */   nanoid: function() { return /* binding */ nanoid; },
+/* harmony export */   original: function() { return /* binding */ e; },
+/* harmony export */   prepareAutoBatched: function() { return /* binding */ prepareAutoBatched; },
+/* harmony export */   removeListener: function() { return /* binding */ removeListener; },
+/* harmony export */   unwrapResult: function() { return /* binding */ unwrapResult; }
+/* harmony export */ });
+/* harmony import */ var _chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./chunk-P7VEE7PG.js */ "./node_modules/.taro/weapp/prebundle/chunk-P7VEE7PG.js");
+/* provided dependency */ var window = __webpack_require__(/*! ./node_modules/.taro/weapp/prebundle/chunk-3EXGJ5BE.js */ "./node_modules/.taro/weapp/prebundle/chunk-3EXGJ5BE.js")["window$1"];
+
+// node_modules/immer/dist/immer.esm.mjs
+function n(n2) {
+    for(var r2 = arguments.length, t2 = Array(r2 > 1 ? r2 - 1 : 0), e2 = 1; e2 < r2; e2++)t2[e2 - 1] = arguments[e2];
+    if (true) {
+        var i2 = Y[n2], o2 = i2 ? "function" == typeof i2 ? i2.apply(null, t2) : i2 : "unknown error nr: " + n2;
+        throw Error("[Immer] " + o2);
+    }
+    throw Error("[Immer] minified error nr: " + n2 + (t2.length ? " " + t2.map(function(n3) {
+        return "'" + n3 + "'";
+    }).join(",") : "") + ". Find the full error at: https://bit.ly/3cXEKWf");
+}
+function r(n2) {
+    return !!n2 && !!n2[Q];
+}
+function t(n2) {
+    var r2;
+    return !!n2 && (function(n3) {
+        if (!n3 || "object" != typeof n3) return false;
+        var r3 = Object.getPrototypeOf(n3);
+        if (null === r3) return true;
+        var t2 = Object.hasOwnProperty.call(r3, "constructor") && r3.constructor;
+        return t2 === Object || "function" == typeof t2 && Function.toString.call(t2) === Z;
+    }(n2) || Array.isArray(n2) || !!n2[L] || !!(null === (r2 = n2.constructor) || void 0 === r2 ? void 0 : r2[L]) || s(n2) || v(n2));
+}
+function e(t2) {
+    return r(t2) || n(23, t2), t2[Q].t;
+}
+function i(n2, r2, t2) {
+    void 0 === t2 && (t2 = false), 0 === o(n2) ? (t2 ? Object.keys : nn)(n2).forEach(function(e2) {
+        t2 && "symbol" == typeof e2 || r2(e2, n2[e2], n2);
+    }) : n2.forEach(function(t3, e2) {
+        return r2(e2, t3, n2);
+    });
+}
+function o(n2) {
+    var r2 = n2[Q];
+    return r2 ? r2.i > 3 ? r2.i - 4 : r2.i : Array.isArray(n2) ? 1 : s(n2) ? 2 : v(n2) ? 3 : 0;
+}
+function u(n2, r2) {
+    return 2 === o(n2) ? n2.has(r2) : Object.prototype.hasOwnProperty.call(n2, r2);
+}
+function a(n2, r2) {
+    return 2 === o(n2) ? n2.get(r2) : n2[r2];
+}
+function f(n2, r2, t2) {
+    var e2 = o(n2);
+    2 === e2 ? n2.set(r2, t2) : 3 === e2 ? n2.add(t2) : n2[r2] = t2;
+}
+function c(n2, r2) {
+    return n2 === r2 ? 0 !== n2 || 1 / n2 == 1 / r2 : n2 != n2 && r2 != r2;
+}
+function s(n2) {
+    return X && n2 instanceof Map;
+}
+function v(n2) {
+    return q && n2 instanceof Set;
+}
+function p(n2) {
+    return n2.o || n2.t;
+}
+function l(n2) {
+    if (Array.isArray(n2)) return Array.prototype.slice.call(n2);
+    var r2 = rn(n2);
+    delete r2[Q];
+    for(var t2 = nn(r2), e2 = 0; e2 < t2.length; e2++){
+        var i2 = t2[e2], o2 = r2[i2];
+        false === o2.writable && (o2.writable = true, o2.configurable = true), (o2.get || o2.set) && (r2[i2] = {
+            configurable: true,
+            writable: true,
+            enumerable: o2.enumerable,
+            value: n2[i2]
+        });
+    }
+    return Object.create(Object.getPrototypeOf(n2), r2);
+}
+function d(n2, e2) {
+    return void 0 === e2 && (e2 = false), y(n2) || r(n2) || !t(n2) || (o(n2) > 1 && (n2.set = n2.add = n2.clear = n2.delete = h), Object.freeze(n2), e2 && i(n2, function(n3, r2) {
+        return d(r2, true);
+    }, true)), n2;
+}
+function h() {
+    n(2);
+}
+function y(n2) {
+    return null == n2 || "object" != typeof n2 || Object.isFrozen(n2);
+}
+function b(r2) {
+    var t2 = tn[r2];
+    return t2 || n(18, r2), t2;
+}
+function m(n2, r2) {
+    tn[n2] || (tn[n2] = r2);
+}
+function _() {
+    return U || n(0), U;
+}
+function j(n2, r2) {
+    r2 && (b("Patches"), n2.u = [], n2.s = [], n2.v = r2);
+}
+function g(n2) {
+    O(n2), n2.p.forEach(S), n2.p = null;
+}
+function O(n2) {
+    n2 === U && (U = n2.l);
+}
+function w(n2) {
+    return U = {
+        p: [],
+        l: U,
+        h: n2,
+        m: true,
+        _: 0
+    };
+}
+function S(n2) {
+    var r2 = n2[Q];
+    0 === r2.i || 1 === r2.i ? r2.j() : r2.g = true;
+}
+function P(r2, e2) {
+    e2._ = e2.p.length;
+    var i2 = e2.p[0], o2 = void 0 !== r2 && r2 !== i2;
+    return e2.h.O || b("ES5").S(e2, r2, o2), o2 ? (i2[Q].P && (g(e2), n(4)), t(r2) && (r2 = M(e2, r2), e2.l || x(e2, r2)), e2.u && b("Patches").M(i2[Q].t, r2, e2.u, e2.s)) : r2 = M(e2, i2, []), g(e2), e2.u && e2.v(e2.u, e2.s), r2 !== H ? r2 : void 0;
+}
+function M(n2, r2, t2) {
+    if (y(r2)) return r2;
+    var e2 = r2[Q];
+    if (!e2) return i(r2, function(i2, o3) {
+        return A(n2, e2, r2, i2, o3, t2);
+    }, true), r2;
+    if (e2.A !== n2) return r2;
+    if (!e2.P) return x(n2, e2.t, true), e2.t;
+    if (!e2.I) {
+        e2.I = true, e2.A._--;
+        var o2 = 4 === e2.i || 5 === e2.i ? e2.o = l(e2.k) : e2.o, u2 = o2, a2 = false;
+        3 === e2.i && (u2 = new Set(o2), o2.clear(), a2 = true), i(u2, function(r3, i2) {
+            return A(n2, e2, o2, r3, i2, t2, a2);
+        }), x(n2, o2, false), t2 && n2.u && b("Patches").N(e2, t2, n2.u, n2.s);
+    }
+    return e2.o;
+}
+function A(e2, i2, o2, a2, c2, s2, v2) {
+    if (c2 === o2 && n(5), r(c2)) {
+        var p2 = M(e2, c2, s2 && i2 && 3 !== i2.i && !u(i2.R, a2) ? s2.concat(a2) : void 0);
+        if (f(o2, a2, p2), !r(p2)) return;
+        e2.m = false;
+    } else v2 && o2.add(c2);
+    if (t(c2) && !y(c2)) {
+        if (!e2.h.D && e2._ < 1) return;
+        M(e2, c2), i2 && i2.A.l || x(e2, c2);
+    }
+}
+function x(n2, r2, t2) {
+    void 0 === t2 && (t2 = false), !n2.l && n2.h.D && n2.m && d(r2, t2);
+}
+function z(n2, r2) {
+    var t2 = n2[Q];
+    return (t2 ? p(t2) : n2)[r2];
+}
+function I(n2, r2) {
+    if (r2 in n2) for(var t2 = Object.getPrototypeOf(n2); t2;){
+        var e2 = Object.getOwnPropertyDescriptor(t2, r2);
+        if (e2) return e2;
+        t2 = Object.getPrototypeOf(t2);
+    }
+}
+function k(n2) {
+    n2.P || (n2.P = true, n2.l && k(n2.l));
+}
+function E(n2) {
+    n2.o || (n2.o = l(n2.t));
+}
+function N(n2, r2, t2) {
+    var e2 = s(r2) ? b("MapSet").F(r2, t2) : v(r2) ? b("MapSet").T(r2, t2) : n2.O ? function(n3, r3) {
+        var t3 = Array.isArray(n3), e3 = {
+            i: t3 ? 1 : 0,
+            A: r3 ? r3.A : _(),
+            P: false,
+            I: false,
+            R: {},
+            l: r3,
+            t: n3,
+            k: null,
+            o: null,
+            j: null,
+            C: false
+        }, i2 = e3, o2 = en;
+        t3 && (i2 = [
+            e3
+        ], o2 = on);
+        var u2 = Proxy.revocable(i2, o2), a2 = u2.revoke, f2 = u2.proxy;
+        return e3.k = f2, e3.j = a2, f2;
+    }(r2, t2) : b("ES5").J(r2, t2);
+    return (t2 ? t2.A : _()).p.push(e2), e2;
+}
+function R(e2) {
+    return r(e2) || n(22, e2), function n2(r2) {
+        if (!t(r2)) return r2;
+        var e3, u2 = r2[Q], c2 = o(r2);
+        if (u2) {
+            if (!u2.P && (u2.i < 4 || !b("ES5").K(u2))) return u2.t;
+            u2.I = true, e3 = D(r2, c2), u2.I = false;
+        } else e3 = D(r2, c2);
+        return i(e3, function(r3, t2) {
+            u2 && a(u2.t, r3) === t2 || f(e3, r3, n2(t2));
+        }), 3 === c2 ? new Set(e3) : e3;
+    }(e2);
+}
+function D(n2, r2) {
+    switch(r2){
+        case 2:
+            return new Map(n2);
+        case 3:
+            return Array.from(n2);
+    }
+    return l(n2);
+}
+function F() {
+    function t2(n2, r2) {
+        var t3 = s2[n2];
+        return t3 ? t3.enumerable = r2 : s2[n2] = t3 = {
+            configurable: true,
+            enumerable: r2,
+            get: function() {
+                var r3 = this[Q];
+                return f2(r3), en.get(r3, n2);
+            },
+            set: function(r3) {
+                var t4 = this[Q];
+                f2(t4), en.set(t4, n2, r3);
+            }
+        }, t3;
+    }
+    function e2(n2) {
+        for(var r2 = n2.length - 1; r2 >= 0; r2--){
+            var t3 = n2[r2][Q];
+            if (!t3.P) switch(t3.i){
+                case 5:
+                    a2(t3) && k(t3);
+                    break;
+                case 4:
+                    o2(t3) && k(t3);
+            }
+        }
+    }
+    function o2(n2) {
+        for(var r2 = n2.t, t3 = n2.k, e3 = nn(t3), i2 = e3.length - 1; i2 >= 0; i2--){
+            var o3 = e3[i2];
+            if (o3 !== Q) {
+                var a3 = r2[o3];
+                if (void 0 === a3 && !u(r2, o3)) return true;
+                var f3 = t3[o3], s3 = f3 && f3[Q];
+                if (s3 ? s3.t !== a3 : !c(f3, a3)) return true;
+            }
+        }
+        var v2 = !!r2[Q];
+        return e3.length !== nn(r2).length + (v2 ? 0 : 1);
+    }
+    function a2(n2) {
+        var r2 = n2.k;
+        if (r2.length !== n2.t.length) return true;
+        var t3 = Object.getOwnPropertyDescriptor(r2, r2.length - 1);
+        if (t3 && !t3.get) return true;
+        for(var e3 = 0; e3 < r2.length; e3++)if (!r2.hasOwnProperty(e3)) return true;
+        return false;
+    }
+    function f2(r2) {
+        r2.g && n(3, JSON.stringify(p(r2)));
+    }
+    var s2 = {};
+    m("ES5", {
+        J: function(n2, r2) {
+            var e3 = Array.isArray(n2), i2 = function(n3, r3) {
+                if (n3) {
+                    for(var e4 = Array(r3.length), i3 = 0; i3 < r3.length; i3++)Object.defineProperty(e4, "" + i3, t2(i3, true));
+                    return e4;
+                }
+                var o4 = rn(r3);
+                delete o4[Q];
+                for(var u2 = nn(o4), a3 = 0; a3 < u2.length; a3++){
+                    var f3 = u2[a3];
+                    o4[f3] = t2(f3, n3 || !!o4[f3].enumerable);
+                }
+                return Object.create(Object.getPrototypeOf(r3), o4);
+            }(e3, n2), o3 = {
+                i: e3 ? 5 : 4,
+                A: r2 ? r2.A : _(),
+                P: false,
+                I: false,
+                R: {},
+                l: r2,
+                t: n2,
+                k: i2,
+                o: null,
+                g: false,
+                C: false
+            };
+            return Object.defineProperty(i2, Q, {
+                value: o3,
+                writable: true
+            }), i2;
+        },
+        S: function(n2, t3, o3) {
+            o3 ? r(t3) && t3[Q].A === n2 && e2(n2.p) : (n2.u && function n3(r2) {
+                if (r2 && "object" == typeof r2) {
+                    var t4 = r2[Q];
+                    if (t4) {
+                        var e3 = t4.t, o4 = t4.k, f3 = t4.R, c2 = t4.i;
+                        if (4 === c2) i(o4, function(r3) {
+                            r3 !== Q && (void 0 !== e3[r3] || u(e3, r3) ? f3[r3] || n3(o4[r3]) : (f3[r3] = true, k(t4)));
+                        }), i(e3, function(n4) {
+                            void 0 !== o4[n4] || u(o4, n4) || (f3[n4] = false, k(t4));
+                        });
+                        else if (5 === c2) {
+                            if (a2(t4) && (k(t4), f3.length = true), o4.length < e3.length) for(var s3 = o4.length; s3 < e3.length; s3++)f3[s3] = false;
+                            else for(var v2 = e3.length; v2 < o4.length; v2++)f3[v2] = true;
+                            for(var p2 = Math.min(o4.length, e3.length), l2 = 0; l2 < p2; l2++)o4.hasOwnProperty(l2) || (f3[l2] = true), void 0 === f3[l2] && n3(o4[l2]);
+                        }
+                    }
+                }
+            }(n2.p[0]), e2(n2.p));
+        },
+        K: function(n2) {
+            return 4 === n2.i ? o2(n2) : a2(n2);
+        }
+    });
+}
+var G;
+var U;
+var W = "undefined" != typeof Symbol && "symbol" == typeof Symbol("x");
+var X = "undefined" != typeof Map;
+var q = "undefined" != typeof Set;
+var B = "undefined" != typeof Proxy && void 0 !== Proxy.revocable && "undefined" != typeof Reflect;
+var H = W ? Symbol.for("immer-nothing") : ((G = {})["immer-nothing"] = true, G);
+var L = W ? Symbol.for("immer-draftable") : "__$immer_draftable";
+var Q = W ? Symbol.for("immer-state") : "__$immer_state";
+var Y = {
+    0: "Illegal state",
+    1: "Immer drafts cannot have computed properties",
+    2: "This object has been frozen and should not be mutated",
+    3: function(n2) {
+        return "Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? " + n2;
+    },
+    4: "An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.",
+    5: "Immer forbids circular references",
+    6: "The first or second argument to `produce` must be a function",
+    7: "The third argument to `produce` must be a function or undefined",
+    8: "First argument to `createDraft` must be a plain object, an array, or an immerable object",
+    9: "First argument to `finishDraft` must be a draft returned by `createDraft`",
+    10: "The given draft is already finalized",
+    11: "Object.defineProperty() cannot be used on an Immer draft",
+    12: "Object.setPrototypeOf() cannot be used on an Immer draft",
+    13: "Immer only supports deleting array indices",
+    14: "Immer only supports setting array indices and the 'length' property",
+    15: function(n2) {
+        return "Cannot apply patch, path doesn't resolve: " + n2;
+    },
+    16: 'Sets cannot have "replace" patches.',
+    17: function(n2) {
+        return "Unsupported patch operation: " + n2;
+    },
+    18: function(n2) {
+        return "The plugin for '" + n2 + "' has not been loaded into Immer. To enable the plugin, import and call `enable" + n2 + "()` when initializing your application.";
+    },
+    20: "Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available",
+    21: function(n2) {
+        return "produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '" + n2 + "'";
+    },
+    22: function(n2) {
+        return "'current' expects a draft, got: " + n2;
+    },
+    23: function(n2) {
+        return "'original' expects a draft, got: " + n2;
+    },
+    24: "Patching reserved attributes like __proto__, prototype and constructor is not allowed"
+};
+var Z = "" + Object.prototype.constructor;
+var nn = "undefined" != typeof Reflect && Reflect.ownKeys ? Reflect.ownKeys : void 0 !== Object.getOwnPropertySymbols ? function(n2) {
+    return Object.getOwnPropertyNames(n2).concat(Object.getOwnPropertySymbols(n2));
+} : Object.getOwnPropertyNames;
+var rn = Object.getOwnPropertyDescriptors || function(n2) {
+    var r2 = {};
+    return nn(n2).forEach(function(t2) {
+        r2[t2] = Object.getOwnPropertyDescriptor(n2, t2);
+    }), r2;
+};
+var tn = {};
+var en = {
+    get: function(n2, r2) {
+        if (r2 === Q) return n2;
+        var e2 = p(n2);
+        if (!u(e2, r2)) return function(n3, r3, t2) {
+            var e3, i3 = I(r3, t2);
+            return i3 ? "value" in i3 ? i3.value : null === (e3 = i3.get) || void 0 === e3 ? void 0 : e3.call(n3.k) : void 0;
+        }(n2, e2, r2);
+        var i2 = e2[r2];
+        return n2.I || !t(i2) ? i2 : i2 === z(n2.t, r2) ? (E(n2), n2.o[r2] = N(n2.A.h, i2, n2)) : i2;
+    },
+    has: function(n2, r2) {
+        return r2 in p(n2);
+    },
+    ownKeys: function(n2) {
+        return Reflect.ownKeys(p(n2));
+    },
+    set: function(n2, r2, t2) {
+        var e2 = I(p(n2), r2);
+        if (null == e2 ? void 0 : e2.set) return e2.set.call(n2.k, t2), true;
+        if (!n2.P) {
+            var i2 = z(p(n2), r2), o2 = null == i2 ? void 0 : i2[Q];
+            if (o2 && o2.t === t2) return n2.o[r2] = t2, n2.R[r2] = false, true;
+            if (c(t2, i2) && (void 0 !== t2 || u(n2.t, r2))) return true;
+            E(n2), k(n2);
+        }
+        return n2.o[r2] === t2 && (void 0 !== t2 || r2 in n2.o) || Number.isNaN(t2) && Number.isNaN(n2.o[r2]) || (n2.o[r2] = t2, n2.R[r2] = true), true;
+    },
+    deleteProperty: function(n2, r2) {
+        return void 0 !== z(n2.t, r2) || r2 in n2.t ? (n2.R[r2] = false, E(n2), k(n2)) : delete n2.R[r2], n2.o && delete n2.o[r2], true;
+    },
+    getOwnPropertyDescriptor: function(n2, r2) {
+        var t2 = p(n2), e2 = Reflect.getOwnPropertyDescriptor(t2, r2);
+        return e2 ? {
+            writable: true,
+            configurable: 1 !== n2.i || "length" !== r2,
+            enumerable: e2.enumerable,
+            value: t2[r2]
+        } : e2;
+    },
+    defineProperty: function() {
+        n(11);
+    },
+    getPrototypeOf: function(n2) {
+        return Object.getPrototypeOf(n2.t);
+    },
+    setPrototypeOf: function() {
+        n(12);
+    }
+};
+var on = {};
+i(en, function(n2, r2) {
+    on[n2] = function() {
+        return arguments[0] = arguments[0][0], r2.apply(this, arguments);
+    };
+}), on.deleteProperty = function(r2, t2) {
+    return isNaN(parseInt(t2)) && n(13), on.set.call(this, r2, t2, void 0);
+}, on.set = function(r2, t2, e2) {
+    return "length" !== t2 && isNaN(parseInt(t2)) && n(14), en.set.call(this, r2[0], t2, e2, r2[0]);
+};
+var un = function() {
+    function e2(r2) {
+        var e3 = this;
+        this.O = B, this.D = true, this.produce = function(r3, i3, o2) {
+            if ("function" == typeof r3 && "function" != typeof i3) {
+                var u2 = i3;
+                i3 = r3;
+                var a2 = e3;
+                return function(n2) {
+                    var r4 = this;
+                    void 0 === n2 && (n2 = u2);
+                    for(var t2 = arguments.length, e4 = Array(t2 > 1 ? t2 - 1 : 0), o3 = 1; o3 < t2; o3++)e4[o3 - 1] = arguments[o3];
+                    return a2.produce(n2, function(n3) {
+                        var t3;
+                        return (t3 = i3).call.apply(t3, [
+                            r4,
+                            n3
+                        ].concat(e4));
+                    });
+                };
+            }
+            var f2;
+            if ("function" != typeof i3 && n(6), void 0 !== o2 && "function" != typeof o2 && n(7), t(r3)) {
+                var c2 = w(e3), s2 = N(e3, r3, void 0), v2 = true;
+                try {
+                    f2 = i3(s2), v2 = false;
+                } finally{
+                    v2 ? g(c2) : O(c2);
+                }
+                return "undefined" != typeof Promise && f2 instanceof Promise ? f2.then(function(n2) {
+                    return j(c2, o2), P(n2, c2);
+                }, function(n2) {
+                    throw g(c2), n2;
+                }) : (j(c2, o2), P(f2, c2));
+            }
+            if (!r3 || "object" != typeof r3) {
+                if (void 0 === (f2 = i3(r3)) && (f2 = r3), f2 === H && (f2 = void 0), e3.D && d(f2, true), o2) {
+                    var p2 = [], l2 = [];
+                    b("Patches").M(r3, f2, p2, l2), o2(p2, l2);
+                }
+                return f2;
+            }
+            n(21, r3);
+        }, this.produceWithPatches = function(n2, r3) {
+            if ("function" == typeof n2) return function(r4) {
+                for(var t3 = arguments.length, i4 = Array(t3 > 1 ? t3 - 1 : 0), o3 = 1; o3 < t3; o3++)i4[o3 - 1] = arguments[o3];
+                return e3.produceWithPatches(r4, function(r5) {
+                    return n2.apply(void 0, [
+                        r5
+                    ].concat(i4));
+                });
+            };
+            var t2, i3, o2 = e3.produce(n2, r3, function(n3, r4) {
+                t2 = n3, i3 = r4;
+            });
+            return "undefined" != typeof Promise && o2 instanceof Promise ? o2.then(function(n3) {
+                return [
+                    n3,
+                    t2,
+                    i3
+                ];
+            }) : [
+                o2,
+                t2,
+                i3
+            ];
+        }, "boolean" == typeof (null == r2 ? void 0 : r2.useProxies) && this.setUseProxies(r2.useProxies), "boolean" == typeof (null == r2 ? void 0 : r2.autoFreeze) && this.setAutoFreeze(r2.autoFreeze);
+    }
+    var i2 = e2.prototype;
+    return i2.createDraft = function(e3) {
+        t(e3) || n(8), r(e3) && (e3 = R(e3));
+        var i3 = w(this), o2 = N(this, e3, void 0);
+        return o2[Q].C = true, O(i3), o2;
+    }, i2.finishDraft = function(r2, t2) {
+        var e3 = r2 && r2[Q];
+        e3 && e3.C || n(9), e3.I && n(10);
+        var i3 = e3.A;
+        return j(i3, t2), P(void 0, i3);
+    }, i2.setAutoFreeze = function(n2) {
+        this.D = n2;
+    }, i2.setUseProxies = function(r2) {
+        r2 && !B && n(20), this.O = r2;
+    }, i2.applyPatches = function(n2, t2) {
+        var e3;
+        for(e3 = t2.length - 1; e3 >= 0; e3--){
+            var i3 = t2[e3];
+            if (0 === i3.path.length && "replace" === i3.op) {
+                n2 = i3.value;
+                break;
+            }
+        }
+        e3 > -1 && (t2 = t2.slice(e3 + 1));
+        var o2 = b("Patches").$;
+        return r(n2) ? o2(n2, t2) : this.produce(n2, function(n3) {
+            return o2(n3, t2);
+        });
+    }, e2;
+}();
+var an = new un();
+var fn = an.produce;
+var cn = an.produceWithPatches.bind(an);
+var sn = an.setAutoFreeze.bind(an);
+var vn = an.setUseProxies.bind(an);
+var pn = an.applyPatches.bind(an);
+var ln = an.createDraft.bind(an);
+var dn = an.finishDraft.bind(an);
+var immer_esm_default = fn;
+// node_modules/redux/node_modules/@babel/runtime/helpers/esm/typeof.js
+function _typeof(o2) {
+    "@babel/helpers - typeof";
+    return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o3) {
+        return typeof o3;
+    } : function(o3) {
+        return o3 && "function" == typeof Symbol && o3.constructor === Symbol && o3 !== Symbol.prototype ? "symbol" : typeof o3;
+    }, _typeof(o2);
+}
+// node_modules/redux/node_modules/@babel/runtime/helpers/esm/toPrimitive.js
+function _toPrimitive(input, hint) {
+    if (_typeof(input) !== "object" || input === null) return input;
+    var prim = input[Symbol.toPrimitive];
+    if (prim !== void 0) {
+        var res = prim.call(input, hint || "default");
+        if (_typeof(res) !== "object") return res;
+        throw new TypeError("@@toPrimitive must return a primitive value.");
+    }
+    return (hint === "string" ? String : Number)(input);
+}
+// node_modules/redux/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js
+function _toPropertyKey(arg) {
+    var key = _toPrimitive(arg, "string");
+    return _typeof(key) === "symbol" ? key : String(key);
+}
+// node_modules/redux/node_modules/@babel/runtime/helpers/esm/defineProperty.js
+function _defineProperty(obj, key, value) {
+    key = _toPropertyKey(key);
+    if (key in obj) {
+        Object.defineProperty(obj, key, {
+            value,
+            enumerable: true,
+            configurable: true,
+            writable: true
+        });
+    } else {
+        obj[key] = value;
+    }
+    return obj;
+}
+// node_modules/redux/node_modules/@babel/runtime/helpers/esm/objectSpread2.js
+function ownKeys(e2, r2) {
+    var t2 = Object.keys(e2);
+    if (Object.getOwnPropertySymbols) {
+        var o2 = Object.getOwnPropertySymbols(e2);
+        r2 && (o2 = o2.filter(function(r3) {
+            return Object.getOwnPropertyDescriptor(e2, r3).enumerable;
+        })), t2.push.apply(t2, o2);
+    }
+    return t2;
+}
+function _objectSpread2(e2) {
+    for(var r2 = 1; r2 < arguments.length; r2++){
+        var t2 = null != arguments[r2] ? arguments[r2] : {};
+        r2 % 2 ? ownKeys(Object(t2), true).forEach(function(r3) {
+            _defineProperty(e2, r3, t2[r3]);
+        }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e2, Object.getOwnPropertyDescriptors(t2)) : ownKeys(Object(t2)).forEach(function(r3) {
+            Object.defineProperty(e2, r3, Object.getOwnPropertyDescriptor(t2, r3));
+        });
+    }
+    return e2;
+}
+// node_modules/redux/es/redux.js
+var $$observable = function() {
+    return typeof Symbol === "function" && Symbol.observable || "@@observable";
+}();
+var randomString = function randomString2() {
+    return Math.random().toString(36).substring(7).split("").join(".");
+};
+var ActionTypes = {
+    INIT: "@@redux/INIT" + randomString(),
+    REPLACE: "@@redux/REPLACE" + randomString(),
+    PROBE_UNKNOWN_ACTION: function PROBE_UNKNOWN_ACTION() {
+        return "@@redux/PROBE_UNKNOWN_ACTION" + randomString();
+    }
+};
+function isPlainObject(obj) {
+    if (typeof obj !== "object" || obj === null) return false;
+    var proto = obj;
+    while(Object.getPrototypeOf(proto) !== null){
+        proto = Object.getPrototypeOf(proto);
+    }
+    return Object.getPrototypeOf(obj) === proto;
+}
+function miniKindOf(val) {
+    if (val === void 0) return "undefined";
+    if (val === null) return "null";
+    var type = typeof val;
+    switch(type){
+        case "boolean":
+        case "string":
+        case "number":
+        case "symbol":
+        case "function":
+            {
+                return type;
+            }
+    }
+    if (Array.isArray(val)) return "array";
+    if (isDate(val)) return "date";
+    if (isError(val)) return "error";
+    var constructorName = ctorName(val);
+    switch(constructorName){
+        case "Symbol":
+        case "Promise":
+        case "WeakMap":
+        case "WeakSet":
+        case "Map":
+        case "Set":
+            return constructorName;
+    }
+    return type.slice(8, -1).toLowerCase().replace(/\s/g, "");
+}
+function ctorName(val) {
+    return typeof val.constructor === "function" ? val.constructor.name : null;
+}
+function isError(val) {
+    return val instanceof Error || typeof val.message === "string" && val.constructor && typeof val.constructor.stackTraceLimit === "number";
+}
+function isDate(val) {
+    if (val instanceof Date) return true;
+    return typeof val.toDateString === "function" && typeof val.getDate === "function" && typeof val.setDate === "function";
+}
+function kindOf(val) {
+    var typeOfVal = typeof val;
+    if (true) {
+        typeOfVal = miniKindOf(val);
+    }
+    return typeOfVal;
+}
+function createStore(reducer, preloadedState, enhancer) {
+    var _ref2;
+    if (typeof preloadedState === "function" && typeof enhancer === "function" || typeof enhancer === "function" && typeof arguments[3] === "function") {
+        throw new Error( false ? 0 : "It looks like you are passing several store enhancers to createStore(). This is not supported. Instead, compose them together to a single function. See https://redux.js.org/tutorials/fundamentals/part-4-store#creating-a-store-with-enhancers for an example.");
+    }
+    if (typeof preloadedState === "function" && typeof enhancer === "undefined") {
+        enhancer = preloadedState;
+        preloadedState = void 0;
+    }
+    if (typeof enhancer !== "undefined") {
+        if (typeof enhancer !== "function") {
+            throw new Error( false ? 0 : "Expected the enhancer to be a function. Instead, received: '" + kindOf(enhancer) + "'");
+        }
+        return enhancer(createStore)(reducer, preloadedState);
+    }
+    if (typeof reducer !== "function") {
+        throw new Error( false ? 0 : "Expected the root reducer to be a function. Instead, received: '" + kindOf(reducer) + "'");
+    }
+    var currentReducer = reducer;
+    var currentState = preloadedState;
+    var currentListeners = [];
+    var nextListeners = currentListeners;
+    var isDispatching = false;
+    function ensureCanMutateNextListeners() {
+        if (nextListeners === currentListeners) {
+            nextListeners = currentListeners.slice();
+        }
+    }
+    function getState() {
+        if (isDispatching) {
+            throw new Error( false ? 0 : "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.");
+        }
+        return currentState;
+    }
+    function subscribe(listener2) {
+        if (typeof listener2 !== "function") {
+            throw new Error( false ? 0 : "Expected the listener to be a function. Instead, received: '" + kindOf(listener2) + "'");
+        }
+        if (isDispatching) {
+            throw new Error( false ? 0 : "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/store#subscribelistener for more details.");
+        }
+        var isSubscribed = true;
+        ensureCanMutateNextListeners();
+        nextListeners.push(listener2);
+        return function unsubscribe() {
+            if (!isSubscribed) {
+                return;
+            }
+            if (isDispatching) {
+                throw new Error( false ? 0 : "You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api/store#subscribelistener for more details.");
+            }
+            isSubscribed = false;
+            ensureCanMutateNextListeners();
+            var index = nextListeners.indexOf(listener2);
+            nextListeners.splice(index, 1);
+            currentListeners = null;
+        };
+    }
+    function dispatch(action) {
+        if (!isPlainObject(action)) {
+            throw new Error( false ? 0 : "Actions must be plain objects. Instead, the actual type was: '" + kindOf(action) + "'. You may need to add middleware to your store setup to handle dispatching other values, such as 'redux-thunk' to handle dispatching functions. See https://redux.js.org/tutorials/fundamentals/part-4-store#middleware and https://redux.js.org/tutorials/fundamentals/part-6-async-logic#using-the-redux-thunk-middleware for examples.");
+        }
+        if (typeof action.type === "undefined") {
+            throw new Error( false ? 0 : 'Actions may not have an undefined "type" property. You may have misspelled an action type string constant.');
+        }
+        if (isDispatching) {
+            throw new Error( false ? 0 : "Reducers may not dispatch actions.");
+        }
+        try {
+            isDispatching = true;
+            currentState = currentReducer(currentState, action);
+        } finally{
+            isDispatching = false;
+        }
+        var listeners = currentListeners = nextListeners;
+        for(var i2 = 0; i2 < listeners.length; i2++){
+            var listener2 = listeners[i2];
+            listener2();
+        }
+        return action;
+    }
+    function replaceReducer(nextReducer) {
+        if (typeof nextReducer !== "function") {
+            throw new Error( false ? 0 : "Expected the nextReducer to be a function. Instead, received: '" + kindOf(nextReducer));
+        }
+        currentReducer = nextReducer;
+        dispatch({
+            type: ActionTypes.REPLACE
+        });
+    }
+    function observable() {
+        var _ref;
+        var outerSubscribe = subscribe;
+        return _ref = {
+            subscribe: function subscribe2(observer) {
+                if (typeof observer !== "object" || observer === null) {
+                    throw new Error( false ? 0 : "Expected the observer to be an object. Instead, received: '" + kindOf(observer) + "'");
+                }
+                function observeState() {
+                    if (observer.next) {
+                        observer.next(getState());
+                    }
+                }
+                observeState();
+                var unsubscribe = outerSubscribe(observeState);
+                return {
+                    unsubscribe
+                };
+            }
+        }, _ref[$$observable] = function() {
+            return this;
+        }, _ref;
+    }
+    dispatch({
+        type: ActionTypes.INIT
+    });
+    return _ref2 = {
+        dispatch,
+        subscribe,
+        getState,
+        replaceReducer
+    }, _ref2[$$observable] = observable, _ref2;
+}
+var legacy_createStore = createStore;
+function warning(message) {
+    if (typeof console !== "undefined" && typeof console.error === "function") {
+        console.error(message);
+    }
+    try {
+        throw new Error(message);
+    } catch (e2) {}
+}
+function getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) {
+    var reducerKeys = Object.keys(reducers);
+    var argumentName = action && action.type === ActionTypes.INIT ? "preloadedState argument passed to createStore" : "previous state received by the reducer";
+    if (reducerKeys.length === 0) {
+        return "Store does not have a valid reducer. Make sure the argument passed to combineReducers is an object whose values are reducers.";
+    }
+    if (!isPlainObject(inputState)) {
+        return "The " + argumentName + ' has unexpected type of "' + kindOf(inputState) + '". Expected argument to be an object with the following ' + ('keys: "' + reducerKeys.join('", "') + '"');
+    }
+    var unexpectedKeys = Object.keys(inputState).filter(function(key) {
+        return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key];
+    });
+    unexpectedKeys.forEach(function(key) {
+        unexpectedKeyCache[key] = true;
+    });
+    if (action && action.type === ActionTypes.REPLACE) return;
+    if (unexpectedKeys.length > 0) {
+        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.');
+    }
+}
+function assertReducerShape(reducers) {
+    Object.keys(reducers).forEach(function(key) {
+        var reducer = reducers[key];
+        var initialState = reducer(void 0, {
+            type: ActionTypes.INIT
+        });
+        if (typeof initialState === "undefined") {
+            throw new Error( false ? 0 : 'The slice reducer for key "' + 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.`);
+        }
+        if (typeof reducer(void 0, {
+            type: ActionTypes.PROBE_UNKNOWN_ACTION()
+        }) === "undefined") {
+            throw new Error( false ? 0 : 'The slice reducer for key "' + 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.");
+        }
+    });
+}
+function combineReducers(reducers) {
+    var reducerKeys = Object.keys(reducers);
+    var finalReducers = {};
+    for(var i2 = 0; i2 < reducerKeys.length; i2++){
+        var key = reducerKeys[i2];
+        if (true) {
+            if (typeof reducers[key] === "undefined") {
+                warning('No reducer provided for key "' + key + '"');
+            }
+        }
+        if (typeof reducers[key] === "function") {
+            finalReducers[key] = reducers[key];
+        }
+    }
+    var finalReducerKeys = Object.keys(finalReducers);
+    var unexpectedKeyCache;
+    if (true) {
+        unexpectedKeyCache = {};
+    }
+    var shapeAssertionError;
+    try {
+        assertReducerShape(finalReducers);
+    } catch (e2) {
+        shapeAssertionError = e2;
+    }
+    return function combination(state, action) {
+        if (state === void 0) {
+            state = {};
+        }
+        if (shapeAssertionError) {
+            throw shapeAssertionError;
+        }
+        if (true) {
+            var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache);
+            if (warningMessage) {
+                warning(warningMessage);
+            }
+        }
+        var hasChanged = false;
+        var nextState = {};
+        for(var _i = 0; _i < finalReducerKeys.length; _i++){
+            var _key = finalReducerKeys[_i];
+            var reducer = finalReducers[_key];
+            var previousStateForKey = state[_key];
+            var nextStateForKey = reducer(previousStateForKey, action);
+            if (typeof nextStateForKey === "undefined") {
+                var actionType = action && action.type;
+                throw new Error( false ? 0 : "When called with an action of type " + (actionType ? '"' + String(actionType) + '"' : "(unknown type)") + ', the slice reducer for key "' + _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.');
+            }
+            nextState[_key] = nextStateForKey;
+            hasChanged = hasChanged || nextStateForKey !== previousStateForKey;
+        }
+        hasChanged = hasChanged || finalReducerKeys.length !== Object.keys(state).length;
+        return hasChanged ? nextState : state;
+    };
+}
+function bindActionCreator(actionCreator, dispatch) {
+    return function() {
+        return dispatch(actionCreator.apply(this, arguments));
+    };
+}
+function bindActionCreators(actionCreators, dispatch) {
+    if (typeof actionCreators === "function") {
+        return bindActionCreator(actionCreators, dispatch);
+    }
+    if (typeof actionCreators !== "object" || actionCreators === null) {
+        throw new Error( false ? 0 : "bindActionCreators expected an object or a function, but instead received: '" + kindOf(actionCreators) + `'. Did you write "import ActionCreators from" instead of "import * as ActionCreators from"?`);
+    }
+    var boundActionCreators = {};
+    for(var key in actionCreators){
+        var actionCreator = actionCreators[key];
+        if (typeof actionCreator === "function") {
+            boundActionCreators[key] = bindActionCreator(actionCreator, dispatch);
+        }
+    }
+    return boundActionCreators;
+}
+function compose() {
+    for(var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++){
+        funcs[_key] = arguments[_key];
+    }
+    if (funcs.length === 0) {
+        return function(arg) {
+            return arg;
+        };
+    }
+    if (funcs.length === 1) {
+        return funcs[0];
+    }
+    return funcs.reduce(function(a2, b2) {
+        return function() {
+            return a2(b2.apply(void 0, arguments));
+        };
+    });
+}
+function applyMiddleware() {
+    for(var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++){
+        middlewares[_key] = arguments[_key];
+    }
+    return function(createStore2) {
+        return function() {
+            var store = createStore2.apply(void 0, arguments);
+            var _dispatch = function dispatch() {
+                throw new Error( false ? 0 : "Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch.");
+            };
+            var middlewareAPI = {
+                getState: store.getState,
+                dispatch: function dispatch() {
+                    return _dispatch.apply(void 0, arguments);
+                }
+            };
+            var chain = middlewares.map(function(middleware) {
+                return middleware(middlewareAPI);
+            });
+            _dispatch = compose.apply(void 0, chain)(store.dispatch);
+            return _objectSpread2(_objectSpread2({}, store), {}, {
+                dispatch: _dispatch
+            });
+        };
+    };
+}
+// node_modules/reselect/es/defaultMemoize.js
+var NOT_FOUND = "NOT_FOUND";
+function createSingletonCache(equals) {
+    var entry;
+    return {
+        get: function get(key) {
+            if (entry && equals(entry.key, key)) {
+                return entry.value;
+            }
+            return NOT_FOUND;
+        },
+        put: function put(key, value) {
+            entry = {
+                key,
+                value
+            };
+        },
+        getEntries: function getEntries() {
+            return entry ? [
+                entry
+            ] : [];
+        },
+        clear: function clear() {
+            entry = void 0;
+        }
+    };
+}
+function createLruCache(maxSize, equals) {
+    var entries = [];
+    function get(key) {
+        var cacheIndex = entries.findIndex(function(entry2) {
+            return equals(key, entry2.key);
+        });
+        if (cacheIndex > -1) {
+            var entry = entries[cacheIndex];
+            if (cacheIndex > 0) {
+                entries.splice(cacheIndex, 1);
+                entries.unshift(entry);
+            }
+            return entry.value;
+        }
+        return NOT_FOUND;
+    }
+    function put(key, value) {
+        if (get(key) === NOT_FOUND) {
+            entries.unshift({
+                key,
+                value
+            });
+            if (entries.length > maxSize) {
+                entries.pop();
+            }
+        }
+    }
+    function getEntries() {
+        return entries;
+    }
+    function clear() {
+        entries = [];
+    }
+    return {
+        get,
+        put,
+        getEntries,
+        clear
+    };
+}
+var defaultEqualityCheck = function defaultEqualityCheck2(a2, b2) {
+    return a2 === b2;
+};
+function createCacheKeyComparator(equalityCheck) {
+    return function areArgumentsShallowlyEqual(prev, next) {
+        if (prev === null || next === null || prev.length !== next.length) {
+            return false;
+        }
+        var length = prev.length;
+        for(var i2 = 0; i2 < length; i2++){
+            if (!equalityCheck(prev[i2], next[i2])) {
+                return false;
+            }
+        }
+        return true;
+    };
+}
+function defaultMemoize(func, equalityCheckOrOptions) {
+    var providedOptions = typeof equalityCheckOrOptions === "object" ? equalityCheckOrOptions : {
+        equalityCheck: equalityCheckOrOptions
+    };
+    var _providedOptions$equa = providedOptions.equalityCheck, equalityCheck = _providedOptions$equa === void 0 ? defaultEqualityCheck : _providedOptions$equa, _providedOptions$maxS = providedOptions.maxSize, maxSize = _providedOptions$maxS === void 0 ? 1 : _providedOptions$maxS, resultEqualityCheck = providedOptions.resultEqualityCheck;
+    var comparator = createCacheKeyComparator(equalityCheck);
+    var cache = maxSize === 1 ? createSingletonCache(comparator) : createLruCache(maxSize, comparator);
+    function memoized() {
+        var value = cache.get(arguments);
+        if (value === NOT_FOUND) {
+            value = func.apply(null, arguments);
+            if (resultEqualityCheck) {
+                var entries = cache.getEntries();
+                var matchingEntry = entries.find(function(entry) {
+                    return resultEqualityCheck(entry.value, value);
+                });
+                if (matchingEntry) {
+                    value = matchingEntry.value;
+                }
+            }
+            cache.put(arguments, value);
+        }
+        return value;
+    }
+    memoized.clearCache = function() {
+        return cache.clear();
+    };
+    return memoized;
+}
+// node_modules/reselect/es/index.js
+function getDependencies(funcs) {
+    var dependencies = Array.isArray(funcs[0]) ? funcs[0] : funcs;
+    if (!dependencies.every(function(dep) {
+        return typeof dep === "function";
+    })) {
+        var dependencyTypes = dependencies.map(function(dep) {
+            return typeof dep === "function" ? "function " + (dep.name || "unnamed") + "()" : typeof dep;
+        }).join(", ");
+        throw new Error("createSelector expects all input-selectors to be functions, but received the following types: [" + dependencyTypes + "]");
+    }
+    return dependencies;
+}
+function createSelectorCreator(memoize) {
+    for(var _len = arguments.length, memoizeOptionsFromArgs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){
+        memoizeOptionsFromArgs[_key - 1] = arguments[_key];
+    }
+    var createSelector2 = function createSelector3() {
+        for(var _len2 = arguments.length, funcs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++){
+            funcs[_key2] = arguments[_key2];
+        }
+        var _recomputations = 0;
+        var _lastResult;
+        var directlyPassedOptions = {
+            memoizeOptions: void 0
+        };
+        var resultFunc = funcs.pop();
+        if (typeof resultFunc === "object") {
+            directlyPassedOptions = resultFunc;
+            resultFunc = funcs.pop();
+        }
+        if (typeof resultFunc !== "function") {
+            throw new Error("createSelector expects an output function after the inputs, but received: [" + typeof resultFunc + "]");
+        }
+        var _directlyPassedOption = directlyPassedOptions, _directlyPassedOption2 = _directlyPassedOption.memoizeOptions, memoizeOptions = _directlyPassedOption2 === void 0 ? memoizeOptionsFromArgs : _directlyPassedOption2;
+        var finalMemoizeOptions = Array.isArray(memoizeOptions) ? memoizeOptions : [
+            memoizeOptions
+        ];
+        var dependencies = getDependencies(funcs);
+        var memoizedResultFunc = memoize.apply(void 0, [
+            function recomputationWrapper() {
+                _recomputations++;
+                return resultFunc.apply(null, arguments);
+            }
+        ].concat(finalMemoizeOptions));
+        var selector = memoize(function dependenciesChecker() {
+            var params = [];
+            var length = dependencies.length;
+            for(var i2 = 0; i2 < length; i2++){
+                params.push(dependencies[i2].apply(null, arguments));
+            }
+            _lastResult = memoizedResultFunc.apply(null, params);
+            return _lastResult;
+        });
+        Object.assign(selector, {
+            resultFunc,
+            memoizedResultFunc,
+            dependencies,
+            lastResult: function lastResult() {
+                return _lastResult;
+            },
+            recomputations: function recomputations() {
+                return _recomputations;
+            },
+            resetRecomputations: function resetRecomputations() {
+                return _recomputations = 0;
+            }
+        });
+        return selector;
+    };
+    return createSelector2;
+}
+var createSelector = createSelectorCreator(defaultMemoize);
+// node_modules/redux-thunk/es/index.js
+function createThunkMiddleware(extraArgument) {
+    var middleware = function middleware2(_ref) {
+        var dispatch = _ref.dispatch, getState = _ref.getState;
+        return function(next) {
+            return function(action) {
+                if (typeof action === "function") {
+                    return action(dispatch, getState, extraArgument);
+                }
+                return next(action);
+            };
+        };
+    };
+    return middleware;
+}
+var thunk = createThunkMiddleware();
+thunk.withExtraArgument = createThunkMiddleware;
+var es_default = thunk;
+// node_modules/@reduxjs/toolkit/dist/redux-toolkit.esm.js
+var __extends = function() {
+    var extendStatics = function(d2, b2) {
+        extendStatics = Object.setPrototypeOf || ({
+            __proto__: []
+        }) instanceof Array && function(d3, b3) {
+            d3.__proto__ = b3;
+        } || function(d3, b3) {
+            for(var p2 in b3)if (Object.prototype.hasOwnProperty.call(b3, p2)) d3[p2] = b3[p2];
+        };
+        return extendStatics(d2, b2);
+    };
+    return function(d2, b2) {
+        if (typeof b2 !== "function" && b2 !== null) throw new TypeError("Class extends value " + String(b2) + " is not a constructor or null");
+        extendStatics(d2, b2);
+        function __() {
+            this.constructor = d2;
+        }
+        d2.prototype = b2 === null ? Object.create(b2) : (__.prototype = b2.prototype, new __());
+    };
+}();
+var __generator = function(thisArg, body) {
+    var _2 = {
+        label: 0,
+        sent: function() {
+            if (t2[0] & 1) throw t2[1];
+            return t2[1];
+        },
+        trys: [],
+        ops: []
+    }, f2, y2, t2, g2;
+    return g2 = {
+        next: verb(0),
+        "throw": verb(1),
+        "return": verb(2)
+    }, typeof Symbol === "function" && (g2[Symbol.iterator] = function() {
+        return this;
+    }), g2;
+    function verb(n2) {
+        return function(v2) {
+            return step([
+                n2,
+                v2
+            ]);
+        };
+    }
+    function step(op) {
+        if (f2) throw new TypeError("Generator is already executing.");
+        while(_2)try {
+            if (f2 = 1, y2 && (t2 = op[0] & 2 ? y2["return"] : op[0] ? y2["throw"] || ((t2 = y2["return"]) && t2.call(y2), 0) : y2.next) && !(t2 = t2.call(y2, op[1])).done) return t2;
+            if (y2 = 0, t2) op = [
+                op[0] & 2,
+                t2.value
+            ];
+            switch(op[0]){
+                case 0:
+                case 1:
+                    t2 = op;
+                    break;
+                case 4:
+                    _2.label++;
+                    return {
+                        value: op[1],
+                        done: false
+                    };
+                case 5:
+                    _2.label++;
+                    y2 = op[1];
+                    op = [
+                        0
+                    ];
+                    continue;
+                case 7:
+                    op = _2.ops.pop();
+                    _2.trys.pop();
+                    continue;
+                default:
+                    if (!(t2 = _2.trys, t2 = t2.length > 0 && t2[t2.length - 1]) && (op[0] === 6 || op[0] === 2)) {
+                        _2 = 0;
+                        continue;
+                    }
+                    if (op[0] === 3 && (!t2 || op[1] > t2[0] && op[1] < t2[3])) {
+                        _2.label = op[1];
+                        break;
+                    }
+                    if (op[0] === 6 && _2.label < t2[1]) {
+                        _2.label = t2[1];
+                        t2 = op;
+                        break;
+                    }
+                    if (t2 && _2.label < t2[2]) {
+                        _2.label = t2[2];
+                        _2.ops.push(op);
+                        break;
+                    }
+                    if (t2[2]) _2.ops.pop();
+                    _2.trys.pop();
+                    continue;
+            }
+            op = body.call(thisArg, _2);
+        } catch (e2) {
+            op = [
+                6,
+                e2
+            ];
+            y2 = 0;
+        } finally{
+            f2 = t2 = 0;
+        }
+        if (op[0] & 5) throw op[1];
+        return {
+            value: op[0] ? op[1] : void 0,
+            done: true
+        };
+    }
+};
+var __spreadArray = function(to, from) {
+    for(var i2 = 0, il = from.length, j2 = to.length; i2 < il; i2++, j2++)to[j2] = from[i2];
+    return to;
+};
+var __defProp = Object.defineProperty;
+var __defProps = Object.defineProperties;
+var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols = Object.getOwnPropertySymbols;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __propIsEnum = Object.prototype.propertyIsEnumerable;
+var __defNormalProp = function(obj, key, value) {
+    return key in obj ? __defProp(obj, key, {
+        enumerable: true,
+        configurable: true,
+        writable: true,
+        value
+    }) : obj[key] = value;
+};
+var __spreadValues = function(a2, b2) {
+    for(var prop in b2 || (b2 = {}))if (__hasOwnProp.call(b2, prop)) __defNormalProp(a2, prop, b2[prop]);
+    if (__getOwnPropSymbols) for(var _i = 0, _c = __getOwnPropSymbols(b2); _i < _c.length; _i++){
+        var prop = _c[_i];
+        if (__propIsEnum.call(b2, prop)) __defNormalProp(a2, prop, b2[prop]);
+    }
+    return a2;
+};
+var __spreadProps = function(a2, b2) {
+    return __defProps(a2, __getOwnPropDescs(b2));
+};
+var __async = function(__this, __arguments, generator) {
+    return new Promise(function(resolve, reject) {
+        var fulfilled = function(value) {
+            try {
+                step(generator.next(value));
+            } catch (e2) {
+                reject(e2);
+            }
+        };
+        var rejected = function(value) {
+            try {
+                step(generator.throw(value));
+            } catch (e2) {
+                reject(e2);
+            }
+        };
+        var step = function(x2) {
+            return x2.done ? resolve(x2.value) : Promise.resolve(x2.value).then(fulfilled, rejected);
+        };
+        step((generator = generator.apply(__this, __arguments)).next());
+    });
+};
+var createDraftSafeSelector = function() {
+    var args = [];
+    for(var _i = 0; _i < arguments.length; _i++){
+        args[_i] = arguments[_i];
+    }
+    var selector = createSelector.apply(void 0, args);
+    var wrappedSelector = function(value) {
+        var rest = [];
+        for(var _i2 = 1; _i2 < arguments.length; _i2++){
+            rest[_i2 - 1] = arguments[_i2];
+        }
+        return selector.apply(void 0, __spreadArray([
+            r(value) ? R(value) : value
+        ], rest));
+    };
+    return wrappedSelector;
+};
+var composeWithDevTools = typeof window !== "undefined" && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ : function() {
+    if (arguments.length === 0) return void 0;
+    if (typeof arguments[0] === "object") return compose;
+    return compose.apply(null, arguments);
+};
+var devToolsEnhancer = typeof window !== "undefined" && window.__REDUX_DEVTOOLS_EXTENSION__ ? window.__REDUX_DEVTOOLS_EXTENSION__ : function() {
+    return function(noop2) {
+        return noop2;
+    };
+};
+function isPlainObject2(value) {
+    if (typeof value !== "object" || value === null) return false;
+    var proto = Object.getPrototypeOf(value);
+    if (proto === null) return true;
+    var baseProto = proto;
+    while(Object.getPrototypeOf(baseProto) !== null){
+        baseProto = Object.getPrototypeOf(baseProto);
+    }
+    return proto === baseProto;
+}
+var hasMatchFunction = function(v2) {
+    return v2 && typeof v2.match === "function";
+};
+function createAction(type, prepareAction) {
+    function actionCreator() {
+        var args = [];
+        for(var _i = 0; _i < arguments.length; _i++){
+            args[_i] = arguments[_i];
+        }
+        if (prepareAction) {
+            var prepared = prepareAction.apply(void 0, args);
+            if (!prepared) {
+                throw new Error("prepareAction did not return an object");
+            }
+            return __spreadValues(__spreadValues({
+                type,
+                payload: prepared.payload
+            }, "meta" in prepared && {
+                meta: prepared.meta
+            }), "error" in prepared && {
+                error: prepared.error
+            });
+        }
+        return {
+            type,
+            payload: args[0]
+        };
+    }
+    actionCreator.toString = function() {
+        return "" + type;
+    };
+    actionCreator.type = type;
+    actionCreator.match = function(action) {
+        return action.type === type;
+    };
+    return actionCreator;
+}
+function isAction(action) {
+    return isPlainObject2(action) && "type" in action;
+}
+function isActionCreator(action) {
+    return typeof action === "function" && "type" in action && hasMatchFunction(action);
+}
+function isFSA(action) {
+    return isAction(action) && typeof action.type === "string" && Object.keys(action).every(isValidKey);
+}
+function isValidKey(key) {
+    return [
+        "type",
+        "payload",
+        "error",
+        "meta"
+    ].indexOf(key) > -1;
+}
+function getType(actionCreator) {
+    return "" + actionCreator;
+}
+function getMessage(type) {
+    var splitType = type ? ("" + type).split("/") : [];
+    var actionName = splitType[splitType.length - 1] || "actionCreator";
+    return 'Detected an action creator with type "' + (type || "unknown") + "\" being dispatched. \nMake sure you're calling the action creator before dispatching, i.e. `dispatch(" + actionName + "())` instead of `dispatch(" + actionName + ")`. This is necessary even if the action has no payload.";
+}
+function createActionCreatorInvariantMiddleware(options) {
+    if (options === void 0) {
+        options = {};
+    }
+    if (false) {}
+    var _c = options.isActionCreator, isActionCreator2 = _c === void 0 ? isActionCreator : _c;
+    return function() {
+        return function(next) {
+            return function(action) {
+                if (isActionCreator2(action)) {
+                    console.warn(getMessage(action.type));
+                }
+                return next(action);
+            };
+        };
+    };
+}
+function getTimeMeasureUtils(maxDelay, fnName) {
+    var elapsed = 0;
+    return {
+        measureTime: function(fn2) {
+            var started = Date.now();
+            try {
+                return fn2();
+            } finally{
+                var finished = Date.now();
+                elapsed += finished - started;
+            }
+        },
+        warnIfExceeded: function() {
+            if (elapsed > maxDelay) {
+                console.warn(fnName + " took " + elapsed + "ms, which is more than the warning threshold of " + maxDelay + "ms. \nIf your state or actions are very large, you may want to disable the middleware as it might cause too much of a slowdown in development mode. See https://redux-toolkit.js.org/api/getDefaultMiddleware for instructions.\nIt is disabled in production builds, so you don't need to worry about that.");
+            }
+        }
+    };
+}
+var MiddlewareArray = function(_super) {
+    __extends(MiddlewareArray2, _super);
+    function MiddlewareArray2() {
+        var args = [];
+        for(var _i = 0; _i < arguments.length; _i++){
+            args[_i] = arguments[_i];
+        }
+        var _this = _super.apply(this, args) || this;
+        Object.setPrototypeOf(_this, MiddlewareArray2.prototype);
+        return _this;
+    }
+    Object.defineProperty(MiddlewareArray2, Symbol.species, {
+        get: function() {
+            return MiddlewareArray2;
+        },
+        enumerable: false,
+        configurable: true
+    });
+    MiddlewareArray2.prototype.concat = function() {
+        var arr = [];
+        for(var _i = 0; _i < arguments.length; _i++){
+            arr[_i] = arguments[_i];
+        }
+        return _super.prototype.concat.apply(this, arr);
+    };
+    MiddlewareArray2.prototype.prepend = function() {
+        var arr = [];
+        for(var _i = 0; _i < arguments.length; _i++){
+            arr[_i] = arguments[_i];
+        }
+        if (arr.length === 1 && Array.isArray(arr[0])) {
+            return new (MiddlewareArray2.bind.apply(MiddlewareArray2, __spreadArray([
+                void 0
+            ], arr[0].concat(this))))();
+        }
+        return new (MiddlewareArray2.bind.apply(MiddlewareArray2, __spreadArray([
+            void 0
+        ], arr.concat(this))))();
+    };
+    return MiddlewareArray2;
+}(Array);
+var EnhancerArray = function(_super) {
+    __extends(EnhancerArray2, _super);
+    function EnhancerArray2() {
+        var args = [];
+        for(var _i = 0; _i < arguments.length; _i++){
+            args[_i] = arguments[_i];
+        }
+        var _this = _super.apply(this, args) || this;
+        Object.setPrototypeOf(_this, EnhancerArray2.prototype);
+        return _this;
+    }
+    Object.defineProperty(EnhancerArray2, Symbol.species, {
+        get: function() {
+            return EnhancerArray2;
+        },
+        enumerable: false,
+        configurable: true
+    });
+    EnhancerArray2.prototype.concat = function() {
+        var arr = [];
+        for(var _i = 0; _i < arguments.length; _i++){
+            arr[_i] = arguments[_i];
+        }
+        return _super.prototype.concat.apply(this, arr);
+    };
+    EnhancerArray2.prototype.prepend = function() {
+        var arr = [];
+        for(var _i = 0; _i < arguments.length; _i++){
+            arr[_i] = arguments[_i];
+        }
+        if (arr.length === 1 && Array.isArray(arr[0])) {
+            return new (EnhancerArray2.bind.apply(EnhancerArray2, __spreadArray([
+                void 0
+            ], arr[0].concat(this))))();
+        }
+        return new (EnhancerArray2.bind.apply(EnhancerArray2, __spreadArray([
+            void 0
+        ], arr.concat(this))))();
+    };
+    return EnhancerArray2;
+}(Array);
+function freezeDraftable(val) {
+    return t(val) ? immer_esm_default(val, function() {}) : val;
+}
+var isProduction = false;
+var prefix = "Invariant failed";
+function invariant(condition, message) {
+    if (condition) {
+        return;
+    }
+    if (isProduction) {
+        throw new Error(prefix);
+    }
+    throw new Error(prefix + ": " + (message || ""));
+}
+function stringify(obj, serializer, indent, decycler) {
+    return JSON.stringify(obj, getSerialize(serializer, decycler), indent);
+}
+function getSerialize(serializer, decycler) {
+    var stack = [], keys = [];
+    if (!decycler) decycler = function(_2, value) {
+        if (stack[0] === value) return "[Circular ~]";
+        return "[Circular ~." + keys.slice(0, stack.indexOf(value)).join(".") + "]";
+    };
+    return function(key, value) {
+        if (stack.length > 0) {
+            var thisPos = stack.indexOf(this);
+            ~thisPos ? stack.splice(thisPos + 1) : stack.push(this);
+            ~thisPos ? keys.splice(thisPos, Infinity, key) : keys.push(key);
+            if (~stack.indexOf(value)) value = decycler.call(this, key, value);
+        } else stack.push(value);
+        return serializer == null ? value : serializer.call(this, key, value);
+    };
+}
+function isImmutableDefault(value) {
+    return typeof value !== "object" || value == null || Object.isFrozen(value);
+}
+function trackForMutations(isImmutable, ignorePaths, obj) {
+    var trackedProperties = trackProperties(isImmutable, ignorePaths, obj);
+    return {
+        detectMutations: function() {
+            return detectMutations(isImmutable, ignorePaths, trackedProperties, obj);
+        }
+    };
+}
+function trackProperties(isImmutable, ignorePaths, obj, path, checkedObjects) {
+    if (ignorePaths === void 0) {
+        ignorePaths = [];
+    }
+    if (path === void 0) {
+        path = "";
+    }
+    if (checkedObjects === void 0) {
+        checkedObjects = /* @__PURE__ */ new Set();
+    }
+    var tracked = {
+        value: obj
+    };
+    if (!isImmutable(obj) && !checkedObjects.has(obj)) {
+        checkedObjects.add(obj);
+        tracked.children = {};
+        for(var key in obj){
+            var childPath = path ? path + "." + key : key;
+            if (ignorePaths.length && ignorePaths.indexOf(childPath) !== -1) {
+                continue;
+            }
+            tracked.children[key] = trackProperties(isImmutable, ignorePaths, obj[key], childPath);
+        }
+    }
+    return tracked;
+}
+function detectMutations(isImmutable, ignoredPaths, trackedProperty, obj, sameParentRef, path) {
+    if (ignoredPaths === void 0) {
+        ignoredPaths = [];
+    }
+    if (sameParentRef === void 0) {
+        sameParentRef = false;
+    }
+    if (path === void 0) {
+        path = "";
+    }
+    var prevObj = trackedProperty ? trackedProperty.value : void 0;
+    var sameRef = prevObj === obj;
+    if (sameParentRef && !sameRef && !Number.isNaN(obj)) {
+        return {
+            wasMutated: true,
+            path
+        };
+    }
+    if (isImmutable(prevObj) || isImmutable(obj)) {
+        return {
+            wasMutated: false
+        };
+    }
+    var keysToDetect = {};
+    for(var key in trackedProperty.children){
+        keysToDetect[key] = true;
+    }
+    for(var key in obj){
+        keysToDetect[key] = true;
+    }
+    var hasIgnoredPaths = ignoredPaths.length > 0;
+    var _loop_1 = function(key2) {
+        var nestedPath = path ? path + "." + key2 : key2;
+        if (hasIgnoredPaths) {
+            var hasMatches = ignoredPaths.some(function(ignored) {
+                if (ignored instanceof RegExp) {
+                    return ignored.test(nestedPath);
+                }
+                return nestedPath === ignored;
+            });
+            if (hasMatches) {
+                return "continue";
+            }
+        }
+        var result = detectMutations(isImmutable, ignoredPaths, trackedProperty.children[key2], obj[key2], sameRef, nestedPath);
+        if (result.wasMutated) {
+            return {
+                value: result
+            };
+        }
+    };
+    for(var key in keysToDetect){
+        var state_1 = _loop_1(key);
+        if (typeof state_1 === "object") return state_1.value;
+    }
+    return {
+        wasMutated: false
+    };
+}
+function createImmutableStateInvariantMiddleware(options) {
+    if (options === void 0) {
+        options = {};
+    }
+    if (false) {}
+    var _c = options.isImmutable, isImmutable = _c === void 0 ? isImmutableDefault : _c, ignoredPaths = options.ignoredPaths, _d = options.warnAfter, warnAfter = _d === void 0 ? 32 : _d, ignore = options.ignore;
+    ignoredPaths = ignoredPaths || ignore;
+    var track = trackForMutations.bind(null, isImmutable, ignoredPaths);
+    return function(_c2) {
+        var getState = _c2.getState;
+        var state = getState();
+        var tracker = track(state);
+        var result;
+        return function(next) {
+            return function(action) {
+                var measureUtils = getTimeMeasureUtils(warnAfter, "ImmutableStateInvariantMiddleware");
+                measureUtils.measureTime(function() {
+                    state = getState();
+                    result = tracker.detectMutations();
+                    tracker = track(state);
+                    invariant(!result.wasMutated, "A state mutation was detected between dispatches, in the path '" + (result.path || "") + "'.  This may cause incorrect behavior. (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)");
+                });
+                var dispatchedAction = next(action);
+                measureUtils.measureTime(function() {
+                    state = getState();
+                    result = tracker.detectMutations();
+                    tracker = track(state);
+                    result.wasMutated && invariant(!result.wasMutated, "A state mutation was detected inside a dispatch, in the path: " + (result.path || "") + ". Take a look at the reducer(s) handling the action " + stringify(action) + ". (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)");
+                });
+                measureUtils.warnIfExceeded();
+                return dispatchedAction;
+            };
+        };
+    };
+}
+function isPlain(val) {
+    var type = typeof val;
+    return val == null || type === "string" || type === "boolean" || type === "number" || Array.isArray(val) || isPlainObject2(val);
+}
+function findNonSerializableValue(value, path, isSerializable, getEntries, ignoredPaths, cache) {
+    if (path === void 0) {
+        path = "";
+    }
+    if (isSerializable === void 0) {
+        isSerializable = isPlain;
+    }
+    if (ignoredPaths === void 0) {
+        ignoredPaths = [];
+    }
+    var foundNestedSerializable;
+    if (!isSerializable(value)) {
+        return {
+            keyPath: path || "<root>",
+            value
+        };
+    }
+    if (typeof value !== "object" || value === null) {
+        return false;
+    }
+    if (cache == null ? void 0 : cache.has(value)) return false;
+    var entries = getEntries != null ? getEntries(value) : Object.entries(value);
+    var hasIgnoredPaths = ignoredPaths.length > 0;
+    var _loop_2 = function(key2, nestedValue2) {
+        var nestedPath = path ? path + "." + key2 : key2;
+        if (hasIgnoredPaths) {
+            var hasMatches = ignoredPaths.some(function(ignored) {
+                if (ignored instanceof RegExp) {
+                    return ignored.test(nestedPath);
+                }
+                return nestedPath === ignored;
+            });
+            if (hasMatches) {
+                return "continue";
+            }
+        }
+        if (!isSerializable(nestedValue2)) {
+            return {
+                value: {
+                    keyPath: nestedPath,
+                    value: nestedValue2
+                }
+            };
+        }
+        if (typeof nestedValue2 === "object") {
+            foundNestedSerializable = findNonSerializableValue(nestedValue2, nestedPath, isSerializable, getEntries, ignoredPaths, cache);
+            if (foundNestedSerializable) {
+                return {
+                    value: foundNestedSerializable
+                };
+            }
+        }
+    };
+    for(var _i = 0, entries_1 = entries; _i < entries_1.length; _i++){
+        var _c = entries_1[_i], key = _c[0], nestedValue = _c[1];
+        var state_2 = _loop_2(key, nestedValue);
+        if (typeof state_2 === "object") return state_2.value;
+    }
+    if (cache && isNestedFrozen(value)) cache.add(value);
+    return false;
+}
+function isNestedFrozen(value) {
+    if (!Object.isFrozen(value)) return false;
+    for(var _i = 0, _c = Object.values(value); _i < _c.length; _i++){
+        var nestedValue = _c[_i];
+        if (typeof nestedValue !== "object" || nestedValue === null) continue;
+        if (!isNestedFrozen(nestedValue)) return false;
+    }
+    return true;
+}
+function createSerializableStateInvariantMiddleware(options) {
+    if (options === void 0) {
+        options = {};
+    }
+    if (false) {}
+    var _c = options.isSerializable, isSerializable = _c === void 0 ? isPlain : _c, getEntries = options.getEntries, _d = options.ignoredActions, ignoredActions = _d === void 0 ? [] : _d, _e = options.ignoredActionPaths, ignoredActionPaths = _e === void 0 ? [
+        "meta.arg",
+        "meta.baseQueryMeta"
+    ] : _e, _f = options.ignoredPaths, ignoredPaths = _f === void 0 ? [] : _f, _g = options.warnAfter, warnAfter = _g === void 0 ? 32 : _g, _h = options.ignoreState, ignoreState = _h === void 0 ? false : _h, _j = options.ignoreActions, ignoreActions = _j === void 0 ? false : _j, _k = options.disableCache, disableCache = _k === void 0 ? false : _k;
+    var cache = !disableCache && WeakSet ? /* @__PURE__ */ new WeakSet() : void 0;
+    return function(storeAPI) {
+        return function(next) {
+            return function(action) {
+                var result = next(action);
+                var measureUtils = getTimeMeasureUtils(warnAfter, "SerializableStateInvariantMiddleware");
+                if (!ignoreActions && !(ignoredActions.length && ignoredActions.indexOf(action.type) !== -1)) {
+                    measureUtils.measureTime(function() {
+                        var foundActionNonSerializableValue = findNonSerializableValue(action, "", isSerializable, getEntries, ignoredActionPaths, cache);
+                        if (foundActionNonSerializableValue) {
+                            var keyPath = foundActionNonSerializableValue.keyPath, value = foundActionNonSerializableValue.value;
+                            console.error("A non-serializable value was detected in an action, in the path: `" + keyPath + "`. Value:", value, "\nTake a look at the logic that dispatched this action: ", action, "\n(See https://redux.js.org/faq/actions#why-should-type-be-a-string-or-at-least-serializable-why-should-my-action-types-be-constants)", "\n(To allow non-serializable values see: https://redux-toolkit.js.org/usage/usage-guide#working-with-non-serializable-data)");
+                        }
+                    });
+                }
+                if (!ignoreState) {
+                    measureUtils.measureTime(function() {
+                        var state = storeAPI.getState();
+                        var foundStateNonSerializableValue = findNonSerializableValue(state, "", isSerializable, getEntries, ignoredPaths, cache);
+                        if (foundStateNonSerializableValue) {
+                            var keyPath = foundStateNonSerializableValue.keyPath, value = foundStateNonSerializableValue.value;
+                            console.error("A non-serializable value was detected in the state, in the path: `" + keyPath + "`. Value:", value, "\nTake a look at the reducer(s) handling this action type: " + action.type + ".\n(See https://redux.js.org/faq/organizing-state#can-i-put-functions-promises-or-other-non-serializable-items-in-my-store-state)");
+                        }
+                    });
+                    measureUtils.warnIfExceeded();
+                }
+                return result;
+            };
+        };
+    };
+}
+function isBoolean(x2) {
+    return typeof x2 === "boolean";
+}
+function curryGetDefaultMiddleware() {
+    return function curriedGetDefaultMiddleware(options) {
+        return getDefaultMiddleware(options);
+    };
+}
+function getDefaultMiddleware(options) {
+    if (options === void 0) {
+        options = {};
+    }
+    var _c = options.thunk, thunk2 = _c === void 0 ? true : _c, _d = options.immutableCheck, immutableCheck = _d === void 0 ? true : _d, _e = options.serializableCheck, serializableCheck = _e === void 0 ? true : _e, _f = options.actionCreatorCheck, actionCreatorCheck = _f === void 0 ? true : _f;
+    var middlewareArray = new MiddlewareArray();
+    if (thunk2) {
+        if (isBoolean(thunk2)) {
+            middlewareArray.push(es_default);
+        } else {
+            middlewareArray.push(es_default.withExtraArgument(thunk2.extraArgument));
+        }
+    }
+    if (true) {
+        if (immutableCheck) {
+            var immutableOptions = {};
+            if (!isBoolean(immutableCheck)) {
+                immutableOptions = immutableCheck;
+            }
+            middlewareArray.unshift(createImmutableStateInvariantMiddleware(immutableOptions));
+        }
+        if (serializableCheck) {
+            var serializableOptions = {};
+            if (!isBoolean(serializableCheck)) {
+                serializableOptions = serializableCheck;
+            }
+            middlewareArray.push(createSerializableStateInvariantMiddleware(serializableOptions));
+        }
+        if (actionCreatorCheck) {
+            var actionCreatorOptions = {};
+            if (!isBoolean(actionCreatorCheck)) {
+                actionCreatorOptions = actionCreatorCheck;
+            }
+            middlewareArray.unshift(createActionCreatorInvariantMiddleware(actionCreatorOptions));
+        }
+    }
+    return middlewareArray;
+}
+var IS_PRODUCTION = false;
+function configureStore(options) {
+    var curriedGetDefaultMiddleware = curryGetDefaultMiddleware();
+    var _c = options || {}, _d = _c.reducer, reducer = _d === void 0 ? void 0 : _d, _e = _c.middleware, middleware = _e === void 0 ? curriedGetDefaultMiddleware() : _e, _f = _c.devTools, devTools = _f === void 0 ? true : _f, _g = _c.preloadedState, preloadedState = _g === void 0 ? void 0 : _g, _h = _c.enhancers, enhancers = _h === void 0 ? void 0 : _h;
+    var rootReducer;
+    if (typeof reducer === "function") {
+        rootReducer = reducer;
+    } else if (isPlainObject2(reducer)) {
+        rootReducer = combineReducers(reducer);
+    } else {
+        throw new Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');
+    }
+    var finalMiddleware = middleware;
+    if (typeof finalMiddleware === "function") {
+        finalMiddleware = finalMiddleware(curriedGetDefaultMiddleware);
+        if (!IS_PRODUCTION && !Array.isArray(finalMiddleware)) {
+            throw new Error("when using a middleware builder function, an array of middleware must be returned");
+        }
+    }
+    if (!IS_PRODUCTION && finalMiddleware.some(function(item) {
+        return typeof item !== "function";
+    })) {
+        throw new Error("each middleware provided to configureStore must be a function");
+    }
+    var middlewareEnhancer = applyMiddleware.apply(void 0, finalMiddleware);
+    var finalCompose = compose;
+    if (devTools) {
+        finalCompose = composeWithDevTools(__spreadValues({
+            trace: !IS_PRODUCTION
+        }, typeof devTools === "object" && devTools));
+    }
+    var defaultEnhancers = new EnhancerArray(middlewareEnhancer);
+    var storeEnhancers = defaultEnhancers;
+    if (Array.isArray(enhancers)) {
+        storeEnhancers = __spreadArray([
+            middlewareEnhancer
+        ], enhancers);
+    } else if (typeof enhancers === "function") {
+        storeEnhancers = enhancers(defaultEnhancers);
+    }
+    var composedEnhancer = finalCompose.apply(void 0, storeEnhancers);
+    return createStore(rootReducer, preloadedState, composedEnhancer);
+}
+function executeReducerBuilderCallback(builderCallback) {
+    var actionsMap = {};
+    var actionMatchers = [];
+    var defaultCaseReducer;
+    var builder = {
+        addCase: function(typeOrActionCreator, reducer) {
+            if (true) {
+                if (actionMatchers.length > 0) {
+                    throw new Error("`builder.addCase` should only be called before calling `builder.addMatcher`");
+                }
+                if (defaultCaseReducer) {
+                    throw new Error("`builder.addCase` should only be called before calling `builder.addDefaultCase`");
+                }
+            }
+            var type = typeof typeOrActionCreator === "string" ? typeOrActionCreator : typeOrActionCreator.type;
+            if (!type) {
+                throw new Error("`builder.addCase` cannot be called with an empty action type");
+            }
+            if (type in actionsMap) {
+                throw new Error("`builder.addCase` cannot be called with two reducers for the same action type");
+            }
+            actionsMap[type] = reducer;
+            return builder;
+        },
+        addMatcher: function(matcher, reducer) {
+            if (true) {
+                if (defaultCaseReducer) {
+                    throw new Error("`builder.addMatcher` should only be called before calling `builder.addDefaultCase`");
+                }
+            }
+            actionMatchers.push({
+                matcher,
+                reducer
+            });
+            return builder;
+        },
+        addDefaultCase: function(reducer) {
+            if (true) {
+                if (defaultCaseReducer) {
+                    throw new Error("`builder.addDefaultCase` can only be called once");
+                }
+            }
+            defaultCaseReducer = reducer;
+            return builder;
+        }
+    };
+    builderCallback(builder);
+    return [
+        actionsMap,
+        actionMatchers,
+        defaultCaseReducer
+    ];
+}
+function isStateFunction(x2) {
+    return typeof x2 === "function";
+}
+var hasWarnedAboutObjectNotation = false;
+function createReducer(initialState, mapOrBuilderCallback, actionMatchers, defaultCaseReducer) {
+    if (actionMatchers === void 0) {
+        actionMatchers = [];
+    }
+    if (true) {
+        if (typeof mapOrBuilderCallback === "object") {
+            if (!hasWarnedAboutObjectNotation) {
+                hasWarnedAboutObjectNotation = true;
+                console.warn("The object notation for `createReducer` is deprecated, and will be removed in RTK 2.0. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createReducer");
+            }
+        }
+    }
+    var _c = typeof mapOrBuilderCallback === "function" ? executeReducerBuilderCallback(mapOrBuilderCallback) : [
+        mapOrBuilderCallback,
+        actionMatchers,
+        defaultCaseReducer
+    ], actionsMap = _c[0], finalActionMatchers = _c[1], finalDefaultCaseReducer = _c[2];
+    var getInitialState;
+    if (isStateFunction(initialState)) {
+        getInitialState = function() {
+            return freezeDraftable(initialState());
+        };
+    } else {
+        var frozenInitialState_1 = freezeDraftable(initialState);
+        getInitialState = function() {
+            return frozenInitialState_1;
+        };
+    }
+    function reducer(state, action) {
+        if (state === void 0) {
+            state = getInitialState();
+        }
+        var caseReducers = __spreadArray([
+            actionsMap[action.type]
+        ], finalActionMatchers.filter(function(_c2) {
+            var matcher = _c2.matcher;
+            return matcher(action);
+        }).map(function(_c2) {
+            var reducer2 = _c2.reducer;
+            return reducer2;
+        }));
+        if (caseReducers.filter(function(cr) {
+            return !!cr;
+        }).length === 0) {
+            caseReducers = [
+                finalDefaultCaseReducer
+            ];
+        }
+        return caseReducers.reduce(function(previousState, caseReducer) {
+            if (caseReducer) {
+                if (r(previousState)) {
+                    var draft = previousState;
+                    var result = caseReducer(draft, action);
+                    if (result === void 0) {
+                        return previousState;
+                    }
+                    return result;
+                } else if (!t(previousState)) {
+                    var result = caseReducer(previousState, action);
+                    if (result === void 0) {
+                        if (previousState === null) {
+                            return previousState;
+                        }
+                        throw Error("A case reducer on a non-draftable value must not return undefined");
+                    }
+                    return result;
+                } else {
+                    return immer_esm_default(previousState, function(draft2) {
+                        return caseReducer(draft2, action);
+                    });
+                }
+            }
+            return previousState;
+        }, state);
+    }
+    reducer.getInitialState = getInitialState;
+    return reducer;
+}
+var hasWarnedAboutObjectNotation2 = false;
+function getType2(slice, actionKey) {
+    return slice + "/" + actionKey;
+}
+function createSlice(options) {
+    var name = options.name;
+    if (!name) {
+        throw new Error("`name` is a required option for createSlice");
+    }
+    if (typeof process !== "undefined" && true) {
+        if (options.initialState === void 0) {
+            console.error("You must provide an `initialState` value that is not `undefined`. You may have misspelled `initialState`");
+        }
+    }
+    var initialState = typeof options.initialState == "function" ? options.initialState : freezeDraftable(options.initialState);
+    var reducers = options.reducers || {};
+    var reducerNames = Object.keys(reducers);
+    var sliceCaseReducersByName = {};
+    var sliceCaseReducersByType = {};
+    var actionCreators = {};
+    reducerNames.forEach(function(reducerName) {
+        var maybeReducerWithPrepare = reducers[reducerName];
+        var type = getType2(name, reducerName);
+        var caseReducer;
+        var prepareCallback;
+        if ("reducer" in maybeReducerWithPrepare) {
+            caseReducer = maybeReducerWithPrepare.reducer;
+            prepareCallback = maybeReducerWithPrepare.prepare;
+        } else {
+            caseReducer = maybeReducerWithPrepare;
+        }
+        sliceCaseReducersByName[reducerName] = caseReducer;
+        sliceCaseReducersByType[type] = caseReducer;
+        actionCreators[reducerName] = prepareCallback ? createAction(type, prepareCallback) : createAction(type);
+    });
+    function buildReducer() {
+        if (true) {
+            if (typeof options.extraReducers === "object") {
+                if (!hasWarnedAboutObjectNotation2) {
+                    hasWarnedAboutObjectNotation2 = true;
+                    console.warn("The object notation for `createSlice.extraReducers` is deprecated, and will be removed in RTK 2.0. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createSlice");
+                }
+            }
+        }
+        var _c = typeof options.extraReducers === "function" ? executeReducerBuilderCallback(options.extraReducers) : [
+            options.extraReducers
+        ], _d = _c[0], extraReducers = _d === void 0 ? {} : _d, _e = _c[1], actionMatchers = _e === void 0 ? [] : _e, _f = _c[2], defaultCaseReducer = _f === void 0 ? void 0 : _f;
+        var finalCaseReducers = __spreadValues(__spreadValues({}, extraReducers), sliceCaseReducersByType);
+        return createReducer(initialState, function(builder) {
+            for(var key in finalCaseReducers){
+                builder.addCase(key, finalCaseReducers[key]);
+            }
+            for(var _i = 0, actionMatchers_1 = actionMatchers; _i < actionMatchers_1.length; _i++){
+                var m2 = actionMatchers_1[_i];
+                builder.addMatcher(m2.matcher, m2.reducer);
+            }
+            if (defaultCaseReducer) {
+                builder.addDefaultCase(defaultCaseReducer);
+            }
+        });
+    }
+    var _reducer;
+    return {
+        name,
+        reducer: function(state, action) {
+            if (!_reducer) _reducer = buildReducer();
+            return _reducer(state, action);
+        },
+        actions: actionCreators,
+        caseReducers: sliceCaseReducersByName,
+        getInitialState: function() {
+            if (!_reducer) _reducer = buildReducer();
+            return _reducer.getInitialState();
+        }
+    };
+}
+function getInitialEntityState() {
+    return {
+        ids: [],
+        entities: {}
+    };
+}
+function createInitialStateFactory() {
+    function getInitialState(additionalState) {
+        if (additionalState === void 0) {
+            additionalState = {};
+        }
+        return Object.assign(getInitialEntityState(), additionalState);
+    }
+    return {
+        getInitialState
+    };
+}
+function createSelectorsFactory() {
+    function getSelectors(selectState) {
+        var selectIds = function(state) {
+            return state.ids;
+        };
+        var selectEntities = function(state) {
+            return state.entities;
+        };
+        var selectAll = createDraftSafeSelector(selectIds, selectEntities, function(ids, entities) {
+            return ids.map(function(id) {
+                return entities[id];
+            });
+        });
+        var selectId = function(_2, id) {
+            return id;
+        };
+        var selectById = function(entities, id) {
+            return entities[id];
+        };
+        var selectTotal = createDraftSafeSelector(selectIds, function(ids) {
+            return ids.length;
+        });
+        if (!selectState) {
+            return {
+                selectIds,
+                selectEntities,
+                selectAll,
+                selectTotal,
+                selectById: createDraftSafeSelector(selectEntities, selectId, selectById)
+            };
+        }
+        var selectGlobalizedEntities = createDraftSafeSelector(selectState, selectEntities);
+        return {
+            selectIds: createDraftSafeSelector(selectState, selectIds),
+            selectEntities: selectGlobalizedEntities,
+            selectAll: createDraftSafeSelector(selectState, selectAll),
+            selectTotal: createDraftSafeSelector(selectState, selectTotal),
+            selectById: createDraftSafeSelector(selectGlobalizedEntities, selectId, selectById)
+        };
+    }
+    return {
+        getSelectors
+    };
+}
+function createSingleArgumentStateOperator(mutator) {
+    var operator = createStateOperator(function(_2, state) {
+        return mutator(state);
+    });
+    return function operation(state) {
+        return operator(state, void 0);
+    };
+}
+function createStateOperator(mutator) {
+    return function operation(state, arg) {
+        function isPayloadActionArgument(arg2) {
+            return isFSA(arg2);
+        }
+        var runMutator = function(draft) {
+            if (isPayloadActionArgument(arg)) {
+                mutator(arg.payload, draft);
+            } else {
+                mutator(arg, draft);
+            }
+        };
+        if (r(state)) {
+            runMutator(state);
+            return state;
+        } else {
+            return immer_esm_default(state, runMutator);
+        }
+    };
+}
+function selectIdValue(entity, selectId) {
+    var key = selectId(entity);
+    if (key === void 0) {
+        console.warn("The entity passed to the `selectId` implementation returned undefined.", "You should probably provide your own `selectId` implementation.", "The entity that was passed:", entity, "The `selectId` implementation:", selectId.toString());
+    }
+    return key;
+}
+function ensureEntitiesArray(entities) {
+    if (!Array.isArray(entities)) {
+        entities = Object.values(entities);
+    }
+    return entities;
+}
+function splitAddedUpdatedEntities(newEntities, selectId, state) {
+    newEntities = ensureEntitiesArray(newEntities);
+    var added = [];
+    var updated = [];
+    for(var _i = 0, newEntities_1 = newEntities; _i < newEntities_1.length; _i++){
+        var entity = newEntities_1[_i];
+        var id = selectIdValue(entity, selectId);
+        if (id in state.entities) {
+            updated.push({
+                id,
+                changes: entity
+            });
+        } else {
+            added.push(entity);
+        }
+    }
+    return [
+        added,
+        updated
+    ];
+}
+function createUnsortedStateAdapter(selectId) {
+    function addOneMutably(entity, state) {
+        var key = selectIdValue(entity, selectId);
+        if (key in state.entities) {
+            return;
+        }
+        state.ids.push(key);
+        state.entities[key] = entity;
+    }
+    function addManyMutably(newEntities, state) {
+        newEntities = ensureEntitiesArray(newEntities);
+        for(var _i = 0, newEntities_2 = newEntities; _i < newEntities_2.length; _i++){
+            var entity = newEntities_2[_i];
+            addOneMutably(entity, state);
+        }
+    }
+    function setOneMutably(entity, state) {
+        var key = selectIdValue(entity, selectId);
+        if (!(key in state.entities)) {
+            state.ids.push(key);
+        }
+        state.entities[key] = entity;
+    }
+    function setManyMutably(newEntities, state) {
+        newEntities = ensureEntitiesArray(newEntities);
+        for(var _i = 0, newEntities_3 = newEntities; _i < newEntities_3.length; _i++){
+            var entity = newEntities_3[_i];
+            setOneMutably(entity, state);
+        }
+    }
+    function setAllMutably(newEntities, state) {
+        newEntities = ensureEntitiesArray(newEntities);
+        state.ids = [];
+        state.entities = {};
+        addManyMutably(newEntities, state);
+    }
+    function removeOneMutably(key, state) {
+        return removeManyMutably([
+            key
+        ], state);
+    }
+    function removeManyMutably(keys, state) {
+        var didMutate = false;
+        keys.forEach(function(key) {
+            if (key in state.entities) {
+                delete state.entities[key];
+                didMutate = true;
+            }
+        });
+        if (didMutate) {
+            state.ids = state.ids.filter(function(id) {
+                return id in state.entities;
+            });
+        }
+    }
+    function removeAllMutably(state) {
+        Object.assign(state, {
+            ids: [],
+            entities: {}
+        });
+    }
+    function takeNewKey(keys, update, state) {
+        var original2 = state.entities[update.id];
+        var updated = Object.assign({}, original2, update.changes);
+        var newKey = selectIdValue(updated, selectId);
+        var hasNewKey = newKey !== update.id;
+        if (hasNewKey) {
+            keys[update.id] = newKey;
+            delete state.entities[update.id];
+        }
+        state.entities[newKey] = updated;
+        return hasNewKey;
+    }
+    function updateOneMutably(update, state) {
+        return updateManyMutably([
+            update
+        ], state);
+    }
+    function updateManyMutably(updates, state) {
+        var newKeys = {};
+        var updatesPerEntity = {};
+        updates.forEach(function(update) {
+            if (update.id in state.entities) {
+                updatesPerEntity[update.id] = {
+                    id: update.id,
+                    changes: __spreadValues(__spreadValues({}, updatesPerEntity[update.id] ? updatesPerEntity[update.id].changes : null), update.changes)
+                };
+            }
+        });
+        updates = Object.values(updatesPerEntity);
+        var didMutateEntities = updates.length > 0;
+        if (didMutateEntities) {
+            var didMutateIds = updates.filter(function(update) {
+                return takeNewKey(newKeys, update, state);
+            }).length > 0;
+            if (didMutateIds) {
+                state.ids = Object.keys(state.entities);
+            }
+        }
+    }
+    function upsertOneMutably(entity, state) {
+        return upsertManyMutably([
+            entity
+        ], state);
+    }
+    function upsertManyMutably(newEntities, state) {
+        var _c = splitAddedUpdatedEntities(newEntities, selectId, state), added = _c[0], updated = _c[1];
+        updateManyMutably(updated, state);
+        addManyMutably(added, state);
+    }
+    return {
+        removeAll: createSingleArgumentStateOperator(removeAllMutably),
+        addOne: createStateOperator(addOneMutably),
+        addMany: createStateOperator(addManyMutably),
+        setOne: createStateOperator(setOneMutably),
+        setMany: createStateOperator(setManyMutably),
+        setAll: createStateOperator(setAllMutably),
+        updateOne: createStateOperator(updateOneMutably),
+        updateMany: createStateOperator(updateManyMutably),
+        upsertOne: createStateOperator(upsertOneMutably),
+        upsertMany: createStateOperator(upsertManyMutably),
+        removeOne: createStateOperator(removeOneMutably),
+        removeMany: createStateOperator(removeManyMutably)
+    };
+}
+function createSortedStateAdapter(selectId, sort) {
+    var _c = createUnsortedStateAdapter(selectId), removeOne = _c.removeOne, removeMany = _c.removeMany, removeAll = _c.removeAll;
+    function addOneMutably(entity, state) {
+        return addManyMutably([
+            entity
+        ], state);
+    }
+    function addManyMutably(newEntities, state) {
+        newEntities = ensureEntitiesArray(newEntities);
+        var models = newEntities.filter(function(model) {
+            return !(selectIdValue(model, selectId) in state.entities);
+        });
+        if (models.length !== 0) {
+            merge(models, state);
+        }
+    }
+    function setOneMutably(entity, state) {
+        return setManyMutably([
+            entity
+        ], state);
+    }
+    function setManyMutably(newEntities, state) {
+        newEntities = ensureEntitiesArray(newEntities);
+        if (newEntities.length !== 0) {
+            merge(newEntities, state);
+        }
+    }
+    function setAllMutably(newEntities, state) {
+        newEntities = ensureEntitiesArray(newEntities);
+        state.entities = {};
+        state.ids = [];
+        addManyMutably(newEntities, state);
+    }
+    function updateOneMutably(update, state) {
+        return updateManyMutably([
+            update
+        ], state);
+    }
+    function updateManyMutably(updates, state) {
+        var appliedUpdates = false;
+        for(var _i = 0, updates_1 = updates; _i < updates_1.length; _i++){
+            var update = updates_1[_i];
+            var entity = state.entities[update.id];
+            if (!entity) {
+                continue;
+            }
+            appliedUpdates = true;
+            Object.assign(entity, update.changes);
+            var newId = selectId(entity);
+            if (update.id !== newId) {
+                delete state.entities[update.id];
+                state.entities[newId] = entity;
+            }
+        }
+        if (appliedUpdates) {
+            resortEntities(state);
+        }
+    }
+    function upsertOneMutably(entity, state) {
+        return upsertManyMutably([
+            entity
+        ], state);
+    }
+    function upsertManyMutably(newEntities, state) {
+        var _c2 = splitAddedUpdatedEntities(newEntities, selectId, state), added = _c2[0], updated = _c2[1];
+        updateManyMutably(updated, state);
+        addManyMutably(added, state);
+    }
+    function areArraysEqual(a2, b2) {
+        if (a2.length !== b2.length) {
+            return false;
+        }
+        for(var i2 = 0; i2 < a2.length && i2 < b2.length; i2++){
+            if (a2[i2] === b2[i2]) {
+                continue;
+            }
+            return false;
+        }
+        return true;
+    }
+    function merge(models, state) {
+        models.forEach(function(model) {
+            state.entities[selectId(model)] = model;
+        });
+        resortEntities(state);
+    }
+    function resortEntities(state) {
+        var allEntities = Object.values(state.entities);
+        allEntities.sort(sort);
+        var newSortedIds = allEntities.map(selectId);
+        var ids = state.ids;
+        if (!areArraysEqual(ids, newSortedIds)) {
+            state.ids = newSortedIds;
+        }
+    }
+    return {
+        removeOne,
+        removeMany,
+        removeAll,
+        addOne: createStateOperator(addOneMutably),
+        updateOne: createStateOperator(updateOneMutably),
+        upsertOne: createStateOperator(upsertOneMutably),
+        setOne: createStateOperator(setOneMutably),
+        setMany: createStateOperator(setManyMutably),
+        setAll: createStateOperator(setAllMutably),
+        addMany: createStateOperator(addManyMutably),
+        updateMany: createStateOperator(updateManyMutably),
+        upsertMany: createStateOperator(upsertManyMutably)
+    };
+}
+function createEntityAdapter(options) {
+    if (options === void 0) {
+        options = {};
+    }
+    var _c = __spreadValues({
+        sortComparer: false,
+        selectId: function(instance) {
+            return instance.id;
+        }
+    }, options), selectId = _c.selectId, sortComparer = _c.sortComparer;
+    var stateFactory = createInitialStateFactory();
+    var selectorsFactory = createSelectorsFactory();
+    var stateAdapter = sortComparer ? createSortedStateAdapter(selectId, sortComparer) : createUnsortedStateAdapter(selectId);
+    return __spreadValues(__spreadValues(__spreadValues({
+        selectId,
+        sortComparer
+    }, stateFactory), selectorsFactory), stateAdapter);
+}
+var urlAlphabet = "ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW";
+var nanoid = function(size) {
+    if (size === void 0) {
+        size = 21;
+    }
+    var id = "";
+    var i2 = size;
+    while(i2--){
+        id += urlAlphabet[Math.random() * 64 | 0];
+    }
+    return id;
+};
+var commonProperties = [
+    "name",
+    "message",
+    "stack",
+    "code"
+];
+var RejectWithValue = function() {
+    function RejectWithValue2(payload, meta) {
+        this.payload = payload;
+        this.meta = meta;
+    }
+    return RejectWithValue2;
+}();
+var FulfillWithMeta = function() {
+    function FulfillWithMeta2(payload, meta) {
+        this.payload = payload;
+        this.meta = meta;
+    }
+    return FulfillWithMeta2;
+}();
+var miniSerializeError = function(value) {
+    if (typeof value === "object" && value !== null) {
+        var simpleError = {};
+        for(var _i = 0, commonProperties_1 = commonProperties; _i < commonProperties_1.length; _i++){
+            var property = commonProperties_1[_i];
+            if (typeof value[property] === "string") {
+                simpleError[property] = value[property];
+            }
+        }
+        return simpleError;
+    }
+    return {
+        message: String(value)
+    };
+};
+var createAsyncThunk = function() {
+    function createAsyncThunk2(typePrefix, payloadCreator, options) {
+        var fulfilled = createAction(typePrefix + "/fulfilled", function(payload, requestId, arg, meta) {
+            return {
+                payload,
+                meta: __spreadProps(__spreadValues({}, meta || {}), {
+                    arg,
+                    requestId,
+                    requestStatus: "fulfilled"
+                })
+            };
+        });
+        var pending = createAction(typePrefix + "/pending", function(requestId, arg, meta) {
+            return {
+                payload: void 0,
+                meta: __spreadProps(__spreadValues({}, meta || {}), {
+                    arg,
+                    requestId,
+                    requestStatus: "pending"
+                })
+            };
+        });
+        var rejected = createAction(typePrefix + "/rejected", function(error, requestId, arg, payload, meta) {
+            return {
+                payload,
+                error: (options && options.serializeError || miniSerializeError)(error || "Rejected"),
+                meta: __spreadProps(__spreadValues({}, meta || {}), {
+                    arg,
+                    requestId,
+                    rejectedWithValue: !!payload,
+                    requestStatus: "rejected",
+                    aborted: (error == null ? void 0 : error.name) === "AbortError",
+                    condition: (error == null ? void 0 : error.name) === "ConditionError"
+                })
+            };
+        });
+        var displayedWarning = false;
+        var AC = typeof AbortController !== "undefined" ? AbortController : function() {
+            function class_1() {
+                this.signal = {
+                    aborted: false,
+                    addEventListener: function() {},
+                    dispatchEvent: function() {
+                        return false;
+                    },
+                    onabort: function() {},
+                    removeEventListener: function() {},
+                    reason: void 0,
+                    throwIfAborted: function() {}
+                };
+            }
+            class_1.prototype.abort = function() {
+                if (true) {
+                    if (!displayedWarning) {
+                        displayedWarning = true;
+                        console.info("This platform does not implement AbortController. \nIf you want to use the AbortController to react to `abort` events, please consider importing a polyfill like 'abortcontroller-polyfill/dist/abortcontroller-polyfill-only'.");
+                    }
+                }
+            };
+            return class_1;
+        }();
+        function actionCreator(arg) {
+            return function(dispatch, getState, extra) {
+                var requestId = (options == null ? void 0 : options.idGenerator) ? options.idGenerator(arg) : nanoid();
+                var abortController = new AC();
+                var abortReason;
+                var started = false;
+                function abort(reason) {
+                    abortReason = reason;
+                    abortController.abort();
+                }
+                var promise2 = function() {
+                    return __async(this, null, function() {
+                        var _a, _b, finalAction, conditionResult, abortedPromise, err_1, skipDispatch;
+                        return __generator(this, function(_c) {
+                            switch(_c.label){
+                                case 0:
+                                    _c.trys.push([
+                                        0,
+                                        4,
+                                        ,
+                                        5
+                                    ]);
+                                    conditionResult = (_a = options == null ? void 0 : options.condition) == null ? void 0 : _a.call(options, arg, {
+                                        getState,
+                                        extra
+                                    });
+                                    if (!isThenable(conditionResult)) return [
+                                        3,
+                                        2
+                                    ];
+                                    return [
+                                        4,
+                                        conditionResult
+                                    ];
+                                case 1:
+                                    conditionResult = _c.sent();
+                                    _c.label = 2;
+                                case 2:
+                                    if (conditionResult === false || abortController.signal.aborted) {
+                                        throw {
+                                            name: "ConditionError",
+                                            message: "Aborted due to condition callback returning false."
+                                        };
+                                    }
+                                    started = true;
+                                    abortedPromise = new Promise(function(_2, reject) {
+                                        return abortController.signal.addEventListener("abort", function() {
+                                            return reject({
+                                                name: "AbortError",
+                                                message: abortReason || "Aborted"
+                                            });
+                                        });
+                                    });
+                                    dispatch(pending(requestId, arg, (_b = options == null ? void 0 : options.getPendingMeta) == null ? void 0 : _b.call(options, {
+                                        requestId,
+                                        arg
+                                    }, {
+                                        getState,
+                                        extra
+                                    })));
+                                    return [
+                                        4,
+                                        Promise.race([
+                                            abortedPromise,
+                                            Promise.resolve(payloadCreator(arg, {
+                                                dispatch,
+                                                getState,
+                                                extra,
+                                                requestId,
+                                                signal: abortController.signal,
+                                                abort,
+                                                rejectWithValue: function(value, meta) {
+                                                    return new RejectWithValue(value, meta);
+                                                },
+                                                fulfillWithValue: function(value, meta) {
+                                                    return new FulfillWithMeta(value, meta);
+                                                }
+                                            })).then(function(result) {
+                                                if (result instanceof RejectWithValue) {
+                                                    throw result;
+                                                }
+                                                if (result instanceof FulfillWithMeta) {
+                                                    return fulfilled(result.payload, requestId, arg, result.meta);
+                                                }
+                                                return fulfilled(result, requestId, arg);
+                                            })
+                                        ])
+                                    ];
+                                case 3:
+                                    finalAction = _c.sent();
+                                    return [
+                                        3,
+                                        5
+                                    ];
+                                case 4:
+                                    err_1 = _c.sent();
+                                    finalAction = err_1 instanceof RejectWithValue ? rejected(null, requestId, arg, err_1.payload, err_1.meta) : rejected(err_1, requestId, arg);
+                                    return [
+                                        3,
+                                        5
+                                    ];
+                                case 5:
+                                    skipDispatch = options && !options.dispatchConditionRejection && rejected.match(finalAction) && finalAction.meta.condition;
+                                    if (!skipDispatch) {
+                                        dispatch(finalAction);
+                                    }
+                                    return [
+                                        2,
+                                        finalAction
+                                    ];
+                            }
+                        });
+                    });
+                }();
+                return Object.assign(promise2, {
+                    abort,
+                    requestId,
+                    arg,
+                    unwrap: function() {
+                        return promise2.then(unwrapResult);
+                    }
+                });
+            };
+        }
+        return Object.assign(actionCreator, {
+            pending,
+            rejected,
+            fulfilled,
+            typePrefix
+        });
+    }
+    createAsyncThunk2.withTypes = function() {
+        return createAsyncThunk2;
+    };
+    return createAsyncThunk2;
+}();
+function unwrapResult(action) {
+    if (action.meta && action.meta.rejectedWithValue) {
+        throw action.payload;
+    }
+    if (action.error) {
+        throw action.error;
+    }
+    return action.payload;
+}
+function isThenable(value) {
+    return value !== null && typeof value === "object" && typeof value.then === "function";
+}
+var matches = function(matcher, action) {
+    if (hasMatchFunction(matcher)) {
+        return matcher.match(action);
+    } else {
+        return matcher(action);
+    }
+};
+function isAnyOf() {
+    var matchers = [];
+    for(var _i = 0; _i < arguments.length; _i++){
+        matchers[_i] = arguments[_i];
+    }
+    return function(action) {
+        return matchers.some(function(matcher) {
+            return matches(matcher, action);
+        });
+    };
+}
+function isAllOf() {
+    var matchers = [];
+    for(var _i = 0; _i < arguments.length; _i++){
+        matchers[_i] = arguments[_i];
+    }
+    return function(action) {
+        return matchers.every(function(matcher) {
+            return matches(matcher, action);
+        });
+    };
+}
+function hasExpectedRequestMetadata(action, validStatus) {
+    if (!action || !action.meta) return false;
+    var hasValidRequestId = typeof action.meta.requestId === "string";
+    var hasValidRequestStatus = validStatus.indexOf(action.meta.requestStatus) > -1;
+    return hasValidRequestId && hasValidRequestStatus;
+}
+function isAsyncThunkArray(a2) {
+    return typeof a2[0] === "function" && "pending" in a2[0] && "fulfilled" in a2[0] && "rejected" in a2[0];
+}
+function isPending() {
+    var asyncThunks = [];
+    for(var _i = 0; _i < arguments.length; _i++){
+        asyncThunks[_i] = arguments[_i];
+    }
+    if (asyncThunks.length === 0) {
+        return function(action) {
+            return hasExpectedRequestMetadata(action, [
+                "pending"
+            ]);
+        };
+    }
+    if (!isAsyncThunkArray(asyncThunks)) {
+        return isPending()(asyncThunks[0]);
+    }
+    return function(action) {
+        var matchers = asyncThunks.map(function(asyncThunk) {
+            return asyncThunk.pending;
+        });
+        var combinedMatcher = isAnyOf.apply(void 0, matchers);
+        return combinedMatcher(action);
+    };
+}
+function isRejected() {
+    var asyncThunks = [];
+    for(var _i = 0; _i < arguments.length; _i++){
+        asyncThunks[_i] = arguments[_i];
+    }
+    if (asyncThunks.length === 0) {
+        return function(action) {
+            return hasExpectedRequestMetadata(action, [
+                "rejected"
+            ]);
+        };
+    }
+    if (!isAsyncThunkArray(asyncThunks)) {
+        return isRejected()(asyncThunks[0]);
+    }
+    return function(action) {
+        var matchers = asyncThunks.map(function(asyncThunk) {
+            return asyncThunk.rejected;
+        });
+        var combinedMatcher = isAnyOf.apply(void 0, matchers);
+        return combinedMatcher(action);
+    };
+}
+function isRejectedWithValue() {
+    var asyncThunks = [];
+    for(var _i = 0; _i < arguments.length; _i++){
+        asyncThunks[_i] = arguments[_i];
+    }
+    var hasFlag = function(action) {
+        return action && action.meta && action.meta.rejectedWithValue;
+    };
+    if (asyncThunks.length === 0) {
+        return function(action) {
+            var combinedMatcher = isAllOf(isRejected.apply(void 0, asyncThunks), hasFlag);
+            return combinedMatcher(action);
+        };
+    }
+    if (!isAsyncThunkArray(asyncThunks)) {
+        return isRejectedWithValue()(asyncThunks[0]);
+    }
+    return function(action) {
+        var combinedMatcher = isAllOf(isRejected.apply(void 0, asyncThunks), hasFlag);
+        return combinedMatcher(action);
+    };
+}
+function isFulfilled() {
+    var asyncThunks = [];
+    for(var _i = 0; _i < arguments.length; _i++){
+        asyncThunks[_i] = arguments[_i];
+    }
+    if (asyncThunks.length === 0) {
+        return function(action) {
+            return hasExpectedRequestMetadata(action, [
+                "fulfilled"
+            ]);
+        };
+    }
+    if (!isAsyncThunkArray(asyncThunks)) {
+        return isFulfilled()(asyncThunks[0]);
+    }
+    return function(action) {
+        var matchers = asyncThunks.map(function(asyncThunk) {
+            return asyncThunk.fulfilled;
+        });
+        var combinedMatcher = isAnyOf.apply(void 0, matchers);
+        return combinedMatcher(action);
+    };
+}
+function isAsyncThunkAction() {
+    var asyncThunks = [];
+    for(var _i = 0; _i < arguments.length; _i++){
+        asyncThunks[_i] = arguments[_i];
+    }
+    if (asyncThunks.length === 0) {
+        return function(action) {
+            return hasExpectedRequestMetadata(action, [
+                "pending",
+                "fulfilled",
+                "rejected"
+            ]);
+        };
+    }
+    if (!isAsyncThunkArray(asyncThunks)) {
+        return isAsyncThunkAction()(asyncThunks[0]);
+    }
+    return function(action) {
+        var matchers = [];
+        for(var _i2 = 0, asyncThunks_1 = asyncThunks; _i2 < asyncThunks_1.length; _i2++){
+            var asyncThunk = asyncThunks_1[_i2];
+            matchers.push(asyncThunk.pending, asyncThunk.rejected, asyncThunk.fulfilled);
+        }
+        var combinedMatcher = isAnyOf.apply(void 0, matchers);
+        return combinedMatcher(action);
+    };
+}
+var assertFunction = function(func, expected) {
+    if (typeof func !== "function") {
+        throw new TypeError(expected + " is not a function");
+    }
+};
+var noop = function() {};
+var catchRejection = function(promise2, onError) {
+    if (onError === void 0) {
+        onError = noop;
+    }
+    promise2.catch(onError);
+    return promise2;
+};
+var addAbortSignalListener = function(abortSignal, callback) {
+    abortSignal.addEventListener("abort", callback, {
+        once: true
+    });
+    return function() {
+        return abortSignal.removeEventListener("abort", callback);
+    };
+};
+var abortControllerWithReason = function(abortController, reason) {
+    var signal = abortController.signal;
+    if (signal.aborted) {
+        return;
+    }
+    if (!("reason" in signal)) {
+        Object.defineProperty(signal, "reason", {
+            enumerable: true,
+            value: reason,
+            configurable: true,
+            writable: true
+        });
+    }
+    ;
+    abortController.abort(reason);
+};
+var task = "task";
+var listener = "listener";
+var completed = "completed";
+var cancelled = "cancelled";
+var taskCancelled = "task-" + cancelled;
+var taskCompleted = "task-" + completed;
+var listenerCancelled = listener + "-" + cancelled;
+var listenerCompleted = listener + "-" + completed;
+var TaskAbortError = function() {
+    function TaskAbortError2(code) {
+        this.code = code;
+        this.name = "TaskAbortError";
+        this.message = task + " " + cancelled + " (reason: " + code + ")";
+    }
+    return TaskAbortError2;
+}();
+var validateActive = function(signal) {
+    if (signal.aborted) {
+        throw new TaskAbortError(signal.reason);
+    }
+};
+function raceWithSignal(signal, promise2) {
+    var cleanup = noop;
+    return new Promise(function(resolve, reject) {
+        var notifyRejection = function() {
+            return reject(new TaskAbortError(signal.reason));
+        };
+        if (signal.aborted) {
+            notifyRejection();
+            return;
+        }
+        cleanup = addAbortSignalListener(signal, notifyRejection);
+        promise2.finally(function() {
+            return cleanup();
+        }).then(resolve, reject);
+    }).finally(function() {
+        cleanup = noop;
+    });
+}
+var runTask = function(task2, cleanUp) {
+    return __async(void 0, null, function() {
+        var value, error_1;
+        return __generator(this, function(_c) {
+            switch(_c.label){
+                case 0:
+                    _c.trys.push([
+                        0,
+                        3,
+                        4,
+                        5
+                    ]);
+                    return [
+                        4,
+                        Promise.resolve()
+                    ];
+                case 1:
+                    _c.sent();
+                    return [
+                        4,
+                        task2()
+                    ];
+                case 2:
+                    value = _c.sent();
+                    return [
+                        2,
+                        {
+                            status: "ok",
+                            value
+                        }
+                    ];
+                case 3:
+                    error_1 = _c.sent();
+                    return [
+                        2,
+                        {
+                            status: error_1 instanceof TaskAbortError ? "cancelled" : "rejected",
+                            error: error_1
+                        }
+                    ];
+                case 4:
+                    cleanUp == null ? void 0 : cleanUp();
+                    return [
+                        7
+                    ];
+                case 5:
+                    return [
+                        2
+                    ];
+            }
+        });
+    });
+};
+var createPause = function(signal) {
+    return function(promise2) {
+        return catchRejection(raceWithSignal(signal, promise2).then(function(output) {
+            validateActive(signal);
+            return output;
+        }));
+    };
+};
+var createDelay = function(signal) {
+    var pause = createPause(signal);
+    return function(timeoutMs) {
+        return pause(new Promise(function(resolve) {
+            return setTimeout(resolve, timeoutMs);
+        }));
+    };
+};
+var assign = Object.assign;
+var INTERNAL_NIL_TOKEN = {};
+var alm = "listenerMiddleware";
+var createFork = function(parentAbortSignal, parentBlockingPromises) {
+    var linkControllers = function(controller) {
+        return addAbortSignalListener(parentAbortSignal, function() {
+            return abortControllerWithReason(controller, parentAbortSignal.reason);
+        });
+    };
+    return function(taskExecutor, opts) {
+        assertFunction(taskExecutor, "taskExecutor");
+        var childAbortController = new AbortController();
+        linkControllers(childAbortController);
+        var result = runTask(function() {
+            return __async(void 0, null, function() {
+                var result2;
+                return __generator(this, function(_c) {
+                    switch(_c.label){
+                        case 0:
+                            validateActive(parentAbortSignal);
+                            validateActive(childAbortController.signal);
+                            return [
+                                4,
+                                taskExecutor({
+                                    pause: createPause(childAbortController.signal),
+                                    delay: createDelay(childAbortController.signal),
+                                    signal: childAbortController.signal
+                                })
+                            ];
+                        case 1:
+                            result2 = _c.sent();
+                            validateActive(childAbortController.signal);
+                            return [
+                                2,
+                                result2
+                            ];
+                    }
+                });
+            });
+        }, function() {
+            return abortControllerWithReason(childAbortController, taskCompleted);
+        });
+        if (opts == null ? void 0 : opts.autoJoin) {
+            parentBlockingPromises.push(result);
+        }
+        return {
+            result: createPause(parentAbortSignal)(result),
+            cancel: function() {
+                abortControllerWithReason(childAbortController, taskCancelled);
+            }
+        };
+    };
+};
+var createTakePattern = function(startListening, signal) {
+    var take = function(predicate, timeout) {
+        return __async(void 0, null, function() {
+            var unsubscribe, tuplePromise, promises, output;
+            return __generator(this, function(_c) {
+                switch(_c.label){
+                    case 0:
+                        validateActive(signal);
+                        unsubscribe = function() {};
+                        tuplePromise = new Promise(function(resolve, reject) {
+                            var stopListening = startListening({
+                                predicate,
+                                effect: function(action, listenerApi) {
+                                    listenerApi.unsubscribe();
+                                    resolve([
+                                        action,
+                                        listenerApi.getState(),
+                                        listenerApi.getOriginalState()
+                                    ]);
+                                }
+                            });
+                            unsubscribe = function() {
+                                stopListening();
+                                reject();
+                            };
+                        });
+                        promises = [
+                            tuplePromise
+                        ];
+                        if (timeout != null) {
+                            promises.push(new Promise(function(resolve) {
+                                return setTimeout(resolve, timeout, null);
+                            }));
+                        }
+                        _c.label = 1;
+                    case 1:
+                        _c.trys.push([
+                            1,
+                            ,
+                            3,
+                            4
+                        ]);
+                        return [
+                            4,
+                            raceWithSignal(signal, Promise.race(promises))
+                        ];
+                    case 2:
+                        output = _c.sent();
+                        validateActive(signal);
+                        return [
+                            2,
+                            output
+                        ];
+                    case 3:
+                        unsubscribe();
+                        return [
+                            7
+                        ];
+                    case 4:
+                        return [
+                            2
+                        ];
+                }
+            });
+        });
+    };
+    return function(predicate, timeout) {
+        return catchRejection(take(predicate, timeout));
+    };
+};
+var getListenerEntryPropsFrom = function(options) {
+    var type = options.type, actionCreator = options.actionCreator, matcher = options.matcher, predicate = options.predicate, effect = options.effect;
+    if (type) {
+        predicate = createAction(type).match;
+    } else if (actionCreator) {
+        type = actionCreator.type;
+        predicate = actionCreator.match;
+    } else if (matcher) {
+        predicate = matcher;
+    } else if (predicate) {} else {
+        throw new Error("Creating or removing a listener requires one of the known fields for matching an action");
+    }
+    assertFunction(effect, "options.listener");
+    return {
+        predicate,
+        type,
+        effect
+    };
+};
+var createListenerEntry = function(options) {
+    var _c = getListenerEntryPropsFrom(options), type = _c.type, predicate = _c.predicate, effect = _c.effect;
+    var id = nanoid();
+    var entry = {
+        id,
+        effect,
+        type,
+        predicate,
+        pending: /* @__PURE__ */ new Set(),
+        unsubscribe: function() {
+            throw new Error("Unsubscribe not initialized");
+        }
+    };
+    return entry;
+};
+var cancelActiveListeners = function(entry) {
+    entry.pending.forEach(function(controller) {
+        abortControllerWithReason(controller, listenerCancelled);
+    });
+};
+var createClearListenerMiddleware = function(listenerMap) {
+    return function() {
+        listenerMap.forEach(cancelActiveListeners);
+        listenerMap.clear();
+    };
+};
+var safelyNotifyError = function(errorHandler, errorToNotify, errorInfo) {
+    try {
+        errorHandler(errorToNotify, errorInfo);
+    } catch (errorHandlerError) {
+        setTimeout(function() {
+            throw errorHandlerError;
+        }, 0);
+    }
+};
+var addListener = createAction(alm + "/add");
+var clearAllListeners = createAction(alm + "/removeAll");
+var removeListener = createAction(alm + "/remove");
+var defaultErrorHandler = function() {
+    var args = [];
+    for(var _i = 0; _i < arguments.length; _i++){
+        args[_i] = arguments[_i];
+    }
+    console.error.apply(console, __spreadArray([
+        alm + "/error"
+    ], args));
+};
+function createListenerMiddleware(middlewareOptions) {
+    var _this = this;
+    if (middlewareOptions === void 0) {
+        middlewareOptions = {};
+    }
+    var listenerMap = /* @__PURE__ */ new Map();
+    var extra = middlewareOptions.extra, _c = middlewareOptions.onError, onError = _c === void 0 ? defaultErrorHandler : _c;
+    assertFunction(onError, "onError");
+    var insertEntry = function(entry) {
+        entry.unsubscribe = function() {
+            return listenerMap.delete(entry.id);
+        };
+        listenerMap.set(entry.id, entry);
+        return function(cancelOptions) {
+            entry.unsubscribe();
+            if (cancelOptions == null ? void 0 : cancelOptions.cancelActive) {
+                cancelActiveListeners(entry);
+            }
+        };
+    };
+    var findListenerEntry = function(comparator) {
+        for(var _i = 0, _c2 = Array.from(listenerMap.values()); _i < _c2.length; _i++){
+            var entry = _c2[_i];
+            if (comparator(entry)) {
+                return entry;
+            }
+        }
+        return void 0;
+    };
+    var startListening = function(options) {
+        var entry = findListenerEntry(function(existingEntry) {
+            return existingEntry.effect === options.effect;
+        });
+        if (!entry) {
+            entry = createListenerEntry(options);
+        }
+        return insertEntry(entry);
+    };
+    var stopListening = function(options) {
+        var _c2 = getListenerEntryPropsFrom(options), type = _c2.type, effect = _c2.effect, predicate = _c2.predicate;
+        var entry = findListenerEntry(function(entry2) {
+            var matchPredicateOrType = typeof type === "string" ? entry2.type === type : entry2.predicate === predicate;
+            return matchPredicateOrType && entry2.effect === effect;
+        });
+        if (entry) {
+            entry.unsubscribe();
+            if (options.cancelActive) {
+                cancelActiveListeners(entry);
+            }
+        }
+        return !!entry;
+    };
+    var notifyListener = function(entry, action, api, getOriginalState) {
+        return __async(_this, null, function() {
+            var internalTaskController, take, autoJoinPromises, listenerError_1;
+            return __generator(this, function(_c2) {
+                switch(_c2.label){
+                    case 0:
+                        internalTaskController = new AbortController();
+                        take = createTakePattern(startListening, internalTaskController.signal);
+                        autoJoinPromises = [];
+                        _c2.label = 1;
+                    case 1:
+                        _c2.trys.push([
+                            1,
+                            3,
+                            4,
+                            6
+                        ]);
+                        entry.pending.add(internalTaskController);
+                        return [
+                            4,
+                            Promise.resolve(entry.effect(action, assign({}, api, {
+                                getOriginalState,
+                                condition: function(predicate, timeout) {
+                                    return take(predicate, timeout).then(Boolean);
+                                },
+                                take,
+                                delay: createDelay(internalTaskController.signal),
+                                pause: createPause(internalTaskController.signal),
+                                extra,
+                                signal: internalTaskController.signal,
+                                fork: createFork(internalTaskController.signal, autoJoinPromises),
+                                unsubscribe: entry.unsubscribe,
+                                subscribe: function() {
+                                    listenerMap.set(entry.id, entry);
+                                },
+                                cancelActiveListeners: function() {
+                                    entry.pending.forEach(function(controller, _2, set) {
+                                        if (controller !== internalTaskController) {
+                                            abortControllerWithReason(controller, listenerCancelled);
+                                            set.delete(controller);
+                                        }
+                                    });
+                                }
+                            })))
+                        ];
+                    case 2:
+                        _c2.sent();
+                        return [
+                            3,
+                            6
+                        ];
+                    case 3:
+                        listenerError_1 = _c2.sent();
+                        if (!(listenerError_1 instanceof TaskAbortError)) {
+                            safelyNotifyError(onError, listenerError_1, {
+                                raisedBy: "effect"
+                            });
+                        }
+                        return [
+                            3,
+                            6
+                        ];
+                    case 4:
+                        return [
+                            4,
+                            Promise.allSettled(autoJoinPromises)
+                        ];
+                    case 5:
+                        _c2.sent();
+                        abortControllerWithReason(internalTaskController, listenerCompleted);
+                        entry.pending.delete(internalTaskController);
+                        return [
+                            7
+                        ];
+                    case 6:
+                        return [
+                            2
+                        ];
+                }
+            });
+        });
+    };
+    var clearListenerMiddleware = createClearListenerMiddleware(listenerMap);
+    var middleware = function(api) {
+        return function(next) {
+            return function(action) {
+                if (!isAction(action)) {
+                    return next(action);
+                }
+                if (addListener.match(action)) {
+                    return startListening(action.payload);
+                }
+                if (clearAllListeners.match(action)) {
+                    clearListenerMiddleware();
+                    return;
+                }
+                if (removeListener.match(action)) {
+                    return stopListening(action.payload);
+                }
+                var originalState = api.getState();
+                var getOriginalState = function() {
+                    if (originalState === INTERNAL_NIL_TOKEN) {
+                        throw new Error(alm + ": getOriginalState can only be called synchronously");
+                    }
+                    return originalState;
+                };
+                var result;
+                try {
+                    result = next(action);
+                    if (listenerMap.size > 0) {
+                        var currentState = api.getState();
+                        var listenerEntries = Array.from(listenerMap.values());
+                        for(var _i = 0, listenerEntries_1 = listenerEntries; _i < listenerEntries_1.length; _i++){
+                            var entry = listenerEntries_1[_i];
+                            var runListener = false;
+                            try {
+                                runListener = entry.predicate(action, currentState, originalState);
+                            } catch (predicateError) {
+                                runListener = false;
+                                safelyNotifyError(onError, predicateError, {
+                                    raisedBy: "predicate"
+                                });
+                            }
+                            if (!runListener) {
+                                continue;
+                            }
+                            notifyListener(entry, action, api, getOriginalState);
+                        }
+                    }
+                } finally{
+                    originalState = INTERNAL_NIL_TOKEN;
+                }
+                return result;
+            };
+        };
+    };
+    return {
+        middleware,
+        startListening,
+        stopListening,
+        clearListeners: clearListenerMiddleware
+    };
+}
+var SHOULD_AUTOBATCH = "RTK_autoBatch";
+var prepareAutoBatched = function() {
+    return function(payload) {
+        var _c;
+        return {
+            payload,
+            meta: (_c = {}, _c[SHOULD_AUTOBATCH] = true, _c)
+        };
+    };
+};
+var promise;
+var queueMicrotaskShim = typeof queueMicrotask === "function" ? queueMicrotask.bind(typeof window !== "undefined" ? window : typeof __webpack_require__.g !== "undefined" ? __webpack_require__.g : globalThis) : function(cb) {
+    return (promise || (promise = Promise.resolve())).then(cb).catch(function(err) {
+        return setTimeout(function() {
+            throw err;
+        }, 0);
+    });
+};
+var createQueueWithTimer = function(timeout) {
+    return function(notify) {
+        setTimeout(notify, timeout);
+    };
+};
+var rAF = typeof window !== "undefined" && window.requestAnimationFrame ? window.requestAnimationFrame : createQueueWithTimer(10);
+var autoBatchEnhancer = function(options) {
+    if (options === void 0) {
+        options = {
+            type: "raf"
+        };
+    }
+    return function(next) {
+        return function() {
+            var args = [];
+            for(var _i = 0; _i < arguments.length; _i++){
+                args[_i] = arguments[_i];
+            }
+            var store = next.apply(void 0, args);
+            var notifying = true;
+            var shouldNotifyAtEndOfTick = false;
+            var notificationQueued = false;
+            var listeners = /* @__PURE__ */ new Set();
+            var queueCallback = options.type === "tick" ? queueMicrotaskShim : options.type === "raf" ? rAF : options.type === "callback" ? options.queueNotification : createQueueWithTimer(options.timeout);
+            var notifyListeners = function() {
+                notificationQueued = false;
+                if (shouldNotifyAtEndOfTick) {
+                    shouldNotifyAtEndOfTick = false;
+                    listeners.forEach(function(l2) {
+                        return l2();
+                    });
+                }
+            };
+            return Object.assign({}, store, {
+                subscribe: function(listener2) {
+                    var wrappedListener = function() {
+                        return notifying && listener2();
+                    };
+                    var unsubscribe = store.subscribe(wrappedListener);
+                    listeners.add(listener2);
+                    return function() {
+                        unsubscribe();
+                        listeners.delete(listener2);
+                    };
+                },
+                dispatch: function(action) {
+                    var _a;
+                    try {
+                        notifying = !((_a = action == null ? void 0 : action.meta) == null ? void 0 : _a[SHOULD_AUTOBATCH]);
+                        shouldNotifyAtEndOfTick = !notifying;
+                        if (shouldNotifyAtEndOfTick) {
+                            if (!notificationQueued) {
+                                notificationQueued = true;
+                                queueCallback(notifyListeners);
+                            }
+                        }
+                        return store.dispatch(action);
+                    } finally{
+                        notifying = true;
+                    }
+                }
+            });
+        };
+    };
+};
+F();
+
+
+
+/***/ })
+
+}]);

+ 24 - 24
dist/prebundle/vendors-node_modules_taro_weapp_prebundle_tarojs_taro_js.js

@@ -8,9 +8,9 @@
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./chunk-SOUSFT7N.js */ "./node_modules/.taro/weapp/prebundle/chunk-SOUSFT7N.js");
-/* harmony import */ var _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./chunk-3EXGJ5BE.js */ "./node_modules/.taro/weapp/prebundle/chunk-3EXGJ5BE.js");
-/* harmony import */ var _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./chunk-77KB62LY.js */ "./node_modules/.taro/weapp/prebundle/chunk-77KB62LY.js");
+/* harmony import */ var _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./chunk-3EXGJ5BE.js */ "./node_modules/.taro/weapp/prebundle/chunk-3EXGJ5BE.js");
+/* harmony import */ var _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./chunk-77KB62LY.js */ "./node_modules/.taro/weapp/prebundle/chunk-77KB62LY.js");
+/* harmony import */ var _chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./chunk-SOUSFT7N.js */ "./node_modules/.taro/weapp/prebundle/chunk-SOUSFT7N.js");
 /* harmony import */ var _chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./chunk-P7VEE7PG.js */ "./node_modules/.taro/weapp/prebundle/chunk-P7VEE7PG.js");
 
 
@@ -18,7 +18,7 @@ __webpack_require__.r(__webpack_exports__);
 
 // node_modules/@babel/runtime/helpers/esm/defineProperty.js
 function _defineProperty(obj, key, value) {
-    key = (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_0__._toPropertyKey)(key);
+    key = (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_2__._toPropertyKey)(key);
     if (key in obj) {
         Object.defineProperty(obj, key, {
             value,
@@ -33,7 +33,7 @@ function _defineProperty(obj, key, value) {
 }
 var init_defineProperty = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__.__esm)({
     "node_modules/@babel/runtime/helpers/esm/defineProperty.js" () {
-        (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_0__.init_toPropertyKey)();
+        (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_2__.init_toPropertyKey)();
     }
 });
 // node_modules/@babel/runtime/helpers/esm/objectSpread2.js
@@ -75,7 +75,7 @@ function isUndefined(x) {
     return typeof x === "undefined";
 }
 function isObject(x) {
-    return x && (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_0__._typeof)(x) === "object";
+    return x && (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_2__._typeof)(x) === "object";
 }
 function throwTypeError(s) {
     throw new TypeError(s);
@@ -176,12 +176,12 @@ function getPxTransform(taro) {
 var isBadObj, ENV_TYPE, isWeb, Chain, Link, interceptors, defaultDesignWidth, defaultDesignRatio, defaultBaseFontSize, defaultUnitPrecision, defaultTargetUnit, Taro;
 var init_index_esm = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__.__esm)({
     "node_modules/@tarojs/api/dist/index.esm.js" () {
-        (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_0__.init_typeof)();
-        (0,_chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__.init_runtime_esm)();
-        (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.init_shared_esm)();
+        (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_2__.init_typeof)();
+        (0,_chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__.init_runtime_esm)();
+        (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.init_shared_esm)();
         init_objectSpread2();
-        (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_0__.init_classCallCheck)();
-        (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_0__.init_createClass)();
+        (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_2__.init_classCallCheck)();
+        (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_2__.init_createClass)();
         init_defineProperty();
         isBadObj = function isBadObj2(x) {
             return !isObject(x);
@@ -268,15 +268,15 @@ var init_index_esm = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__.__esm)({
             HARMONY: "HARMONY",
             QUICKAPP: "QUICKAPP"
         };
-        isWeb = (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.isWebPlatform)();
+        isWeb = (0,_chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.isWebPlatform)();
         Chain = function() {
             function Chain2(requestParams, interceptors2, index) {
-                (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_0__._classCallCheck)(this, Chain2);
+                (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_2__._classCallCheck)(this, Chain2);
                 this.index = index || 0;
                 this.requestParams = requestParams;
                 this.interceptors = interceptors2 || [];
             }
-            (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_0__._createClass)(Chain2, [
+            (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_2__._createClass)(Chain2, [
                 {
                     key: "proceed",
                     value: function proceed(requestParams) {
@@ -313,11 +313,11 @@ var init_index_esm = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__.__esm)({
         }();
         Link = function() {
             function Link2(interceptor) {
-                (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_0__._classCallCheck)(this, Link2);
+                (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_2__._classCallCheck)(this, Link2);
                 this.taroInterceptor = interceptor;
                 this.chain = new Chain();
             }
-            (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_0__._createClass)(Link2, [
+            (0,_chunk_SOUSFT7N_js__WEBPACK_IMPORTED_MODULE_2__._createClass)(Link2, [
                 {
                     key: "request",
                     value: function request(requestParams) {
@@ -364,24 +364,24 @@ var init_index_esm = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__.__esm)({
             ENV_TYPE,
             Link,
             interceptors,
-            Current: _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__.Current,
-            getCurrentInstance: _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__.getCurrentInstance,
-            options: _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__.options,
-            nextTick: _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__.nextTick,
-            eventCenter: _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__.eventCenter,
-            Events: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_2__.Events,
+            Current: _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__.Current,
+            getCurrentInstance: _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance,
+            options: _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__.options,
+            nextTick: _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__.nextTick,
+            eventCenter: _chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__.eventCenter,
+            Events: _chunk_77KB62LY_js__WEBPACK_IMPORTED_MODULE_1__.Events,
             getInitPxTransform,
             interceptorify
         };
         Taro.initPxTransform = getInitPxTransform(Taro);
-        Taro.preload = getPreload(_chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__.Current);
+        Taro.preload = getPreload(_chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__.Current);
         Taro.pxTransform = getPxTransform(Taro);
     }
 });
 // node_modules/@tarojs/taro/index.js
 var require_taro = (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__.__commonJS)({
     "node_modules/@tarojs/taro/index.js" (exports, module) {
-        var { hooks  } = ((0,_chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__.init_runtime_esm)(), (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__.__toCommonJS)(_chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_1__.runtime_esm_exports));
+        var { hooks  } = ((0,_chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__.init_runtime_esm)(), (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__.__toCommonJS)(_chunk_3EXGJ5BE_js__WEBPACK_IMPORTED_MODULE_0__.runtime_esm_exports));
         var taro = (init_index_esm(), (0,_chunk_P7VEE7PG_js__WEBPACK_IMPORTED_MODULE_3__.__toCommonJS)(index_esm_exports)).default;
         if (hooks.isExist("initNativeApi")) {
             hooks.call("initNativeApi", taro);

+ 3 - 2
dist/project.config.json

@@ -2,7 +2,7 @@
   "miniprogramRoot": "",
   "projectname": "hola",
   "description": "",
-  "appid": "wx6b1ab4701b77c50d",
+  "appid": "wxe1396d16d519e16b",
   "setting": {
     "urlCheck": true,
     "es6": false,
@@ -15,7 +15,8 @@
       "ignore": [],
       "disablePlugins": [],
       "outputPath": ""
-    }
+    },
+    "packNpmRelationList": []
   },
   "compileType": "miniprogram",
   "libVersion": "3.1.2",

+ 1 - 1
dist/project.private.config.json

@@ -1,6 +1,6 @@
 {
   "description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html",
   "setting": {
-    "compileHotReLoad": true
+    "urlCheck": false
   }
 }

+ 13 - 1
dist/runtime.js

@@ -207,8 +207,10 @@
 /******/ 				"webpack/container/remote/@tarojs/runtime",
 /******/ 				"webpack/container/remote/@tarojs/taro",
 /******/ 				"webpack/container/remote/react",
+/******/ 				"webpack/container/remote/react-redux",
 /******/ 				"webpack/container/remote/react/jsx-runtime",
-/******/ 				"webpack/container/remote/react-i18next"
+/******/ 				"webpack/container/remote/react-i18next",
+/******/ 				"webpack/container/remote/@reduxjs/toolkit"
 /******/ 			]
 /******/ 		};
 /******/ 		var idToExternalAndNameMapping = {
@@ -252,6 +254,11 @@
 /******/ 				"./react",
 /******/ 				null
 /******/ 			],
+/******/ 			"webpack/container/remote/react-redux": [
+/******/ 				"default",
+/******/ 				"./react-redux",
+/******/ 				null
+/******/ 			],
 /******/ 			"webpack/container/remote/react/jsx-runtime": [
 /******/ 				"default",
 /******/ 				"./react/jsx-runtime",
@@ -261,6 +268,11 @@
 /******/ 				"default",
 /******/ 				"./react-i18next",
 /******/ 				null
+/******/ 			],
+/******/ 			"webpack/container/remote/@reduxjs/toolkit": [
+/******/ 				"default",
+/******/ 				"./@reduxjs/toolkit",
+/******/ 				null
 /******/ 			]
 /******/ 		};
 /******/ 		__webpack_require__.taro = function(get) {

Plik diff jest za duży
+ 0 - 0
dist/runtime.js.map


+ 358 - 0
dist/vendors.js

@@ -33,6 +33,48 @@ function _arrayWithHoles(arr) {
 
 /***/ }),
 
+/***/ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js":
+/*!*********************************************************************!*\
+  !*** ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js ***!
+  \*********************************************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */   "default": function() { return /* binding */ _asyncToGenerator; }
+/* harmony export */ });
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
+  try {
+    var info = gen[key](arg);
+    var value = info.value;
+  } catch (error) {
+    reject(error);
+    return;
+  }
+  if (info.done) {
+    resolve(value);
+  } else {
+    Promise.resolve(value).then(_next, _throw);
+  }
+}
+function _asyncToGenerator(fn) {
+  return function () {
+    var self = this,
+      args = arguments;
+    return new Promise(function (resolve, reject) {
+      var gen = fn.apply(self, args);
+      function _next(value) {
+        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
+      }
+      function _throw(err) {
+        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
+      }
+      _next(undefined);
+    });
+  };
+}
+
+/***/ }),
+
 /***/ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js":
 /*!*******************************************************************!*\
   !*** ./node_modules/@babel/runtime/helpers/esm/defineProperty.js ***!
@@ -150,6 +192,322 @@ function _objectSpread2(e) {
 
 /***/ }),
 
+/***/ "./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js":
+/*!***********************************************************************!*\
+  !*** ./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js ***!
+  \***********************************************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */   "default": function() { return /* binding */ _regeneratorRuntime; }
+/* harmony export */ });
+/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "./node_modules/@babel/runtime/helpers/esm/typeof.js");
+
+function _regeneratorRuntime() {
+  "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
+  _regeneratorRuntime = function _regeneratorRuntime() {
+    return e;
+  };
+  var t,
+    e = {},
+    r = Object.prototype,
+    n = r.hasOwnProperty,
+    o = Object.defineProperty || function (t, e, r) {
+      t[e] = r.value;
+    },
+    i = "function" == typeof Symbol ? Symbol : {},
+    a = i.iterator || "@@iterator",
+    c = i.asyncIterator || "@@asyncIterator",
+    u = i.toStringTag || "@@toStringTag";
+  function define(t, e, r) {
+    return Object.defineProperty(t, e, {
+      value: r,
+      enumerable: !0,
+      configurable: !0,
+      writable: !0
+    }), t[e];
+  }
+  try {
+    define({}, "");
+  } catch (t) {
+    define = function define(t, e, r) {
+      return t[e] = r;
+    };
+  }
+  function wrap(t, e, r, n) {
+    var i = e && e.prototype instanceof Generator ? e : Generator,
+      a = Object.create(i.prototype),
+      c = new Context(n || []);
+    return o(a, "_invoke", {
+      value: makeInvokeMethod(t, r, c)
+    }), a;
+  }
+  function tryCatch(t, e, r) {
+    try {
+      return {
+        type: "normal",
+        arg: t.call(e, r)
+      };
+    } catch (t) {
+      return {
+        type: "throw",
+        arg: t
+      };
+    }
+  }
+  e.wrap = wrap;
+  var h = "suspendedStart",
+    l = "suspendedYield",
+    f = "executing",
+    s = "completed",
+    y = {};
+  function Generator() {}
+  function GeneratorFunction() {}
+  function GeneratorFunctionPrototype() {}
+  var p = {};
+  define(p, a, function () {
+    return this;
+  });
+  var d = Object.getPrototypeOf,
+    v = d && d(d(values([])));
+  v && v !== r && n.call(v, a) && (p = v);
+  var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);
+  function defineIteratorMethods(t) {
+    ["next", "throw", "return"].forEach(function (e) {
+      define(t, e, function (t) {
+        return this._invoke(e, t);
+      });
+    });
+  }
+  function AsyncIterator(t, e) {
+    function invoke(r, o, i, a) {
+      var c = tryCatch(t[r], t, o);
+      if ("throw" !== c.type) {
+        var u = c.arg,
+          h = u.value;
+        return h && "object" == (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) {
+          invoke("next", t, i, a);
+        }, function (t) {
+          invoke("throw", t, i, a);
+        }) : e.resolve(h).then(function (t) {
+          u.value = t, i(u);
+        }, function (t) {
+          return invoke("throw", t, i, a);
+        });
+      }
+      a(c.arg);
+    }
+    var r;
+    o(this, "_invoke", {
+      value: function value(t, n) {
+        function callInvokeWithMethodAndArg() {
+          return new e(function (e, r) {
+            invoke(t, n, e, r);
+          });
+        }
+        return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
+      }
+    });
+  }
+  function makeInvokeMethod(e, r, n) {
+    var o = h;
+    return function (i, a) {
+      if (o === f) throw new Error("Generator is already running");
+      if (o === s) {
+        if ("throw" === i) throw a;
+        return {
+          value: t,
+          done: !0
+        };
+      }
+      for (n.method = i, n.arg = a;;) {
+        var c = n.delegate;
+        if (c) {
+          var u = maybeInvokeDelegate(c, n);
+          if (u) {
+            if (u === y) continue;
+            return u;
+          }
+        }
+        if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) {
+          if (o === h) throw o = s, n.arg;
+          n.dispatchException(n.arg);
+        } else "return" === n.method && n.abrupt("return", n.arg);
+        o = f;
+        var p = tryCatch(e, r, n);
+        if ("normal" === p.type) {
+          if (o = n.done ? s : l, p.arg === y) continue;
+          return {
+            value: p.arg,
+            done: n.done
+          };
+        }
+        "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg);
+      }
+    };
+  }
+  function maybeInvokeDelegate(e, r) {
+    var n = r.method,
+      o = e.iterator[n];
+    if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y;
+    var i = tryCatch(o, e.iterator, r.arg);
+    if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y;
+    var a = i.arg;
+    return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y);
+  }
+  function pushTryEntry(t) {
+    var e = {
+      tryLoc: t[0]
+    };
+    1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);
+  }
+  function resetTryEntry(t) {
+    var e = t.completion || {};
+    e.type = "normal", delete e.arg, t.completion = e;
+  }
+  function Context(t) {
+    this.tryEntries = [{
+      tryLoc: "root"
+    }], t.forEach(pushTryEntry, this), this.reset(!0);
+  }
+  function values(e) {
+    if (e || "" === e) {
+      var r = e[a];
+      if (r) return r.call(e);
+      if ("function" == typeof e.next) return e;
+      if (!isNaN(e.length)) {
+        var o = -1,
+          i = function next() {
+            for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;
+            return next.value = t, next.done = !0, next;
+          };
+        return i.next = i;
+      }
+    }
+    throw new TypeError((0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(e) + " is not iterable");
+  }
+  return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
+    value: GeneratorFunctionPrototype,
+    configurable: !0
+  }), o(GeneratorFunctionPrototype, "constructor", {
+    value: GeneratorFunction,
+    configurable: !0
+  }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) {
+    var e = "function" == typeof t && t.constructor;
+    return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name));
+  }, e.mark = function (t) {
+    return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t;
+  }, e.awrap = function (t) {
+    return {
+      __await: t
+    };
+  }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {
+    return this;
+  }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {
+    void 0 === i && (i = Promise);
+    var a = new AsyncIterator(wrap(t, r, n, o), i);
+    return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {
+      return t.done ? t.value : a.next();
+    });
+  }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () {
+    return this;
+  }), define(g, "toString", function () {
+    return "[object Generator]";
+  }), e.keys = function (t) {
+    var e = Object(t),
+      r = [];
+    for (var n in e) r.push(n);
+    return r.reverse(), function next() {
+      for (; r.length;) {
+        var t = r.pop();
+        if (t in e) return next.value = t, next.done = !1, next;
+      }
+      return next.done = !0, next;
+    };
+  }, e.values = values, Context.prototype = {
+    constructor: Context,
+    reset: function reset(e) {
+      if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);
+    },
+    stop: function stop() {
+      this.done = !0;
+      var t = this.tryEntries[0].completion;
+      if ("throw" === t.type) throw t.arg;
+      return this.rval;
+    },
+    dispatchException: function dispatchException(e) {
+      if (this.done) throw e;
+      var r = this;
+      function handle(n, o) {
+        return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o;
+      }
+      for (var o = this.tryEntries.length - 1; o >= 0; --o) {
+        var i = this.tryEntries[o],
+          a = i.completion;
+        if ("root" === i.tryLoc) return handle("end");
+        if (i.tryLoc <= this.prev) {
+          var c = n.call(i, "catchLoc"),
+            u = n.call(i, "finallyLoc");
+          if (c && u) {
+            if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
+            if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
+          } else if (c) {
+            if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
+          } else {
+            if (!u) throw new Error("try statement without catch or finally");
+            if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
+          }
+        }
+      }
+    },
+    abrupt: function abrupt(t, e) {
+      for (var r = this.tryEntries.length - 1; r >= 0; --r) {
+        var o = this.tryEntries[r];
+        if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
+          var i = o;
+          break;
+        }
+      }
+      i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
+      var a = i ? i.completion : {};
+      return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a);
+    },
+    complete: function complete(t, e) {
+      if ("throw" === t.type) throw t.arg;
+      return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y;
+    },
+    finish: function finish(t) {
+      for (var e = this.tryEntries.length - 1; e >= 0; --e) {
+        var r = this.tryEntries[e];
+        if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;
+      }
+    },
+    "catch": function _catch(t) {
+      for (var e = this.tryEntries.length - 1; e >= 0; --e) {
+        var r = this.tryEntries[e];
+        if (r.tryLoc === t) {
+          var n = r.completion;
+          if ("throw" === n.type) {
+            var o = n.arg;
+            resetTryEntry(r);
+          }
+          return o;
+        }
+      }
+      throw new Error("illegal catch attempt");
+    },
+    delegateYield: function delegateYield(e, r, n) {
+      return this.delegate = {
+        iterator: values(e),
+        resultName: r,
+        nextLoc: n
+      }, "next" === this.method && (this.arg = t), y;
+    }
+  }, e;
+}
+
+/***/ }),
+
 /***/ "./node_modules/@babel/runtime/helpers/esm/slicedToArray.js":
 /*!******************************************************************!*\
   !*** ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js ***!

Plik diff jest za duży
+ 0 - 0
dist/vendors.js.map


+ 2 - 0
package.json

@@ -50,6 +50,7 @@
     "@react-native-community/slider": "~4.3.2",
     "@react-native-masked-view/masked-view": "~0.2.7",
     "@react-native-picker/picker": "~2.4.2",
+    "@reduxjs/toolkit": "^1.9.7",
     "@tarojs/components": "3.6.16",
     "@tarojs/helper": "3.6.16",
     "@tarojs/plugin-framework-react": "3.6.16",
@@ -91,6 +92,7 @@
     "react-native-svg": "~13.7.0",
     "react-native-syan-image-picker": "0.5.3",
     "react-native-webview": "~11.23.0",
+    "react-redux": "^8.1.3",
     "xstate": "^5.0.0-beta.30"
   },
   "devDependencies": {

+ 0 - 18
src/app.ts

@@ -1,18 +0,0 @@
-import { Component, PropsWithChildren } from 'react'
-import './app.scss'
-import './context/locales/index'
-
-class App extends Component<PropsWithChildren> {
-
-  componentDidMount () {}
-
-  componentDidShow () {}
-
-  componentDidHide () {}
-
-  // this.props.children 是将要会渲染的页面
-  render () {
-    return this.props.children
-  }
-}
-export default App

+ 24 - 0
src/app.tsx

@@ -0,0 +1,24 @@
+import { Component, PropsWithChildren } from 'react'
+import './app.scss'
+import './context/locales/index'
+import { Provider } from 'react-redux'
+import store from './store/store'
+
+
+const App: React.FC<PropsWithChildren> = ({ children }) => {
+  return <Provider store={store}>{children}</Provider>
+}
+// class App extends Component<PropsWithChildren> {
+
+//   componentDidMount () {}
+
+//   componentDidShow () {}
+
+//   componentDidHide () {}
+
+//   // this.props.children 是将要会渲染的页面
+//   render () {
+//     return this.props.children
+//   }
+// }
+export default App

+ 0 - 1
src/components/Buttons.scss

@@ -32,7 +32,6 @@
     border-color: $themeColor;
     background-color: transparent;
     color: $themeColor;
-    // border: none;
     height: 90px;
     border-radius: 45px;
 }

+ 1 - 1
src/components/Texts.tsx

@@ -13,7 +13,7 @@ export default function Component(props: { text: string, type?: TextType, }) {
             case TextType.big:
                 return <Text className="big">{props.text}</Text>
             default:
-                return <Text>{props.text}</Text>
+                return <Text style={{color:'#fff'}}>{props.text}</Text>
         }
 
 

+ 1 - 1
src/features/auth/components/Auth.scss

@@ -1,4 +1,4 @@
-@import '@utils/common.scss';
+@import '../../../utils/common.scss';
 .agree_view{
     display: flex;
     flex-direction: row;

+ 1 - 1
src/features/trackTimeDuration/components/ChooseScenario.tsx

@@ -1,7 +1,7 @@
 import { View, Text } from "@tarojs/components";
 import Buttons from '@components/Buttons';
 import Texts from '@components/Texts';
-import Rings from '../../../components/Rings';
+import Rings from '@components/Rings';
 import Footer from '@components/Footer';
 import SingleSelect from '../../../components/SingleSelect';
 import { ComponentStatus, TextType } from "@utils/types";

+ 7 - 0
src/pages/ChooseAuth.scss

@@ -0,0 +1,7 @@
+.choose_container{
+    display: flex;
+    flex-direction: column;
+    align-items: center;
+    padding-top: 200px;
+    // justify-content: center;
+}

+ 44 - 6
src/pages/ChooseAuth.tsx

@@ -1,20 +1,58 @@
 import { View } from "@tarojs/components";
 import Buttons from '@components/Buttons'
 import Texts from '@components/Texts'
-
+import './ChooseAuth.scss'
 import { ButtonType, ComponentStatus, TextType } from "../utils/types";
-import Taro from "@tarojs/taro";
+import Taro, { useReady } from "@tarojs/taro";
+import { useDispatch, useSelector } from "react-redux";
+import { wxLogin } from "@/store/user";
+import { useState } from "react";
 
 export default function Page() {
+    const dispatch = useDispatch();
+    const counter = useSelector((state: any) => state.counter.value);
+    var code = '';
+
+    useReady(() => {
+        Taro.login().then(res => {
+            code = res.code;
+            // dispatch(wxLogin({code:res.code}) as any);
+
+        })
+    })
+
+    async function login() {
+        try {
+            const { userInfo, encryptedData, iv } = await Taro.getUserProfile({
+                desc: '获取用户信息',
+            });
+
+            dispatch(wxLogin({
+                code: code, 
+                    encryptedData: encryptedData,
+                    iv: iv
+            }) as any);
+
+            Taro.redirectTo({
+                url:'/pages/ChooseScenario'
+            })
+            // 在这里处理用户信息
+        } catch (error) {
+            console.log('获取用户信息失败:', error);
+        }
+    }
 
-    function login() {
+    function createAccount() {
         Taro.navigateTo({
-            url: '/pages/ChooseScenario'
+            url: '/pages/Auth'
         })
     }
 
-    return <View className="container">
+    return <View className="container choose_container">
         <Texts text='App name' type={TextType.big} />
-        <Buttons title='Login' onClick={login} />
+        <Texts text={counter} />
+        <View style={{ height: 100 }} />
+        <Buttons title='WeChat' onClick={login} style={{ width: 289, marginBottom: 30 }} />
+        <Buttons title='Create account' type={ButtonType.outline} onClick={createAccount} style={{ width: 289, marginBottom: 30 }} />
     </View>;
 }

+ 14 - 1
src/pages/Second.tsx

@@ -1,7 +1,20 @@
+import Buttons from "@/components/Buttons";
 import { View,Text } from "@tarojs/components";
+import { logout,clear } from "@/store/user";
+import { useDispatch } from "react-redux";
 
 export default function Second() {
+    const dispatch = useDispatch();
+    
+    function logoutF(){
+        dispatch(logout() as any);
+    }
+
+    function clearF(){
+        dispatch(clear() as any);
+    }
     return <View>
-        <Text>second</Text>
+        <Buttons title='退出登录' onClick={logoutF} style={{ width: 289, marginBottom: 30 }} />
+        <Buttons title='注销账号' onClick={clearF} style={{ width: 289, marginBottom: 30 }} />
     </View>
 }

+ 6 - 2
src/pages/index/index.tsx

@@ -5,10 +5,12 @@ import Taro from '@tarojs/taro'
 // import ComponentA from './component'
 import Rings from '@components/Rings';
 import SingleSelect from '@components/SingleSelect';
+import { useSelector } from 'react-redux';
 // import TabBar from '../../components/Tabbar';
 
 export default function IndexPage() {
   const array: any[] = []
+  const user = useSelector((state: any) => state.user);
   array.push('ffff');
   array.push(<Text>ffff</Text>)
   // array.push(<Rings radius={50}/>)
@@ -26,13 +28,15 @@ export default function IndexPage() {
     })
   }
   return (
-    <View style={{ backgroundColor: '#fff', flex: 1 }}>
+    <View style={{ backgroundColor: '#fff', flex: 1,flexDirection:'column',display:'flex' }}>
       <Text>homepage12234</Text>
+      <Text>{user.isLogin?'已登录':'未登录'}</Text>
+      <Text>{user.isLogin?`用户昵称:${user.nickname}`:''}</Text>
       {/* <ComponentA value="ABBBB" /> */}
       <Button onClick={() => goDetail()}>go detail</Button>
       {/* <SingleSelect items={array}></SingleSelect> */}
       <Rings radius={50} />
-      <Input placeholder="请输入用户名" style={{ textAlign: 'left', backgroundColor: 'pink' }} />
+      <Input placeholder="请输入用户名1" style={{ textAlign: 'left', backgroundColor: 'pink' }} />
       <Text className='login' onClick={() => login()}>sss</Text>
       {/* <TabBar /> */}
     </View>

+ 2 - 1
src/services/http/api.js

@@ -1,4 +1,4 @@
-let online = true;
+let online = false;
 export let baseUrl = online ? 'https://api.fast.liveplus.fun' : 'https://api.fast.dev.liveplus.fun';
 export let imgUrl = online
     ? 'https://api.fast.liveplus.fun/static/image/'
@@ -8,6 +8,7 @@ export let imgUrl = online
 export const API_ADJUST_TIMES = `${baseUrl}/api/fast/adjust-times`
 export const API_WX_PUB_FOLLOWED = `${baseUrl}/api/fast/user/wx-pub-followed`
 export const API_LOGIN = `${baseUrl}/api/user/oauth2/login`
+export const API_REGISTER = `${baseUrl}/api/user/register`
 export const API_LOGOUT = `${baseUrl}/api/user/logout`
 export const API_CLEAR_USER = `${baseUrl}/api/clear/user`
 export const API_STATIC_RESOURCES = `${baseUrl}/api/static-resource-urls`

+ 9 - 6
src/services/http/request.ts

@@ -28,7 +28,7 @@ export async function request<T>(param: RequestParam): Promise<T> {
     const { url, method, data } = param;
     let header: any = {};
 
-    const token = await getStorage('token')
+    const token = global.token?global.token:''//await getStorage('token')
 
     var split = new Date().toString().split(' ');
     var timeZoneFormatted = split[split.length - 2];
@@ -38,11 +38,11 @@ export async function request<T>(param: RequestParam): Promise<T> {
         header['Authorization'] = `Bearer ${token}`
     }
     //X-Language:语言,X-Device-Id:设备唯一码,X-Platform:小程序/android/ios,X-Location:地区,X-Device:登录设备
-    header['X-Language'] = ''
-    header['X-Device-Id'] = ''
-    header['X-Platform'] = ''
-    header['X-Location'] = ''
-    header['X-Device'] = ''
+    // header['X-Language'] = ''
+    // header['X-Device-Id'] = ''
+    // header['X-Platform'] = ''
+    // header['X-Location'] = ''
+    // header['X-Device'] = ''
     // header['X-Time-Zone-Id'] = Intl.DateTimeFormat().resolvedOptions().timeZone
     // header['Authorization'] = 'Bearer ' + wx.getStorageSync('token');
     // header['Authorization'] = 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJhY2NvdW50Iiwic3ViIjoiMmQ5OWNlYzI0ZDFlMzE0Y2U1MjhlODM4MWMzYzk0MzgiLCJpc3MiOiJDT0RFUEFBUy5DT00iLCJuaWNrbmFtZSI6IueOi-a4nSIsInR5cCI6IkJlYXJlciIsInNlc3Npb25fc3RhdGUiOiIyN2RjNmU4ZDdjMWU1MTVmNDQwNzVjZTFlODk2ZmUzNCIsImV4cCI6MTcxNjY0Mzk5MSwiaWF0IjoxNjg1MDIxNTkxfQ.fmFj0OVNRzjLkdebSyGJyk8EScPJFpDiz0L25W35zoA'
@@ -55,6 +55,9 @@ export async function request<T>(param: RequestParam): Promise<T> {
             data: data || {},
             success: (response: Resp | { [key: string]: any }) => {
                 const { statusCode, data } = response;
+                if (statusCode == 204){
+                    resolve({} as T);
+                }
                 if (statusCode != 200) {
                     reject(data);
                 }

+ 40 - 0
src/store/demo.tsx

@@ -0,0 +1,40 @@
+import { createAsyncThunk, createSlice, PayloadAction } from '@reduxjs/toolkit';
+
+interface CounterState {
+    value: number;
+}
+
+const initialState: CounterState = {
+    value: 0,
+};
+
+const counterSlice = createSlice({
+    name: 'counter',
+    initialState,
+    reducers: {
+        increment: (state) => {
+            state.value += 1;
+        },
+        decrement: (state) => {
+            state.value -= 1;
+        },
+        incrementByAmount: (state, action: PayloadAction<number>) => {
+            state.value += action.payload;
+        },
+    },
+});
+
+export const { increment, decrement, incrementByAmount } = counterSlice.actions;
+
+export const apple = createAsyncThunk('user/wxLogin', async (payload: { code: string }, { dispatch }) => {
+    dispatch(increment());
+    // console.log(payload.code)
+    // request({
+    //     url: API_LOGIN, method: 'POST', data: { 'code':payload.code,type:'WX_MP',app_version:'1',client_version:'1',client_type:'WXP_MP' }
+    // }).then(res => {
+    //     console.log(res);
+    //     dispatch(loginSuccess(res));
+    // })
+});
+
+export default counterSlice.reducer;

+ 13 - 0
src/store/store.tsx

@@ -0,0 +1,13 @@
+import { configureStore } from '@reduxjs/toolkit';
+import userReducer from './user';
+import counterReducer from './demo';
+
+const store = configureStore({
+  reducer: {
+    // 添加你的 reducer
+    user: userReducer,
+    counter: counterReducer,
+  },
+});
+
+export default store;

+ 170 - 0
src/store/user.tsx

@@ -0,0 +1,170 @@
+import { createAsyncThunk, createSlice, PayloadAction } from '@reduxjs/toolkit';
+import { request } from '@services/http/request'
+import { API_LOGIN, API_REGISTER, API_LOGOUT, API_CLEAR_USER, API_USER_INFO } from '@services/http/api'
+import Taro from '@tarojs/taro';
+interface UserState {
+    nickname: string | null;
+    avatar: string | null;
+    token: string | null;
+    isLogin: boolean;
+}
+
+function getStorage(key) {
+    return Taro.getStorage({ key }).then(res => res.data).catch(() => '')
+}
+
+const getUserDataFromLocalStorage = async (): Promise<UserState> => {
+    const userData = await getStorage('userData');
+    if (userData) {
+        return JSON.parse(userData as string) as UserState;
+    }
+
+    return {
+        isLogin: false,
+        nickname: null,
+        avatar: null,
+        token: null,
+    }
+}
+
+
+// const initialState: UserState = await getUserDataFromLocalStorage();
+const initialState: UserState = {
+    isLogin: false,
+    nickname: null,
+    avatar: null,
+    token: null,
+}
+
+const userSlice = createSlice({
+    name: 'user',
+    initialState,
+    reducers: {
+        loginSuccess(state, action: PayloadAction<any>) {
+            const { nickname, avatar, token } = action.payload;
+            state.nickname = nickname;
+            state.avatar = avatar;
+            state.token = token;
+            state.isLogin = true;
+            global.token = token;
+        },
+        registerSuccess(state, action: PayloadAction<any>) {
+            const { nickname, avatar, token } = action.payload;
+            state.nickname = nickname;
+            state.avatar = avatar;
+            state.token = token;
+            state.isLogin = true;
+        },
+        logoutSuccess(state) {
+            state.nickname = null;
+            state.avatar = null;
+            state.token = null;
+            state.isLogin = false;
+        },
+        clearSuccess(state) {
+            state.nickname = null;
+            state.avatar = null;
+            state.token = null;
+            state.isLogin = false;
+        },
+        getInfoSuccess(state, action: PayloadAction<any>) {
+            const { nickname, avatar, token } = action.payload;
+            state.nickname = nickname;
+            state.avatar = avatar;
+            state.token = token;
+            state.isLogin = true;
+        },
+        updateSuccess(state, action: PayloadAction<any>) {
+            const { nickname, avatar, token } = action.payload;
+            state.nickname = nickname;
+            state.avatar = avatar;
+            state.token = token;
+            state.isLogin = true;
+        }
+    },
+});
+
+export const { loginSuccess, registerSuccess, logoutSuccess, getInfoSuccess, updateSuccess, clearSuccess } = userSlice.actions;
+export default userSlice.reducer;
+
+
+export const login = (username: string, password: string) => (dispatch: any) => {
+    request({
+        url: API_LOGIN, method: 'POST', data: { username, password }
+    }).then(res => {
+        dispatch(loginSuccess(res));
+    })
+}
+
+export const wxLogin = createAsyncThunk('user/wxLogin', async (payload: { code: string, encryptedData: string,iv:string }, { dispatch }) => {
+    console.log(payload.code)
+    request({
+        url: API_LOGIN, method: 'POST',
+        data: {
+            code: payload.code,
+            type: 'WX_MP',
+            app_version: '1',
+            client_version: '1',
+            client_type: 'WX_MP',
+            extra: {
+                encryptedData: payload.encryptedData,
+                iv: payload.iv
+            }
+        }
+    }).then(res => {
+        dispatch(loginSuccess(res));
+    })
+});
+
+/*
+export const wxLogin = (code: string) => (dispatch: any) => {
+    
+    request({
+        url: API_LOGIN, method: 'POST', data: { code,type:'WX_MP',app_version:'1',client_version:'1',client_type:'WXP_MP' }
+    }).then(res => {
+        console.log(res);
+        dispatch(loginSuccess(res));
+    })
+}*/
+
+export const register = (username: string, password: string) => (dispatch: any) => {
+    request({
+        url: API_REGISTER, method: 'POST', data: { username, password }
+    }).then(res => {
+        dispatch(registerSuccess(res));
+    })
+}
+
+export const logout = () => (dispatch: any) => {
+    request({
+        url: API_LOGOUT, method: 'GET', data: {}
+    }).then(res => {
+        dispatch(logoutSuccess());
+    })
+}
+
+export const clear = () => (dispatch: any) => {
+    request({
+        url: API_CLEAR_USER, method: 'POST', data: {}
+    }).then(res => {
+        dispatch(clearSuccess());
+    })
+}
+
+export const getInfo = () => (dispatch: any) => {
+    request({
+        url: API_USER_INFO, method: 'GET', data: {}
+    }).then(res => {
+        dispatch(getInfoSuccess(res));
+    })
+}
+
+
+export const update = () => (dispatch: any) => {
+    request({
+        url: API_USER_INFO, method: 'POST', data: {}
+    }).then(res => {
+        dispatch(updateSuccess(res));
+    })
+}
+

+ 20 - 3
tsconfig.json

@@ -1,7 +1,8 @@
 {
   "compilerOptions": {
     "target": "es2017",
-    "module": "commonjs",
+    // "module": "commonjs",
+    "module": "ESNext",
     "removeComments": false,
     "preserveConstEnums": true,
     "moduleResolution": "node",
@@ -22,8 +23,24 @@
       "node_modules/@types"
     ],
     "paths": {
-      "~/*":[
-        "src/*"
+      "@/*":[
+        "./src/*"
+      ],
+      "*": ["*"],
+      "@components/*":[
+        "src/components/*"
+      ],
+      "@assets/*":[
+        "src/assets/*"
+      ],
+      "@utils/*":[
+        "src/utils/*"
+      ],
+      "@features/*":[
+        "src/features/*"
+      ],
+      "@services/*":[
+        "src/services/*"
       ],
     }
   },

+ 62 - 3
yarn.lock

@@ -1199,6 +1199,13 @@
   dependencies:
     regenerator-runtime "^0.14.0"
 
+"@babel/runtime@^7.12.1", "@babel/runtime@^7.9.2":
+  version "7.23.2"
+  resolved "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.23.2.tgz#062b0ac103261d68a966c4c7baf2ae3e62ec3885"
+  integrity sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==
+  dependencies:
+    regenerator-runtime "^0.14.0"
+
 "@babel/template@^7.0.0", "@babel/template@^7.22.15", "@babel/template@^7.22.5":
   version "7.22.15"
   resolved "https://registry.npmmirror.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38"
@@ -2150,6 +2157,16 @@
     color "^4.2.3"
     warn-once "^0.1.0"
 
+"@reduxjs/toolkit@^1.9.7":
+  version "1.9.7"
+  resolved "https://registry.npmmirror.com/@reduxjs/toolkit/-/toolkit-1.9.7.tgz#7fc07c0b0ebec52043f8cb43510cf346405f78a6"
+  integrity sha512-t7v8ZPxhhKgOKtU+uyJT13lu4vL7az5aFi4IdoDs/eS548edn2M8Ik9h8fxgvMjGoAUVFSt6ZC1P5cWmQ014QQ==
+  dependencies:
+    immer "^9.0.21"
+    redux "^4.2.1"
+    redux-thunk "^2.4.2"
+    reselect "^4.1.8"
+
 "@rnx-kit/console@^1.0.0":
   version "1.0.12"
   resolved "https://registry.npmmirror.com/@rnx-kit/console/-/console-1.0.12.tgz#997e370afdeee49344663c1ae017ba0b4966a5c9"
@@ -3207,6 +3224,14 @@
   resolved "https://registry.npmmirror.com/@types/hammerjs/-/hammerjs-2.0.42.tgz#d7a53edbc51b2c13a9a759c45d7b5e61243d7dba"
   integrity sha512-Xxk14BrwHnGi0xlURPRb+Y0UNn2w3cTkeFm7pKMsYOaNgH/kabbJLhcBoNIodwsbTz7Z8KcWjtDvlGH0nc0U9w==
 
+"@types/hoist-non-react-statics@^3.3.1":
+  version "3.3.3"
+  resolved "https://registry.npmmirror.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.3.tgz#8bb41d9a88164f82dd2745ff05e637e655f34d19"
+  integrity sha512-Wny3a2UXn5FEA1l7gc6BbpoV5mD1XijZqgkp4TRgDCDL5r3B5ieOFGUX5h3n78Tr1MEG7BfvoM8qeztdvNU0fw==
+  dependencies:
+    "@types/react" "*"
+    hoist-non-react-statics "^3.3.0"
+
 "@types/html-minifier-terser@^6.0.0":
   version "6.1.0"
   resolved "https://registry.npmmirror.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#4fc33a00c1d0c16987b1a20cf92d20614c55ac35"
@@ -3421,6 +3446,11 @@
   dependencies:
     "@types/node" "*"
 
+"@types/use-sync-external-store@^0.0.3":
+  version "0.0.3"
+  resolved "https://registry.npmmirror.com/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz#b6725d5f4af24ace33b36fafd295136e75509f43"
+  integrity sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA==
+
 "@types/vinyl@^2.0.4":
   version "2.0.8"
   resolved "https://registry.npmmirror.com/@types/vinyl/-/vinyl-2.0.8.tgz#a944157b80cf615437aa952131e87efe8a9646cd"
@@ -8790,7 +8820,7 @@ hls.js@^1.1.5:
   resolved "https://registry.npmmirror.com/hls.js/-/hls.js-1.4.12.tgz#2022daa29d10c662387d80a5297f8330f8ef5ee2"
   integrity sha512-1RBpx2VihibzE3WE9kGoVCtrhhDWTzydzElk/kyRbEOLnb1WIE+3ZabM/L8BqKFTCL3pUy4QzhXgD1Q6Igr1JA==
 
-hoist-non-react-statics@^3.3.0:
+hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.2:
   version "3.3.2"
   resolved "https://registry.npmmirror.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45"
   integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==
@@ -9079,6 +9109,11 @@ image-size@~0.5.0:
   resolved "https://registry.npmmirror.com/image-size/-/image-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c"
   integrity sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==
 
+immer@^9.0.21:
+  version "9.0.21"
+  resolved "https://registry.npmmirror.com/immer/-/immer-9.0.21.tgz#1e025ea31a40f24fb064f1fef23e931496330176"
+  integrity sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==
+
 immutable@^4.0.0:
   version "4.3.4"
   resolved "https://registry.npmmirror.com/immutable/-/immutable-4.3.4.tgz#2e07b33837b4bb7662f288c244d1ced1ef65a78f"
@@ -13416,7 +13451,7 @@ react-is@^16.12.0, react-is@^16.13.0, react-is@^16.13.1, react-is@^16.7.0:
   resolved "https://registry.npmmirror.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
   integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
 
-"react-is@^16.12.0 || ^17.0.0 || ^18.0.0":
+"react-is@^16.12.0 || ^17.0.0 || ^18.0.0", react-is@^18.0.0:
   version "18.2.0"
   resolved "https://registry.npmmirror.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b"
   integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==
@@ -13622,6 +13657,18 @@ react-reconciler@0.27.0:
     loose-envify "^1.1.0"
     scheduler "^0.21.0"
 
+react-redux@^8.1.3:
+  version "8.1.3"
+  resolved "https://registry.npmmirror.com/react-redux/-/react-redux-8.1.3.tgz#4fdc0462d0acb59af29a13c27ffef6f49ab4df46"
+  integrity sha512-n0ZrutD7DaX/j9VscF+uTALI3oUPa/pO4Z3soOBIjuRn/FzVu6aehhysxZCLi6y7duMf52WNZGMl7CtuK5EnRw==
+  dependencies:
+    "@babel/runtime" "^7.12.1"
+    "@types/hoist-non-react-statics" "^3.3.1"
+    "@types/use-sync-external-store" "^0.0.3"
+    hoist-non-react-statics "^3.3.2"
+    react-is "^18.0.0"
+    use-sync-external-store "^1.0.0"
+
 react-refresh@^0.11.0:
   version "0.11.0"
   resolved "https://registry.npmmirror.com/react-refresh/-/react-refresh-0.11.0.tgz#77198b944733f0f1f1a90e791de4541f9f074046"
@@ -13757,6 +13804,18 @@ redent@^3.0.0:
     indent-string "^4.0.0"
     strip-indent "^3.0.0"
 
+redux-thunk@^2.4.2:
+  version "2.4.2"
+  resolved "https://registry.npmmirror.com/redux-thunk/-/redux-thunk-2.4.2.tgz#b9d05d11994b99f7a91ea223e8b04cf0afa5ef3b"
+  integrity sha512-+P3TjtnP0k/FEjcBL5FZpoovtvrTNT/UXd4/sluaSyrURlSlhLSzEdfsTBW7WsKB6yPvgd7q/iZPICFjW4o57Q==
+
+redux@^4.2.1:
+  version "4.2.1"
+  resolved "https://registry.npmmirror.com/redux/-/redux-4.2.1.tgz#c08f4306826c49b5e9dc901dee0452ea8fce6197"
+  integrity sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==
+  dependencies:
+    "@babel/runtime" "^7.9.2"
+
 reflect.getprototypeof@^1.0.4:
   version "1.0.4"
   resolved "https://registry.npmmirror.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz#aaccbf41aca3821b87bb71d9dcbc7ad0ba50a3f3"
@@ -14021,7 +14080,7 @@ requires-port@^1.0.0:
   resolved "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff"
   integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==
 
-reselect@^4.0.0:
+reselect@^4.0.0, reselect@^4.1.8:
   version "4.1.8"
   resolved "https://registry.npmmirror.com/reselect/-/reselect-4.1.8.tgz#3f5dc671ea168dccdeb3e141236f69f02eaec524"
   integrity sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ==

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików